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.
Co to za maszyna i ile hostów obsługuje?
--
Pozdrawiam
Andrzej Jackiewicz
jacki(at)idealan.pl
> 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
> 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
[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 ?
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.
> 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
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
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...
> 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
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)
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.
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
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.
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.
Ja Ciebie rozumiem, ale czasem własne autorskie sposoby zastosowania
są o wiele bardziej pomocne niż ogolne info o IPMARK.
> 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