Процент загрузки сети
Есть задача
Узнать процент загрузки сети в данный момент
Мы пишем программу - анализатор изменений на сайтах (как многие уже могли догадаться :)
Суть
Программа сканирует html-код страниц (либо js-код -> рендер = html-код)
Дальше - парсинг, внос в БД, общение с плагином в браузере через сокеты, и т.д.
Вопрос
Еесли сеть загружена, получение кода страницы надо отложить...либо просто пропустить
Кто-нибудь знает, есть ли какое-то решение данного вопроса?
Буду рад любым ответам!
Вобще сеть пониятие растяжимое: она может из 2 компов состоять, а может из 1000 подсетей.
В последнем случае определение текущей загрузки всей сети может потерять свой смысл, так как больше будет интересовать загрузка того или инго канала в этой сети.
Конкретнее можете сформулировать?
Скорее нагрузка на интернет. На одной, конерктно взятой машине, на котрой работает программа
ping? :)
В .NET были классы System.Net.NetworkInformation и System.Net.IpGlobalStatistic кажется, но я ими никогда не пользовался - не знаю.
Еще можно по таймеру разбирать вывод команды netstat -e. Еще можно поставить штатный SNMP Agent в Window и по SNMP снимать значения, вроде там в MIB сетевые карты отображаются.
Но для начала лучше конечно прояснить, что понимается под "нагрузка на интернет". Трафик с конкретного интерфейса машины? Если интерфейс один и смотрит в локальную сеть, то надо ли как-то отличать локальный трафик от интернет-трафика?
.NET тут не подойдут, пишем на Qt
В данном случае имеется в виду только интернет траффик
Да в большинстве случаев никак, т.к. трафик режет провайдер, а в меньшенстве (например dial-up/мобильное/vdsl и пр. подключение) через
а ты играешь по стиму?)