Iperf - Narzędzie typu open source przeznaczone do testowania przepustowości sieci między dwoma węzłami. Narzędzie iperf umożliwia generowanie obciążenia TCP i UDP między hostami. Dzięki iperf możesz szybko mierzyć maksymalna przepustowość sieć między serwerem a klientem, przytrzymaj testowanie obciążenia kanału połączenie, router, brama sieciowa (zapora ogniowa), sieć Ethernet lub Wi-Fi.
W tym artykule pokażemy, jak zainstalować i korzystać z narzędzia. iperf aby sprawdzić prędkość sieci Windows i Linux CentOS (istnieją wersje iperf na Androida, MacOS, RouterOS od MikroTik i innych platform).
Treść
- Wersje Iperf: iperf2 i iperf3
- Zainstaluj iPerf dla Windows
- Zainstaluj iperf na CentOS Linux
- Pomiar prędkości sieci za pomocą Iperf
Wersje Iperf: iperf2 i iperf3
Utility Iperf jest wieloplatformowy i nie wymaga instalacji, wystarczy skopiować i uruchomić go na dwóch urządzeniach, których przepustowość sieci należy ocenić. Iperf działa w trybie klient-serwer. Na pierwszym komputerze narzędzie Iperf uruchamia się w trybie serwera (oczekuje ruchu od klienta). Na drugim komputerze Iperf uruchamia się w trybie klienta, zaczyna generować ruch TCP / UDP i mierzy maksymalną szybkość transmisji danych.
Obecnie równolegle rozwijają się dwie niezależne gałęzie iperf: iperf2) i iperf3). Ogólnie rzecz biorąc, te dwie wersje iperf są ze sobą kompatybilne, ale domyślnie używają różnych portów. W iperf1 / 2 jest to 5001, w iperf3 - 5201.
- iperf2 musi być używany do równoległych wątków, testów dwukierunkowych, a ta wersja jest oficjalnie obsługiwana w systemie Windows
- Iperf3 ma lepszą implementację szybkiego testowania UDP. Kod Iper3 jest znacznie mniejszy i lepiej zoptymalizowany.
Pozostałe różnice nie są tak znaczące, aby konkretnie używać konkretnej wersji (nawet opcje uruchamiania są dla nich takie same). W tym artykule wykorzystamy iperf3.
Iperf3 nie jest oficjalnie obsługiwany w systemie Windows, ale działa całkiem dobrze. Nie zauważyłem żadnych oczywistych problemów ani błędów.Zainstaluj iPerf dla Windows
Możesz pobrać iperf 3.1 dla Windows na https://iperf.fr/iperf-download.php lub wersję iperf2 (tutaj). Wystarczy pobrać archiwum iperf i rozpakować je do lokalnego katalogu na dysku. Instalacja narzędzia nie jest wymagana, w archiwum są tylko dwa pliki: cygwin1.dll i iperf3.exe.
Istnieje kilka implementacji GUI dla systemu Windows. Na przykład, Iperf3-Cygwin-GUI i jperf.
Utility jperf napisane w Javie (aby komputer działał, musi być zainstalowany komputer Java). Oprócz graficznych nitów do interfejsu CLI, Jperf może wykreślić wykresy przepustowości kanału komunikacyjnego w czasie rzeczywistym.
Aby użyć, wystarczy wpisać adres serwera iPerf i uruchomić sprawdzanie.
Galeria skryptów PowerShell ma osobny moduł iPerfAutomate, które można wykorzystać do uzyskania danych pomiaru wydajności sieci ze skryptów PowerShell. Możesz zainstalować moduł w następujący sposób:Install-Module -Name iPerfAutomate
Zainstaluj iperf na CentOS Linux
W CentOS 8 pakiet iperf3 jest zawarty w podstawowym repozytorium AppStream (w CentOS 7, iperf3 jest w EPEL). Możesz zainstalować go za pomocą standardowej komendy yum / dnf:
# dnf zainstaluj iperf3
sudo apt install iperf3
Jeśli planujesz używać tego serwera Linux jako serwera iperf3, musisz otworzyć port 5201 w firewalld:
# firewall-cmd --permanent --add-port = 5201 / tcp
# firewall-cmd --permanent --add-port = 5201 / udp
# firewall-cmd --reload
Pomiar prędkości sieci za pomocą Iperf
Spójrzmy na kilka przykładów użycia iperf do testowania przepustowości sieci. W tym przykładzie użyjemy serwera z CentOS jako serwerem iperf. Uruchom narzędzie iperf w trybie serwera:
# iperf3 -s
Serwer iperf działa, czeka na połączenie na porcie TCP / 5201.
Serwer nasłuchuje na 5201Jest ważne. W argumentach narzędzia iperf rozróżniana jest wielkość liter! Możesz uruchomić serwer iperf z dużym rozmiarem okna TCP i na innym porcie:
# iperf3 -s -w 32768 -p 5203
-w 32768 - ustaw rozmiar okna TCP na 32 KB (domyślnie jest to około 8 KB)
-p 5203 - port, na którym iperf czeka na połączenie (przypominam, że iperf2 domyślnie nasłuchuje na porcie 5001.
Jako klient iperf używam komputera z systemem Windows 10. Uruchom wiersz polecenia i przejdź do katalogu z plikiem wykonywalnym iperf:
cd c: \ tools \ iperf
Aby rozpocząć skanowanie sieci po stronie klienta, podaj adres (nazwę) serwera iperf:
iperf3.exe -c 192.168.1.202
Jeśli uruchomiłeś serwer iperf ze zwiększonym rozmiarem okna TCP, możesz użyć następującego polecenia, aby uzyskać maksymalne obciążenie sieci:
iperf3.exe -c 192.168.1.202-P 8-t 30-w 32768
- -c168.1.202 - Adres IP serwera Iperf;
- -w 32768 - zwiększyć rozmiar okna TCP;
- -t 30 - czas w sekundach, w którym przeprowadzane są testy (domyślnie 10 sekund);
- -P. 8 - liczba równoległych wątków (połączeń), użyta do uzyskania maksymalnego obciążenia na kanał.
W naszym przykładzie test trwał 30 sekund. W raporcie końcowym interesują nas wartości kolumn Przepustowość w ostatniej linii [SUMA]. W naszym przypadku średnia przepustowość sieci między dwoma węzłami wynosi 79,7 Mb / s. Przesłano 285 MB danych (kolumna Przeniesienie).
Za pomocą argumentu -f Możesz zmienić format wyświetlania prędkości transmisji (bity, kilobity, megabajty). Korzystanie z opcji -ja Możesz określić interwał, w którym chcesz wyświetlać wyniki pośrednie. Jest to wygodne w przypadku długich testów (kilka minut, godzin).
Możesz uruchomić iperf w trybie wstecznym (serwer wysyła dane, a klient akceptuje), w tym celu opcja jest wskazana na kliencie -R.
Domyślnie narzędzie generuje ruch TCP, jeśli chcesz sprawdzić szybkość sieci dla pakietów UDP, musisz użyć klucza -u (serwer jest uruchamiany za pomocą polecenia: iperf3 -s -u
).
Jeśli chcesz sprawdzić swój kanał internetowy (dostarczony przez dostawcę), możesz użyć jednego z publicznych serwerów iperf (lista jest dostępna tutaj):
iperf3 -c iperf.it-north.net
Jeśli musisz ocenić przepustowość sieci w obu kierunkach (w trybie dupleksowym), musisz dodatkowo określić opcję na kliencie -d:
iperf3.exe -c IP -P 8 -t 30 -w 32768 -d
Podczas sete testu przy użyciu iperf można monitorować obciążenie sieci przez przerwanie w sieci za pomocą Menedżera zadań.
Ważne jest, aby pamiętać, że podczas testowania Iperf używamy wszystko dostępna przepustowość kanału komunikacyjnego między klientem a serwerem, co może negatywnie wpłynąć na produktywne aplikacje i użytkowników.Pełną listę opcji narzędzia iperf można uzyskać w następujący sposób:
iperf3 -help
Iperf - Proste i wygodne narzędzie sieciowe, które pomaga mierzyć wydajność połączenia sieciowego i maksymalną prędkość przesyłania danych między dwoma urządzeniami.