我要通过多播套接字发送数据包。
我正在使用数据包的最大实际大小,65 507字节(65,535−8字节UDP头−20字节IP报头)。
但是,即使服务器和客户端位于同一台计算机中,也会导致40%-50%的数据包丢失。
在测试了一些值之后,我注意到只有当数据包大小小于10000字节时,我才能得到0%的数据包丢失。
为什么会这样呢?是我笔记本电脑网卡上的限制吗?还是UDP本身有问题?
发布于 2017-04-07 10:38:15
我使用的是数据包的最大实际大小,65 507字节
不,你不是。65,507是最大的理论尺寸。在IPv4中,比这更大的尺寸是不可能的。
最大的实际尺寸是534左右,任何需要的东西都不会被分割。一旦出现碎片,就会增加数据报丢失的概率,与结果碎片的数量相同,因为在UDP中没有任何恢复丢失碎片的方法。
https://stackoverflow.com/questions/43275148
复制相似问题