[发明专利]一种TCP流重组方法和装置有效
| 申请号: | 201610201648.4 | 申请日: | 2016-03-31 |
| 公开(公告)号: | CN107294877B | 公开(公告)日: | 2020-05-08 |
| 发明(设计)人: | 朱友志 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | H04L12/953 | 分类号: | H04L12/953 |
| 代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 tcp 重组 方法 装置 | ||
1.一种TCP流重组方法,其特征在于,包括:
针对一TCP连接,创建属于客户端的第一数组,和/或属于服务器的第二数组;
针对所述TCP连接下的含有TCP载荷的有效数据包,计算所述有效数据包的偏移量和数据长度;
当所述有效数据包属于客户端时,根据所述有效数据包的偏移量和数据长度,将所述有效数据包中的有效数据向属于客户端的第一数组存储;
当所述有效数据包属于服务器时,根据所述有效数据包的偏移量和数据长度,将所述有效数据包中的有效数据向属于服务器的第二数组存储。
2.根据权利要求1所述的方法,其特征在于,所述针对一TCP连接,创建属于客户端的第一数组,和/或属于服务器的第二数组的步骤,包括:
在所述TCP连接建立成功之后,创建属于客户端的第一数组,和/或属于服务器的第二数组。
3.根据权利要求2所述的方法,其特征在于,所述针对一TCP连接,创建属于客户端的第一数组,和/或属于服务器的第二数组的步骤,包括:
在接收所述TCP连接的数据包时,判断所接收到的数据包是否为含有TCP载荷的有效数据包;
如果所接收到的数据包是含有TCP载荷的有效数据包,判断所述有效数据包是否为第一个有效数据包;
如果所述有效数据包是第一个有效数据包,则判断所述有效数据包是否属于客户端;
如果所述有效数据包属于客户端,创建属于客户端的第一数组;
如果所述有效数据包不属于客户端,创建属于服务器的第二数组。
4.根据权利要求1所述的方法,其特征在于,所述针对所述TCP连接下的含有TCP载荷的有效数据包,计算所述有效数据包的偏移量和数据长度的步骤,包括:
计算所述有效数据包中有效数据的长度作为数据长度;
当所述有效数据包属于客户端,则根据有效数据包的TCP序列号和预先记录的第一纠偏值之差,确定所述有效数据包的偏移量;所述第一纠偏值为属于客户端的SYN包的初始序列号+1;
当所述有效数据包属于服务器,则根据有效数据包的TCP序列号和预先记录的第二纠偏值之差,确定所述有效数据包的偏移量;所述第二纠偏值为属于服务器的SYN包的初始序列号+1。
5.根据权利要求1-4其中之一所述的方法,其特征在于,在针对所述TCP连接下的含有TCP载荷的有效数据包,计算所述有效数据包的偏移量和数据长度之后,还包括:
当所述有效数据包属于客户端,则判断所述有效数据包的偏移量和数据长度之和,是否大于第一数组的数组长度;
如果所述有效数据包的偏移量和数据长度之和,大于第一数组的数组长度,则创建一个新的第一数组,所述新的第一数组的数组长度超过原来的第一数组第一阈值;
将原来的第一数组中存储的数据复制到新的第一数组中,并将未存储过的有效数据包的有效数据存储至新的第一数组中。
6.根据权利要求1-4其中之一所述的方法,其特征在于,在针对所述TCP连接下的含有TCP载荷的有效数据包,计算所述有效数据包的偏移量和数据长度之后,还包括:
当所述有效数据包属于服务器,则判断所述有效数据包的偏移量和数据长度之和,是否大于第二数组的数组长度;
如果所述有效数据包的偏移量和数据长度之和,大于第二数组的数组长度,则创建一个新的第二数组,所述新的第二数组的数组长度超过原来的第二数组第二阈值;
将原来的第二数组中存储的数据复制到新的第二数组中,并将未存储过的有效数据包的有效数据存储至新的第二数组中。
7.根据权利要求5所述的方法,其特征在于,还包括:
在将原来的第一数组中存储的数据复制到新的第一数组中之后,将原来的第一数组释放。
8.根据权利要求6所述的方法,其特征在于,还包括:
在将原来的第二数组中存储的数据复制到新的第二数组中之后,将原来的第二数组释放。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610201648.4/1.html,转载请声明来源钻瓜专利网。





