1

我通过在网关的入口和出口 NIC 中使用 tcpdump 捕获数据包来测量网关内数据包面临的延迟或延迟。我从源主机发送大约 800,000 个数据包到通过两个 GW 连接的目标主机(即源主机=>GW1=>GW2=>目标主机)。我通过从出口 NIC 上的时间戳减去入口 NIC 的时间戳来测量每个 GW 的延迟。我发现延迟从 2 到 3000 微秒不断增加。当我交换网卡时,延迟会增加一段时间,然后急剧减少并再次增加。

令人惊讶的是,即使 GW 上的延迟增加,当所有节点都有 1000Mbps NIC 时,端到端吞吐量仍然保持在 900Mbps 左右。

请让我知道延迟的这种变化是如何发生的?或者 tcpdump 时间戳是如何在出口网卡中延迟的?有没有办法让时间戳以纳秒为单位?


感谢您的回复。

基础设施的性能不是问题。在这里,我们通过吞吐量来衡量性能,发现即使 GW 上的延迟从 2 微秒增加到 3000 微秒,吞吐量也不会降低。

更多信息:我一直在测量 GW 扮演不同角色时的延迟,例如 IP 路由器、GRE 隧道点或 NAT。当它作为 IP 路由器工作时,GW 内的数据包所经历的延迟几乎 <=4 微秒。然而,当 GW 用作 GRE 隧道点时,延迟会在几秒钟内连续增加 1000 倍。这是我测量的问题。而且由于端到端吞吐量没有变化,我猜这个延迟不是真实的,它可能是由 tcpdump 的数据包捕获和时间戳功能引入的。

4

1 回答 1

1

我在这里可能想得太明显了,但我认为您所指的是抖动和简单的数据包延迟变化,这是日常生活中的事实。

如今,为了节省 CPU 周期,网卡上有TCP 卸载,并且不同网卡的性能会有所不同,这可能会导致您切换时的差异。

鉴于您提到的微小时间差异,它是否会导致您的基础架构性能出现问题?

您还应该监视两个网关的性能,以查看延迟变化是否与网关上的负载增加相对应。

于 2012-08-10T16:43:34.483 回答