Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ruting + HTB + 100Mbps = obciażenie CPU

43 views
Skip to first unread message

max

unread,
Jun 23, 2010, 9:18:26 AM6/23/10
to
root@amd2 rc.d]# uname -a
Linux amd2 2.6.23 SMP Thu May 15 00:02:29 EDT 2008 x86_64 x86_64 x86_64
GNU/Linux
[root@amd2 rc.d]# ip -V
ip utility, iproute2-ss070313

Po paru testach doszedłem do nastepującego wniosku:
Standardowe obciązenie CPUs ok 60% idle
wyłączenie tc powoduje spadek obciążenia do 73% idle
wyłączenie tc + tablice mangle powoduje spadek obciążenia do 85% idle
Wychodzi na to że sam czysty ruting połyka ok 15% zasobów systemu w moim
przypadku (w zależności od szybkości procesora).

Wnioski:
Wdrożenie tablic haszujacych nie wiele przyspieszy w moim przypadku co
proponowano tak często na grupie.

Pytania:
1) Ma ktoś jakiś pomysł jak przyspieszyć ruting ?
2) Jak pozbyć się markowania (tablice mangle) bo jak wynika z pomiarów
połyka to ok 12% zasobów (kolejki za natem).

Wszelkie podpowiedzi powodujące zmniejszenie obciązenia systemu mile
widziane.


jacki

unread,
Jun 23, 2010, 9:47:32 AM6/23/10
to
W dniu 2010-06-23 15:18, W odpowiedzi na Twój (max) list-piszę Ci:

> root@amd2 rc.d]# uname -a
> Linux amd2 2.6.23 SMP Thu May 15 00:02:29 EDT 2008 x86_64 x86_64 x86_64
> GNU/Linux
> [root@amd2 rc.d]# ip -V
> ip utility, iproute2-ss070313

Co to za maszyna i ile hostów obsługuje?

--
Pozdrawiam
Andrzej Jackiewicz
jacki(at)idealan.pl

Brodi

unread,
Jun 23, 2010, 12:55:57 PM6/23/10
to
W dniu 2010-06-23 15:18, max pisze:

> root@amd2 rc.d]# uname -a
> Linux amd2 2.6.23 SMP Thu May 15 00:02:29 EDT 2008 x86_64 x86_64 x86_64
co to za zabytkowe jajko ? 2.6.25 instalowałem ze 2 lata temu

> ip utility, iproute2-ss070313
może jakiś upgrade ? 2007 rok - w 64-b do dzisiaj pewnie trochę
optymalizacji wprowadzili w kodzie :]

> Standardowe obci�zenie CPUs ok 60% idle
co to za sprzęt ?
jakie sieciówki ?
intele i broadcomy z dużym ruchem sobie radzą.
>
> Wnioski:
> Wdro�enie tablic haszujacych nie wiele przyspieszy w moim przypadku co
> proponowano tak cz�sto na grupie.
>
jak wygląda obciążenie io/irq ?
może coś dysk nadmiernie obciąża ?

z moich obserwacji najwięcej zasobów zjada zbieranie statystyk i
logowanie ruchu, na tym routerku coś masz ?

czy któraś z sieciówek nie działa w trybie promiscuous ?
http://pl.wikipedia.org/wiki/Promiscuous

Krzysztof Halasa

unread,
Jun 23, 2010, 3:52:40 PM6/23/10
to
Brodi <madmax81_i...@interia.pl> writes:

> intele i broadcomy z dużym ruchem sobie radzą.

Broadcomow nie uzywam raczej, ale sa rozne intele i bardzo roznie radza
sobie z ruchem.
--
Krzysztof Halasa

max

unread,
Jun 24, 2010, 4:25:42 AM6/24/10
to
> Co to za maszyna i ile hostów obsługuje?
>
poniżej 1000

[root@amd2 rc.d]# lspci |grep -i eth
00:07.0 Bridge: nVidia Corporation MCP61 Ethernet (rev a2)
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E
Gigabit Ethernet Controller (rev 19)

Jedna jest zintegrowana z płyną NVIDIA a druga Marvell to karta Planeta na
PCI-E obie 1Gbps.
Obciązenie serwera to w 95% ruch po sieci czyli obciązenie procesora pokrywa
się z obciązeniem IO/IRQ czyli przerwania kart sieciowych.

Powiadacie że pomóc może wymiana kart sieciowch ?
W takim razie jakie karty sieciowe intela proponujecie?
Musze sprawdzić ile mam wejśc PCI-E na płycie czy tylko jedno czy może
więcej.

Jak to u was wygląda obciążenie IO/IRQ względem CPU przy obciżeniu ruchem
50~100Mbps i na jakich kartach ?


jacki

unread,
Jun 24, 2010, 5:08:25 AM6/24/10
to
W dniu 2010-06-24 10:25, W odpowiedzi na Twój (max) list-piszę Ci:

>> Co to za maszyna i ile hostów obsługuje?
>>
> poniżej 1000
>
> [root@amd2 rc.d]# lspci |grep -i eth
> 00:07.0 Bridge: nVidia Corporation MCP61 Ethernet (rev a2)
> 02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E
> Gigabit Ethernet Controller (rev 19)
>
> Jedna jest zintegrowana z płyną NVIDIA a druga Marvell to karta Planeta na
> PCI-E obie 1Gbps.
> Obciązenie serwera to w 95% ruch po sieci czyli obciązenie procesora pokrywa
> się z obciązeniem IO/IRQ czyli przerwania kart sieciowych.
>
> Powiadacie że pomóc może wymiana kart sieciowch ?
> W takim razie jakie karty sieciowe intela proponujecie?
> Musze sprawdzić ile mam wejśc PCI-E na płycie czy tylko jedno czy może
> więcej.

U mnie w jednej maszynie:
2xBroadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet
4-portowa Intel Corporation 82546GB Gigabit Ethernet Controller
4-portowa D-Link System Inc DL10050 Sundance Ethernet (to obsługuje
znikomy ruch)
2x 4-portowa Intel Corporation 82571EB Gigabit Ethernet Controller

>
> Jak to u was wygląda obciążenie IO/IRQ względem CPU przy obciżeniu
> ruchem
> 50~100Mbps i na jakich kartach ?
>

Powyżej 2000 hostów. W tej chwili ruch na najbardziej obciążonej
sieciówce to jakieś 150Mbps/70Mbps (Intel). 60/80Mbps na jednym
Broadcom, 50Mbsp/50Mbps na drugim. Na pozostałych intelach różnie,
przeważnie kilkanaście-kilkadziesiąt Mbps Do tego firewall i kolejki htb
oparte na filtrach mieszających:

load average: 0.10, 0.06, 0.04

Cpu0:0.0%us,0.0%sy, 0.0%ni, 61.5%id, 0.0%wa, 2.0%hi, 36.5%si, 0.0%st
Cpu1:0.0%us,0.3%sy, 0.0%ni, 78.4%id, 0.0%wa, 3.0%hi, 18.3%si, 0.0%st
Cpu2:0.0%us,0.0%sy, 0.0%ni, 80.7%id, 0.0%wa, 0.7%hi, 18.6%si, 0.0%st
Cpu3:0.0%us,0.3%sy, 0.0%ni, 75.0%id, 0.0%wa, 1.7%hi, 23.0%si, 0.0%st


procek to Intel(R) Xeon(R) CPU E5335

Zainstalowane irqbalance

Może faktycznie pomyśl na kartą Intela i na wszelki wypadek potestuj
tablice mieszające przy kolejkowaniu.

Krzysztof Halasa

unread,
Jun 24, 2010, 6:58:49 AM6/24/10
to
jacki <coll...@idealan.pl> writes:

> Powyżej 2000 hostów. W tej chwili ruch na najbardziej obciążonej
> sieciówce to jakieś 150Mbps/70Mbps (Intel). 60/80Mbps na jednym
> Broadcom, 50Mbsp/50Mbps na drugim. Na pozostałych intelach różnie,
> przeważnie kilkanaście-kilkadziesiąt Mbps

> procek to Intel(R) Xeon(R) CPU E5335

Przeciez to drobiazg, ludzie. Takie rzeczy dawalo sie robic na duzo
starszym sprzecie. Jesli ktos ma z takim czyms problemy (na niskim
poziomie - karty, drivery kart itp.) to cos jest powaznie nie tak.
--
Krzysztof Halasa

kacpermkk

unread,
Jun 24, 2010, 8:29:50 AM6/24/10
to
Użytkownik "Krzysztof Halasa" <k...@pm.waw.pl> napisał w wiadomości
news:m3bpb06...@intrepid.localdomain...

popieram Krzysztofa,
WAN mam cienki, ale lany między sobą często wysycają mi sieciówki (100Mbit),
co ciekawe... proc P3 500MHz, RAM 128MB,
karty sieciowe: WAN - RTL8029, trzy LANy na Intel 82558, 3com 905 oraz
RTL8139.
W szczytach gdy idzie max sieciówek między lanami idle procka ok. 10-20%.

pozdrawiam
Marcin Kacperek


max

unread,
Jun 24, 2010, 10:36:01 AM6/24/10
to
> W szczytach gdy idzie max sieciówek między lanami idle procka ok. 10-20%.
>
Rozumiem, że po tym lanie puszczasz ruch 1000 userów z QoS + mangle + filtry
+ pareset wpisów w iptables ?
W takim razie pochwal się co to za karty sa takei wydajne (model) ?
Bo jak nic nie robisz z ruchem, to nie rozumiem co ma twoje porównanie do
rzeczy.


max

unread,
Jun 24, 2010, 10:40:23 AM6/24/10
to
> Przeciez to drobiazg, ludzie. Takie rzeczy dawalo sie robic na duzo
> starszym sprzecie. Jesli ktos ma z takim czyms problemy (na niskim
> poziomie - karty, drivery kart itp.) to cos jest powaznie nie tak.
> --
To bardzo ciekawe dlaczego inne firmy kupuja ruter za PARESET TYSIECY skoro
to takie proste zadania dla PC386 ;)


kacpermkk

unread,
Jun 24, 2010, 11:53:57 AM6/24/10
to
Użytkownik "max" <lot_nie_...@algrim.pl> napisał w wiadomości
news:hvvqgh$lrc$1...@node1.news.atman.pl...

nie nie nie, żadne 1000 userów, tylko dział handlowy (kilka stanowisk)
komuikują się z serwerami w DMZ,
QoS to tylko kilka regółek (między LANami) co by jeden handlowiec nie
utrudniał pracy drugiemu przez całkowite zapchanie sieciówek,
pozostały QoS (do WANu) idzie przez IMQ
i sieciówkę RTL8029 (stary trup, ale dla obciążenia 8Mbit wystarcza) przy
pełnym wysyceniu (regółek ok. 50 w HTB),
w iptables dzrzewo na limity p2p itp. (ok. 80-100 linijek),
przy samym wysyceniu torrentami łącza internetowego (8Mbit) obciążenie wacha
się na kilku procentach,
no jak bym miał 1000 userów to bym napewno dołożył RAMu i lepszy procek,
ale moja wypowiedź miała na celu tylko zauważenie, że z każdego sprzętu da
się coś wycisnąć, tylko tyle...


Krzysztof Halasa

unread,
Jun 24, 2010, 12:13:56 PM6/24/10
to
"max" <lot_nie_...@algrim.pl> writes:

> Rozumiem, że po tym lanie puszczasz ruch 1000 userów z QoS + mangle + filtry
> + pareset wpisów w iptables ?
> W takim razie pochwal się co to za karty sa takei wydajne (model) ?

A myslisz ze jaki wplyw maja karty na wydajnosc np. iptables?
Procesor, RAM - tak. Wlasciwa konstrukcja tablic - jasne (chyba nie
chodzi o kilkaset liniowych wpisow). Ale karty nie maja na to wplywu.

> To bardzo ciekawe dlaczego inne firmy kupuja ruter za PARESET TYSIECY skoro
> to takie proste zadania dla PC386 ;)

Nikt nie pisal o 386. BTW mialem kiedys router na 386 robiacy
kilkadziesiat Mb/s. Karty - klony WD8013. Nie bylo wtedy iptables itd,
ale to szyna ISA, nie procesor, byla waskim gardlem.

Jesli ktos obecnie kupuje router za kilkaset tysiecy (zlotych jak
rozumiem, "nowych") tylko po to, zeby przeroutowac ca. 500 Mb/s, to jest
przynajmniej naiwny, albo wydaje cudze pieniadze. Wielokrotnie wiekszy
ruch wraz z rozmaitymi QoSami, iptablicami i innymi rzeczami jest w
stanie obsluzyc kilkuletni pecet. Mam znajomego, ktory kupuje takie
(firmowe desktopy) po 100 zl, wklada tam dodatkowo dwie karty dual
e1000e (jakies LP 82571x chyba tylko x1, troche drozsze od peceta)
i robi na tym lacznie kilka Gb/s.
--
Krzysztof Halasa

Krzysztof Oledzki

unread,
Jun 24, 2010, 3:45:47 PM6/24/10
to
max <lot_nie_...@algrim.pl> wrote:
> > W szczytach gdy idzie max sieciówek między lanami idle procka ok. 10-20%.
> >
> Rozumiem, że po tym lanie puszczasz ruch 1000 userów z QoS + mangle + filtry
> + pareset wpisów w iptables ?

Ale pareset wpisów w iptables nie jest problemem, o ile typowy
pakiet prechodzi przez kilkanaście - kilkadziesiąt reguł.
Po to jest ipset, IPMARK, możliwość drzewiastej budowy regułek,
aby sobie z tym radzić. Dalej, masz conntracka - podpijasz
hash, najlepiej do poziomu, aby rozwmiar hasha był dwa razy
większy niż liczba śledzonych połączeń, itd.

Pozdrawiam,

Krzysztof Oledzki

--
Krzysztof Olędzki
e-mail address: ole(a-t)ans(d-o-t)pl
Registered User: Linux - 189200, BSD - 51140
Nick Handles: KO60-RIPE, KO581 (Network Solutions)

helperm

unread,
Jun 24, 2010, 4:06:01 PM6/24/10
to
max pisze:

> To bardzo ciekawe dlaczego inne firmy kupuja ruter za PARESET TYSIECY skoro
> to takie proste zadania dla PC386 ;)

hehe... zdziwiłbyś się jakie firmy (np. operatorzy popularnych portali)
sprzedają / wywalają / whatever takie routery i przesiadają się na
linuxa - oczywiście nie na 386 ;), bo mają problemy wydajnościowe.

Wygląda to następująco w czasie, tzw. dojrzewanie :)
1. linux na słabym sprzęcie - bo firma jeszcze mała więc jest tanio
2. routery / firewalle w postaci dedykowanych rozwiązań CISCO / Juniper
/ CheckPoint itp. - mamy kasę kupujemy i chwalimy się co mamy, PR
3. linux na solidnym sprzęcie - mamy już tyle klientów, taką
popularność, że problemy wydajnościowe psuły nam biznes

--
helperm.

Szolek

unread,
Jun 24, 2010, 5:47:35 PM6/24/10
to
> Ale pareset wpisów w iptables nie jest problemem, o ile typowy
> pakiet prechodzi przez kilkanaście - kilkadziesiąt reguł.
> Po to jest ipset, IPMARK, możliwość drzewiastej budowy regułek,
> aby sobie z tym radzić. Dalej, masz conntracka - podpijasz
> hash, najlepiej do poziomu, aby rozwmiar hasha był dwa razy
> większy niż liczba śledzonych połączeń, itd.
> Pozdrawiam,
> Krzysztof Oledzki

Hej!


Można gdzies w necie znależć przykłady w jaki sposów wykorzystujesz
ipset, IPMARK itd?
Taki howto na fajnych przykładach byłby niezłą lekturą i świetnie
by pomógł raczkującym.

Pozdrawiam

--
Szolek
Verba docent exempla trahunt


Sebastian Sawicki

unread,
Jun 25, 2010, 6:20:44 AM6/25/10
to
On 24.06.2010 22:06, helperm wrote:
> 2. routery / firewalle w postaci dedykowanych rozwiązań CISCO / Juniper
> / CheckPoint itp. - mamy kasę kupujemy i chwalimy się co mamy, PR

Chyba nikt nie jest taki glupi, aby wydawac set tysiecy na sprzet aby
sie chwalic. Sprzet dedykowany to po prostu oszczednosc czasu a wiec i
pieniedzy. W razie awarii znacznie szybciej jest podmienic router cisco,
wgrac konfiguracje niz stawiac taki sam na linuksie. Szczegolnie jak
tych routerow jest naście. I sa rozsiane po calym kraju. Wtedy mozna
docenic taki sprzet, gdzie po prostu bierzemy pudelko, wgrywamy
konfiguracje i dziala. Jak sie zepsuje to jest umowa serwisowa, albo
jest juz nowszy model ktory jest zgodny.
A tak to trzeba sie meczyc ze stawianiem kolejnego peceta, ze wszystkimi
jego zmiennymi ktore trzeba monitorowac, z jego rozmiarami, grzaniem
sie, padaniem zasilaczy.

Ale zeby nie bylo - na routerach brzegowych pracuja mi linuksy. Z bgp,
filtrowaniem, qos, IDS i tak dalej. Ale na core i na dostepowe gdzie sie
da i gdzie nie potrzeba gruszek na wierzbie, to wybieram rozwiazania
dedykowane.

S.


max

unread,
Jun 25, 2010, 8:26:13 AM6/25/10
to
> Można gdzies w necie znależć przykłady w jaki sposów wykorzystujesz
> ipset,
http://ipset.netfilter.org/tips.html

IPMARK itd?
http://www.netfilter.org/projects/patch-o-matic/pom-external.html

Przykładów nie zamieszczam masz mnóstwo w necie. Tak nawiasem www.google.pl
twoim przyjacielem.


Szolek

unread,
Jun 25, 2010, 9:35:10 AM6/25/10
to
Użytkownik "max" <lot_nie_...@algrim.pl> napisał w wiadomości
news:i02793$7m6$1...@node2.news.atman.pl...

Ja Ciebie rozumiem, ale czasem własne autorskie sposoby zastosowania
są o wiele bardziej pomocne niż ogolne info o IPMARK.

Krzysztof Halasa

unread,
Jun 25, 2010, 2:33:09 PM6/25/10
to
Sebastian Sawicki <for...@swps.edu.pl> writes:

> Sprzet dedykowany to po prostu oszczednosc czasu a wiec i
> pieniedzy.

To wszystko zalezy od konkretnej sytuacji. Np. zupelnie inaczej to
wyglada gdy trzeba kupic jeden wzglednie drogi router specjalizowany
i gdy nie mamy zadnego speca od Linuksa ani doswiadczen ze
specjalizowanym Linuksem routerowym, a zupelnie inaczej gdy potrzeba
takich routerow np. 50.

> W razie awarii znacznie szybciej jest podmienic router
> cisco, wgrac konfiguracje niz stawiac taki sam na linuksie.

Nie ma powodu by tak bylo - dokladnie tak samo wymienia sie peceta jak
i nie-peceta. Podobnie z konfiguracja.
BTW jesli te czasy sa problemem, to mozna routery zwielokrotnic -
zwlaszcza w przypadku pecetow to czesto nie jest problemem ekonomicznym.

> Szczegolnie jak tych routerow jest naście. I sa rozsiane po calym
> kraju. Wtedy mozna docenic taki sprzet, gdzie po prostu bierzemy
> pudelko, wgrywamy konfiguracje i dziala.

Nie, wtedy wlasnie widac przewage rozwiazania pecetowego - wieksza
pracochlonnosc przestaje wtedy miec znaczenie (robimy przeciez raz),
decydujace sa koszty w przeliczeniu na sztuke.

> Jak sie zepsuje to jest umowa
> serwisowa, albo jest juz nowszy model ktory jest zgodny.

Tyle ze to po prostu moze byc nieoplacalne - tak naprawde w zamian za
wieksze koszty nie dostajemy dokladnie nic.

> A tak to trzeba sie meczyc ze stawianiem kolejnego peceta, ze
> wszystkimi jego zmiennymi ktore trzeba monitorowac, z jego rozmiarami,
> grzaniem sie, padaniem zasilaczy.

Nieprawda jest, ze inne routery sie nie grzeja albo np. nie maja
rozmiarow itd. Padanie zasilaczy? Glownym padajacym elementem sa (zle)
wiatraki, wystarczy zmienic na dobre (male wiatraczki stosowane w malych
routerach specjalizowanych sa jeszcze gorsze).

Tak w ogole takie ogolne rozwazania sa lekko bez sensu. Router to sprzet
+ soft, zarowno jedna jak i druga czesc sa zmiennymi, mozliwosci jest
przynajmniej 4:

- specjalizowany sprzet + specjalizowany soft
- specjalizowany sprzet + Linux
- pecet + specjalizowany soft
- pecet + Linux

Przy mocniejszych zastosowaniach pecet jako rozwiazanie masowe jest duzo
bardziej ekonomiczny; Linux ma sie do tego nijak. Dodatkowo Linux moze
byc (choc nie musi) bardziej ekonomiczny i elastyczny (zwlaszcza przy
bardziej wymagajacych zastosowaniach).
Przy najslabszych zastosowaniach pecet jest za duzy i przypuszczalnie za
drogi, lepiej dac maly routerek (np. takze z Linuksem).
Przy najmocniejszych zastosowaniach pecet nie da rady, ew. pomoc moze
podzielenie na czesci, ale to sa ograniczone mozliwosci.
--
Krzysztof Halasa

0 new messages