Протокол SNMP
Вы можете использовать протокол SNMP, чтобы собирать данные мониторинга на оборудовании, не поддерживающем установку Zabbix-агентов. В этом случае вместо Zabbix-агента устанавливается специальная программная сущность – SNMP-агент. Он осуществляет постоянный мониторинг оборудования, собирая основную информацию о статусе, показателях производительности, а также конфигурации. Собранная информация затем передается SNMP-менеджеру, который является централизованной системой, занимающейся обработкой полученных данных мониторинга. В Kaspersky SD-WAN в роли SNMP-менеджера выступает сервер Zabbix-прокси.
Работа протокола SNMP осуществляется на прикладном уровне TCP/IP (седьмой уровень модели OSI). SNMP-менеджер и SNMP-агенты обмениваются запросами и уведомлениями. В обоих случаях речь идет о стандартных сообщениях. Разница заключается в направлении, в котором отправлено сообщение, а также в его функции.
Когда SNMP-менеджер отправляет SNMP-агенту сообщение, оно используется, чтобы получить данные мониторинга и является запросом. По умолчанию SNMP-агенты получают запросы от SNMP-менеджера через порт 161. При этом менеджер может отправлять запросы через любой доступный порт. Ответ приходит на тот же порт, с которого был отправлен запрос.
В то же время если SNMP-агент отправляет SNMP-менеджеру сообщение, оно используется, чтобы предоставить данные мониторинга и является уведомлением. По умолчанию SNMP-менеджер получает уведомления от SNMP-агентов через порт 162. При этом агенты могут отправлять уведомления через любые доступные порты. Существует два типа уведомлений:
- Уведомления-ловушки (англ. traps) – это уведомления, которые SNMP-агент отправляет без предварительного запроса от SNMP-менеджера, содержащие информацию об определенных событиях. При возникновении указанного вами события, например выключении оборудования или одного из его сетевых интерфейсов, SNMP-агент генерирует уведомление-ловушку и отправляет его SNMP-менеджеру в виде UPD-сообщения. Ловушки позволяют оборудованию автоматически информировать SNMP-менеджер о возникновении важных событий, не дожидаясь получения запроса.
- Запрос на информирование (англ. inform request) – это похожие на ловушки уведомления, которые отличаются тем, что требуют дополнительного подтверждения со стороны SNMP-менеджера. Когда SNMP-агент отправляет SNMP-менеджеру запрос на информирование, этот агент ожидает получения подтверждения приема. Если SNMP-менеджер успешно принимает и обрабатывает запрос на информирование, он отправляет сообщение с подтверждением приема SNMP-агенту. Механизм подтверждения приема позволяет убедиться в надежности доставки уведомлений.
При использовании протокола TLS или DTLS уведомления-ловушки приходят на порт 10162 SNMP-менеджера, а запросы на информирование – на порт 10161.
В случае SNMP все основные протокольные единицы данных (англ. protocol data unit, PDU) имеют одинаковую структуру (см. рисунок ниже). IP-заголовок и UDP-заголовок используются для инкапсуляции и фактически не являются частями протокольной единицы данных.
Схема единицы данных протокола SNMP