שעדליץ it’s my town

Bonding a wydajność sieci - gigabit zbędny?

Autor: breusz | Kategoria: Technika | Data: 1 lutego 2008

Prowadząc sklep www.linux-dvd.pl często zdarza mi się kopiować w ciągu dnia kilkadziesiąt, a nawet kilkaset gigabajtów danych. Niestety karta 100Mbit to już mało aby między komputerami po sieci w rozsądnym czasie kopiować takie ilości danych. Zakupiłem więc tanie karty gigabit RTL8169, jednak z powodu opóźnienia przesyłki z kartami zacząłem się zastanawiać czy gigabit to nie jest trochę na wyrost jak na komputery biurkowe. I czy bonding by nie wystarczył? Wsadziłem więc do 2 komputerów po 3 tanie karty sieciowe, spiąłem 3 skrętkami UTP w trybie krzyżowym i uruchomiłem pod Linuksem bonding w trybie mode=0 czyli upraszczając z 3 sieciówek robi się jedna o przepustowości równej sumie sieciówek.

Sprawdziłem jak działa bonding na komputerach o poniższej konfiguracji:

System Centos 5 kernel-2.6.18-53.1.6.el5 Centos 4.2 kernel-2.6.9-67.0.1.EL
Procesor AMD Athlon 1 GHz Intel Celeron 2,15 MHz
Płyta ASUS A7V-133 Gigabyte 8IG1000MK
Pamięć 2 x 256 DIMM SDRAM 2 x 256 DIMM DDR
Dysk Seagate ST360021A 7200 rpm 2MB cache Caviar WD800JB-00JJC0 7200rpm 8MB cache
Karty sieciowe 3 x RTL-8139C 3 x 8139D
Wynik hdparm -t /dev/hda 40.44 MB/sec 55.88 MB/sec

Test 1
Ściąganie ftp (serwer vsftp na Athlonie) , aby zwiększyć wydajność użyłem programu prozilla zamiast wget (ściąganie w 4 sesjach pliku 1GB), oto średnia 3 kolejnych testów:

Total bytes received = 1024000.0K (100.00%)
Average D/L speed = 18962.96Kb/s

Test 2
Narzędzie iperf, wynik działania bez żadnych opcji, średnia 3 testów:
[ 3] 0.0-10.0 sec 276 MBytes 232 Mbits/sec

Jak widać wydajność jest dość niska - wystarczyłby bonding 2 kart 100Mbit, a wąskim gardłem jest zapewne wolna maszyna z Athlonem. Przy następnej okazji nie omieszkam pokazać wyniki przy podmianie Athlona na coś szybszego.

Uaktualnienie (12/02/2008)

##   Maszynę słabszą czyli Athlona 1GHz podmieniłem na Athlona 1700+ (1466MHz). Wyniki są lepsze, czego można było się spodziewać:

Prozilla
Total bytes received = 1024000.0K (100.00%)
Average D/L speed = 23272.73Kb/s

Iperf
[ 3] 0.0-10.0 sec 327 MBytes 275 Mbits/sec

Wget (dodałem dla porównania z prozillą)
20:43:45 (25.02 MB/s) - `zero.dd’ saved [1048576000]

###   Ale ponieważ pod ręką był jeszcze Celeron 1700 MHz, to zrobiłem jeszcze podmianę z Athlona. Wyniki jeszcze milej zaskoczyły:

Prozilla
Total bytes received = 1024000.0K (100.00%)
Average D/L speed = 24380.95Kb/s

Iperf
[ 3] 0.0-10.0 sec 333 MBytes 279 Mbits/sec

Wget (wykazał się niesamowicie - specjalnie pobierany był plik 2 razy większy kilka razy)
20:21:15 (30.15 MB/s) - `2g.dd’ saved [2097152000]

Możesz skomentować, lub nawiązać do wpisu na swojej stronie. RSS 2.0

Zostaw komentarz