Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Ant-DSR: Cache Maintenance Based Routing Protocol for Mobile Ad-Hoc Networks

Mohamed Aissani1, Messaoud Fenouche2, Hadi Sadour2, and Abdelhamid Mellouk1


Laboratory of Images, Signals and Intelligent Systems 120-122, Paul Armangot 94400, Vitry/Seine, France {aissani, mellouk}@univ-paris12.fr 2 Unit of Research in Computer Science PO Box 17 EMP, Bordj-El-Bahri 16111, Algiers, Algeria {mfenouche, hsadour}@gmail.com
1

Abstract
Dynamic Source Routing (DSR) is a reactive routing protocol designed for mobile ad-hoc networks. It is based on two mechanisms including route discovery and route maintenance. In highly dynamic networks, the surplus use of expired routes in the cache of DSR increases the latency and the frequent diffusion of route request packets consumes bandwidth. Consequently, DSR presents handicap in terms of endto-end delay and overhead. In this paper, we propose a new routing protocol, called Ant-DSR, which implements a distributed topology discovery mechanism through mobile agents to maintain DSR cache. Implemented and simulated on ns-2, Ant-DSR shows a better resistance in high mobility and huge load environments in comparison to DSR.

network. However, in dynamic environments, flooding consumes a large bandwidth and causes a significant latency to data packets. An intermediate solution combining the above two approaches, like the hybrid protocol ZRP [3], subdivides the network in different zones in order to facilitate the routing. Other protocols, based on topology discovery by mobile agents [4,5], propose adaptive and intelligent routing to handle frequent topology changes in the adhoc networks. In this paper, section 2 presents a summary of the DSR protocol, section 3 outlines the related work, and in section 4, we propose our Ant-DSR protocol. The simulations and results are provided in section 5. Conclusion and future work is given in section 6.

2. DSR description
In contrast to other multi-hop routing protocols, DSR [6,7] carries out a source routing, which means that the route from the source to the destination is embedded in the header of all the packets. Thus, this protocol does not use routing tables since all the nodes can read the next hop on the packet header. DSR uses also a cache to store routes recently used.

1. Introduction
A wireless mobile ad-hoc network is a collection of autonomous mobile nodes forming a dynamically changing temporary topology. Nodes communicate by radio waves, without pre-existent infrastructure and centralized management. Consequently, nodes are compelled to be self organizing and self configuring in a spontaneous way. A mobile node is considered as a terminal and a router at the same time. The routing protocols in this field are classified in three main categories: reactive protocols, proactive protocols and hybrid protocols. Proactive protocols, like OLSR [1], update the routing tables in the network periodically. These updates consume a large bandwidth when transferring routing information, particularly in wide-area networks. The reactive protocols, like AODV [2], generate routing traffic only when there are data packets to be transmitted. The on-demand route discovery process is accomplished by flooding the

2.1. DSR basic mechanisms


DSR is based on two on-demand triggered mechanisms, namely, the route discovery and the route maintenance. When a source wants to send a data packet to a destination for which it does not have a route yet, it starts the route discovery process by flooding the network with Route REQuest packets (RREQ). Any node receiving the RREQ, forwards it to the remainder of the network except the case, when it is itself the destination or it has a portion of route towards this destination in its cache. Such a node

The Third Advanced International Conference on Telecommunications (AICT'07) 0-7695-2843-0/07 $20.00 2007

answers the source by a Route REPly packet (RREP) and this packet will take the RREQ return path. Throughout this process, the RREQ builds a route and the RREP brings it back to the source via the same route. This is possible when links are bidirectional as in the standard IEEE 802.11. The route found is stored in the cache of nodes for future uses. During the transfer of a packet on a route, if a link between two successive nodes is broken, the route maintenance mechanism is started by sending Route ERRor packet (RERR). This RERR is sent to the source, by the node which has detected the broken link. Then the source will remove all the routes using this broken link from its cache and restarts a RREQ for a new route to keep on transferring data.

2.2. DSR additional mechanisms


Some optimizations on DSR are proposed [6,8]. Among these the most effective are as follows. a) Preventing RREP storms: RREP storms occur when several nodes answer the source from their caches at the same time. This induces MAC layer congestion and slows down the routing. To overcome this difficulty, a random delay period is introduced on each node to distribute sending RREPs progression in the ad-hoc network. b) Limiting RREQ hops: The TTL field in the IP header limits the number of hops that a RREQ can perform. This allows decreasing the flooding negative effects, particularly, in the large networks [9,10]. c) Salvaging of packet: Instead of removing a packet when a link is broken, a node can rescue it by using an alternate route from its cache. This same node sends a RERR to the source informing the invalidity of the old route and indicating the alternative route. d) Shortening of route: If the promiscuous mode is activated, a node can capture a new route shorter than the currently used one. This node eliminates the redundant part and sends the captured route to the source on the superfluous RREPs. e) Spreading of RERRs: To avoid using the invalid routes, each node crossed by a RERR memorizes information on the broken link and endorses it in next RREQs to propagate it with the entire network in order to remove the expired routes from each node cache.

with the changes in the network parameters while learning from the latest routing experiments. Beside this, it continues to provide an effective routing without generating too much control packets. ARA is compared with the two reactive protocols: AODV and DSR, and one proactive protocol DSDV. Simulations have shown that only ARA and DSR deliver more than 95% of data packets with strong mobility [12]. ACT-DSR [13] is considered as a new routing approach which aims at solving the problem of the expired routes in the cache of DSR. In contrast to DSR that does not avoid flooding in discovering new routes, ACT-DSR dynamically updates cache routes. This is carried out by the periodic creation of an active packet, on a randomly chosen node. This active packet will circulate in the network and will record necessary information on topology. At reception of such packet by a node, a module (called Active Helper) is loaded to extract and send information to its neighborhood. The major advantage of this idea is that the module which deals with the treatment of the active packet is independent of DSR. It is loaded only at creation of the active packet on the chosen node, and at the time of its reception by the corresponding node. Compared with DSR, simulations show that ACT-DSR reduces the rate of expired routes and the overhead [13]. Ant-AODV [14] combines the capacities of the reactive protocol AODV and a topology discovery mechanism using mobile agents. The objective of AntAODV is reducing the route discovery latency and the end-to-end delay while offering a better connectivity, and thus, resisting to a high mobility. Ant-AODV tried to reduce the shortcomings of the AODV and Antbased protocols whose comparison by simulation shows the accomplishment of the above-mentioned objective [14].

4. Our proposal: the protocol Ant-DSR


4.1. DSR insufficiencies
As implemented in ns-2 [15], DSR does not use any mechanism to avoid stale routes in the cache, but rather, it prefers the most recently learned routes. The non refreshed routes can negatively affect the cache, although some of them are removed by the arrival of RERRs. A route failure occurs either when the required route is not available in the cache or when the route taken from the cache is stale. In both cases, DSR initiates a flooding for discovering a fresh route. This remains the major problem of DSR. The staleness of routes is highly noted in complicated environments (high mobility, huge load, etc.). By the effect of high mobility, these routes expire quickly and their use induces a large overhead and a considerable latency.

3. Related works
Based on the ant colonies metaheuristics [11], ARA is a reactive protocol designed for ad-hoc networks [12]. The aim of ARA is to conceive a routing protocol strongly adaptive, extensible with wide-area networks, and without unnecessary overhead. It adapts promptly

The Third Advanced International Conference on Telecommunications (AICT'07) 0-7695-2843-0/07 $20.00 2007

DSR offers many optimization opportunities, in particular, in cache maintenance. This is why our work is focused on this protocol.

4.2. Ant-DSR description


Our optimization is based on the permanent updates of cache information by light packets, which circulate without overloading the network. We generate a new type of packets, which regularly explore the network in order to bring back the most recent topology information. This information is used to update the cache and consequently, to increase the probability of using valid routes and then decreasing the diffusion of RREQs. This is valid even for the intermediate nodes which are more likely to return valid RREPs from their cache instead of propagating the RREQ towards the destination. Creating new type of packets will not change the basic mechanisms of DSR. These new control packets are called "ant-agents'' for the similarities between its properties and those of natural ants quoted in ant colony approach [11]. The ant-agent has a behavior and sudden specific treatments according to its type. These ant-agent packets are of three types: hello, unicast or broadcast. The hello ant-agent is generated, at the launching of the protocol, by each node in order to detect its neighbors, then, it is immediately deleted. Once the neighborhood table is updated, each node creates one unicast ant-agent, and sends it to one of its neighbors for exploring the network and endorsing routes to be collected by the crossed nodes. Unlike hello ant-agent, unicast ant-agent is long-lasting in the network. When the neighbors of a node are invalid a broadcast antagent is locally generated, whose objective is same as hello ant-agents, with one difference that the broadcast ant-agent is not emitted by all nodes in the same time. The broadcast ant-agent detects the current neighbors of each node in the network.

4.3.2. Ant-agent creation. Since each node has a neighborhood table, so the ant-agent will circulate in unicast mode. With the initialization of Ant-DSR, a unicast ant-agent is created by each node and sent to one of its neighbors. In its passage, it builds a route from N lastly visited nodes, such as N is the maximum number of nodes that this packet can have (fixed at 16, as well as the DSR route length). 4.3.3. Ant-agent control. With launch of the protocol, the number of unicast ant-agent in the network is equal to the number of nodes. However, this number can decrease when the destination moves out of range of transmitting node or the node which carries a unicast ant-agent is isolated from the network remainder. Thus, to ensure the permanence of these packets in the network, we fixed a threshold time of visit by simulation at 10 seconds. If this time is exceeded, a new unicast ant-agent is generated by a corresponding node in order to keep a reasonable number of these packets. 4.3.4. Ant-agent reception. Each node receiving a hello ant-agent initializes its neighborhood table and then revoves this agent. The end of this neighborhood detection triggers the creation of the unicast ant-agents. Each node will send it to one chosen neighbor thus detected. A node receiving a unicast ant-agent must run the following procedures in this order: 1) Initially, to avoid routing loops, the neighbor destination should not already be registered in the route conveyed by the unicast ant-agent. 2) Select the two neighbors most recently detected, and give a high probability to the first neighbor having a minimal time. By analogy with the natural ants, it is the route which contains the greatest quantity of the pheromone recently borrowed [11]. We could always take the best neighbor in term of time, but the unicast ant-agents can converge, in the long run, towards the same route and may cause congestion. Therefore, introducing a probabilistic choice between two routes avoids this congestion. 3) Before sending a unicast ant-agent to a node, it is delayed by fixed time D, which is a trade-off between the freshness of routes and the overhead. This delay period depends on the number of packets already in the MAC queue. If there are fewer packets on standby, the corresponding ant-agent will not wait too long and vice versa. To prevent the congestion caused by the unicast ant-agents, a heuristic formula is tested by simulations in order to adapt the time D to the current state of a node. The formula is as D = A * (ifq / ifq_max) + B where ifq is the current number of packets in the MAC

4.3. Ant-DSR mechanisms


Our protocol is managed by six basic mechanisms. 4.3.1 Neighborhood detection. Considering the source routing of DSR, a solution which adapts finely to the neighborhood detection is as following. Every node exploits all the incoming traffic to capture the address of the last node visited. This arriving packet surely comes from a neighbor. Since any packet circulating in the network can provide information about neighbors, the neighborhood table of each node in the network is frequently updated.

The Third Advanced International Conference on Telecommunications (AICT'07) 0-7695-2843-0/07 $20.00 2007

queue and ifq_max is the maximum size of this queue (ifq_max=200 packets, fixed in DSR). A and B are constants obtained by the simulations. If this queue is overloaded beyond a threshold, which corresponds to a significant time, the corresponding agent is removed. 4) Before forwarding the unicast ant-agent, the node updates its cache and neighborhood table. This route contains, at maximum, the last sixteen nodes visited by the unicast ant-agent (a constraint of DSR). When a node receives a broadcast ant-agent, it checks whether this agent is already treated or not. If the broadcast ant-agent is not treated, node updates its neighborhood table, then, it broadcasts this ant-agent to the rest of the network. 4.3.5. Events management. Timers are an effective mean to schedule and trigger events for a proactive activity. We used two types of timers: 1) The first timer, AntStartTimer, is used to launch the operation of neighborhood detection by hello antagents. After a certain time, necessary to detect neighbors, this same timer starts sending unicast antagents on each node. Then, in a periodic way, this timer will be used to check on each node if the neighborhood table still fresh. If all neighbors are invalid, a broadcast ant-agent is diffused to locate the neighbors of each node. 2) The second timer, AntRestoreTimer, is used to maintain a reasonable number of unicast ant-agents in the network. If the threshold visit time, fixed by simulation at 10 seconds, is exceeded at a node, a new unicast ant-agent is locally generated. 4.3.6. Cache management. The cache of DSR is organized in two parts. Primary cache can store up to 30 routes returned by the destination in RREPs. Where as secondary cache can store up to 64 routes captured by forwarding and snooping mechanisms. When a route is required, DSR scans the primary cache. If the required route is not found there, it consults the secondary cache. In Ant-DSR, primary cache will be refreshed in priority, and then, the routes coming afterwards, will be stored in the secondary cache. Note that, the routes brought back by the ant-agents are added to those routes detected by DSR mechanisms.

Table 1. Simulation model. MAC layer Transmission range Mobility model Propagation model Antenna type Channel capacity Simulation time Transport protocol Traffic application 802.11/DCF with CSMA/CA 250 meters Random Way Point Two-Ray Ground OmniAntenna 2 Mb/s 900s UDP Continuous Bit Rate (CBR)

5.1. Varying a network load


We vary the number of connexions and we keep the other parameters fixed as shown in table 2(a). We obtain the results shown in figures 1, 2, 3 and 4.
Table 2. Simulation parameters. Parameters Number of connexions Surface Number of nodes Packet length Maximum speed Emission frequency Pause time (a) [10, 40] 1500x1500 m 100 1000 bytes 20 m/s 6 packets/s 10 s (b) 30 1500x1500 m 100 1000 bytes 20 m/s 6 packets/s [0, 600]

Figure 1. Average delay vs Network load.

5. Simulations, results and discussions


The simulator ns-2 [15] allows to examine our AntDSR protocol in various scenarios and to compare it with DSR by varying the different parameters (mobility, load, etc.). We measure average delay, loss ratio, overhead, and number of RREQs metrics. Table 1 summarizes the parameters of our simulation model.
Figure 2. Loss ratio vs Network load.

The figures 1 and 2 show better performance in Ant-DSR compared to DSR in terms of end-to-end delay and loss ratio (starting from 15 connexions). This is due to the frequent route failures in DSR with high mobility (pause time of 10s). In other words, DSR

The Third Advanced International Conference on Telecommunications (AICT'07) 0-7695-2843-0/07 $20.00 2007

continues to use invalid routes and consequently the route failure causes diffusion of RREQs. While in AntDSR, the cache is refreshed permanently, and thus, the diffusion of RREQs is limited.

Figure 5. Average delay vs Pause time.

Figure 3. Overhead vs Network load.

Figure 6. Loss ratio vs Pause time.

Figure 4. Number of RREQs vs Network load.

The figure 3 confirms that the overhead is decreased when the number of connexions exceeds 16. For a low traffic (less than 16 CBR connexions), the relative degradation of Ant-DSR in terms of loss ratio (figure 2), and overhead (figure 3), can be explained by the proactive effect of the ant-agents. Ant-DSR surpasses DSR while comparing the performance of the two protocols taking into account number of RREQs (figure 4) no matter what is number of connexions.

Figure 7. Overhead vs Pause time.

5.2. Varying a pause time


We vary the pause time and we keep the other parameters fixed as shown in table 2(b). We obtain the results shown on figures 5, 6, 7, and 8. For high mobility environment, it can be seen (figure 5), that Ant-DSR outperforms DSR in terms of average delay. In pause time between 0 and 200s the delay is decreased from 13s to 6s and from 10s to 2s for the first two values of the pause time representing the highest mobility. Similarly, in terms of loss ratio AntDSR achieve better results than its rival in the pause time between 0 and 150s (figure 5). Moreover, outside this interval our protocol is still good enough. Consequently, overrhead is decreased, confirmed by figure 7 (pause time between 0 and 150s).

Figure 8. Number of RREQs vs Pause time.

The figure 8 shows a fall of the number of RREQs. These improved results can be explained by the fact that ant-agents continuously refresh the cache, without overloading the network. For a low mobility (pause time starting from 200s), the ant-agents do not have a big utility as long as the network is not very dynamic. Indeed, DSR uses the first routes in the cache, which remain almost unchanged during the simulation time.

The Third Advanced International Conference on Telecommunications (AICT'07) 0-7695-2843-0/07 $20.00 2007

6. Conclusion and perspective


The obtained results confirmed that DSR fails for a high mobility and a huge network load. In a highly dynamic environment, the surplus use of the expired routes in the cache increases the latency of DSR and the frequent diffusion of RREQs consumes bandwidth, as shown in the simulation results. Unlike DSR, Ant-DSR brings back refreshed routes by the ant-agents. In fact, unicast movement of antagents is only possible by the maintenance of a neighborhood table updated as well as the cache of each node. Moreover, this table is not updated by a dedicated mechanism; information about neighbors is available on any packet received on a node. Better performance of Ant-DSR was shown in a high mobility and a huge network. That is explained by the unicast movement of the ant-agents, which led to a considerable avoidance of the route request diffusion. However, our optimization has the lack of adaptability to a low mobility and a low load, where its performance is slightly inferior to DSR. In perspective, we shall adapt the movement of antagents to the mobility. In this sense, they should not circulate with the same rate in a zone of high mobility as in the zone of less mobility. The ant-agents can endorse QoS information. They can bring back the routes having the maximum residual bandwidth in order to balance load on the totality of the network avoiding the congestion.

[8] D.A. Maltz, J. Broch, J. Jetcheva, and D.B. Johnson, The Effects of On-demand Behavior in Routing Protocols for Multihop Wireless Ad Hoc Networks, IEEE JSAC, vol. 17, N. 8, 1999. [9] B. Williams, Comparison of Broadcasting Techniques for Mobile Ad hoc Networks, ACM International Symposium of Mobile Ad hoc Networking and Computing (Mobihoc), 2002. [10] I. Park, J. Kim, and I. Pu, Blocking Expanding Ring Search Algorithm for Efficient Energy Consumption in Mobile Ad hoc Networks, Third Annual Conference on Wireless On-demand Network Systems and Services (WONS), pp. 191-195, 2006. [11] J. Dreo, A. Petrowski, P. Siarry, and E. Taillard. Mta heuristiques pour l'Optimisation Difficile, Chapter 4 : Algorithmes de Colonies de Fourmis, Eyrolles, 2003. [12] M. Gnes, U. Sorges, and I. Bouazizi, ARA - The AntColony Based Routing Algorithm for MANETs, ICPP Workshop on Ad Hoc Networks (IWAHN), IEEE Computer Society Press, pp. 79-85, 2002. [13] Y. He, C.S. Raghavendra, S. Berson, and B. Braden, Active Packets Improve Dynamic Source Routing for Ad-hoc Networks, IEEE OPENARCH short paper session, June 2002. [14] S. Marwaha, C.K Tham, and D. Srinivasan, Mobile Agents based Routing Protocol for Mobile Ad Hoc Networks, IEEE Globecom, 2002. [15] Collaboration between researchers at UC Berkeley, LBL, USC/ISI, and Xerox PARC. The ns Manual, 2005 http://www.isi.edu/nsnam/ns/doc/ns_doc.pdf

7. References
[1] T. Lecomte, J. Adjih, C. Badel, M. Jacquet, P. Laouiti, A. Minet, P. Muhlethaler, and P. Plakoo, OLSR performance measurement in a military mobile ad-hoc network, ICDCSW, pp. 704-709, 2004. [2] C. Perkins, E. Belding-Royer, and S. Das, Ad hoc OnDemand Distance Vector (AODV) Routing, Internet experimental RFC 3561, July 2003. [3] Z.J. Haas, M.R Pearlman, and P. Samar, The Zone Routing Protocol (ZRP) for Ad Hoc Networks, IETF Internet-Draft, july 2002. [4] H. Matsuo and K. Mori, Accelerated Ants Routing in Dynamic Networks, International Conference On Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing, 2003. [5] R.R. Choudhary, S. Bhandhopadhyay, and K. Paul, A Distributed Mechanism for topology discovery in Ad Hoc Wireless Networks Using Mobile Agents, Procedings of Mobicom, pp. 145-146, 2000. [6] J. Broch, D.B. Johnson, and D.A. Maltz. The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks, IETF Internet-Draft, version 10, 2006. [7] C.E. Perkins, Ad Hoc Networking, pp. 139-172, Addison-Wesley, Boston, 2001.

The Third Advanced International Conference on Telecommunications (AICT'07) 0-7695-2843-0/07 $20.00 2007

You might also like