Destination-Sequenced Distance-Vector Routing Protocol
Destination-Sequenced Distance-Vector Routing Protocol
Outline
Introduction
Distance-Vector
Introduction
Topology may be quite dynamic No administrative host Hosts with finite power
Introduction
protocol
Simple Less storage space Loop free Short control message (Low overhead) Less power consumption Multiple disjoint routes Fast rerouting mechanism
Introduction
Routing Protocol:
Routing Algorithm
Link-State algorithm:
Each node maintains a view of the network topology Every node maintains the distance of each destination
Distance-Vector algorithm:
Link-State
Like the shortest-path computation method Each node maintains a view of the network topology with a cost for each link Periodically broadcast link costs to its outgoing links to all other nodes such as flooding
Link-State
A
link costs
F B E C D
Distance-Vector
known also as Distributed Bellman-Ford or RIP (Routing Information Protocol) Every node maintains a routing table
all available destinations the next node to reach to destination the number of hops to reach the destination
A
Dest. Next Metric A A 0 B B 1 C B 3
B
Dest. Next Metric A A 1 B B 0 C C 2
C
Dest. Next Metric A B 3 B B 2 C C 0
DSDV Protocol
DSDV Protocol
Each node maintains routing information for all known destinations Routing information must be updated periodically Traffic overhead even if there is no change in network topology Maintains routes which are never used
DSDV Protocol
New Table Entry for Destination Sequence Number Make immediate route advertisement on significant changes in routing table but wait with advertising of unstable routes (damping fluctuations)
DSDV
Destination A B C D
(Table Entries)
Metric 0 1 3 4 Seq. Nr A-550 B-102 C-588 D-312 Install Time 001000 001200 001200 001200 Stable Data Ptr_A Ptr_B Ptr_C Ptr_D
Next A B B B
Sequence number originated from destination. Ensures loop freeness. Install Time when entry was made (used to delete stale entries from table) Stable Data Pointer to a table holding information on how stable a route is. Used to damp fluctuations in network.
Destination Address Metric = Number of Hops to Destination Destination Sequence Number On each advertisement increase own destination sequence number (use only even numbers) If a node is no more reachable (timeout) increase sequence number of this node by 1 (odd sequence number) and set metric =
1. Select route with higher destination sequence number (This ensure to use always newest information from destination) 2. Select the route with better metric when sequence numbers are equal.
DSDV (Tables)
C
Dest. Next A B B B C C Metric Seq. 1 A-550 2 B-100 0 C-588
C
Dest. Next A B B B C C Metric Seq. 2 A-550 1 B-102 0 C-588
Immediate advertisements
Information on new Routes, broken Links, metric change is immediately propagated to neighbors.
Full/Incremental Update:
Full Update: Send all routing information from own table. Incremental Update: Send only entries that has changed. (Make it fit into one single packet)
(D, 0, D-000)
A
Dest. Next Metric A A 0 B B 1 C B 2 Seq. A-550 B-104 C-590
B
Dest. Next Metric Seq. A A 1 A-550 B B 0 B-104 C C 1 C-590
C
Dest. Next Metric A B 2 B B 1 C C 0 D D 1 Seq. A-550 B-104 C-590 D-000
A
Dest. Next Metric A A 0 B B 1 C B 2 Seq. A-550 B-104 C-590
B
Dest. Next Metric Seq. A A 1 A-550 B B 0 B-102 C C 1 C-592 D C 2 D-000
C
Dest. Next Metric A B 2 B B 1 C C 0 D D 1 Seq. A-550 B-102 C-592 D-000
(D, 2, D-100)
(D, 2, D-100)
A
Dest. Next Metric Seq. D B 3 D-100
B
Dest.c Next Metric Seq. D C 2 D-100
C
Dest. Next Metric Seq. D D D-101
2. Immediate propagation C to B:
(update information has higher Seq. Nr. -> replace table entry)
(D, , D-101)
(D, , D-101)
A
Dest. Next Metric Seq. ... D B 4 D-100 3
B
Dest.c Next Metric Seq. ... 2 D C 3 D-100
C
Dest. Next Metric Seq. 1 D B D-100 D
D-101
D-101
D-101
DSDV
P A Q
11 Hops
10 Hops
D makes Broadcast with Seq. Nr. D-102 A receives from P Update (D, 15, D-102) -> Entry for D in A: [D, P, 15, D-102] A must propagate this route immediately. A receives from Q Update (D, 14, D-102) -> Entry for D in A: [D, Q, 14, D-102] A must propagate this route immediately.
(D,0,D-102)
This can happen every time D or any other node does its broadcast and lead to unnecessary route advertisements in the network, so called fluctuations.
DSDV
P A Q
11 Hops
10 Hops
Record last and avg. Settling Time of every Route in a separate table. (Stable Data) Settling Time = Time between arrival of first route and the best route with a given seq. nr. A still must update his routing table on the first arrival of a route with a newer seq. nr., but he can wait to advertising it. Time to wait is proposed to be 2*(avg. Settling Time). Like this fluctuations in larger networks can be damped to avoid unececarry adverdisment, thus saving bandwith.
Summery
Advantages
Simple (almost like Distance Vector) Loop free through destination seq. numbers No latency caused by route discovery
Disadvantages