1 / 42

Reactive & proactive protocols

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]

elina
Download Presentation

Reactive & proactive protocols

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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]

  2. Link reversal algorithm: motivation • Find alternative routes when primary route fails • Desired properties • not by flooding • distributed algorithm • loop free

  3. 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?

  4. Problem illustration (I) A B F C E G D

  5. 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

  6. 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

  7. Two algorithms • Full reversal • Partial reversal • both runs in iterations, stop when all nodes (excluding sink) has at least one outgoing link (why?)

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. Full reversal A B F C E G D DAG has been restored with only the destination as a sink

  14. 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.

  15. 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

  16. Partial reversal A B F C E G Link (G,D) broke D Node G has no outgoing links

  17. 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

  18. 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

  19. Partial reversal A B F C E G Represents a link that was reversed recently D Now node A has no outgoing links

  20. 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

  21. Partial reversal A B F C E G D DAG has been restored with only the destination as a sink

  22. 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.

  23. 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

  24. Partial reversal: another description • Through numbering scheme (“heights”) • More complicated • See paper • Proof of properties of full & partial reversal: see paper

  25. 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

  26. 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

  27. Link reversal in a partitioned network A B F C E G D This DAG is fordestination node D

  28. Full reversal in a partitioned network A B F C E G D A and G do not have outgoing links

  29. Full reversal in a partitioned network A B F C E G D E and F do not have outgoing links

  30. Full reversal in a partitioned network A B F C E G D B and G do not have outgoing links

  31. Full reversal in a partitioned network A B F C E G D E and F do not have outgoing links

  32. 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

  33. 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]

  34. 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

  35. 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

  36. 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

  37. 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

  38. 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

  39. 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

  40. 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

  41. 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

  42. 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…

More Related