SNMP: простой протокол управления сетью
Категория: Управление сетями | Автор: admin | 5-06-2010, 19:24 | Просмотров: 3520

Когда в начале 90-х гг. протокол SNMP впервые появился на рынке, возникла золотая лихорадка в миниатюре. Сотни компаний выпустили собственные пакеты управления по протоколу SNMP. Кроме того, многие поставщики аппаратных и программных средств стали включать в свои продукты SNMP-агенты.

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

 

Структура протокола SNMP

 

В SNMP данные организованы иерархически, причем структура иерархии жестко определена. Это позволяет пространству данных оставаться универсальным и расширяемым, по крайней мере теоретически. Большие его области оставлены для перспективного использования; дополнения поставщиков операционных систем локализуются в определенных диапазонах во избежание конфликтов. Для формирования пространства имен применяются так называемые базы управляющей информации (Management Information Base, MIB). Это структурированные текстовые файлы, которые содержат описания данных, доступных по протоколу SNMP. Ссылки на конкретные переменные, описываемые в базе, называются идентификаторами объектов (Object Identifier, OID).

В переводе на человеческий язык это означает, что протокол SNMP определяет иерархическое пространство имен переменных, хранящих "интересные" параметры системы.

В основном SNMP-переменные содержат данные целого и строкового типов, а также пустые значения. Данные базовых типов разрешается объединять в последовательности, а каждую последовательность можно многократно повторять, создавая таким образом таблицу. В большинстве реализаций SNMP поддерживаются и другие типы данных.

Иерархия SNMP напоминает иерархию имен файловой системы. В качестве символа-разделителя здесь используется точка, а каждому узлу иерархии присваивается не имя, а номер. Для облегчения ссылок узлам присваиваются также текстовые имена, но схема именования выходит за рамки самой иерархии и определяется на высоком уровне (в принципе, это похоже на связь между именами компьютеров и их IP-адресами).

К примеру, идентификатор OID, соответствующий показателю общего времени работы системы, выглядит так: 1.3.6.1.2.1.1.3. В более понятной форме его можно записать следующим образом:

iso.org.dod.internet.mgmt.mib-2. system. sysUpTime

 

Верхние уровни иерархии SNMP носят искусственный характер и обычно не содержат никаких полезных данных. По сути, интересная информация появляется только на уровне iso.org.dod.intemet.mgmt (OID равен 1.3.6.1.2).

Основная административная база данных SNMP для протоколов TCP/IP (MIB-I) определяет доступ к наиболее важным управляющим данным: информации о системе, ее интерфейсах, преобразовании адресов и протоколах (IP, ICMP, TCP, UDP и др.). В документе RFC 1213 описана новая, более полная версия этой базы, получившая название MIB-II. Большинство поставщиков, выпускающих SNMP-серверы, поддерживает MIB-II. В табл. 20.1 приведена выборка узлов иерархии из пространства имен MIB-II.

Таблица 20.1. Некоторые идентификаторы из базы MIB-II

OID1

Тип

Содержание

system.sysDescr

строка

Информация о системе: производитель, модель, тип ОС и т.д.

system.sysLocation

строка

Физическое местонахождение компьютера

system.sysContact

строка

Информация о владельце компьютера

system.sysName

строка

Имя системы (обычно это полное DNS-имя)

interfaces.ifNumber

целое

Количество имеющихся сетевых интерфейсов

interfaces.ifTable

таблица

Таблица с информацией о каждом интерфейсе

ip.ipForwarding

целое

1, если система является шлюзом, иначе 2

ip.ipAddrTable

таблица

Таблица данных IP-адресации (маски и т.д.)

ip.ipRouteTable

таблица

Системная таблица маршрутизации

icmp.icmplnRedirects

целое

Число полученных переадресующих ICMP-пакетов

icmp.icmplnEchos

целое

Число полученных пакетов команды ping

tcp.tcpConnTable

таблица

Таблица текущих ТСР-соединений

udp.udpTable

таблица

Таблица с информацией о UDP-сокетах, через которые серверы ожидают прием запросов

1   Относительно узла iso.org.dod.internet.mgmt.mib-2.

 

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

MIB — это лишь соглашение об именовании управляющих данных. Для того чтобы эта схема заработала, ее необходимо подкрепить программой-агентом, которая будет обеспечивать соответствие содержимого SNMP-переменных и текущего состояния устройства. Код для основной базы MIB (в настоящее время MIB-II) поставляется с большинством SNMP-агентов UNIX. Некоторые агенты разрешают подключать дополнительные базы данных.

 

Операции протокола SNMP

 

В пространстве имен SNMP определены всего четыре базовые операции: get (прочитать), get-next (прочитать следующий), set (записать) и trap (прерывание).

Операции get и set — базовые операции чтения и записи данных на узле иерархии, который определяется конкретным значением OID. Операция get-next используется для последовательного прохода по базам MIB, а также для чтения таблиц.

Прерывание (операция trap) — это неожиданное, асинхронное уведомление клиента о том, что на сервере произошло интересное событие. Определен ряд стандартных прерываний, включая уведомления вида "я только что включился", сообщения об отказах и восстановлении сетевых каналов, а также сообщения, связанные с различными проблемами маршрутизации и аутентификации. Широко распространены и нестандартные прерывания, например такие, которые просто используются для отслеживания значений требуемых SNMP-переменных. Если эти значения выходят за границы установленного диапазона, выдается соответствующее сообщение. Способ определения получателей таких сообщений зависит от реализации агента.

Поскольку сообщения SNMP потенциально могут изменять информацию о конфигурации компьютеров, необходим какой-то механизм защиты. Простейшая защита основана на концепции "имени сообщества" (community name). Для тех, кто не страдает косноязычием, поясним: на языке разработчиков стандарта это синоним слова "пароль". Доступу только для чтения соответствует один пароль, простите, "имя сообщества", а доступу для записи — другой.

Версия 3 стандарта SNMP включает методы управления доступом с высокой степенью безопасности. Использование этих методов несколько ограничивается возможностями сетевых аппаратных средств, но есть основания ожидать изменений в лучшую сторону.

 

RMON: база MIB для удаленного мониторинга

 

База RMON (remote monitoring — удаленный мониторинг) накапливает данные об общих характеристиках сети (т.е. таких, которые не относятся к какому-то конкретному устройству). Сетевые анализаторы или "зонды" могут собирать информацию о загруженности и производительности сети. Полезные данные группируются, предварительно обрабатываются, и их важная часть доставляется на центральную станцию управления для анализа и графического воспроизведения. Многие зонды имеют буферы для перехваченных пакетов и могут работать подобно программе tcpdump.

База RMON описана в документе RFC 1757, который был принят в качестве чернового стандарта в 1995 году. База разделяется на девять "групп RMON". Каждая группа хранит собственный набор статистических данных. Если сеть достаточно велика и имеет много глобальных соединений, необходимо рассмотреть возможность приобретения зондов для снижения SNMP-трафика через глобальные соединения. При наличии итоговых статистических данных отпадет необходимость в удаленном сборе первичных данных. Многие мосты и маршрутизаторы поддерживают базы RMON и хранят в них собственные статистические данные.



 (голосов: 1)
Версия для печати | Комментариев: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.


 
Логин
Пароль
 

 
Locations of visitors to this page