2008/2/17 Radu Oprisan <[EMAIL PROTECTED]>: > Alex 'CAVE' Cernat wrote: > > Ca sa pun si eu o intrebare de baraj, dar e destul de heavy stuff, > > pentru ca tine de organizarea interna a memoriei la regulile de iptables. > > Se obtine ceva performanta in plus daca in loc sa fac o lista de 1000 > > de intrari in iptables fac cumva un hash pe una-doua-trei nivele > > astfel incat de fapt sa se evalueze sa zicem 10 + 10 + 10 reguli worst > > case in loc de 1000 worst case ? > > Teoretic la prima vedere ar trebui sa fie clar mai bine, dar spre > > exemplu daca cumva toate regulile din iptables sunt bagate spre > > exemplu intr-o lista si oricum dupa aia se evalueaza oricum toate la > > iteratie atunci canci, ca n-am facut nimic (de aia ziceam ca e heavy > > stuff). Cred ca cumva regulile sunt bagate intr-un copac ceva, sau un > > arbore de liste macar, dar necunoscand exact cum stau treburile, > > intreb si eu :-D > > > > Alex > > > > Imi permit sa raspund. > Se obtine performanta in plus in situatia descrisa de tine daca > salturile in chain-uri nu depasesc timpul de parsare a celor 1000 de > reguli initiale: > > - verificare /24, salt, verificare /25, salt, verificare /32 > vs > - verificare 1000 reguli. >
E drept ca nu am chiar 1000 reguli una dupa alta ci am incercat impartirea pe subclase... adica 8 subclase de /25. Am incercat si varianta de /26 dar parerea mea e ca nu se mai obtin diferente majore la capitolul performanta (in loc de 8 reguli pentru clasificarea initiala a traficului se fac 16). In conditiile unei astfel de impartiri... mai imbunatateste ipset performantele (se reduc cele 8 reguli, ramane una). > La un /22 in prima situatie ai maxim 4 reguli * maxim 2 * maxim 128 (in > cazul in care regula este ultima din ultimul chain primar din ultimul > chain secundar /25) = 1024. Din fericire, in practica, se vor parcurge > in medie 512 pasi. Situatia, bineinteles, ar fi ajutata de un > ESTABLISHED,RELATED ca prima regula in FORWARD (downside-urile le stim > toti). > > > > > Andrei Kovacs wrote: > >> Salutare listasi. > >> > >> Stie careva unde as putea gasi o comparatie intre iptables cu n reguli > >> si iptables + ipset (cu n reguli) la capitolul viteza ? > >> > >> Merita implementarea lui ipset pentru a elimina 1000 reguli din > >> iptables (verificare IP + MAC) si implementarea acestora in ipset > >> (macipmap) ? Peste tot am citit cum ca ipset ar face verificarile mai > >> repede dar nicaieri n-am gasit un test comparativ. > >> > > > > Merita. Aplicat la cateva /21-uri pe vlan-uri diferite diferenta in > throughput a fost de 300-350 Mbps (in 1Gbps / out 1Gbps). Algoritmul de > hashing este destul de ok cat sa iti rezolve problemele. (Experienta > personala) > Testele au fost cu macipmap (filtrare si dupa mac) ? Apropo... din cate mi se pare mie ipset nu ma lasa sa adaug mai multe MAC-uri pt un IP (tinand cont de hashing... e logic). Exista vreo solutie pentru asta (in afara de a elimina duplicatele :-) )? _______________________________________________ RLUG mailing list [email protected] http://lists.lug.ro/mailman/listinfo/rlug
