一种网络数据包分析软件的开发与设计

时间:2022-03-03 05:19:48

一种网络数据包分析软件的开发与设计

【摘要】本文通过对主流转包软件所保存的pcap格式文件进行解析统计,从而对数据包进行同步地分析和归类,系统完成了数据包级和流级的流量指标的统计和分析,包括TCP/IP各层协议分布、包长度分布;开发了一种针对PCAP文件格式的网络数据包分析软件,从而能够在一定程度上帮助网络管理人员及时地发现和排除网络异常,提高了对网络可靠性的监控和保障能力。

【关键词】pcap文件格式;数据包分析;流量统计;网络协议

1.引言

随着网络维护规模的加大,网络技术的变化,网络关键数据的采集也越来越困难。有时为了分析和采集数据,必须能在异地同时地进行采集,于是将协议分析仪的数据采集系统独立开来,能安置在网络的不同地方,由能控制多个采集器的协议分析仪平台进行管理和数据处理,这种应用模式就诞生了分布式协议分析仪。这种分布式协议分析仪是未来网络安全分析和研究的一个重要发展趋势。网络测量作为一种收集网络运行数据和分析网络协议运行状态的重要手段之一,在帮助网络管理人员分析网络异常的原因方面发挥了重要的作用。

2.本文研究内容

本课题针对网络数据包的捕获和分析技术做了比较深入的阐述。设计并实现了一个基于Pcap的实时网络数据包捕获和协议统计分析系统。该系统WinPcap网络数据包捕获机制,对流经网络的数据包进行监测和统计分析,系统提供了网络数据包的抓取和分析功能。

本文研究与开发一套用于中小规模网络系统的网络监控软件,重点考虑对网络故障的分析功能,设计并实现了一个基于WinPcap的实时网络数据包捕获和协议统计分析系统。该系统在RTFM流量测量框架体系结构上,采用WinPcap网络数据包捕获机制,对流经网络的数据包进行监测和统计分析,并通过多线程技术和读写缓冲技术,解决了读取缓冲区中数据和网络数据到来之间的速度差异:在连续地捕获数据包的同时,对数据包进行同步地分析和归类,并进行应用级处理。完成了数据包级和流级的流量指标,包括TCP/IP各层协议分布,包大小分布,前N名的IP主机和主机对分布等;并提供网络运行状态的告警指示,可以根据网络安全管理员设定的特征信息,对具有特征信息的数据包进行分类解析、还原和预警。系统使用了基于五元组的Flow结构,并加入了Hash算法,添加了对TopN主机进行排序的数组,从而提高了检索和监测效率。有效地解决了目前根据RTFM实现的网络测量系统,如NeTraMet,存在功能有限、性能不高,并且配置麻烦的局限性。

3.软件详细设与计实现

3.1 软件设计流程

软件利用VC++与MFC技术设计一个基本的针对PCAP文件格式的网络数据包分析软件。界面采用MFC实现一个单文档的程序,用户区分为上下连个视图,上面视图是一个列表,显示捕获的数据包主要信息,信息内容包括:时间、序号、长度、源MAC、目的MAC、类型、端口等内容。下面视图显示数据包分析的时间以及数据保存的目录等信息。点击文件——打开,选择一个事先保存好的pcap文件格式数据包如图1所示:

3.2 网络协议分析的总体流程

该模块从缓冲区内读取数据包,首先对数据包进行分解,然后按照网络协议对数据包进行解析。并以列表的形式实时显示数据包的解析结果,包括数据报的包长度、源IP、目的IP、端口、使用协议等相关信息。数据包分析显示流程图如2所示:

3.3 分析模块的实现

被捕获的数据只要经过解析才能够对协议的分析提供有用的数据。本模块就是对捕获的数据包按照数据链路层(MAC)、网络层(IP, ARP/RARP)、传输层(TCP, UDP, ICMP)和应用层(HTTP等)的层次结构自底向上进行解析,并将解析结果显示输出。

4.结束语

本文研究与开发一套用于中小规模网络系统的网络监控软件,重点考虑对网络故障的分析功能。设计并实现了一个基于WinPcap的实时网络数据包捕获和协议统计分析系统。系统在RTFM流量测量框架体系结构上,采用WinPcap网络数据包捕获机制,对流经网络的数据包进行监测和统计分析,并通过多线程技术和读写缓冲技术,解决了读取缓冲区中数据和网络数据到来之间的速度差异;在连续地捕获数据包的同时,对数据包进行同步地分析和归类,并进行应用级处理。完成了数据包级和流级的流量指标,包括TCP/IP各层协议分布,包大小分布,前N名的IP主机和主机对分布等;并提供网络运行状态的告警指示,可以根据网络安全管理员设定的特征信息,对具有特征信息的数据包进行分类解析、还原和预警。

参考文献

[1]谢鳃,张大方,文吉刚.基于WinPcap的实时网络监测系统[J].湖南大学学报(自然科学版),2006.

[2]WILLIAMSON C.Internet traffic measurement[M]. IEEE Internet Computing,2001,Vol.5(6):70-74.

[3]庄春兴,彭奇志.基于WinPcap的网络嗅探程序设计[M].计算机与现代化,2002.Vol.5:34-36.

[4]赵心宇,朱齐丹,朱达书.应用WinPcap捕获网络数据包[J].应用科技,2004,Vol.31(11):29-31.

[5]循序渐进学习使用WinPcap[J].中国协议分析网.http://pafnet,2005.

[6]Charles Hornig.A Standard for the Transmission of IP Datagazns~EthemetNetworks[M].RFC894,1984.

[7]J.Postel,J.Reynolds.A Standard for the Transmission of 1P Datagrams over IEEE 802 Networks[M].RFC1042,198.

作者简介:

高凯(1981-),男,硕士,讲师,主要研究方向:计算机网络安全、无限传感器网络等。

赵登攀(1975-),男,硕士,工程师,主要研究方向:计算机网络安全等。

上一篇:基于工作过程的“网页制作”课程教学设计 下一篇:人民币升值降低了中国的贸易顺差吗?