Treiber
Netzwerkgeschwindigkeit messen mit iperf3: Durchsatz im LAN richtig prüfen
Durchsatz im LAN mit iperf3 messen: Server und Client starten, TCP- und UDP-Werte richtig einordnen und typische Fehler bei der Messung erkennen.
Von Redaktion SysKonnect
Kurz gesagt
Auf einem Rechner läuft iperf3 als Server, der andere verbindet sich als Client und überträgt Daten; ausgegeben wird der Durchsatz in Bit pro Sekunde. Aussagekräftig wird der Wert erst mit mehreren Durchläufen in beiden Richtungen unter gleichen Bedingungen, und er beschreibt immer den gesamten Übertragungsweg, nicht ein einzelnes Gerät.
Mit iperf3 lässt sich der Datendurchsatz zwischen zwei Rechnern im lokalen Netzwerk ermitteln. Das Werkzeug überträgt Daten gezielt zwischen einem Server und einem Client und zeigt an, wie viele Bits pro Sekunde dabei übertragen werden. So können Sie einschätzen, ob eine Verbindung die erwartete Leistung erreicht und an welcher Stelle weitere Diagnose sinnvoll ist.
Die Messung ist nur aussagekräftig, wenn beide Geräte, ihre Netzwerkschnittstellen und der gewählte Übertragungsweg berücksichtigt werden. Ein einzelner Wert beschreibt nicht automatisch die Leistung des gesamten Heimnetzes. Dieser Ratgeber erklärt die Vorbereitung, die wichtigsten Befehle und die Einordnung der Ergebnisse.
Was iperf3 misst – und was nicht
iperf3 erzeugt zwischen zwei Geräten gezielten Netzwerkverkehr. Auf einem Gerät läuft der Server, das andere baut als Client die Verbindung auf. Während der Übertragung ermittelt iperf3 den Durchsatz und gibt den Wert im Terminal aus.
Damit unterscheidet sich die Messung von einer Internet-Geschwindigkeitsmessung: iperf3 misst den Datenfluss zwischen den beiden beteiligten Geräten. Liegen sie im selben LAN, wird nicht automatisch die Verbindung zu einem Internetanbieter beurteilt. Auch die Leistung eines einzelnen Routers oder einer Netzwerkkarte lässt sich nicht isoliert bewerten, solange mehrere Komponenten am Übertragungsweg beteiligt sind.
Das Ergebnis hängt unter anderem von diesen Bedingungen ab:
- den Netzwerkschnittstellen beider Rechner und ihrer ausgehandelten Verbindungsgeschwindigkeit
- der Verkabelung oder der Funkverbindung zwischen den Geräten
- der Auslastung des Netzwerks während der Messung
- der Leistungsfähigkeit von Prozessor und Betriebssystem
- den gewählten Protokoll- und iperf3-Einstellungen
Eine niedrige Übertragungsrate kann deshalb mehrere Ursachen haben. iperf3 liefert einen Messwert für den Datenfluss, aber keine automatische Diagnose der Fehlerquelle.
Vorbereitung: Server und Client im LAN festlegen
Wählen Sie zunächst zwei Geräte, die miteinander kommunizieren können. Ein Rechner übernimmt die Serverrolle, der andere die Clientrolle. Für eine aussagekräftige Messung sollten beide Geräte möglichst direkt mit dem untersuchten Netzwerk verbunden sein. Vermeiden Sie währenddessen große Dateiübertragungen oder andere intensive Netzwerkaktivitäten, sofern diese nicht ausdrücklich Teil der Untersuchung sein sollen.
Installieren oder starten Sie iperf3 auf beiden Geräten. Die konkrete Bereitstellung hängt vom Betriebssystem und der verwendeten Paketquelle ab. Achten Sie darauf, dass auf beiden Seiten geeignete, miteinander kompatible Versionen laufen. Öffnen Sie anschließend auf dem Server ein Terminal und starten Sie den Dienst:
iperf3 -s
Der Server wartet nun auf eine Verbindung. In der Regel verwendet iperf3 dafür den TCP-Port 5201. Wenn eine Firewall die Verbindung blockiert, muss die Kommunikation zwischen den beiden Geräten zugelassen werden. Beschränken Sie eine solche Freigabe auf das benötigte Netzwerk und die erforderliche Dauer. Ein iperf3-Server sollte nicht unnötig für nicht vertrauenswürdige Netze erreichbar sein.
Ermitteln Sie auf dem Server die lokale IP-Adresse der verwendeten Netzwerkschnittstelle. Die dafür nötige Systemanzeige unterscheidet sich zwischen Linux und Windows. Verwenden Sie die Adresse, über die der Client den Server tatsächlich erreichen soll. Eine Adresse einer nicht verwendeten Schnittstelle – etwa eines virtuellen Netzwerks – führt sonst zu Verbindungsproblemen oder misst einen anderen Übertragungsweg als beabsichtigt.
Mit iperf3 die Geschwindigkeit messen
Öffnen Sie auf dem Client ein Terminal und ersetzen Sie im folgenden Befehl SERVER-IP durch die lokale IP-Adresse des Servers:
iperf3 -c SERVER-IP
Standardmäßig führt iperf3 eine TCP-Übertragung aus und zeigt währenddessen sowie am Ende Informationen zum übertragenen Datenvolumen und zum Durchsatz an. Die Ausgabe enthält üblicherweise Angaben für Sender und Empfänger. Für die Beurteilung des empfangenen Datenstroms ist der vom Empfänger ausgewiesene Wert oft besonders hilfreich. Kleine Abweichungen zwischen den Angaben sind möglich, weil Sender und Empfänger den Datenfluss an unterschiedlichen Stellen erfassen.
Für eine längere Einzelmessung können Sie mit -t die Laufzeit festlegen:
iperf3 -c SERVER-IP -t 30
Mit -i bestimmen Sie, in welchen Abständen Zwischenwerte ausgegeben werden:
iperf3 -c SERVER-IP -t 30 -i 5
Die Zahlen in diesen Beispielen sind Sekunden und frei gewählte Beispielwerte. Eine längere Messung kann Schwankungen sichtbarer machen, doch sie beseitigt keine Engpässe und erklärt nicht automatisch deren Ursache. Führen Sie mehrere Durchläufe unter vergleichbaren Bedingungen aus, bevor Sie aus einem einzelnen Wert Schlüsse ziehen.
Übertragungsrichtung umkehren
Beim normalen Aufruf sendet der Client Daten zum Server. Mit der Option -R wird die Richtung umgekehrt: Der Server sendet, der Client empfängt.
iperf3 -c SERVER-IP -R
Die Gegenrichtung kann andere Ergebnisse liefern, zum Beispiel wenn eine Funkverbindung oder ein beteiligtes Gerät den Datenverkehr unterschiedlich behandelt. Vergleichen Sie beide Richtungen getrennt und notieren Sie, welcher Rechner jeweils sendet und empfängt.
Mehrere Datenströme verwenden
Mit -P lassen sich parallele Datenströme anfordern, im folgenden Beispiel vier:
iperf3 -c SERVER-IP -P 4
Mehrere Ströme können zeigen, ob ein einzelner Datenstrom die verfügbare Kapazität nicht ausschöpft. Das Ergebnis ist aber nicht unmittelbar mit einer einzelnen Übertragung gleichzusetzen. Parallele Verbindungen erzeugen mehr Last und können die Messung stärker beeinflussen. Beginnen Sie daher mit der Standardmessung und nutzen Sie zusätzliche Ströme gezielt, wenn Sie einen bestimmten Sachverhalt untersuchen möchten.
Messwerte und Einheiten richtig einordnen
iperf3 gibt den Durchsatz in bitbasierten Einheiten aus, zum Beispiel Mbit/s oder Gbit/s. Dateigrößen werden im Alltag dagegen häufig in Byte angegeben. Ein Byte besteht aus acht Bits. Eine angezeigte Rate in Mbit/s darf daher nicht direkt mit einer Kopiergeschwindigkeit in Megabyte pro Sekunde verglichen werden, wie sie viele Dateimanager anzeigen.
Auch die beworbene oder angezeigte Verbindungsgeschwindigkeit einer Netzwerkschnittstelle ist nicht dasselbe wie der tatsächlich erreichte Nutzdatendurchsatz. Protokollinformationen, Steuerdaten und weitere Vorgänge beanspruchen einen Teil der Übertragung. Deshalb muss ein iperf3-Wert nicht exakt der nominellen Verbindungsrate entsprechen.
Achten Sie außerdem auf die Bedingungen der Messung. Ein Vergleich ist vor allem dann sinnvoll, wenn dieselben Geräte, dieselbe Richtung und vergleichbare Einstellungen verwendet werden. Halten Sie fest, ob TCP oder UDP lief, welche Laufzeit eingestellt war und ob parallele Ströme aktiv waren. Ohne diese Angaben können zwei Werte unterschiedliche Situationen beschreiben.
UDP-Messungen gezielt einsetzen
TCP ist für einen allgemeinen Durchsatzüberblick häufig der einfachere Startpunkt. UDP kann zusätzliche Informationen liefern, etwa wenn Sie gezielt die Übertragung ohne TCP-Flusskontrolle betrachten möchten. Für UDP wählen Sie -u und legen mit -b die angeforderte Senderate fest:
iperf3 -c SERVER-IP -u -b 100M
Die Rate, im Beispiel ein frei gewählter Wert von 100 Mbit/s, ist dabei eine Vorgabe für den erzeugten Datenstrom, kein garantierter Messwert. Ein zu hoch angesetzter Wert kann Verluste verursachen oder das Netzwerk stark belasten. Beobachten Sie bei UDP insbesondere die Angaben zu verlorenen Datenpaketen und zur Schwankung der Übertragungsrate. Wählen Sie die Einstellungen passend zum Diagnoseziel und vermeiden Sie unnötig hohe Last.
Häufige Probleme bei der Messung
Der Client erreicht den Server nicht: Prüfen Sie, ob der Serverbefehl noch läuft, ob Sie die richtige IP-Adresse verwenden und ob beide Geräte einander im Netzwerk erreichen können. Kontrollieren Sie außerdem, ob eine Firewall die Verbindung über den verwendeten Port verhindert.
Der angezeigte Durchsatz ist unerwartet niedrig: Prüfen Sie zuerst die Verbindung beider Geräte und ob während der Messung weitere Daten übertragen werden. Wiederholen Sie die Messung in der Gegenrichtung. Bei Funkverbindungen können Abstand, Hindernisse und parallele Nutzung die Bedingungen verändern. Bei schnellen Karten kann auch der Steckplatz bremsen, siehe 10-Gigabit-Netzwerkkarte.
Das Ergebnis schwankt deutlich: Schwankungen können auf wechselnde Netzwerkauslastung oder eine instabile Verbindung hindeuten. Wiederholen Sie die Messung unter möglichst gleichen Bedingungen und vergleichen Sie die Zwischenwerte. Ein einzelner kurzer Durchlauf sollte nicht als abschließende Bewertung dienen.
Die Ausgabe wirkt widersprüchlich: Achten Sie auf die Zeilen für Sender und Empfänger sowie auf die angegebene Einheit. Prüfen Sie, ob Sie tatsächlich dieselbe Richtung und dieselben Optionen vergleichen. Besonders bei UDP sind die Angaben zu Verlusten neben dem Durchsatz wichtig.
Fazit
iperf3 ermöglicht eine gezielte Durchsatzmessung zwischen zwei Geräten im LAN. Mit einer einfachen TCP-Messung, einem anschließenden Richtungswechsel und sorgfältig notierten Bedingungen erhalten Sie einen brauchbaren Überblick. Der Messwert zeigt die Leistung des gesamten Übertragungswegs unter den jeweiligen Bedingungen – die Ursache eines Engpasses muss bei Bedarf separat eingegrenzt werden.
Liegt der Verdacht beim Adapter selbst, helfen die Schritte unter Windows-Netzwerktreiber installieren, zurücksetzen und sauber entfernen. Wie sich ein Messrechner über das Netzwerk starten lässt, steht unter Wake-on-LAN einrichten. Weitere Diagnosethemen sammelt die Rubrik Treiber.
Häufige Fragen
Funktioniert iperf3 auch ohne Internetverbindung?
Ja. Für eine Messung zwischen zwei Geräten im lokalen Netzwerk ist keine Internetverbindung erforderlich. Entscheidend ist, dass Client und Server über den gewünschten Netzwerkpfad miteinander kommunizieren können.
Kann iperf3 eine Netzwerkverbindung beschädigen?
iperf3 verändert keine Netzwerkkonfiguration, erzeugt während der Übertragung aber zusätzlichen Datenverkehr. Bei knappen Kapazitäten kann dieser Verkehr andere Anwendungen vorübergehend beeinträchtigen. Beenden Sie die Messung, wenn die zusätzliche Last den laufenden Betrieb stört.
Können verschiedene iperf3-Versionen miteinander kommunizieren?
Das hängt von den verwendeten Versionen und ihren unterstützten Funktionen ab. Für einen möglichst klaren Vergleich empfiehlt es sich, kompatible Versionen auf beiden Geräten einzusetzen und besondere Optionen nicht ungeprüft vorauszusetzen.
Was unterscheidet iperf3 von älteren iperf-Ausgaben?
iperf3 ist eine eigenständige Weiterentwicklung und nicht in jeder Hinsicht mit älteren iperf-Varianten austauschbar. Befehle und unterstützte Funktionen können sich unterscheiden. Achten Sie deshalb darauf, welche Variante auf beiden Geräten installiert ist.