网络嗅探器的设计与实现分析.docx

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络嗅探器的设计与实现分析

计算机网络课程设计报告网络嗅探器的设计与实现目录第一章设计目的、任务与要求11.1设计的目的11.2设计的任务与要求1第二章系统分析设计12.1需求分析12.2 原理分析12.3网络中数据传送过程以及数据包结构22.3.1信息传送过程22.3.2 数据包的结构2第三章系统实现43.1 Winpcap技术43.2系统主要模块73.3 实现界面9第四章心得体会104.1 程序总结104.2 个人总结10参考文献10附录11第一章设计目的、任务与要求1.1设计的目的编写程序实现捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。1.2设计的任务与要求IP数据包的捕获与分析,程序能够自动的收集局域网中的IP数据包,能在程序运行时进行显示。 实现在标准输出和日志文件中写入捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。程序的具体要求如下:1)在标准输出和日志文件中写入捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。2)形成记录结果的日志文件。第二章系统分析设计2.1需求分析在通常情况下,网络通讯的Socket程序只能响应与自己硬件地址想匹配的或者是以广播形式发出的数据桢,对于其他形式的数据桢,比如已到达网络接口但却不是发给此地址的数据桢,网络接口在验证目的MAC并非自身地址之后,将不进行响应,也就是说应用程序无法收取与自己无关的数据包。所以,我们要想实现截获流经网络设备的所有数据包,都要采取一点特别的手段了:将网卡设置为混杂模式,这样以来,该主机的网卡就可以捕获所有流经其网卡的数据包和帧。利用基于Win32的捕获数据包和网络分析的Winpcap可以实现从网卡捕获以及分析IP数据包。2.2 原理分析Winpcap所包含的packet.dll和Wpcap.dll:packet.dll直接映射了内核的调用。 Wpcap.dll提供了更加友好、功能更加强大的函数调用。WinPcap的优势提供了一套标准的抓包接口,与libpcap兼容,可使得原来许多UNIX平台下的网络分析工具快速移植过来便于开发各种网络分析工具,充分考虑了各种性能和效率的优化,包括对于NPF内核层次上的过滤器支持,支持内核态的统计模式,提供了发送数据包的能力。2.3网络中数据传送过程以及数据包结构2.3.1信息传送过程计算机网络将要传输的报文分割成一个个小的数据片段,称为“分组”,在每一个分组的数据前加上传输数据所必需的信息“报头”,就构成了网络数据传输的基本部件“数据包”。在计算机网络中,传输的信息是以数据包为基本传输单位的,数据包的内容是被分割后的信息块,在每个数据包上附加了多层包头。在一个数据包里,信息内容往往是不完整的,而在每一个数据包头部,完整地包含了传送此数据包所需的全部来源及目标的地址信息。在一个数据包最里层是被传输的数据。在数据的外面首先由处理此数据的应用程序将数据片断外包裹上应用层的协议,然后交给网络通信系统软件,网络通信系统软件根据此数据包的传输方式,为数据包裹上传输层协议,交给下一层协议。下面的网络层协议根据数据包的路由地址,为其包裹上网络层协议,并交给下一层协议。下面的链路层协议为数据包加上来源和目标物理地址的链路层协议后交给下一层协议。在物理层,由网络通信硬件系统按照通信设备的要求将数据包转换成一个个符合物理层协议的电脉冲,通过网络接口电路发送的网络传输媒介上。这一串串电脉冲沿着传输媒介到达下一个网络节点。在每一个网络节点上,节点设备将收到的电脉冲还原为数字信号,并对数字信号进行判读和分析,了解此数据包的最终目的地,并根据节点上的路由表为此数据包选择一个到达目的地的最佳路由,并对此数据包进行必要的修改和签章后再次发送到网络传输媒介上。数据包就这样通过一个个网络节点,最终到达了信息传输的目的地。在目标主机上,依据网络协议,逐层地对数据包进行签收和校验,如果数据包未出现差错,则剥除此层的协议,将数据向上层递交。通过如此逐层剥除与递交,最终在应用层由应用软件系统将一个个还原后的数据包拼接还原为原始的状态,完成了数据的传输过程。2.3.2 数据包的结构捕获的网络数据包的结构如图所示:DLC数据帧头IP数据包结构UDP/TCP/ICMP/IGMP数据报结构数据其中DLC数据帧头:目的MAC(6字节)源MAC(6字节)以太网类型(2字节)IP数据包结构:UDP数据包结构:TCP数据包结构:ICMP数据包结构:IGMP数据包结构:第三章系统实现3.1 Winpcap技术winpcap(windows packet capture

文档评论(0)

441113422 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档