- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于WinPcap的网络数据包捕获的研究
摘要:WinPcap[1]系统是一个功能强大的用于网络数据获取的开发包,为程序员提供了一套标准的网络数据包捕获接口,它直接作用于网卡,获取数据链路层的数据, 能捕获数据链路层的所有数据包。该文概述了WinPcap的内部结构,简要介绍了WinPcap捕获数据包的实现原理,详细分析了实现WinPcap捕获数据包的过程。
关键词:WinPcap;数据包捕获;NPF;Libpcap
中图分类号:TP393文献标识码:A文章编号:1009-3044(2010)13-3330-03
Study of Network Packet Capture Based on WinPcap
CAI Hao1, LI Na2
(1.School of Computer Science and Engineering, Changchun University of Technology, Changchun 130012, China; 2.Department Computer Science, Huazhong Normal University, Wuhan 430079, China)
Abstract: WinPcap system is a powerful package of network data acquisition, provides programmers with a standard set of network packet capture interface, which directly act on the network adapter, access to the data link layer of the data, and can capture all of the data link layer packets. This paper outlines the internal structure of WinPcap, a brief description of the WinPcap packet capture implementation and a detailed analysis of the realization of WinPcap packet capture process.
Key words: WinPcap; packet capture; NPF; Libpcap
随着计算机技术的发展, 网络已日益成为生活中不可或缺的工具, 但伴之而来的非法入侵也一直威胁着计算机网络系统的安全。由于局域网中采用广播方式, 因此, 在某个广播域中可以捕获到所有的数据包。而黑客通过对数据包进行分析, 就能获取局域网上传输的一些重要信息。但另一方面, 我们对黑客入侵活动和其它网络犯罪进行调查、取证时,也可以使用网络数据捕获技术来获取必要的信息。因此, 准确全面的捕获到以太网数据信息,从而实现对网络的监控就显得尤其重要。
传统的网络数据捕获大都使用如:Windows SDK方法、套接字方法等,这些方法的缺点是与操作系统类型和版本密切相关,使用这些方法开发的软件通用性不强;且原始套接字操作复杂,只能捕获到IP层的数据包,不能捕获数据链路层的信息,特别是不能对ARP数据包进行处理。相比之下WinPcap提供了一组功能强大且与操作系统和适配器无关的函数,能捕获正在网络上传输的原始数据包,可以获得原始MAC帧的拷贝,并且WinPcap具有两级缓存机制,几乎不可能出现丢包的情况;在网络数据的捕获和分析方面WinPcap有很大的优势。
1 WinPcap概述
1.1 WinPcap简介
WinPcap是Politecnico di Torino的NetGroup小组开发的[2]基于Win32平台的数据包捕获和网络分析的基础构架, 从UNIX下的Libpcap库移植而来, 用于用户层次的数据包捕获工作,由一系列开源的网络数据包捕获函数构成。它为底层网络监控编程提供了一个易于移植的应用框架。WinPcap库和Libpcap一样, 采用内核过滤机制,并且只支持BPF(BerKeley分帧过滤器,WinPcap下称为NPF[3])接口的内核过滤。如果主机上没有BPF机制则所有的效据包都必须读取到用户空间后, 才能在WinPcap库中进行过滤处理, 这样就会增加额外的处理负担, 导致性能的下降。目前市面上有不少软件是用WinPcap开发[4]的,其中比较著名的包括Ethereal[5]和WinDump,这两者都是免费的网络协议分析软件。
1.2 WinPcap内部基本结构
WinP
文档评论(0)