УДК 531.49:531.62
ПРОБЛЕМАТИКА УПРАВЛЕНИЯ ИНФОРМАЦИОННЫМ ОБСЛУЖИВАНИЕМ НАСЕЛЕНИЯ В УСЛОВИЯХ ГЕТЕРОГЕННОСТИ ИНФОРМАЦИОННЫХ ПОТОКОВ Э.О. Ломов, В.Л. Бурковский
В статье анализируется проблематика построения сети информационного обслуживания населения в гетеронных информационных средах, определяется минимальный набор функций, которыми должна обладать система, а также рассматривается задача распределения нагрузок в условиях гетерогенности информационных потоков и предлагается подход к ее решению
Ключевые слова: сервис, интернет, ШеЪ, маршрутизация, распределение нагрузок
Современные информационные системы различного уровня, отличаются гетерогенностью информационных потоков, что особенно актуализирует проблему оперативной обработки информации. В условиях принципиальной распределенности реализуемых при этом информационных сервисов в таких системах используется в основном механизм взаимодействия данных посредством Internet-технологий и не всегда надежного канала связи. Следует отметить, что в системах информационного обслуживания населения особую важность приобретает вопрос оперативного получения и оперативной аналитической обработки данных. Так как сервера функциональных информационных сервисов имеют разную структуру и модификацию, а также территориально удалены от непосредственного источника обработки данных, то решение этой задачи построено на основе системы управления транзакциями, включающей в себя как технологии Flash, Red5 Media Server и RTMP.
Отказоустойчивый интернет-сервис, который может предоставлять свои услуги быстро и без сбоев, не только помогает привлечь новых клиентов, он становиться важнейшей предпосылкой успешной деятельности предприятий, а так же повышает их конкурентоспособность. Критерии определяющие возможность увеличения конкурентоспособности системы информационного обслуживания населения включают:
- спектр предоставляемых услуг;
- максимально низкие финансовые затраты для конечного пользователя;
- качество обслуживания (отказоустойчивость и быстродействие).
В настоящее время все решения для систем информационного обмена, проектируются и разрабатываются на принципах объединения и слияния подходящих технологии. Система информационного обслуживания населения, которая отвечала бы всем требованиям по функциональности, набору сервисов и услуг должна
Ломов Эдуард Олегович - ВГТУ, аспирант, e-mail: [email protected]
Бурковский Виктор Леонидович - ВГТУ, д-р техн. наук, профессор, e-mail: [email protected]
быть максимально эффективна по финансовым и трудовым вложениям, обладать максимальной степенью масштабируемости, гибкости,
устойчивости и жизнеспособности. В рамках проблематики управления информационным обслуживанием населения в условиях гетерогенности информационных потоков, можно выделить несколько подзадач на решение которых она ориентирована: возможность организации
автоматической городской, междугородной и международной связи, возможность поддержки видео-вызовов и отправки сообщений как внутри сети так и на внешние устройства (мобильные телефоны). Со временем может потребоваться дополнительная функциональность, например возможность организации операторского центра или создание территориально распределенной сети. Следовательно, планируемая система связи должна иметь возможность развиваться в соответствии с возрастающими требованиями без необходимости радикального изменения архитектуры.
Информационная система будет интерестна двум основным группам потребителей информационных услуг. К первой группе относятся корпоративные абоненты и частные лица, часто пользующиеся услугами междугородней и международной связи. Это обусловлено большой разницей в стоимости трафика при использовании традиционных телефонных сетей и при использовании интеренет сетей. Ко второй группе потребителей относятся организациии у которых существует необходимость объеденить свои филиалы в единую корпоративную информационную сеть. При этом, для информационного обмена используется один общий транспорт - Интернет.
Наибольшая экономия от внедрения системы унифицированных коммуникаций достигается за счет использования конвергентных сетей передачи данных. Расходы пользователей, на междугородную и мобильную связь могут в ряде случаев быть уменьшены на 70-80%, за счет перехода с традиционных систем связи.
Поддержка одной унифицированной сети дешевле поддержки нескольких разрозненных сетей.
В самом общем виде предполагается наличие трех основных участников (рис. 1): поставщик
услуги - сервис, потребитель сервиса (клиент) и реестр сервисов. Сервисом называется независимый программный компонент, выполняющий определенную задачу, такую как например -отправить сообщение на мобильный телефон-, не требующей для использования клиентами какой-то определенной программной технологии. В данном случае взаимодействие с системой
информационного обслуживания населения выглядит достаточно просто: поставщик сервиса регистрирует свои сервисы в реестре, а клиент обращается к реестру с запросами. Для использования сервиса необходимо следовать соглашению об интерфейсе - интерфейс должен быть кроссплатформенным. Поскольку интерфейс должен не зависеть от платформы, то и технология, используемая для определения сообщений, также должна не зависеть от платформы. Реализация открытых стандартов является здесь важной характерной особенностью. Это значительно уменьшает время подключения нового сервиса к существующей системе, при этом отпадает необходимость переписывать или просто отказываться от проверенных годами и действующих решений. Выбор распределенной технологии играет существенную роль. Использование, например, SNA или DCOM в качестве средства обмена между сервисами накладывает такое ограничение, при котором все компоненты в системе обязаны использовать SNA или DCOM, что ограничивает применяемость. В нашем случае сервис, реализованный, например на языке Java и работающий в EE контейнере должен быть применим для использования клиентами, в разных средах (Windows, Linux и т.д.).
Все сервисы должны удовлетворять ряду условий или требований:
- сервис должен иметь определенное прикладное значение, например “Сервис голосовых соединений”;
- все сервисы должны быть автономными и независимыми. Данное требование возникло в связи с потребностью комбинации одних сервисов с другими в зависимости от потребностей. Благодаря этой особенности также значительно облегчается внесение изменений в функциональность сервисов, поскольку это совершенно не затрагивает другие сервисы;
- сервис должен быть функционально полным с прикладной точки зрения. Он должен обеспечивать выполнение всех основных бизнес операций, связанных с прикладной областью или бизнесс процессом, который он обеспечивает;
- все сервисы системы должны уметь предоставлять свои описания в некоторм стандартизированном формате;
- сервисы должны быть ориентированны на распределенное асинхронное взаимодействие без хранения состояния. Это типично для большинства
современных распределенных систем, и это очень важное требование;
- предполагается, что благодаря выполнению предыдущих требований, сервисы будут способны объединяться для взаимосвязи друг с другом при помощи различных интеграционных инструментов, типа брокеров и маршрутизаторов сообщений и т.д. Ключевым моментом здесь является тот факт, что интеграционные сценарии будут основываться на конфигурировании, а не на разработке специального “интегрирующего” кода, как это делается в большинстве случаев сейчас.
Качество информационной связи через Интернет, не зависит от расстояния. Зависит оно от загруженности канала. Если сеть загружена, возможны задержки передачи пакетов, а также происходить их потери. Все это снижает качество обслуживания. Решение проблемы - использование наиболее подходящего маршрута до конечного узла.
Так как система может содержать некоторое множество однотипных сервисов с разными характеристиками (стоимость, качество связи, перегруженность и т.д.), то требуется производить маршрутизацию к более подходящему провайдеру услуг по заданным критериям.
Рис. 1. Схема взаимодействия клиента с системой
информационного обслуживания населения
Маршрутизация - процесс определения маршрута следования в сетях связи. Маршруты могут задаваться административно (статические маршруты), либо вычисляться с помощью алгоритмов маршрутизации, базируясь на
информации о топологии и состоянии сети,
полученной с помощью алгоритмов маршрутизации (динамические маршруты). Статическими
маршрутами могут быть:
- маршруты, не изменяющиеся во времени;
- маршруты, изменяющиеся по расписанию;
- маршруты, изменяющиеся по ситуации -административно в момент возникновения какой-либо ситуации.
Маршрут может быть расчитан на основе некоторых критериев, например:
J = £ с,. • к,, где
С1 - критерий (стоимость услуги, качество услуги, загрузка сервера и т.п.)
Ki - вес для критерия варианта
маршрутизации.
В системе информационного обслуживания населения важным критерием является не только спектр предоставляемых услуг таких как голосовое соединение, видеовызовы, почта и т. д., но и их качество. Главными критериями качества Web-сервисов является их отказоустойчивость и быстродействие.
Есть несколько способов повысить быстродействие интернет-сервиса: увеличить
полосу пропускания сетевого трафика, использовать сетевое оборудование с высокой
производительностью, оптимизировать аппаратные и программные ресурсы сервера для достижения максимальной производительности. Этот способ требует много средств и времени, а так же периодичности его использования ведь инновационные технологии не стоят на месте и постоянно развиваются, следовательно требуют все больше и больше ресурсов, к тому же масштабы предприятий растут, количество пользователей увеличивается.
Второй способ повышения
производительности заключается в увеличении количества Web-серверов с разными интернет адресами размещая на них «зеркальные» копии приложений. Используя этот способ распределяется общая нагрузка и сокращается время возврата информации при выполнении обработки запросов от клиентов. Плюс данного способа заключается в том что сохраняются уже существующие серверы, так как выводить их из эксплуатации не придется. Минусом данной конфигурации является то, что может возникнуть такая ситуация, когда запросы от пользователей могут лавиной обрушиться на один сервер, в то время когда остальные будут простаивать без дела.
Наиболее приемлемое на сегодняшний день решение по производительности и
отказоустойчивости является использование системы балансировки приходящих запросов. Данная подсистема реализует задачу по выравниванию нагрузки, распределяя ее по нескольким серверам. Плюсом данного подхода является сокращение времени ожидания запроса до минимума. Данный подход будет полностью прозрачен для клиентской машины, она даже не будет подозревать что обращается к целой группе серверов.
Load Balance System (система балансировки) выполняет контроль за нагрузкой и состоянием серверов. При запросе клиента система выбирает сервер, который будет отвечать за запрос клиента. Алгоритм работы системы балансировки может выглядеть следующим образом:
Server = max(Wi)
W=K * (RM - R C), где
l l ' l M l C
Wi - вес i-го сервера;
Kj - коэффициент производительности сервера;
RM - максимальная загрузка сервера;
RC - текущая загрузка сервера.
Из приведенного алгоритма видно что система балансировки будет выбирать сервер с максимальным весом, но в тоже самое время чем больше сервер загружен запросами, тем меньше его вес. Соответсвенно нагрузка на всю систему будет распределена равномерно. Загрузку сервера можно расчитывать по следующей формуле:
R = KC ' LC + KM ' LM + KT ' LT + KR ' Lr , где
LC - загрузка процессора;
ЬМ- количество использованной памяти;
LT - количество открытых соединений;
LR- количество обрабатываемых запросов;
KC, KM, KT, KR - соответствующие веса для каждого из критериев.
Serviced Service02 ServiceÛ3 ServiceN
Services Layer
AppServer AppServer AppServer
Статистика
загрузки т т т т
Q* Ц* Цг Q*
Рис. 2. Общая структура системы управления нагрузками
Кроме того, критерием выбора сервера может так же являтся расстояние между сервером и клиентом, которое выражается в количестве транзитных участков и в длительности сетевой задержки.
В случае когда мощности серверных систем одинаковы можно применить более простой агоритм - Round-robin. Round-robin — алгоритм
распределения нагрузки распределённой вычислительной системы методом перебора её элементов по круговому циклу. В дополнение решение задач используя такой алгоритм может быть разбито на кванты времени, причем для продолжения решения во времени нумерация объктов свигается по кругу на 1, то есть задача первого объекта отдается второму, второго -третьему, и т.д., а первый объект получает задачу последнего, либо освобождается для приема новой задачи.
Моделирование всех элементов и этапов обработки информации в ряде случаев не позволяет моделировать распределенную систему обработки информации (РСОИ) открытой стохастической сетью. Хотя в моделях на основе незамкнутых стохастических сетей наиболее просто находятся характеристики функционирования, а
интенсивности потоков внутри системы находятся из системы линейных уравнений. По этой причине в качестве модели, адекватно описывающей функционирование систем, будем рассматривать замкнутые стохатические сети.
Традиционные алгоритмы расчета
характеристик сетей массового обслуживания базируются на нахождении различных средних характеристик сети как функции нормализующей константы. Однако расчет нормализующей константы в силу комбинаторно возрастающего пространства состояний сети требует значительных вычислительных усилий.
Состояние замкнутой сети массового обслуживания в стационарном режиме характеризуется количеством циркулирующих в ней транзакций N. Если интенсивность обслуживания в узле обработки транзакций (УОТ) не зависит от загрузки и все УОТ обрабатывают транзакции в соответствии с дисциплиной обслуживания БСР8, то вычисление средних значений времени ожидания транзакций в і-ом УОТ Т^) и длины очереди Ь^) можно свести к рекуррентному алгоритму.
Т (N) = Т (N -1) • (1 + Ь, (N -1))
v ' м
£ е Т, (N)
І=1
Ьі =Я*( N )е,Т, (N) Ьі =Я*( N )е,Т, (N)
Р. (и, N) = Ті (N -1) • Рі (п -1, N -1), п > 1,
Рі (0,0) = 0
Учитывая начальные условия Ьі=0 (і=1,...М), можно рекуррентно по N рассчитывать средние характеристики сети массового обслуживания.
Для замкнутой сети массового обслуживания, в которой циркулирует несколько классов
транзакций и интенсивность обслуживания в УОТ зависит от нагрузки, вводят следующее допущение. Разбивают множество существующих классов транзакций на укрупненные классы, такие, что если класс г принадлежит укрупненному классу а, то транзакция этого класса может за конечное число шагов перейти в любой другой класс 8, который также принадлежит укрупненному классу а . Такое разбиение на классы гарантирует, что в замкнутой сети массового обслуживания количество транзакций укрупненного класса останется постоянным. При подобных допущениях сеть можно также рассчитать по аналогичным формулам. Введем обозначение N. (^,N2 ... N0 - вектор, характеризующий количество в сети массового обслуживания транзакций классов с 1 по г; пг = (п1, п2 ... пг) - вектор, характеризующий состояние УОТ (количество в УОТ транзакций классов с 1 по г-й) без учета этапа обслуживания транзакций 1г -вектор, г - координата которого равна 1, а остальные
0. Тогда вероятность, что в состоянии сети N состояние 1 УОТ будет пг, равна
Р П, ^) = £ 4 (Мй)р (пк - 1К, Ык - 1К)/ И, (пг)
п=1
Среднее время ожидания транзакции г-класса в 1-м УОТ, зависящим от нагрузки, равно
Т, () = ^ТпР1 (п -1,- 1Л)/л,(п).
п=1
Для расчета сети массового обслуживания по
я
этому алгоритму требуется выполнить п Мг,
г=1
количество шагов, причем каждый требует 2ИМ-Я операции сложения-вычитания и 2ИМ+Я операций умножения-деления. Вычислительная сложность алгоритма значительно возрастает с увеличением обобщенных классов, хотя при рассмотрении систем распределенной обработки информации количество обобщенных классов не будет превышать одного десятка, т. к. каждому обобщенному классу будет соответствовать одно приложение в распределенной информационной системе.
Из выше приведенных формул видно, что вычисление всех основных параметров сети массового обслуживания можно свести к вычислению нормализующих констант для различных состояний сети массового обслуживания. Для замкнутых сетей массового обслуживания нормализующая константа представляет собой сумму произведений. Количество слагаемых в этой сумме соответствует мощности пространства состояний сети и даже для однородных сетей массового обслуживания составляет | N +М -1
[ М -1
Вследствие комбинаторного возрастания пространства состояний сети при увеличении количества центров и классов транзакций мощность состояний сети резко возрастает, так что прямой
расчет нормализующей константы становиться практически невозможным даже для сетей небольшой размерности. Основой большинства методов, рассчитывающих показатели
функционирования сети на основе значений нормализующих констант является, рекуррентный метод Бузена, известный так же, как алгоритм свертки.
Алгоритм основан на рекурсивной процедуре вычисления нормализующих констант сетей массового обслуживания, полученных из исходной уменьшением числа УОТ и общего количества транзакций в них. Суть метода заключается в последовательном заполнении двумерного массива данных (ЫхМ) значениями нормализующих констант для подсети массового обслуживания с параметрами п х т, где п - число транзакций, а т -число УОТ. Общее количество операций, необходимое для заполнения массива по алгоритму свертки Бузена, составляет
(М - 1)П[( N +1)( Мг + 2) / 2].
г=1
Это количество вычислений несоизмеримо меньше, чем необходимое для прямого расчета нормализующей константы. Другим преимуществом алгоритма свертки является возможность использования промежуточных данных,
рассчитанных при заполнении массива для вычисления характеристик сети МО.
Для расчета неоднородных сетей массового обслуживания, в которых транзакция может менять
свой класс при переходе из одного УОТ в другой, используется прием, аналогичный приведенному в методе анализа средних значений. Для расчета неоднородных сетей массового обслуживания используются укрупненные классы транзакций. Расчет нормализующих констант для такой сети массового обслуживания сводится к заполнению массива данных размерностью ^хМхЯ), где Я -количество обобщенных классов транзакций.
Достоинством рассмотренной модели является простота вычисления характеристик функционирования, основным недостатком -невозможность учета изменения маршрута заявок, связанного с изменением состояния сети.
Литература
1. Бурковский В. Л., Соколов А. Е., Моделирование и анализ распределенных систем обработки информации. Воронеж: Воронежский государственный технический университет - 2002 г. 148 с.
2. Цимбал А. А., Аншина М. Технологии создания распределенных систем. Для профессионалов. Издательский дом "Питер" - 2003 - с. 576
3. В.И. Грекул, Г.Н. Денищенко, Н.Л. Коровкина Проектирование информационных систем. Издательство: Интернет-университет информационных технологий -ИНТУИТ.ру - 2008 - с. 304.
4. Чаадаев, Шеметова, Шибаева Информационные системы компаний связи. Создание и внедрение. Издательство: Эко-Трендз - 2004 - с. 256.
Воронежский государственный технический университет
PROBLEMATICS OF HANDLING OF INFORMATION SERVICE OF THE POPULATION IN THE CONDITIONS OF HETEROGENEITY OF INFORMATION STREAMS E.O. Lomov, V.L. Burkovsky
The article examines the problems of network information services to the population in heteronym information environments, defines the minimum set of functions, which should have a system, and examines the problems of load distribution in a heterogeneous information flows, and proposes a solution to this problem
Key words: service, Internet, Web, routing, load distribution