iperf3
İstemci olarak kullandığım bir linux kutum var, Broadcom BCM5721, 1Gb adaptörlerle (2 bağlantı noktası, ancak yalnızca 1 test için kullanılan) aynı donanımlı 2 Windows 2012 R2 sunucu kutusunu test ediyorum . Tüm makineler tek bir 1 Gb anahtar ile bağlanır.
UDP'yi örneğin 300Mbit'te test etme
iperf3 -uZVc 192.168.30.161 -b300m -t5 --get-server-output -l8192
gönderilen tüm paketlerin% 14'ünün kaybıyla sonuçlanır (tam olarak aynı donanıma sahip diğer sunucu kutusu için, ancak daha eski NIC sürücüleri, kayıp% 2 civarındadır), ancak kayıp daha az da olsa 50Mbit'de bile gerçekleşir. Eşdeğer ayarları kullanarak TCP performansı:
iperf3 -ZVc 192.168.30.161 -t5 --get-server-output -l8192
rapor edilen yeniden iletim olmadan 800Mbit'in kuzeyindeki iletim hızlarını verir.
Sunucu her zaman aşağıdaki seçenekler kullanılarak başlatılır:
iperf3 -sB192.168.30.161
Kim suçlanacak?
Linux istemci kutusu (donanım? Sürücüleri? Ayarları?)?Düzenleme: Ben sadece bir Windows sunucu kutusundan diğerine test çalıştırdı ve 300Mbit UDP paket kaybı daha yüksek,% 22- Windows sunucu kutuları (donanım? Sürücü? Ayarları?)?
- Tüm test makinelerini bağlayan (tekli) anahtar?
- Kablolar?
Düzenle:
Şimdi diğer yönü denedim: Windows -> Linux. Sonuç: Paket kaybı her zaman 0 iken, iş hacmi yaklaşık en üst düzeye çıkar
- 840Mbit
-l8192
, yani parçalanmış IP paketleri için - Parçalanmamış
-l1472
IP paketleri için 250Mbit
Akış kontrol kapaklarının verimini tahmin ediyorum ve paket kaybını önlüyor. Özellikle sonuncu, parçalanmamış rakam TCP veriminin yakınında değildir (parçalanmamış TCP parçalanmış TCP'ye benzer rakamlar verir), ancak paket kaybı açısından Linux -> Windows üzerinde son derece büyük bir gelişme.
Nasıl öğrenilir?
Performansı en üst düzeye çıkarmak için sunucudaki sürücü ayarları için normal tavsiyeleri izledim ve etkinleştirmeye / devre dışı bırakmaya / en üst düzeye çıkarmaya / en aza indirmeye / değiştirmeye çalıştım
- Kesinti Denetimi
- Akış kontrolü
- Tamponları Al
- RSS
- Wake-on-LAN
Tüm boşaltma özellikleri etkindir.
Düzenle Ayrıca etkinleştirmeyi / devre dışı bırakmayı denedim
- Ethernet @ kablolu hızında
- Çeşitli boşaltma özellikleri
- Öncelik & VLAN
Benzer kayıp oranları ile.
Bir UDP çalıştırmasının tam çıktısı:
$ iperf3 -uZVc 192.168.30.161 -b300m -t5 --get-server-output -l8192
iperf 3.0.7
Linux mybox 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt4-3 (2015-02-03) x86_64 GNU/Linux
Time: Wed, 13 May 2015 13:10:39 GMT
Connecting to host 192.168.30.161, port 5201
Cookie: mybox.1431522639.098587.3451f174
[ 4] local 192.168.30.202 port 50851 connected to 192.168.30.161 port 5201
Starting Test: protocol: UDP, 1 streams, 8192 byte blocks, omitting 0 seconds, 5 second test
[ ID] Interval Transfer Bandwidth Total Datagrams
[ 4] 0.00-1.00 sec 33.3 MBytes 279 Mbits/sec 4262
[ 4] 1.00-2.00 sec 35.8 MBytes 300 Mbits/sec 4577
[ 4] 2.00-3.00 sec 35.8 MBytes 300 Mbits/sec 4578
[ 4] 3.00-4.00 sec 35.8 MBytes 300 Mbits/sec 4578
[ 4] 4.00-5.00 sec 35.8 MBytes 300 Mbits/sec 4577
- - - - - - - - - - - - - - - - - - - - - - - - -
Test Complete. Summary Results:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-5.00 sec 176 MBytes 296 Mbits/sec 0.053 ms 3216/22571 (14%)
[ 4] Sent 22571 datagrams
CPU Utilization: local/sender 4.7% (0.4%u/4.3%s), remote/receiver 1.7% (0.8%u/0.9%s)
Server output:
-----------------------------------------------------------
Accepted connection from 192.168.30.202, port 44770
[ 5] local 192.168.30.161 port 5201 connected to 192.168.30.202 port 50851
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 5] 0.00-1.01 sec 27.2 MBytes 226 Mbits/sec 0.043 ms 781/4261 (18%)
[ 5] 1.01-2.01 sec 30.0 MBytes 252 Mbits/sec 0.058 ms 734/4577 (16%)
[ 5] 2.01-3.01 sec 29.0 MBytes 243 Mbits/sec 0.045 ms 870/4578 (19%)
[ 5] 3.01-4.01 sec 32.1 MBytes 269 Mbits/sec 0.037 ms 469/4579 (10%)
[ 5] 4.01-5.01 sec 32.9 MBytes 276 Mbits/sec 0.053 ms 362/4576 (7.9%)
TCP çalıştırması:
$ iperf3 -ZVc 192.168.30.161 -t5 --get-server-output -l8192
iperf 3.0.7
Linux mybox 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt4-3 (2015-02-03) x86_64 GNU/Linux
Time: Wed, 13 May 2015 13:13:53 GMT
Connecting to host 192.168.30.161, port 5201
Cookie: mybox.1431522833.505583.4078fcc1
TCP MSS: 1448 (default)
[ 4] local 192.168.30.202 port 44782 connected to 192.168.30.161 port 5201
Starting Test: protocol: TCP, 1 streams, 8192 byte blocks, omitting 0 seconds, 5 second test
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 109 MBytes 910 Mbits/sec 0 91.9 KBytes
[ 4] 1.00-2.00 sec 97.3 MBytes 816 Mbits/sec 0 91.9 KBytes
[ 4] 2.00-3.00 sec 97.5 MBytes 818 Mbits/sec 0 91.9 KBytes
[ 4] 3.00-4.00 sec 98.0 MBytes 822 Mbits/sec 0 91.9 KBytes
[ 4] 4.00-5.00 sec 97.6 MBytes 819 Mbits/sec 0 91.9 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
Test Complete. Summary Results:
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-5.00 sec 499 MBytes 837 Mbits/sec 0 sender
[ 4] 0.00-5.00 sec 498 MBytes 836 Mbits/sec receiver
CPU Utilization: local/sender 3.5% (0.5%u/3.0%s), remote/receiver 4.5% (2.0%u/2.5%s)
Server output:
-----------------------------------------------------------
Accepted connection from 192.168.30.202, port 44781
[ 5] local 192.168.30.161 port 5201 connected to 192.168.30.202 port 44782
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 105 MBytes 878 Mbits/sec
[ 5] 1.00-2.00 sec 97.5 MBytes 818 Mbits/sec
[ 5] 2.00-3.00 sec 97.6 MBytes 819 Mbits/sec
[ 5] 3.00-4.00 sec 97.8 MBytes 820 Mbits/sec
[ 5] 4.00-5.00 sec 97.7 MBytes 820 Mbits/sec