CN112769520B - 一种基于ip分片的完整数据包留存方法及系统 - Google Patents

一种基于ip分片的完整数据包留存方法及系统 Download PDF

Info

Publication number
CN112769520B
CN112769520B CN201911069953.2A CN201911069953A CN112769520B CN 112769520 B CN112769520 B CN 112769520B CN 201911069953 A CN201911069953 A CN 201911069953A CN 112769520 B CN112769520 B CN 112769520B
Authority
CN
China
Prior art keywords
data packet
fragment
information
complete
chain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911069953.2A
Other languages
English (en)
Other versions
CN112769520A (zh
Inventor
宋磊
王晨辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Scv Technology Co ltd
Institute of Acoustics CAS
Original Assignee
Beijing Scv Technology Co ltd
Institute of Acoustics CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Scv Technology Co ltd, Institute of Acoustics CAS filed Critical Beijing Scv Technology Co ltd
Priority to CN201911069953.2A priority Critical patent/CN112769520B/zh
Publication of CN112769520A publication Critical patent/CN112769520A/zh
Application granted granted Critical
Publication of CN112769520B publication Critical patent/CN112769520B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及信息通讯中的网络层、传输层数据包的处理以及网络数据传输与留存技术领域,具体涉及一种基于IP分片的完整数据包留存与导出方法,该方法包括:对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;对重组后的IP分片数据包进行重填第一分片的首部信息后,并与剩余分片组合形成链状巨帧格式的数据包;根据基于留存的六元组信息的留存标准,从链状巨帧格式的数据包中筛选符合留存标准的数据包并留存,获得留存的IP分片数据包;将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储。

Description

一种基于IP分片的完整数据包留存方法及系统
技术领域
本发明属于信息通讯中的网络层、传输层数据包的处理以及网络数据传输与留存技术领域,具体涉及一种基于IP分片的完整数据包留存方法及系统。
背景技术
在现有的网络模型架构TCP/IP中,首先,不同物理性质的网络传输情况不同,这不仅体现在传输速度上,更体现在所能传输的最大数据包大小上,即最大传输单元(MaximumTransmission Unit,简写为MTU)。其中,网络层和传输层是独立于链路层的基础传输技术,当一个网络需要发送数据包通过一个MTU较小的网络时,IP层会在提交数据包到链路层之前将数据包分片,以保证物理层数据包的大小不会超过当前网络的MTU。
需要注意的是,在IPv4中,IP分片的功能是在网络层实现的,所以作为该网络层的最高处理单元都可以执行IP分片的命令,即发送端、网络中的转发路由器等等都有执行IP分片的权利;但是,在IPv6中,不允许路由器执行IP分片,发送端在发送数据包之前,必须提前确定整个网络链路的最小MTU,以确保数据包发送成功。
由于MTU的存在,当接收端收到数据包之后,会在IP层进行IP分片并重组,根据源IP、协议版本和IP分片标识号来确定是否属于同一IP数据包,当接收到全部IP分片数据包后,完成重组。
但是,在网络数据包留存设备与系统中,接收到的是网络中最原始的数据包,由于传输层对于网络层而言是透明的,所以网络层并不知道也不需要知道传输层的首部,这种情况下,在IP分片数据包中,只有第一片IP分片会具有传输层的首部,其余IP分片均没有传输层的首部信息,如图1所示。这样就使得留存设备与系统记录的数据包缺失部分信息,当用户需要按照数据包的四元组信息,即源IP、目的IP、源端口和目的端口,留存和导出符合条件的数据包时,会缺失IP分片的其余分片数据包,这是一个比较严重的问题。为了解决该问题,需要在留存数据包的同时使IP分片数据包重组完成,使得每个留存下来的数据包包含完整的网络层、传输层等首部信息,这样需要提出一种针对IP分片的完整数据包留存和导出方法。
目前,处理IP分片数据包,并将其留存和导出的方法有:
第一种,专利名称《一种分片报文的重组方法》(专利申请号:200610034570.8):该专利提出了一种根据IP协议版本、IP分片标识字段和源IP地址建立三级索引表,根据这三级索引查找到对应的重组信息表,完成对IP分片报文的重组,具有内存需求小而且实时性好的特点。但是,这种建立多级索引的方式,在网络数据包留存系统与设备中需要额外维护索引表,增加设备的工作量,而且由于该方法仅对源IP地址进行了索引,当出现交叉流以及一对多复杂传输时的情况,极有可能出现索引不匹配导致重组失败或者增加索引时间的情况,这对于留存及导出是很不利的。
第二种,tcpdump抓包和Wireshark重组分析:tcpdump是一个用于截取网络分组,并输出分组内容的工具;tcpdump抓取IP分片的数据包时,将会截取完整的原始网络数据包,不做任何处理的存储下来。Wireshark则是一款网络数据包分析软件,使用Wireshark分析tcpdump抓取的IP分片数据包时,Wireshark会在执行程序中完成IP重组的功能,即依次读取数据包的IP首部信息,将可以完成重组的数据包的信息分析完成。但是,这种保留原始包,在导出分析时进行重组的方法缺点在于将计算压力完全置于导出分析系统一侧,致使在快速导出分析数量庞大的数据包时,性能不佳,并且存在重组失败的风险,将风险暴露在整个流程的最后,浪费前部分的计算以及存储资源。
从以上两种现有的技术方案来看,现有技术在处理IP分片数据包时,过于冗余的查找计算会破坏时延敏感的程序处理能力,不能提供一种留存并导出完整数据包的方法。
发明内容
本发明的目的在于,为解决现有的方法存在的上述缺陷,本发明提出了一种基于IP分片的完整数据包留存方法,
为了实现上述目的,本发明提出了一种基于IP分片的完整数据包留存方法,该方法包括:
对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;
对重组后的IP分片数据包进行重填第一分片的首部信息后,并与剩余分片组合形成链状巨帧格式的数据包;
根据基于留存的六元组信息的留存标准,从链状巨帧格式的数据包中筛选符合留存标准的数据包并留存,获得留存的IP分片数据包;
将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储。
作为上述技术方案的改进之一,所述方法还包括:根据不同的导出标准,从存储下来的单独的完整数据包中导出符合导出标准的数据包。
作为上述技术方案的改进之一,所述对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;具体为:
根据网络层信息中的IP协议版本、源IP、目的IP以及IP分片标志号,将接收到的IP分片数据包分类,获得分类后的不同IP分片;
根据IP协议版本、源IP、目的IP以及IP分片标志号,将分类后的不同IP分片置于分片重组表的相应节点中,在预设的超时时间段内,若接收了全部分片报文,则认为重组成功,获得链状巨帧格式的数据包;若未接受到,则认为重组失败,回收释放已接收到的报文。
作为上述技术方案的改进之一,所述链状巨帧格式的数据包的结构是链状巨帧格式的报文;其中,第一分片作为链表的表头,存储结构中应存储完整的以太网数据包的长度、完整的网络层、传输层协议首部信息,剩余分片按照顺序依次挂接在链表的表头部的后面。
作为上述技术方案的改进之一,所述将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储;具体为:
当链状巨帧格式的数据包满足留存标准的时候,开始执行数据包转化留存过程:
根据链状巨帧格式的首部信息填充至将要转化合成的单独的完整数据包,其中,单独的完整数据包的传输层首部信息由IP分片的第一分片的传输层协议的首部信息确定;其中,传输层首部信息包括:源IP、目的IP、源端口号、目的端口号;
完成填充首部信息后,依次按顺序将IP分片数据包中的剩余的有效载荷的非重叠部分填充到相应的数据部分,确定关键信息之后,整合所有IP分片的有效载荷,并转换形成一个单独的完整有效载荷,获得单独的完整数据包;
最后完成封装链状巨帧格式所需的部分信息,将已经转换完成的单独的完整数据包以文件形式压缩存储在存储介质中。
作为上述技术方案的改进之一,所述关键信息包括:独立的完整数据包的传输层信息、时间戳和数据包总长度;
其中,所述单独的完整数据包的传输层信息由IP分片的第一分片的传输层协议首部信息确定;
所述单独的完整数据包的时间戳信息由到达网卡的第一个分片的时间所确定;其中,所述第一个分片为IP分片的第一片或剩余分片中的一个;
所述单独的完整数据包的总长度信息由协议首部长度与所有IP分片数据包有效载荷的实际有效长度之和所确定;
根据不同的导出标准,从存储下来的单独的完整数据包中,用户按需求导出符合导出标准的数据包。
本发明还提供了一种基于IP分片的完整数据包留存与导出系统,该系统基于上述方法实现,该系统包括:
分类与重组模块,用于对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;
组合模块,用于对重组后的IP分片数据包进行重填第一分片的首部信息后,并与剩余分片组合形成链状巨帧格式的数据包;
留存模块,用于根据基于留存的六元组信息的留存标准,从链状巨帧格式的数据包中筛选符合留存标准的数据包并留存,获得留存的IP分片数据包;和
转换与存储模块,用于将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储。
作为上述技术方案的改进之一,所述系统还包括:导出模块,用于根据不同的导出标准,从存储下来的单独的完整数据包中导出符合导出标准的数据包。
本发明还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的方法。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行所述的方法。
本发明相比于现有技术的有益效果在于:
在截取到IP分片数据包后,完成分类和重组,留存下来的数据包是一个完整的、具有传输层首部的独立的数据包,与没有分片的数据包完全相同,在保证数据完整性的同时,确保了导出时可以根据六元组信息进行导出,不需要进行额外处理,保证了导出分析的效率。
附图说明
图1是现有技术中的IP分片的结构示意图;
图2是本发明的一种基于IP分片的完整数据包留存方法的流程图;
图3是本发明的一种基于IP分片的完整数据包留存方法的一个具体实施例的流程图;
图4是本发明的一种基于IP分片的完整数据包留存方法中的链状巨帧格式数据包转为完整数据包的流程图。
具体实施方式
现结合附图对本发明作进一步的描述。
如图2所示,本发明提供了一种基于IP分片的完整数据包留存方法,在接收到IP分片的数据包后,通过网络层信息进行分类和重组,在保持第一IP分片的完整传输层信息的情况下,将后续IP分片按顺序依次挂接在第一IP分片之后形成链状巨帧格式的数据包,然后再将该链状巨帧格式的数据包按照留存的六元组条件存储下来,最后可以根据基于六元组信息,规则导出所需的每个带有完整传输信息的IP分片数据包。通过本方法可以解决除了第一IP分片数据包外,其余的IP分片数据包的缺少完整传输层信息的问题,由于在接收并处理数据包的过程中完成重组,所以可在网络数据包留存设备与系统中实现IP分片数据包的完整存储和高效导出。
该方法包括:
对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;
对重组后的IP分片数据包进行重填IP分片的第一分片的首部信息后,并将剩余的分片按顺序依次挂接在第一分片之后组合形成链状巨帧格式的数据包;
具体地,所述利用重组后的IP分片数据包,获取链状巨帧格式的数据包具体为:
重组前,根据网络层信息中的IP协议版本、源IP、目的IP以及IP分片标志号,将接收到的IP分片数据包分类,获得分类后的不同IP分片;其中,IPv4需计算IP首部地址,IPv6需要计算IP首部地址及IP分片扩展字段的首部地址;
重组时,根据IP协议版本、源IP、目的IP以及IP分片标志号,将分类后的不同IP分片置于分片重组表的相应节点中,在预设的超时时间段内,若接收了全部分片报文,则认为重组成功,获得链状巨帧格式的数据包;若未接受到,则认为重组失败,回收释放已接收到的报文;
重组成功时,输出的链状巨帧格式的数据包的结构是链状巨帧格式的报文,其中,第一个分片作为链表的表头,存储结构中应存储完整的以太网数据包的长度,完整的网络层、传输层协议首部信息,剩余分片按照顺序依次挂接在链表头部的后面,以不同的链表节点的形式存在,其结构不包含任何协议的首部信息,只有有效载荷。
所述链状巨帧格式的数据包的第一分片作为链表头,结构中存储了完整的以太网数据包的长度,完整的网络层、传输层协议的首部信息;
所述链状巨帧格式的数据包的剩余分片按照顺序依次挂接在链表头部的后面;其中,剩余分片不包含任何首部信息,只有有效载荷。
根据基于留存的六元组信息的留存标准,从链状巨帧格式的数据包中筛选符合留存标准的数据包并留存,获得留存的IP分片数据包;
其中,所述留存标准为包含但不限于源IP、目的IP、源端口号、目的端口号及其各种组合;凡符合留存标准匹配的数据包均予以留存,以备导出分析使用。
将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储;
具体地,如图4所示,当链状巨帧格式的数据包满足留存标准的时候,开始执行数据包转化留存过程。根据链状巨帧格式的首部信息填充至将要转化合成的单独的完整数据包,其中,单独的完整数据包的传输层首部信息由IP分片的第一分片的传输层协议的首部信息确定;其中,传输层首部信息包括:源IP、目的IP、源端口号、目的端口号;
完成填充首部信息后,依次按顺序将IP分片数据包中的剩余的有效载荷的非重叠部分填充到相应的数据部分,整合所有IP分片的有效载荷,并转换形成一个单独的完整有效载荷,获得单独的完整数据包;
最后完成封装链状巨帧格式所需的部分信息,将已经转换完成的单独的完整数据包以文件形式压缩存储在存储介质中。
所有重组成功的IP分片数据包最终都以单独的完整数据包的形式存储下来,重组后的IP分片数据包中,其首部并非IP分片,且第一IP分片的首部包含完整的传输层信息;其中,重组不成功的IP分片不被存储。
在确定了单独的完整数据包的关键信息之后,整合所有IP分片的有效载荷成为一个完整的有效载荷,然后以文件形式存储在存储介质中。所述关键信息包括:独立的完整数据包的传输层信息、时间戳和数据包总长度;
其中,所述单独的完整数据包的传输层信息由IP分片的第一分片的传输层协议首部信息确定;
所述单独的完整数据包的时间戳信息由到达网卡的第一个分片的时间所确定;其中,所述第一个分片为IP分片的第一片或剩余分片中的一个;
所述单独的完整数据包的总长度信息由协议首部长度与所有IP分片数据包有效载荷的实际有效长度之和所确定;
根据不同的导出标准,从存储下来的单独的完整数据包中,用户按需求导出符合导出标准的数据包。
由于网络数据包中的IP分片数据包已重组完毕,并以单独的完整数据包的格式存储在存储介质中,与一般的数据包完全相同,此时即可执行导出的行为;
所述导出标准由用户按需指定,在相应时间范围内依次匹配所有数据包的对应条目,完全匹配的数据包被写入另一文件以备导出分析使用。
其中,导出标准是包括但不限于六元组信息和时间范围;其中,所述六元组信息为源MAC地址(Media Access Control Address,物理地址)、目的MAC地址、源IP、目的IP、源端口号和目的端口号。
本发明还提供了一种基于IP分片的完整数据包留存与导出系统,该系统基于上述方法实现,该系统包括:
分类与重组模块,用于对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;
组合模块,用于对重组后的IP分片数据包进行重填第一分片的首部信息后,并与剩余分片组合形成链状巨帧格式的数据包;
留存模块,用于根据基于留存的六元组信息的留存标准,从链状巨帧格式的数据包中筛选符合留存标准的数据包并留存,获得留存的IP分片数据包;和
转换与存储模块,用于将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储。
其中,所述系统还包括:导出模块,用于根据不同的导出标准,从存储下来的单独的完整数据包中导出符合导出标准的数据包。
本发明还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的方法。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行所述的方法。
实施例1、
本发明的具体实施例的方法具体参见图3,该方法能够按需留存网络数据中的IP分片数据包,同时可以根据用户需求导出相应的数据包,在本实施例中,以DPDK(DataPlane Development Kit,数据平面开发套件)环境下网络数据包留存系统为例,所述方法包括:
步骤0)(预设部分)创建全局变量“分片哈希表”、“超时分片暂存队列”以及预设参数包括哈希桶数量、最大处理分片数和超时时长;
步骤1)在DPDK环境下,实时接收IP分片数据包,将单个IP分片数据包存储在mbuf(memory buffer,存储器缓存)结构体内,初始化每个IP分片数据包信息的值后,读取以太帧首部地址信息,确认为IP分片数据包,根据版本号字段,判断IP协议版本,若为IPv4,则跳转步骤2);若为IPv6,则跳转步骤3);
步骤2)根据以太地址,计算IP首部地址,填写mbuf结构体的数据链路层L2、网络层首部长度L3,然后跳转步骤4);
步骤3)根据以太地址,计算IP首部地址,计算frag信息,即分片扩展字段的地址,然后填写mbuf结构体的数据链路层L2、网络层首部长度L3,此时网络层首部长度需要考虑frag信息,即分片扩展字段的长度,然后跳转步骤4);
步骤4)通过分片标志位、源IP、目的IP,将该分片置于分片哈希表的相应节点中,获取重组时间作为该分片的时间戳,用以判断是否超时;
步骤5)执行重组函数rte_ipv4_frag_reassemble_packet(DPDK标准库函数),若所有分片都已到达并存储在分片哈希表的相应节点中时,则重组完成,并跳转步骤6);
若只有部分分片到达并存储在分片哈希表的相应节点中时,则根据预设的超时时长进一步判断是否超时;
若未超时,则继续等待其余分片,跳转步骤1);
若已超时,则将已存储的分片置于超时分片暂存队列中等待释放删除;
步骤6)重组已成功,获得重组成功的IP分片数据包,更新第一分片的首部信息以及相应的数据包信息,其剩余的分片截去首部,然后依次按顺序挂接在第一分片之后,通过尾部next指针指向下一分片的头部形成链状巨帧格式,具体格式结构见图4;其中,所述相应的数据包信息包括:IP首部信息、传输层端口信息、链路层及传输层长度信息、数据包总长度。
步骤7)将链状巨帧格式的数据包转化为普通的独立的完整数据包,其中,传输层信息为第一分片首部的传输层信息,时间戳为第一个到达网卡的分片的时间,数据包总长度为各层协议首部的长度以及所有有效分片的有效载荷(去除重叠部分)长度总和,完成首部信息后,依次按顺序将各IP分片数据包的有效载荷的非重叠部分填充到相应的数据部分,整合所有IP分片的有效载荷成为一个完整的、独立的有效载荷,具体格式结构见图4,获得独立的完整数据包,该数据包以文件形式存储于存储介质中,以待导出分析使用;其中,所述的数据包存储格式为pcap(Wireshark capture file,wireshark捕获文件)格式,即一种文件格式。
步骤8)(可选步骤)用户可以根据不同的导出标准按需导出数据包,导出的数据包均已不存在IP分片的情况;其中,导出标准包括但不限于六元组信息,即源MAC、目的MAC、源IP、目的IP、源端口号和目的端口号、时间范围、协议类型,在相应时间范围内依次匹配所有数据包的对应条目,完全匹配的数据包被写入另一文件以备导出分析使用。
所述的哈希分片表是DPDK维护的用以暂时存储IP分片的哈希表,标签以源IP、目的IP和分片标志位决定。
所述的链状巨帧结构是mbuf的链表,如图4所示。
所述的独立的完整数据包是普通以太网数据包格式,如图4所示。
所述的导出标准包含但不限于四元组信息、六元组信息、时间范围和协议类型。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (8)

1.一种基于IP分片的完整数据包留存与导出方法,其特征在于,该方法包括:
对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;
具体地,根据网络层信息中的IP协议版本、源IP、目的IP以及IP分片标志号,将接收到的IP分片数据包分类,获得分类后的不同IP分片;
根据IP协议版本、源IP、目的IP以及IP分片标志号,将分类后的不同IP分片置于分片重组表的相应节点中,在预设的超时时间段内,若接收了全部分片报文,则认为重组成功,获得链状巨帧格式的数据包;若未接受到,则认为重组失败,回收释放已接收到的报文;
对重组后的IP分片数据包进行重填第一分片的首部信息后,并与剩余分片组合形成链状巨帧格式的数据包;
所述链状巨帧格式的数据包的结构是链状巨帧格式的报文;其中,第一分片作为链表的表头,存储结构中应存储完整的以太网数据包的长度、完整的网络层、传输层协议首部信息,剩余分片按照顺序依次挂接在链表的表头部的后面;
根据基于留存的六元组信息的留存标准,从链状巨帧格式的数据包中筛选符合留存标准的数据包并留存,获得留存的IP分片数据包;
所述六元组信息为源MAC地址、目的MAC地址、源IP、目的IP、源端口号和目的端口号;
将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据不同的导出标准,从存储下来的单独的完整数据包中导出符合导出标准的数据包。
3.根据权利要求1所述的方法,其特征在于,所述将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储;具体为:
当链状巨帧格式的数据包满足留存标准的时候,开始执行数据包转化留存过程:
根据链状巨帧格式的首部信息填充至将要转化合成的单独的完整数据包,其中,单独的完整数据包的传输层首部信息由IP分片的第一分片的传输层协议的首部信息确定;其中,传输层首部信息包括:源IP、目的IP、源端口号、目的端口号;
完成填充首部信息后,依次按顺序将IP分片数据包中的剩余的有效载荷的非重叠部分填充到相应的数据部分,确定关键信息之后,整合所有IP分片的有效载荷,并转换形成一个单独的完整有效载荷,获得单独的完整数据包;
最后完成封装链状巨帧格式所需的部分信息,将已经转换完成的单独的完整数据包以文件形式压缩存储在存储介质中。
4.根据权利要求3所述的方法,其特征在于,所述关键信息包括:独立的完整数据包的传输层信息、时间戳和数据包总长度;
其中,所述单独的完整数据包的传输层信息由IP分片的第一分片的传输层协议首部信息确定;
所述单独的完整数据包的时间戳信息由到达网卡的第一个分片的时间所确定;其中,所述第一个分片为IP分片的第一片或剩余分片中的一个;
所述单独的完整数据包的总长度信息由协议首部长度与所有IP分片数据包有效载荷的实际有效长度之和所确定;
根据不同的导出标准,从存储下来的单独的完整数据包中,用户按需求导出符合导出标准的数据包。
5.一种基于IP分片的完整数据包留存与导出系统,其特征在于,该系统包括:
分类与重组模块,用于对接收到的IP分片数据包通过网络层信息进行分类和重组,获得重组后的IP分片数据包;
组合模块,用于对重组后的IP分片数据包进行重填第一分片的首部信息后,并与剩余分片组合形成链状巨帧格式的数据包;
留存模块,用于根据基于留存的六元组信息的留存标准,从链状巨帧格式的数据包中筛选符合留存标准的数据包并留存,获得留存的IP分片数据包;和
转换与存储模块,用于将留存的IP分片数据包转化为单独的完整数据包,并将其进行存储。
6.根据权利要求5所述的系统,其特征在于,所述系统还包括:导出模块,用于根据不同的导出标准,从存储下来的单独的完整数据包中导出符合导出标准的数据包。
7.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行权利要求1至4任一项所述的方法。
CN201911069953.2A 2019-11-05 2019-11-05 一种基于ip分片的完整数据包留存方法及系统 Active CN112769520B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911069953.2A CN112769520B (zh) 2019-11-05 2019-11-05 一种基于ip分片的完整数据包留存方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911069953.2A CN112769520B (zh) 2019-11-05 2019-11-05 一种基于ip分片的完整数据包留存方法及系统

Publications (2)

Publication Number Publication Date
CN112769520A CN112769520A (zh) 2021-05-07
CN112769520B true CN112769520B (zh) 2022-11-22

Family

ID=75692626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911069953.2A Active CN112769520B (zh) 2019-11-05 2019-11-05 一种基于ip分片的完整数据包留存方法及系统

Country Status (1)

Country Link
CN (1) CN112769520B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115396319B (zh) * 2021-05-19 2023-10-27 中国移动通信集团有限公司 数据流分片方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404186A (zh) * 2010-09-09 2012-04-04 杭州华三通信技术有限公司 一种报文分片重组的方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100338923C (zh) * 2002-10-31 2007-09-19 中兴通讯股份有限公司 基于网络处理器实现ip报文分片重组的方法
KR20040072952A (ko) * 2003-02-11 2004-08-19 삼성전자주식회사 분할된 패킷 데이터 재 조합 장치 및 방법
CN103685030A (zh) * 2013-12-24 2014-03-26 大唐移动通信设备有限公司 一种数据处理方法和设备
CN105610744B (zh) * 2016-01-28 2018-10-23 东南大学 一种ip报文分片与重组方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404186A (zh) * 2010-09-09 2012-04-04 杭州华三通信技术有限公司 一种报文分片重组的方法及装置

Also Published As

Publication number Publication date
CN112769520A (zh) 2021-05-07

Similar Documents

Publication Publication Date Title
CN106815112B (zh) 一种基于深度包检测的海量数据监控系统及方法
US10764148B2 (en) Methods, systems, and computer readable media for network traffic statistics collection
US6651099B1 (en) Method and apparatus for monitoring traffic in a network
CN104348716B (zh) 一种报文处理方法及设备
US7664112B2 (en) Packet processing apparatus and method
CN105939297B (zh) 一种tcp报文重组方法和装置
CN112436998B (zh) 一种数据传输方法及电子设备
CN110708250A (zh) 一种提高数据转发性能的方法、电子设备及存储介质
CN108881425B (zh) 一种数据包处理方法及系统
US9961147B2 (en) Communication apparatus, information processor, communication method, and computer-readable storage medium
CN109525518B (zh) 一种基于fpga的ip报文网络地址转换方法及装置
CN114327833A (zh) 一种基于软件定义复杂规则的高效流量处理方法
CN112311692A (zh) 报文处理方法及装置、端设备
CN112769520B (zh) 一种基于ip分片的完整数据包留存方法及系统
CN105634977A (zh) 发现路径最大传输单元的方法和装置
CN117997833A (zh) 数据转发系统及其控制方法
CN115225734A (zh) 一种报文处理方法和网络设备
CN105763375B (zh) 一种数据包发送方法、接收方法及微波站
CN107508828A (zh) 一种超远程数据交互系统及方法
US20040148417A1 (en) Method and system for distinguishing higher layer protocols of the internet traffic
CN113765718A (zh) 一种面向quic协议的测试拓扑构建方法及装置
CN105991353A (zh) 故障定位的方法和装置
CN115567460B (zh) 数据包处理方法及装置
CN104135439B (zh) 一种icmp差错报文快速生成方法
CN114422624A (zh) 数据接收方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant