среда, 11 июня 2014 г.

SNMP

SNMP — протокол, который используется для обмена сообщениями между агентом и менеджером. 

 

Концепт структуры



1) Managed Object (Управляемое устройство, SNMP-сущность, SNMP entity) непосредственно, само устройство, которым управляют и с которого считывают/записывают данные

2) SNMP Agent — программное обеспечение, запускаемое на управляемом устройстве, либо на устройстве, подключенном к интерфейсу управления управляемого устройства. Агент обладает локальным знанием управляющей информации и переводит эту информацию в специфичную для SNMP форму или из неё (медиация данных).

3) MIB (management information base) — база данных, которая используется для управления устройствами в сети. На каждом управляемом устройстве хранится набор переменных, которые используются для управления им. Эти переменные предоставляют информацию о возможностях устройства, которые отправляются NMS и/или параметры, которые отправляются управляемым устройствам для контроля над ними.
Каждая переменная в MIB называется MIB-объект и описана с использованием SMI (Structure of Management Information).


4) Система сетевого управления (Network Management System, NMS) — программное обеспечение, взаимодействующее с менеджерами для поддержки комплексной структуры данных, отражающей состояние сети.

Архитектура протокола

Участники взаимодействия называются SNMP объектами/сущностями (SNMP entity). SNMP-сущность состоит из engine и одного или нескольких приложений.


SNMPv3 Engine состоит:

  • Диспетчер (dispatcher) — посылает и получает сообщения. Определяет версию каждого полученного сообщения и, если версия поддерживается, передает сообщение Подсистеме обработки сообщений. Отправляет SNMP-сообщения другим SNMP-сущностям.
  • Подсистема обработки сообщений (message processing subsystem) — готовит сообщения к отправке и извлекает данные из полученных сообщений. Может состоять из нескольких модулей обработки сообщений. Например, модули для обработки запросов SNMPv1, SNMPv2, SNMPv3.
  • Подсистема безопасности (security subsystem) — осуществляет аутентификацию и шифрование.
  • Подсистема контроля доступа (access control subsystem) — отвечает за контроль доступа к объектам MIB.

Приложения SNMPv3

  • Генератор команд (command generator) — генерирует запросы get, get-next, get-bulk, set и обрабатывает ответы. Это приложение реализовано на NMS и может отправлять запросы на SNMP-сущности, которые находятся на маршрутизаторах, коммутаторах и других устройствах.
  • Command responder — отвечает на запросы get, getNext, getBulk и set. Реализован, например, на коммутаторах, маршрутизаторах. Для SNMPv1 и SNMPv2 command responder реализован в SNMP агенте.
  • Отправитель уведомлений (notification originator) — генерирует SNMP trap и уведомления. Реализован в SNMP-сущности на коммутаторе.
  • Получатель уведомлений (notification receivers) — получает trap и информационные сообщения. Это приложение реализовано на NMS.


Сообщения протокола SNMP


Сообщение Появилось в версии Ответное сообщение Кем обычно отправляется Основное предназначение
Get 1 Response Manager Запрос значения одной переменной
GetNext 1 Response Manager Запрос о получении информации о следующей в иерархии переменной
GetBulk 2 Response Manager Запрос о получении значений нескольких последовательных переменных. Например, для получения таблицы маршрутизации
Response 1 Нет Agent Используется для ответа на сообщения Get и Set
Set 1 Response Manager Отправляется менеджером агенту. Указывает агенту какое значение присвоить конкретной переменной. Агент отвечает сообщением Response
Trap 1 Нет Agent Позволяет агенту отправлять по собственной инициативе информацию SNMP-менеджеру (без запроса от менеджера)
Inform 2 Response Manager Сообщение используется между SNMP-менеджерами для обмена информацией MIB


Детали

SNMP работает на прикладном уровне TCP/IP (седьмой уровень модели OSI). Агент SNMP получает запросы по UDP-порту 161. Менеджер может посылать запросы с любого доступного порта источника на порт агента. Ответ агента будет отправлен назад на порт источника на менеджере. Менеджер получает уведомления (Traps и InformRequests) по порту 162. Агент может генерировать уведомления с любого доступного порта. При использовании TLS или DTLS запросы получаются по порту 10161, а ловушки отправляются на порт 10162.


SNMPv3 в отличии от версий 1 и 2 предоставляет важные особенности безопасности:

  • Конфиденциальность - шифрование пакетов для предотвращения перехвата несанкционированным источником.
  • Целостность - целостность сообщений, для предотвращения изменения пакета в пути, включая дополнительный механизм защиты от повторной передачи перехваченного пакета.
  • Аутентификация - чтобы убедиться, что сообщение пришло из правильного источника.

Комментариев нет:

Отправить комментарий