UDP多对多,如何分辨数据包?

atm008 2006-03-30 11:42:34
UDP多对多的情况,因为每台机器都与多台机器通信,而发送的数据包大小不一,接收时如何确定包的大小呢?如果统一用一样大小的包,是不是会带宽消耗太多呢?
...全文
381 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
huodingx 2006-04-01
  • 打赏
  • 举报
回复
typedef struct
{
MSGID msgID;
unsigned int msgLen;
...... /* 定长的消息头 */
unsigned char data[0];
}TSendMsg;
g_abcdefg 2006-04-01
  • 打赏
  • 举报
回复
加包头,包头包含包的长度
umbrella1984 2006-03-31
  • 打赏
  • 举报
回复
gohappy_1999(碧水蓝天) ( ) 信誉:100 2006-03-30 12:44:00 得分: 0


不会,udp是基于数据报的

gohappy_1999 2006-03-30
  • 打赏
  • 举报
回复
不会,udp是基于数据报的
atm008 2006-03-30
  • 打赏
  • 举报
回复
设大一点?多大为好呢?1024?每次recvfrom只接收一个包吗?如果队列中第一个包为512byte,第二包也是512byte,那recvfrom..1024的话会不会一次收到2个包?
gohappy_1999 2006-03-30
  • 打赏
  • 举报
回复
recvfrom是把接收的长度设大点就可以了吧,根据实际接收的长度来判断数据包的大小
flinming 2006-03-30
  • 打赏
  • 举报
回复
发送的时候,加数据标志位以及所发的数据大小
FLAG+DATASIZE+DATA

18,356

社区成员

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

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