Zu Testzwecken (Testen der Netzwerkgeschwindigkeit über eine Reihe von Kabeln) habe ich mein Mac Book pro neben der integrierten Gigabit-Ethernet-Verbindung mit einem Thunderbolt-zu-Gigabit-Ethernet-Adapter ausgestattet.
Beiden Schnittstellen wurde eine manuelle IP im Bereich 10.0. * / 24 zugewiesen.
Iperf mit starten iperf -s --bind 10.0.0.1
, dann den Client mit einer iperf -c 10.0.0.1
Geschwindigkeit von über 40 Gigabit pro Sekunde starten . Ich gehe davon aus, dass nicht die Schnittstelle selbst verwendet wird, sondern die lokale Loopback-Schnittstelle, da sich beide IPs auf demselben Computer befinden. Also war mein Gedanke zu deaktivieren lo0
, auch nur vorübergehend durch Ausstellen sudo ifconfig lo0 down
. Thies funktioniert nicht (es hat vielleicht ein paar Sekunden lang funktioniert, aber ich kann das nicht beweisen). lo0
bleibt einfach auf.
Gibt es eine Möglichkeit, die lokale Loopback-Schnittstelle (vorübergehend) zu deaktivieren, lo0
damit ich meine Tests durchführen kann?
Vielen Dank!
quelle
lo0
? Vom Thunderbolt-Adapter zum eingebauten Port?iperf
würde der tatsächliche Durchsatz gemessen, den die Kabel "handhaben" können.lo0
wieder ziemlich schlimme Konsequenzen hat, aber es schien die einzige Lösung zu sein.iperf
weiß, wie man sich an eine IP bindet (Ill edit my request above because I actually used that option), but the kernel seems to outsmart it. One IP belongs to
en0, the built-in interface, the other to
en3`, der Thunderbolt-zu-Gigabit-Ethernet-Adapter)iperf
Verwendung der beiden Schnittstellen erzwingen (eine für den Server, eine für den Client)?Antworten:
Die Version von Iperf, die ich habe (von Homebrew), erlaubt es tatsächlich, den Client und den Server an verschiedene Schnittstellen zu binden, wie zum Beispiel:
(Für die Beantwortung dieser Frage gehe ich davon aus, dass Sie den Server auf .1 und den Client auf .2 haben möchten.)
Das Problem ist, dass die Routing-Tabelle (sichtbar durch
netstat -rn
) dies zu überschreiben scheint und Datenverkehr über die Loopback-Schnittstelle an 10.0.0.1 sendet.Anstatt Loopback vollständig zu deaktivieren, können Sie diese bestimmte Route löschen:
Ich stellte fest, dass mein Mac dadurch einige Sekunden lang nicht in der Lage war, sich selbst (auf dieser IP-Adresse) zu erreichen, bis er eine alternative Route über die andere Schnittstelle und über meinen Router fand. Sobald diese Route in
netstat -rn
auftauchte, funktionierte Iperf gut. Hier ist mein vorher und nachher:Und danach:
288 Mbit / s sind eine ziemlich vernünftige Geschwindigkeit, wenn man bedenkt, dass eine der verwendeten Schnittstellen 802.11n Wireless ist.
Ich konnte meine Routing-Tabelle auch wieder normalisieren, indem ich die Schnittstelle einfach aus- und wieder einschaltete.
quelle
42.5 Gbits/sec
nach dem Löschen der Route4.12 Gbits/sec
- unabhängig von der Verwendung eines einfachen Kabels oder meines handlichen Minischalters, der nur ist Fast Ethernet (der Verbindungsstatus wird korrekt angezeigt100baseT
). Und das ist natürlich nicht möglich.