как получить статистику сети QoS в ядре Linux?

Если Вы получаете свои локали, установленные в масштабе всей системы, попытайтесь настроить шрифты, которые могут отобразить такие редкие символы. Существует проблема в Ubuntu в собственной консоли, когда Вам установили Ваши локали как UTF8_ru и UTF8_en, Вы не можете ввести русский язык, вызвать Вас, должен настроить кириллические шрифты для этого. Таким образом, Вам нужно UTF8_yourlocale локаль настроенные и соответствующие шрифты консоли установлена.

И Mozilla, OO и другой имеют их собственные пакеты локализации, таким образом, он не дает эффекта для настроек локали в масштабе всей системы.

PS: Конечно, я могу быть неправым.

4
21.06.2013, 18:00
4 ответа

Трудно предоставить полную подробную информацию, особенно не зная, какое распределение Вы используете и как подробный Вы хотите, чтобы результаты были - таким образом, я просто перечислю некоторые очень простые примеры.

Если Вы надеетесь получать отдельную статистику для каждого интерфейса, мы можем сломать каждый объект отдельно (следующее принимает корневой доступ на дистрибутиве как CentOS):

Для использования пропускной способности - я действительно как iftop. Когда Вы имеете iftop установленный Вы могли выполнить следующую команду:

iftop -i eth0 -B

-B опция для Байтов. Однажды внутри iftop Мне нравится нажимать "T" для получения кумулятивного общего количества.

Для коэффициента ошибок можно легко видеть это в выводе ifconfig в Вашей консоли. Для получения более оптимального подхода, Вы могли выполнить очень сырую команду как это (принятие чего-то как Centos):

# ifconfig | grep -E "^\w|errors.* " | sed 's/pack.*errors:/Errors:/g' | sed 's/ drop.*//g' | sed 's/HW.*//g'
eth0      Link encap:Ethernet
          RX Errors:0
          TX Errors:0
eth1      Link encap:Ethernet
          RX Errors:3
          TX Errors:1
lo        Link encap:Local Loopback
          RX Errors:0
          TX Errors:0

Это даст Вам ошибочный счет для каждого интерфейса.

Для коллизий можно все еще использовать ifconfig. Для получения просто количества коллизии другая основная команда была бы следующие:

# ifconfig | grep -E "^\w|collisions.* " | sed 's/pack.*collisions:/Collisions:/g' | sed 's/ txq.*//g' | sed 's/HW.*//g'
eth0      Link encap:Ethernet
          collisions:0
eth1      Link encap:Ethernet
          collisions:0
lo        Link encap:Local Loopback
          collisions:0

Для отброшенных пакетов, все еще с помощью ifconfig, можно выполнить другую простую команду:

# ifconfig | grep -E "^\w|dropped.* " | sed 's/pack.*dropped:/Dropped:/g' | sed 's/ over.*//g' | sed 's/HW.*//g'
eth0      Link encap:Ethernet
          RX Dropped:0
          TX Dropped:0
eth1      Link encap:Ethernet
          RX Dropped:1
          TX Dropped:0
lo        Link encap:Local Loopback
          RX Dropped:0
          TX Dropped:0

Если у Вас есть много недопустимых пакетов (ошибки, коллизии, или отброшенный), Вы могли поместить предыдущие 3 команды в сценарий удара и использовать watch команда для контроля их:

ФАЙЛ/tmp/netErrors:

#!/bin/sh

ifconfig | grep -E "^\w|errors.* " | sed 's/pack.*errors:/Errors:/g' | sed 's/ drop.*//g' | sed 's/HW.*//g'
echo
ifconfig | grep -E "^\w|collisions.* " | sed 's/pack.*collisions:/Collisions:/g' | sed 's/ txq.*//g' | sed 's/HW.*//g'
echo
ifconfig | grep -E "^\w|dropped.* " | sed 's/pack.*dropped:/Dropped:/g' | sed 's/ over.*//g' | sed 's/HW.*//g'
echo

КОМАНДА:

watch /tmp/netErrors

Для QoS это действительно зависит от того, как Вы устанавливаете его. Для Linux, traffic control характерно для установки QoS. Видеть текущий QoS с traffic control можно выполнить следующую команду:

# tc qdisc ls
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev eth2 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc pfifo_fast 0: dev tun0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1

tc - команда управления трафиком qdisc - ставящие в очередь дисциплины ls - список

Снижать хорошее повреждение traffic control необходимо проверить следующую ссылку на управление трафиком.

2
27.01.2020, 20:58
  • 1
    я - симпатичный familiur с большинством инструментов, которые Вы упомянули здесь. Однако я действительно указывал в своем вопросе, что ищу способ собрать эти данные в ядре –  Varda Elentári 21.06.2013, 17:59

Это - вероятно, лучшее учебное руководство, которое я нашел для того, чтобы познакомиться со статистикой QoS в Ядре Linux. Это было первоначально опубликовано в Журнале Linux в 2010, но все еще абсолютно релевантно.

Статья была названа: Поездка к Центру Ядра Linux: Управление трафиком, Формирование и QoS.

1
27.01.2020, 20:58

Пакеты как ntop покажите эту информацию. Можно также установить nagios и cacti, которые намного более мощны, но занимают время для конфигурирования.

0
27.01.2020, 20:58

Статистика интерфейса в основном хранится в /sys/class/net/<interface>и включает статистику по ошибкам tx/rx fifo, коллизиям и т. д. Вам придется просмотреть статистику, поскольку некоторые из них зависят от драйвера.

Джиттер, как правило, является концепцией уровня потока, поскольку измерение будет производиться на этом 5 -кортеже. Для этого вам может понадобиться использовать различные инструменты.

0
27.01.2020, 20:58

Теги

Похожие вопросы