【笔记】wincap网络数据包的捕获——不使用回调的方式
来源:互联网 发布:java jvm原理第十三 编辑:程序博客网 时间:2024/06/05 19:02
这次使用pcap_next_ex()来代替pcap_loop()来捕获数据包。基于回调包捕获机制的pcap_loop()在某些情况下是不错的选择。但是在一些情况下处理回调并不特别好:这会使程序变的复杂并且在象多线程或C++类这些情况下它看起来到象一块绊脚石。
在这些情况下pcap_next_ex()允许直接调用来接收包,它的参数和pcap_loop()相同:有一个网卡描述符和两个指针,这两个指针会被初始化并返回给用户,一个是pcap_pkthdr结构,另一个是接收数据的缓冲区。
程序代码:
注:pcap_next_ex()只在Win32环境下才行因为它不是原始libpcap API中的一部分,这就意味着依赖于这个函数的代码不会在UNIX下工作。那么为什么用pcap_next_ex()而不用pcap_next()?因为pcap_next()有许多限制在很多情况下并不鼓励用它。首先它的效率很低因为它隐藏了回掉方法并且还依赖于pcap_dispatch()这个函数。再次它不能够识别文件结束标志EOF所以对来自文件的数据流它几乎无能为力。 注意当pcap_next_ex()在成功,超时,出错和文件结束的情况下会返回不同的值。
- 【笔记】wincap网络数据包的捕获——不使用回调的方式
- 【笔记】wincap网络数据包的捕获——使用函数回调
- wincap网络数据包的捕获
- 【笔记】wincap网络数据包的过滤与分析
- [网络分析] 3 不用回调的方式捕获数据包
- 【笔记】wincap发送数据包
- 使用Fiddler捕获java的网络通信数据包
- wincap的使用总结
- 网络数据包捕获与发送的多重实现
- 基于零拷贝的网络数据包捕获技术简述
- 基于零拷贝的网络数据包捕获技术简述
- 网络数据包捕获与发送的多重实现(转载)
- 网络数据包捕获与发送的多重实现 (学习)
- SmartSniff 简体中文版 – 小巧的网络数据包捕获工具
- WinPcap教程:(4)不用回调方式捕获数据包
- pcap_next_ex() —— 基于非回调函数的捕获数据包
- tcpreplay回放捕获的数据包
- 捕获网络数据包
- Learn UML with JUDE
- 【笔记】wincap得到网络驱动列表
- DataGridView 打印专家组件2.0版正式发布
- 【笔记】wincap得到IP地址、子网掩码等信息
- 【笔记】wincap网络数据包的捕获——使用函数回调
- 【笔记】wincap网络数据包的捕获——不使用回调的方式
- 常用的"收藏,打印,另存为"等JS代码(按纽INPUT和链接形式)
- TOJ 1626. Function Run Fun
- 【笔记】wincap网络数据包的过滤与分析
- 某英语老师的爆强整理 转了过来 轻松拿下46级 专4 我不怕~~~
- 五行生克
- 【笔记】wincap处理脱机堆文件
- meta 解析
- 页面加载进度条