Pcap.net vs Sharppcap

本文关键字:Sharppcap vs net Pcap | 更新日期: 2023-09-27 18:01:40

我只想监听网络设备,捕获数据包并将数据包写入虚拟文件。此外,我需要过滤数据包,同时收听,所以我只写数据包,通过过滤器。我需要在。net c#上做这些。这些是我的要求。那么我应该用哪一个呢?高传输速率和最小的包丢失是非常重要的。谢谢阅读

Pcap.net vs Sharppcap

作为SharpPcap的作者,我可以说您将能够使用该库执行所有这些操作。性能是一个重要的设计目标。

包。Net有一系列可以解析的数据包,它是与SharpPcap捆绑在一起的用于数据包分解和生成的库。为了尽可能快,它的架构在任何可能的地方都进行惰性求值。

性能很棘手,特别是因为网络数据包捕获通常是操作系统的较低优先级任务。应用程序处理数据包的速度越快,可以处理的数据包就越多。我已经能够捕获3MB/s的数据包而没有任何丢失。我没有在更高的数据速率下尝试过它,也没有编写大量的测试来生成和捕获数据以评估性能。测试和真实世界的结果是受欢迎的数据点,可以添加到文档和网站中。

整个功能在Pcap.Net中可用。

Pcap。. Net使用c++/CLI封装WinPcap,它被认为比PInvoke更有效。

Pcap中的包库。Net非常大,可以解析和创建复杂的数据包。这包括像IP over IP这样的递归层。每一层的解析都是惰性地完成的,并且只在需要时完成。

对于您的需求,我只看到使用Pcap的好处。