Исходный граф сети

Распределенный асинхронный алгоритм Беллмана-Форда.

 

Будем считать, что длина dij, каждого ребра графа сети поло­жительна. В принципе длина dij, может изменяться во времени, но примем, что все изменения в сети произошли до момента t0 и оста­ются фиксированными после него, по крайней мере, до построения кратчайшего маршрута.


 

 
 

 


а)

 

       
 
   
 

 

 


P={1,2} P={1,2,5}

 

       
 
   
 

 


P={1,2,5,3,4} P={1,2,5,3,4,6}

 

Рис. 2

 

Пусть известно Di кратчайшее расстояние от каждого узла до узла-получателя информации, которым для конкретности будем считать узел 1.

Можно показать, что:

Di=, " i¹1, D1=0. (19)

Здесь N(i) – множество соседей узла i, т.е. узлов, соединенных с узлом i линией связи.

Асинхронный вариант распределенного алгоритма Беллмана-Форда работает нерегламентированно время от времени (например, при изме­нении dij или Dj), выполняя операцию (19) в каждом узле i¹1 пе­редавая измененное значение Di соседям.

В результате каждый узел будет знать не только свое кратчай­шее расстояние Di, но и уходящую от него линию, лежащую на крат­чайшем пути к узлу 1.

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

Именно на данном алгоритме маршрутизации был основан перво­начальный алгоритм сети ARPANET, он также близок к алгоритму, ис­пользуемому в сети DNA фирмы NEC.

Совокупность значений Di, образует "рельеф" сети, поэтому рас­сматриваемый метод является разновидностью метода рельефов.