Ping auf Mavericks auf MacBook Pro Ende 2013 langsam und variabel im Vergleich zu Windows

Ich hatte letzte Nacht ein paar Probleme, mich mit einer SMB-Freigabe zu verbinden, also fing ich an, Ping zu verwenden, um die Konnektivität zu testen.

An diesem Punkt bemerkte ich, dass der Ping sehr langsam und variabel war - mein Windows-Laptop zeigt <1 ms für alle Pings zum Router.

Ein Beispiel:

64 bytes from 192.168.1.1: icmp_seq=335 ttl=64 time=208.350 ms
64 bytes from 192.168.1.1: icmp_seq=336 ttl=64 time=129.768 ms
64 bytes from 192.168.1.1: icmp_seq=337 ttl=64 time=51.067 ms
64 bytes from 192.168.1.1: icmp_seq=338 ttl=64 time=278.491 ms
64 bytes from 192.168.1.1: icmp_seq=339 ttl=64 time=1.315 ms
64 bytes from 192.168.1.1: icmp_seq=340 ttl=64 time=120.040 ms
64 bytes from 192.168.1.1: icmp_seq=341 ttl=64 time=40.420 ms
64 bytes from 192.168.1.1: icmp_seq=342 ttl=64 time=267.817 ms
64 bytes from 192.168.1.1: icmp_seq=343 ttl=64 time=188.607 ms
64 bytes from 192.168.1.1: icmp_seq=344 ttl=64 time=109.445 ms
64 bytes from 192.168.1.1: icmp_seq=345 ttl=64 time=1.313 ms
64 bytes from 192.168.1.1: icmp_seq=346 ttl=64 time=1.905 ms
64 bytes from 192.168.1.1: icmp_seq=347 ttl=64 time=3.662 ms
64 bytes from 192.168.1.1: icmp_seq=348 ttl=64 time=100.708 ms
64 bytes from 192.168.1.1: icmp_seq=349 ttl=64 time=21.266 ms
64 bytes from 192.168.1.1: icmp_seq=350 ttl=64 time=1.674 ms
64 bytes from 192.168.1.1: icmp_seq=351 ttl=64 time=1.397 ms
64 bytes from 192.168.1.1: icmp_seq=352 ttl=64 time=89.599 ms
64 bytes from 192.168.1.1: icmp_seq=353 ttl=64 time=10.996 ms
64 bytes from 192.168.1.1: icmp_seq=354 ttl=64 time=341.583 ms
64 bytes from 192.168.1.1: icmp_seq=355 ttl=64 time=159.329 ms
64 bytes from 192.168.1.1: icmp_seq=356 ttl=64 time=81.145 ms
64 bytes from 192.168.1.1: icmp_seq=357 ttl=64 time=1.945 ms

Ich habe keine anderen Symptome gesehen - Netzwerkgeschwindigkeiten und Dinge wie Ping-Test sind in Ordnung. Ich sehe jedoch ein ähnliches Verhalten beim Ping externer Websites - viel langsamer und variabler.

Ich habe versucht, das Gerät an die Stromversorgung anzuschließen (möglicherweise könnte dies durch Energiesparen verursacht werden) und auch neu starten.

Ich habe vor dem Posten gesucht und keine weiteren Fragen gefunden, aber jetzt ist eine der verwandten Fragen nützlich - das Ändern des Intervalls auf 200 ms macht die Pings schnell und konsistent.

Aber warum sollte eine Änderung des Ping-Intervalls auf 200 ms statt 1 s die Latenz ändern?

Danke für die Bearbeitung. Wie haben Sie ein Bild so einfach in Text umgewandelt?
Ich kann ziemlich schnell tippen ;)

Antworten (5)

Der Ping auf Mavericks ist stark gebrochen. Der Grund dafür ist, dass Mavericks die Netzwerkkarte innerhalb von Millisekunden in einen Energiesparmodus versetzt, wenn es keinen Datenverkehr gibt, den es für wichtig hält, und Pings anscheinend nicht als wertvollen Datenverkehr betrachtet, daher die Netzwerkkarte (oder vielmehr die WLAN-Karte) geht sofort in den "Schlaf" und es braucht Zeit dafür, was zu völlig zufälligen Ping-Ergebnissen führt.

Ich habe Apple in den frühen Beta-Phasen der Mavericks einen Fehlerbericht übermittelt, aber sie haben sich geweigert, das Problem anzugehen, und behaupteten, es werde nicht behoben.

Die angezeigten Ergebnisse sind also nicht repräsentativ für die tatsächliche Netzwerkverbindung.

Bitte posten Sie Ihren Fehler auf openradar.me und ich werde ihn gerne täuschen.
Tatsächlich liegt das Problem nicht nur beim pingDienstprogramm. Es betrifft jeden Datenverkehr, der kein konstanter Strom ist, wie z. B. Online-Spiele. Das Streamen eines Films sollte gut funktionieren, aber League of Legends ist nicht spielbar. Der Datenverkehr wird in Mavericks in keiner Weise priorisiert, sodass dieses Problem auftritt, unabhängig davon, ob der Datenverkehr „wichtig“ ist oder nicht.

Versuchen Sie, den folgenden Befehl auszuführen, wenn Sie eine niedrige Latenzzeit für etwas wie Online-Spiele benötigen. Es pingt Ihren Router kontinuierlich alle 200 ms an, um zu verhindern, dass der neue 802.11ac-Broadcom-Chip in den 2013er Haswell-Macs jemals in den Ruhezustand wechselt.

ping -i 0.2 `netstat -nr | grep -m 1 '^default' | awk '{print $2;}'`

Hoffentlich wird Apple im kommenden Mac OS 10.9.2-Update eine angemessene Lösung dafür bereitstellen. Sie haben es wirklich vermasselt.

Voll und ganz einverstanden – abgesehen von der ping -i 0.2Problemumgehung ist das sshauch über WiFi in OS X 10.9 völlig unbrauchbar. Anscheinend plagt dies tatsächlich seit langem verschiedene Hardware und OS X: apple.stackexchange.com/a/13216/37893 .

Ich habe wochenlang versucht, zufällige Ping-Ergebnisse von meinem Mac zu sortieren, und es war die Energiespareinstellung - habe diesen Beitrag zufällig gefunden und ist genau richtig - schaltete den Netzwerkschlaf aus (Systemeinstellungen --> Energiesparmodus --> Für Netzwerkzugriff aktivieren) und ping ist sofort konsistent, ebenso wie der gesamte intermittierende Netzwerkverkehr.

Für diejenigen, die im Vergleich zu anderen Betriebssystemen in derselben Umgebung (Win/Linux) auf einen ungewöhnlich hohen Ping gestoßen sind. In Monterey (12.0.1) hat sich nichts geändert . Alles dreht sich um die Energieverwaltung der Netzwerkkarte. Sie können einen sehr einfachen Test durchführen:

  • Führen Sie Ping zu Ihrem Gateway aus (z. B. lokaler Router, z. B. 192.168.1.1)
  • Führen Sie Speedtest oder eine andere netzwerkintensive App/Website aus

Der Ping ist gut und derselbe wie auf Win/Linux-Rechnern bei intensiver Netzwerkkommunikation. Sobald der Netzwerkdurchsatz sinkt, steigt der Ping auf das 3/4-fache an.

Das ist dasselbe, was @fletom @dniq vorschlägt. Gerade Stand 2021/2022 aktualisiert .

Ich habe eine App namens PingFixer erstellt, um dieses Problem zu beheben. Sie können es hier herunterladen: https://gum.co/PingFixer

Kevin

9,99 $ für ein Dienstprogramm, das im Grunde genommen ping? Das ist böse. Jeder, Sie können ping -i 0.2 `netstat -nr | grep -m 1 '^default' | awk '{print $2;}'`stattdessen kostenlos laufen!
Ich stimme zu - ich verstehe, warum eine App benötigt wird, aber das ist sehr kostspielig.
Ich freue mich über den Link zu Ihrer App. Können Sie dies bearbeiten, um zu erklären, wie es das vorliegende Problem löst?