Man könnte erwarten, dass die Summe der tracert
Latenzen 267 ms beträgt:
Man könnte erwarten, dass die Summe der tracert
Latenzen 267 ms beträgt:
Antworten:
Traceroute beinhaltet das Senden von UDP-Paketen an jeden Knoten auf dem Weg und das Warten auf seine Timeout-Antwort (dann Weitergehen zum nächsten Knoten), während ein Ping nur weitergeleitet wird. Was Sie sehen, ist die Zeit, die jeder Knoten benötigt, um auf die Anfrage zu antworten, anstatt nur ein kleines Paket weiterzuleiten.
Dies ist eine ziemlich schöne Erklärung des gesamten Prozesses und der Unterschiede.
Schauen Sie sich den Abschnitt zur Leistung an, in dem auch erklärt wird, warum Ping keine besonders genaue Methode zur Bestimmung der Latenz ist.
tracert
wird ICMP verwendet, nicht UDP.
Router neigen dazu, Zeitüberschreitungen und die Behandlung von Echoantworten eine niedrigere Priorität zu geben als die Paketweiterleitung. Dadurch kann der Switch effizienter arbeiten, da die Weiterleitung viel einfacher zu verarbeiten ist als das Generieren einer neuen ICMP-Antwort. Infolgedessen dauert es länger, bis geschäftigere Switches die Antwort generieren.
Bei einigen Switches ist möglicherweise die ICMP-Generierung deaktiviert, was die Diagnose von Netzwerkproblemen schwierig macht. Andere können gelegentlich so beschäftigt sein, dass sie nicht reagieren.
Wenn Sie ein Tool verwenden, das die IP-Adresse der Router auf dem Weg anzeigt, sehen Sie normalerweise, dass die langsameren Switches Kern-Switches in Großstädten sind. Ich bevorzuge es mtr
, alle 15 bis 60 Sekunden zu laufen.
Die Zeiten bei jedem Sprung einer Trace-Route sind die Round Trip Time (RTT) . In Ihrem ping
Test vier Echo fordert jeder nahm 267ms ein empfangen Echo antwortet von 220.181.111.85 . Im tracert
Test brauchten drei Echoanfragen 292 ms , um eine Antwort zu erhalten.
Die Stichprobengröße ist klein. Weitere Tests sollten durchgeführt werden, um die Genauigkeit der gemessenen Differenz zu verbessern.
tracert
(oder traceroute -I
) hat Nutzlasten unterschiedlicher Größe als ping
. Verwenden Sie einen Paket-Sniffer, um die Größe der von Ihrem Trace-Programm verwendeten Nutzdaten zu überprüfen. Stellen Sie die Größe der ping
Nutzdaten mit ping -l <size>
oder ping -s <size>
abhängig von Ihrem Ping-Programm auf diesen Wert ein .
Eine Echoantwort erfordert die Verwendung der CPU, sodass eine ausgelastete Maschine eine große RTT-Standardabweichung im Vergleich zu einer Maschine im Leerlauf aufweisen kann.
Domänennamen können in mehrere IP-Adressen aufgelöst werden. Verwenden Sie die IP-Adresse im Befehl, um sicherzustellen, dass die Tests denselben Pfad zurücklegen.
mtr
oder WinMTR
ist ein anderes Programm zum Verfolgen eines Pfads, das auch die RTT-Standardabweichung, den Verlust und andere Statistiken berechnet.
Wireshark ist ein beliebter Paketanalysator zum Anzeigen des Inhalts von gesendeten und empfangenen Paketen.