Подробно с основами технологии SNMP необходимо познакомиться в процессе выполнения контрольной работы!

Простой протокол управления сетью (SNMP)

SNMP был принят в 1990–м году в качестве протокола управления Интернетом и вскоре помимо управления в Интернете стал стандартным для управления сетями передачи данных. Протокол SNMP в чем – то схож с протоколом CMIP, который используется в TMN, но существенно проще его и лишен ряда возможностей, присущих CMIP. Это объясняется тем, что протокол SNMP при разработке должен был затрагивать как можно меньше аппаратных средств.

Широкому распространению протокола SNMP способствуют:

  • Простота реализации.
  • Невысокая стоимость реализации.

Недостатки протокола SNMP:

  • Слабая защищенность от несанкционированного доступа.
  • Неприспособленность к работе с большими массивами данных.

В системах управления, построенных на основе протокола SNMP стандартизируются следующие элементы:

  • Протокол взаимодействия “агент - менеджер”.
  • Язык описания модели MIB и сообщения SNMP (используется язык ASN – 1).
  • Несколько конкретных моделей MIB, имена объектов которых регистрируются в дереве стандарта ISO (стандартизированы MIB1, MIB2, RMON, RMON2).

Существуют стандарты, определяющие структуру MIB в том числе набор и типов объекта, а также допустимы над ними операции.

Агент в протоколе SNMP - это обрабатывающий элемент, который обеспечивает менеджеру доступ к значению переменных MIB.

Основные операции по управлению вынесены в менеджер, а агент SNMP выполняет чаще всего пассивную роль, передавая в менеджер значение переменных.

Существуют 3 версии протокола SNMP:

  • SNMP версия 1.
  • SNMP версия 2.
  • SNMP версия 3.

SNMP – протокол типа запрос – ответ. Запрос поступает от менеджера, агент должен передать ответ.

Протокол SNMP включает в себя несколько команд:

  1. Get – request – используется для получения от агента значения какого – либо объекта по его имени.
  2. Get Next – request – используется для получения менеджером значения следующего объекта при просмотре таблицы объекта (без имени запрос осуществляется – последовательный запрос).
  3. Get – response - с помощью этой команды агент передает менеджеру ответ на предыдущие 2 команды.
  4. Set – используется менеджером для изменения значения какого – либо объекта.
  5. Trap – используется агентом для сообщения менеджеру о возникновении особой ситуации.
  6. Get – Bulk (только SNMP версии 2) позволяет получить менеджеру несколько значений переменных на один запрос.
  7. Inform – позволяет одному менеджеру послать информацию типа Trap другому менеджеру и запросить ответ.

Формат сообщения SNMP

Протокол SNMP обслуживает передачу данных между менеджером и агентом. Для этого используется дельтаграммный транспортный протокол UDP, который не обеспечивает надежной доставки сообщений.

В соответствии с протоколом ASN.1 сообщение SNMP состоит из произвольного количества полей. Каждое поле предваряет его описатель (tag – идентификатор) и указатель длины.

Пакет SNMP состоит из 3 полей:

Version

Community

SNMP PDU

Version – версия протокола.

0 – 1 версия.

1 – 2 версия.

Community – идентификатор общности. Используется для группирования устройств управляемых определенным менеджером, а также для ограничения доступа к управляемой системе.

PDU – протокольный блок данных. Состоит из типа PDU, а также из нескольких обязательных полей и произвольного числа имен и значений переменных.

В SNMP определяются следующие типы PDU:

  • Для SNMPv1: Get – request, Get Next – request, Get – response, Set, Trap.
  • Для SNMPv2: Get – request, Get Next – request, Get – response, Set, Trap, Get – Bulk (только SNMPv2), Inform.

PDU для сообщения типа Trap имеет следующий формат:

PDU type – тип PDU.

Enterprise - идентифицирует тип объекта, сгенерировавшего Trap – сигнал прерывания.

Agent address – адрес агента, сгенерировшего Trap.

Generic Trap Type – общий тип сигнала прерывания (ловушки).

Specific Trap code – специфический код прерывания.

Time Stamp – передает величину времени между последней и повторной инициализации сети и генерацией данного прерывания.

Variable binding – список переменных, содержащий информацию о данном прерывании.

Сообщение типа Trap используется агентом для информирования менеджера об особой ситуации. К особому вниманию относятся:

  • Перезагрузка устройства.
  • Исчезновение связи и т.д.

Существуют 7 кодов прерывания, которые передаются в поле Generic Trap Time.

Например: код 7 обозначает прерывание специфического для данного производителя аппаратуры. В этом случае специфическое поле Specific Trap code будет являться расширением кода причины прерывания.

При посылке сообщения типа Trap передается адрес агента, пославшего сообщения, время посылки сообщения, код производителя аппаратуры (поле Enter – price), а также дополнительная информация, которая состоит из имен и значений переменных, например: скорость, тип.

Формат сообщения Get Next, Set, Get, Get – response:

PDU Type – тип PDU.

Request ID – идентификатор запроса. Связывает запрос с ответом.

Error Status – состояние сбоя. Сигнализирует о типе ошибки.

Error Index – индекс ошибки. Связывает ошибку с частью переменных, которые передаются в последнем поле.

Variable bindings – переменные.

Формат PDU для операции Get-Bulk (SNMPv2) имеет вид.

PDU type

Request ID

Nonrepeaters

Max-Repetition

Variable bindings

Поля PDU, для операции Get-Bulk, следующие:

  • PDU Type, Request ID и Variable bindings - Исполняют ту же роль, что и PDU для get, get-next, set, response и trap операций.
  • Nonrepeaters - Указывает количество переменных в variable bindings list для лексикографического приемника, для которого это возвращается.
  • Max-repetitions - Указывает количество лексикографических приемников, которые были возвращены для запомненных переменных в variable bindings list.


Язык ASN.1 используется для описания объектов и процессов прикладного уровня OSI, в частности на этом языке описаны протоколы CMIB и SNMP.

Например. Общий формат сообщений SNMP на языке ASN – 1 выглядит следующим образом:

Для передачи этой информации по сети передачи данных используются правила кодирования BER (Х.209).

Пример сообщения протокола SNMP, который представляет собой запрос объекта Sys Descr (числовое имя 1.3.6.1.2.1.1.1).

В HEX – кодах:

30 29 02 01 00 04 08 70 75 62 6С 69 63 А0 1С 02

04 05 АЕ 56 02 02 01 00 02 01 00 30 0Е 30 0С 06

08 2В 06 01 02 01 01 01 00 05 00

В расширенном виде согласно правилам ASN.1 и BER:

30

29

02

01

00

     

sequence

len = 41

integer

len = 1

vers = 0

     

04

06

70

75

62

6C

69

63

string

len = 6

p

u

b

l

I

C

A0

1C

02

04

05

AE

56

02

getreq

len = 28

integer

len = 4

-

requested ID

-

-

02

01

00

02

01

00

   

integer

len = 1

status

integer

len = 1

error

index

 

30

0E

30

0C

06

08

   

sequence

len = 14

sequence

len = 12

objected

len = 8

   

2B

06

01

02

01

01

01

00

1, 3

6

1

2

1

1

1

0

05

00

           

null

len = 0

           


Более подробно с протоколом SNMP необходимо познакомиться, выполнив контрольную работу!

Сравнение протоколов CMIP и SNMP

1. Существует два семейства стандартов системы управления (СУ):

1.1. Стандарты Интернета, описывающие СУ на основе SNMP;

1.2. Cтандарты управления открытых систем, разработанные ISO ITU – T на базе протокола CMIP.

2. Семейство стандартов Интернета специфицирует минимальные аспекты и элементы СУ, а семейство ISO ITU – T соответственно максимальные.

3. Базы управляющей информации MIB в стандартах Интернета состоят из дерева атрибутов, названных объектами и группами объектов. Первые MIB Интернета больше ориентированы на управление маршрутизаторами и интерфейсами.

3.1. MIB I – только контроль (мониторинг);

3.2. MIB II – контроль и частичное управление;

3.3. RMON MIB – направлено на создание интеллектуальных агентов, позволяющих фильтровать и обрабатывать управляющую информацию, сокращая тем самым объем информации передаваемой менеджеру.

4. Стандарты ISO ITU – T для представления управляемых объектов используют объектно – ориентированный подход, с помощью которого определено несколько классов обобщенных управляемых объектов, на основании которых путем наследования свойств информации, разработчиками создаются специфические классы объектов.

5. Для описания управляемых объектов ISO разработаны правила описания GDMO, основанные на формах (шаблонах) стандартной структуры, заполняемые с помощью языка ASN – 1, где свойства объектов выражаются в виде шаблонов.

6. Протокол CMIP является протоколом взаимодействия между агентом и менеджерами для управления большими системами и позволяет с помощью одной команды действовать сразу на группу агентов, применяя такие опции как обзор и фильтрация.

7. Применение протокола SNMP позволяет строить как простые, так и сложные СУ, а протокол CMIP определяет достаточно высокий начальный уровень сложности СУ, так как для его работы необходимо реализовать ряд вспомогательных служб, объектов и баз данных.

8. Агенты CMIP выполняют более сложные функции, чем агенты SNMP, что требует реализации более сложного и дорогого программного обеспечения агента.

9. Уведомление trap’s агента SNMP посылается менеджеру без ожидания подтверждения, что может привести к тому, что важные сетевые проблемы останутся незамеченными, так как соответствующее уведомление окажется полученным, в то время как уведомление агента CMIP всегда передается с помощью надежного транспортного протокола и в случае потери будут переданы повторно.

10. Протокол CMIP лучше масштабируется, так как можно воздействовать сразу на несколько объектов, поэтому СУ построена на базе CMIP легче модернизировать.