ПРОБЛЕМЫ И МЕТОДЫ МНОГО-АДРЕСНОЙ МАРШРУТИЗАЦИИ В ГЛОБАЛЬНЫХ ТЕЛЕКОММУНИКАЦИОНЫХ СИСТЕМАХ НОВОГО ПОКОЛЕНИЯ Бакурадзе А. М., ведущий электроник лаборатории информационных технологий в управлении и робототехнике СПИИРАН, [email protected] Аннотация Описываются основные проблемы и методы многоадресной маршрутизации в глобальных телекоммуникационных системах нового поколения. Введение Бурное развитие глобальных телекоммуникационных систем (ТКС) свидетельствует о том, что их колоссальные возможности по массовому доступу людей к корпоративным, региональным и мировым информационным и вычислительным ресурсам уникальны и впечатляющи. Однако дальнейшее развитие глобальных ТКС (создание ТКС новых поколений, GRID-системы и т.п.) в первую очередь связано с совершенствованием, автоматизацией, оптимизацией и интеллектуализацией систем сетевого управления потоками данных. Причиной этого является тот факт, что сегодня сетевое управление глобальными ТКС в значительной степени зависит от “человеческого фактора”, а именно от знаний, опыта, интуиции и воли сетевых администраторов и операторов. В то же время хорошо известно, что способности людей (в том числе профессионалов в области сетевого управления ТКС) принципиально ограничены пределами их психофизиологических возможностей. Даже если будет разработан наилучший (в том или ином смысле) человеко-машинный интеллектуальный интерфейс, сетевые администраторы и операторы не способны эффективно управлять многомерными сложными параллельными процессами передачи и обработки мультимедийных потоков данных. Поэтому они не смогут обеспечить высокое качество сетевого управления, надёжность и отказоустойчивость глобальных ТКС. Однако на современном этапе развития телекоммуникационных и информационных технологий особенно важно гарантировать пользователям глобальных ТКС высокое качество запрашиваемых услуг и информационно-вычислительных ресурсов. Эффективным путём совершенствования сетевого управления потоками данных в глобальных ТКС является его автоматизация на базе динамических моделей ТКС как сложных объектов управления с переменной структурой, методов оптимизации процессов маршрутизации потоков данных и принципов адаптивного и интеллектуального управления с использованием нейросетевых, мульти-агентных и GRIDтехнологий. На этом новом пути возможен как учёт реальной динамики ТКС, т.е. фактического изменения структуры (топологии узлов и каналов связей) и параметров (весов каналов связи) ТКС, так и адаптация к различным факторам неопределённости и нестационарности. 1. Задача и режимы много-адресной (групповой) маршрутизации В современных ТКС существует три основных принципа маршрутизации передаваемых информационных потоков: - одно-адресная (unicast) маршрутизация; - много-адресная (multicast) маршрутизация; - широковещательная (broadcast) маршрутизация; Одно-адресная маршрутизация осуществляется в случае, когда заданы один узел-источник и один узел-получатель глобальной ТКС. Много-адресная маршрутизация реализует один из двух характерных режимов групповой передачи данных: – “один источник-группа получателей”, когда задан один узелисточник и несколько узлов-получателей, – “группа источников – один получатель”, когда задан один узел получатель и несколько узлов-источников. При широковещательной (лавинной) маршрутизации пакеты передаются от одного узла ТКС ко всем остальным. Много-адресная маршрутизация с одним узлом-получателем и несколькими узлами-источниками может рассматриваться как модификация одно-адресной маршрутизации, при которой от каждого узла-источника строится свой маршрут. В этом режиме много-адресной маршрутизации содержимое передаваемых пакетов может быть своим для каждого узла-источника из группы. Это означает, что потоки данных от группы узлов ТКС могут рассматриваться как самостоятельные потоки, параллельно передаваемые узлу-получателю ТКС. Важно отметить, что в этом режиме совокупность локальнооптимальных маршрутов, независимо определяемых каждым узломисточником, соответствует глобально-оптимальному решению задачи много-адресной маршрутизации для всей группы узлов-источников глобальной ТКС. Особенность много-адресной маршрутизации в другом характерном режиме, когда потоки данных передаются от одного узла-источника к группе узлов-получателей ТКС, состоит в том, что потоки данных, принимаемых узлами-получателями, будут одинаковыми. Графовым аналогом решения этой задачи будет дерево оптимальных маршрутов от узла-источника к группе узлов-получателей ТКС. При этом интенсивности потоков данных на всех каналах связи, соответствующих ребрам этого дерева, будут равными (в случае, когда каналы связи ТКС обладают неограниченной пропускной способностью). Таким образом, при геометрико-графовом подходе к много-адресной маршрутизации во втором режиме, интенсивность потока данных не имеет значения. Поэтому её можно исключить из рассмотрения, что значительно облегчает решение задачи много-адресной маршрутизации потоков данных в глобальных ТКС в режиме “один источник – группа получателей”. 2. Формализация задачи много-адресной маршрутизации в характерных режимах групповой передачи данных Постановка задачи маршрутизации потоков данных в глобальной ТКС в режиме “группа источников – один получатель” заключается в следующем. Пусть заданы граф ТКС G(A,R,W), группа узлов-источников si A, i 1,2,..., n , и один узел-получатель f A , причем f si . Требуется построить дерево кратчайших маршрутов Tопт, такое, что стоимость любого маршрута si f , i=1,2,,…,n, (1) входящего в Tопт , будет минимальной из всех возможных маршрутов из si в f. Формализация задачи маршрутизации в режиме “один источник – группа получателей” заключается в следующем. Пусть ТКС соответствует граф G(A,R,W) и заданы узел-источник s0 A и группа узлов-получателей f i F A, i 1,2,..., n, причём s0 f i . Требуется построить дерево кратчайших маршрутов Tопт, такое, что стоимость любого маршрута (1), входящего в Tопт , будет минимальной из всех возможных маршрутов из s0 в fi. Таким образом, решением данной задачи является поддерево дерева кратчайших маршрутов, построенного от узла-источника к остальным узлам глобальной ТКС. 3. Особенности много-адресной маршрутизации в режиме “один источник – группа получателей” Маршрутизация в этом режиме “от одного ко многим” требует от маршрутизатора построения оптимальных или субоптимальных маршрутов от заданного узла-источника ко всем узлам-получателям из заданной группы (множества) узлов ТКС. Группы узлов-получателей формируются, например, из групп пользователей ТКС “по интересам”. Они могут включать достаточно большое число узлов. Однако это число (мощность группы) должно быть существенно меньшим, чем общее число узлов (мощность) глобальной ТКС. Каждой группе узлов ТКС можно поставить в соответствие её групповой адрес. Такие группы могут получать потоки запрошенных данных как из одного (единственного) узла-источника, так и из разных источников. При этом число узлов ТКС в группе может изменяться. Для устранения перегрузки сетевого трафика и улучшения приёма потоков данных при много-адресной маршрутизации каждый узелполучатель может послать маршрутизатору ТКС запрос на резервирование или приоритетное обслуживание определённых каналов связи. Для этого он может использовать, например, обратную маршрутизацию потоков данных. В этом случае маршрутизатор централизованно задаёт (через соответствующий протокол) полные маршруты передачи потоков данных от узла-источника ко всем узлам-получателям через все промежуточные узлы ТКС. Формально метод маршрутизации в режиме “от одного ко многим” можно отнести к так называемой маршрутизации потоков данных в режиме “маршрутизации от источника” (Source Routing – SR). Однако этот термин, вообще говоря, имеет более широкий смысл. Например, он подразумевает также распределённую маршрутизацию, когда каждый маршрутизатор отвечает только за один следующий шаг передачи данных, а весь маршрут является результатом работы всех маршрутизирующих узлов ТКС. Такой принцип распределённой маршрутизации обычно используется в динамических и адаптивных маршрутизаторах. Важно отметить, что в новой версии IP-протокола IPv6 в глобальной сети Internet наряду с распределенной маршрутизацией предусмотрена и SR-“маршрутизация от источника”. Предельными случаями маршрутизации в режиме “от одного ко многим” (в частности, “от одного к одному”) является лавинная (“от одного ко всем”) маршрутизация. В случае лавинной маршрутизации входные пакеты данных передаются от узла-источника по всем выходным каналам связи ко всем остальным узлам ТКС. При этом маршрутизатор ”заполняя” протокол, устанавливает в заголовке пакета данных счётчик пройденных каналов связи ТКС для каждого маршрута. В начале показания этого счётчика равны длине оптимального маршрута или диаметру (длине максимального маршрута) ТКС, а затем они уменьшаются на 1 после передачи пакета данных по заданному маршруту через очередной канал ТКС. Основными областями применения алгоритмов и протоколов лавинной маршрутизации являются следующие приложения: – военные (оборонные) ТКС, в которых значительная часть узлов и каналов связи может быть уничтожена; – одновременное обновление распределённых БД и БЗ в КС, обслуживаемых глобальной ТКС; – тестирование алгоритмов маршрутизации различных типов в процессе имитационного моделирования ТКС. 4. Модификация алгоритма Дейкстры для много-адресной маршрутизации в режиме «от одного ко многим» Пусть узел-источник s0 и множество (группа) узлов-получателей зафиксированы. Тогда задача много-адресной Ψ {F}i 1..K маршрутизации заключается в построении дерева кратчайших маршрутов от s0 ко всем узлам из группы узлов-получателей Fi и определении на каждом узле дерева распределения потока данных для каждой группы. Не умаляя общности, будем считать, что этими узлами из множества (группы) Ψ будут все узлы ТКС, кроме узла s0 (A\s0). Предлагаемый алгоритм является модификацией статического алгоритма Дейкстры на случай много-адресной маршрутизации в режиме передачи потоков данных “от одного ко многим”. Введём исходные данные и необходимые обозначения: Ai ⊂A – множество соседних ai узлов; T 0 ⊂A – множество узлов, обработанных алгоритмом; T 1 A ( T 0 и T 1 dis )– множество узлов, обрабатываемых алгоритмом; T 2 A \ (T 0 T 1) –остальные узлы ТКС; w(i,j) w – стоимость ребра (i, j) f ; w(i,i)=0; w(i,j) , если узлы ai и aj не соединены каналом связи непосредственно; w(i,j) 0 , если эти два узла непосредственно соединены; L(j) если j T 1 , – оценка алгоритмом стоимости маршрута от узлаисточника s0 до узла n; L(j) если j T 0 , – стоимость кратчайшего маршрута от s0 до n. (Для остальных j это значение L(j) не определено). Требуется построить дерево кратчайших маршрутов от узлаисточника s0 до остальных узлов ТКС и вычислить их стоимости, а также для каждого узла множество ai A и группы узлов-получателей F определить i ( F ) Ai , соответствующее распределению потока от s0 к F через узел ai. Алгоритм решения этой задач заключается в следующем: 1. Инициализация. T1 - пусто, T1={s0}, т.е. вначале множество обработанных узлов ТКС состоит только из узла-источника. Узлу-источнику сопоставляется пустой маршрут. L(n)=w(s0,n) для n s0 , т.е. начальные стоимости маршрутов к соседним узлам – это веса соответствующих ребер графа G, L(s0)=0. Все i (F ) пусты. Шаг алгоритма. Выберем из T1 узел ТКС с минимальной оценкой стоимости маршрута и поместим его в T0 , обозначая соответствующий ему маршрут как кратчайший. Иными словами, находим 2. x T : L( x ) = min L( j ) . (2) j∈T 1 При этом рассматриваем все рёбра графа ТКС с начальным узлом x. Для каждого ребра (x, j) выполняется одно из трех действий: А) если j T 0 , то никаких действий не производится; В) если j T 2 , то j переводится из множества T2 в T1, причём j-ому узлу сопоставляется значение L( j ) L( x) w( x, j ) , (3) а также маршрут, состоящий из кратчайшего маршрута до x и ребра (x,j). С) если j T 1 , то производится новая оценка L( j ) minL( x ) w( x , j ) , и j-ому узлу сопоставляется соответствующий оценке маршрут (либо (4) прежний, либо согласно в В)). Для каждого узла ai, составляющего полученный кратчайший маршрут, кроме узла x, и всех групп узлов-получателей F, содержащих x, добавляем в i (F ) узел aj, такой, что ребро (ai,aj) входит в кратчайший до x маршрут. Итерации алгоритма повторяются до тех пор, пока T0 не станет равно s. Таким образом, по окончании работы алгоритма для каждого узла x ТКС будет определен кратчайший маршрут к нему от узла-источника, а значение L(x) будет соответствовать стоимости этого маршрута. 5. Особенности нейросетевого подхода к много-адресной маршрутизации Математические модели нейронных сетей являются удобным вычислительным механизмом, обладающим следующими важными свойствами: – обучаемость, – адаптивность, – высокий параллелизм и скорость вычислений – предсказуемая вычислительная устойчивость (робастность), т.е. способность находить точные решения при неточных входных данных. Аппаратные и некоторые программные реализации нейронных сетей позволяют в значительной степени повысить эффективность и скорость сложных расчетов, проводимых при решении широкого класса вычислительных задач (в частности, задач маршрутизации потоков данных в ТКС). Задача много-адресной маршрутизации в ТКС является, по существу, основной задачей управления потоками данных. Это объясняется тем, что решение этой задачи существенно используются для организации распределенного управления потоками данных, организации совместной работы узлов-маршрутизаторов, а также для передачи мультимедийных данных с высокими QoS-параметрами качества предоставляемых услуг (например, управление мультимедийными потоками данных во время сетевых видеоконференций). Именно поэтому методы синтеза адаптивных, эффективных (экономных по времени) и надежных алгоритмов маршрутизации потоков данных в глобальных ТКС и их нейросетевое представление имеют первостепенное значение в задачах управления передачей данных. Нейронные сети как вычислительные модели потенциально соответствуют всем этим требованиям к алгоритмам и средствам маршрутизации информационных потоков в глобальной ТКС. Нейросетевые алгоритмы определяются нейросетевой постановкой задачи маршрутизации (точнее её нейросетевой интерпретацией) и некоторой подходящей моделью нейронной сети, решающей задачу в данной постановке. Рассмотрим задачу много-адресной маршрутизации в нейросетевой постановке. В качестве модели ТКС будем рассматривать граф G(A,R,W). Рассмотрим режим маршрутизации “от одного ко многим” узлам ТКС. Пусть заданы узел-источник s A и множество (группа) узловполучателей (5) F = U f i , f i ∈A , i=1,2,…,n. i Множество данных (2.5) образуют пространство входных данных, подаваемых на вход нейронной сети. Требуется построить дерево минимальной стоимости Ymin Y , состоящее из оптимальных маршрутов от узла-источника ко всем узламполучателям ТКС. Множество таких маршрутов образуют пространство решений, формируемых на выходе нейронной сети. В качестве нейросетевой модели для решения задачи многоадресной маршрутизации рассмотрим модификацию нейронной сети Хопфилда. Нейронные сети Хопфилда являются однослойными сетями с обратными связями от каждого нейрона к входам всех остальных. Они эффективно используются для решения задач дискретной оптимизации (задача комивояжера и т.п.), распознавания образов и фильтрации сигналов. Общий вид сети Хопфилда показан на рис. 2.1. Входной сигнал для i-го нейрона здесь обоз-начен через xi, выходной сигнал – через yi, вес связи от i-го нейрона к j-му обозначен через Tij. y1 x1 T12 x2 x3 xN T13 T1N Рис.2.1. Архитектура нейронной сети Хопфилда y2 y3 yN 6. Метод построения нейросетевой модели маршрутизатора Для построения нейронной сети Хопфилда необходимо последовательно выполнить следующие шаги (этапы синтеза): 1) определить функцию активации для нейронов; 2) определить пространство входных данных для нейронной сети (оно может не совпадать с пространством решений задачи в нейросетевой постановке, и в этом случае потребуется дать интерпретацию решения, т.е. привести решение, полученное нейронной сетью к решению в терминах нейросетевой постановки задачи маршрутизации); 3) на объединении пространства входных данных и пространства решений задать энергетическую функцию нейронной сети вида N N i , j 1 i 1 E( x , y ) Tij yi y j xi , (6) обладающую следующими свойствами: а) функция E является положительно определённой квадратичной формой, b) глобальный минимум функции E соответствует решению поставленной задачи. 4) в соответствии с энергетической функцией (2.6) построить модель нейронной сети; Полученная нейронная сеть будет способна решать поставленную задачу с определенной степенью точности. Точность решения определяется особенностями поставленной задачи и наличием локальных минимумов энергетической функции. Решением сети Хопфилда является совокупность выходных значений всех её нейронов. В качестве функции активации i-го нейрона выберем нелинейную функцию вида gi ( z) 1 , 1 e i z (7) где z – суммарный входной сигнал i-го нейрона, а λi – некоторый положительный коэффициент – параметр i–го нейрона . Такая функция активации позволяет рассматривать динамику нейронной сети , т.е. описать её поведение во времени. Пусть узлы графа ТКС проиндексированы, т.е. A={ai}, i=1, .., N, где N – число узлов в ТКС. В качестве пространства решений сети Хопфилда Y будем рассматривать следующее множество: 1, если маршрут от узла - источника s к Y = i , j ,m y ijm , где y ijm = узлу - получателю a m содержит ребро ( ai , a j ), (8) 0 , если иначе Таким образом, множество нейронов y ijm сети Хопфилда можно условно разбить на N подмножеств, и организовать в виде квадратных m матриц (обозначим их y ) размерностью NN. Каждая такая матрица будет соответствовать некоторому узлу-получателю, а элементы матрицы – каналам связи между соответствующими узлами ТКС. На основе соотношения (2.8) можно построить интерпретатор решений нейронной сети. Теперь необходимо определить энергетическую функцию сети. Введём величину К(Y) как функционал, определяющий стоимость дерева проложенных маршрутов. На допустимые решения наложим следующие ограничения: 1) Выходное значение нейронов должно быть либо 1, либо 0; 2) От узла-источника до каждого узла-получателя существует только один маршрут (т.е. в каждой матрице должен быть только один маршрут); 3) В каждый маршрут в решении могут входить только существующие ребра графа ТКС. Заключение В работе были представлены модели и методы много-адресной маршрутизации в телекоммуникационных системах нового поколения. Результаты могут быть полезны для организации адаптивного многоагентного обслуживания пользователей GRID-инфраструктур различного масштаба и назначения и для создания мировой сети Internet нового поколения. Литература 1. Олифер В.Г., Оливер М.А. Компьютерные сети. Принципы, технологии, протоколы. - Спб.: Питер, 2001. - 672с. 2. Harshall F. Data Communication, Computer Networks and Open Systems. -Adisson - Wesly, 1996. 3. Tanenbaum A.S. Computer Networks. – Prentice Hall, 1996. 4. Тимофеев А.В. Адаптивное управление и интеллектуальный анализ информационных потоков в компьютерных сетях. – Анатолия, Санкт-Петербург, 2012, 280 с.