Networking 在网络入口点显示数据包丢失-可能导致什么?

Networking 在网络入口点显示数据包丢失-可能导致什么?,networking,tcp,wireshark,cisco,Networking,Tcp,Wireshark,Cisco,带有1gigabit NIC的流量源(服务器)连接到Cisco交换机的1gigabit端口 我将此流量(SPAN)镜像到同一交换机上的一个单独的千兆端口,然后在一个高吞吐量捕获设备(shark)上捕获此流量。 Wireshark对捕获的分析表明存在一定程度的数据包丢失-大约0.1%的TCP段丢失(基于序列号分析) 鉴于这是该流量在网络上的第一个点,什么会导致这种损失? 吞吐量不在1gigabit附近,没有端口错误(这可能表明补丁线不可靠) 在理查德·史蒂文斯(Richard Stevens)的《

带有1gigabit NIC的流量源(服务器)连接到Cisco交换机的1gigabit端口

我将此流量(SPAN)镜像到同一交换机上的一个单独的千兆端口,然后在一个高吞吐量捕获设备(shark)上捕获此流量。 Wireshark对捕获的分析表明存在一定程度的数据包丢失-大约0.1%的TCP段丢失(基于序列号分析)

鉴于这是该流量在网络上的第一个点,什么会导致这种损失? 吞吐量不在1gigabit附近,没有端口错误(这可能表明补丁线不可靠)

在理查德·史蒂文斯(Richard Stevens)的《TCP图解》一书中,他提到了“本地拥塞”——TCP堆栈生成数据的速度快于底层本地队列的清空速度

这可能是我看到的吗? 如果是这样,有没有办法在AIX机器上确认它?
(Stevens的示例使用了ppp0设备的Linux“tc”命令来演示较低级别的下降)

损失可能在网络路径的任何位置

如果两台主机之间发生丢失,您应该看到DUP ACK。您需要查看哪一方正在发送DUP ACK。这将是未接收所有数据包的主机。(当没有看到数据包时,它将发送DUP ACK以再次请求该数据包。)


沿途其他地方可能会出现交通堵塞。在接口上查找输出下降。或者CRC erros。

我认为我的描述可能有点欠缺。我认为我的描述可能有点欠缺。捕获是在源将流量放入网络的点进行的。尽管这是网络上的第一个点,但捕获结果显示TCP段丢失。流量不是通过中间的交换机,而是通过拥塞或qos规则被丢弃,这是它在网络上的第一个点。我确实看到了由于丢失而导致的预期的dup确认和重新传输,但我正试图弄清楚为什么数据包会在旅程的早期丢失。我可能已经找到了“丢失”的数据段。在几乎所有情况下,跟踪中的“TCP上一个段丢失”警告条目在几个段内都会出现“TCP无序”警告,该警告对应于被认为丢失的段。(我想我的下一个任务将是找出它们为什么会被发送出故障)如果段丢失,那么您也会收到故障警告……这些是正在重新传输的丢失段。您需要一跳一跳地嗅探数据包,直到您可以看到原始数据包和无序(重新传输)数据包为止。这将是最后一个看到原始数据包的设备。谢谢-我无法逐跳嗅探,因为这是出现“丢失”的第一跳。仔细观察后,我可以看到,在大多数情况下,无序段不是重新传输的结果-在大多数情况下,发送方在收到三个DUP ACK之前发送数据包,这将启动快速重新传输-这似乎表明“段混乱”发生在起始点,而不是通常的段恢复机制的结果。