К. Ю. Бабенко, А. Ю. Панченко
18
10
УДК 681.3
Институт кибернетики имени В.М. Глушкова НАН Украины
Моделирование входящего потока информации о состоянии оборудования в глобальных сетях ЭВМ
К.Ю. Бабенко
А.Ю. Панченко
Современные глобальные компьютерные сети благодаря большому числу пользователей, высоким объемам и высоким скоростям передачи информации накладывают качественно новые требования на процесс мониторинга состояния сетеобразующего оборудования, локализацию неисправностей и время их устранения. Для автоматизации наблюдения за состоянием оборудования в глобальной сети используются Системы Мониторинга Состояния Оборудования (СМСО). Поскольку перед СМСО стоят сложные задачи по регистрации информации о текущем состоянии сети, а также задачи ее хранения и анализа, современные СМСО должны иметь разветвленную многомодульную структуру. Для определения оптимальной архитектуры СМСО, а также структурного ее разбиения на подсистемы необходимо создание программной модели, которая бы имитировала работу такой системы для различных конфигураций.
Задача моделирования СМСО сводится к трем основным подзадачам: моделированию глобальной территориально-распределенной сети ЭВМ -- объекта мониторинга (Wide Area Network -- WAN) [1]; моделированию непосредственно СМСО, а также моделированию взаимодействия между СМСО и объектом мониторинга.
Для мониторинга современного сетеобразующего оборудования применяются два основных подхода: периодического опроса состояния и метода анализа входящего потока информации о состоянии сети [2]. Первый метод высокоэффективен в небольших сетях, когда количество сетеобразующего оборудования невелико. В случае же средних и крупных сетей метод периодического опроса формирует большой поток входных и выходных данных, причем достаточно постоянный, что отрицательно влияет на производительность сети в целом. Кроме этого, данный метод не может показывать текущее состояние сети с достаточной оперативностью, так как для этого потребовалось бы слишком большое быстродействие системы и пропускная способность объекта мониторинга.
Метод анализа входящего потока информации о состоянии сети значительно более эффективен при мониторинге больших и средних сетей ЭВМ. Сущность этого метода достаточно проста: если определенный логический или физический компонент сетеобразующего оборудования вышел из строя или не функционирует в нормальном режиме, сетевой элемент, в состав которого входит этот компонент, формирует автономное сообщение, в котором идентифицируется неработающий элемент, а также вероятная причина отказа. Термин «сетевой элемент» в данном случае включает в себя все типы современного сетеобразующего оборудования для WAN, такие, как концентраторы (ATM/FR), сетевые мосты, шлюзы, сетевые мультиплексоры, маршрутизаторы и т.д. Автономные сообщения от всех сетевых элементов WAN доставляются в СМСО, которая производит их анализ, группировку и оповещает оператора сети о произошедших сбоях.
В данной работе рассматривается СМСО, взаимодействующая с сетью с по-мощью метода анализа входящего потока информации о состоянии сети [3]. Зада-ча моделирования на данном этапе существенно сужается: основная задача, пре-дъявляемая к имитационной модели глобальной сети ЭВМ в этом случае -- опре-деление количественных и качественных характеристик потока информации о те-кущем состоянии сети, а также его зависимости от текущего состояния сети. На основании этих полученных данных поток может быть искусственно создан и подан на вход модели СМСО. Задачи моделирования СМСО и WAN, таким образом, являясь достаточно смежными, при непосредственном моделировании достаточно независимы.
С точки зрения моделирования входящего потока информации о состоянии сети, глобальная сеть ЭВМ представляет собой систему с дискретными события-ми и непрерывным временем [4]. Входными параметрами для имитационной мо-дели будут являться количественные показатели моделируемой глобальной сети: количество элементов сетеобразующего оборудования, а также количество связей между смежными сетевыми элементами. Моделирование проводится на основа-нии типовых сценариев неисправностей, которые возникают в реальных сетях ЭВМ: случайных отказов на уровне портов и протоколообразующих карт в се-тевых элементах, обрыва магистрального кабеля, отключения питания на техноло-гической площадке, приводящего к одновременному отключению нескольких се-тевых элементов и т.д., а также их различных комбинаций. Результатом модели-рования должен являться поток сообщений о неисправностях, записанный в файл в унифицированном виде.
Задача моделирования глобальной сети ЭВМ не является новой, и в данный момент сформировано несколько концептуальных направлений по ее решению. Основными направлениями являются следующие: имитационное моделирование передачи пакетов сетеобразующих протоколов и имитационное моделирование обслуживания очередей запросов к серверам [5]. Первое позволяет решать задачи планирования и распределения нагрузок в сетях передачи данных (чаще всего локальных); второе необходимо при проектировании комплексных систем массового обслуживания с использованием многоуровневых сетевых архитектур, например, клиент-сервер [5]. Требования, предъявляемые к имитационной модели входящего потока информации о состоянии оборудования в WAN, хотя и относятся к моделированию глобальных сетей ЭВМ, но практически не пересекаются с существующими на сегодняшний день направлениями. Данные задачи настолько автономны и уникальны, что не могут быть решены в рамках существующих имитационных моделей глобальных сетей ЭВМ.
Имитационная модель входящего потока информации о текущем состоянии оборудования в глобальных сетях ЭВМ
С точки зрения моделирования входящего потока информации о текущем состоянии оборудования в глобальных сетях ЭВМ территориально-распределенная глобальная сеть ЭВМ представляет собой избыточный граф [6], в котором узлами являются сетеобразующее оборудование и его внутренние компоненты (физические и логические), ребрами являются связи между компонентами. При этом ребра подразделяются на два типа: большого веса, т.е. соединения между компонентами различных сетевых элементов, и малого веса -- структурные соединения внутри сетевого элемента (см. рисунок). Хотелось бы отметить, что современные компьютерные сети кроме физических соединений имеют также логические, которые формируются с помощью протоколов сетевого уровня (Network Layer) и транспортного уровня (Transport Layer) сетевой модели OSI. Примером могут служить PVC для ATM/FR сетей, GRE туннель для IP сетей, LSP туннели для MPLS сетей.
Для большей наглядности можно привести соответствия между элементами модели и их физическими или логическими аналогами.
Узлы -- сетевые элементы непосредственно, шасси, протоколообразующие карты, физические порты, логические порты, логические туннели (DLCI для Frame Relay сетей, PVC для АТМ сетей и т.д.) и сервисы.
Схематическая диаграмма графа глобальной территориально-распределенной сети ЭВМ
Ребра малого веса -- структурные соединения и принадлежности внутри сетевого элемента, например, физический порт, находящийся на протоколообразующей карте. Отношение принадлежности в модели будет отражено ребром малого веса.
Ребра большого веса -- соединения между удаленными сетевыми элементами: кабели, внутрикабельные соединения, виртуальные потоки, логические межсетевые туннели.
Принцип моделирования WAN на основании такого графа легче всего проиллюстрировать с помощью следующего сценария.
1. Выходит из строя один из физических портов сетевого элемента «А», генерируя сообщение об ошибке.
2. Связанный с ним логический порт также генерирует сообщение об ошибке через время, равное весу ребра соединения с вышедшим из строя физическим портом.
3. Соответственно генерирует сообщение об ошибке и логический туннель, и т.д. до сервиса.
4. Через промежуток времени, равный весу соединительного ребра, генерирует сообщение об ошибке физический порт, расположенный на смежном сетевом элементе («B») и связанный ребром тяжелого веса с первым вышедшим из строя физическим портом.
5. Повторяются первые три пункта для сетевого элемента «В».
Моделирование производится в условиях непрерывного времени. Имитацио-нная модель искусственно выводит из строя различные узлы графа (соответству-ющие объектам мониторинга в реальной сети), в результате чего модель генери-рует сообщения о неисправностях на основании приведенного выше алгоритма. Последовательность искусственного вывода из строя узлов графа задается с по-мощью конфигурационных параметров модели и определяется на основании реальных сценариев неисправностей в глобальных сетях ЭВМ: обрыва магистрально-го кабеля, отключения питания на технологической площадке, приводящего к отключению нескольких сетевых элементов и т.д., а также их различных комбинаций.
Для моделирования конкретной глобальной сети ЭВМ наиболее эффективным, безусловно, стал бы метод, позволяющий более точно перенести реальную топологию сети непосредственно в ее имитационную модель. При этом моделирование данной сети было бы высокоточным. К сожалению, процесс определения топологии реально работающей сети на практике существенно затруднен. Основная причина -- даже на основании опроса сетеобразующего оборудования в большинстве случаев невозможно определить связи между соседними сетевыми элементами (какой порт с каким связан). С другой стороны, СМСО не должна привязываться к некой конкретной сети. Вместо этого она должна эффективно работать с сетями конкретного класса, например ATM, Frame-Relay, IP, Wireless и т.д. Имитационная модель соответственно должна включать в себя основные поведенческие модели всех сетей, относящихся к данному конкретному классу. Конкретное построение графа сети в имитационной модели может быть случайным, важным будет являться только соотношение количественных показателей и поведенческих моделей с реальными сетями данного класса. распределенный сеть электронный вычислительный
Математическая модель строит данный граф случайным образом, при этом, основываясь на некие конфигурационные параметры, которые можно установить, проанализировав типичные сетевые конфигурации. В качестве закона распределения случайных величин был избран нормальный закон распределения [7], так как число объектов моделирования достаточно велико и формально мало зависит от внешних условий.
Конфигурацией моделируемой сети является совокупность параметров, задающихся XML-файлом:
параметры нормального распределения количества узлов каждого типа, связанных с соответствующим узлом более высокого типа;
параметры нормального распределения весов всех ребер графа;
параметры нормального распределения периода времени между сообщениями для всех типов узлов;
ограничения количества сообщений и количества узлов, которые могут посылать каждый из узлов определенного типа;
период моделирования.
Результатом работы модели является XML-файл, в котором содержится информация о типе и времени получения сообщения, адресе узла, сгенерировавшего сообщение, и адресе узла, передавшего сообщение, и другая статистическая информация.
Реализация модели глобальной территориально-распределенной сети ЭВМ
Прототип системы, моделирующей глобальную территориально-распределен-ную сеть ЭВМ, был сделан по принципу сосредоточенной модели [8, 9]. Сосредоточенный вариант моделирующей программы подразумевает выполнение потоков в рамках одного процесса. Параллельные действия потоков по интерпретации событий, относящихся к различным значениям моделируемого времени, исключаются.
После отладки прототипа на малых объемах моделируемых данных, переход к реальным объемам потребовал от моделирующей системы серьезного увеличения быстродействия. Современные средние и крупные глобальные сети ЭВМ могут включать в себя более 1000 сетевых элементов и генерировать поток автономных сообщений об ошибках в среднем до 50 в секунду и до 150 сообщений в моменты пиковой загрузки. Дополнительные требования к быстродействию модели накладывает тот факт, что требуется выполнить моделирование работы сети за достаточно продолжительный период времени -- иногда в течение периода времени более 24 часов. Только в этом случае результаты моделирования будут близки к реальным. Моделирование не проводится в реальном времени, поэтому скорость работы моделирующей системы является весьма критичной.
Для увеличения быстродействия модели был выбран метод распределенного моделирования [8]. Распределенная модель была автоматически сгенерирована на основе сосредоточенной модели и позволила распараллелить процесс моделирования между несколькими ЭВМ. В качестве реализации межпроцессного взаимодействия моделирующих процессов, выполняющихся на различных ЭВМ, был выбран Common Object Request Broker Architecture (CORBA). Количество параллельно используемых ЭВМ в этом случае является конфигурационным параметром и фактически не ограниченно. Практическое ускорение процесса моделирования от каждой дополнительной ЭВМ -- более 80 %.
В качестве языка программирования модели территориально-распределенной сети ЭВМ был выбран язык Java [10]. Для хранения результатов моделирования и конфигурационных данных при моделировании сети выбран расширяемый язык разметки XML [11] и использована библиотека JAXP версии 1.0.1.