在进入网络时出现数据包丢失 - 可能导致什么?

时间:2013-02-22 13:09:08

标签: networking tcp wireshark cisco

具有1千兆位NIC的流量源(服务器)连接到Cisco交换机的1千兆位端口。

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

鉴于这是网络上此流量的第一点,会导致这种损失的原因是什么? 吞吐量不是接近1千兆位,没有端口错误(这可能表示一个狡猾的补丁导致)。

在Richard Stevens所说的TCP书中他提到了“本地拥塞” - 其中TCP堆栈以比基础本地队列可以清空的速度更快的速度生成数据。

这可能是我所看到的吗? 如果是这样,有没有办法在AIX盒子上确认它? (Stevens示例使用Linux'tc'命令为ppp0设备演示了较低级别的丢弃)

1 个答案:

答案 0 :(得分:0)

丢失的可以是网络路径上的任何位置。

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

沿途的其他地方可能会出现拥堵。寻找接口上的输出丢弃。或CRC错误。