Bandwidth Efficient Distant Vector Routing for Ad Hoc Networks Ralph Jansen and Bernd Freisleben Department of Electrical Engineering & Computer Science University of Siegen Hölderlinstr. 3 D 57068 Siegen Germany E-Mail: jansen,freisleb@informatik.uni-siegen.de Keywords. ad hoc networks, routing protocols, bandwidth control. Abstract. An ad hoc network is a collection of mobile nodes forming a temporary network without using any existing infrastructure. Limited transmission range, limited bandwidth, and a highly dynamic network topology due to continuously moving nodes require the use of sophisticated non-standard routing protocols. We propose a new routing protocol which extends the well-known distance vector routing to calculate routes by using minimum spanning trees. This approach prevents the count to infinity problem and reduces the number of required messages. An additional option is the limitation of path optimisation, which allows further decrease of routing messages. Simulation experiments show that this approach is an efficient solution to routing in an ad hoc environment. Introduction We address special aspects of mobile ad hoc networks [5], which typically emerge from an ensemble of mobile nodes operating in a particular area. In an ad hoc network each mobile node acts as an intermediate router forwarding the message received by other nodes. All work in an ad hoc network must be achieved in a distributed way among the cooperating nodes. An ad hoc network is only operational if nodes offer their forwarding capabilities to other nodes. Furthermore, since nodes may move while they are communicating, there is
a constant need to update routing tables among the nodes. As this occurs quite frequently, depending on the speed of the nodes, so an efficient algorithm is required. Basically, there are two different classes of routing algorithms which are used for routing in ad hoc networks. The table-driven algorithms operate like routing algorithms in the Internet: they build up tables with routing information according to the current network topology. This approach has the advantage of Internet compatibility and every node has access to tables of currently reachable destinations. A disadvantage is clearly the continuous use of bandwidth for update messages. One algorithm in this class is the destination sequenced distance vector routing (DSDV) [9], which offers a simple approach to avoid the count to infinity problem [0]. A more complicated solution is proposed in the wireless routing protocol (WRP) [6], which is a distance vector routing algorithm based on minimum spanning tree calculation. This solution is bandwidth efficient, but it still does full path optimisation. The source tree adaptive routing (STAR) [2] is based on exchanging link state updates (LSUs) but offers some methods to reduce path optimisation. The second class of routing algorithms in ad hoc networks is called on-demand routing. A path between a source and destination node is only set up and maintained as long as this path is required by the application. This approach is very efficient when there is little need for communication, but if many paths are required the complex construction process for each path will lead to more need for bandwidth exactly at the time this bandwidth is needed for application purposes. Further more, on-demand routing is clearly link based, if an application is relying on the standard packet delivery service of the Internet protocol this must be simulated by setting up a path for each destination. On-demand protocols can save bandwidth because they do not search for the shortest path when a connection is required. The search results usually in an approximation to minimal length. Such a path is not optimised further, only a repair function is used if a path is lost by node movements or low level link failures. Algorithms based on this approach are e.g. Dynamic Source Routing (DSR) [4], associativity based routing (ABR) [] and ad hoc on-demand distance vector routing (AODV) [8]. This paper introduces the tree exchange routing algorithm (TERA), which offers all advantages of distant vector routing, e.g. the limitation of message forwarding to network partitions where they are needed and additionally offers a method to restrict path optimisation to a user-defined degree. Table driven routing algorithms like DSDV or WRP recalculate all shortest paths between source and destination nodes repeatedly, whenever network topology changes. This makes sense in hard wired networks such as the Internet because 2
changes are rare events and the usage of a shortest path offers long term advantages. In ad hoc networks, these parameters are totally different. The maintainance of shortest paths consumes a large amount of bandwidth. Especially networks with fast topology changes will suffer from continuous recalculation of optimised paths. It is more efficient to spend bandwidth only to path detection and repair, but not on optimisation. In networks with fast topology changes, the usage of an optimised path will not produce the yield to compensate for the lost bandwidth which was required to calculate this path. Paths in ad hoc networks are expected to have a short lifetime, so the optimisation will be less efficient whenever time between topology changes decreases. Some previous attempts have been made to reduce necessary bandwidth for routing. The fisheye approach [7] reduces the necessary bandwidth by reducing the frequency of LSUs for routing messages with the distance to destination. The STAR approach is a link-state routing which is capable to reduce messages by restricting the forwarding of LSUs. Our approach based on a variant of distant vector routing which offers a simpler calculation of necessary updates. An approach to bandwidth reduction in on-demand routing was made by Toh [], which uses mobility information to calculate most reliable routes. This approach seems to be efficient, because it combines all advantages of on-demand routing with additional bandwidth reduction, but it belongs to a different class of routing algorithms which is load dependend, as stated above. The rest of the paper is organised as follows. In section 2, we describe the TERA algorithm in detail. Section 3 presents some performance results and we conclude our paper in section 4. 2 The Tree Exchange Routing Algorithm The TERA algorithm is based on asynchronous distributed distant vector routing [] but uses several additional tables to allow path reconstruction. This avoids the count to infinity problem which causes a very slow adaptation to new network topologies and forbids the use of simple distant vector algorithms including the standard routing information protocol [0] in networks with fast topology changes. Figure shows the advantage of tree based routing, the path from any destination to root A stored in the predecessor entries Î. Any path can be backtraced to the root using these entries, enabling the detection and avoidance of any loop. To describe the algorithm we assume a network of nodes, each having an identifier. These nodes are able to communicate with each other via links. The links are assumed to have a cost which is also called distance. The distance between a source and destination is given 3
A E 2 B 4 2 2 2 G F 3 H C D Table entries of A Æ Î A 0 - - B 2 B A C 4 E F D 5 E C E E A F 3 E E G 3 E E H 2 E E Figure : Path recovery in tree exchange routing by and must be positive. Nodes with ½ are called neighbours. If there is no direct way of communication between nodes the distance is assumed to be infinity ½. The distance of a node to itself is assumed to be zero ¼. 2. Data Structure All nodes have an identity and the status of a node is defined by tables: The routing table, showing best available distance to destination. The successor table Æ, showing the id of the neighbour which is used to forward to destination. The predecessor table Î, showing the predecessor node of the chosen shortest path to. The next two tables store all collected information available by messages of neighbours. These tables are later used to calculate the routing tables described above. The neighbour distance table Æ shows the best available distance to destination offered by neighbour. The neighbour predecessor table ÆÎ shows the predecessors in the shortest path to offered by node. Table Æ can be recalculated by backtracing all paths through Î, so that table Æ need not be forwarded to neighbours. 4
2.2 Initialisation All communication between nodes is described in an event-based manner. The state of any node is described by ص Æ Øµ Πص Æ Øµ and ÆΠص. At startup Ø ¼ each node initalisizes its tables: ¼µ ½, and Æ ¼µ ÒÓÒ¼¼ Î ¼µ ÒÓÒ¼¼ Æ ¼µ ½ ÆÎ ¼µ ÒÓÒ¼¼ ¼ 2.3 Updating Neighbours After initialisation, the iteration is started. In the first step, all nodes send the tables, Î to their neighbours. At startup, these tables contain only one valid element, the sending node itself. Every node stores the received information in the tables Æ and ÆÎ. If node receives tables Ø ½µ Î Ø ½µ from neighbour containing the minimum spanning tree used for routing by neighbour, the tables of are updated as follows. First, all old entries have to be deleted. Æ Øµ ½ ÆΠص ÒÓÒ¼¼ After that, the new tree is inserted. All distance reported by neighbour must be increased by the distance from to neighbour : Æ Øµ Ø ½µ. The predecessors remain unchanged ÆÎ Ø ½µ. ص Î After that, a predecessor entry must be corrected. This is necessary because the root of a received minimum spanning tree has no predecessor entry. But at node, the new root of all received trees is node. ÆΠص Finally node recalculates a new minimum spanning tree using the information stored in Æ Øµ and ÆΠص. The new minimum spanning tree is stored in tables ص, Æ Øµ and Πص. 5
If a calculation results in different tables compared to results from previous iteration, the tables ص, Πص must be sent to all neighbours which are ½. All kind of distant vector algorithms use this iteration process which causes information distribution in a step by step manner. With each iteration the information about remote neighbours travels one hop forward through the network. Because of the recalculation in each node, only important information will be sent to neighbours, this is the first step to bandwidth efficiency in routing. It is not necessary to always resend a full minimum spanning tree if an update occurred, there are algorithms available to reduce update messages to minimal size [6] and still guarantee consistency of trees among the communicating nodes. The description of message compression is out of the scope of this paper. 2.4 Calculation of Minimum Spanning Trees A recalculation of the minimum spanning tree is done with an adapted shortest path algorithm of Dijkstra. Every node has a collection of reported minimum spanning trees of its neighbours stored in table Æ and ÆÎ. The trees have been altered during reception to be sub-trees under the root of node. The algorithm of Dijkstra can be immediately applied to extract the minimum spanning tree regarding node. The algorithm of Dijkstra is executed at each node, all calculations are done at one point in time, so indices regarding status Ø are omitted. First the tables, Æ, Î of node are cleared: ½, Æ ÒÓÒ ¼¼ and Î ¼µ. ÒÓÒ¼¼ Table lists the estimated distances to all destinations. These estimations may change during calculation if a better path to a certain destination is found. All nodes with unchangeable distance are members of a list of permanent nodes È. The algorithm also uses a candidate list which contains the identity of all nodes which are candidates for becoming permanent. At start, the destination of the root node is set to zero ¼ and È. The list of candidates is filled with the identities of neighbours of node : ½ and the distance estimation is set to all existing links of node : ½. The successors are set to the neighbours Æ ½. The predecessors are set to : Î ½. The calculation of the minimum spanning tree is done in a loop until there are no more nodes which can get permanent: The candidate with minimal distance offer is searched ÑÒ ¾ 6
, Á identity of best node with distance. the best candidate is made permanent È È Á the candidate is removed from the candidate list Ò Á all successors of Á become candidates ¾ È Ò ÆÎ Æ Á µ Á the distance for these new candidates must be set Î Æ Á µ ¾ È Ò ÆÎ Æ Á µ Á the successors for these new candidates must be set Æ Æ Á µ ¾ È Ò ÆÎ Æ Á µ Á the predecessors for these new candidates must be set Î ÆÎ Æ Á µ ¾ È Ò ÆÎ Æ Á µ Á After the loop is finished, a new minimum spanning tree regarding node is available in tables ص, Æ Øµ, Πص. Now the new tables are compared against the table of the previous calculation, to check if distance of nodes, or their position within a tree has changed. 2.5 Update criteria With unrestricted shortest path calculation, the tables neighbours if at least one of these criteria is true: ص Ø ½µ Æ Øµ Æ Ø ½µ Πص and Πصmust be sent to all ص Î Ø ½µ () Updates are optimised by changing these criteria, thus not allowing every small change to be forwarded immediately. So updates may be limited beyond a threshold which defines the maximum tolerable change in distance that can be suppressed. The criteria with reduced path optimisation is then ص Ø ½µ ص Æ Øµ Æ Ø ½µ (2) The criteria Æ Øµ Æ Ø ½µ remains unchanged because any variation in Æ is a substantial tree modification that cannot be ignored. This term also guarantees that information about new or vanished nodes are immediately forwarded to neighbours. 7
2.6 Route Maintenance There are two major events that must be handled by the routing algorithm during network operation: including new destinations into the routing tables and deleting lost destinations from it. 2.6. Adding nodes If a new neighbour is detected by node, some corrections at Æ and ÆÎ are required to integrate the new link into route calculation. First, the new neighbour with identity Ò must be inserted into table by Æ Ò Ò Ò and a predecessor must be set to link this neighbour as a new sub-tree with ÆÎ Ò Ò. A new minimum spanning tree must be calculated now, as described in section 2.4. If the new neighbour offers some better paths, the check of update criteria described in section 2.5 will be positive and this new information is sent to all neighbours. 2.6.2 Deleting routes A connection loss from node to a neighbour Ò will change the link cost Ò to infinity. Node must update its tables to check if current routes include forwarding to the unreachable neighbour. Table Æ Ò must bet set to ½ and table must be set to ÒÓÒ¼¼. Then a new minimum spanning tree is calculated by node ÆÎ Ò as described in section 2.4. If the update criteria check described in section 2.5 detects that routes must be corrected, the neighbours are updated with this information. 3 Simulation Results We have performed some simulations to examine the degree of possible message reduction and to measure the effects of message reduction to reachability. The simulation is executed with 00 nodes placed in a rectangular area. All nodes are allowed to move and have an equal fixed transmission range. An practical example for this kind of setup is an large construction area, where people with mobile communication devices are moving around. The transmission range of a single devices is limited to 25 or 80 meters, covering only a small part of the area. All people on the area are working together and are well organised, which allows the use of cooperating networks. In this example machines can also be equipped with communication devices to allow remote control of, for example cranes. The movement speed of the nodes ranges from 0. to 3 meters per second which is around 0 kilometres per hour. This range was chosen because we assumed some moving machines in the area. A more detailed description of our simulation system is given in [3]. The results are listed in table. The simulations count the total number of packets required for routing including the beaconing for neighbour detection. During simulation, which is 8
done for one hour movement and networking for each tested speed, random source destination pairs are checked for correct routes. A summarised result on working routes is listed in the second part of each table. Speed 25 meters transmission range Number of required messages full opt. ¼ ¼ ¼ 0. 2999 92395 68302 67495 0.5 550582 958484 84832 857040.0 3038093 879099 667562 673406 2.0 5925305 3638033 32799 320498 3.0 8426375 52987 4546803 455986 Speed Reachable destinations 0. 77.6% 76.0% 75.% 74.9% 0.5 78.7% 76.8% 76.3% 76.3%.0 76.0% 74.2% 73.6% 73.7% 2.0 75.4% 73.2% 72.8% 72.7% 3.0 74.% 72.0% 7.4% 7.4% Speed 80 meters transmission range Number of required messages full opt. ¼ ¼ ¼ 0. 48792 357846 32489 320580 0.5 2593525 95057 7642 762888.0 507479 3806848 34440 3442982 2.0 9792599 73597 6673566 6650802 Speed Reachable destinations 0. 96.28% 95.49% 95.0% 95.2% 0.5 95.2% 94.45% 94.3% 94.09%.0 94.42% 93.62% 93.38% 93.34% 2.0 93.5%6 92.74% 92.40% 92.44% Table : Evaluation of routing performance The second column of the tables shows the result with full path optimisation using our algorithm with criteria in section 2.5. Any standard distant vector algorithm will need this amount of messages for route calculation. The results using ¼ show clearly the effect of reduced path optimisation. For example at high moving speed of 3 meters per second and transmission range of 25 meters, the number of routing messages can be reduced from 8426375 required for full path optimisation to 4546803 at ¼. So, it is possible to reduce the number of required messages by up to 50%. At this level a path is 9
at maximum 50 % longer than the shortest possible path. We also analysed the average path length, which is around 5.0 hops in all simulations with 25 and at 3.2 hops with 80 meters transmission range. Path optimisation shows only minor advantage in our simulations, we just noticed a loss up to 3 % in the number of reachable destinations when it is omitted. The simulation also shows that the reachable gain is limited. There is only a very small additional message reduction at ¼. Here, the second part of the criteria 2 becomes dominant. This can be explained by a minimum amount of messages which are necessary to keep the network functioning. Increasing will not reduce messages beyond this limit. 4 Conclusion In this paper we presented the new routing scheme called tree exchange routing, which provides a bandwidth efficient solution for wireless, mobile ad hoc networks. We have shown that restricting path optimisation to a certain degree does not have a large impact to reachability or path length but will reduce the number of messages drastically. Further research is needed for efficient routing table transfer to neighbours and will include mobility estimations on nodes to further decrease the bandwidth consumption of routing protocols. References [] Dimitri Bertsekas. Data Networks. Prentice-Hall International, 992. [2] J. J. Garcia-Luna-Aceves. Bandwidth efficient link-state routing. In Charles Perkins, editor, Ad Hoc Networking, chapter 0, pages 323 350. Addison-Wesley, 200. [3] Ralph Jansen. Simulating adaptive routing in highly dynamic wireless networks. In Proceedings of the 998 European Simulation Multiconference, 998. [4] David B. Johnson and David A. Maltz. Dynamic source routing in ad hoc wireless networks. In Mobile Computing. Kluwer Academic Publishers, 996. [5] David B. Johnson and David A. Malz. Protocols for adaptive wireless and mobile networking. In IEEE Personal Communications, volume 3, pages 34 42, February 996. [6] Shree Murthy and J. J. Garcia-Luna-Aceves. An efficient routing protocol for wireless networks. In Mobile Networks and Applications, Special Issue on Routing in Mobile Communications Networks, volume /2, pages 83 97, 996. [7] G. Pei, M. Gerla, and T. Chen. Fisheye state routing: A routing scheme for ad hoc wireless networks. In In Proceedings of the IEEE International Conference on Communications, pages 70 74, 2000. [8] Charles Perkins. Ad hoc on demand distance vector (aodv) routing. IETF Drafts for Mobile Ad-hoc Networks (manet), 2 997. [9] Charles Perkins and Pravin Bhagwat. Highly dynamic destination-sequenced distance-vector routing (dsdv) for mobile computers. Proc. ACM SIGCOMM Symposium on Communication Architectures and Protocols, pages 234 244, 994. [0] Martha Steenstrup. Routing in Communication Networks. Prentice Hall, Englewood Cliffs, New Jersey, 995. [] C-K Toh. Wireless ATM and AD-HOC Networks. Kluwer Academic Publishers, 997. 0