logo
Протокол управления сетями SNMP

2.1 Структура SNMP MIВ

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

Первоначальная спецификация MIB-I определяла только операции чтения значений переменных. Операции изменения или установки значений объекта являются частью спецификаций MIB-II [1].

Версия MIB-I (RFC 1156) определяет 114 объектов, которые подразделяются на 8 групп.

- System -- общие данные об устройстве (например, идентификатор поставщика, время последней инициализации системы).

- Interfaces -- параметры сетевых интерфейсов устройства (например, их количество, типы, скорости обмена, максимальный размер пакета).

- Address Translation Table -- описание соответствия между сетевыми и физическими адресами (например, по протоколу ARP).

- Internet Protocol -- данные, относящиеся к протоколу IP (адреса IP-шлюзов, хостов, статистика о IP-пакетах).

- ICMP -- данные, относящиеся к протоколу обмена управляющими сообщениями ICMP.

- TCP -- данные, относящиеся к протоколу TCP.

- UDP -- данные, относящиеся к протоколу UDP (число переданных, принятых и ошибочных UPD-дейтаграмм).

- EGP -- данные, относящиеся к протоколу обмена маршрутной информацией Exterior Gateway Protocol, используемому в Internet (число принятых с ошибками и без ошибок сообщений).

Из этого перечня групп переменных видно, что стандарт MIB-I разрабатывался с жесткой ориентацией на управление маршрутизаторами, поддерживающими протоколы стека TCP/IP.

В версии MIB-II (RFC 1213), принятой в 1992 году, был существенно (до 185) расширен набор стандартных объектов, а число групп увеличилось до 10 [2].

На рис. 6 приведен пример древовидной структуры базы объектов MIB-II. На нем показаны две из 10 возможных групп объектов -- System (имена объектов начинаются с префикса Sys) иInterfaces (префикс if). Объект SysUpTime содержит значение продолжительности времени работы системы с момента последней перезагрузки, объект SysObjectID -- идентификатор устройства (например, маршрутизатора).

Рис. 6. Стандартное дерево MIB-II (фрагмент)

Объект ifNumber определяет количество сетевых интерфейсов устройства, а объект ifEntry является вершиной поддерева, описывающего один из конкретных интерфейсов устройства. Входящие в это поддерево объекты ifType и ifAdminStatus определяют соответственно тип и состояние одного из интерфейсов, в данном случае интерфейса Ethernet.

В число объектов, описывающих каждый конкретный интерфейс устройства, включены следующие [3]:

- ifType- Тип протокола, который поддерживает интерфейс. Этот объект принимает значения всех стандартных протоколов канального уровня, например rfc877-x25, ethernet-csmacd, iso88023-csmacd, iso88024-tokenBus, iso88025-tokenRing и т. д.

- ifMtu- Максимальный размер пакета сетевого уровня, который можно послать через этот интерфейс.

- ifSpeed- Пропускная способность интерфейса в битах в секунду (100 для Fast Ethernet).

- ifPhysAddress- Физический адрес порта, для Fast Ethernet им будет МАС-адрес.

- ifAdminStatus

Желаемый статус порта:

up -- готов передавать пакеты;

down -- не готов передавать пакеты;

testing -- находится в тестовом режиме.

- ifOperStatus- Фактический текущий статус порта, имеет те же значения, что и ifAdminStatus.

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

- ifInUcastPkts- Количество пакетов с индивидуальным адресом интерфейса, доставленных протоколу верхнего уровня.

- ifInNUcastPkts- Количество пакетов с широковещательным или мультивещательным адресом интерфейса, доставленных протоколу верхнего уровня.

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

- ifInErrors- Количество пришедших пакетов, которые не были переданы протоколу верхнего уровня из-за обнаружения в них ошибок.

Кроме объектов, описывающих статистику по входным пакетам, имеются аналогичные объекты, но относящиеся к выходным пакетам. Как видно из описания объектов MIB-II, эта база данных не дает детальной статистики по характерным ошибкам кадров Ethernet, кроме этого, она не отражает изменение характеристик во времени, что часто интересует сетевого администратора [5].

Эти ограничения были впоследствии сняты новым стандартом на MIB -- RMON MIB, который специально ориентирован на сбор детальной статистики по протоколу Ethernet, к тому же с поддержкой такой важной функции, как построение агентом зависимостей статистических характеристик от времени.