网络通信设计

网络通信协议设计

1 粘包问题

粘包就是连续向对端发送两个或者两个以上的数据包,对端在一次收取中收到的数据包数量可能大于1个,当大于1个时,可能是几个(包括一个)包加上某个包的部分,或者干脆几个完整的包在一起。当然,也可能收到的数据只是一个包的部分,这种情况一般也叫作半包。
粘包问题示意:
粘包问题示意
解决办法:

  1. 固定包长的数据包
  2. 以指定的字符(串)为包的结束标志位
  3. 包头+包体格式:包头是固定大小的,且包头必须包含一个字段来说明接下来的包体有多大。
posted @   lihaihui199102  阅读(103)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示