2010-07-07 29 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