IP数据包的捕获与分析.doc

上传人:文****钱 文档编号:41577 上传时间:2018-05-09 格式:DOC 页数:27 大小:1.09MB
下载 相关 举报
IP数据包的捕获与分析.doc_第1页
第1页 / 共27页
IP数据包的捕获与分析.doc_第2页
第2页 / 共27页
IP数据包的捕获与分析.doc_第3页
第3页 / 共27页
IP数据包的捕获与分析.doc_第4页
第4页 / 共27页
IP数据包的捕获与分析.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

1、毕业设计(论文)题目IP数据包的捕获与分析姓名学号系别专业年级指导教师年月日独创性声明本毕业设计(论文)是我个人在导师指导下完成的。文中引用他人研究成果的部分已在标注中说明;其他同志对本设计(论文)的启发和贡献均已在谢辞中体现;其它内容及成果为本人独立完成。特此声明。论文作者签名日期关于论文使用授权的说明本人完全了解福州大学至诚学院有关保留、使用学位论文的规定,即学院有权保留送交论文的印刷本、复印件和电子版本,允许论文被查阅和借阅;学院可以公布论文的全部或部分内容,可以采用影印、缩印、数字化或其他复制手段保存论文。保密的论文在解密后应遵守此规定。论文作者签名指导教师签名日期IIP数据包的捕获与

2、分析摘要随着网络技术的不断发展,通过网络将人与人的距离拉近,因此网络为来自世界各地不同的人、团体、机构构建了一个网络村。网络的出现方便人们的日常生活及工作,在高度发展的今天,网络已经不仅是浏览信息的品台,还广泛的运用到了商业、办公、金融、政务等各行各业中,网络中的风险也越发突出,进而网络安全问题越来越受到关注。因此,对网络的监控与管理势在必行,而想要监控和管理网络,首先就要获取网络中所传输的各类信息,才能进一步得进行监控和管理,可以说数据包的捕获是对网络监控与管理的前提,所以研究并开发出一种能够有效地实时捕获网络信息的系统具有极其重要的意义。在网络中,信息是以数据包的形式传输,所以为了监控计算

3、机当前网络信息,可以通过WINPCAP来实现在当前计算机网络中传输的数据包的抓取,然后通过对捕获数据包中数据信息,进行过滤解析,得到所抓数据包的协议、数据长度,以及数据报内容等信息。此外,此次毕设还注重研究,主要体现在应用层协议的识别方面,同时采用了基于正则表达式技术得到某种应用层协议的特征表达式。而为了实现将抓包获取的数据进行解析并展现出来,本次毕设还要通过C编程将其编写成为软件,以便于操作运用,能让获取的数据包数据进行解析后,在界面中显示出来,方便查看数据包各类信息,以及进一步的进行一些对应操作,达到我们解析数据包的目的,并可在日后能添加新功能,加强对数据包的分析能力。关键词WINPCAP

4、,抓包,CIIIPPACKETCAPTUREANDANALYSISABSTRACTWITHTHECONTINUOUSDEVELOPMENTOFNETWORKTECHNOLOGY,THENETWORKWILLNARROWTHEDISTANCEBETWEENPEOPLE,SOTHENETWORKOFPEOPLEFROMDIFFERENTPARTSOFTHEWORLD,GROUPS,ORGANIZATIONSBUILDANETWORKOFVILLAGEADVENTOFTHEINTERNETTOFACILITATEPEOPLESDAILYLIFEANDWORK,INHIGHLYDEVELOPEDTOD

5、AY,IWASBROWSINGTHENETWORKHASNOTONLYPRODUCTINFORMATIONDESK,ALSOWIDELYAPPLIEDTOTHECOMMERCIAL,OFFICE,FINANCE,GOVERNMENTANDOTHERINDUSTRIES,THENETWORKRISKSMOREANDMOREPROMINENT,ANDTHUSTHENETWORKSECURITYISAGROWINGCONCERNTHEREFORE,NETWORKMONITORINGANDMANAGEMENTISIMPERATIVE,ANDYOUWANTTOMONITORANDMANAGETHENET

6、WORK,WEMUSTFIRSTGETALLKINDSOFINFORMATIONTRANSMITTEDINTHENETWORK,INORDERTOFURTHERMONITORANDMANAGETOO,CANBESAIDTOCAPTURETHEPACKETISPREMISENETWORKMONITORINGANDMANAGEMENT,SOTHERESEARCHANDDEVELOPMENTOFANETWORKCANEFFECTIVELYCAPTUREINFORMATIONINREALTIMESYSTEMSISEXTREMELYIMPORTANTINTHENETWORK,INFORMATIONIST

7、RANSMITTEDINTHEFORMOFDATAPACKETS,SOINORDERTOMONITORTHECOMPUTERSCURRENTNETWORKINFORMATION,CANBEACHIEVEDBYWINPCAPCRAWLINACOMPUTERNETWORKTOTRANSMITTHECURRENTPACKET,THENTHEPACKETDATATOCAPTUREINFORMATION,CONDUCTFILTRATIONANALYSIS,OBTAINEDBYGRASPINGTHEPACKETPROTOCOL,DATALENGTH,ANDDATAREPORTEDCONTENTANDOTH

8、ERINFORMATIONINADDITION,RESEARCHHASALSOFOCUSEDONTHEISSUE,MAINLYINTERMSOFIDENTIFYINGAPPLICATIONLAYERPROTOCOLS,WHILEUSINGAREGULAREXPRESSIONBASEDTECHNOLOGYHASBEENCHARACTERIZEDBYSOMEAPPLICATIONLAYERPROTOCOLSEXPRESSIONINORDERTOACHIEVETHECAPTUREANDPARSETHEDATAOBTAINEDSHOWUP,THISCOMPLETESETOFCPROGRAMMINGBU

9、TALSOTHROUGHTHEIRWRITINGTOBECOMESOFTWAREFORUSEINTHEOPERATION,AFTERPARSINGTHEPACKETDATAALLOWSACCESSTO,ANDDISPLAYEDINTHEINTERFACEOUTALLKINDSOFINFORMATIONPACKETSFOREASYVIEWING,ASWELLASSOMEFURTHERCORRESPONDENCEOPERATIONS,ANALYTICALDATAPACKETSREACHOURGOAL,ANDINTHEFUTUREBEABLETOADDNEWFEATURESTOENHANCETHEP

10、ACKETANALYSISCAPABILITIESKEYWORDSWINPCAP,PACKETCAPTURE,CIII目录第1章绪论111研究背景112研究意义113研究内容214论文组织2第2章技术背景介绍421编程语言422编译平台423开发框架424WINPCAP5第3章系统设计631需求分析6311环境需求分析6312功能需求分析6313经济可行性分析6314技术可行性分析7315操作可行性分析732概要设计733详细设计8第4章系统实现1041获取网卡信息10411存储计算机网卡信息的数据结构10412WINPCAP获取网卡信息的相关函数1142数据分析1143主界面构造1244成果

11、展示13第5章软件测试1651测试方法16结论19参考文献20谢辞21IP数据包的捕获与分析1第1章绪论11研究背景随着科学技术的日新月异,计算机网络迎来了快速发展的时代,也对人类的日常生活和工作方式带来了巨大的变化。而各国加强对计算机网络的应用,使世界从一个信息缺乏的时代进入了一个信息爆炸的时代,世界也由于网络而缩小了距离,而人们通过各种网络技术或工具使得交流突破了空间的限制,让地球成为地球村不在是幻想。全球范围内的网络互联给人们的生活和工作带来了方便,与此同时也深入到商业、办公、金融、政务等各行各业中,人们正享受网络技术带给我们美好生活。但同时因为网络的广泛应用,越来越多的个人信息,商业信

12、息否充斥着在各种网络信息中。但由于网络具有开放性,互联性,多样性,不均匀性等诸多特征,以至于网络中存在许多风险,例如黑客攻击,恶意软件等。这些风险的存在,严重的危险到网络上信息的完整性、保密性、真实性、可靠性。所以网络安全问题已越发受到人们的关注,而想要解决这些问题,主要分为两个方面,即管理方面的问题,和技术方面的问题,这两个方面是互补的,缺一不可。在管理问题上主要侧重于内部人为因素的管理,在技术问题上主要侧重于防范外部非法攻击。怎样提高计算机网络系统的安全性,以及怎样更有效地保护网络中重要的数据信息,已经成为如今所有计算机网络运用所必须正视和解决的一个重要问题。目前,我国正处在高速的现代化建

13、设阶段,政府部门、军队、企业、学校等都需要建立自己的网络和信息系统并实施保护,尤其是有关的重要部门更需要需要网络的安全保障。所以建立网络安全系统对我们具有重大的意义,而有效的实时监控和捕获可疑的网络信息就是建立网络安全系统的基础。12研究意义随着个人计算机和互联网的普及,使我们从一个封闭的环境进入到一个开放的世界,越来越多的人开始使用网络这个媒介来发送,接收信息,计算机网络给人们生产和生活带来了巨大的便利。但是由于网络是一个面向大众的开放系统,它的这种特性决定了其对数据信息的保密和系统的安全性考虑并并不完备,存在着诸多的安全隐患。因此让有些个人或团体有机可乘,利用这些隐患和漏洞,通过网络来发送

14、一些包含色情,反动等不良内容的信息,或通过网络入侵他人主机盗取信息和机密,达到破坏正常社会秩序的目的,以至于计算机网络的安全形势日趋严峻。因此,现在在计算机网络安全隐患中扮演重要角色之一的网络数据抓包软件受到越来越大的关注。构建安全网络环境,除了通过主动的人为思想的预防以外,一套被动的网络安全检测福州大学至诚学院本科生毕业设计论文2机制也是必不可少的,通过运用标准的机制对网络中传输的各类型进行实时监控,对具有威胁性的信息进行甄别警报,这套机制的前提就是首先对网络中传输的信息进行捕获,对获取的信息解析筛查。而想要捕获这些信息,就要知道网络中的信息是以数据包的形式进行传输,想要获取信息,就必须对网

15、络中的数据包进行捕获和分析,才能获得所需要的相应信息。所以对网络上传送的数据包进行有效的捕获与解析是目前网络监控的关键技术,只有能够进行高效的网络数据包捕获和解析,才能为网管人员听过相应的数据进行分析或其他操作,从而进一步的施行网络安全监控和管理。IP数据包是网络中最常见的数据包类型,而IP也是TCP/IP协议族中最为核心的协议。所含有有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输,其中又主要以TCP和UDP两种数据类型为多数1。所以掌握了对IP数据包的捕获与分析技术,就能对网络中传输的大部分数信息进行监控和管理2。13研究内容由上所述,加强对网络中数据包传输的监管,已经越发

16、显得重要。而对网络中所传输的数据包进行捕获则是对网络中数据包管理的前提,通过监控分析网络中的数据包,是建设安全网络的保障。本实验就是通过研究网络中数据包的传输情况,构建一个简单快捷的数据包抓包及分析软件一、运用C开发一个简单的软件实现通过调用WINPCAP来对网络中的基本数据包进行捕获。二、通过WINPCAP中常用的库函数的使用方式,来实现了简单的小型的络数据包抓包器,并通过对原始包文的分析来展示当前网络的运行状况。三、对捕获的数据包进行解析分类处理,能将所捕获的数据包中的信息解析罗列成数据表,并可导入日志文本存储。通过以上步骤通过实现数据包的捕获、数据包信息的解析、流量的监控以及数据的导出。

17、14论文组织本文由五个章节所组成第一章绪论。简要介绍了课题背景、研究意义、本文研究的主要内容,以及对论文的总体结构概括。第二章相关技术介绍。简要介绍了C技术,同时也对编译平台VISUALSTUDIO2003,开发框架MFC以及WINPCAP进行了简单介绍。第三章系统设计。介绍对系统所做的需求分析、概要设计以及详细设计。第四章系统实现。总体介绍了系统怎样实现和实现截图。IP数据包的捕获与分析3第五章系统测试。分了四个步骤完成对该软件的测试。总结最后对本次毕设课题做了个小结,对所做软件进行评估,了解自己的不足,以及多未来的展望。福州大学至诚学院本科生毕业设计论文4第2章技术背景介绍21编程语言C是

18、一九八三年由贝尔实验室的BJARNESTROUSTRUP在C的基础上推出。C进一步扩充和完善了C语言,成为一种面向对象的程序设计语言。C目前流行的编译器最新版本是BORLANDC45,SYMANTECC61,和MICROSOFTVISUALC2012。C语言灵活,功能强大,类层次结构性强,标准定义细致严谨,具有快速和可移植性和面向对象特性,并兼容C语言的几乎所有特性,可扩展性强,很适合编写类库,效率高,运行处理速度快,大部分游戏软件都使用C编写3。所支持的这些面向对象的概念容易将问题空间直接地映射到程序空间,为程序员提供了一种与传统结构程序设计不同的思维方式和编程方法。因而也使得其过度复杂和标

19、准库的过度苍白,掌握起来有一定难度。22编译平台VISUALSTUDIO2003包含了MICROSOFTVISUALBASICNETMICROSOFTVISUALC等,用于构建和部署功能强大而安全的连接MICROSOFTNET的软件。其引入了250多个新特性,整合了对象、关系型数据、XML的访问方式,语言更加简洁。使用VISUALSTUDIO2003可以高效开发WINDOWS应用程序。VISUALSTUDIO2003支持项目模板、调试器和部署程序,方便程序员更轻松的进行工作,省去繁琐的步骤,提高效率。而且VISUALSTUDIO2003在设计器中可以实时反映变更,能及时掌控构建项目工程中的实时

20、变化操作。23开发框架MFCMICROSOFTFOUNDATIONCLASSES,是微软公司提供的一个类库(CLASSLIBRARIES),以C类的形式封装了WINDOWS的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量WINDOWS句柄封装类和很多WINDOWS的内建控件和组件的封装类。微软基础类MFCMICROSOFTFOUNDATIONCLASSES,同VCL类似,是一种应用程序框架,随微软VISUALC开发工具发布。该类库提供一组通用的可重用的类库供开发人员使用,大部分类均从COBJECT直接或间接派生,只有少部分类例外4。IP数据包的捕获与分析

21、524WINPCAPWINPCAP是用于网络封包捕获的一种工具,是在32位的操作平台上解析网络封包工具,包含了核心的封包过滤,一个底层动态链接库,和一个高层系统函数库和可用来直接存取封包的应用程序界面。WINPCAP是一个免费公开的软件系统,它用于WINDOWS系统下的直接的网络编程5。WINPCAP可以为用户提供了一个强大的编程接口,在各个操作系统之间进行移植较强,方便于程序员对WINPCAP进行开发。因此许多不同的工具软件都会使用WINPCAP用于对网络的分析,故障的排除,网络安全的监控等方面6。现今,在一些常用领域,WINPCAP也尤为适用,例如1、网络及协议分析2、网络监控3、通信日志

22、记录4、TRAFFICGENERATORS5、用户级别的桥路和路由6、网络入侵检测系统(NIDS)7、网络扫描8、安全工具福州大学至诚学院本科生毕业设计论文6第3章系统设计31需求分析需求分析是开发人员需要正确的了求所开发软件是针对怎样的的要求,能够实现要求中的各种功能。并按照对此的需求和构想,通过严谨调查分析,将该软件的从概念上转为实际上的需求定义,并通过该需求定义确定相应的规格要求。大体包括以下几个方面311环境需求分析操作系统WINDOWSSERVER200332位编译语言C编译平台VISUALSTUDIO2003开发框架MFCMICROSOFTFOUNDATIONCLASSES抓包工具

23、WINPCAP其他条件保证能够连接网络之所以选用WINDOWS200332位做位开发系统,因为其身为SERVER的服务器操作系统更适合做网络的相关的实验,而且32位系统兼容性强,WINPCAP能够正常使用。而WINDOWS7兼容性上与WINPCAP多个版本冲突不能正常使用,且INTENET服务上有缺失,还需自己下载,不便于该软件的开发。312功能需求分析根据课题要求,本系统主要需求是为了实现以下功能1、通过使用WINPCAP进行挽留过抓包。2、将抓到的包进行分析并显示。3、解析出包使用的协议、发出地址、目的地地址、包的大小,内容等4、在界面的列表中实时显示抓到的包的情况,点击列表,可以展开此包

24、的详细信息。5、流量监控6、导出数据313经济可行性分析目前的情况,网络安全问题一直是众所关注的问题,在没有彻底解决该问题前,市场也需要这种简单的软件程序来完成对一些基础的数据包捕获和分析。别是对于一些小型客IP数据包的捕获与分析7户而言,这种简单的数据包获取和分析软件完全可以满足其对于网络数据包的抓取处理工作,其简单使用的易于实验的,且对于那些不需要太昂贵太复杂的学生或个人来说,这款简单易操作的软件,更有助于他们进行学习了解,满足基本的需求,所以在该软件在是有一定的市场。314技术可行性分析1、开发软件可行性通过学习VISUALSTUIDO2003的使用方法和C的语法知识,分析各个数据结构和

25、算法,对完成论文过程中的可能会遇到的难点和关键开发点进行分析。并以原型的方式验证关键点的可行性,应用MFC开发框架,更容易打架整体框架,是工作事半功倍。结合该软件开发实际情况,经了解分析,是可以设计出符合实际需求、易于理解、易于操作、易于维护的分析软件。因此,本次项目,从软件的角度看,是可行的。2、开发的硬件的可行性开发本系统所使用的软件对于计算机硬件有一定的要求,VISUALCNET对计算机的内存、外存(主要是硬盘的容量)都有要求,这样才能是系统正常运行,基本要求是(1)设计环境为MICROSOFTWINDOWSSERVER2003或更高版本;(2)应用程序要求内存512M。从当前在市场上通

26、用流行是硬件水平来看,这种要求水平对不论是个人还是企业而言,是完全可以达到的。所以在硬件方面,本软件也是可行的。315操作可行性分析WINDOWSSERVER2003系统具有广泛的使用性,简单的操作性,和友好的用户界面,可以让使用人员较在的指导帮助下很快掌握该软件的使用方法。32概要设计在软件的设计过程中,采用了典型的MVC(MODELVIEWCONTROLLER)的设计模式,即模型MODEL视图VIEW控制器CONTROLLER,整体分为三层。每层通过构造不同的类来实现。第一层为控制层(CONTROLLER),构建CAPTUREPACKETDLG、CADAPATERSELECTION类,是用

27、于接受数据输入并调用模型和视图去完成操作的需求,而在该软件中,为了为简化设计,设计上本人将控制层分为两个部分,第一个部分为网络中数据包的捕获,另一部分为将获得的数据输入。主要功能就是获取数据包信息,接受数据输入并连接模型和视图去完成所要求的操作。福州大学至诚学院本科生毕业设计论文8第二层是模型层,构建CFRAMEPACKET类、CIPPACKET类、CTCPPACKET类、CUDPPACKET类和CARPPACKET类这五种类,是主要程序算法规则,分别用于解析数链路层数据和IP、TCP、UDP、ARP这四种不同的数据包;处理用户的输入。第三层为视图层即界面显示层,构建软件主界面CAPTUREP

28、ACKEDLG类,和保存界面COUTPUTDATADLG类,对控制层的要求对应的进行显示。系统的整体运行过程为从控制层捕获到初始的数据包数据,交由模型层进行对应解析处理,在将所得解析数据信息连接到视图层进行显示。图31系统概要设计图图32类的关系图33详细设计对于该软件的设计和执行过程,主要分为两个关键部分,所以按此要求分为中有两个核心的工作步骤,第一步是调用WINPCAP函数库实现下层抓包,这部分是为了实现网络中的数据包获取,是最基础的步骤。第二步是对所获取的数据包文进行分析和统计或是其他操作,筛选出我们所需要的信息。下面分别列出两个核心过程。抓包过程,通过WINPCAP的调用从网络中获取数

29、据包信息,步骤如下第一初始化WINPCAP开发库。IP数据包的捕获与分析9第二获得当前的网卡列表信息,从列表中选取其中所需要的指定网卡。第三获得当前的过滤规则,决定其过滤细节,但也可为空。第四调用库函数,PCAP_LOOP(),并同时指定其回调函数,所指定的回调函数其实就是数据包分析过程。分析过程,将所获取的当前数据包信息转存后进行解析过程,步骤如下第一由上一步通过WINPCAP抓包,将抓包后得到的数据包后转存到内存里,满足以后的使用和操作。第二调用相符协议类型的数据包分析类。在概要设计中,按模型层的要求,构造了多个用于分析不同类型数据包的分析类模型,每个模型对应一种数据包类型,调用是按要求调

30、用符合该数据包类型的指定模块。每个模型中按对应的数据包类型构造分析算法,完成对本类型数据包的具体解析工作。第三对数据包信息内容进行解析,过程如下在数据包中,其前14个字节(BYTE)表示为数据链路层的报文头,其报文格式是前6个字节(BYTE)表示为目的MAC地址,随后的6个字节(BYTE)表示为源MAC地址,最后的2个字节(BYTE)代表上层协议类型,这些重要的数据信息,是我们分析上层协议的依据。根据所分析到的协议类型进行类似的迭代分析。这样就可以得到各层中的报文头信息和数据信息。第三结束本次分析,等待下一次调用。图32设计流程图福州大学至诚学院本科生毕业设计论文10第4章系统实现41获取网卡

31、信息一个主机可以拥有多张网卡,在进行网络编程之前,我们都会先得到计算机网卡配置的有关信息。网卡的相关信息主要包括该网卡的名称,网卡的描述和相关配置的IP地址配置信息IP地址、子网掩码、网关以及网卡的MAC地址等。本章的主要内容是利用WINPCAP提供的相关函数,取得网卡的名称以及IP地址配置的相关信息。411存储计算机网卡信息的数据结构在计算机中,由于存在多个网卡,所以常常使用链表的结构体来保存每个网卡节点的信息。每个节点的主要包含的信息如下PCAP_IFNEXTCHARNAMECHARDESCRIPTIONPCAP_ADDRADDRESSU_NITFLAGS数据结构PCAP_IF接口的信息网

32、卡节点PCAP_IF的数据结构STRUCTPCAP_IFSTRUCTPCAP_IFNEXT/指向下一个节点CHARNAME/网卡名称CHARDESCRIPTION/网卡描述STRUCTPCAP_ADDRADDRESSES/网卡IP地址信息U_INTFLAGS/标记,目前只支持换回地址标记为PCAP_IF_LOOPBACKIP地址信息的数据结构PCAP_ADDR的结构如下PCAP_ADDRNEXTSOCAKDDRADDRSOCKADDRNETMASKSOCKADDRBROADADDRSOCKADDRDSTADDR数据结构PCAP_ADDR地址信息STRUCTPCAP_ADDRSTRUCTPCAP

33、_ADDRNEXT/下一个IP地址信息节点(一个网卡可以绑定多个IP)STRUCTSOCKADDRADDR/IP信息地址的结构STRUCTSOCKADDRNETMASK/子网掩码的信息结构STRUCTSOCKADDRBROADADDR/广播IP地址信息STRUCTSOCKADDRDSTADDR/目标IP地址信息,如果不是点对点网络,该字段为IP数据包的捕获与分析11NULL412WINPCAP获取网卡信息的相关函数在进行WINPCAP编程之前,先介绍WINPCAP编程的主要流程与相关步骤。(1)PCAP_FINDALLDEVS_EX获取主机所有网卡的信息包含在头文件REMOTEEXTH中。IN

34、TPCAP_FINDALLDEVS_EXCHARSOURCE,/定义主机位置,一般使用PCAP_SRC_IF_STRINGSTRUCTPCAP_RMTAUTHAUTH,/是否需要验证,如果是本主机该项为NULLPCAP_IF_TALLDEVS,/返回的结果,保持网卡信息的链表的头指针CHARERRBUF/指向错误信息保存的缓冲区使用的代码如下IFPCAP_FINDALLDEVS_EXPCAP_SRC_IF_STRING,NULL,EXIT1WINPCAP中还保留的早期的一个获取网卡信息的函数。(2)PCAP_FINDALLDEVSPCAP_IF_TALLDEVSP,CHARERRBUF该函数只

35、能获取本主机的网卡信息列表,使用方法如下PCAP_FINDALLDEVS42数据分析数据分析模块的设计思想是将WINPCAP捕获到的数据对应网络数据包的格式进行初始化,取得具体的值,并输出到界面。数据分析模块的主要实现数据的解析。从网络适配器中捕获数据的为原始数据,这些原始数据为二进制格式,必须转化为能比较好明白的格式,这就要求将这些原始数据能按照网络数据传输的具体格式来保存,主要为了能较好的读懂相关的信息,以便使用者分析。数据分析模块实现时,本系统提取的数据包中主要的一些信息。为了实现这个功能,特此构造了几种数据包分析类,用于分析这几种常见常用的数据包,在提取获得的数据包信息后,按照不同的数

36、据包类型,相应的调用构建好的数据包分析类,对所获取的该类型数据包进行分别处理。这几种类根据控制层控制,从抓包开始到结束,一直重复调用,分门别类的处理各自相应数据包,并通过主界面显示。福州大学至诚学院本科生毕业设计论文12表41分析类表类名作用CFRAMEPACKET类构造函数CFRAMEPACKETCFRAMEPACKETCONSTUNSIGNEDCHARBUF,INTBUFLEN用于处理链路层数据,分析数据包的类型。CIPPACKET类构造函数CIPPACKETCONSTUNSIGNEDCHARBUF,INTBUFLEN,中实现通过调用已获取的IP包数据,分析IP包中的各项参数。CTCPPA

37、CKET类构造函数CTCPPACKETUNSIGNEDCHARBUF,INTBUFLEN,实现通过调用已获取的TCP包数据,分析TCP包中的各项参数。CUDPPACKET类构造函数CUDPPACKETUNSIGNEDCHARBUF,INTBUFLEN,实现通过调用已获取的UDP包数据,分析UDP包中的各项参数。CARPPACKET类构造函数CARPPACKETCONSTUNSIGNEDCHARBUF,CONSTUNSIGNEDINTBUFLEN,实现通过调用已获取的ARP包数据,分析ARP包中的各项参数。其中BUF指向该数据包的数据内容,BUFLEN代表其数据长度,由这两个变量构造算法变换进制

38、,对数据包逐层解析出所含信息版本号、头部长度、服务类型、优先级等等。43主界面构造如图41所示,通过MFC框架,构建的CAPTUREPACKETDLG类,实现该软件的主界面对话框。整个界面主要为5个部分1、顶部的菜单栏主要有四个项目操作项目的功能是启动和停止抓包以及退出;设置项目的功能是对网卡进行配置;数据管理项目的功能是对数据导出保存,帮助这是该介绍该软件的作用。2、中部的列表信息栏主要功能是将从开始抓包到结束抓包期间内,所有捕获到的数据包各类信息解析后用表的形式显示出来,方便查看。3、左下角数据包树形栏,主要功能是将所选中的数据包的数据链路层、网络层、传输层这三层的各类信息,同个树形表的形

39、式显示出来,方便具体查看。4、右中部的提示栏,主要功能是将选中数据包的源MAC地址、目的MAC地址信息和协议号显示出来。5、右下角的统计栏,主要功能是将从该软件抓包开始到抓包结束期间内,所有捕获的数据包按着所设定的不同协议类型的数据包。进行分别统计,计算数据包的总数量和各种协议数据包的数量,并显示出来。IP数据包的捕获与分析13图41主界面图44成果展示如图42所示,为该软件进行网卡调试选择,点击菜单栏上的设置,在下拉列表中选择网卡配置通过选定网卡,以便抓包的进行。图42设置网卡图福州大学至诚学院本科生毕业设计论文14如图43所示,为软件进行抓包的过程,中部列表项显示的是在这一时段捕获的所有数

40、据包,而右下角的统计量显示的是这些数据包的类型和数量。图43开始抓包图如图44所示,为抓包后,选中其中一个数据包,显示选中包传输层、网络层、传输层的数据信息。图44选中查看数据包图IP数据包的捕获与分析15如图45所示,为软件导出数据信息的过程。图45数据包信息的导出图福州大学至诚学院本科生毕业设计论文16第5章软件测试51测试方法软件经过需求分析、概要设计和编码等等一系列过程后,可以将源程序开始进行测试。但在测试之前,开发中各阶段中都可能有许多缺陷和错误存在,这对软件是致命的。如果不能及时找出这些缺陷和错误,对其进行必要的更改修正,软件就无法就正常使用,进而导致资源浪费和经济的损失。因此在程

41、序的正确性尚未得证明到没得到解决,软件测试仍是发现其中中缺陷和的主要手段。程序整体测试步骤1模块测试在软件编程中,程序分为了好几个模块,每个模块又由各个类组成的,想要实现程序功能,测试程序的正确性是不必可少的,各个模块是程序组成的基石,而各模块的正确无误是保证施行的前提,如果测试无法通过,那软件就没有运行的可行性。所以模块测试是总体测试的第一步,也是最重要的一步;先分别对各个模块测试,发现并改正程序中的问题和语法错误。在测试中首先对所完成的各个模块进编译,确保每个单独的模块能够正确编译成功,只有所有模块中没有存在错误才能进一步测试。如图51所示,通过对各个模块的单元测试查看是否各单元中存在错误

42、。图51模块测试图IP数据包的捕获与分析172系统测试模块测试无误后,便可以将所有模块按照程序设计要求组装成所需要系统,然后就可以进入系统测试,测试的主要目的是检测模块间能否正确的调用所需单元,所配置的接口是否正确,各个模块间能否正常对接兼容,并能够对所用组装好的系统进行项目生成,完成系统的构建。如图52所示,将所有模块和文件整理成系统后进行项目生成。图52系统测试图3功能测试当系统测试通过时,我们便可以得到初步的系统,程序已经可以正常运行并进行操作,但还不能算测试成功,因为还需要对该系统进行功能测试,其目的是在实际操作中,检测所做的系统是否能够完成需求分析中系统所需功能,这些功能是否能够顺利

43、施行,施行操作后结果是否正确。只有通过最后的功能测试环节才能够确定所做系统是否符合设计要求,达到要求标准。通过虚拟机模拟网络环境,启动系统进行指定抓包,设置主机IP地址为1921682103,客户机IP地址为1921682101。完成设置后进行互PING,产生数据包,同时通过该软件进行抓包,观察系统是否能够顺利的捕获到互PING时产生的数据包,并解析出所需要的数据信息。如图53所示,该软件成功的对所发送过来的数据包进行了及时的捕获和解析,测试通过。福州大学至诚学院本科生毕业设计论文18图53功能测试图IP数据包的捕获与分析19结论这次课程设计已完成,通过这此课程设计我学到了很多东西。此课程设计

44、用到了大学4年中很多基础知识,本次课程设计不是对这些基础理论知识的简单应用,而是把它们和实际问题相结合,综合应用。刚开始的时候,因为知识不牢靠,也没有从没做独自做过一个软件,在软件编写中遇到了很多阻力,只能靠自己的不断充电,从网络、书籍以及老师同学们的帮助下,才终于完成了此次毕设,在这期间不仅提高了我解决问题,分析问题的能力,创新能力,也加强了我对计算机科学与技术基础知识的进一步掌握。但这次课设所做的软件还是存在一定的问题的,首先这只是个简单的抓包分析软件,而且因为自身技术的不足,该软件只能实现基本的抓包,解析信息以及粗略的流量监控,自己一些想法,如检析错误,危险警报,多功能赛选等功能都没能实

45、现。不过现今的网络安全,网络管理等行业也需要相对应得一些知识技术,而身为IT人的我们也需要学习跟多的相关知识。这次毕设中所留不足和遗憾也给了我今后一个学习研究的目标,而通过完善该软件,也能为我积累更多的经验和专业知识。福州大学至诚学院本科生毕业设计论文20参考文献1谢希仁计算机网络第五版M北京电子工业出版社200811221262WRICHARDSTEVENSTCP/IP详解卷1协议M北京机械工业出版社2000,55583钱能C程序设计教程修订版M北京清华大学出版社20097552264邓振杰C程序设计M北京人民邮电出版社2005712795沈辉,张龙基于WINPCAP的网络数据监测及分析J北

46、京计算机科学2012256费绍敏基于WINPCAP的网络监控系统的设计与实现J成都通信技术2009,61237BRUCEECKELJAVA编程思想第4版M上海上海大学出版社2007,15178ANDREWSTANENBAUM计算机网络M北京清华大学出版社1998,981009DOUGLASECOMERTCP/IP网络互连技术M北京清华大学出版社1998,767910刘芳网络流量监测与控制M北京北京邮电大学出版社20099394211美SRIDHAR,PODURIMODERNCANDWINDOWSSTOREAPPSMSRIDHARPODURI201315121012美JEFFREYRICHTER

47、,CHRISTOPHENASARREWINDOWSVIAC/C5THEDITIONMMICROSOFTPRESS200111024143IP数据包的捕获与分析21谢辞通过几个月来的努力,以及在导师的指导和同学帮助之下,终于顺利地完成了本次毕业设计。在毕业设计这段时间里,遇到的困难和挫折让我认识到了自己的不足并努力的完善自己,因此,最终不仅完成了毕业设计,还学到了以前很多没有学到的知识,同时也巩固了所学过的知识,是一次很好的锻炼,使自己受益匪浅。首先,感谢导师。作为我的导师,无论是在理论还是实践方面都给我提了很多宝贵的意见,使我的毕业设计在有条不紊的环境下进行,逐步趋于完善,得以顺利完成。其次,我也很感谢在中期检查时老师们给我提出宝贵意见,还有在此期间的关怀和帮助,以及学院为我提供良好的毕业设计环境。最后,还要感谢所有在毕业设计中为我提供帮助的学院的老师和同学,以及在毕业设计中被我引用或参考的论著的作者,没有你们在在毕业设计期间给予我帮助和支持,也不会有今天这份成果,再次感谢大家。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。