- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DCN0801网络聊天室设计 北京电子科技学院通信工程系053233 王汝飞 PAGE 25 计算机网络课程 设计报告 题 目: 网络嗅探器设计 编号: 10-11-02-02 姓 名: 学 号: 日 期: 2011-5-17 至 2011-6-27 课程设计成绩: 指导教师签名: 目录 TOC \o 1-3 \h \z \u HYPERLINK \l _Toc202367449 目录 PAGEREF _Toc202367449 \h 2 HYPERLINK \l _Toc202367450 一、课程设计要求 PAGEREF _Toc202367450 \h 3 HYPERLINK \l _Toc202367451 二、技术要点 PAGEREF _Toc202367451 \h 4 HYPERLINK \l _Toc202367452 1、属性 PAGEREF _Toc202367452 \h 4 HYPERLINK \l _Toc202367453 2、主要方法 PAGEREF _Toc202367453 \h 5 HYPERLINK \l _Toc202367454 3、发生的事件 PAGEREF _Toc202367454 \h 6 HYPERLINK \l _Toc202367455 三、编程思想 PAGEREF _Toc202367455 \h 7 HYPERLINK \l _Toc202367456 四、实现过程 PAGEREF _Toc202367456 \h 8 HYPERLINK \l _Toc202367457 五、难点与主要问题 PAGEREF _Toc202367457 \h 18 HYPERLINK \l _Toc202367458 六、结束语 PAGEREF _Toc202367458 \h 18 HYPERLINK \l _Toc202367459 参考资料 PAGEREF _Toc202367459 \h 18 一、课程设计要求 编写图形界面程序实现简单网络嗅探器,具体功能如下: 1. 能够截获流经网卡的数据包; 2. 能够清楚的解析出某个数据包的以太网头部细节信息,IP头部细节信息,如果是TCP、UDP、ARP等协议的数据包,还需要根据协议详细的解析出TCP头,UDP头,ARP头。这些内容能够清楚的体现在图形界面上; 3.要求界面美观,实现设计内容所述功能; 4.要求程序代码与界面中均带有明显的学号姓名等版权信息。 二、技术要点 1、属性 winpcap的主要功能在于独立于主机协议(如TCP-IP)而发送和接收原始数据包。也就是说,winpcap不能阻塞,过滤或控制其他应用程序数据包的发收,它仅仅只是监听共享网络上传送的数据包。 Winpcap驱动各项功能 1 捕获原始数据包,包括在共享网络上各主机发送/接收的以及相互之间交换的数据 包; 2 在数据包发往应用程序之前,按照自定义的规则将某些特殊的数据包过滤掉; 3 在网络上发送原始的数据包; 4 收集网络通信过程中的统计信息。 2、主要方法 〖抓包〗 抓包是NPF最重要的操作。在抓包的时候,驱动使用一个网络接口监视着数据包,并将这些数据包完整无缺地投递给用户级应用程序。 抓包过程依赖于两个主要组件: 一个数据包过滤器,它决定着是否接收进来的数据包并把数据包拷贝给监听程序。数据包过滤器是一个有布尔输出的函数。如果函数值是true,抓包驱动拷贝数据包给应用程序;如果是false,数据包将被丢弃。NPF数据包过滤器更复杂一些,因为它不仅决定数据包是否应该被保存,而且还得决定要保存的字节数。被NPF驱动采用的过滤系统来源于BSD Packet Filter(BPF),一个虚拟处理器可以执行伪汇编书写的用户级过滤程序。应用程序采用用户定义的过滤器并使用wpcap.dll将它们编译进BPF程序。然后,应用程序使用BIOCSETF IOCTL写入核心态的过滤器。这样,对于每一个到来的数据包该程序都将被执行,而满足条件的数据包将被接收。与传统解决方案不同,NPF不解释(interpret)过滤器,而是执行(execute)它。由于性能的原因,在使用过滤器前,NPF提供一个JIT编译器将它转化成本
文档评论(0)