- •А.В.Тимофеев, а.В.Сырцев Модели и методы маршрутизации потоков данных в телекоммуникационных системах с изменяющейся динамикой
- •Содержание
- •1. Эволюция глобальных ткс и принципов управления потоками данных
- •1.1. Рост объема и изменение структуры трафика в глобальных ткс
- •1.2. Современные тенденции развития глобальных ткс
- •1.3. Pазвитие ip-технологий маршрутизации и передачи потоков данных
- •1.4. Архитектура глобальных ткс и роль сетевой системы управления
- •1.5. Принципы построения адаптивных и интеллектуальных систем сетевого управления
- •1.6. Анализ ткс как информационного объекта управления
- •1.6.1. Графовые модели ткс
- •1.6.2. Матричные модели ткс и их взаимосвязь
- •1.6.3. Критерии коммуникабельности ткс
- •2. Методы статической маршрутизации потоков данных в мульти-агентных ткс
- •2.1. Задачи маршрутизации потоков данных и их роль в сетевом управлении ткс
- •2.2. Постановка задачи оптимальной статической маршрутизации
- •2.3. Модели и алгоритмы статической маршрутизации
- •2.3.1. Дерево кратчайших маршрутов для ткс с односторонними связями
- •2.3.2. Каталог узлов и оптимальных маршрутов для статических ткс
- •2.3.3. Метод статической лавинной маршрутизации
- •2.3.4. Методы вероятностной маршрутизации
- •2.3.5. Метод оптимальной маршрутизации, основанный на построении остова минимальной стоимости графовой модели ткс
- •2.4. Групповая маршрутизация в статических ткс
- •2.6. Оптимальная статическая маршрутизация в глобальных мульти-агентных ткс
- •3. Методы и средства динамической маршрутизации в глобальных ткс
- •3.1. Постановка задачи динамической маршрутизации
- •3.2. Основные алгоритмы динамической маршрутизации
- •3.2.1. Алгоритм Беллмана-Форда и его модификации
- •3.2.2. Алгоритм Дейкстры
- •3.3. Критерии существования оптимальных маршрутов передачи данных в динамических ткс на основе простых карт и таблиц маршрутизации
- •3.3.1. Критерий маршрутизируемости
- •3.3.2. Оптимальные таблицы и карты маршрутизации и вычисление оптимальных маршрутов
- •3.5. Много-адресная маршрутизация в динамических ткс
- •3.6. Многопотоковая маршрутизация в динамических ткс
- •3.7. Алгоритм 2-потоковой динамической маршрутизации
- •4. Модели и методы адаптивной и нейросетевой маршрутизации в мульти-агентных ткс
- •4.1. Особенности адаптивной маршрутизации в ткс с неопределённой днамикой
- •4.2. Принципы и модели централизованной, децентрализованной и мульти-агентной маршрутизации
- •4.3. Особенности организации распределительных таблиц и карт для адаптивной маршрутизации
- •4.4. Критерии корректности распределяющих карт маршрутизации
- •4.5. Расширение карт маршрутизации и интенсивность потоков данных
- •4.6. Централизованная и распределённая маршрутизации в мульти-агентных ткс
- •4.7. Нейросетевая маршрутизация в мульти-агентных ткс
- •Список литературы
- •Сведения об авторах
3.3.2. Оптимальные таблицы и карты маршрутизации и вычисление оптимальных маршрутов
Для каждого узла ТКС зададим функционал оценки стоимостей маршрутов до остальных узлов ТКС в виде
, (3.3.8)
где wj – стоимости звеньев (каналов связи), образующих маршрут из ai в ak.
Заметим, что при неполноте информации о текущем состоянии ТКС, доступной узлу ai (например, в динамически изменяющихся ТКС), значение функционала может не совпадать с точным значением стоимости маршрута. В таких случаях обычно используются методы, оценивающие значение функционала стоимости маршрута (например, методы Q-маршрутизации) [18].
Пусть таблицы маршрутизации строятся следующим образом:
. (3.3.9)
где функции ρi вычисляются по следующей формуле:
(3.3.10)
Такие таблицы будем называть оптимальными таблицами маршрутизации. Они представляют для каждого узла TKC оптимальную локальную БД маршрутизации.
Множество таких таблиц определяет оптимальную карту маршрутизации и реализующую её глобальную БД оптимальной маршрутизации ТКС.
Теорема 3.3.2: Маршруты, определяемые по формулам (3.3.9) и (3.3.10), являются оптимальными, в том смысле, что функционал (3.2.1), оценивающий их стоимость, принимает на этих маршрутах минимальное значение, т.е.
ρi(f)=Kopt(ai, f)) = min K(ai, f). (3.3.11)
Для доказательства этой теоремы прежде всего заметим, что второе утверждение напрямую следует из описанного метода построения оптимальных таблиц маршрутизации по формулам (3.3.9) и (3.3.10).
Докажем теперь первое утверждение теоремы 3.3.2 по индукции, а именно: если n-звенные маршруты, построенные по формулам (3.3.9) и (3.3.10), оптимальны, то (n+1)-звенные маршруты, построенные по этим же формулам, также будут оптимальны.
База: n=0.
Так как стоимость маршрута неотрицательна, а стоимость всех 0-звенных маршрутов равна 0, то для n=0 доказываемое утверждение верно.
Индукционный переход: n n+1.
Рассмотрим (n+1)-звенный маршрут P0(n+1)(s,f) от заданного узла-источника s к фиксированному узлу-получателю f, определяемый оптимальными таблицами маршрутизации, в виде
. (3.3.12)
Стоимость этого маршрута равна ρs(f)=K(s,f). Так как маршруты P0(n) оптимальны, а функционалы ρi соответствуют их стоимостям, то из формул (3.3.9) и (3.3.10) следует, что
. (3.3.13)
Таким образом, стоимость (n+1)-звенного маршрута, определенного по оптимальным таблицам маршрутизации, является минимальной из всех возможных. Это значит, что маршрут P0(n+1)(s,f) оптимален для любых узлов –источников s A и узлов-получателей f A.
Теорема 3.3.2. доказана.
Эта теорема конструктивна, так как по существу она определяет метод вычисления (планирования) оптимальных маршрутов передачи пакетов данных от любого узла-источника s к заданному узлу-получателю f, основанный на построении оптимальной карты маршрутизации для ТКС.
3.4. RL-подход к динамической Q-маршрутизации
Динамическим аналогом традиционных алгоритмов статической (фиксированной) маршрутизации является так называемый алгоритм Q-маршрутизации (Q-routing) [18]. Этот алгоритм динамической маршрутизации основан на RL (Reinforcement Learning), подходе, использующем распределенный механизм оценки стоимостей маршрутов в динамических ТКС. Опишем этот алгоритм подробнее.
Алгоритм Q-маршрутизации потоков данных является модификацией алгоритма маршрутизации Беллмана-Форда [17]. Он эффективно работает как в статических, так и в динамических ТКС с высоким риском сетевых перегрузок.
Алгоритм является распределенным, так как выполняется в каждом узле ТКС. Он производит итеративные (рекуррентные) вычисления для определения и корректировки маршрутов, близких к оптимальным. При этом используется функционал, оценивающий стоимость маршрутов передачи пакетов данных в глобальных ТКС.
Особенность алгоритма заключается в том, что в каждом узле ТКС для каждого узла-получателя определяется не весь маршрут, а только соседний узел, которому нужно переслать пакет. Таким образом, рекуррентный алгоритм Q-маршрутизации вычисляет локально- оптимальные маршруты. При этом не гарантируется глобальная оптимальность синтезированных маршрутов.
Задача Q-маршрутизации в динамических ТКС формулируется следующим образом.
Пусть заданы:
G(A(t),R(t),W(t)) – ориентированный граф ТКС;
– узел-источник пакетов данных;
– стоимость ребра , удовлетворяющая естественным соотношениям:
w(i,i)=0; , если узлы i и j не соединены
, если узлы i и j соединены;
– функционал стоимости маршрутов, соответствующий оценке узлом стоимости маршрута, содержащего ребро , до узла-получателя .
Требуется построить локально-оптимальные маршруты от узла-источника до остальных узлов , позволяющие на каждом шаге минимизировать стоимость каналов связи ТКС.
Решение этой задачи разбивается на два этапа:
- прокладка начальных маршрутов
- корректировка маршрутов.
Опишем вычислительную работу алгоритма на каждом этапе.
1-й этап (прокладка начальных маршрутов)
Вычисление начальных маршрутов можно осуществить с помощью алгоритма Беллмана-Форда. По окончании работы этого алгоритма значения функционала стоимостей определяются по следующей формуле:
, (3.4.1)
где L(v,f) – стоимость кратчайшего маршрута от узла vдо узла f.
На данном этапе главный интерес представляют не столько сами начальные маршруты (их можно и не запоминать), сколько получение начальных значений функционала .
2-й этап (корректировка маршрутов)
На каждом шаге алгоритма происходит обновление оценок стоимостей по рекуррентной формуле
), (3.4.2)
где – «коэффициент обучения» (обычно выбирается =0.5), а lk(f,v) вычисляется по формуле:
. (3.4.3)
Технология прокладки маршрута с помощью описанного алгоритма заключается в следующем
При передаче пакета данных узлу-получателю f узел-источник s0 сначала пересылает его к соседнему узлу v=a1, на котором значение функции минимально. Затем этот узел a1 пересылает пакет узлу v =a2, на котором достигается минимум функции и т.д. до тех пор, пока пакет данных не придет в заданный узел-получатель f.
Эффективность алгоритма Q-маршрутизации зависит от выбора коэффициента обучения μ. При значениях , близких к 1, возрастает риск возникновения так называемых «узких мест», т.е. возможность появления маршрутов, совместно используемых для передачи пакетов данных несколькими парами “источник-получатель”.
Заметим, что если маршрут оптимален, то любой содержащийся в нем подмаршрут тоже оптимален. Таким образом, если несколько пар «источник-получатель» будут передавать пакеты данных только по оптимальному маршруту, то это с большой вероятностью приведет к перегрузке соответствующих каналов связи ТКС.
При значениях “коэффициента обучения” , близких к 0, изменения стоимостей маршрутов будут мало влиять на решение. В этом случае вычисляемые по алгоритму маршруты могут быть достаточно далеки от глобально оптимальных.
Экспериментальные исследования показали, что распределенный алгоритм Q-маршрутизации достаточно легко адаптируется как к возможным изменениям структуры (топологии) параметров динамических ТКС, как и к возможным изменениям направлений передачи и интенсивности потоков данных.
На рис.3.4.1. приводится сравнительная характеристика алгоритмов Q-маршрутизации (Q-routing) и OSPF-алгоритма (Shortest Path), полученная в работе [18]. Ось абсцисс на приведенной диаграмме соответствует средней загрузке сети, ось Y - среднему времени доставки пакетов данных.
Рис.3.4.1. Сравнительная оценка эффективности работы алгоритмов Q-маршрутизации и OSPF
Как видно из рис. 3.4.1, при увеличении нагрузки на сеть алгоритм Q-маршрутизации оказывается более устойчивым, чем алгоритм OSPF, который является стандартом в современных ТКС.