... a jeste dalsi grafy, kde je videt okamzik, kdy se zacinaji do pameti cpat HTB pravidla. Dojde k vyrovnani grafu provozu, resp. prestane dochazet k padani rychlosti. Dokonceni reloadu vsech pravidel ale trva cca 20 minut, takze konec generovani HTB jeste v techto grafech neni.
20 minut na reload HTB pravidel je nejak moc. Tim reloadem se mysli co? Mas vygenerovany file se spoustou radku typu 'tc class add .....' a ten pak 'spustis' ?
16000+ pravidel (qdisc, class, filter) nactu za mene nez 1 sekundu pomoci batch modu. Ciste sekvencne to trvalo driv 2-4 minuty
to vyhlazeni trva jen behem nacitani tech pravidel nebo i po nem? Sekvenci volani 'tc' je pro jadro docela zahul (neustale zamykani struktur u nas zpusobovolao lehkou ztratovost - drops)
to Dalibor Toman:
jj, na desce je vestavena karta "Intel® 82576 Dual-Port Gigabit Ethernet Controller", ktera je ale v BIOSu vypnuta. Pri nakupu serveru jsem totiz nepredpokladal, ze je onboard karta tak dobra, takze jsem rovnu koupil v podstate tu samou (Intel® 82576EB dual-port Gigabit Ethernet controller) a dal ji to PCI-E. Jinak to rozkladani IRQ na ruzna jadra funguje. Sice jsem to musel nastavit rucne, protoze irqbalanced prestal po upgrade z Debian Squeeze na Wheezy rozkladat IRQ na ruzna jadra, ale nacpal preruseni eth0 na jedno jadro a erh1 na druhe jadro. Tj. ted server bezi s kernelem 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux.
Softwarove interupty, tj. predpokladam ze proces ksoftirq se nezdaji byt problem, protoze tyto procesy se vubec neobjevuji ( a navic jejich objevovani a vytezovani CPU po zkusenostech ze starsiho HW serveru grafuju)
Pep.
jde spis o to, zda je opravdu pouzito vice IRQ vektoru na RX i TX z jedne sitovky: KOukam ted na jednu gateway, kterou tece take cca 300+mbps a je v ni stejny chipset na sitovkach. Mam tam pro kazdou sitovku jeden IRQ pro TX a 4 pro RX:
uryvek z /proc/interrupts:
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
90: 24260 0 53257896 325970 52619422 640066 49156722 569055 PCI-MSI ahci
98: 1946 0 4074501844 397098140 1290572996 2379720244 94366659 3477140044 PCI-MSI-X eth0-tx-0
106: 24 0 3443103038 1446457517 3262663940 1537957321 3668523399 1033014921 PCI-MSI-X eth0-rx-0
114: 23 2803 3250353368 1469624836 3338590861 1642264020 3369154143 957002783 PCI-MSI-X eth0-rx-1
122: 407 0 3188197982 1342430475 3140173143 1667631129 3296177983 925756544 PCI-MSI-X eth0-rx-2
130: 26 440 3366614670 1423017179 3290008664 1727149678 3360003899 909593965 PCI-MSI-X eth0-rx-3
138: 0 0 0 0 0 0 0 0 PCI-MSI-X eth0
146: 9557 0 3336067242 1876460907 2805255587 2092896088 2954355637 1563464369 PCI-MSI-X eth1-tx-0
154: 7625 0 3571456481 1603368965 3186552308 1815139198 3534455308 1207926220 PCI-MSI-X eth1-rx-0
162: 5379 0 3473037166 1580928227 3248474493 1916685541 3440973966 1129786114 PCI-MSI-X eth1-rx-1
170: 5081 0 3289065176 1440136715 3197405418 1791457255 3384453924 1130063547 PCI-MSI-X eth1-rx-2
178: 4966 3848 3470218841 1709128645 3443711089 2055069772 3520315599 1206822984 PCI-MSI-X eth1-rx-3
186: 0 0 0 0 0 0 0 0 PCI-MSI-X eth1
LOC: 3630144224 3630144078 3630143068 3630143304 3630143170 3630143199 3630143072 3630143455
je tam podstatne starsi jadro nez mas ty (2.6.x - bezime na klonech RedHatu). A statistika od igb driveru neobsahuje zadne rx_fifo_errors (jen tx-fifo_errors)... Z offloading features mam zapnute jen ty co neslepuji packety (checksumming pro RX i TX)/ Zbytek ovlivnuje shapery - pak nebezi jak maji - data prekracuji nastavene rychlosti. Alespon na 2.6 jadrech (ackoliv zaplaty na to maji byt jiz v jadre. HTB proste nepocita s tim, ze packet bude vetsi nez 1500)