A Swarm-based Distance Vector Routing to Support Multiple Quality of Service (QoS) Metrics in Mobile Adhoc Networks

: Quality of Service support for Mobile Ad-hoc Networks is a challenging task due to dynamic topology and limited resource. The main purpose of QoS routing is to find a feasible path that has sufficient resources to satisfy the constraints. A fundamental problem in QoS routing is to find a path between a source and destination that satisfies two or more end-to-end QoS constraints. In this paper a novel QoS routing algorithm called Swarm-based Distance Vector Routing based on ant colony optimization is proposed to support delay, jitter and energy constraints. The simulation results of SDVR are compared with the reactive routing protocol Adhoc On demand Distance Vector routing. SDVR produces better performance than AODV in terms of packet delivery ratio, throughput, end-to-end delay, energy, and jitter.


INTRODUCTION
Mobile adhoc network (MANET) is a collection of mobile devices which form a communication network with no pre-existing wiring or infrastructure. Routing in MANETs is challenging since there is no central coordinator that manage routing decisions. Multiple routing protocols have been developed for MANETs. In proactive protocols, every node maintains the network topology information in the form of routing tables by periodically exchanging routing information. Routing information is generally flooded in the whole network. Whenever a node requires a path to a destination, it runs an appropriate path finding algorithm on the topology information it maintains.
The destination sequenced distance vector routing protocol (DSDV), and wireless routing protocol (WRP), are some examples for the proactive protocols. Reactive protocols do not maintain the network topology information. They obtain the necessary path when it is required, by using a connection establishment process. Hence these protocols do not exchange routing information periodically. The dynamic source routing protocol (DSR), Adhoc on-demand distance vector routing protocol (AODV), and temporally ordered routing algorithm (TORA) are some examples for the protocols that belong to this category [1] .
Quality of Service (QoS) is usually defined as a set of service requirements that need to be met by the network while transporting a packet stream from source to destination. The network is expected to guarantee a set of measurable specified service attributes to the user in terms of end-to-end delay, bandwidth, probability of packet loss, energy and delay variance (jitter).The QoS metrics can be classified as additive, concave, and multiplicative. Bandwidth and energy are concave metric, while cost, delay, and jitter are additive metrics. Bandwidth and energy are concave in the sense that end-to-end bandwidth and energy are the minimum of all the links along the path. The end-to-end delay is an additive constraint because it is the accumulation of all delays of the links along the path. The reliability or availability of a link based on some criteria such as link break probability is a multiplicative metric. Finding the best path subject to two or more additive/concave metrics is a complex problem. A possible solution to route dealing with additive and non additive metrics is to use an optimization technique.
This paper proposes a unicast on-demand routing protocol Swarm-based Distance Vector Routing (SDVR) to support delay, jitter and energy constraints. The basic idea of the ant colony optimization (ACO) is taken from the food searching behavior of real ants. When ants are on the way to search for food, they start from their nest and walk toward the food. While walking, ants deposit a pheromone, which ants are able to smell, which marks the route taken. The concentration of pheromone on a certain path is an indication of its usage. With time the concentration of pheromone decreases due to diffusion effects. This is important because it integrate the dynamic property into the path searching process. The rest of the paper is organized as follows. In the next section the previous work related to QoS aware routing protocols are briefly reviewed. Then the Swarm-based Distance Vector Routing is described. In the results and discussion section the SDVR performance is compared with AODV by means of simulation. Finally the result of the work done is summarized.
QoS support in MANETs includes QoS models, QoS resource reservation signaling, QoS Medium Access Control (MAC), and QoS routing [2] . This paper discusses some key design considerations in providing QoS routing support, and presents a review of previous work addressing the issue of route selection subject to QoS constraints. Core-Extraction Distributed Adhoc Routing (CEDAR) algorithm is designed to select routes with sufficient bandwidth resources. CEDAR selects QoS routes upon request [3] .
Ant based routing algorithms exhibit a number of desirable properties for MANET routing: they work in a distributed way, are highly adaptive, robust, and provide automatic load balancing. AntNet is an algorithm conceived for wired networks, which derives features from parallel replicated Monte Carlo systems, previous work on artificial ant colonies techniques and telephone network routing [4] . The idea in AntNet is to use two different network exploration agents, which collect information about delay, congestion status and the followed path in the network. Ant Based Control (ABC) is another stigmergy based ant algorithm designed for telephone networks.
It shares many similarities with AntNet, but also incorporates certain differences [5] . The basic principle relies on mobile routing agents, which randomly explore the network and update the routing tables according to the current network state. The routing table stores probabilities instead of pheromone concentrations. Ant Colony Based Routing Algorithm (ARA) works in an on-demand way, with ants setting up multiple paths between source and destination at the start of a data session [6] . Probabilistic Emergent Routing Algorithm (PERA) works in an on-demand way, with ants being broadcast towards the destination at the start of a data session. Multiple paths are set up, but only the one with the highest pheromone value is used by data and the other paths are available for backup [7] .
AntHocNet is based on ideas from Ant Colony Optimization [8] . AntHocNet uses end-to-end delay as a metric to calculate congestion at a node, which may not yield accurate results as end-to-end is affected by both congestion as well as the length of the route from source to destination. ANSI (Adhoc Networking with Swarm Intelligence) is a congestion-aware routing protocol, which owing to the self-configuring mechanisms of Swarm Intelligence, is able to collect more information about the local network and make more effective routing decisions than traditional MANET protocols. ANSI is thus more responsive to topological fluctuations [9] .

SWARM-BASED DISTANCE VECTOR ROUTING
This paper proposes a novel QoS routing algorithm called Swarm-based Distance Vector Routing (SDVR) based on ant colony optimization (ACO).Multi constrained QoS aims to optimize multiple QoS metrics while provisioning network resources and is an admittedly complex problem [10] . The QoS parameters used to analyze the routing protocol consists of an additive QoS class: End-to-end delay and jitter, between source and destination mobile node. The QoS parameter considered during the route discovery process is a concave QoS class, the individual nodes residual energy is taken for routing decisions. initial searching time Figure 1 shows a scenario with two routes from the nest to the food place. Since the lower route is shorter than the upper one, the ants which take this path will reach the food place first. On their way back to the nest, the ants again have to select a path. After a short time the pheromone concentration on the shorter path will be higher than on the longer path, because the ants using the shorter path will increase the pheromone concentration faster. The shortest path will thus be identified and eventually all ants will only use this one. The basic idea behind ACO algorithms for routing is the acquisition of routing information through the sampling of paths using small control packets, which are called ants. The ants are generated concurrently and independently at the nodes, with the task to test a path from a source node to an assigned destination node. The routing tables contain for each destination a vector of real valued entries, one for each known neighbor node [11] . They are termed pheromone variables, and are continually updated according to path quality values calculated by the ants. The repeated and concurrent generations of path sampling ants result in the availability at each node of a bundle of paths, each with an estimated measure of quality. In turn, the ants use the routing tables to define which path to their destination they sample: at each node they stochastically choose a next hop, giving higher probability to links with higher pheromone values. Routing tables are also called pheromone tables.
In ACO routing algorithms routing information is gathered through a stigmergic learning process using ant agents [12] . These agents are generated concurrently and independently by the nodes, with the task to sample path to an assigned destination. An ant going from its source s to a destination d collects information about the quality of the path it follows (e.g. End-to-end delay), and retracing its way back from d to s, uses this to update the routing information at intermediate nodes.
Routing information is expressed in the form of tables kept locally at each node.
Route discovery: Conventional ant routing algorithms require significant overhead for preliminary route set up possibly resulting in slow route convergence which is not satisfactory for dynamic adhoc networks. In order to overcome the slow route convergence problem with less routing overhead, the route discovery characteristic of this scheme is inherited from the heuristic redirection method. Forward ant (FANT) and backward ant (BANT) packets are used in this route discovery process. Forward ants are used to explore new paths in the network. Backward ants serve the purpose to inform the originating node about the information collected by the forward ant. When a source does not have an active route to a destination, the source initiates route discovery by broadcasting a FANT packet.The source address is included in the FANT, and as it propagates, the addresses of intermediate nodes that it visits are appended prior to forwarding. Unlike other single path routing algorithms, in order to discover multiple paths, intermediate nodes do not discard duplicate FANTs. Instead the latter received FANTs are cached at the intermediate nodes although they are not rebroadcasted. When a FANT reaches the destination, the destination generates a BANT packet for the source node. Since the destination has a route to the source contained in the FANT it received, it does not flood the BANT but forwards it to one of the neighboring nodes using the reverse of the received path.

Route maintenance:
The source nodes maintain a routing table that contains entries of neighboring nodes to reach destination nodes. As shown in Fig. 2, if node Z forwards a BANT from node W to node X, node X creates a pheromone state entry for reaching node W through node Z. An example routing table is shown in Table 1. When the source receives the BANT, it has an entry for reaching the destination through one of its neighbours. Since duplicate FANTs are not discarded, the destination node may send multiple BANTs back to the source.
FANTs are periodically sent from the source to the destination, after sending every N data packets along the selected path. Once the destination receives the FANT, it sends a BANT back to the source using the same path the FANT has traveled. Therefore, X U Y W Z V information of the path are collected and delivered to the source.

Routing using energy, delay and jitter metrics:
The ant routing framework has two types of feedback: positive feedback increases the pheromone levels on routes actively carrying ant packets and negative feedback periodically decreases pheromone values to limit the effects of stale information. Routing decisions tend to favor paths with higher pheromone levels and, when allowed to converge, shortest end-to-end paths are empirically observed to be favored. Modified ant mechanism algorithm that uses energy and delay metrics to perform updates of pheromone levels is proposed. Assuming a control packet containing both energy and delay information, a separate pheromone level will be maintained for each information [13] . In the algorithm, ant packet headers have fields that: 1. Track the minimum residual energy of the nodes that relay them and 2. Track the cumulative delay and jitter based on backlog information of queued packets destined to the packet's source. Thus, energy, delay and jitter pheromone levels will be maintained at each node.
Delay, jitter and energy pheromone: Upon receipt of a new ant packet transmitted from node W to node X via Z, carrying cumulative delay (back to W) metric D (w, z), the delay and jitter pheromone is updated as where 1 β is a scaling constant.
Pheromone values will decrease in time in the absence of positive feedback. The periodic decay for the delay and jitter pheromone is governed by the iteration, In the similar way energy pheromone is calculated as, The jitter probability is calculated as considers both additive and non-additive metrics.

RESULTS AND DISCUSSION
The performance of the proposed protocol is evaluated using the ns-2 simulator [14] . Packet delivery ratio, end-to-end delay, routing overhead, throughput, jitter and residual node energy were used as metrics to compare the performance of SDVR with AODV. Table  2 lists the simulation parameters and environments used. Packet delivery ratio: Figure 3 shows the effect of mobility on packet delivery ratio (PDR). Both protocols have higher PDR, when the nodes move at low speed.
When the speed increases, routing protocols suffer a decrease in PDR. Higher speeds cause frequent link changes and connection failures. SDVR shows 8 % improvement in PDR over AODV for high mobility.  Figure 4 shows the effect of number of nodes on packet delivery ratio. The PDR tends to increase when the number of nodes increase. This is because of more number of intermediate nodes available for the link. SDVR shows 10 % improvement in PDR when the number of nodes reach 50. End-to-end delay: Figure 5 shows effect of pause time on end-to-end delay of the two protocols. End-to-end delay tends to increase as the pause time increases in both protocols. End-to-end delay is reduced by applying SDVR. Since multiple paths were discovered, when a path to the destination breaks, packets could immediately continue to be forwarded using a backup path without a new route discovery. The improvement over AODV is maximum when the pause time reaches 300 seconds(s). Both protocols have same delay for higher pause time.  Figure 6 shows the effect of mobility on end-toend-delay. The end-to-end delay increases as the mobility increases. Higher mobility causes more link broken and frequent re-routing, thus causing larger endto-end delay. Figure 7 shows the effect of number of nodes on end-to-end-delay. SDVR shows better performance in all the mobility conditions and the improvement over AODV is around 35%. End-to-enddelay increases as the number of nodes increases because of more links. SDVR shows 40 % reduction in delay when the number nodes reach 50.  Since more control packets are required at the route discovery phase and extra control packets are required periodically to monitor the condition of the paths, the routing overhead of SDVR is slightly higher than that of other protocol. The overhead for path monitoring can be reduced by piggybacking the pheromone information on data packets if appropriate traffic exists in opposite direction. The effect of mobility on routing overhead is shown in Fig.9. Higher mobility causes more links broken and frequent re-routing and thus causes larger routing overhead. Because of the periodic updates, SDVR requires certain amount of routing overhead constantly. The routing overhead is slightly higher than that of AODV due the use of FANTs and BANTs as control packets.
Throughput: Figure 10 shows the effect of pause time on throughput. Number of packets received in the destination is calculated and taken as throughput. Throughput increases with the increase in pause time, due to less number of link breaks. The improvement over AODV is high for low pause time and tends to maintain constant improvement for moderate and high pause time. The throughput under different mobility is shown in Fig. 11. It can be seen that increase in node speed results in significant decrease in throughput in both the protocols due to more link breaks. SDVR shows around 7% improvement in throughput over AODV.  Figure 12 shows the packets received with the variation in number of nodes. AODV shows a large variation in the number of packets delivered, whereas SDVR delivers moderately equal number of packets while increasing the number of nodes. SDVR shows 5 to 28 % improvement in throughput over AODV. Jitter: The value of jitter under various pause times is shown in Fig. 13. The plot shows very low variations in delay as in the case of SDVR whereas more variations as in the case of AODV. The improvement over AODV is maximum when the pause time reaches 300s. Both protocols have same delay variation for higher pause time. Figure 14 shows the effect of mobility on jitter. SDVR gives better performance than AODV in all the mobility conditions. Node energy: Percentage of nodes with energy below 50% of initial energy is depicted in Fig. 15. From the graph it can be observed that SDVR has the lowest number of nodes with low energy as expected. Therefore, the network lifetime under SDVR is longer than that of other protocol. Figure 16 shows the effect of mobility on residual node energy. Residual node energy decreases with the increase in mobile speed, due to which more packets are dropped. The destination node's residual energy is more than that of the source node's energy.

CONCLUSION
QoS routing in MANETs is a challenging task. Although some work has been carried out to address this critical issue, research in this area is far from exhaustive. In this paper, a unicast on-demand routing algorithm SDVR is proposed to optimize three QoS parameters delay, jitter and energy. This avoids the overhead of having three independent routing algorithms, one for each QoS metric. The mechanism was based on information obtained from periodically transmitted backward ANTs resulting in reinforced path-pheromone levels. The proposed protocol selects a minimum delay path with the maximum residual energy at nodes. Furthermore, the selection of QoS routes should also take into consideration the jitter metric in order to keep the minimum and maximum delay values approximate to the average delay. SDVR produced better results than the existing AODV in terms of packet delivery ratio, end-to-end delay and residual energy at node. Even though SDVR results in a slightly high routing overhead than AODV, it performs well in route discovery with dynamic changes in the network topology and produces much better throughput with very low variance in the delay. Swarm-based routing can be further implemented on the other reactive protocols.