[发明专利]一种高效的tcp会话重组方法有效
申请号: | 201711052422.3 | 申请日: | 2017-10-31 |
公开(公告)号: | CN107743102B | 公开(公告)日: | 2020-01-31 |
发明(设计)人: | 林飞;柯彦伟;赵喜荣;聂军;毛俊 | 申请(专利权)人: | 北京亚鸿世纪科技发展有限公司 |
主分类号: | H04L12/953 | 分类号: | H04L12/953;H04L12/951;H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100082 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种高效的tcp会话重组方法涉及信息技术领域,本发明由会话缓存过程的流程、数据重组总体流程、数据块编号计算流程完成;与以往的报文重组方案相比,本发明通过B+树直接将报文组织成有序的数据结构,可以保证在乱序报文较多的时候也不会因为频繁的数据查找而降低重组效率,这个改进算法可以明显提升在乱序报文较多场景下重组系统的效率及整体性能,同时本方案简化了SEQ的比较流程和TCP会话的重组过程,使TCP会话重组过程及软件实现变得简单高效。 | ||
搜索关键词: | 一种 高效 tcp 会话 重组 方法 | ||
【主权项】:
1.一种高效的tcp会话重组方法,其特征在于由会话缓存步骤,数据重组步骤,数据块编号步骤完成;/n(1)会话缓存步骤/n1)接收TCP报文后,根据IP和端口查询出对应的会话表项信息;/n2)根据当前TCP报文的SEQ值,负载长度,以及会话表项中保存的会话起始、结束偏移,计算出当前数据包对应数据块的起始偏移,结束偏移以及数据块编号;/n起始、结束偏移值的计算方法为:若当前报文的SEQ值小于会话起始偏移值则起始偏移应为当前报文的SEQ值加上32位无符号整数的最大值,否则起始偏移值应为当前报文的SEQ值;结束偏移应为起始偏移值加上数据包长度;/n3)根据数据块编号在B+树中查找对应的数据块信息;数据块信息包含本数据块的起始偏移、结束偏移,以及本数据块的使用状态,本数据块的使用状态是数据块中的一个数据段,以每一位表示一个字节信息,当对应的数据位的字节已经填充则将其置为1;/n4)当找不到数据块,则申请新的数据块内存,初始化数据块编号,数据块起始、结束偏移,并插入到B+树中;/n数据块起始偏移为数据块编号乘以数据块大小,数据块结束偏移为数据块起始偏移加上数据块大小;/n5)更新查找到的数据块的数据和新插入的数据块上的数据,同步更新数据块使用标记;/n具体的更新方法为:将本数据块对应数据包的数据拷贝到待更新数据块的数据存储位置,并更新数据块使用标记,将对应数据位置标记为1;/n(2)数据重组步骤/n1)从驱动或其他报文捕获装置上接收TCP报文;/n2)判断报文是否是上行或者下行报文的首包,若报文是SYN或者SYN+ACK报文,则根据此报文的IP和端口信息创建会话表项,并记录会话起始偏移、结束偏移;/n起始偏移、结束偏移的值为首包的SEQ值+1;/n会话表项包含会话数据缓存过程所需的B+树结构以及,会话起始、结束偏移,会话结束标记;/n其中B+树结构将以数据块编号作为KEY;/n3)判断接收到的报文是否是本会话最后一个包,若是则更新会话信息中的结束偏移,结束偏移值应为报文的SEQ值;/n同时在会话表项中置会话结束标记;/n4)对数据报文执行报文数据缓存操作;/n5)检查是否有会话结束标记,若有则执行数据重组;/n重组时只需遍历会话表项中的B+树,将对应块结构中的数据输出即可;/n重组过程中根据数据块中的使用状态标记,确认是否有数据块丢失,根据会话的起始偏移和结束偏移确认重组数据的结束;/n若重组了该会话起始偏移和结束偏移之间的所有数据且无数据块丢失则重组完成,否则表示会话失败,重组无法完成,丢弃重组数据;/n(3)数据块编号步骤/n1)将当前偏移值初始化为数据包起始偏移值;/n2)将起始偏移值除以系统中定义的数据块固定大小值获取商数,作为当前数据偏移数据块编号;/n3)当前的数据块编号对应的数据块结束偏移值<=数据包的结束偏移值表示当前数据包属于更多的数据块,将当前偏移值更新为数据块结束偏移值+1,迭代计算下一个数据块编号。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京亚鸿世纪科技发展有限公司,未经北京亚鸿世纪科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711052422.3/,转载请声明来源钻瓜专利网。
- 同类专利
- 一种高效的tcp会话重组方法-201711052422.3
- 林飞;柯彦伟;赵喜荣;聂军;毛俊 - 北京亚鸿世纪科技发展有限公司
- 2017-10-31 - 2020-01-31 - H04L12/953
- 一种高效的tcp会话重组方法涉及信息技术领域,本发明由会话缓存过程的流程、数据重组总体流程、数据块编号计算流程完成;与以往的报文重组方案相比,本发明通过B+树直接将报文组织成有序的数据结构,可以保证在乱序报文较多的时候也不会因为频繁的数据查找而降低重组效率,这个改进算法可以明显提升在乱序报文较多场景下重组系统的效率及整体性能,同时本方案简化了SEQ的比较流程和TCP会话的重组过程,使TCP会话重组过程及软件实现变得简单高效。
- 分布式系统的消息全序机制-201810515834.4
- 张霖涛;白巍;左格非;李博杰 - 微软技术许可有限责任公司
- 2018-05-25 - 2019-12-03 - H04L12/953
- 本公开公开的分布式系统的消息全序机制,通过时间戳结合消息屏障的方式来实现消息的全序控制,并利用交换机对屏障进行处理,有效地提高了实现消息全序控制的处理效率。
- 专利分类