UDP一个客户端如何同时接收多个服务器的数据?

芝心的鱼 2017-03-27 09:34:38
我写了一个UDP异步通讯的程序,PC作为客户端,要同时接收多个服务器发来的数据,用WSAAsyncSelect判断FD_READ,然后调用自己写的接收函数。
现在我的问题是,接收的数据怎么确定是哪个服务器发来的? 调用RecvFrom函数怎么写?
...全文
3589 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
rongewu2013 2019-06-27
  • 打赏
  • 举报
回复
UDP没有客户端和服务器分吧,通过接收包的地址判断
smwhotjay 2019-06-21
  • 打赏
  • 举报
回复
recvfrom 有个参数就是来源地址。如此分辨服务器。
pxh001 2019-06-21
  • 打赏
  • 举报
回复
sichuanwww 2017-09-26
  • 打赏
  • 举报
回复
euber2 2017-09-26
  • 打赏
  • 举报
回复
客户端要连接到服务器,都会分配一个socket描述符号,然后每接收到一个包,在回调函数中把socket描述符一起当作参数就可以标识了
小竹z 2017-03-30
  • 打赏
  • 举报
回复
接收时会返回发送方IP,如果不能通过ip来判断,可以在传输数据里加入标识额
kakabulusi 2017-03-28
  • 打赏
  • 举报
回复
客户端没有接收多服务器的功能,
但是可以开放多个端口链接不同的服务器。
端口定了服务器也就定了。
赵4老师 2017-03-28
  • 打赏
  • 举报
回复
使用多进程。
sichuanwww 2017-03-28
  • 打赏
  • 举报
回复
zgl7903 2017-03-28
  • 打赏
  • 举报
回复
int recvfrom( _In_ SOCKET s, _Out_ char *buf, _In_ int len, _In_ int flags, _Out_ struct sockaddr *from, _Inout_opt_ int *fromlen ); from 就包含了发送端的ip地址 https://msdn.microsoft.com/en-us/library/windows/desktop/ms740120(v=vs.85).aspx

18,356

社区成员

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

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