急问,同一进程如何通过同一端口发送和接收UDP数据包(100分相送)

lxas 2003-12-29 10:01:03
发送和接收不需要同时进行。在同一端口上每10秒发送一次数据,并能接收发送到这个端口的数据。
我用setsockopt讲套接字设置成SO_RESEADDR这样好像可以了但是后面发现丢包现象狠严重。不知道如何解决,望各位不吝赐教。
...全文
198 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxas 2003-12-30
  • 打赏
  • 举报
回复
thx maoyinjie. ^^
已经解决了。
maoyinjie 2003-12-30
  • 打赏
  • 举报
回复 1
lxas (八云) :你的意思是不是申请了两个套接字,在同一个端口上绑定
然后一个套接字专门负责发送,而另外一个专门负责接收?(看你需要SO_REUSEADDR估计是这样吧?)
如果是这样,那么你所谓的丢包是很正常的。
实际上你没有必要申请两个套接字啊,完全可以在一个套接字上同时收发的
lxas 2003-12-29
  • 打赏
  • 举报
回复
to:catyou
你是通过什么方式实现的哇?也是通过setsockopt来实现么?我现在想通过OVERLAPPED来控制,不知道可不可行?
catyou 2003-12-29
  • 打赏
  • 举报
回复
不会吧,我们用同一端口接收发送数据,测过流量都没有出现什么问题啊
catyou 2003-12-29
  • 打赏
  • 举报
回复
哦,我是直接用socket的,没有用到重叠的,测试过同时发送1000个登录包都能正确处理的。应该是可以的。一个接收线程做接收就可以了,

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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