0% found this document useful (0 votes)
23 views18 pages

Shortest Path Routing - Distance Vector: Unit 03.02.03 CS 5220: Computer Communications

The document discusses shortest path routing using the distance vector protocol. It explains that distance vector routing works by having each node share its routing table with neighbors periodically. This allows nodes to gradually learn the shortest path to each destination through iterative updates, as they incorporate path length information from neighbors into their own routing tables. The Bellman-Ford algorithm is used by each node to continuously recalculate the next hop and distance to reach each destination.

Uploaded by

arafath uzzaman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views18 pages

Shortest Path Routing - Distance Vector: Unit 03.02.03 CS 5220: Computer Communications

The document discusses shortest path routing using the distance vector protocol. It explains that distance vector routing works by having each node share its routing table with neighbors periodically. This allows nodes to gradually learn the shortest path to each destination through iterative updates, as they incorporate path length information from neighbors into their own routing tables. The Bellman-Ford algorithm is used by each node to continuously recalculate the next hop and distance to reach each destination.

Uploaded by

arafath uzzaman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 18

Unit 03.02.

03
CS 5220:
COMPUTER COMMUNICATIONS

Shortest Path Routing – Distance Vector


XIAOBO ZHOU, Ph.D.
Professor, Department of Computer Science
Shortest Paths & Routing
 Many possible paths connect any given
source and to any given destination
 Routing involves the selection of the path to
be used to accomplish a given transfer
 Typically it is possible to attach a cost or
distance to a link connecting two nodes
 Routing can then be posed as a shortest
path problem
Routing Metrics
Means for measuring desirability of a path
 Path Length = sum of costs or distances
 Possible metrics
 Hop count: rough measure of resources used
 Reliability: link availability; BER
 Delay: sum of delays along path; complex & dynamic
 Bandwidth: “available capacity” in a path
 Load: Link & router utilization along path
 Cost: $$$
Shortest Path Approaches
Distance Vector Protocols
 Neighbors exchange list of distances to destinations

 Best next-hop determined for each destination

 Bellman-Ford (distributed) shortest path algorithm

Link State Protocols


 Link state information flooded to all routers

 Routers have complete topology information

 Shortest path (& hence next hop) calculated

 Dijkstra (centralized) shortest path algorithm


Distance Vector
Do you know the way to San Jose?

Sa e 392
nJ Jos
os
e San
29
4

Sa
n
Jo
San Jose 596 se
25
0
Distance Vector Table Synthesis
 Neighbors exchange
table entries
 Determine current best
Local Signpost
 Direction next hop
 Inform neighbors
 Distance
 Periodically
 After changes
Routing Table
For each destination list: dest next dist
 Next Node

 Distance
Shortest Path to SJ
Focus on how nodes find their shortest
path to a given destination node, i.e. SJ San
Jose

Dj
Cij j
i
If Di is the shortest distance to SJ from i
Di and if j is a neighbor on the shortest path,
then Di = Cij + Dj
But we don’t know the shortest paths
Router i only has local info
from neighbors
San
Dj' Jose
j'
Cij'
Dj
Cij j
i
Di Cij” Pick current
j" Dj" shortest path
How Distance Vector Works

San
3 Hops
2 Hops
1 Hop
From SJ Jose
From SJ
From SJ
How Distance Vector Works SJ sends
accurate info

San
3 Hops
2 Hops
1 Hop
From SJ Jose
From SJ
From SJ
How Distance Vector Works

San
3 Hops
2 Hops
1 Hop
From SJ Jose
From SJ
From SJ

Hop-1 nodes
calculate current
(next hop, dist), &
send to neighbors
San
3 Hops
2 Hops
1 Hop
From SJ Jose
From SJ
From SJ

Current info about SJ


ripples across network,
Shortest Path Converges
Bellman-Ford Algorithm
 Consider computations for one destination d
 Initialization
 Each node table has 1 row for destination d
 Distance of node d to itself is zero: Dd=0
 Distance of other node j to d is infinite: Dj=, for j d
 Next hop node nj = -1 to indicate not yet defined for j  d
 Send Step
 Send new distance vector to immediate neighbors across local link
 Receive Step
 At node j, find the next hop that gives the minimum distance to d,
 Minj { Cij + Dj }
 Replace old (nj, Dj(d)) by new (nj*, Dj*(d)) if new next node or distance
 Go to send step
Iteration Node 1 Node 2 Node 3 Node 4 Node 5

Initial (-1, ) (-1, ) (-1, ) (-1, ) (-1, )


1
2
3

Table entry Table entry


@ node 1 @ node 3
for dest SJ for dest SJ
2 3
1 1
5 2
San
4
3 1 3 6 Jose
4 2
2 5
Iteration Node 1 Node 2 Node 3 Node 4 Node 5

Initial (-1, ) (-1, ) (-1, ) (-1, ) (-1, )


1 (-1, ) (-1, ) (6,1) (-1, ) (6,2)
2
3

D3=D6+1
n3=6
D6=0
2 3 1
1 1
5 2
0
3
4 San
1 3 6
Jose
2 4 5 2

2
D5=D6+2 D6=0
n5=6
Iteration Node 1 Node 2 Node 3 Node 4 Node 5

Initial (-1, ) (-1, ) (-1, ) (-1, ) (-1, )


1 (-1, ) (-1, ) (6, 1) (-1, ) (6,2)
2 (3,3) (5,6) (6, 1) (3,3) (6,2)
3

3 2 1
3
1 1
5 2
3 0
3
4 San
1 3 6
Jose
2 4 2
5
6 2
Iteration Node 1 Node 2 Node 3 Node 4 Node 5

Initial (-1, ) (-1, ) (-1, ) (-1, ) (-1, )


1 (-1, ) (-1, ) (6, 1) (-1, ) (6,2)
2 (3,3) (5,6) (6, 1) (3,3) (6,2)
3 (3,3) (4,4) (6, 1) (3,3) (6,2)

3 2
1
3
1 1
5 2
3 0
3
4 San
1 3 6
Jose
2
2 5
4
64 2
 Summary: Shortest-Path
Tree

3 2
1
3
1 1
5 2
3 0
4 San
1 3 6
Jose
2
2 5
6 2

You might also like