专栏名称: 奥斯特洛司机
朝闻道,夕死矣。为中产而奋斗的小编
目录
相关文章推荐
21世纪经济报道  ·  #这届年轻人把养生玩出了新花样##中药代茶饮 ... ·  昨天  
第一财经  ·  凌晨重磅!美联储宣布→ ·  2 天前  
21世纪经济报道  ·  走进百家ESG先锋|伊利集团:从“零碳工厂” ... ·  3 天前  
51好读  ›  专栏  ›  奥斯特洛司机

5.8、ET\LT深释、服务器设计、粘包、缺包解决

奥斯特洛司机  · 简书  ·  · 2019-04-09 20:57

正文

1、ET,LT模式深入分析及测试
2、我们的服务器设计
2.1、服务器设计原则总述
2.2、收发包格式问题提出
2.3、TCP粘包,缺包
2.3、TCP粘包,缺包解决

粘包:要解决就是把几个包拆出来。一个是一个。
1、加个特殊符号作为结尾,但是不太好。恶意数据包不好处理。
服务器程序员不能假设收到的数据包都是善意的,合理的,构造畸形数据包。
如何解决拆包问题:
给收发的数据包定义一个统一的格式;c/s都按照这个格式来,就能解决粘包问题。
包格式:包头加包体的格式:其中包头是固定长度【10字节】,在包头中有一个成员变量会记录整个包【包头+包体】的长度。这样的话,先收包头,知道整个包的长度,减去包头的长度,就等于包体的长度。。再收包体长度,一直到收满了包体长度的字节数,就认为一个完整的数据包收完。







请到「今天看啥」查看全文