Re: Prosba o test

Autor: Krzysztof Halasa <khc_at_pm.waw.pl>
Data: Fri 15 Jan 2010 - 18:01:01 MET
Message-ID: <m3wrzjs3oy.fsf@intrepid.localdomain>
Content-Type: text/plain; charset=us-ascii

kriZb <krizb@noexistent.no> writes:

> Hm, w polaczeniach ptp czy bridgowaniu - tak. Zauwazylem na labie
> ogromna degradacje przeplywnosci przy uzyciu protokolow dynamicznego
> routingu (nie testowalem RIP/RIP2). Uwazam, ze RTL8169 jest przeznaczony
> dla rynku SOHO a nie potrzebujacego wydajnosci Enterprise/carrier.

Ale co ma kontroler Ethernet do routingu? On ma odbierac i wysylac ramki
najlepiej wirespeed, najlepiej bez jakiegos wielkiego obciazania CPU
i szyny. Przy < 100 Mb/s roznice miedzy scalakami GbE sa nieistotne
(tzn. nie uzywalem oczywiscie wszystkich, ale przynajmniej wsrod tych,
ktorych uzywalem, wlaczajac RTL*).

Mozna miec zbyt wolny procesor do obslugi wszystkiego razem (wlaczajac
np. wiele peerow BGP), ale to nie ma zwiazku z samym scalakiem robiacym
Ethernet.

> PCI33 da rade na 100, specyfikacja PCI 2.0 standaryzuje polaczenie na
> 133Mbit przy 33MHz, 2.1-2.3 to 528Mbit, ale przy 66MHz. Szyna PCI-X 1.0
> oferuje juz 1066MHz. PCI-e 4x to 1Gbitps. Moze i jestem odmiencem, ale
> wole PCI-X.

Nie Mbit/s ani Gbit/s, to sa megabajty/gigabajty /s.

Typowe PCI 32/33 = 133 MB/s (nie Mb/s), PCI 32/66 (raczej maszynki
serwerowe i specjalne) = 266 MB/s, PCI 64/66 (stare Alphy) oraz PCI-X
64/66 = 532 MB/s. PCI-X 64/133 = 1064 MB/s. Z szybszymi sie nie
spotkalem. Nalezy pamietac ze PCI i PCI-X to sa szyny half-duplex,
w przypadku symetrycznego obciazenia RX + TX ich efektywnosc spada
~ dwukrotnie.

PCIe 1 lane = 250 MB/s (w praktyce ponad 2x wiecej od PCI 32/33)
4x = 1 GB/s (wiecej niz PCI-X 64/133 mimo nominalnie mniejszej
przepustowosci), 16x to raczej tylko dyski i grafika.
PCIe 2.0 1 lane = 500 MB/s, nie wiem czy sa jakies Ethernety na tym.

Trzeba pamietac ze PCIe to full duplex. Dodatkowo PCIe jest punkt-punkt,
nie ma tego problemu jak w przypadku kilku kart PCI-X i PCI, ktore
musza dzielic miedzy siebie cala przepustowosc szyny.

PCIe to nowsza technologia, mniejsze karty, mniejsze ceny. Ja raczej
wole PCIe niz PCI-X.
Np. sa zupelnie niedrogie (w porownaniu do PCI-X przynajmniej) karty
PCIe 4x dual 1000BASE-T na intelach. Inna sprawa ze mam wrazenie ze PCIe
1x tez do tego wystarczy w typowych warunkach. Z drugiej strony, jesli
ktos potrzebuje 10Gb/s, to chyba nie ma takich kart PCI-X.

Ale to wszystko ma znaczenie przy ruchu wiekszym niz 100 Mb/s. Do
kilkudziesieciu Mb/s spokojnie wystarczaja stare Intele np. 82559/551,
albo np. uzywane przeze mnie 10+ lat temu karty na DECchipach 21140,
21143. Wszystko na PCI 32/33.

> W L2 po prostu zapinam 1G FDX to mam 1G FDX, o ile oczywiscie
> matryca/cpu pozwoli. Chociaz mialem kiedys kabel z uwalaniem pasma,
> chinszczyzna stalowa powlekana miedzia, l1 ladnie pokazywalo polaczenie
> 100FDX, ale nie dalo rady wyssac wiecej niz powiedzmy 4Mbit. Kryzys
> dobija chinoli tez ;)

Przy TCP? Dosc ciekawe zjawisko, margines na takie zachowanie jest
bardzo waski. Zwykle albo to dziala (z bledami < 0.X%) albo nie dziala
w ogole.

> Kazdy test UDP wyjdzie gorzej. Po raz jest bezpolaczeniowy, po dwa jak
> kojarze to iperf w UDP wali mniejszym pakietem.

iperf to inna sprawa, ale generalnie UDP nie musi wcale wyjsc gorzej.
TCP jest bardziej ogolnym, zlozonym protokolem, na UDP mozna zrobic
specjalizowana usluge bardziej efektywnie, zwlaszcza w nietypowych
warunkach (jak takie z kablem, ktory ubija np. co 10 pakiet). Z tym, ze
ta usluga bedzie bardzo nieefektywna po zmianie warunkow, TCP potrafi
sie dostosowac do warunkow dosc dobrze. Oczywiscie w granicznym
przypadku mozna zrobic TCP over UDP.

> Link teoretyczny u nich, up/downstream, to 1G - nalezy oczywiscie brac
> pod uwage trase po ktorej latamy, jak i tez up/downlink skad wykonywany
> jest test.

Innymi slowy, glownie to ostatnie. Podejrzewam ze wiekszosc testujacych
testowala swoje waskie gardla :-)
Oczywiscie trzeba zapewne brac takze pod uwage, ze 1 Gb/s nie jest
dedykowany dla tej maszyny, ani pewnie tez dla iperfa na niej.

> Wracajac do testu - uwazam, ze standardowy 10sekundowy test jest na tyle
> malo miarodajny, ze daje jedynie pogladowa sytuacje w przeciagu
> krotkeigo czasu - narzuca nam to naprawde spory blad pomiaru.

To jest pomiar szacunkowy. Trzeba miec swiadomosc warunkow, w ktorych
jest wykonywany. Lepiej przeprowadzac test taki, jak zastosowanie linku.
Np. jesli potrzebujemy robic 3-godzinne backupy przez pol Polski o 4
w nocy, to zapuszczamy 3-godzinny test TCP przez wlasnie ta polowe
Polski o tej 4 w nocy. Jesli potrzebujemy dostarczyc Internet ilus tam
klientom, to po prostu im dostarczamy, zbierajac wyniki w czasie pracy.

-- 
Krzysztof Halasa
Received on Fri Jan 15 18:05:08 2010

To archiwum zostało wygenerowane przez hypermail 2.1.8 : Fri 15 Jan 2010 - 18:40:01 MET