在TCP中发送大于64K的数据包

时间:2014-10-29 10:01:02

标签: networking tcp packet tcp-ip

据我们所知,TCP数据包大小的绝对限制是64K(65535字节),实际上这远远大于您将看到的任何数据包的大小,因为较低层(例如以太网)具有较低的数据包大小。例如,以太网的MTU(最大传输单元)为1500字节。

我想知道,有没有任何方式或任何工具,发送大于64k的数据包?

我想测试面对大于64k的数据包的设备!我的意思是我想看看,如果我发送一个大于64K的数据包,它的表现如何?它会掉落一部分吗?或者是其他东西。

所以:

1-如何发送这个大包?什么是适当的层?

2-接收器的行为通常如何?

2 个答案:

答案 0 :(得分:3)

IP数据包格式的数据包大小只有16位,因此您将无法创建大小超过64k的数据包。见http://en.wikipedia.org/wiki/IPv4#Total_Length。由于TCP使用IP作为下层,因此此限制也适用于此。

答案 1 :(得分:3)

没有TCP数据包这样的东西。 TCP数据在段中发送和接收,可以根据您所使用的API的限制尽可能大,因为它们可以由多个IP数据包组成。在接收器处,TCP与字节流无法区分。

NB 与此无关,或与此无关。

相关问题