一种pcap数据报文的分析方法、系统及相关装置与流程

文档序号:16672554发布日期:2019-01-18 23:41阅读:593来源:国知局
一种pcap数据报文的分析方法、系统及相关装置与流程

本申请涉及数据处理领域,特别涉及一种pcap数据报文的分析方法、系统、一种计算机可读存储介质和一种终端。



背景技术:

目前数据中心最经常出现的问题是网络慢或者不稳定,例如出现网络中出现ipv4协议这类问题有的时候出现时间不固定,很难快速定位并且排除问题。即使通过现有的一些抓包工具也无法进行数据包回放或修改,并不能实际解决网络不稳定的问题。

因此如何对网络中pcap数据报文进行有效的分析是本领域技术人员亟需解决的问题。



技术实现要素:

本申请的目的是提供一种pcap数据报文的分析方法、系统、一种计算机可读存储介质和一种终端,解决现有的抓包工具无法对pcap数据报文进行有效分析的问题。

为解决上述技术问题,本申请提供一种pcap数据报文的分析方法,具体技术方案如下:

获取所述pcap数据报文;

将所述pcap数据报文转换成pcap结构、pcapheader结构和pcapdata结构;

根据tcp/ip协议族判断所述pcap数据报文对应的协议类型;

根据所述协议类型对所述pcap结构、所述pcapheader结构和所述pcapdata结构进行分析。

其中,将所述pcap数据报文转换成pcap结构、pcapheader结构和pcapdata结构之前,还包括:

对所述pcap数据报文进行解压。

其中,获取所述pcap数据报文包括:

利用wireshark或tcpdump获取所述pcap数据报文。

其中,还包括:

连接用户交互界面,并将分析结果显示于所述用户交互界面上。

其中,还包括:

将所述pcap数据报文和所述分析结果同时显示于所述用户交互界面上。

其中,所述协议类型包括ipv4协议。

本申请还提供一种pcap数据报文的分析系统,包括:

获取模块,用于获取所述pcap数据报文;

转换模块,用于将所述pcap数据报文转换成pcap结构、pcapheader结构和pcapdata结构;

判断模块,用于根据tcp/ip协议族判断所述pcap数据报文对应的协议类型;

分析模块,用于根据所述协议类型对所述pcap结构、所述pcapheader结构和所述pcapdata结构进行分析。

其中,还包括:

显示模块,用于连接用户交互界面,并将分析结果显示于所述用户交互界面上。

本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的分析方法的步骤。

本申请还提供一种终端,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的分析方法的步骤。

本申请所提供的一种pcap数据报文的分析方法,包括:获取所述pcap数据报文;将所述pcap数据报文转换成pcap结构、pcapheader结构和pcapdata结构;根据tcp/ip协议族判断所述pcap数据报文对应的协议类型;根据所述协议类型对所述pcap结构、所述pcapheader结构和所述pcapdata结构进行分析。

本申请通过将对pcap数据报文进行格式转换,并根据其相应的协议类型对于其进行解析,确定pcap数据报文的内容。在此基础上,可以实现数据包回放,从而对网络问题点进行回溯分析。并且在明确pcap数据报文的内容后,可以修改其内容,并发送修改后的封包,从而迅速解决网络不稳定等问题。本申请还提供一种pcap数据报文的分析系统、一种计算机可读存储介质和一种终端,具有上述有益效果,此处不再赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例所提供的一种pcap数据报文的分析方法的流程图;

图2为本申请提供的tcp/ip协议族示意图;

图3为本申请实施例提供的ipv4数据包格式图;

图4为本申请实施例所提供的一种pcap数据报文的分析系统结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

请参考图1,图1为本申请实施例所提供的一种pcap数据报文的分析方法的流程图,该分析方法包括:

s101:获取所述pcap数据报文;

pcap文件头占24个字节且唯一,即一个pcap数据报文中只有一个pcap文件头。pcap数据包头占16字节,其后面紧跟这数据包。数据包中又分为三层,即以太网数据帧(占据14个字节)、ip包头(一般为20字节)、tcp/udp。pcap数据报文的内容上主要包括时间戳、抓包长度和实际长度。

在此对于如何获取pcap数据报文不作限定,例如可以利用wireshark或tcpdump获取所述pcap数据报文。当然还可以利用其他工具或方法获取pcap数据报文,在此不一一举例限定。

s102:将所述pcap数据报文转换成pcap结构、pcapheader结构和pcapdata结构;

本步骤旨在将原始的pcap数据报文转换成分析所用的结构,即pcap结构、pcapheader结构和pcapdata结构。需要说明的,在转换的时候,需要根据原始的pcap数据报文的总体结构进行转换。如果不进行转换,难以对pcap数据报文进行有效地分析。

需要说明的是,在进行本步骤之前,获取到pcap数据报文后,通常还需要对所述pcap数据报文进行解压。在此对于解压的过程和方法不作限定。

s103:根据tcp/ip协议族判断所述pcap数据报文对应的协议类型;

参见图2,图2为本申请提供的tcp/ip协议族示意图。链路层,tcp/ip协议族的最低层,也称为网络接口层,通常包含操作系统中的设备驱动程序和对应的网络接口卡,对应于osi参考模型中的数据链路层和物理层。网络层,也称为互联网层,由于该层的主要协议为ip,通常也简称为ip层。传输层,通常所说的两台计算机之间的通信其实是指两台计算机上对应的应用程序之间的数据通信,传输层提供的就是应用程序间的通信,一般也称为端到端的通信。应用层向用户提供一组常用的应用程序。

根据图2中的tcp/ip协议族即可确定s101中获取到的数据报文对应的协议类型。该协议类型主要包括arp、ipv4、icmp、udp、dhcp等几种。参见图3,图3为本申请实施例提供的ipv4数据包格式图。在此对于其他协议类型的数据包格式不作赘述。

s104:根据所述协议类型对所述pcap结构、所述pcapheader结构和所述pcapdata结构进行分析。

需要说明的是,本步骤需要根据pcap实际的协议类型对pcap结构、pcapheader结构和pcapdata结构进行分析。以图3所示的ipv4数据包格式为例,按照ipv4数据包的各区域内容即数据长度获取相应的信息。例如获取首部区的版本号、生存时间、源ip地址、目的ip地址、首部校验和片位移等有效信息。而对于选项等无用信息可以舍弃。因此最终得到的分析结果也包括上文所述的协议类型、生存时间、ip地址、报文各部分长度、分片位移、源ip地址、目标ip地址等等。

在获得这些分析结果后,即可利用回溯分析明确网络不稳定的原因。

本申请通过将对pcap数据报文进行格式转换,并根据其相应的协议类型对于其进行解析,确定pcap数据报文的内容。在此基础上,可以实现数据包回放,从而对网络问题点进行回溯分析。并且在明确pcap数据报文的内容后,可以修改其内容,并发送修改后的封包,从而迅速解决网络不稳定等问题。

基于上述实施例,作为优选的实施例,该分析方法还可以包括:

连接用户交互界面,并将分析结果显示于所述用户交互界面上。

基于上述实施例,作为优选的实施例,该分析方法还可以包括:

将所述pcap数据报文和所述分析结果同时显示于所述用户交互界面上。

具体的,可以利用myui类实现用户交互界面,并且可选择pcap文件,根据文件路径创建输入流inputstream,最终展示分析结果。

进一步的,展示分析结果时,可以将pcap数据报文与最终的分析结果同时展示。此时,pcap数据报文可以以十六进制显示。

下面对本申请实施例提供的一种pcap数据报文的分析系统进行介绍,下文描述的分析系统与上文描述的分析方法可相互对应参照。

图4为本申请实施例所提供的一种pcap数据报文的分析系统结构示意图,该分析系统包括:

获取模块100,用于获取所述pcap数据报文;

转换模块200,用于将所述pcap数据报文转换成pcap结构、pcapheader结构和pcapdata结构;

判断模块300,用于根据tcp/ip协议族判断所述pcap数据报文对应的协议类型;

分析模块400,用于根据所述协议类型对所述pcap结构、所述pcapheader结构和所述pcapdata结构进行分析。

基于上述实施例,作为优选的实施例,所述分析系统还可以包括:

解压模块,用于对所述pcap数据报文进行解压。

基于上述实施例,作为优选的实施例,所述获取模块100具体为用于利用wireshark或tcpdump获取所述pcap数据报文的模块。

基于上述实施例,作为优选的实施例,所述分析系统还可以包括:

显示模块,用于连接用户交互界面,并将分析结果显示于所述用户交互界面上。

本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的一种pcap数据报文的分析方法的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本申请还提供了一种终端,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的一种pcap数据报文的分析方法的步骤。当然所述终端还可以包括各种网络接口,电源等组件。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

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