Методы локальной пользовательской маршрутизации, страница 4

Шаг3. Из текущего узла v в смежный узел m полылается сообщение [p, Dp(v)] для всех получателей p (узел v пересылает в узел m свою маршрутную таблицу без второго столбца в виде сообщений).

Событие2. Изменилась стоимость канала (v,m) на величину D(v,m). Если D < 0, то произошло улучшение связи, иначе снижение, вплоть до выхода канала из строя.

Шаг1. Cd(v,m) = Cd(v,m) + D(v,m) для всех получателей d. Весь столбец m матрицы стоимостей изменится на величину D(v,m).

Шаг2. Для всех получателей расчитываются новые значения Dd(v). Если для какого-либо получателя p изменилась стоимость доставки Dp(v), то в маршрутной таблице формируется  новая строка (p,w,Dp(v)) – стоимость доставки до получателя p через узел w. Всем смежным узлам посылаются сообщения [p,Dp(v)].

Событие3. В текущий узел v из смежного узла w пришло сообщение [p,Dp(w)], которое говорит, что стоимость доставки до узла p через w изменилась. Если p = v, то сообщение игнорируется.

Шаг1. p ¹ v, тогда в матрице стоимостей в строке с номером p в столбце w записывается новое значение Cp(v,w) = Dp(w) + l(v,w).

Шаг2. Для получателя p рассчитываются новая минимальная стоимость доставки Dp(v). Если это значение изменилось, то в маршрутной таблице формируется новая строка (p, m, Dp(v)), m – номер узла, через который достигнуто минимальное расстояние. Всем смежным узлам посылается сообщение [p,Dp(v)].

Формат сообщения [v, w, p, Dp(v), t, flag].

v = 1

2

4

смж

ст

v = 2

1

3

4

см

ст

2

1

5

2

1

1

1

7

5

1

1

3

4

4

4

4

3

5

3

5

3

3

4

4

2

4

2

4

3

5

3

4

3

v = 3

2

4

смж

ст

v = 4

1

2

3

см

ст

1

4

4

2

4

1

2

4

6

1

2

2

3

5

2

3

2

3

3

5

2

3

4

6

2

4

2

3

6

6

2

3

2