И рассеял их Господь оттуда по всей земле; и они перестали строить город [и башню]. Посему дано ему имя; Вавилон, ибо там смешал Господь язык всей земли,
и оттуда рассеял их Господь по всей земле.
Бытие, 11:1-9

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

В то же время широкий класс систем, берущих свое начало от задач промышленной автоматизации, до сих пор живет собственной жизнью. Системы, осуществляющие распределенный сбор информации с датчиков, управляющие инфраструктурой здания и т.п., используют свои протоколы, свои принципы программного управления и зачастую даже свои типы кабеля. И если перечень распространенных типов физических соединений относительно невелик (витая пара с теми или иными параметрами, коаксиальный кабель, оптоволоконный кабель), то список используемых протоколов более высокого уровня со всеми возможными модификациями может занять не одну страницу. Это приводит к тому, что оборудование, разработанное разными компаниями или предназначенное для решения разных задач, становится трудно или невозможно объединить в единую управляемую систему и тем более включить в единую информационную сеть организации.

Многообразие протоколов и интерфейсов исторически обусловлено конкуренцией. Каждый крупный производитель аппаратуры хотя бы один раз за свою историю пытался монополизировать рынок, предлагая свой стандарт, который должен был стать самым-самым. Некоторые протоколы уже вышли из употребления, причем это не всегда было связано с их недостатками. Зачастую распространенность протокола обусловлена репутацией производителя, ситуацией на рынке да и просто случайностью.

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

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

Организация сетевого управления

В свое время создание информационных сетей тоже осложнялось проблемами сопряжения интерфейсов и протоколов, однако вселенское наступление Интернета в корне изменило ситуацию. Как известно, Сеть построена на едином семействе протоколов - TCP/IP. Чтобы быть частью единой сети, фирма-производитель, независимо от собственной мощи и амбициозности, обязана поддерживать это семейство протоколов. Каждый протокол из семейства TCP/IP выполняет определенную функцию: получение почты, перекачку файлов, синхронизацию во времени и т.д. Для управления оборудованием, входящим в Интернет, используется протокол SNMP (Simple Network Management Protocol).

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

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

Агент - это программный модуль, расположенный в устройстве и работающий в сети. Он умеет забирать информацию из устройства (или посылать устройству) и обмениваться ею по сети по протоколу SNMP.

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

Управляемые данные - это переменные, отображающие состояние устройства (например, наличие бумаги в принтере, загрузку маршрутизатора и т.д.). Для работы с этими переменными в протоколе SNMP используется четыре команды: get, get-next, set и trap. Первые две система управления использует для того, чтобы считать конкретное значение управляемых данных. Команда set позволяет установить значение переменной. Инструкция trap посылается агентом асинхронно (т.е. не по запросу от системы управления), чтобы информировать о какой-то нештатной ситуации. Получив команду trap, система управления при помощи команд get, get-next и set может уточнить необходимую информацию.

Иерархия MIB

Контролируемые данные в устройстве иерархически организованы в базу управляющей информации (Management Information Base, или MIB). Для доступа конкретного устройства к MIB и используется протокол SNMP. MIB включает в себя все управляемые объекты устройства, причем каждый объект однозначно определен своим идентификатором. Управляемый объект (иногда говорят MIB-объект или просто объект) представляет собой одну или несколько специфических характеристик управляемого устройства. Объекты реализованы в виде конкретных переменных, скалярных или табличных.

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

Самые верхние идентификаторы MIB-объектов соответствуют организациям, которые отвечают за стандартизацию, а идентификаторы объектов нижнего уровня выделены поставщикам конкретного оборудования. В пределах выделенного ему поддерева каждый поставщик может определять объекты, соответствующие его продуктам. Каждый объект может быть идентифицирован своим уникальным именем (например, iso.identified-organization. dod.internet.private.enterprise.stinscoman.device_custom.liebertUps7200.VoutAB) или эквивалентным описателем объекта (1.3.6.1.4.1.5758.3.1.1). Подобное построение позволяет свести в единую иерархию все данные, которые производители любого оборудования хотят сделать управляемыми, и обеспечить возможность ее неограниченного расширения.

Сетевые системы управления

Стоит сказать несколько слов о сетевых системах управления. В настоящее время существует множество подобных систем, работающих по протоколу SNMP. Наиболее известны такие, как HP OpenView (Hewlett-Packard, http://www.hp.ru), Solstice Domain Manager (Sun Microsystems, http://www.sun.ru), SPECTRUM (Cabletron Systems*, http://www.cabletron.ru), ManageWise (Novell, http://www.novell.ru), Tivoli NetView (Tivoli Systems, http://www.tivoli.com). Использование продуктов, стандартно поставляемых с ОС Linux, позволяет создать бесплатную систему сетевого управления, работающую по протоколу SNMP.


*После разделения Cabletron - Aprisma Management Technologies (http://www.aprisma.com). - Прим. ред.

Таким образом, протокол SNMP - это очень гибкое и, что существенно, стандартизованное средство, обеспечивающее управление произвольным оборудованием через сеть любой структуры, передача в которой ведется по протоколу IP. Он хорошо подходит не только для управления сетевыми устройствами, но и для задач управления разнообразным оборудованием. Такой подход позволяет избавиться от параллельной инфраструктуры, построенной с использованием несовместимых между собой специализированных протоколов. В результате создается единая инфраструктура предприятия, использующая семейство протоколов TCP/IP, и задача интеграции различных уровней системы просто исчезает. Кроме того, не требуется разрабатывать специализированное ПО для управления системой. Для управления всеми элементами объединенной инфраструктуры - сетевым оборудованием, серверами, системами питания и кондиционирования, различными датчиками и т.д. - может использоваться стандартное ПО с уже заложенными в него функциями сбора статистики, обзора управляемых объектов, обработки исключительных ситуаций и т.д.

Устройства для построения систем управления

Корпорация "Стинс Коман" разработала семейство компактных недорогих устройств eSCape на базе RISC-микроконтроллеров, поддерживающих протокол SNMP и предназначенных для построения промышленных и офисных систем управления. Для подключения к существующим офисным сетям используется протокол Ethernet IEEE 802.3 (10Base-T). При работе в полевых условиях в качестве физического интерфейса можно использовать интерфейс RS-232 с протоколом PPP (Point to Point Protocol), что допускает соединение через модем по телефонной линии. Контроллеры данного семейства отвечают основным требованиям к оконечным узлам протокола TCP/IP (RFC 1122/1123) и поддерживают протокол SNMP v1, включая сообщения об исключительных ситуациях (trap). База управляющих переменных, помимо переменных, отвечающих за собственно функционирование контроллера, ограниченно поддерживает переменные MIB-II (RFC 1158).

Эти контроллеры можно использовать для управления элементами офисной инфраструктуры - системами кондиционирования и гарантированного энергоснабжения зданий, сигнализации, контроля доступа, учета энергопотребления и т.д. Иными словами, они подходят для систем построения так называемого интеллектуального здания. Еще одно из перспективных применений - это контроль функционирования специализированного технологического и промышленного оборудования, что важно для служб эксплуатации предприятий, а также для сервисных центров. Для связи с управляемым объектом могут использоваться различные виды интерфейсов: как обычные аналоговые и цифровые, так и уникальные, например, ИК-сигнал дистанционного управления, позволяющий управлять различным бытовым оборудованием. По совокупности показателей данное семейство контроллеров на сегодняшний день не имеет аналогов.

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

В заключение хочется еще остановиться на вопросе безопасности подобного решения. Действительно, безопасно ли использование контроллеров такой архитектуры для управления инфраструктурой здания? Что, если злоумышленник, например, захочет выключить везде электропитание? Но ведь любая распределенная система управления может стать объектом несанкционированного доступа. В предлагаемой архитектуре безопасность обеспечивается как комплексом стандартных мер безопасности, давно отработанным в сетевых задачах, так и встроенными возможностями протокола SNMP по разграничению доступа. Решая задачи, в которых необходим только сбор информации, а потребность в управлении объектом отсутствует, можно запретить выполнение операций модификации переменных MIB, и тогда управлять оборудованием удаленно станет невозможно в принципе.

Владимир Катаев - директор по развитию корпорации "Стинс Коман". С ним можно связаться по e-mail: Vkataev@stinscoman.com
.