如何解释跟踪路由结果

如何解释跟踪路由结果

我正在尝试弄清楚如何解释所附图片。前两个跳点在我们的 LAN 上,第 3-5 个跳点属于我们的 WAN 提供商,而第 6 个跳点在我们的托管提供商处,第 7 个跳点是同一托管提供商处的 Windows 服务器。

我不明白的是,第 7 跳的延迟怎么会低于第 6 跳的延迟,或者低于第 5 跳和第 6 跳的延迟。另外,第 6 跳显示数据包丢失严重,而第 7 跳看起来没问题。我知道这些数字不是累积的,但如果数据包经过所有跳,那么到达下一跳所需的时间难道不应该比到达前一跳更长吗?

我阅读了互联网上解释 traceroute 命令的大量文档和教程,但仍然没有找到对此的解释。我非常希望得到一个清晰的解释,或者至少给出一个阅读指南。

在此处输入图片描述

答案1

只是一个理论:一些核心路由器可能具有超载的管理平面 - 因此延迟/丢失响应,但它们的数据包转发平面将表现良好,因此通过它们的流量不会受到影响。

我建议您还使用 iperf 测试可用带宽。如果您的端到端性能可以接受,那么您不必担心。

答案2

Traceroute 是一种不可靠的延迟测量方法。请记住,Traceroute 发送的数据包(Windows 中的 ICMP,Linux 中的 UDP)具有较低的 TTL - 当 TTL = 0 时,路由器会发回“超时”ICMP 消息。这就是您可以识别您与目的地之间的所有跳数的方法。

问题在于,发送超时消息是一种错误异常,必须用软件处理(与数据包转发相反,数据包转发是用硬件完成的)。发送 ICMP 错误消息是一项低优先级任务,在繁忙的路由器上可能会出现严重的延迟或消息丢失。

如果您有兴趣测量端到端延迟,请按照@pQd 的建议使用 iperf。

相关内容