Исходный граф сети
Распределенный асинхронный алгоритм Беллмана-Форда.
Будем считать, что длина 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, образует "рельеф" сети, поэтому рассматриваемый метод является разновидностью метода рельефов.