Reactive proactive protocols
Download
1 / 42

reactive proactive protocols - PowerPoint PPT Presentation


  • 340 Views
  • Updated On :

Reactive & proactive protocols. Reactive protocols Dynamic Source Routing (DSR) [Johnson96] Ad Hoc On-Demand Distance Vector Routing (AODV) [Perkins99Wmcsa] Link reversal algorithm [Gafni81] Proactive protocols Optimized Link State Routing (OLSR) [Jacquet00ietf,Jacquet99Inria]

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'reactive proactive protocols' - elina


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Reactive proactive protocols l.jpg
Reactive & proactive protocols

  • Reactive protocols

    • Dynamic Source Routing (DSR) [Johnson96]

    • Ad Hoc On-Demand Distance Vector Routing (AODV) [Perkins99Wmcsa]

    • Link reversal algorithm [Gafni81]

  • Proactive protocols

    • Optimized Link State Routing (OLSR) [Jacquet00ietf,Jacquet99Inria]

    • Destination-Sequenced Distance-Vector (DSDV) [Perkins94Sigcomm]


Link reversal algorithm motivation l.jpg
Link reversal algorithm: motivation

  • Find alternative routes when primary route fails

  • Desired properties

    • not by flooding

    • distributed algorithm

    • loop free


Problem statement l.jpg
Problem statement

  • single destination (can be relaxed)

  • links are bi-directional

  • but assume directions

    • routes from sources to destination: acyclic directed graph (ADG)

  • destination oriented ADG

    • every source has a route to destination

  • destination disoriented ADG

  • original graph: connected, destination oriented

  • problem: given a destination disoriented ADG, how to reverse link directions to get a destination oriented ADG?



Problem illustration ii l.jpg
Problem illustration (II)

A

B

F

Links are bi-directional

But algorithm imposes

logical directions on them

C

E

G

Maintain a directed acyclic

graph (DAG) for each

destination, with the destination

being the onlysink

This DAG is fordestination

node D

D


Problem illustration iii l.jpg
Problem illustration (III)

A

B

F

C

E

G

Link (G,D) broke

D

  • Node G has no outgoing links

  • Only C has route to D


Two algorithms l.jpg
Two algorithms

  • Full reversal

  • Partial reversal

  • both runs in iterations, stop when all nodes (excluding sink) has at least one outgoing link (why?)


Full reversal l.jpg
Full reversal

A

B

F

C

E

G

Link (G,D) broke

D

Any node, other than the destination, that has no outgoing links

reverses all its incoming links.

Node G has no outgoing links


Full reversal9 l.jpg
Full reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

D

Now nodes E and F have no outgoing links


Full reversal10 l.jpg
Full reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

D

Now nodes B and G have no outgoing links


Full reversal11 l.jpg
Full reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

D

Now nodes A and F have no outgoing links


Full reversal12 l.jpg
Full reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

D

Now all nodes (other than destination D) have an outgoing link


Full reversal13 l.jpg
Full reversal

A

B

F

C

E

G

D

DAG has been restored with only the destination as a sink


Full reversal discussion l.jpg
Full reversal discussion

  • Will it ever stop?

  • Is it loop free?

  • Is it flooding?

  • If the graph is connected, then full reversal terminates after a finite # of iterations.

  • Directed graph at each iteration is a acyclic.

  • The direction of any link between two nodes that have a direct path to the destination in the initial ADG will never be reversed.


Partial reversal l.jpg
Partial reversal

  • A node reverses incoming links from only those neighbors who have not reversed links “previously”

    • If all neighbors have reversed links, then the node reverses all its incoming links


Partial reversal16 l.jpg
Partial reversal

A

B

F

C

E

G

Link (G,D) broke

D

Node G has no outgoing links


Partial reversal17 l.jpg
Partial reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

Represents a

node that has

reversed links

D

Now nodes E and F have no outgoing links


Partial reversal18 l.jpg
Partial reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

D

Nodes E and F do not reverse links from node G

Now node B has no outgoing links


Partial reversal19 l.jpg
Partial reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

D

Now node A has no outgoing links


Partial reversal20 l.jpg
Partial reversal

A

B

F

C

E

G

Represents a

link that was

reversed recently

D

Now all nodes (except destination D) have outgoing links


Partial reversal21 l.jpg
Partial reversal

A

B

F

C

E

G

D

DAG has been restored with only the destination as a sink


Partial reversal discussion l.jpg
Partial reversal discussion

  • Will it ever stop?

  • Is it loop free?

  • Is it flooding?

  • If the graph is connected, then partial reversal terminates after a finite # of iterations.

  • Directed graph at each iteration is a acyclic.

  • The direction of any link between two nodes that have a direct path to the destination in the initial ADG will never be reversed.


Full reversal another description l.jpg
Full reversal: another description

  • Routing as water flow

  • Each node has a “height”

    • node i has height αi

    • “water” flows from i to j if αi >αj

    • Reverse direction: reselect height

  • Destination-disoriented ADG

    • node w/o outgoing link: its height is local minimum

  • Full reversal

    • Node w/o outgoing link reselect height to become a local maximum

    • Broadcast new height


Partial reversal another description l.jpg
Partial reversal: another description

  • Through numbering scheme (“heights”)

  • More complicated

  • See paper

  • Proof of properties of full & partial reversal: see paper


Link reversal algorithm advantages l.jpg
Link reversal algorithm advantages

  • Not flooding

    • attempt to limit updates to routing tables at nodes in the vicinity of a broken link

    • Partial reversal tends to be better than full reversal

  • Each node may potentially have multiple routes to a destination


Link reversal algorithm disadvantages l.jpg
Link reversal algorithm disadvantages

  • Need a mechanism to detect link failure

    • hello messages may be used

    • but hello messages can add to contention

  • Broadcast of link reversal messages

  • If network is partitioned, link reversals continue indefinitely


Link reversal in a partitioned network l.jpg
Link reversal in a partitioned network

A

B

F

C

E

G

D

This DAG is fordestination node D


Full reversal in a partitioned network l.jpg
Full reversal in a partitioned network

A

B

F

C

E

G

D

A and G do not have outgoing links


Full reversal in a partitioned network29 l.jpg
Full reversal in a partitioned network

A

B

F

C

E

G

D

E and F do not have outgoing links


Full reversal in a partitioned network30 l.jpg
Full reversal in a partitioned network

A

B

F

C

E

G

D

B and G do not have outgoing links


Full reversal in a partitioned network31 l.jpg
Full reversal in a partitioned network

A

B

F

C

E

G

D

E and F do not have outgoing links


Full reversal in a partitioned network32 l.jpg
Full reversal in a partitioned network

A

B

F

In the partition

disconnected from

destination D, link

reversals continue, until

the partitions merge

Similar scenario can

occur with partial

reversal method too

One solution:

Temporally-Ordered Routing

Algorithm (TORA)

C

E

G

D


Reactive proactive protocols33 l.jpg
Reactive & proactive protocols

  • Reactive protocols

    • Dynamic Source Routing (DSR) [Johnson96]

    • Ad Hoc On-Demand Distance Vector Routing (AODV) [Perkins99Wmcsa]

    • Link reversal algorithm [Gafni81]

  • Proactive protocols

    • Optimized Link State Routing (OLSR) [Jacquet00ietf,Jacquet99Inria]

    • Destination-Sequenced Distance-Vector (DSDV) [Perkins94Sigcomm]


Classical link state routing l.jpg
Classical link state routing

  • Each node periodically floods status of its links

  • Each node re-broadcasts link state information received from its neighbor

  • Each node keeps track of link state information received from other nodes

  • Each node uses above information to determine next hop to each destination


Optimized link state routing olsr l.jpg
Optimized Link State Routing (OLSR)

  • Reduce link state information flooding

  • A broadcast from node X is only forwarded by its multipoint relays (MPRs)

  • MPR of node X are its neighbors s.t. each two-hop neighbor of X is a one-hop neighbor of at least one MPR of X

    • Each node transmits its neighbor list in periodic beacons, s.t. all nodes can know their 2-hop neighbors, in order to choose the MPRs


Optimized link state routing olsr36 l.jpg
Optimized Link State Routing (OLSR)

  • Nodes C and E are multipoint relays of node A

F

B

J

A

E

H

C

K

G

D

Node that has broadcast state information from A


Optimized link state routing olsr37 l.jpg
Optimized Link State Routing (OLSR)

  • Nodes C and E forward information received from A

F

B

J

A

E

H

C

K

G

D

Node that has broadcast state information from A


Optimized link state routing olsr38 l.jpg
Optimized Link State Routing (OLSR)

  • Nodes E and K are multipoint relays for node H

  • Node K forwards information received from H

    • E has already forwarded the same information once

F

B

J

A

E

H

C

K

G

D

Node that has broadcast state information from A


Destination sequenced distance vector dsdv l.jpg
Destination-Sequenced Distance-Vector (DSDV)

  • Each node maintains a routing table

    • next hop towards each destination

    • a cost metric for the path to each destination

    • a destination sequence number that is created by the destination itself

    • Sequence numbers used to avoid formation of loops

  • Each node periodically forwards the routing table to its neighbors

    • Each node increments and appends its sequence number when sending its local routing table

    • This sequence number will be attached to route entries created for this node


Destination sequenced distance vector dsdv40 l.jpg
Destination-Sequenced Distance-Vector (DSDV)

  • Assume that X receives routing information from Y about a route to Z

  • S(X): destination sequence # for node Z as stored at node X

  • S(Y): destination sequence # sent by Y with its routing table to node X

Z

X

Y


Destination sequenced distance vector dsdv41 l.jpg
Destination-Sequenced Distance-Vector (DSDV)

  • Node X takes the following steps:

    • If S(X) > S(Y), then X ignores the routing information received from Y

    • If S(X) = S(Y), and cost of going through Y is smaller than the route known to X, then X sets Y as the next hop to Z

    • If S(X) < S(Y), then X sets Y as the next hop to Z, and S(X) is updated to equal S(Y)

Z

X

Y


Other schemes l.jpg
Other schemes

  • Asymmetric responsibilities

    • giving special responsibilities to a subset of nodes (even if all nodes are physically identical)

  • Hybrid protocols

    • Proactive & reactive routing

  • Geographic routing

    • Utilizing geographic information

  • Many more…


ad