内容来自论文无忧网 www.paper51.com 1.引 言 copyright paper51.com 计算机网络信息传输是通过把信息拆分封装成数据包通信的。无论是在网络安全还是网络攻击方面,高效的数据包捕获与分析都是网络相关人员手中的利器。 copyright paper51.com 第一、网络数据分析能够帮助我们评估网络的性能,比如,各个链路的使用率,网络的性能趋势,网络中哪一些应用消耗最多带宽,网络上哪一些用户消耗最多带宽,各分支机构的流量状况,影响我们网络性能的主要因素,各个应用的响应时间,一个操作需要的时间,应用程序的消耗带宽、行为特征、性能瓶颈,我们能否做一些相应的优化、控制等等。 paper51.com 第二、网络数据分析能帮助我们快速定位故障,比如网络丢包率高,延迟大,甚至断网,一般情况下很难的发现故障的具体位置,网络数据分析可以有效地解决这个问题。 http://www.paper51.com 第三、网络数据分析可以帮助我们排除潜在的威胁,我们知道网络中有各种各样的威胁,比如木马、病毒、扫描等,他不但对我们没有帮助,还可能带来危害,网络数据分析可以快速地发现他们,并且发现攻击的来源。 paper51.com 最后、本专业计算机网络的学习需要。目前主流的数据包捕获软件多为英文版本,且操作复杂,不适合网络技术的初学者使用。基于本专业的课程设置,和学习《计算机网络》的需要,开发一个适合于学生学习的网络数据分析工具软件。同学们需要一个操作简单,易于使用的网络数据分析软件。 http://www.paper51.com 无论是对网络管理人员的工作要求,还是对于同学们的学习需要,网络数据分析软件的开发都是很有价值和现实意义的。 内容来自www.paper51.com 数据包捕获技术是网络管理系统的关键技术,但传统数据包捕获技术基于socket套接字来实现,而本设计基于WinPcap实现,是处于网络的最低层次对数据包的操作。 内容来自www.paper51.com 本报告对于数据包捕获的应用程序的开发做了相关介绍,给出它们实现的具体步骤和所需的函数,归纳总结了WinPcap在Visual C++环境中开发应用程序的方法及实现步骤,以便后期研究人员对基于数据链路层和物理层的数据包捕获应用程序的设计具有普遍的参考价值。 copyright paper51.com
2.需求分析 内容来自www.paper51.com
2.1.可行性分析 内容来自论文无忧网 www.paper51.com
本专业开设了专业课程《计算机网络》,对于计算机网络知识有一定了解。此外,本专业还开设了编程语言课程,如C语言程序设计、VB语言程序设计,有一定程序设计基础。在windows系统上,WinPcap提供了网络数据包捕获和分析的函数库。基于以上分析,该网络数据包捕获和分析软件可以实现。 paper51.com 2.2.软件的功能需求 copyright paper51.com 软件的功能需求如下: copyright paper51.com (1)查找网卡、显示网卡信息、绑定网卡; 内容来自论文无忧网 www.paper51.com 显示网卡列表,以及各网卡对应的网络参数(分配的IP地址、子网掩码等)。 内容来自论文无忧网 www.paper51.com (2)根据绑定的网卡对数据包进行捕获; 内容来自论文无忧网 www.paper51.com (3)对数据包进行简单分析; paper51.com
通过对网络数据包进行拆分,得到各个字段的取值。如:源IP地址、目的IP地址、源端口、目的端口、源网卡地址、目的网卡地址等基本信息。 paper51.com (4)实时显示流经网卡的数据包基本信息; copyright paper51.com 通过以上的需求分析,并结合自己的编程基础和实际情况,同时向老师进行了咨询,最后决定基于WinPcap平台,以MFC作为开发工具完成软件设计。 内容来自www.paper51.com 3.开发平台简介 http://www.paper51.com
3.1.WinPcap简介 http://www.paper51.com 捕获网络数据包技术按网络层次主要分为三种:数据链路层、网络层和应用层。应用层的网络数据仅限于相关应用,不包括底层数据信息。在Windows系统下捕获数据包可以使用原始套接字socket方法,这种方法比较简单,但只能获取高层数据;另外还可以选择第三方函数库——基于WinPcap函数库的数据包捕获技术。WinPcap的主要功能在于独立于主机协议(如TCP-IP)而发送和接收原始数据包。也就是说,winpcap不能阻塞,过滤或控制其他应用程序数据包的发收,它仅仅只是监听共享网络上传送的数据包。 copyright paper51.com WinPcap 是由是由意大利人Fulvio Risso和Loris Degioanni等人提出和开发的,在windows操作平台下实现了对底层数据包的截取、过滤和发送原始数据包的能力。WinPcap的最大特点在于能独立于主机协议(如TCP/IP)发送和接收原始数据报。也就是说,WinPcap不阻塞过滤其他应用程序的数据包的收发,仅仅是监听流经本网卡的数据报。 内容来自论文无忧网 www.paper51.com
WinPcap包括三个模块,如下图所示: paper51.com
内容来自www.paper51.com
3.2.MFC简介 copyright paper51.com MFC,微软基础类(Microsoft Foundation Classes),是一种Application Framework,随微软Visual C++ 开发工具发布。该类库提供一组通用的可重用的类库供开发人员使用。MFC是对WindowsAPI的封装,大大简化了我们的开发工作。本软件拟采用MFC开发,MFC类库提供一组通用的可重用的类库供开发人员使用。大部分类均从CObject 直接或间接派生,对于这个软件的构建与实现,使用MFC能在很大程度上提高了该软件的开发效率。 copyright paper51.com |