UDP端口失效问题

「已注销」 2013-05-04 11:54:41
问题描述:通话过程中,经过几分钟后,UDP没有接收任何数据包。
除去代码问题话(处理速度过慢造成UDP扎堆),网络情况不好情况排除(因为多台服务器出现,网络状况查看时,均发现良好)。经过NAT打洞,另外使用端口复用(个人感觉这个可能性比较大,但是由于前人代码中明确注释某种情况下必须复用,一时没发现意图),请问大家有什么原因可能造成UDP的这种情况?拜谢!
回帖多加分!
...全文
608 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2013-05-07
  • 打赏
  • 举报
回复
我很不明白,为什么一定创建的每一个UDP都要绑定端口?打洞一下就能进行数据收发了,又不是做UDP服务器用。难道绑定比没绑定有什么特殊的优势?
「已注销」 2013-05-07
  • 打赏
  • 举报
回复
前人设计的有问题,端口可用范围被限制了,然后可能出现问题了,就用端口复用,结果又没有对报数据检查回发,搞的端口被复用后原来的对象就接收不到数据包了。 真是蛋疼,机制被写死了,想改都改不了工作量和风险太大了,只能给它扩充端口范围,延长复用的时间。
「已注销」 2013-05-06
  • 打赏
  • 举报
回复
顶一下,别沉了。
ShengFei01 2013-05-06
  • 打赏
  • 举报
回复
用wireshark抓一下包,看网络上有数据没有,这有些socket例子,可以看看: http://download.csdn.net/detail/geoff08zhang/4571358
buyong 2013-05-06
  • 打赏
  • 举报
回复
use other grab soft to test if it is a network connection issue or not. if other soft can receive the UDP package, then it seems your soft have a bug.
qq120848369 2013-05-04
  • 打赏
  • 举报
回复
可以写一个独立的测试程序,只收包,看是否能正常接收,否则就是你的代码逻辑有问题了。 UDP丢包率在1000qps就不可忍受了,楼主是一个收不到,这还是很异常的问题。
「已注销」 2013-05-04
  • 打赏
  • 举报
回复
引用 1 楼 qq120848369 的回复:
可以写一个独立的测试程序,只收包,看是否能正常接收,否则就是你的代码逻辑有问题了。 UDP丢包率在1000qps就不可忍受了,楼主是一个收不到,这还是很异常的问题。
我有这个打算,排查原因未果后下周一打算将代码逻辑简化抽出进行测试,看问题出在哪。 我们对经过服务器的数据包是有备份的,在3-4分钟的时候并没有包进来。初步认定是端口失效了,数据包没有进来。因此在这里问一下造成这种情况的原因一般都有那些,进行逐一的排查。

65,186

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧