社区
C++ 语言
帖子详情
TCP通信协议包头定义
马壮mz
2015-07-27 09:18:11
使用TCP通信协议时,数据报中有无必要定义包头包尾呢,Tcp协议能完全彻底的确保通信内容的正确与否,
...全文
646
4
打赏
收藏
TCP通信协议包头定义
使用TCP通信协议时,数据报中有无必要定义包头包尾呢,Tcp协议能完全彻底的确保通信内容的正确与否,
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
www_adintr_com
2015-07-27
打赏
举报
回复
TCP 传输的内容是有校验的,保证传输的准确性,如果校验失败会要求发送方重新发送。 如果真有那么巧,校验和字段和某个数据同时在传输中产生了错误,而且错来刚好匹配上了校验和,那还是有可能收到错误数据的。不过这种情况出现的概率低得可以认为它不存在。
jiqiang01234
2015-07-27
打赏
举报
回复
1、tcp传输消息时需要自定义包头包尾(即帧协议),因tcp是二进制流协议,没有消息边界,无法自动完成“分包”的功能 2、自定义帧协议可以提高tcp的可靠性(tcp不保证100%可靠收发),更强的可靠性需要自定义来保证 3、自定义的帧协议能更好的根据业务逻辑来定义数据
飞翔的薄荷
2015-07-27
打赏
举报
回复
包头应该要加标示,tcp没问题,但是你自己写的代码解析错误,导致数据混乱,也是有可能的。
赵4老师
2015-07-27
打赏
举报
回复
不知道有多少前人掉在TCP Socket send(人多)send(病少)send(财富) recv(人多病)recv(少财富) 陷阱里面啊!
http://bbs.csdn.net/topics/380167545
socket编程里,如何设计自
定义
通信协议
的
包头
?
如题。 各位在socket编程时,有没有在自
定义
的
通信协议
中设计
包头
?这个
包头
的设计需要考虑哪些因素呢? 例如,看到过一个网络程序中,自
定义
包头
有如下两个字段: 8字节的自
定义
包头
标识,CRC
包头
校验字段。那么,还需要考虑哪些字段? 补充问题:由于
TCP
协议本身就是非常可靠的,这样的
包头
标识和校验是否有必要呢? 表面上看起来,加帧标志是没有必要的,但你必须能够忍受网络
fastdfs-
通信协议
-自
定义
指令码拓展
FastDFS采用二进制
TCP
通信协议
。一个数据包由
包头
(header)和包体(body)组成。
包头
只有10个字节。
一个简单的自
定义
通信协议
(socket)
一个简单的自
定义
通信协议
(socket)
socket应用之从电脑发送图片到手机(2)之发送和接收数据
服务端发送图片数据处理和客户端接收图片数据处理逻辑,发送端采用C#,接收端采用dart.
C++ 语言
65,214
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章