2010-07-07 28 views
3

Pcap的哪个c-sharp包装最快? 与使用套接字相比,PCap有多快?PCap性能

+2

如何以类似的方式使用套接字? – 2010-07-07 19:47:00

+0

您有一段信息,您可以使用winsock通过套接字发送,也可以通过使用winPCap传递操作系统将其直接发送到链接层。 在这两种情况下,我都会将信息从我身边发送到特定目的地。理论上winPCap听起来更快,但我只是想知道是否执行或其他原因会导致开销,从而抵消绕过操作系统的收益。 – bsobaid 2010-07-07 21:01:30

+0

@Jon:如果他只打算使用pcap来捕获和过滤不相关的软件包,它可以与原始套接字相媲美。我认为他的效率问题是关于pcap过滤机制的开销。 – 2011-06-13 16:51:46

回答

0

我相信Pcap.Net比其他包装更快,因为它使用C++/CLI包装而不是PInvoke。

一般来说,我从来没有遇到过WinPcap的性能问题(它也取决于你如何使用它)。

+0

如果我可能会问,你使用pcap的是什么?用户应用程序之间的数据交换是否是网络嗅探?与常规套接字使用情况相比,您如何发现pcap性能? – bsobaid 2010-07-08 20:47:15

+0

我使用WinPcap进行通用数据包嗅探。我没有比较WinPcap和普通套接字的使用情况,但我不确定如何使用普通套接字来嗅探那些不适合计算机的数据包。 – brickner 2010-07-09 07:18:43

+0

谢谢,我实际上打算将它用于常规的应用程序数据传输,目前我正在通过套接字进行数据传输,希望获得更低的延迟,但是到目前为止我所读到的仅适用于数据包嗅探。 – bsobaid 2010-07-09 13:32:26

0

SharpPcap适用于捕获(嗅探)和传输(类似于UdpClient和TcpClient)。我已经将它用于高性能UDP传输的应用程序,并且可以调整为比UdpClient快得多(在源代码中有高性能的发送示例)。

+0

为什么downvote? – Pat 2011-09-08 21:24:10

+2

[c#]是的,为什么downvote的确如此?作为SharpPcap的作者,由于贡献者的一些出色工作,该库已经从快速发展到在4.0版本中快得多。目前的数据包处理速率非常高。我们有一套内置的性能测试。有关可以在Sourceforge上查看项目的git日志的速度有多快的详细信息。我确保将它们包含在每个提高文档性能的提升中。我是SharpPcap btw的作者。 – 2012-01-31 02:08:02