2012-03-28 106 views
0

我希望我的應用程序能夠監視多少數據(我不需要真正的包,只有字節數)進入計算機(在一個單一的接口)在任何時候,也隨着時間的推移。換一種說法;我希望能夠顯示一個數字,顯示當前的上下速度(例如5kB/s)以及過去5分鐘內的圖形,最後我還希望能夠顯示正確數量的數據在過去一小時內出現在界面中。在C中測量網絡流量#

這是可以用簡單的方式嗎?我不介意使用第三方程序集,或者不得不圍繞一些win32 api編寫自己的包裝器;但是,所述第三方程序集必須能夠與開放源代碼應用程序一起使用,並且不得花錢。

回答

2

實際上,您可以使用性能計數器輕鬆獲取所有網絡流量,但我不知道任何衡量應用程序網絡流量的方法,而不是打開每個數據包並閱讀它。要測量所有網絡流量,請參閱以下內容:network traffic in c#

1

有點像DUMeter?

Look here

+0

只是tryed它。這很好,也有源碼。謝謝。 – radbyx 2012-03-28 11:59:29

0

您可能想看看性能計數器。

Screen shot from perfmon

在大多數這些網櫃,你可以選擇網絡接口是被監控的。你也可以在.Net代碼中做同樣的事情。

這裏有一個CodeProject上的文章,其中包含窗體應用程序,並基本上你以後:http://www.codeproject.com/Articles/6259/Monitoring-network-speed

+0

某些相關的[計數器](http://technet.microsoft.com/en-us/library/cc768048.aspx#XSLTsection133121120120) – oleksii 2012-03-28 10:56:59