22
Destination-Sequenced Distance-Vector Routing Protocol (DSDV) for Mobile Computers Charles E. Perkins Pravin Bhagwat Mobile Computing, 1996

Highly Dynamic Destination- Sequenced Distance-Vector Routing Protocol (DSDV) for Mobile Computers Charles E. Perkins Pravin Bhagwat Mobile Computing,

  • View
    227

  • Download
    0

Embed Size (px)

Citation preview

Highly Dynamic Destination-Sequenced Distance-Vector Routing

Protocol (DSDV) for Mobile Computers

Charles E. PerkinsPravin Bhagwat

Mobile Computing, 1996

Outline Introduction of ad hoc network Overview of routing methods Goal of this paper DSDV protocol Property of the DSDV protocol Summary

Introduction of Ad Hoc Network Properties of ad-hoc networks

Dynamic and self-starting network No administrative intervention

required Battery-powered

Overview of Routing Methods Link-State algorithm

Distance-Vector algorithm

Distance-Vector Every node maintains a routing

table all available destinations the next node to reach to destination the number of hops to reach the

destination Periodically exchanges route table

with all neighbors to keep routing data up to date

Problems of Distance Vector Loops

C1 1

BA D1

Dest.

NextMetri

c…

… … …D B 3

Dest.

NextMetri

c…

… … …D C 2

Dest.

NextMetri

c…

… … …D B 3

Dest.

NextMetri

c…

… … …D D ∞

Dest.

NextMetri

c…

… … …D D 1

Problems of Distance Vector Counting-to-infinity

(D,2)

(D,4)

(D,3)

(D,5)

(D,2)

(D,4)

1 1D

1

CBA

Dest.

Next Metric …… … …D B 3, 5, …

Dest.

Next Metric …… … …D C 2, 4, 6…

Dest.

Next Metric …… … …D B 3, 5, …

Goal Design a routing method

Preserves the simplicity of RIP Avoids the looping problem

DSDV Protocol DV-based routing protocol Sequence number attached route

table Route advertisement Route updates Problem of fluctuations

DSDV Protocol DV-based routing protocol Sequence number attached route

table Route advertisement Responding to topology change Route selection criteria Problem of fluctuations

Route Table Entry Structure Forwarding table (for routing)

Advertised table (for update)

DestinationNextHop Metric

SequenceNumber

Install Time

Stable Data

A A 0 S550_A T001_A Ptr_AB B 1 S102_B T001_A Ptr_BC B 3 S588_C T002 _A Ptr_CD B 4 S312_D T001_A Ptr_D

Destination MetricSequenceNumber

A 0 S550_AB 1 S102_BC 3 S588_CD 4 S312_D

Route Advertisement Advertise to each neighbor own

routing information Advertised table

Rules to set sequence number Advertisement

increase own destination sequence number (use only even numbers)

Broken link increase sequence number of this node by 1

(odd sequence number) set metric =

Route Advertisement

(A, 1, A-500)(B, 0, B-102)(C, 1, C-588)

(A, 1, A-500)(B, 0, B-102)(C, 1, C-588)

CBA

B increases Seq. from 100 -> 102B broadcasts routing information to Neighbors A, C including destination sequence numbers

1 1

Dest.

NextMetri

cSeq

A A 0 A-550B B 1 B-102C B 2 C-588

Dest.

NextMetri

cSeq

A A 1 A-550B B 0 B-102C C 1 C-588

Dest. NextMetri

cSeq.

A B 2 A-550B B 1 B-102C C 0 C-588

Responding to Topology Change

Immediate advertisements New routes, broken links, metric

changes Full/Incremental Update

Full Update: Send all routing information from own table.

Incremental Update: Send only entries that has changed.

1.New Node

CBA

Dest.

NextMetri

cSeq.

A A 0 A-550B B 1 B-104C B 2 C-590

Dest.

NextMetri

cSeq.

A A 1 A-550B B 0 B-104C C 1 C-590

Dest.

NextMetri

cSeq.

A B 2 A-550B B 1 B-104C C 0 C-590D D 1 D-000

D

(D, 0, D-000)

1. D broadcast for first timeSend Sequence number D-000

2. Insert entry for D with sequence number D-000Then immediately broadcast own table

(A, 2, A-550)(B, 1, B-102)(C, 0, C-592)(D, 1, D-000)

(A, 2, A-550)(B, 1, B-102)(C, 0, C-592)(D, 1, D-000)

3. C increases its sequence number to C-592 then broadcasts its new table.

………………

4. B gets this new information and updates its table…….

Dest.

NextMetri

cSeq.

A B 2 A-550B B 1 B-104C C 0 C-590

2.Broken Link

CBA D

(D, 2, D-100)(D, 2, D-100)

2. B does its broadcast-> no affect on C (C knows that B has stale information because C has higher seq. number for destination D) -> no loop -> no count to infinity 1. Node C detects broken Link:

-> Increase Seq. Nr. by 1(only case where not the destination sets the sequence number -> odd number)

Dest.

NextMetri

cSeq.

… … …D B 3 D-

100

Dest.

NextMetri

cSeq.

… … …D C 2 D-

100

Dest.

NextMetri

cSeq.

… … …D D D-

101

3.Broken Link - Immediate Advertisement

Dest.

NextMetri

cSeq.

… … … ...

D B 3D-

100

D B D-101

Dest.

NextMetri

cSeq.

… … … ...

D C 2D-

100

D C D-101

Dest.

NextMetri

cSeq.

… … …D D 1

D-100

D D D-101

CBA D

(D, , D-101)

3. Immediate propagation B to A:(update information has higher Seq. Nr. -> replace table entry)

(D, , D-101)

2. Immediate propagationC to B:(update information has higher Seq. Nr. -> replace table entry)

1. Node C detects broken Link:-> Increase Seq. Nr. by 1(only case where not the destination sets the sequence number -> odd number)

Route Selection Criteria Update information is compared to

own routing table 1. Higher destination sequence

number 2. Better metric when sequence

numbers are equal.

Problem of Fluctuations Two routes with identical sequence

numbers are received in the wrong order Leads to unnecessary route

advertisements

Problem of Fluctuations

Dest. Metric

D 12

A

BC

D

Mobile Host Collection 1

Mobile Host Collection 2

Dest. Metric

D 11

Damping Fluctuations Settling time: time between arrival

of first route and the best route with a given sequence number Last settling time Average settling time

Delay: Average_Settling_Time × 2

Summary Advantages

Simple Loop free No latency caused by route discovery

Disadvantages Overheads in maintaining route table routing information may never be

used