28 KiB
18. Фильтр: мониторинг и диагностика
← Оглавление · ← Раздел 17: Фильтр: настройка DPI
Фильтр предоставляет обширный набор команд мониторинга и диагностики, позволяющих оценить состояние аппаратной части, загрузку ресурсов, статистику обработки трафика и работу модуля DPI. Все команды мониторинга выполняются в операционном режиме (приглашение >), за исключением ping и traceroute, которые доступны из конфигурационного режима.
18.1. show version — версия ПО, серийный номер (= MAC management)
Команда show version отображает информацию о текущей версии программного обеспечения фильтра:
| Параметр | Описание |
|---|---|
| Версия ПО | Основной номер версии (например, 3.14.040 BP) |
| Серийный номер | Серийный номер платформы — необходим при обращении в техподдержку |
Команда show version detail дополнительно выводит хэши сборки, указывающие на конкретный коммит в сборочной системе (полезно для разработчиков).
Важно: серийный номер платформы совпадает с MAC-адресом management-интерфейса. Это можно проверить через команду
show ip if.
18.2. show ip if — параметры management-интерфейса
Команда отображает параметры management-интерфейса:
- MAC-адрес (совпадает с серийным номером);
- IP-адрес;
- Маска подсети;
- Default gateway.
18.3. show time — текущее время (UTC / local)
Команда выводит текущее время в двух форматах:
- UTC — всемирное координированное время;
- Local — локальное время (с учётом настроенного сдвига).
Оба значения отображаются всегда, даже если они совпадают.
18.4. show uptime — время работы платформы и процесса EcoNAT
Команда показывает два значения времени работы:
| Параметр | Описание |
|---|---|
| Uptime платформы | Время с момента включения/перезагрузки аппаратной платформы |
| Uptime EcoNAT | Время с момента запуска процесса обработки трафика |
Эти два значения могут отличаться на небольшую величину (обычно до 1 минуты): сначала стартует платформа, затем — процесс EcoNAT, который инициализирует интерфейсы и начинает обработку трафика.
Примечание: после старта EcoNAT обновляет время по NTP. В некоторых случаях это приводит к тому, что в выводе
show uptimeотображаются некорректные значения. Например, если в BIOS было установлено неверное время, после синхронизации по NTP вывод uptime может показывать аномальные цифры. Это нормальная ситуация — значения восстановятся после следующей перезагрузки. Тем не менее, подобные аномалии следует исследовать.
18.5. Аппаратная часть: show power, show fan, show temperature
show power
Отображает состояние источников питания: OK или FAIL. В будущих версиях прошивки планируется более подробный вывод — напряжение на входе, мощность блоков питания, внутренние параметры (вольты, ватты, амперы).
show fan
Отображает скорость вращения вентиляторов:
- Системные вентиляторы — обычно 4 штуки, каждый с двумя датчиками;
- Вентиляторы на сетевых картах — отдельные показания.
show temperature
Отображает температуру ядер процессора (не крышки и не внешнего сенсора):
| Диапазон | Оценка |
|---|---|
| 40–50 °C | Нормальные значения |
| ~70 °C | Платформа начинает перегреваться — необходимо проверить условия охлаждения на площадке |
При обнаружении повышенной температуры следует запросить у оператора информацию о состоянии окружающей среды на площадке (кондиционирование, вентиляция).
18.6. Интерфейсы: show interface brief, traffic monitor, трансиверы (DDM)
show interface brief
Выводит краткую информацию по всем интерфейсам:
| Поле | Описание |
|---|---|
| Состояние | Up / Down |
| MTU | Текущее значение MTU на интерфейсе |
| MAC | MAC-адрес интерфейса |
| Скорость | Скорость линка |
| Loading | Условная загрузка интерфейса в процентах |
| Description | Описание интерфейса (если задано) |
Traffic monitor
Команда show interface <имя|all> traffic monitor выводит ежесекундно обновляемую таблицу с текущей нагрузкой на интерфейсы:
- Количество байт — принятых и переданных за последнюю секунду;
- Количество пакетов — на вход и на выход;
- Ошибки — всегда должны быть нулевыми.
Для выхода из режима мониторинга — Ctrl+C.
Команда show interface all traffic (без слова monitor) показывает суммарные счётчики в байтах и пакетах с момента последней очистки или перезагрузки.
Трансиверы (DDM)
Фильтр позволяет просмотреть информацию о подключённых трансиверах и уровни оптических сигналов (DDM — Digital Diagnostic Monitoring):
- Информация доступна для оптических модулей;
- Для медных модулей и direct-attach кабелей DDM не поддерживается;
- Поддерживаются трансиверы любых производителей, совместимых с чипами Intel на сетевых картах фильтра. Программных ограничений на вендора нет, однако совместимость может быть ограничена самим чипом Intel.
18.7. Ресурсы: show resources
Команда show resources — основная команда для оценки загрузки фильтра. Выводит загрузку процессора, ресурсных таблиц и DPI.
18.7.1. Таблицы сессий/трансляций: не более 20% загрузки
Загрузка ресурсных таблиц (сессий, трансляций, IPv6-сессий) отображается в процентах от максимального объёма. Критический порог — 20%.
| Загрузка | Оценка |
|---|---|
| < 20% | Нормальная работа |
| > 20% | Превышена оптимальная загрузка — поиск по таблице замедляется |
Превышение порога в 20% приводит к существенному росту задержек при обработке трафика. Это связано с внутренней архитектурой хэш-таблиц: при высокой заполненности поиск по ним становится значительно дольше, и часть трафика может не успевать обрабатываться.
Что делать при превышении 20%:
- Обратиться в техподдержку;
- Вероятная причина — на фильтр попало больше трафика, чем планировалось (таблицы рассчитаны на определённую полосу пропускания);
- Возможная причина — DDoS-атака: маленькие пакеты генерируют огромное количество сессий при небольшом объёме трафика;
- Запросить у оператора информацию о состоянии трафика.
Примечание: таблица абонентов (subscribers) также отображается в
show resources, но в проекте ТСПУ не используется — это функционал BRAS.
18.7.2. Свободные буферы: не должны уходить в ноль
Значение свободных буферов не имеет конкретного «правильного» числа. Важно следить за динамикой:
- Буферы могут увеличиваться и уменьшаться в зависимости от нагрузки;
- На графике они должны колебаться вокруг средней линии;
- Если в течение недели и более буферы постепенно уменьшаются — это признак утечки памяти, и необходимо открывать кейс в техподдержке;
- Буферы не должны уходить в ноль.
18.7.3. DPI-ресурсы: не более 100%
Загрузка DPI-ресурсов отображается отдельно. Порог — 100%:
| Загрузка | Оценка |
|---|---|
| < 100% | Нормальная работа |
| ≥ 100% | Ресурсы DPI исчерпаны |
18.7.4. CPU Load — условный параметр обработки трафика
Параметр CPU Load в show resources — это не стандартная загрузка CPU в понимании Linux. Это условный параметр, рассчитываемый процессом EcoFilter, отражающий долю времени, затрачиваемую на обработку трафика.
| Загрузка | Оценка |
|---|---|
| < 80% | Нормальная работа |
| 80–90% | Повод для анализа — выяснить причину высокой загрузки |
| ~100% | Критическая ситуация — фильтр не справляется |
Значения 80–90% и выше — повод обратиться в техподдержку или провести собственное расследование причин.
18.8. Память: Control Plane vs Data Plane
Память фильтра условно разделена на две области:
| Область | Назначение |
|---|---|
| Control Plane | ОС Linux, CLI, сервисные функции (syslog, управление и т.д.) |
| Data Plane | Процесс EcoNAT — обработка трафика, ресурсные таблицы |
18.8.1. Data Plane выделяется при старте, не должна расти
Память Data Plane выделяется один раз при старте процесса EcoNAT. В ней создаются ресурсные таблицы (сессии, трансляции и пр.).
После старта объём занятой Data Plane памяти не должен расти. На графике мониторинга это должна быть ровная линия с незначительными отклонениями. Если наблюдается постоянный рост — это признак утечки памяти.
18.8.2. Пороги: 5–10% свободной памяти — повод для тревоги
| Свободная память | Оценка |
|---|---|
| > 10% | Нормально |
| 5–10% | Повод для тревоги — рекомендуется настроить алерт в системе мониторинга |
| < 5% | Критическая ситуация |
Если свободная память составляет 5%, но не уменьшается со временем — это нормальная ситуация. На современных платформах памяти достаточно, и свободной памяти обычно остаётся много.
Примечание: на некоторых площадках (например, МТС) используется другой принцип расчёта свободной памяти, и в мониторинге могут отображаться небольшие значения (~5%). Это нормально для данных прошивок.
18.9. show cps — скорость создания новых сессий
Команда show cps (Connections Per Second) показывает скорость создания новых сессий и трансляций в секунду.
| Значение | Интерпретация |
|---|---|
| > 0 | Новые сессии создаются, трафик обрабатывается |
| 0 | Новые сессии не создаются — требуется диагностика |
Нулевое значение может означать:
- Трафик не проходит через фильтр вообще;
- Трафик проходит, но не попадает в пул — ACL не отбирает трафик, сессии не создаются. Через фильтр могут идти гигабиты и десятки гигабит, но
show cpsбудет показывать ноль (подробнее — в разделе 16).
18.10. show statistic — статистика сессий и пулов, значение Optimal (= 20%)
Команда show statistic отображает статистику по сессиям и загрузке пула:
| Параметр | Описание |
|---|---|
| Total | Максимальный размер таблицы |
| Used | Количество используемых записей |
| Optimal | 20% от Total — оптимальный максимум загрузки |
Значение Optimal — это те же 20%, что и в show resources, но отображённые в абсолютных числах, а не в процентах. Количество используемых записей (Used) не должно превышать значение Optimal.
Загрузка пула: поскольку пул в проекте ТСПУ всегда типа fake, его загрузка будет нулевой — на неё можно не обращать внимания.
18.11. Счётчики: show counters all / show counters div (дельта за секунду)
На фильтре существует большое количество счётчиков — практически на каждую операцию.
| Команда | Описание |
|---|---|
show counters all |
Значения счётчиков с момента последнего обнуления (или перезагрузки) |
show counters div |
Дельта за последнюю секунду — какие счётчики увеличились и на сколько |
show counters div — наиболее полезная команда для оперативной диагностики. Она показывает только те счётчики, которые изменились за последнюю секунду. Если счётчик не появился в выводе — значит, за последнюю секунду он не увеличился.
Примеры счётчиков:
- Распознанные пакеты по протоколам (WhatsApp Voice, Telegram и т.д.);
- Отправленные логи;
- Счётчики L2-протоколов (PPPoE, MPLS);
- Нераспознанные протоколы;
- И многие другие (сотни счётчиков).
Как правило, из названия счётчика понятно, за что он отвечает. Наиболее важные счётчики выведены в систему мониторинга. На разных площадках набор активных счётчиков может различаться в зависимости от типа трафика и инкапсуляций.
Подсказка: для оценки нераспознанного трафика можно сравнить общее количество пакетов с суммой распознанных — разница покажет объём нераспознанного трафика.
18.12. Системный журнал: show syslog, ротация двух файлов
Помимо логирования на внешний сервер (см. раздел 14.8), логи хранятся внутри устройства на локальном разделе.
Особенности внутреннего хранения:
- Раздел для логов небольшой;
- Используются два файла, которые ротируются: сначала пишется в один, затем в другой, и наоборот;
- При большом объёме логов файлы быстро перезатираются — если с момента проблемы прошло пару суток, логи, скорее всего, уже утрачены;
- Именно для решения этой проблемы в федеральном проекте добавлено внешнее логирование на СПХД.
Команда show syslog выводит записи из внутреннего журнала, начиная с самых свежих.
18.13. DPI-мониторинг
18.13.1. show dpi records <N> — содержимое DPI-листа
Команда show dpi records <N> выводит содержимое загруженного DPI-листа с номером N, включая реестр Роскомнадзора (лист 0).
Предупреждение: содержимое реестра Роскомнадзора (лист 0) очень велико. Вывод может продолжаться несколько минут. Для прерывания —
Ctrl+C.
18.13.2. show dpi state — количество записей, дата последнего дампа
Команда show dpi state — основная диагностическая команда для анализа состояния DPI. Отображает:
| Параметр | Описание |
|---|---|
| Количество IP-записей | Число загруженных IP-адресов и подсетей |
| Количество URL-записей | Число загруженных URL |
| Last time | Время последнего скачивания дампа |
| Actual date for delta | Временная метка последней записи в реестре Роскомнадзора |
| DPI-ресурсы | Загрузка ресурсов DPI (аналогично show resources) |
Интерпретация дат:
Реестр Роскомнадзора формируется итерационно: Роскомнадзор периодически обновляет реестр, выпуская основные дампы и дельты. Если Роскомнадзор не вносил обновлений в течение длительного времени (например, суток), то:
- Фильтр продолжает запрашивать обновления с периодичностью update schedule (обычно 30 минут);
- Сервер РКН отвечает, что обновлений нет;
- Дата последнего скачивания не обновляется;
- В системе мониторинга может появиться алерт «дамп не скачивался более 24 часов».
Это не обязательно означает проблему — возможно, Роскомнадзор просто не обновлял реестр. Однако если дата не обновляется длительное время, следует проверить скорость скачивания и доступность сервера РКН.
Команда dpi list показывает файлы на диске: все дампы, дельты и сформированные DPI-листы. Например, реестр Роскомнадзора после парсинга хранится в файле list_0.dpi.
18.13.3. dpi load <N> — ручная загрузка списка
Команда dpi load <N> принудительно загружает DPI-лист с номером N с URL, указанного в конфигурации данного листа (или с URL, заданного в команде). Используется для диагностики проблем с загрузкой списков.
18.13.4. dpi run — принудительное обновление всех списков
Команда dpi run принудительно запускает обновление всех настроенных DPI-листов. В штатной эксплуатации обычно не требуется — используется при диагностике проблем с обновлением списков.
Примечание:
dpi runинициирует запрос к серверам, но не гарантирует скачивание — если обновлений нет, ничего скачано не будет.
18.13.5. show dpi match <ресурс> — проверка ресурса по всем DPI-листам
Команда show dpi match <ресурс> проверяет указанный ресурс (IP-адрес или URL) по всем загруженным DPI-листам и выводит:
- В каком DPI-листе найдено совпадение;
- Какое поведение (behavior) задано для этого листа.
Если совпадений нет — вывод будет пустым.
Примечание: в версии прошивки пилотного проекта (Урал) эта команда может быть недоступна. Она появилась в более новых версиях для федерального проекта.
Команда крайне полезна для диагностики: если абонент жалуется на блокировку ресурса, можно быстро проверить, присутствует ли ресурс в каком-либо DPI-листе и с каким действием.
18.14. Ping и Traceroute (из конфигурационного режима)
Команды ping и traceroute доступны из конфигурационного режима (не из операционного).
| Команда | Описание |
|---|---|
ping <адрес> |
Бесконечный пинг до указанного хоста (прервать — Ctrl+C) |
traceroute <адрес> |
Трассировка маршрута до хоста |
Важно: ping и traceroute работают только через management-интерфейс. Фильтр — это L2-устройство без IP-интерфейсов в тракте данных, поэтому инициировать трафик через LAN/WAN-интерфейсы невозможно (подробнее — в разделе 5.2).
← Оглавление · ← Раздел 17: Фильтр: настройка DPI · Раздел 19: Фильтр: обновление прошивки →