进行TCP转储而不丢失数据包

时间:2014-07-03 10:17:40

标签: linux networking tcpdump sctp

如何建立TCP转储,以确保捕获真正通过网络的所有数据包,并且不会遗漏任何内容?

详细说明: 我们遇到了第三方供应商的问题,他们在SCTP堆栈之上提供解决方案,他也实施了这个解决方案 在相当高的吞吐量(52 000条消息/秒,平均消息大小为500字节)下,SCTP链路断开 我们认为该漏洞存在于供应商的SCTP堆栈中。
但是供应商说,这是因为SCTP堆栈发送消息,没有接收到ACK,发送多次重传,也没有接收到它们的ACK并关闭SCTP链接。
所以供应商说,这是一个有罪的网络,因为它丢失了数据包。

在双方,客户端和服务器的TCP转储中,我们看到原始消息到达服务器并看到服务器没有用ACK回答。但供应商表示TCP转储不可靠,在捕获TCP转储时,可能无法捕获某些数据包,因为libpcap库仅在一个硬件线程内工作,其功率可能不足以记录所有数据包。

技术数据: 52 000消息/秒,平均消息大小为500字节,因此总共26 MB /秒,使用4个SCTP链接 硬件:CPU E5-2670,2.6 GHz,8个HW螺纹
网络:10 GBit,流量位于HP刀片之间,HP刀片位于一个机架中 RHEL 6.

0 个答案:

没有答案