发明名称 一种高速网络的内容还原方法
摘要 本发明涉及高速网络的内容还原方法,包括步骤1:将捕获的数据包放入环形缓冲;步骤2:读取数据包并解析获得IP多元组,再计算得到散列值;步骤3:判断散列值是否是新的,若是,执行步骤4,若否,执行步骤5;步骤4:存储报文;步骤5:使用IP多元组在解决冲突的拉链中查找对应的TCP连接会话,若没有找到,解决散列值冲突后返回步骤4,否则执行步骤6;步骤6:进行数据包内容连接,将连接成功的放入排好序的链表中,将连接失败的放入失序的链表等待下一次的重组,然后返回步骤1,同时多个线程分别将各自分段处理的已经完成的重组内容写入硬盘。本发明能够在高速网络环境下,高效、实时地进行高速网络内容还原。
申请公布号 CN102761517B 申请公布日期 2015.06.24
申请号 CN201110103817.8 申请日期 2011.04.25
申请人 工业和信息化部电信传输研究所 发明人 魏亮;谢玮;邓东丰;杨剑锋;祝卓;田慧蓉
分类号 H04L12/70(2013.01)I 主分类号 H04L12/70(2013.01)I
代理机构 北京连和连知识产权代理有限公司 11278 代理人 王光辉
主权项 一种高速网络的内容还原方法,其特征在于,包括以下步骤:步骤1:将捕获的数据包放入预先分配好的环形缓冲;步骤2:从环形缓冲中读取数据包并开始内存重组并进行解析,获得TCP连接会话的IP多元组,再通过散列函数计算得到散列值;步骤3:判断所述散列值是否是新的,若是,执行步骤4,若否,执行步骤5;步骤4:存储报文并记录该报文的序列号或应答号,然后返回步骤1;步骤5:使用IP多元组在解决冲突的拉链中查找对应的TCP连接会话,若没有找到对应的TCP连接会话,解决散列值冲突后返回步骤4,否则执行步骤6;步骤6:根据TCP协议以及步骤4中记录的序列号或应答号进行数据包内容的连接,将连接成功的放入排好序的链表中,将连接失败的放入失序的链表等待下一次的重组,然后返回步骤1,其中,下一次的重组在下一次连接成功后被触发;同时,多个线程分别将各自分段处理的已经完成的重组内容写入硬盘,并保留排好序的最后一个数据包;当该TCP连接会话全部重组完毕,将保留的最后一个数据包写入硬盘;其中,采用分段无锁的多线程处理内存重组的方法,对重组后的数据采用部分重组数据包写入硬盘的技术。
地址 100191 北京市海淀区花园北路52号B座