收录日期:2019/06/26 10:34:43 时间:2016/05/20 21:31:29 标签:网络通信
1、传输层使用UDP协议
2、在UDP之上加了个可靠通信协议
请问:IP报文,UDP报文等的报头是如何与报文数据结合起来的?又是如何区分的?程序实现时是怎么做的呢?我要实现的应用层通信协议其报头该如何在程序中表示啊?

高分相送!
应用层协议不需要考虑报文的结构,报文结构对应用层来说应该是透明的。

用socket编程的话,recv(),recvfrom()接收的数据就是报文数据。
应用层协议可用socket编程实现,
因此可看socket编程资料
谢谢上面两位高手

我正考虑用socket编程实现
但有以下问题:1、我应用层协议也有个首部,即应用层首部,并且这个首部有几十个字段,这些字段都是按比特来计算的,难点在于,前一个字段的值可以决定后面的字段是否在首部中出现。这该如何实现呢?我想开个临时缓冲区,将首部字段一个字节一个字节的处理,这样可不可以啊?有没有这方面的例子呢?
    

谢谢!
前一个字段的值可以决定后面的字段是否在首部中出现
--------------------------------------------------

有意义吗?

参考一下IP、TCP包的结构吧
UDP包你发送的是什么形势,接收到的就是什么形式,前提是不要超过UDP的最大报文段,也就是说recvfrom接收回来的数据包是完整的,数据包有个大小,你按照大小将接收回来的缓存一个字节一个字节的处理就行
这就是你自己的数据的问题了,完全看你如何设计。
与TCP、UDP无关
当然可以。

参考其他协议(ip)扩展头的方法或用有限状态机的思想。
itbst(itbst) ( )说的很好,点出了关键
请问哪里能找到类似QQ,MSN的程序呢?请发到cypher_guo@163.com,要源码。例子一到即结贴。多谢itbst(itbst)等大侠。

徘徊是否该学Java? 考证 徘徊是否该学Java? 考证 怎么让xp的D\\E\\F盘,不可以创建、修改、删除文件? 我想让psw的zf为1,该怎么改比较合适 java.net.SocketException: Connection reset by peer: socket write error 大家进来帮看看 android添加开机铃音的最终解决方案 新来的朋友,有知道疯客联盟的吗? 跪求javas清空cookies 求助关于typedef里面winapi的问题 EVC使用Data Time Picker控件问题 WIN7下控制程序音量的问题(Core Audio API) 关于Java中包和继承的问题 用linq操作数据库与用t-sql操作数据库,哪一个更好? sharepoint 怎么把UserProfile的抓取从默认的AD Server换成LDAP ado操作sql server2008频率问题。 mysql C api下验证用户输入的帐号密码是否匹配。 那个大佬有java swing方面的电子书 datetime数据类型在页面上的显示问题 求vs真三全图 不知道怎么样才能替换这些(类似于UBB) 谁能详细说下Toggle DNS Check是啥作用 网卡如果空闲久了就联不上网 *****XML序列化问题*******高分 VC++与数据库 用类模板作为函数参数的错误 QListView在多选模式下如何快速获取选中项 OLEOBJECT有BUG。。。 SQL中取一個時間段裏面的每一天