0% found this document useful (0 votes)
189 views12 pages

Distance Vector Routing Algorithm in Computer Networks

The distance vector routing algorithm is a dynamic routing protocol where each router maintains a routing table with the best path to reach destinations. Routers periodically exchange routing information with neighbors to update tables until they converge. The example shows routers exchanging distance vectors over multiple steps until their tables stabilize, identifying the lowest cost next hops to each destination and unused links.

Uploaded by

Yash Sinha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
189 views12 pages

Distance Vector Routing Algorithm in Computer Networks

The distance vector routing algorithm is a dynamic routing protocol where each router maintains a routing table with the best path to reach destinations. Routers periodically exchange routing information with neighbors to update tables until they converge. The example shows routers exchanging distance vectors over multiple steps until their tables stabilize, identifying the lowest cost next hops to each destination and unused links.

Uploaded by

Yash Sinha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 12

Distance Vector Routing Algorithm-

Distance Vector Routing is a dynamic routing algorithm.

It works in the following steps-

Step-01:

Each router prepares its routing table. By their local knowledge. each router knows
about-
 All the routers present in the network
 Distance to its neighboring routers

Step-02:

 Each router exchanges its distance vector with its neighboring routers.
 Each router prepares a new routing table using the distance vectors it has obtained
from its neighbors.
 This step is repeated for (n-2) times if there are n routers in the network.
 After this, routing tables converge / become stable.

Distance Vector Routing Example-

Consider-
 There is a network consisting of 4 routers.
 The weights are mentioned on the edges.
 Weights could be distances or costs or delays.
Step-01:

Each router prepares its routing table using its local knowledge.
Routing table prepared by each router is shown below-

At Router A-

Destination Distance Next Hop

A 0 A

B 2 B

C ∞ –

D 1 D

At Router B-

Destination Distance Next Hop

A 2 A
B 0 B

C 3 C

D 7 D

At Router C-

Destination Distance Next Hop

A ∞ –

B 3 B

C 0 C

D 11 D

At Router D-

Destination Distance Next Hop

A 1 A

B 7 B

C 11 C

D 0 D
Step-02:

 Each router exchanges its distance vector obtained in Step-01 with its neighbors.
 After exchanging the distance vectors, each router prepares a new routing table.

This is shown below-

At Router A-

 Router A receives distance vectors from its neighbors B and D.


 Router A prepares a new routing table as-

 Cost of reaching destination B from router A = min { 2+0 , 1+7 } = 2 via B.


 Cost of reaching destination C from router A = min { 2+3 , 1+11 } = 5 via B.
 Cost of reaching destination D from router A = min { 2+7 , 1+0 } = 1 via D.

Explanation For Destination B

 Router A can reach the destination router B via its neighbor B or neighbor D.
 It chooses the path which gives the minimum cost.
 Cost of reaching router B from router A via neighbor B = Cost (A→B) + Cost (B→B)= 2 + 0 =
2
 Cost of reaching router B from router A via neighbor D = Cost (A→D) + Cost (D→B) = 1 + 7 =
8
 Since the cost is minimum via neighbor B, so router A chooses the path via B.
 It creates an entry (2, B) for destination B in its new routing table.
 Similarly, we calculate the shortest path distance to each destination router at every router.

Thus, the new routing table at router A is-

Destination Distance Next Hop

A 0 A

B 2 B

C 5 B

D 1 D

At Router B-

 Router B receives distance vectors from its neighbors A, C and D.


 Router B prepares a new routing table as-

 Cost of reaching destination A from router B = min { 2+0 , 3+∞ , 7+1 } = 2 via A.
 Cost of reaching destination C from router B = min { 2+∞ , 3+0 , 7+11 } = 3 via C.
 Cost of reaching destination D from router B = min { 2+1 , 3+11 , 7+0 } = 3 via A.

Thus, the new routing table at router B is-

Destination Distance Next Hop

A 2 A

B 0 B

C 3 C

D 3 A

At Router C-

 Router C receives distance vectors from its neighbors B and D.


 Router C prepares a new routing table as-

 Cost of reaching destination A from router C = min { 3+2 , 11+1 } = 5 via B.


 Cost of reaching destination B from router C = min { 3+0 , 11+7 } = 3 via B.
 Cost of reaching destination D from router C = min { 3+7 , 11+0 } = 10 via B.
Thus, the new routing table at router C is-

Destination Distance Next Hop

A 5 B

B 3 B

C 0 C

D 10 B

At Router D-

 Router D receives distance vectors from its neighbors A, B and C.


 Router D prepares a new routing table as-

 Cost of reaching destination A from router D = min { 1+0 , 7+2 , 11+∞ } = 1 via A.
 Cost of reaching destination B from router D = min { 1+2 , 7+0 , 11+3 } = 3 via A.
 Cost of reaching destination C from router D = min { 1+∞ , 7+3 , 11+0 } = 10 via B.

Thus, the new routing table at router D is-


Destination Distance Next Hop

A 1 A

B 3 A

C 10 B

D 0 D

Step-03:

 Each router exchanges its distance vector obtained in Step-02 with its neighboring
routers.
 After exchanging the distance vectors, each router prepares a new routing table.

This is shown below-

At Router A-

 Router A receives distance vectors from its neighbors B and D.


 Router A prepares a new routing table as-
 Cost of reaching destination B from router A = min { 2+0 , 1+3 } = 2 via B.
 Cost of reaching destination C from router A = min { 2+3 , 1+10 } = 5 via B.
 Cost of reaching destination D from router A = min { 2+3 , 1+0 } = 1 via D.

Thus, the new routing table at router A is-

Destination Distance Next Hop

A 0 A

B 2 B

C 5 B

D 1 D

At Router B-

 Router B receives distance vectors from its neighbors A, C and D.


 Router B prepares a new routing table as-

 Cost of reaching destination A from router B = min { 2+0 , 3+5 , 3+1 } = 2 via A.
 Cost of reaching destination C from router B = min { 2+5 , 3+0 , 3+10 } = 3 via C.
 Cost of reaching destination D from router B = min { 2+1 , 3+10 , 3+0 } = 3 via A.

Thus, the new routing table at router B is-

Destination Distance Next Hop

A 2 A

B 0 B

C 3 C

D 3 A

At Router C-

 Router C receives distance vectors from its neighbors B and D.


 Router C prepares a new routing table as-

 Cost of reaching destination A from router C = min { 3+2 , 10+1 } = 5 via B.


 Cost of reaching destination B from router C = min { 3+0 , 10+3 } = 3 via B.
 Cost of reaching destination D from router C = min { 3+3 , 10+0 } = 6 via B.
Thus, the new routing table at router C is-

Destination Distance Next Hop

A 5 B

B 3 B

C 0 C

D 6 B

At Router D-

 Router D receives distance vectors from its neighbors A, B and C.


 Router D prepares a new routing table as-

 Cost of reaching destination A from router D = min { 1+0 , 3+2 , 10+5 } = 1 via A.
 Cost of reaching destination B from router D = min { 1+2 , 3+0 , 10+3 } = 3 via A.
 Cost of reaching destination C from router D = min { 1+5 , 3+3 , 10+0 } = 6 via A.

Thus, the new routing table at router D is-


Destination Distance Next Hop

A 1 A

B 3 A

C 6 A

D 0 D

These will be the final routing tables at each router.

Identifying Unused Links-

After routing tables converge (becomes stable),


 Some of the links connecting the routers may never be used.
 In the above example, we can identify the unused links as-

We have-
 The value of next hop in the final routing table of router A suggests that only edges AB
and AD are used.
 The value of next hop in the final routing table of router B suggests that only edges BA
and BC are used.
 The value of next hop in the final routing table of router C suggests that only edge CB
is used.
 The value of next hop in the final routing table of router D suggests that only edge DA
is used.

Thus, edges BD and CD are never used.

You might also like