2011/2/21 Bogdan-Stefan Rotariu <bog...@rotariu.ro> > [...] > 1. La routing, singura balansare care ai putea sa o faci este cea de IRQ > pe diferite procesoare/core-uri, dar si pentru asta ai nevoie de mult > tweaking. >
Uhm, la mine tweakingul pentru asta inseamna disable la irqbalance si urmatoarele linii puse la startup, # IRQ affinities eth0_irq=`grep eth0 /proc/interrupts|cut -d \: -f 1 | awk '{print $1}'` eth1_irq=`grep eth1 /proc/interrupts|cut -d \: -f 1 | awk '{print $1}'` eth2_irq=`grep eth2 /proc/interrupts|cut -d \: -f 1 | awk '{print $1}'` # eth0 goes on CPU1, eth1 on CPU2, eth2 on CPU3 and timer on CPU0 echo "1" >/proc/irq/0/smp_affinity echo "2" >/proc/irq/$eth0_irq/smp_affinity echo "4" >/proc/irq/$eth1_irq/smp_affinity echo "8" >/proc/irq/$eth2_irq/smp_affinity > 2. Conteaza foarte mult ce placi de retea ai, sa cresti bufferul la 4096 > (e1000) va treubi sa scazi timpul la softIRQ pentru procesarea fiecarui > pachet, cresterea tabelei de hash, mornirea irqbalance cu --noethernet, > sa nu te bagi peste setarile de smpaffinity de la placile de retea > > Tweakingul la parametrii placilor Intel, din experienta mea, nu ajuta foarte mult -- eu am reusit sa obtin maxim 30% performante in plus cu diverse modificari. Ultimele generatii de drivere de la Intel au un mod "adaptive" la unii parametri, din experienta mea isi fac treaba bine. > Iti recomand sa nu folosesti iptables, in special NU NAT, mai exact sa-i > dai disable de tot, mai economisesti din timpul petrecut sa rezolvi > problemele cauzate de iptables, sa incerci sa iti rulezi servicii doar > pe interfete locale de management/vlan-uri > > Poti sa scazi tcp_wait sa reduci numarul de conexiuni din tabela, (eu le > foloseam intre 60-360 de secunde, fata de 1h cat era default) > > Subscriu la aceste ajustari de TCP. Sunt si altele in afara de tcp_wait, google dupa "linux tcp tweaking high traffic" gaseste cateva resurse interesante. OP: Intr-un scenariu de acest tip (linux pe post de router cu quagga), cele mai mari si mai uzuale probleme sunt la situatiile de atac [D]DoS. In cazul unui client de-al meu, la peste 70kpps, softinterrupts consuma maxim CPU si apare packetloss consistent. Am rezolvat situatiile astea cu tool-ul numit glflow. Consuma destul CPU (25% dintr-un core de Xeon 3GHz), insa detecteaza flood-urile suficient de bine si repede. Pentru filtrare folosesc iptables pe tabela raw (care e parcursa inainte de connection tracking). Daca e cineva interesat de setup, pot sa dau detalii pe personala. -- www.flo.ro _______________________________________________ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug