Lecture 5 : Link Reversal Routing
description
Transcript of Lecture 5 : Link Reversal Routing
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
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 the following 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 method depends on other factors like network size, network topology and available bandwidth.
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 maintain extensive routing tables like proactive protocols.
Instead, the main aim of all LRR approaches is to maintain a directed acyclic graph (DAG) rooted at the destination.
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 have only incoming links. All other nodes that have incoming 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.
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 rooted DAG provides multiple paths to D.
However, if we consider another node N, there is no knowledge in N that can be used by N to decide its position in the DAG relative to D.
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.
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 each node except the destination will try to maintain at least one outgoing link to participate in the DAG.
Mobile and Wireless Computing
Institute for Computer Science, University of Freiburg
Western Australian Interactive Virtual Environments Centre (IVEC)
An Example
Since the overall DAG has no cycles, no message will loop around a cycle and each message will eventually reach its destination.
Dest
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, the LRR approaches do not require global information.
Unlike reactive protocols like DSR and AODV, there is no need to find a path to a destination through route request messages.
LRR approaches have lower overheads in terms of control packets as well as lower latency in finding paths.
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 protocols is to maintain the DAG correctly. This is done differently in different protocols.
We will first discuss the situation when a node needs to take some action for maintaining the overall DAG.
We will discuss the maintenance procedure for different protocols later.
Mobile and Wireless Computing
Institute for Computer Science, University of Freiburg
Western Australian Interactive Virtual Environments Centre (IVEC)
What Triggers Route or DAG Maintenance
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 it has lost all of its downstream neighbours.
i j
k
Mobile and Wireless Computing
Institute for Computer Science, University of Freiburg
Western Australian Interactive Virtual Environments Centre (IVEC)
Triggering DAG Maintenance
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.
i
upstream
downstream
Mobile and Wireless Computing
Institute for Computer Science, University of Freiburg
Western Australian Interactive Virtual Environments Centre (IVEC)
The General Scenario for Multiple Destinations
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 upstream neighbour of j. For d3, i is the downstream neighbour of j.
The status of each link is stored in each node tagged with the destination ID.
d1
d2
d3
d4
i j
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 routing in packet radio networks. The aim was to solve the following problem : – Given a connected, destination-disoriented DAG,
transform it into a destination-oriented DAG by reversing the directions of some of its links.
We consider only one destination node, however the algorithm can be executed concurrently for multiple destination nodes.
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 node n there exists a directed path originating at n and 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 becomes destination-oriented.
Mobile and Wireless Computing
Institute for Computer Science, University of Freiburg
Western Australian Interactive Virtual Environments Centre (IVEC)
A Destination-Oriented DAG
We can make the DAG destination-disoriented if we change it so that there is at least one node (other than the destination) with no outgoing edges.
Dest
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 if and only if there exists a node other than the destination that has no outgoing link.
Proof : if :
Suppose there is a node n (other than the destination) which has no outgoing link. Clearly, n does not have a path to the destination since it has no outgoing links.
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 the destination.
Since our network is a DAG, it is not possible that a path from n will loop around a cycle.
Hence paths from n will fail to reach the destination only if they reach a node without any outgoing link.
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 one outgoing edge. This is ensured by reversing link directions in the DAG.
– The underlying network should remain a DAG when we perform link reversals.
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 the destination) has no outgoing links, it reverses the directions of all of its incoming links.
Full reversals propagate through the network until each node (except the destination) has at least one outgoing link.
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
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
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
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
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
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
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 must be n.
However, n has only outgoing links after the full reversal. Hence, n cannot be part of a loop.
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 is always connected.
Hence, there is at least one node P with an outgoing link to the destination.
P will never execute a full reversal and hence the iteration will stop at P.
However, GF algorithm does not work if the network is partitioned. A partitioned network may result in infinite oscillation of full reversal.
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
Nodes that reverse
dest
1
2
3 4
5
Link failure
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
Nodes that reverse
dest
1
2
3 4
5
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
Nodes that reverse
2dest
1
3 4
5