一种网络数据包的快速回溯分析方法与流程

文档序号:16381637发布日期:2018-12-22 09:32阅读:521来源:国知局
一种网络数据包的快速回溯分析方法与流程

本发明涉及网络安全技术领域,特别涉及一种网络数据包的快速回溯分析方法。

背景技术

网络的持续、高效和安全运行是用户业务正常运行的基础。这就要求网络管理者能够随时掌握业务应用运行的关键指标,及时发现异常并预警,实现主动运维、主动管理;当故障发生时,能够快速有效地定位问题点、分清责任并分析原因,从而减少故障时间;一旦网络收到攻击或发生安全事件,需要有手段有依据,实现有效地定位、分析和取证。网络回溯分析系统具备长时间、大容量的数据存储能力,能长期实时保存捕获的原始数据包、数据流、网络会话、应用日志等各种统计数据,同时具备快速的数据检索能力,能够方便的对已发生的网络行为、应用数据和主机数据进行回溯分析。

目前的网络数据包的存储格式以及方法都不能实现对大量数据包快速高效地回溯分析。



技术实现要素:

本发明的目的在于克服上述技术缺陷,提供一种网络数据包的快速回溯分析方法,能够提高网络流量回溯分析系统中回溯分析效率。

为了实现上述目的,本发明提出了一种网络数据包的快速回溯分析方法,所述方法包括:

步骤1)创建包含文件说明扩展选项的标题块shb、接口描述块idb和若干个增强型数据包块epb,在每个epb中填充网络原始数据包,并为每个数据包添加数据包信息以及会话信息扩展选项;创建增加文件内数据包索引选项的自定义时间戳索引块tib;按照shb–idb–epb–epb-…-epb–epb–tib格式将网络数据包生成pcapng文件;

步骤2)通过回溯时间窗口选取pcapng文件,然后通过tib快速定位到epb上,再利用该epb的会话信息扩展选项提取数据包元数据信息。

作为上述方法的一种改进,所述步骤1)包括:

步骤1-1)创建标题块shb,并为其增加文件说明扩展选项;

步骤1-2)创建接口描述块idb;

步骤1-3)创建增强型数据包块epb,每个epb填充网络原始数据包,并且为每个数据包添加数据包信息以及会话信息扩展选项;

步骤1-4)判断epb数量是否达到设定阈值,如果判断结果是否定的,转入步骤1-3),否则,进入步骤1-5);

步骤1-5)创建自定义时间戳索引块tib,并为其增加文件内数据包索引选项;

步骤1-6)判断写入数据大小是否达到pcap文件生成阈值,如果判断结果是否定的,转到步骤1-3),否则,按照shb–idb–epb–epb-…-epb–epb–tib格式生成pcapng文件,并使用文件中记录的首尾数据包的时间戳生成文件名。

作为上述方法的一种改进,在所述shb的文件说明扩展选项中,需要记录的信息包括但不限于:魔数、文件生成时间、软件版本以及采集器标识;

所述魔数,用来对留存网络数据包文件增加标识;

所述文件生成时间,用来记录留存网络数据包文件生成时间;

所述软件版本,用来标识生成该文件的软件版本;

所述采集器标识,用来标识生成该文件的采集器名称。

作为上述方法的一种改进,在所述epb会话信息扩展选项中,需要记录的信息包括但不限于:数据包类型、应用层协议类型、l3偏移、l4偏移、l4负载长度、会话id以及时间戳;

所述数据包类型,使用32位掩码表示,低28位标识2-4层协议栈类型,28位标识数据包方向,0为客户端发的包,1为服务端发的包,29~31位标识tag的计算方式;

所述应用层协议类型,用来标识网络数据包所携带应用层协议类型;

所述l3偏移,用来标识网络数据包的3层偏移,没有则填0;

所述l4偏移,用来标识网络数据包的4层偏移,没有则填0;

所述l4负载长度,用来标识网络数据包的4层负载长度,没有则填0;

所述tag值,用于标识数据包,由数据包的五元组信息依据某种计算方式得到;

所述会话id选项,用来标识数据包所对应的数据流;

所述时间戳选项,用来标识相对流开始的时间间隔,取值为毫秒,向上取整。

作为上述方法的一种改进,在所述协议自定义时间戳索引块tib中,需要记录的信息包括:时间戳信息以及偏移信息;

所述时间戳信息,用于记录相对于文件起始时间的相对时间;

所述偏移信息,用来记录相对于文件起始位置的字节数。

作为上述方法的一种改进,所述步骤2)包括:

步骤2-1)根据选定回溯分析时间窗口,依据文件名中时间戳信息定位到相应pcapng文件,同时对文件标题块shb中魔数选项进行验证;

步骤2-2)利用pcapng文件中tib记录的时间戳和偏移信息跳转到搜索开始位置;

步骤2-3)依次提取各个epb中的元数据信息直到搜索时间结束位置,其中元数据信息包括网络原始数据包以及用于快速分析的会话信息扩展选项。

本发明的优点在于:

1、本发明的存储方法采用pcapng格式记录文件,在标题块shb、增强型数据包块epb中增加扩展选项,自定义时间戳索引块tib支持文件内索引,同时文件名包含了数据包的起始和结束时间戳。pcapng文件格式组织格式为shb–idb–epb–epb-…-epb–epb–tib,由于pcapng格式的可扩展性,增加扩展选项字段以及合并/附加数据不会影响文件的可读性;

2、利用本发明的方法存储网络数据包后,当进行回溯分析时,首先通过回溯时间段选取文件,再通过tib快速定位分析位置,再利用epb扩展项提取数据包元数据信息,提高了回溯分析的效率;

3、通过本方法的方法可以高效快速地对选定时间段内的网络流量进行分析。

附图说明

图1为本发明的实施例1的网络数据包存储方法的流程图;

图2为本发明的实施例1的会话扩展选项的结构示意图;

图3为本发明的实施例1的时间戳索引块tib的结构示意图;

图4为本发明的实施例2的网络数据包的快速回溯分析方法的流程图。

具体实施方式

现结合附图和具体实施例对本发明作进一步的描述。

本发明公开了一种网络数据包的快速回溯分析方法,首先通过扩展pcapng格式(pcapnextgenerationdumpfileformat)实现网络数据包的高效存储。pcapng文件中在标题块shb(sectionheaderblock)中增加了文件说明选项,在增强型数据包块epb(enhancedpacketblock)中为每个数据包增加了数据包描述信息扩展选项,并且自定义时间戳索引块tib(timestampindexblock)支持文件内索引,同时文件名包含了数据包的起始和结束时间戳。pcapng文件格式组织格式为shb–idb–epb–epb-…-epb–epb–tib。然后进行回溯分析时,首先通过回溯时间段选取文件,再通过tib快速定位分析位置,再利用epb扩展项提取数据包元数据信息。

实施例1

如图1所示,本发明的实施例1提供的网络数据包存储方法,使用该方法存储的网络数据包能够实现对网络流量进行快速回溯分析,所述方法包括:

步骤1)创建标题块shb(sectionheaderblock),增加文件说明扩展选项;

在所述协议shb扩展选项中,需要记录的信息包括但不限于:魔数、文件生成时间、软件版本以及采集器标识等。

所述魔数,用来对留存网络数据包文件增加标识,该标识用于在回溯分析对文件进行验证;

所述文件生成时间,用来记录留存网络数据包文件生成时间;

所述软件版本,用来标识生成该文件的软件版本;

所述采集器标识,用来标识生成该文件的采集器名称。

步骤2)创建接口描述块idb;

步骤3)创建增强型数据包块epb(enhancedpacketblock),用于填充原始数据包,并且为每个数据包添加数据包信息以及会话信息扩展选项;

如图2所示,在所述协议epb扩展选项中,需要记录的信息包括但不限于:数据包类型、应用层协议类型、l3偏移、l4偏移、l4负载长度、会话id以及时间戳等。

所述数据包类型,使用32位掩码表示,低28位(0~27)标识2-4层协议栈类型,28位标识数据包方向,0为客户端发的包,1为服务端发的包,29~31位标识tag的计算方式;

所述应用层协议类型,用来标识网络数据包所携带应用层协议类型;

所述l3偏移,用来标识网络数据包的3层偏移,没有则填0;

所述l4偏移,用来标识网络数据包的4层偏移,没有则填0;

所述l4负载长度,用来标识网络数据包的4层负载长度,没有则填0;

所述tag值,用于标识数据包,由数据包的五元组信息依据某种计算方式得到;

所述会话id选项,用来标识数据包所对应的数据流;

所述时间戳选项,用来标识相对流开始的时间间隔,取值为毫秒,向上取整。

步骤4)判断epb数量是否达到设定阈值,如果不是,继续执行步骤3),如果是,执行步骤5);

步骤5)创建自定义时间戳索引块tib(timestampindexblock),增加文件内数据包索引选项,包括:时间戳以及数据包偏移;

如图3所示,在所述协议自定义时间戳索引块tib中,需要记录的信息包括:时间戳以及偏移。

所述时间戳信息,用于记录相对于文件起始时间的相对时间(微秒数);

所述偏移信息,用来记录相对于文件起始位置的字节数。

步骤6)判断写入数据大小是否达到pcap文件生成阈值,如果不是,转到执行步骤3),如果是,按照shb–idb–epb–epb-…-epb–epb–tib格式生成pcapng文件,并使用文件中记录的首尾数据包的时间戳生成文件名。

实施例2

如图4所示,本发明的实施例2提供了一种网络数据包的快速回溯分析方法,用于对历史异常流量进行检索,该方法首先执行实施例1提供的数据存储方法将网络数据包留存系统中,然后执行下述步骤:

步骤s1)根据选定回溯分析时间窗口,依据文件名中时间戳信息定位到相应pcapng文件;

步骤s2)利用pcapng(pcapnextgenerationdumpfileformat)文件中tib记录的时间戳和偏移信息跳转到搜索开始位置;

步骤s3)根据给定的过滤规则(按照协议、四元组、留存原因等),依次对比各个epb中的选项字段(协议、tag、会话id等)和过滤规则直到搜索时间结束位置,在历史异常流量中抽取符合要求的数据流。

最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1