简介
是平台下访问网络数据链路层的开源库 , 该库已达到工业标准的应用要求。允许应用程序绕开网络协议栈来捕获与传递网络数据包,并具有额外的有用特性,包括内核层的数据包过滤、一个 网络统计引擎与支持远程数据包捕获。
1.1. 什么是
大多数网络应用程序通过被广泛使用的操作系统原语来访 问网络,诸如。操作系统已经处理了底层的细节问题(如协议处理,数据包的封装等),并提供与读写文 件类似的、熟悉的接口,这使得用该方法可以很容易的访问网络中的数据。
然而有些时候,这种“简单的方式”并不能满足任务要求,因为有些应用程序需要直接访问网络中的数据包。也就是说,应用程序需要访问网络中的“原 始”数据包,即没有被操作系统使用网络协议进行处理过的数据包。
的目的就是为Win32应用程序提供这种访问方式。提供下列功能:
1.2. 的优点
自由 遵 循BSD open 发布。这意味着 你的应用程序拥 有全部自由来修改与使用它 ,即使应用程序是商业化的。
高性能 实现了有关数据包 捕获文献中描述的所有典型的优化方法(比如内核级的过滤与缓冲,减少上下文交换,数据包部分内容复制),加上一些原创的优化方法,如JIT过滤器编辑(JIT ) 与内核级的统计过程。因为这 些原因,胜过其它可比的方法。
普及 被 许多工具作为网络接口使用——无论是自由软件还是商业软件。包括网络协议分析器、网络监视器、网络入侵检测系统、网络嗅探器、网络流量生成器、网络测试器 等等。如 、Nmap 、 Snort 、 、ntop 这些工具,在网络社群中是众所周知的。每天被下载上千 次。
测试充分与可信赖 许多用户对 在广泛的平台上的测试与发现最难以发现的缺陷做出了经年的贡献。的开发者是富有经验的驱动程序编写者,同时他们软件开发方法 的重点就是强调固若顽石(rock-solid)的稳定性。记住:一个多缺陷的驱动程序意味着蓝屏(操作系统在崩溃后,屏蔽该系统所有处理 器的所有中断后,将显示器切换到低分辨率的VGA图形模式下,绘制一个蓝色背景,然后显示停止码,后面紧跟着一些文本信息来建议用户应该怎么办的画面)。
最终用户易于使用 作为单个小的可执 行文件发布,可运行在每个所支持的操作系统上。开始使用这个可执行文件后,就能捕获与发送原始数据包。不可能再有更简单的操作了。
程序员易于使用 每个版本的 带有一个开发者包('s pack ),包括文档、库与文件,是你立即开发应用程序所必需的。开发者包还包含一个示例程序集,可用 或编译,用来作为一个极好的起点。
多平台 在 NT、 2000、 XP与 2003平台上被积极地维护。也能工作在 95、 98 与 ME平台上,但在这些操作系统上将不再维护。对 Vista具有初步的支持,但有一些特性并不具备。
可移植 与 具有完全的兼容性。这意味着能够使用它移植已在Unix或Linux下存在的工具到下。这也意味着应用程序可以很容易的移植 到Unix下使用。
良好的文档 手册用一种容易理 解的超文本链接方式描述,对API与内部进行了文档化。该文档包含一个指南,让你一步一步地熟悉的所有特性。
商业化支持 如果你对专业的 支持感兴趣、或当一些事情出错时你需要一个电话号码寻求帮助,或者在开发底层网络代码时需要帮助, CACE ( )可以帮助你 。
1.3. 哪类程序使用了
可被许多类型的网络工具使用,比如具有分析,解决纷争,安全和监视功能的工具。特别地,一些基于 的典型工具如下所示:
1.4. 什么是 不能做的
独立 于诸如 TCP-IP协议的主机协议来发送和接收网络数据包。这意味着不能阻塞、过滤或操纵同一机器上其它应用程序的通信。它只是简单地”嗅探”网 络上所传输的数据包,因此不能提供诸如网络流量控制、服务质量调度和个人防火墙之类的功能支持。
本文出自 “千江月 ” 博客,请务必保留此出处