CZFree.Net Home Page Diskuzní Fóra CZFree.Net Archív Často Kladených Otázek Registrace Nových Členů Archív Odkazů Seznam Členů Fóra CZFree.Net Czech Node Map hosted @CZFree.net CZFree.Net WIKI
CZFree Network Portal vzkazy | ovládání | pokročilé hledání   
 

Odpovědět k Tématu 
CZFree.Net forum: Wireless community network CZFree.Net > Fórum > Unixové Systémy > Požadavky na výkon serveru pro QOS (HTB&SFQ)
12
Autor
Téma  < Předchozí Téma   Další Téma >
ludvik
Senior Member

Registrován: 04.12.2002
Příspěvků: 543

Požadavky na výkon serveru pro QOS (HTB&SFQ) Příspěvek č. 1 

Chci opět rozvířit diskusi nad výkoností HTB, resp. stroje na kterém to musí běžet.

Problém: při 100Mbit lince je prakticky nemožné rozumně QOSovat. Stroj Core2Duo 2.13GHz, síťovky e1000 (jedna na PCIe, druhá na normál PCI). Expressovka je do gigového switche, druhá do 100M rozhraní ceragonu. Vytížení obou procesorů je přibližně 50% každý, ve špičkách (při průtoku cca 80M a 10k paketů/s každým směrem) až okolo 90%. Vše zabírá "kernelový" čas.

Řešení: pomocí promethea0.7a řízení provozu každé IP extra. Je to tak, že každý uživatel má svoji třídu do které mu "padají" všechny jeho IP adresy. Takže kapacita je rozdělená poctivě na cca 1500 kousíčků s minimem (rate) 66kbit a různým maximem (ceil) dle kvality jeho umístění na síti. Není to úplně přesný popis, některé classy mají rate jiný (servery, voip zařízení, apod.), ale pro seznámení stačí.
Strom classes je 4 úrovňový: interface->wan->skupiny->uživatelé. Tak jak to vytváří prometheus.

Na tom samém počítači je jak QOS (tedy HTB&SFQ) ale i SNAT&DNAT. Iptables pravidla (markovací a natkovací) výkon nijak neovlivňují. Jejich zrušení prostě nic nedělá (resp. se to nedá změřit). Ovšem zrušení veškerých qos class ano, vytížení klesne na nějakých 3-4%

Tak a co teď? Podělíte se s vlastními zkušenostmi, jak to děláte u vás a co to stojí (výkonu)?

Snažím se vytvořit nějakou teorii, která by mi pomohla. Ale nějak se mi moc nedaří a ještě hůř se to zkouší ...
a) předělat QOSení na u32 filter dle IP. Může někdo potvrdit nárůst výkonu oproti filtru na MARK?
b) posílit CPU na serveru. Lze jít (a to zatím nevím jestli to snese MB) až někam k 3GHz. Bohužel neumím odhadnout, kolik procent to přinese ... silně pochybuju, že 40% zlepšení ... (pěti deseti se nemá cenu asi zabývat). Stejně tak jsem skeptický ke zvyšování počtu jader.
c) IO výkon síťovek. Vyhodit (resp nepoužívat) stávající a použít něco lepšího, serverově zaměřeného? Prostě dvouportovou, gigabitovou do PCIe?
d) snažím se pochopit NAPI POLLING. Vzhledem k počtu IRQ na tomto stroji to zjevně nepoužívám. Máte to někdo takto funkční? Můžu čekat velké zlepšení?
e) změna časovače v jádře - parametr CONFIG_HZ. Ale kam? Dolů nebo nahoru? Logicky si odvozuji, že v tomto případě spíš nahoru ... ať to ty paketíky rychleji přehazuje. Ale mohu se mýlit ...
f) preemption model - pomůže něčemu "No forced (server)"?
g) koupit něco jako Paketeer. Bohužel ale nekradu ...

Viděl bych to nejlépe na c) a d), co vy na to?

Old Post 26.11.2007 v 11:10
ludvik je offline   Click Here to See the Profile for ludvik   Find more posts by ludvik   Click here to Send ludvik a Private Message   Click Here to Email ludvik   Visit ludvik's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
belgarat
Senior Member

Registrován: 13.05.2004
Příspěvků: 777

Re: Požadavky na výkon serveru pro QOS (HTB&SFQ) Příspěvek č. 2 

Old Post 26.11.2007 v 11:27
belgarat je offline   Click Here to See the Profile for belgarat   Find more posts by belgarat   Click here to Send belgarat a Private Message   Click Here to Email belgarat     Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
simandl
zástupce 10.33

Registrován: 15.07.2002
Příspěvků: 1219

jaky QOS Příspěvek č. 3 

__________________

Old Post 26.11.2007 v 12:45
simandl je offline   Click Here to See the Profile for simandl   Find more posts by simandl   Click here to Send simandl a Private Message   Click Here to Email simandl   Visit simandl's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
danny


Registrován: 12.05.2002
Příspěvků: 5247

Team Member: ADMIN

User is Mapper

Příspěvek č. 4 

Filtry mame pres U32. Masina, ktera dela NAT + shaper do internetu (+ devka na dalsi veci) je dvouprocesorova PIII/1G. Sitovky klasicke e100 (dve onboard + jedna dvouport v 32bit PCI; irq jsou momentalne rozbalancovane mezi obe cpu). Spickove tam tece ~15-20M a kope se to nudou do ****, nejvic zateze mi tam ted dela generovani nejakych grafu kolem.

Mozna je to tim, ze tech trid/filtru na pruchod tam je taky podstatne min (neco pres stovku; teoreticky bych tam mohl nekdy nagenerovat nekdy nejake 'fake' navic a zkusit, co to udela), ale kdybych si nabihal na problem tam, asi si zacnu hrat s hashovacima filtrama u tc, ktere vidim jako rozumnou cestu dal az to skutecne bude problem...

Reseni Promethea nad stovkama pravidel mi zrovna na tohle neprijdou moc efektivni (s tim, ze tc musi mit take nejakou tabulku, kde z iptables marku pozna, kterou tridu pouzit; takze se ve finale podstate prochazi dve tabulky - jedriv markovaci v IPT, pote dalsi filter v tc, ktera u tech fw flowid rozhodne hashovana nebude), ale to je spis subjektivni pocit (kdyz vidim - pokud dobre koukam - jak to je napsane; iptables v prometheu jsou sice v nejakem stromu, ale tc filter je placata tabulka), nemuzu potvrdit nejakym merenim.

PS: Ze to na brane je v posledni dobe prepsane do HFSC+ESFQ je asi nepodstatne, chtel sem si pohrat

Old Post 26.11.2007 v 12:51
danny je pryč   Click Here to See the Profile for danny   Find more posts by danny         Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
ludvik
Senior Member

Registrován: 04.12.2002
Příspěvků: 543

Příspěvek č. 5 

Tu máš výcuc začátku. Dál už se to vlastně jenom opakuje.

qdisc add dev eth0 root handle 1: htb r2q 1 default 1
class add dev eth0 parent 1: classid 1:2 htb rate 100Mbit ceil 100Mbit burst 8k prio 0
class add dev eth0 parent 1:2 classid 1:1 htb rate 99000kbit ceil 99000kbit burst 8k prio 0
qdisc add dev eth1 root handle 1: htb r2q 1 default 1
class add dev eth1 parent 1: classid 1:2 htb rate 100Mbit ceil 100Mbit burst 8k prio 0
class add dev eth1 parent 1:2 classid 1:1 htb rate 99000kbit ceil 99000kbit burst 8k prio 0
class add dev eth0 parent 1:1 classid 1:256 htb rate 99000kbit ceil 99000kbit burst 8k prio 1
class add dev eth1 parent 1:1 classid 1:256 htb rate 99000kbit ceil 99000kbit burst 8k prio 1
class add dev eth0 parent 1:256 classid 1:66 htb rate 98488kbit ceil 99000kbit burst 8k prio 1
class add dev eth1 parent 1:256 classid 1:66 htb rate 98488kbit ceil 99000kbit burst 8k prio 1
class add dev eth0 parent 1:66 classid 1:64 htb rate 98356kbit ceil 99000kbit burst 8k prio 1
class add dev eth1 parent 1:66 classid 1:64 htb rate 98356kbit ceil 99000kbit burst 8k prio 1
class add dev eth0 parent 1:64 classid 1:32 htb rate 98228kbit ceil 99000kbit burst 8k prio 1
class add dev eth1 parent 1:64 classid 1:32 htb rate 98228kbit ceil 99000kbit burst 8k prio 1

class add dev eth0 parent 1:66 classid 1:2453 htb rate 66kbit ceil 66kbit burst 8k prio 18
qdisc add dev eth0 parent 1:2453 handle 2453 sfq perturb 15
filter add dev eth0 parent 1:0 protocol ip handle 2453 fw flowid 1:2453
class add dev eth1 parent 1:66 classid 1:2453 htb rate 66kbit ceil 66kbit burst 8k prio 18
qdisc add dev eth1 parent 1:2453 handle 2453 sfq perturb 15
filter add dev eth1 parent 1:0 protocol ip handle 2453 fw flowid 1:2453

class add dev eth0 parent 1:66 classid 1:3207 htb rate 66kbit ceil 5000kbit burst 8k prio 1
qdisc add dev eth0 parent 1:3207 handle 3207 sfq perturb 15
filter add dev eth0 parent 1:0 protocol ip handle 3207 fw flowid 1:3207
class add dev eth1 parent 1:66 classid 1:3207 htb rate 66kbit ceil 5000kbit burst 8k prio 1
qdisc add dev eth1 parent 1:3207 handle 3207 sfq perturb 15
filter add dev eth1 parent 1:0 protocol ip handle 3207 fw flowid 1:3207

Old Post 26.11.2007 v 13:02
ludvik je offline   Click Here to See the Profile for ludvik   Find more posts by ludvik   Click here to Send ludvik a Private Message   Click Here to Email ludvik   Visit ludvik's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
p.salek
Moderator

Registrován: 08.09.2002
Příspěvků: 641

Team Member: MOD

Příspěvek č. 6 

load average: 0.00, 0.00, 0.00, aktualne cca 80Mbps

Finta fň je pouzit hashovaci algoritmus v TC a minimalizovat pouziti iptables, vyuzil jsem napad Mnagy, kdy mam defaulni tridu s nulovu rychlosti a neregistrovany IPcka padaji do ni.

Natku asi jinak nez pres IPtables nejde, nemel jsem zatim potrebu to dal optimalizovat, verejnych natuju cca 250, zatim mam linearni retez, ale urcite casem prejdu na stromecek.

Zkusebne jsem pres to protlacil cca 300Mbit, vic jsem nezkousel.

Mam jeden rack na firewally a pred tim router, pokud by mi nestacil vykon, tak jenom pridam dalsi firewall a na routeru source based routingem poslu cast provozu pres druhy router. Takhle to lze delat donekonecna a pokud se router zdvoji pres vrrp tak pomoci jednoduchych scriptu je mozny mit luxusni zalohu.

Sitovky na PCI-E, propustnost je dulezita, tak proc se limitovat PCI sbernici, kdyz stoji par drobnych navic.
A samozrejmne 2.6 jadro a irq balance.


Jo a vyhodil bych to SFQ v jednolivych tridach, pokud v dane tride sedi jeden uzivatel, tak neni duvod aplikovat na to jinou nez li standartni frontu FIFO, neco malo vykonu usetris.

Naposledy upravil p.salek 26.11.2007 v 13:17

Old Post 26.11.2007 v 13:14
p.salek je offline   Click Here to See the Profile for p.salek   Find more posts by p.salek   Click here to Send p.salek a Private Message   Click Here to Email p.salek     Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
ludvik
Senior Member

Registrován: 04.12.2002
Příspěvků: 543

Příspěvek č. 7 

Simandl: ten tvůj script je prima na tranzit. Jenže podle mě je pro gateway lepší řešení prometheus (je prostě férovější k userům).

Danny: zatím nikdo nepotvrdil, co přesně tc filtr používá za tabulky. Pokud u32 ip dle někoho hashovací tabulka je, tak se mi nezdá, že by nebyl hash i pro tento fw mark způsob.
Potvrdit by se to dalo asi přepsáním MARK iptables pravidel na CLASSIFY a vyhozením tc filtru. Zatím jsem se k tomu ale nedostal.

Největší problém asi bude to "přehazování paketů" mezi jednotlivýma classama.

A pro ostatní ... bohužel při řekněme 30Mbitech bych to neřešil. Tenkrát to bylo relativně v pohodě i na slabším stroji. Nemluvě o tom, že je potenciálně možné jít daleko výš.

Old Post 26.11.2007 v 13:17
ludvik je offline   Click Here to See the Profile for ludvik   Find more posts by ludvik   Click here to Send ludvik a Private Message   Click Here to Email ludvik   Visit ludvik's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
ludvik
Senior Member

Registrován: 04.12.2002
Příspěvků: 543

Příspěvek č. 8 

Old Post 26.11.2007 v 13:24
ludvik je offline   Click Here to See the Profile for ludvik   Find more posts by ludvik   Click here to Send ludvik a Private Message   Click Here to Email ludvik   Visit ludvik's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
-=RYS=-
Senior Member

Registrován: 24.01.2003
Příspěvků: 2424

Re: Požadavky na výkon serveru pro QOS (HTB&SFQ) Příspěvek č. 9 

__________________

Owner rpt+Echolink OK0BEZ
http://www.ok0bez.com
http://www.ok1mjo.com
http://aprs.fi/?call=a%2FOK1OEM-1

Old Post 26.11.2007 v 13:36
-=RYS=- je offline   Click Here to See the Profile for -=RYS=-   Find more posts by -=RYS=-   Click here to Send -=RYS=- a Private Message     Visit -=RYS=-'s homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
belgarat
Senior Member

Registrován: 13.05.2004
Příspěvků: 777

Příspěvek č. 10 

Old Post 26.11.2007 v 13:59
belgarat je offline   Click Here to See the Profile for belgarat   Find more posts by belgarat   Click here to Send belgarat a Private Message   Click Here to Email belgarat     Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
danny


Registrován: 12.05.2002
Příspěvků: 5247

Team Member: ADMIN

User is Mapper

Příspěvek č. 11 

Naposledy upravil danny 26.11.2007 v 14:05

Old Post 26.11.2007 v 14:01
danny je pryč   Click Here to See the Profile for danny   Find more posts by danny         Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
ludvik
Senior Member

Registrován: 04.12.2002
Příspěvků: 543

Příspěvek č. 12 

RYS: bohužel to s tím přerušením asi už při těchto rychlostech moc platit nebude. Samozřejmě že má každá síťovka jiné ... a dokonce každé padá na jiný procesor. Ani nevím jak bych to měl překonfigurovat ... když vidím IRQ 1 - 22. A nic sdíleného ... Ale jinak to jsou opravdu všeobecná pravidla, které se člověk snaží dodržovat. Nic jiného, než Intel bych tam nedal ani za zlaté prase ... máme jenom jeden neintentel "server" a nejradši bych ho rozšlapal.

danny&belgarat: teď by mě zajímalo, kdo z vás má pravdu :-)

belgarat only: je mi jasné, že ty iptables něco stojí. Jenže dle mojich pokusů to rozhodně není úzké hrdlo. Dokonce i obecné firewally mám postavené velice podobným stylem a jsou schopné uroutovat cca 300Mbit (na podobném stroji). Tj. pokud máš pravdu s hashem na fwmark (asi jo) a já dobře chápu hashtabulky, tak je problém někde v tom htb nebo sfq.


Vůbec se do toho zamotávám ... experimentoval jsem s hodnotou BURST. Při 32k na všech třídách jsem měl pocit, že to jede lépe, ale vytížení šlo ještě trochu nahoru. Druhý krok 8k (bývalo 16) - vypadalo to také normálně, vytížení trochu kleslo, ovšem do doby špičky - graf přenosů byl naprosto vodorovný, propustnost se zasekla někde u 38Mbit.
Nejlépe jsem dopadnul s hodnotama 64k na class 1:1 a 1:2 (viz můj příklad) a 32k na 1:64, 1:66 a 1:256. Zbytek jsem nechal na 8k. Povedlo se nám z linky vytlačit cca 95Mbit. Pingy na seznam šly sice až někam k 30ms, ale jelo to vcelku dobře.

Objednal jsem síťovku Intel PRO/1000 PT Dual. Tak jsem na to zvědavej ... za ty tři tisíce ten pokus stojí.

Old Post 26.11.2007 v 21:09
ludvik je offline   Click Here to See the Profile for ludvik   Find more posts by ludvik   Click here to Send ludvik a Private Message   Click Here to Email ludvik   Visit ludvik's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
Shake
Moderator

Registrován: 02.01.2003
Příspěvků: 1018

Team Member: MOD

Příspěvek č. 13 

Naposledy upravil Shake 26.11.2007 v 23:53

Old Post 26.11.2007 v 23:48
Shake je offline   Click Here to See the Profile for Shake   Find more posts by Shake   Click here to Send Shake a Private Message   Click Here to Email Shake     Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
ludvik
Senior Member

Registrován: 04.12.2002
Příspěvků: 543

Příspěvek č. 14 

shake: realteky tam nemám!!! :-) I v současném stavu je vše intel, obě gigové - integrovaná PCIe, druhá na PCI. Intel PRO/1000, přesnou verzi nevím ...
Nenapsal jsi, kolik tříd máš, ani jakou kapacitu qosuješ ...

Na tomto stroji máme normální intelí board. Čipset 965. Otázkou je, jestli jsou na tom lepší, serverové, desky o tolik lépe. 100Mbit není zase tolik, když se to vezme kolem a kolem ...

Ohledně PCIe a PCI-X bych zase věřil spíš tomu expressu. Má to míň drátů a není to sdílená sběrnice.

Naposledy upravil ludvik 27.11.2007 v 00:12

Old Post 27.11.2007 v 00:05
ludvik je offline   Click Here to See the Profile for ludvik   Find more posts by ludvik   Click here to Send ludvik a Private Message   Click Here to Email ludvik   Visit ludvik's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
belgarat
Senior Member

Registrován: 13.05.2004
Příspěvků: 777

Re: Požadavky na výkon serveru pro QOS (HTB&SFQ) Příspěvek č. 15 

Old Post 27.11.2007 v 07:47
belgarat je offline   Click Here to See the Profile for belgarat   Find more posts by belgarat   Click here to Send belgarat a Private Message   Click Here to Email belgarat     Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
ludvik
Senior Member

Registrován: 04.12.2002
Příspěvků: 543

Příspěvek č. 16 

Jestli to dobře chápu, tak pokud vynechám "qdisc add", tak se používá pfifo_fast. Sice to netestuju ve špičce, ale vliv to evidentně nemá žádný ... 30% obě jádra před i po.

To je špatný ... spíš jsem myslel, že problém je SFQ.

Old Post 27.11.2007 v 09:37
ludvik je offline   Click Here to See the Profile for ludvik   Find more posts by ludvik   Click here to Send ludvik a Private Message   Click Here to Email ludvik   Visit ludvik's homepage!   Reference obchodniku Upravit/Smazat Příspěvek   Odpovědět s Citací  
Veškerý čas je GMT. Aktuální čas: 20:14.  Předcházející Téma   Další Téma
Odpovědět k Tématu
12  
Zformátovat pro Tisk | Stáhnout Téma do Palma | Poslat Téma E-mailem | Odebírat tuto Diskuzi

Search this Thread:

 

CZFree.NET | Copyright ©MMII - MMXIV CZFree.NET | Kontaktujte Nás
Powered by: vBulletin - Copyright ©MM - MMII Jelsoft Enterprises Limited.
Founder: Deu / original scripting by: carlos (All High Seeds) / Node Monitor by: 8an
Additional Portal & Node Monitor Development by: oto, Zajsoft, Danny, Netdave
Hosted by: NFX.cz / FreeTel.cz