Dein Netzwerk, das unbekannte Wesen: Im Gegensatz zu Festplatten ist mit Netzwerkverbindungen immer eine gewisse Unsicherheit verbunden. Verwendet die Ethernet-Karte nun Full- oder Half-Duplex, sendet das Funknetz mit 11, 54 oder 150 MBit/s? Manche Parameter lassen sich unter Linux mit einem Aufruf von "ifconfig" ermitteln, aber wer wirklich wissen will, was Sache ist, muss messen (wenn er sich dabei nicht vermisst).
Ein einfaches Tool, um die verfügbare Bandbreite zwischen zwei Rechnern herauszufinden, ist "iperf". Auf einem Rechner rufen Sie es mit dem Schalter "-s" im Server-Modus auf und starten den Benchmark auf dem zweiten Rechner mit "iperf -c Serveradresse". Nach wenigen Sekunden gibt das Tool die ermittelte Bandbreite aus.
$ iperf -c example.org ------------------------------------------------------------ Client connecting to example.org, TCP port 5001 TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.14 port 59334 connected with 83.214.135.27 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.1 sec 6.62 MBytes 5.52 Mbits/sec
Natürlich wird letztlich auch hier nicht "das Netzwerk" als solches gemessen, denn das existiert ja nicht: Es wird die ganze Verarbeitungskette von der C-Library über den Kernel durchlaufen und auf der anderen Seite der Verbindung noch einmal dasselbe. Liegen aktive Netzwerkkomponenten wie Router dazwischen, fließt auch deren Performance in die Messung ein, aber schließlich geht es bei der iperf-Messung auch um die Nettobandbreite. Wer will, kann einmal mit TCP-Parametern wie der Window Size experimentieren, um zu sehen, wie sich diese auf die Performance auswirken.
iperf -c example.org -w 512k -l 512k
Allerdings ist die Auswirkung der TCP-Parameter in der Praxis wieder von der konkreten Anwendung abhängig.
iperf ist in den meisten Linux-Distributionen in den Software-Repositories vorhanden. Mit iperf3 gibt es eine Neu-Implementation des Programms, das aber zum Original nicht kompatibel ist.