УДК 004.457, 004.75, 004.772
РАЗРАБОТКА АППАРАТНО-ПРОГРАММНОГО КОМПЛЕКСА «UNIMARKER» ДЛЯ
УПРАВЛЕНИЯ ИНФОРМАЦИОННЫМ ОБСЛУЖИВАНИЕМ В
АВТОМАТИЗИРОВАННЫХ ИНФОРМАЦИОННЫХ СИСТЕМАХ
DEVELOPMENT OF A HARDWARE-SOFTWARE COMPLEX «UNIMARKER» FOR
MANAGEMENT OF INFORMATION SERVICE IN THE AUTOMATED INFORMATION
SYSTEMS
Бархатов Николай Игоревич, Ст. преподаватель кафедры информатики ФГБОУ ВПО Северо-Восточный государственный университет, г. Магадан В статье описаны ход и результаты исследования, направленного на разработку и реализацию АПК «UniMarker». АПК предназначен для расширения возможностей существующих технологий управления информационным обслуживанием в локальных вычислительных сетях посредством реализации программной маркировки сетевых пакетов на основе заданных управляющих приоритетов и поддержки динамической смены конфигураций Ключевые слова: управление, информационное обслуживание, маркер, сетевой пакет In the article describes course and results of the research directed on development and realization of hardware-software complex «UniMarker». The complex is intended for extension of opportunities of existing information service management technologies in local networks by means of realization of network packages programmable marking, using set of management priorities, and support of dynamic configurations changing Keywords: management, information service, marker, network packet Работа выполнена в рамках дипломного проектирования по теме «Аппаратнопрограммный комплекс «UniMarker» для управления информационным обслуживанием», выполненного под руководством кандидата технических наук, доцента, декана факультета естественных наук и математики Сироткина А. В. Исследование является частью государственного задания на выполнение научно-исследовательской работы «Оптимизация информационного взаимодействия в АСУП» (регистрационный номер: 710442011).В настоящее время одной из актуальных задач при решении вопросов автоматизации информационных систем, в том числе систем управления технологическими процессами является задача повышения качества информационного обслуживания [1 – 5]. Это связано с тем, что современные архитектуры хранения данных предопределяют возможность отказов при множественном доступе к общим разделённым ресурсам. Отказы ведут к возникновению задержек в обслуживании, имеющих к тому же непредсказуемый характер, что является негативным фактором, снижающим эффективность информационной системы в целом. В связи с этим необходима разработка технических и программных средств, позволяющих устранить или снизить влияние этого фактора на уровень информационного сервиса в системе.
Одним из предлагаемых решений является организация очередей обслуживания, в том числе – с применением технологий QoS и протокола MPLS, а также совмещение различных технологий для повышения скорости информационного обмена. Существуют также технологии и устройства, позволяющие классифицировать трафик с целью его упорядочивания на основе приоритетных управляющих планов (например, устройства и программное обеспечение, разрабатываемое корпорацией Cisco).
Но, при всём многообразии существующих механизмов в настоящее время не описано их применение для управления обслуживанием в локальных сетях корпоративных информационных систем. Такие технологии, как QoS, не поддерживают доступ пользователя непосредственно к формированию очередей обслуживания и используют строго фиксированные классы трафика, которые далеко не всегда отвечают требованиям конкретной информационной системы. Эти факторы создают ограничения в применении данных механизмов качества обслуживания для управления локальными информационными потоками.
Ещё одним ограничением является сложность организации на их основе динамической смены управляющих приоритетов. Приоритетные планы в существующих технологиях качества сервиса задаются посредством конфигурирования сетевых устройств, которое требует временной приостановки обслуживания. В случае информационных систем, требующих поддержки непрерывной коммуникации между узлами, это ведёт к серьёзным потерям данных.
С целью устранения этих ограничений разрабатывается аппаратно-программный комплекс «UniMarker». Его основными функциями являются:
— Возможность ручного назначения сетевым пакетам маркеров, используемых сетевым оборудованием для формирования очередей обслуживания.
— Возможность изменения управляющих приоритетов без остановки передачи данных в сети, динамически.
Проект АПК «UniMarker». Основу проекта аппаратно-программного комплекса «UniMarker» составляет комплекс моделей, описывающий его архитектуру, классы, функции и процессы. В комплекс входит модель архитектуры АПК, функциональная модель, математическая модель процесса маркировки и две функциональные модели программной части АПК, описывающие два возможных варианта её реализации.
Основу архитектуры АПК составляет утверждение о том, что любое сетевое взаимодействие обеспечивается посредством коммуникации нескольких вычислительных систем, объединённых между собой каналами передачи данных и, как правило, некоторым набором сетевых устройств. Разрабатываемый алгоритм («программа-маркировщик») и, соответственно, исполняющий его компьютер должны стать («маркировщик») промежуточным звеном между, как минимум, двумя вычислительными системами – источником и приёмником данных. Следовательно, наиболее подходящей целевой архитектурой сети является клиент-серверная с единым выделенным сервером данных и несколькими подключёнными клиентами.
Маркировка требует наличия в сети реализатора некоторой технологии качества обслуживания, которая обеспечит формирование очередей согласно используемым маркерам. Поэтому целесообразным представляется также использование в качестве целевой технологии Cisco QoS или MPLS, поскольку они предлагают широкие возможности для построения любых требуемых очередей обслуживания. Совмещение данных технологий с новым программным алгоритмом предполагает использование маркеров ToS и MPLS в качестве критерия для назначения сетевым пакетам конкретных приоритетов в обслуживании и для последующей их классификации в инфраструктуре.
Дополнительным звеном АПК должна быть «программа-конфигуратор», через которую будет выполняться смена управляющих приоритетов программы-маркировщика.
Вероятнее всего, она будет находиться на удалённом компьютере.
Таким образом, структура аппаратно-программного комплекса «UniMarker» имеет следующий вид (рис. 1):
Программный модуль, находящийся на компьютере-маркировщике, маркирует сетевые пакеты, исходящие с общего сервера данных. Используемая при этом конфигурация определяет приоритеты обслуживания для каждого клиента. Далее пакеты с помощью маршрутизатора, поддерживающего QoS или MPLS, выстраиваются в очередь согласно своим маркерам. Пакеты, имеющие более высокие приоритеты, обслуживаются быстрее и чаще. В результате конечные клиенты, приоритеты которых согласно конфигурации выше, обслуживаются с большей скоростью. Важно при этом, что конфигурация может изменяться в реальном времени, без перенастройки сетевого оборудования и только из одной точки сети.
Более подробно набор функций АПК «UniMarker» и последовательность их выполнения могут быть представлены следующим образом:
1. Захват или получение доступа к сетевым пакетам. В зависимости от того, в какой форме реализована программная часть комплекса, сетевые пакеты могут быть перехвачены с одного из сетевых интерфейсов исполняющей вычислительной системы либо получены напрямую от операционной системы. В обоих случаях в дальнейшей обработке используются байтовые последовательности (массивы).
2. Получение конфигураций в режиме реального времени. Для дальнейшей работы программа должна получить набор параметров, согласно которым должен выполняться анализ сетевых пакетов и их маркировка.
3. Анализ сетевых пакетов заключается в определении соответствия поступающих пакетов критериям маркировки, полученным с конфигурацией. Также в процессе анализа формируются маркеры, которые внедряются программой в конкретные сетевые пакеты. Тип маркера и его значение определяются конфигурацией для каждого пакета индивидуально.
4. Маркировка выполняется в случае, если в результате анализа установлено, что пакет согласно конфигурации относится к одному из установленных классов обслуживания и нуждается в назначении метки.
5. Отправка или передача маркированных пакетов. Сетевой пакет может быть отправлен специальным образом на сетевой интерфейс либо возвращён операционной системе, что также зависит от формы реализации программной части АПК. Пакет может остаться немаркированным, если это не предусмотрено конфигурацией.
функциональная архитектура комплекса является общей для всех случаев.
С точки зрения программирования существуют два возможных пути для создания программных модулей:
1. Разработка АПК «UniMarker» на базе внешних программных библиотек, получающего доступ к сетевому трафику с помощью дополнительных программных средств. В данной форме программная часть должна выполнять (замещать) функции шлюза между двумя вычислительными системами или сетевыми устройствами, реализуя выборочную маркировку сетевого трафика, направленного отдельным клиентам. При этом программа должна одновременно поддерживать работу с тремя сетевыми интерфейсами компьютера-маркировщика (рис. 2), один из которых соединён с сервером, а другой – с клиентами; третий интерфейс используется для конфигурирования программы.
Рис. 2. Модель архитектуры программной части, выполненной с использованием внешних программных Программный комплекс состоит из следующих модулей:
— Marker (маркировщик) отвечает за передачу сетевых пакетов в направлении от сервера (посредством захвата поступающего на него трафика) клиентам (посредством передачи захваченного трафика со скорректированными MAC-адресами пакетов). Функцией модуля является выборочная маркировка проходящих через модуль пакетов.
— Reverse (ответчик) отвечает за взаимодействие двух интерфейсов в обратном направлении. Дополнительной функциональности модуль не имеет.
— Конфигуратор отвечает за чтение файлов конфигурации и передачу их содержимого модулям Marker и Reverse.
— Модулям Marker и Reverse, функционирующим одновременно, должна быть сопоставлена одна конфигурация, чтобы обеспечить их корректную настройку, требующую, как минимум, совпадения имён интерфейсов и IP-адреса сервера.
2. Разработка АПК «UniMarker» на базе функций ядра операционной системы, получающего доступ к данным пакетов через её механизмы (рис. 3). Реализация маркировки сетевых пакетов «изнутри» операционной системы обладает рядом преимуществ:
— меньшее число «инстанций» – программных функций, через которые проходит пакет от источника (программы или входного интерфейса) к точке назначения (выходному интерфейсу или программе);
— отсутствие необходимости в ручном захвате и направлении сетевых пакетов;
— отсутствие необходимости в выполнении всех функций шлюза операционной системы.
Рис. 3. Модель архитектуры программной части, выполненной с использованием программных библиотек В программную часть АПК входит ряд компонентов:
— Функция-маркировщик отвечает за перехват сетевого трафика операционной системы в направлении от сервера к клиентам. Дополнительной функцией является выборочная маркировка проходящих через обработку пакетов.
— Модуль-конфигуратор отвечает за чтение файла конфигурации и передачу его содержимого функции-маркировщику.
Следует отметить, что в обеих реализациях в конфигурациях программных модулей содержатся аналогичные векторы управляющих приоритетов, которые могут быть представлены в виде системы хеш-функций:
Здесь и – хеш-функции, представляющие приоритетные планы, задающие:
– сюръекцию множества классов клиентов, элементом которого является класс a, во множество рангов, элементом которого являются ранг RL3 (ранг клиента);
– сюръекцию множества классов сетевого трафика, элементом которого является класс b, во множество рангов, элементом которого является ранг RL4 (ранг класса трафика).
Из двух рангов однозначным образом формируется значение маркера:
Таким образом, «UniMarker» объединяет и реализует два вида приоритетных планов – основанные на типе клиента и на классе информационного трафика.
Реализация и тестирование АПК «UniMarker». В качестве операционной системы для компьютера-маркировщика выбрана Unix FreeBSD 9.0. В качестве среды разработки программирования Berkeley C выбран для разработки программы благодаря тому, что он поддерживается ОС Unix FreeBSD «по умолчанию» и является самым быстрым по скорости работы исполняемых модулей и скорости компиляции языком среднего уровня.
Программная часть комплекса в обеих реализациях в итоге представлена набором исполняемых файлов и файлов конфигураций.
Для тестирования программной части АПК выполнены простейшие операции по формированию информационного потока, направленного от сервера к клиенту через маркировщик. В результате на клиенте путём захвата сетевого трафика получены сетевые пакеты, содержащие маркеры, установленные в использованной конфигурации. Сетевые пакеты могут получать метки ToS и MPLS.
Однако в процессе дальнейших испытаний выяснилось, что на инициализацию и работу функций библиотек захвата сетевого трафика, а также на прохождение сетевых пакетов через все алгоритмы-«посредники» требуется достаточно значительное время.
Создаваемая при этом задержка приводит к колоссальной 85-процентной потере сетевых пакетов при прохождении через модули Marker и Reverse. В связи с этим разработка АПК «UniMarker» на базе внешних программных модулей была прекращена.
Работа АПК «UniMarker», реализованного на базе функций ядра операционной системы не сопровождается потерями пакетов даже при действующем механизме маркировки. Кроме того, в экспериментальных условиях была достигнута целевая управляемость формированием очередей обслуживания. С использованием устройства Cisco 2600 в качестве маршрутизатора с заданием ограниченной пропускной способности установлено, что присвоение сетевым пакетам «привилегированных» маркеров значительно ускоряет их обработку и перемещение по сети (рис. 4) независимо от типа протокола L4 OSI и выше, поскольку маркировка выполняется на уровне L3 OSI (IP ToS) или между уровнями L3 и L2 (MPLS).
Рис. 4. Скорости обслуживания клиентов при работе с FTP-сервером Измерения выполнены в 4 этапа:
– этап I – клиенты не имеют привилегий в обслуживании;
– этап II – клиенту №1 назначается маркер, дающий ему привилегии в обслуживании;
– этап III – клиентам №1 и №2 назначается маркер;
– этап IV – сетевые пакеты всех клиентов получают маркер.
Включение в процесс передачи маркировки создаёт, в среднем, 12-процентную задержку в обслуживании всех клиентов. Данная задержка не является значительной, поскольку независимо от её наличия ресурсы сети используются полностью (поддерживается скорость 100 Мбит/с), а потерь пакетов не происходит.
Таким образом, разработанный аппаратно-программный комплекс «UniMarker»
действительно предоставляет необходимые возможности для управления информационным обслуживанием в автоматизированных информационных системах, позволяя учитывать конкретные требования к классам сервиса. Поддержка динамической смены управляющих приоритетов также является серьёзным практическим преимуществом разработанной системы.
АПК «UniMarker» успешно апробирован на презентационной площадке, посвящённой защите молодёжных инновационных проектов, в рамках Инновационного молодёжного форума «Наука и молодёжь как факторы становления инновационной экономики», а также на конкурсе научно-исследовательских проектов студентов, аспирантов и молодых учёных «Инновация», организованном Администрацией Магаданской области, где стал победителем в номинации «Лучший инновационный продукт».
На АПК «UniMarker» получен охранный документ – свидетельство о государственной регистрации программы для ЭВМ [6]. Практические результаты дипломной работы использованы в выполнении этапа фундаментальной НИР информационного взаимодействия в АСУП», выполняемой по государственному заказу Минобрнауки России за счёт средств госбюджета (номер государственной регистрации:
01201065822). Проект АПК «UniMarker» включён в промежуточный отчёт «Теоретическое обоснование оптимизации информационных процессов в АСУ», зарегистрированный в государственном информационном фонде неопубликованных документов ФГАНУ «Центр информационных технологий и систем органов исполнительной власти» (№02201353320 от 21.02.2013).
Результаты исследования опубликованы также в Северо-Восточном научном журнале №1 (12) в 2013 году [7].
1. Вишневский В. М. Теоретические основы проектирования компьютерных сетей:
монография / В.М. Вишневский. – М.: Техносфера, 2003. – 506 с. – Библиогр.: с. 479 – 506. – 260 р.
2. Сироткин А. В. Исследование информационных потоков в инфраструктуре автоматизированных информационных систем. – Ростов-на-Дону: Изд-во СКНЦ ВШ АПСН, 2006. – 155 с.
3. Сироткин А. В. Повышение эффективности АСУ на основе оптимизации информационных процессов // Ноосфера, Магадан, 2012. – 144 с.
4. Цициашвили Г. Ш. Алгебраические методы моделирования стохастических сетей:
монография / Г. Ш. Цициашвили, М. А. Осипова. – Владивосток: Дальнаука, 2007. – 131 с. – Библиогр.: с. 127 – 131 (59 назв.). – 300 экз. – ISBN 978-5-8044-0857-3: Б. ц. В надзаг.: Рос.
АН, Дальневост. отделение, Ин-т приклад. Математики 5. Сироткин А. В., Старикова О. А. Приоритетная модель оптимизации дискретного информационного взаимодействия по критерию задержки обслуживания. // Экономика и управление. 2009, № 10. – С. 105 – 108.
6. Сироткин А. В., Бархатов Н. И. Свидетельство о государственной регистрации программы для ЭВМ №2013613559 «Программный комплекс «UniMarker» для маркировки информационных объектов» от 10.04.2013.
7. Бархатов Н. И. О разработке аппаратно-программного комплекса «UniMarker» для управления информационным обслуживанием // Северо-Восточный научный журнал, 2013. – №1 (12). – С. 18 – 25.