Автоматизированное проектирование вычислительной сети крупной проектной организации

Женеве в 2006 г. проект, выполненный под руководством Ярушкиной Н.Г., получил золотую медаль, проект «Виртуальная шахматная школа», выполненный под руководством Шишкина В.В., на международной выставке изобретений в Женеве в

2005 г. получил серебряную медаль, а на выставке инноваций в Нюрнберге в

2006 г. - золотую медаль. Проект «Универсальная среда разработки программного обеспечения для встраиваемых систем реального времени SANDLIX» (авторы Шишкин В.В., Улыбин В.В.) на международной выставке изобретений в г. Женеве в

2007 г. получил бронзовую медаль. Некоторые материалы авторов проектов представлены в данном выпуске журнала.

Доктор технических наук, профессор, проректор по научной работе УлГТУ Н.Г. Ярушкина,

кандидат технических наук, профессор, декан факультета информационных систем и технологий УлГТУ

В.В. Шишкин

АВТОМАТИЗИРОВАННОЕ ПРОЕКТИРОВАНИЕ ВЫЧИСЛИТЕЛЬНОЙ СЕТИ КРУПНОЙ ПРОЕКТНОЙ ОРГАНИЗАЦИИ

А.А. Стецко, к.т.н.

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

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

Автоматизированное проектирование (АП) ВС предполагает в качестве обязательной компоненты подсистему моделирования сети.

Модель ВС представляет собой топологию узлов, каналов и коммуникационного оборудования. Коммуникационное оборудование включает в себя концентраторы, коммутаторы и маршрутизаторы. Концентраторы и коммутаторы задаются функционально, модели маршрутизаторов зависят от выбранного протокола и метрик каналов. Каналы обеспечивают передачу сигналов - пакетов. Топология задается графом, в развитом виде - нечетким гиперграфом (Ярушкина Н.Г., Макеев А. С., Стецко А.А., Тронин В.Г. Автоматизированное проектирование корпоративных сетей на основе нечетких гиперграфов. // Тр. Междунар. конф. «Интеллектуальные системы» AIS'07. М., 2007). Природа трафика ВС - нечеткая случайная величина (Заде Л.А. Понятие лингвистической переменной и его применение к принятию приближенных решений. М., 1976). Узлы на транспортном уровне представляют собой генераторы и потребители трафика и могут быть заданы матрицей интенсивности. На прикладном уровне узлы делятся следующим образом: серверы данных, файловые серверы, прокси-серверы, толстые и тонкие клиенты.

Взаимодействие узлов на прикладном уровне описывается на уровне производственных процессов модифицированными диаграммами потоков данных (Data Flow Diagram - DFD), которые не-

обходимо дополнить расписанием работы ВС. Особенность ВС крупной проектной организации составляет наличие процесса функционирования проектного репозитория - архива проектно-кон-структорской документации, который моделируется на прикладном уровне как взаимодействие сервера данных (Ярушкина Н.Г., Вельмисов А.П., Стецко А.А. Средства Data Mining для нечетких реляционных серверов данных. //Информационные технологии, 2007, № 6) и файл-сервера.

Для решения задач АП ВС важными являются:

• задачи оптимизации (выбор коммуникационного оборудования, пропускной способности каналов, выбор топологии сети);

• процессы принятия проектных решений (моделирование рассуждений проектировщика);

• моделирование узлов ВС на прикладном уровне (имитационное моделирование серверов и клиентов);

• задача генерации транспортной схемы ВС, достаточной для организации работы прикладного уровня.

Задача генерации транспортной схемы ВС по описаниям производственных процессов.

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

В разработанной САПР ВС для оптимизации ВС используется генетическая оптимизации для определения базовых параметров транспортной схемы ВС: состава коммуникационного оборудования и пропускной способности каналов.

Методика согласования основных параметров транспортной схемы ВС и производственных процессов. Настоящая методика разбивается на четыре этапа.

1. Описание производственных процессов проектируемой сети при помощи адаптированного языка DFD: проектировщик строит описание структуры прикладных процессов, происходящих в сети, кроме того, задается расписание работы процессов и выставляются прогнозные оценки генерируемого трафика и вычислительной загрузки.

2. Описание физической структуры сети: проектировщик создает описание физической структуры сети на уровне ее элементов - узлов, коммутаторов, шлюзов.

3. Расчет согласованной интегрированной обобщенной модели, ее оптимизация: осуществляется поиск оптимального размещения описанных сервисов по физической структуре сети. Оп-

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

4. Корректировка проектных данных: проектировщик анализирует проектное решение, полученное в процессе оптимизации, и вносит необходимые изменения в структуру прикладных процессов либо в транспортную или физическую структуру сети.

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

Хромосомой для СГА является один набор расположения блоков относительно физической структуры. Популяция таких наборов генерируется на начальном этапе работы СГА. Такая кодировка хромосомы состоит из двух частей - изменяемой, и неизменяемой. Неизменяемой частью является последовательность 1Р-адресов, а изменяемой - последовательность блоков диаграммы БРБ (рис. 1).

Целевая функция СГА является аддитивной и состоит из трет слагаемых: F = Fтрафик + FB3 + Ргр .

Первая часть целевой функции отвечает за

распределение трафика: Fmpa0UK = min maxTrj , где

' j

i - номер текущей хромосомы СГА; j - номер сетевого канала; Tr - суммарный трафик на одном канале.

Вторая часть функции отвечает за распределение вычислительной загрузки в сети:

FB3 = minmaxVzl, где i - номер текущей хромо-i j

сомы СГА; j - номер узла сети; Vz - суммарная вычислительная загрузка на узле сети.

Третья часть целевой функции отвечает за качество группировки блоков диаграммы на физической структуре сети. Вычисление F происходит

в несколько этапов. Вначале определяется общее количество групп (i), заданных проектировщиком.

№ блока диаграммы

IP-адрес соотв. узла

- Изменяемая часть

- Неизменяемая часть

Рис. 1. Структура хромосомы СГА

Затем по каждой из групп строится массив 1Р-адресов. В этом массиве вычисляется максимальное количество повторяющихся элементов (N1 ). Значение Г вычисляется следующим образом:

Г =—-, где Nобщ - общее число узлов сети.

^ общ

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

После того как модель прикладных процессов и предполагаемая модель сети составлены, необходимо построить их взаимосвязь. Это осуществляется путем распределения блоков диаграммы по физической структуре проектируемой сети. Фактически временно выстраивается обобщенная модель сети. За поиск наилучшего варианта этого распределения отвечает ГА.

Хромосомой в данном ГА является единичный вариант расстановки блоков диаграммы по физическим узлам сети. В программной реализации хромосома имеет две части - фиксированную и изменяемую (рис. 2). Фиксированная часть содержит номера блоков диаграммы прикладных процессов, а в изменяемой части находятся номера узлов сети, взятые из схемы ее физической структуры.

Фиксированная часть 01 02 03 04 05 06 07 08 09 10

Изменяемая часть 02 03 04 05 06 08 09 10 11 12

Рис. 2. Схема формирования хромосомы СГА

Целевая функция ГА состоит из двух частей. Первая часть функции стремится к уменьшению суммарного трафика в системе. Вторая - к тому, чтобы максимальная вычислительная загрузка одного узла была наименьшей: Г = Гтгафик + ГВЗ + Ггр .

Расчет целевой функции, соответственно, происходит в три этапа. На первом этапе рассчитывается суммарный трафик в системе. Расчет строится на суммировании нечетких оценок, заложенных в диаграмму потоков данных. При этом производится трассировка связей диаграммы по каналам, описанным в физической модели сети. Каждый

Хромосома 1

01 02 03 04 : 05 06 07 08 09 10

02 03 04 05 ; 06- -08- • 09 -10 - 11 - • 12- •

]

Точка разбиения

01 02 03 04 : 05 06 07 08 09 10 )

02 05 04 03 ; 06- -08- • 12- 09 - -10- • 11- •

!

Хромосома 2 Рис. 3. Реализация рекомбинации в системе

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

Вторая часть целевой функции рассчитывается подобным же образом, только система оперирует с нечеткими вероятностными оценками вычислительной загрузки. Как заложено в СГА, популяция подвергается отбору, рекомбинации и мутации. Рекомбинации подвергается изменяемая часть хромосомы (рис. 3).

Мутация в предлагаемой модификации СГА происходит следующим образом: случайно выбирается точка в хромосоме, и два соседних гена меняются местами. Пример мутации приведен на рисунке 4.

01 02 03 | 04 !| 05 | 06 07 08 09 10

02 03 04 05 • 06 | 08 09 10 11 12

Точка разбиения

Рис. 4. Реализация мутации в системе

Третья часть целевой функции отвечает за качество группировки блоков диаграммы прикладных процессов по подсетям. Алгоритм ее вычисления таков: определяется количество групп, заданных пользователем. Затем для каждой из групп строится массив 1Р-адресов, присвоенных узлам, находящимся в этой группе. В этом массиве отыскивается максимальное количество повторяющихся элементов. Чем больше в группе повторяется 1Р-адресов, тем выше качество группировки.

Рис. 5. Общая структура САПР ВС

Структурная схема предлагаемой САПР ВС представлена на рисунке 5.

Программная реализация построена с использованием объектно-ориентированного программирования. Интерфейс построен на основных визуальных компонентах Windows в среде Delphi 5.0. Основной интерфейсной частью являются специализированные графические редакторы, в которых строятся бизнес-диаграмма и структурная модель ВС.

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

АРХИТЕКТУРА ПРОГРАММНОЙ СИСТЕМЫ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ И МОДЕЛИРОВАНИЯ

ВЫЧИСЛИТЕЛЬНЫХ СЕТЕЙ

А.А. Стецко, к.т.н.

Проектирование сложных технических систем, таких как локальные, корпоративные и телекоммуникационные вычислительные сети (ВС) -сложный многоуровневый процесс. При моделировании действующей сети человек обладает рядом статистических данных, после обработки которых он может внести изменения в ее конфигурацию. При проектировании новой сети таких данных нет, и проектировщик может лишь предвидеть, прогнозировать, как будет загружен тот или иной сетевой канал, насколько велик будет объем вычислений, производимых тем или иным узлом сети. Подобные прогнозы могут быть сделаны на основе описания производственных процессов, представленных потоковыми (Data Flow Diagram) DFD-диаграммами. В процессе проектирования необходимо учесть и будущее назначение сети, для чего нужно построить имитационную модель тех процессов, которые будут в ней происходить. Только осознавая круг задач сети, можно построить ее наиболее эффективно. Существующие системы оптимизации ВС позволяют решить задачу моделирования транспортного уровня. Современное распространение автоматизированных методов построения прикладных процессов ставит новую задачу - моделирование работы ВС на уровне прикладных производственных процессов. Для решения такой задачи необходимо найти эффективные методы наложения схемы процессов на транспортную схему ВС. Решению задачи согласования транспортного и прикладного процессного уровней в ходе автоматизированного проекти-

рования и посвящена данная статья. Предложенные методы решения встроены в разработанной САПР ВС.

Основные задачи и этапы

автоматизированного проектирования и моделирования ВС

Разработанная САПР ВС демонстрирует необходимое сочетание процессов автоматизированного проектирования ВС и моделирования будущего поведения ВС. Взаимодействие этих двух процессов осуществляется как последовательность ряда этапов.

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

2. Описание физической структуры сети: проектировщик описывает локальную сеть на уровне узлов сети и каналов связи. Здесь устанавливаются взаимосвязи узлов сети через коммутирующие модули, или маршрутизаторы, расставляются серверы. Для каждого узла сети задается таблица маршрутизации. Фактически моделируется процесс составления и настройки реальной локальной сети.

3. Расчет обобщенной модели: производится слияние модели прикладных процессов и физической модели сети в обобщенную модель и ее ав-