Ich versuche, einen iperf-Test von meinem Computer 192.168.1.50 zu einem anderen Computer 192.168.1.220 durchzuführen. Der folgende Test gibt den Fehler "Fehler - Socket-Puffergröße nicht richtig eingestellt" aus:
iperf3 -c 192.168.1.220 -w 512K
Dieser Befehl funktioniert, wenn -w auf 416k gesetzt ist, alles höher und dieser Fehler wird angezeigt. Ich habe ein wenig herumgestöbert und dachte, es liegt daran, dass mein TCP-Sitzungsfenster zu klein ist, aber es scheint nicht der Fall zu sein.
Dies sind einige der sysctl-Werte:
net.core.rmem_max = 16777216
net.core.rmem_default = 212992
net.core.wmem_max = 212992
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 16384 16777216
Ich kann diesen Test jedoch erfolgreich in die andere Richtung machen. Ich glaube also, dass dies mit einer Einstellung auf diesem Gerät zu tun hat, von der ich nicht weiß, was es sein könnte.
Jede Hilfe wird hierzu geschätzt.
Dankeschön!
Version von iperf3:
iperf 3.1.7
Linux 3450asterisk 3.10.0-123.9.3.el7.x86_64 #1 SMP Do 6. Nov 15:06:03 UTC 2014 x86_64
Optional verfügbare Funktionen: CPU-Affinitätseinstellung, IPv6-Flow-Label, Einstellung des TCP-Überlastungsalgorithmus, sendfile/zerocopy, Socket-Pacing
Hardware:
Onboard-NIC, 8 GB RAM, Xeon E3-1271
Erwartetes Verhalten
iperf sollte diese Fenstergröße verarbeiten können
Tatsächliches Verhalten
iperf gibt einen Fehler aus, wenn die Fenstergröße größer als 416 k ist
Ich dachte, ich hätte eine Antwort darauf geschrieben, tat es aber anscheinend nicht.
Vielleicht möchten Sie versuchen, die Größe von net.core.wmem_max
zu erhöhen, die immer noch einen ziemlich niedrigen/Standardwert zu haben scheint.
Einige andere Tipps zum Tunen eines Linux-Kernels (die das Einstellen der Socket-Puffergrößen behandeln) finden Sie hier:
http://fasterdata.es.net/host-tuning/linux/
Schließlich möchten Sie vielleicht eine neuere Version von iperf3 verwenden (iperf 3.6 ist zum Zeitpunkt dieses Schreibens aktuell). Wenn ich mich richtig erinnere, haben einige neuere Versionen einige Korrekturen im Einstellungscode für den Socket-Puffer, obwohl ich mich spontan erinnere, ob sie direkt auf dieses Problem anwendbar sind.
Das ist gut zu lesen, danke.
Schließe dieses Problem, da ich denke, dass die Frage gelöst wurde.
Hilfreichster Kommentar
Ich dachte, ich hätte eine Antwort darauf geschrieben, tat es aber anscheinend nicht.
Vielleicht möchten Sie versuchen, die Größe von
net.core.wmem_max
zu erhöhen, die immer noch einen ziemlich niedrigen/Standardwert zu haben scheint.Einige andere Tipps zum Tunen eines Linux-Kernels (die das Einstellen der Socket-Puffergrößen behandeln) finden Sie hier:
http://fasterdata.es.net/host-tuning/linux/
Schließlich möchten Sie vielleicht eine neuere Version von iperf3 verwenden (iperf 3.6 ist zum Zeitpunkt dieses Schreibens aktuell). Wenn ich mich richtig erinnere, haben einige neuere Versionen einige Korrekturen im Einstellungscode für den Socket-Puffer, obwohl ich mich spontan erinnere, ob sie direkt auf dieses Problem anwendbar sind.