использование интернета в каждом приложении - PullRequest
4 голосов
/ 14 февраля 2011

Я хотел бы спросить, как я могу получить количество Интернета, которое используется некоторыми приложениями, такими как потоковое вещание и т. Д. Я хотел бы создать программу, использующую в C #, и я не знаю, как я могу ее запустить ....дать несколько советов, спасибо

Ответы [ 3 ]

3 голосов
/ 14 февраля 2011

В качестве отправной точки я бы посмотрел на WinSock API. Вы можете найти способ получения информации о трафике для каждого процесса. Если вы хотите увидеть общее использование сети, я бы использовал инструменты мониторинга производительности. Я нашел этот пример из веб-поиска :

private static void ShowNetworkTraffic()
{
     PerformanceCounterCategory performanceCounterCategory = new PerformanceCounterCategory("Network Interface");
     string instance = performanceCounterCategory.GetInstanceNames()[0]; // 1st NIC !
     PerformanceCounter performanceCounterSent = new PerformanceCounter("Network Interface", "Bytes Sent/sec", instance);
     PerformanceCounter performanceCounterReceived = new PerformanceCounter("Network Interface", "Bytes Received/sec", instance);

     for (int i = 0; i < 10; i++)
     {
         Console.WriteLine("bytes sent: {0}k\tbytes received: {1}k", performanceCounterSent.NextValue() / 1024, performanceCounterReceived.NextValue() / 1024);
         Thread.Sleep(500);
      }
}
1 голос
/ 14 февраля 2011

Насколько я знаю, не существует стандартного метода измерения пропускной способности сети для каждого приложения. Максимум, что вы можете получить стандартными средствами, - это то, что показывают netstat и perfmon. Единственный способ вычислить метрики для каждого приложения - написать драйвер фильтра NDIS или использовать существующий драйвер фильтра, такой как WinPcap. Но в обоих случаях вам придется установить драйвер на каждую целевую машину.

0 голосов
/ 14 февраля 2011

Попробуйте: Как рассчитать скорость пропускной способности сети в c #

РЕДАКТИРОВАТЬ

Теперь, когда я понял вопрос, лучше попробуйте взглянуть на это другой ТАК вопрос

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...