当前位置:项目开发->项目经验 ->云平台开发架构分析系列6:数据包的处理逻辑分析3(数据包解析实现思路)

原创版权标志云平台开发架构分析系列6:数据包的处理逻辑分析3(数据包解析实现思路)

作者:codexia  发表时间:2017/6/22 9:23:32  阅读:
[摘要] 本文针对数据包的组装和解析做了详细的分析,并提供了两种解析协议的实用方法,可以供您解析协议参考,还提供了组装协议的基本实现思路。
   在《云平台开发架构分析系列5:数据包的处理逻辑分析2(数据包拆包实现思路) 》一文中,我已经将数据包拆包的问题的实现思路做了详细的分析。本篇将对数据包协议的解析做一个分析,让你知道数据包协议解析的相关事情。数据包的处理也就分析到解析数据包,对于数据包的业务处理就因具体的业务而不同,没有必要分析了。而回复客户端数据包,也是封装数据包的过程,其实也是解析数据包的逆向过程,在本文会做一个介绍的。
    学习过计算机网络的同学应该很清楚各种协议的定义格式,我说的是格式,不是具体每一个字段的含义哦。各种协议都是按照字节顺序依次定义了各个字段的含义。我们不管是解析协议还是自己组装协议报文,也都是按照协议这样的各个字节的定义来的。不过组装协议数据包和解析还是稍有差别,我来单独说说。

1.组装协议数据包
    我们来看看TCP协议的定义图:
    TCP协议的定义图
    每一个段都是由一定的比特数组成的,源端口占了16比特,也就是2个字节。目的端口也是两个字节。后续的也都是差不多的,无非就是位数长短的问题。对于只需要一个...【登录后阅读更多内容】
文章来源:C++技术网原创文章版权为网站和作者共同所有,会员文章禁止转载。非会员文章转载做好本文超链接即表示授权转载。通过文章下面的分享按钮可以自由分享所有文章。

返回顶部

在线提问
问题标题:
问题描述:(简陋的描述会导致问题被最后回答、没有针对性回答甚至无法解答。请确保问题描述的足够清楚。)