iperf3 ist ein kostenloses Open-Source-, plattformübergreifendes Befehlszeilen-basiertes Programm zur Durchführung von Echtzeit-Netzwerkdurchsatzmessungen. Es ist eines der leistungsstarken Tools zum Testen der maximal erreichbaren Bandbreite in IP-Netzwerken (unterstützt IPv4 und IPv6).
Lesen Sie auch: 16 Bandbreitenüberwachungstools zur Analyse der Netzwerknutzung unter Linux
Mit iperf, können Sie verschiedene Parameter im Zusammenhang mit Timing, Puffern und Protokollen wie TCP, UDP, SCTP optimieren. Es ist praktisch für Optimierung der Netzwerkleistung Operationen.
Um eine maximale bzw. verbesserte Netzwerkleistung zu erzielen, müssen Sie den Durchsatz sowie die Latenz der Empfangs- und Sendefähigkeiten Ihres Netzwerks erhöhen. Bevor Sie jedoch mit der eigentlichen Optimierung beginnen können, müssen Sie einige Tests durchführen, um allgemeine Netzwerkleistungsstatistiken zu sammeln, die Ihren Optimierungsprozess leiten.
Die Ergebnisse umfassen das Zeitintervall in Sekunden, die übertragenen Daten, die Bandbreite (Übertragungsrate), den Verlust und andere nützliche Netzwerkleistungsparameter. Es soll in erster Linie helfen, TCP-Verbindungen über einen bestimmten Pfad zu optimieren, und darauf werden wir uns in diesem Handbuch konzentrieren.
Bevor Sie mit der Verwendung beginnen iperf3, müssen Sie es auf den beiden Computern installieren, die Sie für das Benchmarking verwenden. Seit iperf3 in den offiziellen Software-Repositorys der gängigsten Linux-Distributionen verfügbar ist, sollte die Installation einfach sein, indem Sie einen Paketmanager wie gezeigt verwenden.
$ sudo apt install iperf3 #Debian/Ubuntu. $ sudo yum installiere iperf3 #RHEL/CentOS. $ sudo dnf install iperf3 #Fedora 22+
Sobald du hast iperf3 auf beiden Computern installiert ist, können Sie mit dem Testen des Netzwerkdurchsatzes beginnen.
Stellen Sie zuerst eine Verbindung zu dem Remote-Computer her, den Sie als Server und feuer an iperf3 im Servermodus mit -S
Flag, es wird auf Port lauschen 5201 standardmäßig.
Sie können das Format angeben (k, m, g Pro Kbits, MBits, Gbits oder K, m, g Pro KByte, MB, GB) um sich zu melden, mit dem -F
Schalter wie abgebildet.
$ iperf3 -s -f K
Wenn Port 5201 von einem anderen Programm auf Ihrem Server verwendet wird, können Sie einen anderen Port angeben (z 3000) Verwendung der -P
Schalter wie abgebildet.
$iperf3 -s -p 3000.
Optional können Sie den Server als Daemon ausführen, indem Sie die -D
Servernachrichten wie folgt markieren und in eine Protokolldatei schreiben.
$ iperf3 -s -D > iperf3log
Dann auf Ihrem lokalen Computer, den wir als den Klient (wo das eigentliche Benchmarking stattfindet), run iperf3 im Client-Modus mit -C
Flag und geben Sie den Host an, auf dem der Server läuft (entweder mit seiner IP-Adresse oder Domain oder Hostnamen).
$iperf3 -c 192.168.10.1 -f K.
Nach ungefaehr 18 zu 20 Sekunden sollte der Client beendet werden und Ergebnisse liefern, die den durchschnittlichen Durchsatz für den Benchmark angeben, wie im folgenden Screenshot gezeigt.
Wichtig: Von den Benchmark-Ergebnissen, wie im obigen Screenshot gezeigt, gibt es eine Abweichung der Werte von den Server und Klient. Sie sollten jedoch immer erwägen, die Ergebnisse der iperf-Client Maschine bei jedem Test, den Sie durchführen.
Es gibt eine Reihe von kundenspezifischen Optionen, um einen erweiterten Test durchzuführen, wie unten erläutert.
Einer der wichtigen Faktoren, die die Datenmenge im Netzwerk zu einem bestimmten Zeitpunkt bestimmen, ist die TCP-Fenstergröße – sie ist wichtig für die Optimierung von TCP-Verbindungen. Sie können die Fenstergröße/Socket-Puffergröße mit dem -w
Flagge wie abgebildet.
$ iperf3 -c 192.168.10.1 -f K -w 500K
Um es einzuführen Rückwärtsmodus bei dem die Server sendet und die Klient empfängt, füge die hinzu -R
schalten.
$ iperf3 -c 192.168.10.1 -f K -w 500K -R
Laufen bidirektionaler Test, d.h. Sie messen die Bandbreite in beide Richtungen gleichzeitig, verwenden Sie die -D
Möglichkeit.
$ iperf3 -c 192.168.10.1 -f K -w 500K -d.
Wenn du bekommen willst Serverergebnisse in dem Klient Ausgabe, verwenden Sie die --get-server-output
Möglichkeit.
$ iperf3 -c 192.168.10.1 -f K -w 500K -R --get-server-output.
Es ist auch möglich, die Anzahl der parallelen Client-Streams (in diesem Beispiel zwei), die gleichzeitig laufen, über die -P
Optionen.
$ iperf3 -c 192.168.10.1 -f K -w 500K -P 2.
Weitere Informationen finden Sie auf der Manpage iperf3.
$ man iperf3.
iperf3-Startseite: https://iperf.fr/
Das ist alles! Denken Sie daran, immer Netzwerkleistungstests durchzuführen, bevor Sie mit der tatsächlichen Optimierung der Netzwerkleistung beginnen. iperf3 ist ein leistungsstarkes Tool, das sich für die Durchführung von Netzwerkdurchsatztests als nützlich erweist. Haben Sie Ideen oder Fragen zu stellen, verwenden Sie das Kommentarformular unten.