Вверх

Как использовать bmon для мониторинга пропускной способности сети в Linux

5 февраля 2021 |

Как использовать bmon для мониторинга пропускной способности сети в Linux

A stylized terminal prompt on a Linux system. Fatmawati Achmad Zaenuri / Shutterstock

С помощью приложения bmon Linux вы можете видеть использование полосы пропускания ваших сетевых подключений. Однако понимание мелких деталей требует некоторой детективной работы, поэтому мы сделали это за вас!

Как работает bmon

Динамические графики и статистика в реальном времени, показывающая активность на различных сетевых интерфейсах, могут дать вам отличные результаты. внимание к производительности вашей сети и потребляемой пропускной способности. Это именно то, что вам предлагает bmon, прямо в окне терминала.

Вы можете время от времени просматривать графики, как спидометр в машине. Аналогичным образом, если что-то в вашем транспортном средстве необходимо исследовать, механик может подключить это к диагностической системе и проверить показания. У bmon есть аналогичные подробные данные.

Однако следует сказать, что статистика команды bmon поначалу может сбивать с толку. Например, есть три под названием «Ip6 Reasm / Frag.«Что с этим случилось?

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

Мы добавили работа для вас, и даже проверил исходный код, чтобы разобраться в некоторых из них. К счастью, все остальное в bmon достаточно просто.

Установка bmon

Чтобы установить bmon в Ubuntu, используйте эту команду:

sudo apt-get install bmon

Чтобы установить в Fedora, введите следующее :

sudo dnf install bmon

Для Manjaro команда следующая:

sudo pacman -Sy bmon

Дисплей bmon

Введите bmon и нажмите Enter, чтобы запустить программу. Дисплей bmon разделен на несколько панелей. Первые три помечены как «Интерфейсы», «RX» и «TX». На центральной панели отображается подробная статистика и графики.

На панели «Интерфейсы» показаны сетевые интерфейсы, которыми оснащен ваш компьютер. Он также показывает дисциплину организации очереди (qdisc), которую использует каждый сетевой интерфейс (подробнее об этом позже).

На панели «RX» отображаются полученные биты в секунду и количество пакетов в секунду для каждого интерфейса и его очереди. Панель «TX» показывает переданные биты в секунду и количество пакетов в секунду для каждого интерфейса и его очереди.

На нашем компьютере установлено только два интерфейса: интерфейс обратной петли (также называемый адаптером обратной связи) и проводной адаптер Ethernet. Интерфейс обратной связи называется «lo», а интерфейс Ethernet — «enp0s3».

Адаптер Ethernet на вашем компьютере может иметь другое имя. Если вы используете ноутбук, вы также увидите беспроводной адаптер, имя которого, вероятно, будет начинаться с «wl.”

bmon отображает информацию о текущем выбранном сетевом интерфейсе. Выбранный интерфейс отмечен знаком «больше» (& gt,) рядом с ним. Вы можете нажимать стрелки вверх и вниз, чтобы переместить знак «больше» и выбрать интерфейс, который вы хотите отслеживать. Мы выбрали адаптер Ethernet.

Теперь, когда мы находимся в активном сетевом интерфейсе, мы видим некоторую активность на графиках и показаниях. Если вы не видите графиков, растяните окно терминала вниз.

Нажимайте клавиши со стрелками влево и вправо, чтобы изменить отображаемую статистику. Для некоторых графиков вам нужно будет нажать H, прежде чем они будут заполнены, те, которым это необходимо, сообщат вам об этом.

Чтобы увидеть статистику для сетевого интерфейса, растяните окно терминала, пока оно не станет достаточно высоким, чтобы покажите их, а затем нажмите D, чтобы отобразить их. Если вы нажмете I (для информации), вы увидите небольшой объем дополнительной информации.

Если развернуть окно терминала, отображается несколько графиков. Чтобы добавить или удалить пары графиков, нажмите «Меньше» (& lt,) и «Больше» (& gt,). Если вы нажмете G, отображение графиков будет включаться и выключаться вместе.

При нажатии вопросительного знака (?) Открывается экран справки «Краткий справочник» с общими нажатиями клавиш.

The Quick Reference screen in bmon.

Нажмите вопросительный знак (?) еще раз, чтобы закрыть экран «Краткий справочник».

Подробная статистика

Если окно вашего терминала высокое и достаточно широкое (растяните его, если это не так), вы можете нажать «D», чтобы включить или выключить подробный просмотр.

Количество отображаемых столбцов зависит от ширины окна терминала. В стандартном окне терминала из 80 столбцов вы увидите два. Чем шире окно, тем больше столбцов вы видите. Вы не получите больше статистики с более широким окном, но вы все равно увидите тот же набор цифр. Но столбцы будут короче.

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

Каждый столбец содержит набор статистических данных. Имя значения, а также полученные (RX) и переданные (TX) значения отображаются для каждой статистики. Если какие-либо значения отображаются как дефис (-), это означает, что статистика для этого направления не записывается.

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

Вся остальная статистика перечислена в алфавитном порядке, переходя от столбца к столбцу. Некоторые из них имеют одно и то же имя. Ниже мы объясним, что все они означают. Мы также ввели сокращенные имена. Если IPv6 не упоминается, эта статистика относится к IPv4.

Статистика в левом столбце выглядит следующим образом:

  • Байты: трафик в байтах.
  • Ошибка прерывания: количество ошибок прерывания. Где-то на пути соединения между источником и пунктом назначения программа вызвала прерывание соединения.
  • Коллизии: количество ошибок коллизий. Два или более устройства пытались отправить пакет одновременно. Это не должно быть проблемой в полнодуплексной сети.
  • Ошибки CRC: количество ошибок проверки циклическим избыточным кодом.
  • Ошибки: общее количество ошибок.
  • Ошибка кадра: количество ошибок кадра. Фрейм — это сетевой контейнер для пакета. Ошибка означает, что были обнаружены искаженные кадры.
  • ICMPv6: количество пакетов трафика Internet Control Message Protocol v6.
  • Ошибки ICMPv6: количество ошибок ICMP v6.
  • Широковещательная передача IP6: количество широковещательных рассылок IPv6, отправленных на все устройства в сети.
  • Пакеты IP6 CE: CE означает «край клиента». Обычно это относится к роутерам. Они подключаются к границе поставщика (PE) службы подключения, на которую подписан клиент.
  • Доставки Ip6: количество входящих пакетов IPv6.
  • Пакеты Ip6 ECT (1): явное уведомление о перегрузке (ECN) позволяет любому концу сетевого соединения предупреждать другой о надвигающейся перегрузке. Пакеты помечаются флажком, который служит предупреждением. Принимающая сторона может снизить скорость передачи, чтобы избежать перегрузки и возможной потери пакетов. Пакеты ECN-Capable Transport (ECT) помечаются флагом, указывающим, что они доставляются через ECN-Capable Transport. Это позволяет промежуточным маршрутизаторам реагировать соответствующим образом. Пакеты ECN типа 1 сообщают принимающей стороне, что нужно включить ECN и добавить его к исходящей передаче.
  • Ошибки заголовка IP6: количество пакетов с ошибками в заголовке IPv6.
  • Пакеты многоадресной рассылки IP6 : Количество пакетов IPv6 Multicast (форма широковещательной рассылки).
  • Пакеты Ip6 Non-ECT: количество пакетов IPv6, не помеченных как ECT (1).
  • Повторная сборка IP6 / Fragment OK: количество пакетов IPv6, которые были фрагментированы из-за размера и успешно собраны при получении.
  • Таймауты повторной сборки IP6: количество пакетов IPv6, которые были фрагментированы из-за размера, но не смогли повторно собрать при получении из-за тайм-аутов.
  • Усеченные пакеты IP6: количество усеченных пакетов . Когда передается пакет IPv6, он может быть помечен как кандидат на усечение. Если какой-либо промежуточный маршрутизатор не может обработать пакет из-за того, что он превышает максимальную единицу передачи (MTU), маршрутизатор обрезает пакет, отмечает его как таковой и пересылает по назначению. Когда он получен, дальний конец может отправить пакет ICMP обратно источнику, сообщая ему обновить оценку MTU, чтобы сократить свои пакеты.
  • Отбрасывание IP6: количество отброшенных пакетов IPv6. Если какие-либо устройства между источником и местом назначения не были настроены правильно и их настройки IPv6 не работают, они не будут обрабатывать трафик IPv6, он будет отброшен.
  • Пакеты Ip6: общее количество всех типов пакетов IPv6.
  • Пропущенная ошибка: количество пакетов, пропущенных при передаче. Пакеты пронумерованы, чтобы можно было воссоздать исходное сообщение. Если какие-то отсутствуют, их отсутствие заметно.
  • Нет обработчика: количество пакетов, для которых не был найден обработчик протокола.
  • Ошибка окна: количество ошибок окна. Окно пакета — это количество октетов в заголовке. Если это неправильное число, заголовок не может быть интерпретирован.

Статистика в правом столбце следующая:

  • Пакеты: трафик в пакетах .
  • Ошибки оператора связи: количество ошибок оператора связи. Это происходит, если возникает проблема с модуляцией сигнала. Это может указывать либо на несовпадение дуплексного режима сетевого оборудования, либо на физическое повреждение кабеля, разъема или разъема.
  • Сжатый: количество сжатых пакетов.
  • Отброшено: количество пакетов drop, который в результате не смог достичь места назначения (возможно, из-за перегрузки).
  • Ошибки FIFO: количество ошибок буфера «первым пришел — первым ушел» (FIFO). Буфер передачи сетевого интерфейса переполнен, поскольку он недостаточно быстро очищается.
  • Ошибки пульса: оборудование или программное обеспечение могут использовать обычный сигнал, чтобы показать, что они работают правильно, или для синхронизации. Число здесь показывает, сколько «тактов» было потеряно.
  • Ошибки контрольной суммы ICMPv6: количество ошибок контрольной суммы сообщения протокола управляющих сообщений Интернета v6.
  • Ошибки адреса Ip6: количество ошибок контрольной суммы ошибки из-за неправильных адресов IPv6.
  • Пакеты широковещательной рассылки IP6: количество пакетов широковещательной рассылки IPv6.
  • Ошибки контрольной суммы IPv6: количество ошибок контрольной суммы IPv6. Пакеты ICMP и протокола пользовательских дейтаграмм (UDP) в IPv6 используют контрольные суммы, но обычные IP-пакеты IPv6 — нет.
  • Пакеты Ip6 ECT (0): они обрабатываются так же, как пакеты ECT (1).
  • Перенаправлено IP6: количество доставленных одноадресных пакетов IPv6. При одноадресной передаче пакеты пересылаются от источника к месту назначения через цепочку промежуточных маршрутизаторов и серверов пересылки.
  • Многоадресные рассылки IP6: количество доставленных многоадресных пакетов IPv6. Многоадресная рассылка отправляет пакеты группе пунктов назначения одновременно (именно так работает Wi-Fi).
  • Ip6 No Route: количество ошибок отсутствия маршрута. Это означает, что пункт назначения недоступен, так как маршрут к дальнему концу не может быть рассчитан.
  • Ошибки повторной сборки / фрагмента IP6: количество пакетов IPv6, которые были фрагментированы из-за размера и не смогли повторно собрать при получении .
  • Повторная сборка IP6 / Запросы фрагментов: количество пакетов IPv6, которые были фрагментированы из-за размера и должны были быть повторно собраны при получении.
  • Ip6 Too Big Errors: количество ICMP “ слишком большой », что указывает на то, что были отправлены пакеты IPv6, размер которых превышает максимальную единицу передачи.
  • Ошибки неизвестного протокола IP6: количество пакетов, полученных с использованием неизвестного протокола.
  • Ip6 Octets: Объем принятых и переданных октетов.IPv6 имеет заголовок из 40 октетов (320 бит, 8 бит на октет) и минимальный размер пакета 1,280 октетов (10240 бит).
  • Ошибка длины: количество пакетов, прибывающих со значением длины в заголовок, который короче минимально возможной длины пакета.
  • Multicast: количество многоадресных широковещательных рассылок.
  • Over Errors: количество избыточных ошибок. Либо буфер приема переполнен, либо пакеты прибыли со значением кадра, превышающим поддерживаемое, поэтому они не могут быть приняты.

Дополнительная информация

Если вы нажмете I (как в «Информация»), он переключает панели дополнительной информации. Если дополнительная информация не отображается, окно недостаточно большое. Вы можете нажать D, чтобы отключить подробную статистику, G, чтобы отключить графики, или вы можете растянуть окно.

Дополнительная информация следующая:

  • MTU: максимальная единица передачи.
  • Operstate: Рабочее состояние сетевого интерфейса.
  • Адрес: адрес управления доступом к среде (MAC) сетевого интерфейса.
  • Режим: обычно устанавливается по умолчанию, но вы могли видеть туннель, свекла или ро. Первые три относятся к IP-безопасности (IPSec). По умолчанию обычно используется транспортный режим, в котором полезные данные зашифрованы. Виртуальные частные сети (VPN) типа клиент-сайт обычно используют это. VPN типа «сеть-сеть» обычно используют туннельный режим, в котором весь пакет зашифрован. В режиме связанного сквозного туннеля (свекла) туннель создается между двумя устройствами с фиксированными, скрытыми IP-адресами и другими видимыми IP-адресами. Режим ro — это метод оптимизации маршрутизации для мобильного IPv6.
  • Семейство: используемое семейство сетевых протоколов.
  • Qdisc: Дисциплина организации очередей. Это может быть красный (случайное раннее обнаружение), codel (контролируемая задержка) или fq_codel (справедливая очередь с контролируемой задержкой).
  • Флаги: эти индикаторы показывают возможности сетевого подключения. Наше соединение может использовать широковещательные и многоадресные передачи, и интерфейс находится в рабочем состоянии (работает и подключен).
  • IfIndex: индекс интерфейса — это уникальный идентификационный номер, связанный с сетевым интерфейсом.
  • Broadcast: широковещательный MAC-адрес. При отправке на этот адрес полученные пакеты транслируются на все устройства.
  • TXQlen: размер (емкость) очереди передачи.
  • Псевдоним: IP-псевдоним дает физическому сетевому соединению несколько IP-адресов. Затем он может предоставить доступ к разным подсетям через одну сетевую карту. На нашем тестовом компьютере нет псевдонимов.

bmon — немного забавное существо — в некотором смысле ни рыба, ни птица. Графики имеют примитивный шарм и дают хорошее представление о том, что происходит.

Однако, учитывая ограничения, связанные с визуализацией в кодировке ASCII, нельзя ожидать, что они будут сверхточными. Однако случайный взгляд может сказать вам, исчерпано ли соединение, загадочно ли оно лишено трафика или находится где-то посередине.

С другой стороны, подробная статистика такова: подробная и детальная. Вкупе с несколько небрежным подходом к маркировке, это делает их еще более трудными для расшифровки.

Надеюсь, что приведенные выше описания сделают bmon более доступным. Это действительно полезный и легкий инструмент, с помощью которого вы можете отслеживать состояние сетевого трафика и потребление полосы пропускания.

Как использовать bmon для мониторинга пропускной способности сети в Linux


Напишите пару строк: