Destination-Sequenced Ad-hoc networks Distance-Vector Bellman-ford - - PDF document

destination sequenced
SMART_READER_LITE
LIVE PREVIEW

Destination-Sequenced Ad-hoc networks Distance-Vector Bellman-ford - - PDF document

Outline Destination-Sequenced Ad-hoc networks Distance-Vector Bellman-ford routing protocol DSDV Critique Suitability of DSDV to sensor networks Ritun Patney Ad-hoc Networks Ad-hoc Networks (Cont.) Group of nodes which


slide-1
SLIDE 1

1

Destination-Sequenced Distance-Vector

Ritun Patney

Outline

Ad-hoc networks Bellman-ford routing protocol DSDV Critique Suitability of DSDV to sensor networks

Ad-hoc Networks

Group of nodes which form a network in

the absence of any infrastructure network

  • r centralized administration (base

station, etc.)

All nodes can talk to

  • ne another directly

Ad-hoc Networks (Cont.)

A and B can talk B and C can talk A and C can’t talk directly B acts as a router to forward packets between A

and C

A B C Every node in an ad-hoc network acts as a router

Bellman-Ford routing protocol

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

slide-2
SLIDE 2

2

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. Let d(u) be the cost to reach u from source, d(v) be the cost to reach v from the source, and d(u, v) be the cost of an edge between nodes u and v

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. d(u), d(v), d(u, v)

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)
  • 3. For edge AB, u = A, v = B, d(u) = 0, d(v) = ∞, d(u, v) = 1

i. Since, d(v) > d(u) + d(u, v), assign d(v) = 0 + 1 ∞ ∞ ∞ ∞

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. d(u), d(v), d(u, v)

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)
  • 3. For edge AB, u = A, v = B, d(u) = 0, d(v) = ∞, d(u, v) = 1

i. Since, d(v) > d(u) + d(u, v), assign d(v) = 0 + 1 ∞ 1 ∞ ∞

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. d(u), d(v), d(u, v)

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)
  • 3. For edge AB, u = A, v = B, d(u) = 0, d(v) = ∞, d(u, v) = 1

i. Since, d(v) > d(u) + d(u, v), assign d(v) = 0 + 1

  • 4. Considering AC

2 1 ∞ ∞

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. d(u), d(v), d(u, v)

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)
  • 3. For edge AB, u = A, v = B, d(u) = 0, d(v) = ∞, d(u, v) = 1

i. Since, d(v) > d(u) + d(u, v), assign d(v) = 0 + 1

  • 4. Considering AC, now CB

2 1 ∞ ∞

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. d(u), d(v), d(u, v)

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)
  • 3. For edge AB, u = A, v = B, d(u) = 0, d(v) = ∞, d(u, v) = 1

i. Since, d(v) > d(u) + d(u, v), assign d(v) = 0 + 1

  • 4. Considering AC, CB, now CE

2 1 ∞ 6

slide-3
SLIDE 3

3

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. d(u), d(v), d(u, v)

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)
  • 3. For edge AB, u = A, v = B, d(u) = 0, d(v) = ∞, d(u, v) = 1

i. Since, d(v) > d(u) + d(u, v), assign d(v) = 0 + 1

  • 4. Considering AC, CB, CE, now ED

2 1 10 6

Bellman-ford algorithm

A C B D E 1 2 3 2 4 4 Problem – To find the shortest path to a node from A

  • 1. Assign ‘A’ a cost of 0. Assign all others a cost of infinity
  • 2. Relax every edge in the network

i. d(u), d(v), d(u, v)

  • ii. If d(v) > d(u) + d(u, v), then d(v) = d(u) + d(u, v)
  • 3. For edge AB, u = A, v = B, d(u) = 0, d(v) = ∞, d(u, v) = 1

i. Since, d(v) > d(u) + d(u, v), assign d(v) = 0 + 1

  • 4. Considering AC, CB, CE, ED, now BD

2 1 3 6

Bellman-Ford Routing

Every node maintains a routing table entry

for every other node <destination, cost, next hop>

Every node sends list of <destination,

cost> to every other neighbor

A node chooses the next hop per

destination based on the node through which it is least costly – can be hop count, bandwidth, etc.

Problems with Bellman-Ford

Count to Infinity, Loops 3 4 A B C Routing Table at B Routing Table at C A 3 A C 4 C Next Hop Cost Destination B 7 A B 4 B Next Hop Cost Destination

Problems with Bellman-Ford

Count to Infinity, Loops 3 4 A B C Routing Table at B Routing Table at C C 11 A C 4 C Next Hop Cost Destination B 7 A B 4 B Next Hop Cost Destination

Problems with Bellman-Ford

Count to Infinity, Loops 3 4 A B C Routing Table at B Routing Table at C C 11 A C 4 C Next Hop Cost Destination B 15 A B 4 B Next Hop Cost Destination

slide-4
SLIDE 4

4

Problems with Bellman-Ford

Count to Infinity, Loops 3 4 A B C Routing Table at B Routing Table at C C 18 A C 4 C Next Hop Cost Destination D 14 A B 4 B Next Hop Cost Destination D 12 2

DSDV

DSDV

Proactive, table-driven

protocol

All nodes maintain a

Route Table Entry for every other destination in the network

Route Table Entry –

contains next hop for a destination, number

  • f hops to reach the

destination, a sequence number

A B C D SeqC C C SeqA 2 B A SeqD 1 D D SeqB 1 B B Seq. Num. Hop Count Next Hop Node Routing Table Entry at C

Building Routing Tables

Nodes broadcast routing updates Incremental updates - like new nodes, link

breakage – fit in one packet - frequent

Full Dump updates – contain the whole routing

table – may take multiple packets - infrequent

Sequence Number – helps removing stale routes,

and avoids loops

Generally always stamped by the destination in

even number increments

In case of link failures, neighbors increment

the sequence number of destination with the failed link by 1 – odd sequence numbers

Building Routing Tables (Cont.)

Nodes can receive routing path to a destination

via multiple neighbors.

Choose route with a new sequence number If sequence number same, choose route with a

lesser hop count

Node Addition

A B C K <Node, Next Hop, Metric, Sequence NumberNode> A, A, 0, 456 B, B, 1, 258 C, B, 2, 560 <K, 0, 384> <K, 1, 384> <K, 2, 384>

slide-5
SLIDE 5

5

Node Addition

A B C K <Node, Next Hop, Metric, Sequence NumberNode> A, A, 0, 456 B, B, 1, 258 C, B, 2, 560 K, B, 3, 384 <K, 0, 384> <K, 1, 384> <K, 2, 384>

Link Failure

A B C K <Node, Next Hop, Metric, Sequence NumberNode> A, A, 0, 456 B, B, 1, 258 C, B, 2, 560 K, B, 3, 384 L, B, 4, 834 L C, C, 0, 560 ….. K, K, 0, 384 L, K, 1, 834

Link Failure (Cont.)

A B C <Node, Next Hop, Metric, Sequence NumberNode> A, A, 0, 456 B, B, 1, 258 C, B, 2, 560 K, B, 3, 384 L, B, 4, 834 <K, ∞, 385> <L, ∞, 835> <K, ∞, 385> <L, ∞, 835> L C, C, 0, 560 ….. K, K, ∞, 385 L, K, ∞, 835

Link Failure (Cont.)

A B C <Node, Next Hop, Metric, Sequence NumberNode> A, A, 0, 456 B, B, 1, 258 C, B, 2, 560 K, B, ∞, 385 L, B, ∞, 835 <K, ∞, 385> <L, ∞, 835> <K, ∞, 385> <L, ∞, 835> L C, C, 0, 560 ….. K, K, ∞, 385 L, K, ∞, 835

Detecting Link Failure

Detection

If data is flowing over a link, failure of link

layer to deliver a packet can be used to assume link failure

If a node does not hear for long from it’s

established neighbor

Damping Fluctuations

A sends route update R R traverses through X and

Y

B receives R from Y first. B

further advertises R

Soon after, R received via

X (better metric) – B again advertises R.

This causes unnecessary

route updates for all neighbors of B

A B n hops n+1 hops X Y

slide-6
SLIDE 6

6

Damping Fluctuations (Cont.)

B notes time difference between the first

route update R AND the route update R with the best metric.

Before advertising R, wait for the above

average settling time.

Problems with DSDV

No analysis presented Authors throw in many ideas without any

substantial proofs

DSDV lacks multicast capability Routing overhead huge in mobile ad-hoc

networks

Scalability issues not addressed Chooses a route arbitrarily b/w ones

having same sequence numbers, and cost

Multi-path forwarding not addressed

Problems with DSDV (Cont.)

Authors do not mention what should

happen to the sequence numbers if a node reboots

Optimization of full updates can be done –

  • nly needed when a new node joins the

network

Suitability to Sensor Networks

Routing Overhead per amount of useful data

would be larger for sensor networks

Link Quality changes with time – link estimation

is required – probing support absent in DSDV

Not designed for memory constrained systems Absence of neighbor management policy Sensor networks need forwarding to the sink only

via one parent – DSDV finds routes to all destinations

Suitability to Sensor Networks (Cont.)

DSDV relies on inter nodal interaction to

avoid loops, etc. Sensor networks do not take brute force approach e.g. employ packet snooping to learn about neighbors, take action if and when required e.g. break cycles when detected

Thank you!

slide-7
SLIDE 7

7

Classification of Ad-hoc Routing Protocols

Table Driven (Proactive)

Destination-Sequenced Distance-Vector

(DSDV)

Clusterhead Gateway Switch Routing (CGSR)

Source Initiated On-Demand (Reactive)

Ad-hoc On-Demand Distance Vector (AODV) Dynamic Source Routing (DSR) Associativity-Based Routing (ABR)