Выяснение: использование Web-технологий для сбора первичных данных
Сообщение: использование Web-технологий для доступа к данным и их передачи
Обработка: использование Web-технологий для приложений-"мыслителей"
Представление: использование Web-технологий для представления информации
Использование агентов на базе HTTP
Использование Web-технологий для доступа к системам управления
Java и JMAPI
Управление корпоративной сетью на базе Web-технологий
Новый взгляд

Однажды осознав сильные стороны Web-технологий - в первую очередь, это простота применения и независимость от операционной системы, - начинаешь испытывать жгучее желание использовать данные технологии для решения всех проблем в области управления сетями. Однако такая попытка была бы шагом в неверном направлении, поскольку уже имеется ряд вполне работоспособных общепринятых подходов к отдельным аспектам управления. Чем пытаться изобрести велосипед, куда лучше применять Web-технологии для решения только тех проблем, подход к которым еще не выработан. Именно эти соображения легли в основу приводимого ниже документа. Первоначально он предназначался исключительно для внутреннего использования в компании SNMP Research, однако еженедельник Network World счел аргументы автора достаточно убедительными и получил у него разрешение на публикацию документа.

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

На стадии выяснения происходит получение первичных данных. Для этого, как правило, требуются определенные инструментальные средства - например, установка агентов на всех подлежащих управлению устройствах или системах, перехват исходящей от них информации о состоянии. Для решения подобных задач в рамках Internet используются стандарт SNMP Structure of Management Information (SMI), определенный документом RFC 1902, и стандартные информационные базы MIB (Management Information Base).

Сообщение - это обеспечение доступа к необходимым для управления данным и передача их по назначению. Стандартный подход в рамках Internet состоит в использовании SNMP. Наиболее часто для передачи SNMP-данных применяется протокол UDP (User Datagram Protocol), так как он не предусматривает установления логического соединения и потому характеризуется малыми накладными расходами, а кроме того, обеспечивает передачу данных по назначению, даже когда сеть в целом работает плохо.

На стадии обработки первичные данные преобразуются в осмысленную информацию. Обработка информации выполняется интеллектуальными приложениями, способными выделять главное из ее массива, устанавливать корреляции и объединять данные по смысловому признаку. Мы будем их называть приложениями-"мыслителями" (thinker application).

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

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

Выяснение: использование Web-технологий для сбора первичных данных

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

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

За последние восемь лет покупатели и производители потратили огромное количество времени и денег (а также усилий на обучение операторов) на стандартный подход к определению формата хранения данных и в средства для их получения на базе SMI и MIB. В результате появилась возможность обеспечить хотя бы минимальный уровень совместимости систем управления. Попытка отказаться от этих вложений, вместо того чтобы использовать их как основу для дальнейшего развития, безусловно, приведет к огромным непроизводительным расходам.

Сообщение: использование Web-технологий для доступа к данным и их передачи

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

HTML и HTTP не слишком хорошо приспособлены для опроса, поскольку в них предполагается, что извлечение новой информации и вывод ее на экран осуществляются только после того, как человек нажмет на кнопку "Reload". Ровно по той же причине HTML/HTTP не годятся для обработки асинхронных прерываний. Конечно, можно написать аплет Java, который будет имитировать нажатие на кнопку или обеспечивать получение информации о прерывании с помощью технологии принудительной рассылки (push). Это решение, однако, выглядит весьма искусственным, поскольку здесь технологию HTML/HTTP пытаются использовать для тех целей, для которых она не предназначена. На этом пути неизбежны потери в эффективности.

Куда более осмысленным выглядит подход, в котором SNMP и Web-технологии применяются во взаимно дополняющем режиме. При этом на SNMP возлагается решение проблем выяснения и передачи (т. е. сбора данных и их передачи или обеспечения доступа к ним), а на WWW-технологии - выполнение двух других задач.

Теоретические исследования, лабораторные эксперименты и практический опыт показывают, что наиболее разумным подходом к передаче информации управляющих протоколов (в частности, SNMP) является использование протоколов передачи данных без установления логического соединения. Кроме того, было установлено, что при попытках передавать управляющую информацию с использованием стека транспортных протоколов с установлением логического соединения (например, HTML поверх HTTP поверх TCP) возникает целый ряд проблем.

Обработка: использование Web-технологий для приложений-"мыслителей"

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

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

Представление: использование Web-технологий для представления информации

Всемирная паутина используется повсюду, и благодаря этому она оказывается идеальным средством представления информации. Публикация данных на Web-странице - эффективный, простой и недорогой способ передачи информации всем, кто в ней заинтересован. Несомненным преимуществом этого подхода является то, что HTML/HTTP и Java могут работать на любой платформе. Web-технологии во многих ситуациях вполне способны заменить X Windows.

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

Рынок систем управления на базе Web-технологий только возникает. Производители предлагают разнообразные архитектуры, наиболее известными из которых являются следующие:

  • управление устройствами с использованием агентов на базе HTTP;
  • использование HTTP для доступа к системам управления;
  • Java и Java Management API (JMAPI);
  • управление корпоративной сетью на базе Web (Web-based Enterprise Management, WBEM).

Использование агентов на базе HTTP

Первый подход предполагает размещение Web-сервера на каждом управляемом устройстве или системе для обеспечения доступа к данным, необходимым для управления, средствами HTTP. Во многих случаях необходим также доступ к данным через SNMP - это нужно для обеспечения единой стратегии управления в рамках предприятия (рис. 1).

Picture_1

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

Для достижения поставленных целей в продуктах этой категории обычно используется либо двойной стек (т. е. стек SNMP поддерживается отдельно от стека HTTP), либо единый (когда для работы с SNMP и HTTP используется один и тот же стек связных протоколов, а структуры данных SNMP и HTTP, возникающие на верхних уровнях стека, отображаются друг на друга). Технология двойного стека реализована в продуктах целого ряда производителей, однако нельзя не отметить, что использование единого стека дает целый ряд преимуществ:

  • повышается надежность защиты данных, поскольку обеспечивается единый способ доступа к данным, требующимся для управления;
  • повышается уровень синхронизации данных;
  • уменьшаются "опорная поверхность" (footprint) стека и объем памяти, необходимой для его хранения;
  • появляется возможность использования единого подхода к данным (опять-таки в силу использования единого способа доступа);
  • упрощается тестирование программ, поскольку уменьшается число подлежащих тестированию компонентов (один стек вместо двух).
  • Однако рассматриваемому подходу присущи и определенные недостатки. Управление сетью никоим образом не сводится к манипулированию переменными MIB при помощи браузера. Web-браузеры работают в режиме логического соединения, они не рассчитаны на использование в качестве средства межмашинного взаимодействия. Поскольку Web-технологии не могут поддерживать несколько соединений одновременно, трудно ожидать, что с их помощью удастся получить общую картину работы сети масштаба предприятия. По этим и ряду других причин системы управления устройствами на базе Web не поддаются масштабированию и мало подходят для обработки аварийных ситуаций. Тем не менее этот подход вполне годится для решения некоторых задач управления конфигурациями.

    Использование Web-технологий для доступа к системам управления

    Подход номер два предполагает, что доступ к системе управления осуществляется средствами HTTP, в то время как для обмена данными между агентом и диспетчером используется протокол SNMP (рис. 2). В данной архитектуре все протоколы используются строго по назначению - как SNMP, специально разработанный для передачи данных в системах управления, так и HTML и HTTP, предназначенные для обеспечения связи между браузерами.

    Picture_2(1x1)

    Рисунок 2.
    В данной архитектуре для решения каждой из задач используется оптимальное средство: для обеспечения доступа к управляющим консолям на базе Web-технологий служит HTTP, а для обмена данными между управляющей системой и управляемыми устройствами - SNMP.

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

    Java и JMAPI

    JMAPI представляет собой составную часть инициативной разработки на базе Java под названием Solstice Workshop, предложенной компанией SunSoft и являющейся средой программирования для создания ПО управления сетями и системами на базе Web-технологий. Помимо JMAPI, в состав Solstice Workshop входит занимающая небольшой объем памяти база данных и среда программирования на Java. Основными достоинствами Solstice Workshop являются следующие: JMAPI легко поддается расширению, а язык Java полностью универсален.

    О своей поддержке JMAPI объявили некоторые сторонние производители, часть которых планирует в ближайшем будущем представить бета-продукты, созданные с использованием первой версии инструментального набора JMAPI. Средства из этого набора будут обеспечивать поддержку "приспособлений" (widget) Java, предназначенных для представления данных в стандартном виде. Следует, однако, заметить, что определения классов объектов JMAPI пока что не детализированы, поэтому появления инструментальных средств на основе точных определений классов придется подождать. Детализация определений управляемых объектов будет в значительной степени оставлена на усмотрение сторонних компаний. Для того чтобы удовлетворить запросы как пользователей (стремящихся получить в свое распоряжение программы с наиболее широкими возможностями), так и производителей (заинтересованных в переносимости разрабатываемых приложений) понадобятся новые стандарты.

    Управление корпоративной сетью на базе Web-технологий

    Для использования архитектуры номер четыре (WBEM) необходимо сформулировать детальные определения структур данных. О своей поддержке начального варианта архитектуры WBEM (появившегося в июле 1996 г. по инициативе компаний Microsoft, Compaq Computer, Cisco Systems, BMC Software и Intel) публично заявило уже более 50 компаний. Определению подлежат следующие компоненты.

  • HyperMedia Management Schema (HMMS) - развернутое описание подлежащей управлению вычислительной среды. Первоначально предполагалось, что HMMS поступит на доработку в комитет DMTF (Desktop Management Task Force). Однако DMTF предпочел заняться более масштабным проектом и в настоящее время готовится опубликовать включающий в себя HMMS стандарт Common Information Model (CIM). В этом документе будут описаны способы отображения данных между HMMS и продуктами, соответствующими стандартам Common Object Request Broker Architecture, SNMP и Desktop Management Interface (последний был разработан самим DTMF).
  • HyperMedia Object Manager - модель данных, обеспечивающая единый подход к информации, предназначенной для управления, которая получена из различных источников.
  • HyperMedia Management Protocol - связной протокол, включающий в себя HMMS и работающий поверх HTTP. Планируется, что в него будут встроены интерфейсы с SNMP и DMI.
  • WBEM/CIM - наиболее масштабная из всех архитектур на базе Web-технологий, поэтому ей, скорее всего, потребуется наибольшее время для достижения зрелости.

    Новый взгляд

    С использованием Java связаны надежды на упрощение задачи переносимости при разработке приложений-"мыслителей"; кроме того, этот подход обеспечивает ни с чем не сравнимые возможности отображения информации. Однако вокруг Java поднялась ужасная шумиха, а в результате некоторые компании, повторяя ошибки прошлого, предпринимают колоссальные усилия для разработки приложений, не обладающих достаточно широкой совместимостью с установленным у клиентов программным обеспечением. В частности, затраты на разработку архитектур JMAPI и WBEM сопоставимы с теми, которые понадобились на создание вышедшего в настоящее время из употребления стандарта Distributed Management Environment. Такие масштабные проекты редко заканчиваются разработкой полезных продуктов за разумное время.

    Ряд сторонников Java и WBEM пытается заново изобрести инструментальные средства. При этом могут значительно пострадать производительность и совместимость, поскольку придется обеспечивать применение новых средств на уже установленном оборудовании. Пользователи уже имеют горький опыт попыток использования технологии DTMF в системах управления масштаба предприятия на базе SNMP. Еще один урок - войны между платформами управления сетями, развернувшиеся в начале 90-х гг. К настоящему времени эти схватки несколько утратили остроту, но отнюдь не прекратились, а появление новых платформ управления на базе Web-технологий только подольет масла в огонь. Такие войны дорого обходятся; чтобы предотвратить их, нужны стандартные модели данных, стандартные хранилища данных и библиотеки функций.

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

    Между тем в текущем году на рынке должно появиться большое число устройств, поддерживающих средства управления на базе Web-технологий; большинство из них будут поддерживать также и SNMP. Постепенно появятся и удобные стандарты управления на базе Web-технологий. Однако попытки пересмотреть уже найденные решения задач сбора и передачи данных могут только замедлить этот процесс; разумнее сосредоточить усилия на более сложных проблемах - объединения приложений управления и определения данных.

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


    Д-р Джеффри Кейс (Jeffry Case) - один из разработчиков протокола Simple Network Management Protocol (SNMP), президент компании SNMP Research International, которая занимается разработкой программ, связанных с использованием SNMP. С д-ром Кейсом можно связаться по адресу case@snmp.com.