4.5.AJ Bellman Ford Alogrithm

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 9

Distance Vector Algorithm

Taken from : Jennifer R Princeton univ.

Bellman-Ford Algorithm
Mendefinisikan jarak tiap node x dx(y) =Cost dari least-cost path dari x ke y Mengupdate jarak berdasarkan neighbours dx(y) = min {c(x,v) + dv(y)} over all neighbors v

2 1 1
x

3
u

1 4
z t

2
w

5
s

du(z) = min{c(u,v) + dv(z), c(u,w) + dw(z)}


2

Distance Vector Algorithm


c(x,v) = Cost direct link dari X ke V Node x maintains costs of direct links c(x,v) Dx(y) = estimate of least cost from x to y Node x maintains distance vector Dx = [Dx(y): y N ] Node x maintains its neighbors distance vectors For each neighbor v, x maintains Dv = [Dv(y): y N ] Each node v periodically sends Dv to its neighbors And neighbors update their own distance vectors Dx(y) minv{c(x,v) + Dv(y)} for each node y N Over time, the distance vector Dx converges

Distance Vector Algorithm


Iterative, asynchronous: each local iteration caused by: Local link cost change Distance vector update message from neighbor Distributed: Each node notifies neighbors only when its DV changes Neighbors then notify their neighbors if necessary

Each node: wait for (change in local link cost


or message from neighbor)

recompute estimates
if distance to any destination has changed, notify neighbors

Distance Vector Example: Step 1


Optimum 1-hop paths
Table for A Dst A B C D E F Dst Cst 0 4 2 6 Table for C Cst Hop Hop A B E F A B C D E F Dst Table for B Dst Cst 4 0 3 1 Table for D Cst Hop Hop A B D F Table for E Dst Cst Hop Table for F Dst Cst Hop 2 6 1

C
1

A
B C D E F

0 1 1

C D F

A
B C D E F

3 1 0

B C D

A
B C D E F

2
0 3

A
E F

A
B C D E F

6
1 1 3 0
5

A
B C E F

Distance Vector Example: Step 2


Optimum 2-hop paths
Table for A Dst A B C D Cst 0 4 7 7 Hop A B F B A B C D Table for B Dst Cst 4 0 2 3 Hop A B F D 2 6 1

C
1

E
F Dst A B C D

2
5 Table for C Cst 7 2 0 1

E
E Hop F F C D

E
F Dst A B C D

4
1 Table for D Cst 7 3 1 0

F
F

B
Table for E Dst A B C D Cst 2 4 4 Hop A F F Table for F Dst A B C D Cst 5 1 1 2 Hop B B C C

Hop B B C D

E
F

4
1

F
F

E
F

E
F

0
3

E
F

E
F

3
0
6

E
F

Distance Vector Example: Step 3


Optimum 3-hop paths
Table for A Dst A B C D Cst 0 4 6 7 Hop A B E B A B C D Table for B Dst Cst 4 0 2 3 Hop A B F D 2 6 1

C
1

E
F Dst A B C D

2
5 Table for C Cst 6 2 0 1

E
E Hop F F C D

E
F Dst A B C D

4
1 Table for D Cst 7 3 1 0

F
F

B
Table for E Dst A B C D Cst 2 4 4 5 Hop A F F F Table for F Dst A B C D Cst 5 1 1 2 Hop B B C C

Hop B B C D

E
F

4
1

F
F

E
F

5
2

C
C

E
F

0
3

E
F

E
F

3
0
7

E
F

Distance Vector: Link Cost Changes


Link cost changes:
Node detects local link cost change Updates the distance table If cost change in least cost path, notify neighbors
algorithm terminates

1 4 X

Y 50

1 Z

good news travels fast

Distance Vector: Link Cost Changes


Link cost changes:
Good news travels fast Bad news travels slow - count to infinity problem! 60 4 X Y 50 1 Z

algorithm continues on!

You might also like