Как получить сетевую статистику Linux Box с помощью файловой системы /proc

Я пытаюсь получить статистику ЦП, диска и сети, используя файловую систему /proc. Мне удалось успешно получить статистику процессора и диска из /proc/stat и /proc/diskstats. Я до сих пор не нашел правильный способ сбора сетевой статистики.

Статистика, которую я хотел бы собрать для каждого Linux-бокса:

  • Средняя пропускная способность сети
  • Общее количество пакетов, полученных в секунду
  • Общее количество пакетов, передаваемых в секунду
  • Общее количество килобайт, полученных в секунду
  • Общее количество килобайт, передаваемых в секунду
  • Количество многоадресных пакетов, полученных в секунду
  • Количество используемых в настоящее время сокетов TCP
  • Общее количество сокетов, используемых в настоящее время

Я знаю, что могу получить эту статистику с помощью sar, но я хочу написать независимую программу, работающую аналогично sar. Было бы здорово, если бы кто-нибудь объяснил, откуда sar извлекает эту информацию и как она ее обрабатывает, чтобы периодически получать эту статистику.


person sethu    schedule 09.06.2014    source источник
comment
См. различные файлы в /proc/net.   -  person    schedule 09.06.2014


Ответы (1)


Существуют отличные инструменты для мониторинга пропускной способности сети, которые могут помочь вам получить эту информацию, например, slurm, bmon. Вы можете узнать больше по этому URL-адресу: - http://www.binarytides.com/linux-commands-monitor-network/

С уважением и благодарностью,
Алок Такер

person linux_fanatic    schedule 09.06.2014