Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сетевые протоколы в инфокоммуникациях (ПЗ).docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
4 Мб
Скачать

5.7.1.2. Таблицы

Чтобы идентифицировать таблицу, мы сначала используем id. Группа udp имеет только одну таблицу (с id 5), как это показано на рисунке 5.14.

Рис. 5.14. udp-переменные и таблицы

Для организации таблицы мы должны использовать следующие адреса:

Однако таблица в этом дереве не на уровне листа. Мы не можем иметь доступ к таблице, пока не определим вход (последовательность) в таблице (с id 1), как это показано ниже:

Этот вход также не имеет листов, и нам он недоступен. Нам нужно определить каждый объект входа. Это две переменные в листе дерева. Хотя мы можем обратиться к их образцам, мы должны определить, какой именно образец нам нужен. В любой момент таблица может иметь несколько значений для каждой пары местный адрес / местный порт. Чтобы обратиться к определенному образцу (строке) таблицы, мы должны добавить индекс к вышеупомянутым id. В MIB индексы массивов — не целые числа (подобно большинству языков программирования). Индексы базируются на значении одной или более областей во входах. В нашем примере udpTable определяется местным адресом и номером местного порта. Например, рисунок 5.15. показывает таблицу с четырьмя строками и значениями для каждого поля. Индекс каждой строки — комбинация двух значений.

Рис. 5.15. Индексы для udpTable

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

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

Лексикографическое упорядочение

Одна интересная точка зрения о MIB-переменных — то, что идентификаторы объекта (включая идентификаторы образца) находятся в лексикографическом порядке. Таблицы упорядочиваются в соответствии правилам строки-столбца, и это означает, что нужно идти от столбца к столбцу, а в каждом столбце нужно идти от вершины до основания, как показано на рисунке 5.16.

Рис. 5.16. Лексикографическое упорядочение

Лексикографическое упорядочение делается менеджером для того, чтобы организовать доступы к набору переменных один за другим, задавая первую переменную, как будет показано в дальнейшем в команде Get Next Request в следующих разделах.

5.8. SNMP

SNMP использует и SMI, и MIB в управлении сетью Интернет. Он – прикладная программа, которая позволяет быть:

  1. менеджером, чтобы управлять извлечением значения объекта, заданного агентом;

  2. менеджером, чтобы накапливать значения объекта, заданного агентом;

  3. агентом, чтобы посылать аварийное сообщение о ненормальной ситуации к менеджеру.

5.8.1. PDU

SNMPv3 определяет восемь типов пакетов (или PDUs): GetRequest, GetNextRequest, GetBulkRequest, SetRequest, Response, Trap, InformRequest и Report ( Рис. 5.17.).

Рис. 5.17. SNMP PDUs

GetRequest

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

GetNextRequest

GetNextRequest PDU посылают от менеджера к агенту, чтобы извлечь значение переменной. Найденное значение – это значение объекта, следующего после определенного в таблице Objectid в PDU. Этот запрос главным образом используется, чтобы извлечь значения входов в таблице. Если менеджер не знает индексов входов, он не может извлечь значения. Однако он может применить GetNextRequest и определить Objectid таблицы. Поскольку первый вход имеет Objectidнепосредственно после Objectid таблицы, значение первого входа возвращается менеджеру. Менеджер может использовать этот Objectid, чтобы получить значение следующего, и так далее.

GetBulkRequest

GetBulkRequest PDU посылают от менеджера к агенту, чтобы извлечь большое количество данных. Он может применяться вместо кратного числа GetRequest и GetNextRequest PDUs.

SetRequest

SetRequest PDU посылают от менеджера к агенту, чтобы установить (сохранить) значение в переменной.