31
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC) Lecture 5 : Link Reversal Routing Lecture 5.1 : Basic ideas behind Link Reversal Routing Lecture 5.2 : The Gafni-Bertsekas algorithm for Link Reversal Routing

05 1 mobile_computing

Embed Size (px)

Citation preview

Page 1: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Lecture 5 : Link Reversal Routing

Lecture 5.1 : Basic ideas behind Link ReversalRouting

Lecture 5.2 : The Gafni-Bertsekas algorithm forLink Reversal Routing

Page 2: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Link Reversal Routing (LRR)

Link Reversal Routing is suitable for ad hoc mobile networks that do not fall under thefollowing two categories : – The rate of topological changes are not so fast as to

make flooding the only possible routing method.– Also, the changes are not so slow that it is possible to

maintain shortest paths efficiently. However, the success of the LRR methoddepends on other factors like network size, network topology and available bandwidth.

Page 3: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

General Approach

The main objective of the LRR approach is to reduce the number of control messages due to topological changes.

The LRR approaches do not try to maintainextensive routing tables like proactive protocols.

Instead, the main aim of all LRR approaches isto maintain a directed acyclic graph (DAG) rooted at the destination.

Page 4: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Directed Acyclic Graph

The destination is the only node that may haveonly incoming links. All other nodes that haveincoming links must also have outgoing links.

We will talk about only a single destination and the DAG associated with it.

However, it should be noted that at any time all the nodes in the network may be destinations of messages from other nodes.

Page 5: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Directed Acyclic Graph

Each such destination will have a rooted DAG associated with it.

If we consider a single destination D, a rootedDAG provides multiple paths to D.

However, if we consider another node N, thereis no knowledge in N that can be used by N to decide its position in the DAG relative to D.

Page 6: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

An Example

Dest

Each node only knows its one-hop neighbours and does not get any information from other nodes.

Page 7: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

An Example

Dest

This DAG is drawn assuming only one destination.

In general there may be many destinations and eachnode except the destination will try to maintain at least one outgoing link to participate in the DAG.

Page 8: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

An Example

Dest

Since the overall DAG has no cycles, no message will loop around a cycle and each message will eventuallyreach its destination.

Page 9: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Difference from Other Protocols

Unlike table-driven protocols like DSDV, theLRR approaches do not require global information. Unlike reactive protocols like DSR and AODV, there is no need to find a path to a destinationthrough route request messages. LRR approaches have lower overheads in termsof control packets as well as lower latency in finding paths.

Page 10: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Maintaining the DAG

One of the key issues in all LRR based protocolsis to maintain the DAG correctly. This is donedifferently in different protocols.

We will first discuss the situation when a nodeneeds to take some action for maintaining theoverall DAG.

We will discuss the maintenance procedure fordifferent protocols later.

Page 11: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

What Triggers Route or DAG Maintenance

i j

k

For a node i, if there is a directed edge from i to j, then i is called the upstream neighbour of j and j is called the downstream neighbour of i.

A node needs to initiate route maintenance if ithas lost all of its downstream neighbours.

Page 12: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Triggering DAG Maintenance

i

upstream

downstream

DAG maintenance only affects those nodes for whom all previous directed paths pass through node i.Hence, DAG maintenance has mostly local effects in LRR protocols.

Page 13: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

The General Scenario for Multiple Destinations

d1d2d3

d4

i j

For two neighbours i and j, i can be both upstream and downstream neighbour of j depending on the destination.

For destinations d1, d2 and d4, i is the upstreamneighbour of j. For d3, i is the downstream neighbour of j.

The status of each link is stored in each node tagged withthe destination ID.

Page 14: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Gafni-Bertsekas (GF) Algorithm

The GF algorithm was first proposed for routingin packet radio networks. The aim was to solvethe following problem : – Given a connected, destination-disoriented DAG,

transform it into a destination-oriented DAG byreversing the directions of some of its links.

We consider only one destination node, howeverthe algorithm can be executed concurrently formultiple destination nodes.

Page 15: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Some Definitions

A DAG is destination-oriented, if for every noden there exists a directed path originating at nand terminating at the destination.

Otherwise, the DAG is destination-disoriented.

The whole idea behind the GF algorithm is : Given a destination, change the directions of some of the links in the DAG so that it becomesdestination-oriented.

Page 16: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

A Destination-Oriented DAG

Dest

We can make the DAG destination-disoriented if wechange it so that there is at least one node (other thanthe destination) with no outgoing edges.

Page 17: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

A Simple Theorem

Theorem : A DAG is destination-disoriented ifand only if there exists a node other than thedestination that has no outgoing link. Proof : if :

Suppose there is a node n (other than thedestination) which has no outgoing link. Clearly, n does not have a path to the destination since ithas no outgoing links.

Page 18: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

A Simple Theorem

Only if : Suppose there is at least one node n such that n does not have a path to thedestination. Since our network is a DAG, it is not possiblethat a path from n will loop around a cycle.

Hence paths from n will fail to reach thedestination only if they reach a node without anyoutgoing link.

Page 19: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Destination-Oriented DAG

Hence, to maintain a destination-oriented DAG, we have to ensure the following :

– Every node except the destination has at least oneoutgoing edge. This is ensured by reversing link directions in the DAG.

– The underlying network should remain a DAG whenwe perform link reversals.

Page 20: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal and Partial Reversal Methods

The GF algorithm provides two methods for link reversal : full reversal and partial reversal.

Full Reversal : If a node n (other than thedestination) has no outgoing links, it reversesthe directions of all of its incoming links.

Full reversals propagate through the networkuntil each node (except the destination) has at least one outgoing link.

Page 21: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal Example

1 2 3

4 5 6

dest

Page 22: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal Example

1 2 3

4 5 6

dest

Link failure

Nodes that reverse

Page 23: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal Example

Nodes that reverse

1 2 3

4 5 6

dest

Link failure

Page 24: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal Example

Nodes that reverse

1 2 3

4 6

dest

Link failure

5

Page 25: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal Example

Nodes that reverse

1 2 3

4 6

dest

Link failure

5

Page 26: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal Example

Nodes that reverse

1 2 3

4 6

dest

Link failure

5

Page 27: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal is Loop Free

Assume that a loop is formed when a node n does a full reversal.

In that case, one of the nodes on the loop mustbe n.

However, n has only outgoing links after the fullreversal. Hence, n cannot be part of a loop.

Page 28: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

Full Reversal Does not Oscillate

The GF algorithm assumes that the network isalways connected. Hence, there is at least one node P with an outgoing link to the destination.P will never execute a full reversal and hencethe iteration will stop at P. However, GF algorithm does not work if thenetwork is partitioned. A partitioned network mayresult in infinite oscillation of full reversal.

Page 29: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

GF Fails to Converge for Partitioned Networks

dest

1

2

3 4

5

Link failure

Nodes that reverse

Page 30: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

GF Fails to Converge for Partitioned Networks

dest

1

2

3 4

5

Nodes that reverse

Page 31: 05 1 mobile_computing

Mobile and Wireless Computing

Institute for Computer Science, University of Freiburg

Western Australian Interactive Virtual Environments Centre (IVEC)

GF Fails to Converge for Partitioned Networks

2dest

1

3 4

5

Nodes that reverse