Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Monografia-2004.doc
Скачиваний:
22
Добавлен:
05.11.2018
Размер:
2.11 Mб
Скачать

3.7. Алгоритм 2-потоковой динамической маршрутизации

Алгоритм 2-потоковой маршрутизации является частным случаем алгоритмов K-потокового распределения потоков данных, когда К=2. В его основе лежит прокладка двух альтернативных маршрутов от каждого узла-источника к каждому узлу-получателю ТКС. Поскольку альтернативный путь передачи потоков данных может выбираться на каждом узле маршрута от узла-источника к узлу-получателю, то выбор альтернативного маршрута сможно свести к задаче определения альтернативного канала связи для пересылки пакетов данных к получателю в каждом узле ТКС [61].

Опишем работу алгоритма 2-потоковой маршрутизации, приведенного в работе [61].

Для каждого узла-получателя ai выполним следующие действия:

  1. Определим множество всех узлов, которые имеют с ним прямую связь, и обозначим его как S1(ai);

  2. Определим множество маршрутов ото всех узлов ТКС к узлу ai и обозначим его как R(ai);

  3. Проверим, существуют ли среди узлов из S1(ai) двунаправленные каналы связи, и выберем один из таких каналов как альтернативную связь для узла-адресата ai;

  4. Сохраним ai и взаимосвязанные узлы, объединенные каналом альтернативной связи, в списке O2-узлов и удалим их из S1(ai);

  5. Проверим оставшиеся узлы в S1(ai), связаны ли они с одним из узлов, уже содержащихся в . Если да, то добавим соответствующий канал связи к R(ai), и переместим узел от S1(ai) к ;

  6. Будем повторять шаг 5), пока все узлы не будут удалены из S1(ai);

  7. Проверим каждый из оставшихся узлов ТКС, которые еще не являются частью , имеет ли он связи с двумя узлами в . Если да, то добавим соответствующие каналы связи к R(ai) и добавим узел к ;

  8. Будем повторять шаг 7), пока все узлы ТКС (кроме узла-адресата) не будут содержаться в .

В результате операций 1)–7) в множестве R(ai)будут содержаться все альтернативный маршруты для каждого узла-источника к узлу-получателю ai.

Для нормальной работы (сходимости) алгоритма 2-потоковой маршрутизации необходимо выполнение следующего “триангуляционного” условия:

- каждый узел ai должен «формировать треугольник» к каждому из своих соседних узлов.

Это означает, если у узла ai есть соседний узел ak (), то существует такой соседний узел aj, что и .

Предложенный алгоритм 2-потоковой маршрутизации позволяет снизить риск «отказа» ТКС при выходе из строя одного или нескольких узлов или при появлении новых узлов, что характерно для динамических ТКС с изменяющейся топологией.

При определении «оптимального» альтернативного маршрута необходимо внести в предложенный алгоритм следующие изменения:

– На шаге 1) в качестве множества R(ai) выберем дерево оптимальных (кратчайших) маршрутов к узлу ai от всех остальных узлов ТКС;

– На шаге 2) в качестве двунаправленного канала связи выберем двунаправленный канал связи как «средне оптимальный», т.е. минимальный по сумме стоимостей в каждом направлении передачи пакетов данных;

– На шаге 5) будем выбирать узлы, которые связаны с каналом связи наименьшей стоимости;

– На шаге 7) будем выбирать такие узлы ТКС и такие каналы связи, что суммарная стоимость выбираемой пары альтернативных каналов связи будет минимальной на каждой итерации алгоритма.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]