UDP的sendto和recvfrom,数据是怎么按照协议处理的? 30
我对利用SOCKET收发UDP数据的理解是:sendto的时候,所发送的数据加上UDP报头封装成帧,然后发送;recvfrom的时候,所接收的数据是帧去掉UDP报头的内容...
我对利用SOCKET收发UDP数据的理解是:sendto的时候,所发送的数据加上UDP报头封装成帧,然后发送;recvfrom的时候,所接收的数据是帧去掉UDP报头的内容--比如
WSABUF wsabuf;
wsabuf.buf=new char[1024];
wsabuf.len=1024;
DWORD dwRead;
DWORD dwFlag=0;
WSARecvFrom(m_socket, &wsabuf, 1, &dwRead, &dwFlag, (SOCKADDR*) &addrFrom, &len, NULL,NULL)
这里,wsabuf.buf的数据是去掉UDP报头的,而wsabuf.len也是不包含UDP报头的(如果缓冲区不满,wsabuf.len就是缓冲区里的有的数据的长度)...
大神求助,我的理解可否正确?对UDP和SOCKET理解不够深刻,望大神指导,不胜感激! 展开
WSABUF wsabuf;
wsabuf.buf=new char[1024];
wsabuf.len=1024;
DWORD dwRead;
DWORD dwFlag=0;
WSARecvFrom(m_socket, &wsabuf, 1, &dwRead, &dwFlag, (SOCKADDR*) &addrFrom, &len, NULL,NULL)
这里,wsabuf.buf的数据是去掉UDP报头的,而wsabuf.len也是不包含UDP报头的(如果缓冲区不满,wsabuf.len就是缓冲区里的有的数据的长度)...
大神求助,我的理解可否正确?对UDP和SOCKET理解不够深刻,望大神指导,不胜感激! 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏30(财富值+成长值)
1个回答
2014-12-05
展开全部
自己接收到完整的包,再处理这个包
追问
这句话太抽象了,小弟理解不了啊!
接收到完整的包,怎样叫做完整的包,这完整的包都包含哪些内容?
比如发送2048字节16进制的字符,要接收这些字符,怎样才是完整的包,接收到的就是这些16进制字符吗?还包含其他内容(UDP报头什么的)吗?
处理这个包,又要怎么理解?
大神啊,帮助一下啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询