iperf command and usage
Iperf jest otwartym narzędziem sieciowym służącym do pomiaru przepustowości lub wydajności sieci. Może być używany do testowania TCP i UDP. Iperf może być używany w systemach operacyjnych Windows, Linux i MAC itp.
Intencja tego artykułu:
istnieją różne wersje Iperf, skupimy się tylko na Iperf w wersji 2.+ tylko. Ta wersja jest szeroko stosowana we wszystkich systemach.
ogólny schemat konfiguracji:
Iperf działa w modelu klienta serwera, co oznacza, że powinien istnieć jeden serwer i jeden klient, aby rozpocząć przepływ ruchu Iperf.
połączenie bezprzewodowe
z diagramu możemy zrozumieć, że PC1 i PC2 powinny mieć prawidłowy adres IP.
połączenie między dwoma komputerami może być przewodowe lub bezprzewodowe.
rzeczywista Konfiguracja:
- w naszym eksperymencie PC1 to windows, a PC2 to Linux.
- IP PC1 to 192.168.1.6 a PC2 to 192.168.0.102
- wersja iperf PC1
polecenie:
iperf version 2.0.5 (08 Jul 2010) pthreads
4. PC2 wersja iperf
polecenie:
iperf version 2.0.5 (08 Jul 2010) pthreads
Warunki Iperf:
istnieją pewne warunki, zanim Iperf zadziała.
- PC1 powinien ping do PC2 i odwrotnie. Możemy użyć ping 192.168.1.102 z konsoli PC1 lub Wiersza poleceń, aby sprawdzić, czy PC1 jest w stanie dotrzeć do PC2. Wykonaj ping z PC2 do PC1, aby sprawdzić dostępność PC1 z PC3.
oto jeden zrzut ekranu dla Pingu z PC1 do PC2
Oto jeden zrzut ekranu dla Pingu z PC2 do PC1
- oba komputery powinny być binarne. Lepiej jest zachować tę samą wersję Iperf lub zamknąć wersje. Pamiętaj jednak, że Iperf 2.0 nie działa z Iperf 3.0.
Uwaga: UDP nie ustanawia żadnego połączenia UDP przed przesłaniem danych i UDP nie potrzebuje żadnego ACK z drugiej strony. Tak więc nawet jeśli serwer IPERF nie jest uruchomiony, klient będzie mógł wysyłać dane w przeciwieństwie do TCP. Dlatego zawsze sprawdzaj po stronie serwera dane UDP.
ważne argumenty Iperf:
Argument | Meaning |
-s | Run server |
-c | Run Client |
-u | UDP |
-b | Bandwidth |
-i | Output interval in Sec |
-t | Time in sec |
-p | Port number |
-w | Windows size |
-d | Bi-directional traffic |
-l | Length |
-V | Used when IPv6 address is used instead of IPv4 |
istnieją inne argumenty, ale nie są używane w ogóle. Możemy użyć polecenia man iperf w Linuksie, aby uzyskać wszystkie argumenty.
polecenia Iperf:
istnieje wiele argumentów dla polecenia Iperf, omówimy tylko ważne i użyteczne argumenty. Poniżej znajdują się minimalne argumenty, których można użyć do uruchomienia iperf.
serwer TCP:
Klient TCP:
serwer UDP:
UDP client:
iperf –c 192.168.1.102 –I1 –t60 –u –b 1000M
Start Iperf:
teraz mamy PC1 i PC2 więc poniżej kombinacje mogą być uruchamiane między tymi dwoma komputerami.
- serwer TCP w PC1 i kliencie TCP PC2
- Klient TCP w PC1 i serwerze TCP PC2
- serwer UDP w PC1 i kliencie UDP PC2
- klient UDP w PC1 i serwerze UDP PC2
eksperyment 1:
spróbujmy kombinacji
Oto zrzut ekranu serwera TCP w PC1.
więc najpierw musimy uruchomić serwer i jeśli się powiedzie, to będzie w trybie listing.
oto zrzut ekranu klienta TCP w PC2.
Oto zrzut ekranu dla strony serwera TCP
następny jeśli chcemy spróbować kombinacji B, to wystarczy uruchomić serwer TCP w PC2 i Klient TCP w PC1.
eksperyment 2:
spróbujmy kombinacji D.
oto zrzut ekranu serwera UDP w PC2.
więc najpierw musimy uruchomić serwer i jeśli się powiedzie to będzie w trybie listing.
oto zrzut ekranu klienta UDP w PC1.
Oto zrzut ekranu wyjścia serwera UDP w PC2
znane błędy:
- Connect failed or connection refused:
gdy uruchamiamy klienta TCP bez TCP serwer ten błąd występuje.
oto zrzut ekranu
- UDP bez serwera:
kiedy uruchamiamy klienta UDP bez serwera, możemy to zidentyfikować z pewnymi obserwacjami
- po zakończeniu przepustowości klienta UDP, nie powinniśmy raportować żadnego serwera dla średniej. Sprawdź punkt B na poniższym zrzucie ekranu.przepustowość
- może być wyższa niż przepustowość łącza. Sprawdź punkt A na poniższym zrzucie ekranu.
- oto oczekiwany zrzut ekranu klienta UDP
niektóre argumenty doświadczenia:
-w:
rozmiar okna można zwiększyć.
Oto zrzut ekranu dla domyślnego i niestandardowego rozmiaru systemu windows:
-i:
interwał można zwiększyć.
tutaj –t 20sec i-i 5sec, więc powinniśmy zobaczyć wyjście Iperf w interwale 5sec. Oto zrzut ekranu.