UDP丢包严重,请大家分析一下
服务器接受客户端UDP请求,并返回数据使用Reactor接受数据(只有一个UDP sock Dgram, UDP是不是可以只用一个socket开一个端口?)
使用Task处理数据并返回数据
客户端使用SmallBit进行模拟
发的包是一样的,测试时在服务器端写定了返回地址,服务器接收到的任何请求都会原路返回给SmallBit,
现在发现丢包率达到一半左右,每秒1300包时,回复650,每秒7800请求包时,回复包3500(现没有做重发)
请问一下,造成如此之高的丢包率一般是由什么原因造成的,有何解决方案?
是否由于流量发生器所发包一样(发出的帧都是一样的,UDP ID等等都相同),网卡会进行过滤?
希望大家各抒已见,共同提高,谢谢 很多因素影响,给你一些提示:
1、socket的缓冲空间满,是丢包的重要因素,加大udp socket的缓冲区。
2、UDP包长太大,被分割传输。
3、线路问题。
4、其它。
回复 #2 winston 的帖子
找到原因了,我的SMALLBIT报文设置出现问题了,现在已经恢复正常了另外请问一下winston,UDP是不是只用一个Dgram接收数据?而没有向TCP那样多句柄的情况? 就一个就成。
页:
[1]