Pcap.Net 使用 OffLinePacketDevice 处理离线跟踪文件
Posted
技术标签:
【中文标题】Pcap.Net 使用 OffLinePacketDevice 处理离线跟踪文件【英文标题】:Pcap.Net Handling offline trace file with OffLinePacketDevice 【发布时间】:2018-06-21 16:25:27 【问题描述】:情况:
我正在开发一个模拟设备的工具,该工具基于我之前使用 WireShark 捕获的实际网络数据。 捕获的数据来自我需要在调试环境中重新创建的生产设备。
我需要的是一种从跟踪文件中以某种“实时”方式读取数据包的方法,然后处理和更改数据包并重新发送它,就好像该设备存在于我的调试环境中一样。
问题:
我正在使用页面github.com/PcapDotNet/Pcap.Net/wiki/Pcap.Net-Tutorial-Handling-offline-dump-files 中的(第二个)示例。 此示例显示 Pcap.Net 使用 OffLinePacketDevice 读取转储文件并处理数据包。
我的问题是数据包没有得到定时处理。跟踪包含几分钟的数据,但在几秒钟内处理完毕。
我之前尝试过这个例子,然后它的反应似乎和我预期的一样。
所以,我的问题是:行为是否应该自动计时? 如果是这样,那么我打破了一些东西(但是什么?)。 如果没有,那我就得加一些睡眠机制了(不是太难)。
有人吗?
【问题讨论】:
【参考方案1】:您可以使用 Pcap.Net 的发送缓冲区来发送数据包,同时尊重它们的时间戳。
所以你从离线转储中读取数据包,修改它们,将它们插入发送缓冲区并传输它们。
链接:
Reading packets from offline dump Generating packets (code in the send packets guide) Sending packets using a Send Buffer【讨论】:
以上是关于Pcap.Net 使用 OffLinePacketDevice 处理离线跟踪文件的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Pcap.Net 数据包类对象导出到 .pcap 文件
我需要能够使用 Pcap.Net 填充 tcp 数据包的以太网层
Pcap .NET 库:找不到 PcapDotNet.Core.DLL