ubuntuusers.de

iperf3

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png Möchte man die Geschwindigkeit eines Netzwerkes messen, bietet sich iPerf 🇬🇧 an. Dieses Client-Server-Programm für die Kommandozeile ermöglicht es, den Durchsatz zwischen zwei Rechnern zu messen. Es ist dabei recht einfach zu bedienen und bietet eine schnellere und präzisere Auswertung als andere Methoden, wie z.B. das Kopieren einer großen Datei.

iPerf3 basiert in Teilen auf IPerf 2, das ebenfalls aktiv entwickelt wird und als iperf in den Paketquellen liegt. Die beiden Programme sind jedoch nicht kompatibel; die wesentlichen Unterschiede in der Funktionalität sind auf dieser Seite 🇬🇧 dargestellt.

Möchte man dagegen die Geschwindigkeit des eigenen Internetzugangs messen, kann eines der zahllosen Webangebote wie beispielsweise Speedtest.net 🇬🇧 weiterhelfen.

Installation

Das Programm kann direkt aus den offiziellen Paketquellen installiert [1] werden:

  • iperf3 (universe)

Befehl zum Installieren der Pakete:

sudo apt-get install iperf3 

Das Programm hat keine grafische Benutzeroberfläche und wird über die Konsole gestartet. Für einen Test benötigt man zwei Rechner, auf denen iPerf3 läuft. Auf dem einen startet man iPerf3 im Servermodus, auf dem anderen im Client-Modus.

Bedienung

Zum Start von iPerf3 im Servermodus gibt man ein:

iperf3 -s 

Auf dem Client startet man iPerf über:

iperf3 -c IP_DES_SERVERS 

IP_DES_SERVERS muss natürlich durch die konkrete IP-Adresse ersetzt werden. Anschließend wird die Verbindungsgeschwindigkeit getestet und ausgegeben. Auf github findet man eine weltweite Liste öffentlicher Server 🇬🇧, die man zum Testen benutzen kann. Idealerweise kann man sich dort einen (nahegelegenen) geeigneten Server aussuchen, einen fertigen iperf3-Befehl kopieren und im Terminal einfügen.

Beispiel einer Standard-Messung (zu einem Server in Frankfurt)

iperf3 -c speedtest.ip-projects.de 
Connecting to host speedtest.ip-projects.de, port 5201
[  5] local 2003:d0:e738:b200:522f:51e3:cef1:39c4 port 45312 connected to 2a0a:51c4:2:1::2 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   256 KBytes  2.10 Mbits/sec   10   9.71 KBytes       
[  5]   1.00-2.00   sec   128 KBytes  1.05 Mbits/sec    2   12.5 KBytes       
[  5]   2.00-3.00   sec   256 KBytes  2.10 Mbits/sec    3   9.71 KBytes       
[  5]   3.00-4.00   sec   256 KBytes  2.10 Mbits/sec    2   11.1 KBytes       
[  5]   4.00-5.00   sec   256 KBytes  2.10 Mbits/sec    2   13.9 KBytes       
[  5]   5.00-6.00   sec   128 KBytes  1.05 Mbits/sec    3   11.1 KBytes       
[  5]   6.00-7.00   sec   256 KBytes  2.10 Mbits/sec    2   12.5 KBytes       
[  5]   7.00-8.00   sec   256 KBytes  2.10 Mbits/sec    3   12.5 KBytes       
[  5]   8.00-9.00   sec   128 KBytes  1.05 Mbits/sec    7   9.71 KBytes       
[  5]   9.00-10.00  sec   256 KBytes  2.10 Mbits/sec    2   11.1 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  2.12 MBytes  1.78 Mbits/sec   36             sender
[  5]   0.00-10.55  sec  2.12 MBytes  1.69 Mbits/sec                  receiver

Weitere Optionen

Weitere Optionen
Verfügbare Optionen Bedeutung
-s Startet iPerf3 im Servermodus.
-c IP_DES_SERVERS Startet die Messung auf dem Client.
-d Startet einen Dual-Test: Es wird sowohl die Geschwindigkeit von Client zu Server als auch von Server zu Client gemessen. Dies ist vor allem für asymmetrische Netzwerktopologien wie z.B. DSL interessant.
-P ANZAHL Lässt ANZAHL Tests gleichzeitig laufen. So kann man testen, ob die getestete Verbindung einbricht, wenn man mehr als einen Client hat.
-f FORMAT Darüber kann man festlegen, welche Einheiten iPerf3 zur Anzeige nutzt. k = kbits, m = megabits, K = kilobytes, M = Megabytes
-p PORT Server läuft auf dem TCP-Port PORT statt 5001, und der Client versucht, sich mit dem Port PORT des Servers zu verbinden.
-t SEKUNDEN Gibt die Dauer des Tests an. Die Voreinstellung ist 10 s.
-i SEKUNDEN Gibt die Intervalllänge an, in der Ausgaben erfolgen. Die Intervalllänge sollte kürzer als die Testdauer sein.
-V Es wird iPerf3 mitgeteilt, dass die IP_DES_SERVERS eine IPv6-Adresse ist.
-B IP-ADRESSE An eine Netzwerkschnittstelle binden, um die Geschwindigkeit über genau diese Schnittstelle zu messen.
-v Zeigt aktuelle Informationen zum installierten iPerf3 an (iPerf, cJSON).

Problembehandlung

Die Nutzung von iPerf3 ist vergleichsweise simpel und bietet kaum Raum für Fehler. Neben falsch gesetzten Parameter sollte man nur berücksichtigen, dass der Client den Server auch auf dem verwendeten Port erreichen kann. Dies ist üblicherweise der TCP-Port 5001. Dieser lässt sich aber mit dem Parameter -p ändern.

Diese Revision wurde am 1. März 2025 10:08 von karzer erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Shell, Netzwerk, Benchmark