信息管理与信息系统:网络协议仿真软件设计与实现分析研究.doc
《信息管理与信息系统:网络协议仿真软件设计与实现分析研究.doc》由会员分享,可在线阅读,更多相关《信息管理与信息系统:网络协议仿真软件设计与实现分析研究.doc(62页珍藏版)》请在三一文库上搜索。
1、信息科学与技术学院毕业论文课题名称:网络协议仿真软件设计与实现分析研究学生姓名:xxxxxxxxxxxxxxxxxxxxxxxxxx学 院:信息科学与技术学院专业年级:信息管理与信息系统2009级指导教师:xxxxxx 讲师完成日期:二一三年四月 摘 要由于网络模型和协议的抽象性,即使专业人员对其理解也有很大困难。为了将抽象的难以理解的网络模型框架、协议原理、网络应用等专业知识,用易于理解的通俗易懂的形式将其理解。非专业的人员在使用网络协议仿真软件的同时可以对网络协议有基本的理解,有一定专业知识的人员更好的理解网络协议原理、掌握学习要领。本课题通过对网络抓包软件的实现,来详细深入的了解网络协议
2、如何工作,文中首先分析了抓包的原理和技术,并介绍了几种常见的抓包软件,然后研究了入侵检测系统中使用的包捕获技术,利用winpcap接字在windows平台下实现了一个网络抓包软件程序,具有对数据包进行拆包、解包等功能,最后通过动画演示生动形象的描述网络协议如何运行。关键词 网络抓包软件 数据包捕获 数据包分析 Winpcap27Network protocol emulation software design and implementationStudents:xxxxxxxxxxxInstructor:xxxxxxxxxAbstract As the network model and
3、agreement of the abstract, even to the professional understanding will have great difficulty. In order to bring the abstract to understand the network model of the framework agreement, principle, network application and other professional knowledge, in an understandable easy-to-read formats will be
4、the understanding. Casual personnel to use network protocol emulation software on the network at the same time can be a basic understanding of the agreement, have certain professional knowledge workers better understanding of network protocol principle, learning will bring.This topic through network
5、 caught software to realize, to a detailed understanding of how the network protocol, this paper first analyzes the principle and technology of caught, and introduces several common caught software, and then studied the intrusion detection system used in the packet capture technology, using winpcap
6、meet word in Windows the workbench implements a network caught a software program, has for packet for unpacking, solution package, and other functions, the last through the animation of vivid description network protocol how to run.Key words network sniffe ; capture data packet ; analyze data captur
7、e ; Winpcap目录第一章绪论11.1 课题背景11.2 课题研究的目的及意义11.3 任务书11.3.1 设计时间11.3.2 课题分工21.3.3 设计成果21.3.4 论文组织2第二章网络协议及协议仿真技术32.1 网络协议32.1.1 OSI七层参考模型32.1.2 TCP/IP参考模型32.1.3 OSI模型与TCP/IP模型的比较42.1.4 主要协议52.1.5 数据包在TCP/IP网络中的封装解封过程102.2 仿真技术简介112.3 反嗅探措施132.3.1 嗅探的检测132.3.2 嗅探的防御132.4 Windows下的网络嗅探及WinPcap研究132.4.1 W
8、inPcap简介132.4.2 WinPcap体系结构162.4.3 Windows下的网络嗅探192.4.4 基于WinPcap的包捕获过程21第三章需求分析与动画演示设计233.1 功能需求233.2 性能需求233.3 可行性分析243.4 动画演示设计24第四章详细设计284.1 开发环境284.2 系统功能模块图294.3 系统流程图304.4 详细设计314.4.1 界面实现314.4.2 选择网卡344.4.3 过滤规则344.4.4 数据包捕获364.4.5 数据包分析37第五章系统测试465.1编写目的465.2测试概要465.3对软件功能的评价49第六章开发总结51致谢53
9、石河子大学学士学位论文 第一章 绪论第一章 绪论1.1 课题背景近年来,数据通信网络无论就其物理的规模还是应用范围来讲,都获得了巨大的发展。Internet上不断地有新的需求出现,人们开发新的协议和算法来满足这些变化的需求。这种需求的例子包括服务质量支持、组播传输、安全性、移动组网和策略管理。对这些领域的协议和算法的开发和评价要求人们回答很多设计上的问题。由于网络协议是抽象的,很多学生不易理解,所以用仿真软件的设计与实现来了解网络协议。本论文采用了WinPcap驱动对链路层数据帧进行高效捕获,并针对四种具体协议ARP、IP、TCP、UDP进行协议分析。借助WinPcap来研究Windows平台
10、下的网络协议仿真技术是具有现实意义的,这不仅能促进网络嗅探系统的改进和发展,还能促进WinPcap本身的发展。在本论文的程序开发过程中涉及到较多方面,如协议分析,MFC编程,及对WinPcap驱动框架的理解,这些工作在很大程度上加深了自己对网络协议应用的理解。本课题主要通过对数据包的抓捕与分析机制进行研究, 参考了大量有关抓捕数据包的专业文献,由此了解国内以及国际上主要的抓捕分析数据包的技术方法,并通过制作一个共享环境下的的数据抓包软件的具体实现以对该机制进行深一步的了解。1.2 课题研究的目的及意义网络协议具有抽象、难以理解等特点,学生在学习计算机网络相关课程时总感到协议难懂、不具体。设计一
11、个网络协议仿真软件可形象的将网络协议的运行原理和过程演示出来,学生对网络原理理解就会更深、学习的进度也会加快。由于网络模型和协议的抽象性,即使专业人员对其理解也有很大困难。为了将抽象的难以理解的网络模型框架、协议原理、网络应用等专业知识,用易于理解的通俗易懂的形式将其理解。非专业的人员在使用网络协议仿真软件的同时可以对网络协议有基本的理解,有一定专业知识的人员更好的理解网络协议原理、掌握学习要领。1.3 任务书1.3.1 设计时间(1)第1-3周 搜集相关文献文档(2)第4周 系统功能模块分析(3)第5周 系统技术实现分析 (4)第6-13周 程序编写,系统调试,相关文档的撰写(5)第14周
12、完善系统和对论文的撰写(6)第15周 准备预审和相关毕业答辩文档(7)第16周 终期答辩 总计16周1.3.2 课题分工徐婷:开题报告、文献综述、论文初稿搜集整理相关文献资料、需求分析、系统测试饶冬冬:功能模块的分析和设计、动画演示制作、系统调试修改共同合作:结构设计、整体模块设计、系统编写实现1.3.3 设计成果毕业设计相关文献及成果清单包括:可执行软件一份开题报告文献综述用户手册石河子大学信息科学与技术学院2012毕业设计论文1.3.4 论文组织下面是本论文的章节组织:第一章:绪论,概括介绍了论文的研究背景、研究目的及意义。第二章:网络协议及协议仿真技术,系统介绍网络协议框架结构,每层的相
13、关的协议,以及协议仿真技术的知识,包括嗅探的原理,以及一些反嗅探的方法。研究分析网络TCP/IP协议,并对本嗅探器基于的 WinPcap的框架体系进行深入地研究。第三章:需求分析与可行性分析,动画演示设计。 第四章:主要是网络数据包捕获工具实现的详细步骤及设计,主要分为界面,网卡选择模块、数据包过滤模块、数据包捕获模块和数据包分析模块。第五章:对本文所构建的数据包嗅探器进行测试,实验证明系统达到了预期的设计目标。第六章:总结了本论文的主要工作。石河子大学学士学位论文 第二章 网络协议及协议仿真技术第二章 网络协议及协议仿真技术 2.1 网络协议2.1.1 OSI七层参考模型要使两台计算机进行通
14、信,必须让它们使用同一种“语言”,通信协议就是两台计算机交换信息所使用的共同语言,它规定了通信双方在通信中所应共同遵守的规则,精确地定义了计算机在相互通信过程中的所有细节。我们利用一个共同遵守的通信协议,从而使Intemet成为一个允许连接不同类型的计算机和不同操作系统的网络。例如,协议规定了每台计算机发送报文的格式和每个字段的含义,还规定了在各种情况下计算机应该做出什么反应,以避免差错从而达到最好的通信效果。在网络历史的早期,国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)共同出版了开放系统互联的七层参考模型6,它是一种抽象的包含七层通信协议的参考模型,其中每一层执行某一规定的
15、任务,每层之间都有相应的接口,除了第一层和第七层外,每一层即使用下层提供的服务,又给上层提供服务,也就是说它即是服务的享有者,又是服务的提供者。这种设计模型可以简化协议开发过程中的难度,每一层只需做好该层的工作并提供好向上的接口即可,在保证每一层实现效率的前提下,具体怎么实现要根据具体情况来确定。该模型的目的是使各种硬件在相同的层次上相互通信,表21表示了OSI七层参考模型。表2-1 OSI七层参考模型应用层表示层会话层传输层网络层数据链路层物理层按照OSI开放系统互联参考模型的观点,可将网络系统划分为7层结构,每一个层次上运行着不同的协议和服务,并且上下层之间互相配合,完成网络数据交换的功能
16、。然而,OSI模型仅仅是一个参考模型,并不是实际网络中应用的模型。实际上应用最广泛的商用网络模型是TCP/IP网络参考模型,将网络划分为四层,每一个层次上运行着不同的协议和服务4。2.1.2 TCP/IP参考模型TCP/IP参考模型被称作因特网分层模型、因特网参考模型(Intemet Reference Model),表2-2表示了TCP/IP分层模型的四层。TCP/IP协议被设计成四个层次,其中应用层对应于OSI模型中的应用层、会话层、表示层,传输层和网络层分别对应OSI中的相应层,网络接口层对应于OSI中的数据链路层和物理层。TCP/IP分层模型的四个协议层分别完成以下的功能5:第一层网络
17、接口层:网络接口层包括用于协作IP数据在已有网络介质上传输的协议。它对实际的网络媒体进行管理,定义了将资料组成正确帧的规则和在网络中传输帧的规则,定义如何使用实际网络如以太网Ethemet等来传送数据。实际上TCP/IP标准并不定义与ISO数据链路层和物理层相对应的功能。相反,它定义像地址解析协议(ARP-Address Resolution Protocol)这样的协议,提供TCP/IP协议的数据结构和实际物理硬件之间的接口。表2-2 TCP/IP参考模型应用层DINS、FTP、HTTP、TELNET、SMTP、USENET、FINGER、WHOIS、GOPHER、IRC、其他传输层 TCP
18、 UDP网络层ICMP IP网络接口层ARP/RARP 其他协议第二层网络层:负责提供基本的数据封包路由功能,让每一个数据包都能够到达目的主机,但不检查是否被正确接收,如网际协议IP。本层包含IP协议、RIP协议(Routing Information Protocol,路由信息协议),负责数据的包装、寻址和路由。同时还包含网问控制报文协议(ICMP Intemet Control Message Protocol)用来提供网络诊断信息。第三层传输层:为两个用户进程之间建立、管理和拆除可靠而又有效的端到端连接,提供两种端到端的通信服务。其中TCP协议(Transmission Control
19、Protocol)提供可靠的数据流传输服务,UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。第四层应用层:因特网的应用层协议包括FTP(文件传输协议)、HTTP(超文本传输协议)、Telent(远程终端协议)、SMTP(简单邮件传送协议)、IRC(因特网中继会话)、NNTP(网络新闻传输协议)等。2.1.3 OSI模型与TCP/IP模型的比较与OSI参考模型不同,TCP/IP协议并不完全符合OSI的七层参考模型,如表2-3所示。TCP/IP参考模型更侧重于互联设备间的数据传送,更注重实用性,而不是严格的功能层次划分。OSI参考模型在解释互联网络通信原理上比较
20、适合,TCP/IP在实用性上面比较好,因而成为了互联网络协议的市场标准。TCP/IP参考模型是在它所解释的协议出现很久以后才发展起来的,并吸取了OSI模型的经验和教训,比OSI模型更灵活,这也是TCP/IP协议之所以流行的原因。表2-3 OSI模型与TCP/IP模型的比较OSI参考模型OSI层号TCP/IP参考模型应用层7应用层表示层6会话层5传输层4传输层网络层3网络层数据链路层2网络接口层物理层12.1.4 主要协议1) IP网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议。IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层-TCP或UD
21、P层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的服务来说,使用了该选项的IP包好像是从路径上的最后一个系统传递过来的
22、,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。IP数据报格式,如图2-1所示:图2-1 IP数据报格式版本:4位,标识IP版本号。目前有IPv4、IPv6。我们目前所用的IP协议基本都是IPv4版本。首部长度:4位,度指的是首部占32bit字的数目,包括任何选项。由图3-1可知首部所占字节数为(4+4+8+16+16+3+13+8+8+16+32+32+0)160bit,正好是32bit的5倍,所以首部长度最小为5。如果选项字段有其它数据,则这个值会大于5。由上面也可知
23、IP首部最小长度为20字节,最大长度为(2的4次方-1)*32/860字节。服务类型:8位,其中:优先权:3位,设置了数据包的重要性,取值越大数据越重要,取值范围为:0(正常)-7(网络控制)。TOS:4位,分别表示最小延时、最大吞吐量、最高可靠性、最小费用。如果4位TOS子字段均为0,那么就意味着是一般服务。未使用:1位,必须置0。总长度:16位,总长度指首部和数据之和的长度,以字节为单位。利用首部长度字段和总长度字段,就可以知道I P数据报中数据内容的起始位置和长度。由于该字段长16比特,所以IP数据报最长可达65535字节。标识:16位,唯一地标识主机发送的每一份数据报。通常每发送一份报
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息管理 信息系统 网络 协议 仿真 软件设计 实现 分析研究
链接地址:https://www.31doc.com/p-5035283.html