Adaptive Multi-Path Routing for Load Balancing in Mobile Ad Hoc Networks

: Problem statement: Load balancing and network congestion are the major problems in Mobile Ad-hoc Networks (MANET) routing. Most of the existing routing protocols provide solutions to load balancing or congestion or fault-tolerance, individually. Approach: We propose congestion controlled adaptive multi-path routing protocol to achieve load balancing and avoid congestion in MANETs. The algorithm for finding multi-path routes computes fail-safe multiple paths, which provide all the intermediate nodes on the primary path with multiple routes to destination. The fail-safe multiple paths include the nodes with least load and more battery power and residual energy. When the average load of a node along the route increases beyond a threshold, it distributes the traffic over disjoint multi-path routes to reduce the traffic load on a congested link. Results: The proposed work is implemented in NS2 and the performance metrics like throughput, packet delivery ratio, delay and overhead are measured and compared with existing protocol. Conclusion/Recommendations: Simulation results show that the proposed algorithm efficiently solves the problem of load balancing, network congestion and fault tolerance The proposed algorithm can alos be applied over any multipath routing protocol.


INTRODUCTION
The network which doesn't require an infrastructure and are dynamically formed using an autonomous system of mobile nodes that are connected via wireless links are known as Mobile Ad Hoc Networks (MANET) (Souihl et al., 2009). Congestion became more challenging because the wireless links have significantly lower capacity than wired links. This is due to the reason that the mobile nodes communicate with each other via bandwidth-constrained, variable capacity, error-prone and insecure wireless channels (Souihl et al., 2009). Services and applications supported by each node gets limited due to that the batteries carried by each mobile node have limited power which limits the processing power (Souihl et al., 2009). And so considering these limitations the traffic distribution should be even among the mobile hosts.
The mobility and the limited battery power make the ad hoc network topology highly dynamic. The path breaks due to mobility or node failures, so the routing protocols should be in such a way that it should adapt to vitality and continue to maintain connection between the communicating nodes.
Quality of service in mobile ad hoc networks: A set of characteristics or constraints for a connection to guarantee for the requirements of an application is known as the QoS. Minimum bandwidth, maximum delay, maximum delay variance (jitter) and maximum packet loss rate are the set of measurable requirements for a connection to be a characterized (Krishna and Ramesh, 2012). It needs to be ensured by the network that the requirements of the user's flow are met throughout the duration of the connection after accepting the connection request from the user (Qin and Liu, 2009).
The problem guaranteeing QoS to users or applications is more complex is more complex in a mobile wireless communication when compared to the wired communication networks. Moreover, the QoS support gets complicated due to the characteristics of the mobile ad hoc networks (Qin and Liu, 2009).

Need for load balancing in MANET:
A vital part of the optimal network is the load balancing. For instance, job completion becomes complex, if huge load is given to the nodes with less processing capabilities and which do not have any means to share the load.
There is a possibility of load imbalance due to that the computing/processing power of the systems are non-uniform (i.e.,) few nodes maybe idle and few will be overloaded. A node which has high processing power finishes its own work quickly and is estimated to have less or no load at all most of the time. So, in the presence of under-loaded nodes, the need for over-loaded nodes is undesirable (Pradeep and Soumya, 2010).
Multi-path routing can balance the load better than the single path routing in ad hoc networks, where the first selective shortest paths are used for routing. This is possible only for the networks having a huge number of nodes (i.e., a large fraction of the total number of nodes in the network) between any source-destination pair of nodes. It is infeasible to build such a system it is economical for discovering and maintaining a large number of paths. Load balance is not improved by using multiple shortest path routes instead of a single path. So, for a better load balanced network distributed multi-path load splitting strategies need to be carefully designed (Valarmathi and Chandrasekaran, 2010).

Congestion control:
It is essential to adjust the data rate used by each sender in order not to overload the network, where multiple senders compete for link bandwidth. Packets are dropped when they arrive at the router and cannot be forwarded. Many packets are dropped while excessive amount of packets arrive at a network bottleneck. The packets dropped would've traveled long way and in addition the lost packets often trigger retransmissions. This intimates that even more packets are sent into the network. And so, network throughput is still more worsened by the network congestion. There are chances of congestion collapse where almost no data is delivered successfully if no appropriate congestion control is performed .
Shared broadcast medium is used in mobile ad hoc networks. Medium capacity which is very inadequate is shared within all the nodes in a collision domain. While delivering data to multiple destinations, multicast communication is of great concern in these networks, since it helps saving resources. Group communication which is an inherent feature of many proposed applications in MANETs is added to this broadcast medium. So, it is important to avoid congestion collapse in wireless multihop networks in order to perform efficient congestion control .

Proposed solution:
Most of the existing protocols provide solutions to load balancing or congestion or fault-tolerance, individually. So a combined protocol is necessary, in order to provide solutions for all the above problems. In this study, we propose a congestion controlled multi-path routing protocol scheme to achieve load balance and avoid congestion in networks. When the average load of an existing link increases beyond a threshold and residual battery power of a node decreases below a threshold, it distributes the traffic over disjoint mutli-path routes to reduce the traffic load on a congested link. The algorithm for finding multi-path routes computes fail-safe multiple paths, which provide all the intermediate nodes on the primary path with multiple routes to destination. The fail-safe multiple paths include the nodes with least load and residual energy. Souihli et al. (2009) have a proposed load-balancing mechanism that pushes the traffic further from the center of the network. They also provide a routing metrics that take into account nodes degree of centrality, for both proactive and reactive routing protocols. Their mechanisms proposed by the authors improve the load distribution and significantly enhances the network performances in terms of average delay and reliability. But it uses only single path routing, which causes extra overhead. Ivascu et al. (2009) have presented an approach based on a mobile routing backbone for supporting Quality of Service (QoS) in MANETs. They have aimed to identify the nodes whose capabilities and characteristics will enable them to take part in the mobile routing backbone and efficiently participate in the routing process. Moreover, the route discovery mechanism they have developed for the mobile routing backbone dynamically distributes traffic within the network according to current network traffic levels and nodes' processing loads. They have shown that their approach improves network throughput and packet delivery ratio by directing traffic through lowly congested regions of the network that are rich in resources. In addition to this, their protocol incurs lower communication overheads than AODV (ad hoc ondemand distance vector routing protocol) when searching for routes in the network. Qin and Liu (2009) have proposed a multipath source routing protocol with bandwidth and reliability guarantee. In route discovery phase, their protocol selects several multiple alternate paths which meet the QoS requirements and the ideal number of multipath routing is achieved to compromise between load balancing and network overhead. In route maintenance phase, it can effectively deal with route failures similar to DSR. Furthermore, the per-packet granularity is adopted in traffic allocation phase.

Related work:
Here the multiple paths are constructed based on bandwidth availability and reliability but it didn't discuss the traffic distribution mechanism along the multiple paths. Moreover congestion is also not considered in this study. Sivakumar and Duraiswamy (2011) have proposed a new distributed load based routing algorithm intended for a variety of traffic classes to establish the best routing paths. This approach calculates the cost metric based on the link loads. Here multimedia traffic is considered as high priority traffic and its routing is carried out over the lightly loaded links such that the links at the lighter loads are selected as an alternative to links holding heavier loads. Also the resources are shared among the high and low (normal traffic) priority traffic. The lightly loaded path is used by normal traffic in the lack of multimedia traffic. Bin et al. (2010) have proposed a novel adaptive load balancing routing algorithm in ad hoc networks based on a gossiping mechanism. This algorithm merges gossip based routing and load balancing scheme efficiently. It adjusts the forwarding probability of the routing messages adaptively as per the load status and distribution of the nodes in the phase of route discovery. Akyol et al. (2008) have studied the problem of jointly performing scheduling and congestion control in mobile adhoc networks so that network queues remain bounded and the resulting flow rates satisfies an associated network utility maximization problem. They have defined a specific network utility maximization problem that they believe was appropriate for mobile adhoc networks. Also they described a wireless Greedy Primal Dual (wGPD) algorithm for combined congestion control and scheduling in wireless ad-hoc networks. Kim et al. (2009) have proposed Traffic Prediction Multi-path Energy-aware Source Routing (TP-MESR) which uses multi-path routing technique and traffic prediction function to increase number of paths more than 2. Their proposed TP-MESR solved the existing multi-path routing problem related to overhead, radio interference, packet reassembly and it confirmed its contribution to effective use of energy in ad hoc networks. It uses a prediction function for traffic distribution and increasing the multiple paths. So if the prediction is not accurate or prediction error is high, it will not be successful. Aoudjit et al. (2009) have proposed a new load balancing algorithm based on clustering where a subset of nodes called cluster heads is elected to maintain some balance within their respective clusters while minimizing the overall communication cost. Their primary goal is to minimize the total execution time of the tasks by distributing the workload among nodes. They also extended the overloaded node's lifetime inducing a stability of the network. In high mobile environments in which node mobility is frequent, the cluster heads need to be elected often which increases the overhead. Since each node periodically send its load and energy to the cluster head, an additional overhead is imposed on each node. Moreover it didn't discuss the routing process involved. Xu et al. (2009) have stated that routing metric can reflect not only the load of the path, but also the load distribution along the path. They have presented a multi-path based on load balance algorithm. It is a simple but effective algorithm to balance the load and alleviate congestion in network. Firstly, algorithm analyzes the queuing model and put forward two formulas to evaluating the partial function and whole function for ad hoc networks. Using the connective matrix and traffic matrix, the usage condition of every link and function index can be calculated. At last, they set the threshold value to limit the excessive usage of links, reduced the possibility of congestion. Qin and Liu (2009) have presented a multipath source routing protocol with some QoS guarantee. During the route discovery, the source node first checks whether it has the routing information to the destination node. If not, it begins to broadcast RREQs to its neighborhoods and finally to the destination. From the received RREQs, the destination node can construct a certain topology for network and the path that is maximally disjoint from the shortest delay path is selected as the desirable routing.

MATERIALS AND METHODS
Multipath route discovery and route maintenance: AOMDV routing protocol: Our proposed approach requires fail safe multipath which will provide all the intermediate nodes on the primary path with multiple routes to destination. Thus we consider AOMDV routing protocol for multipath route discovery and maintenance.
The AOMDV identifies multiple paths during route discovery. It is designed primarily for adhoc networks where link failures and route breaks occur frequently. When single path on-demand routing protocol such as AODV is used in such networks, a new route discovery is needed in response to every route break. Each route discovery is associated with high overhead and latency. This inefficiency can be avoided by having multiple redundant paths available. Now, a new route discovery is needed only when all paths to the destination break.
The AOMDV protocol has two main components: • A route update rule to establish and maintain multiple loop-free paths at each node • A distributed protocol to find link-disjoint paths The multipath route discovery and route maintenance is explained below.
Each RREQ carries a field called first hop to indicate the first hop taken by it. Also, each node maintains a first hop-list for each RREQ to keep track of the list of neighbors of the source through which a copy of the RREQ has been received.
At the intermediate nodes, each duplicate copy is examined to see if it provides a new node-disjoint path to the source. This is ascertained by examining the first hop field in the RREQ copy and the first hop list in the node for the RREQ. If it does provide a new path, the AOMDV route update rule is invoked to check if a reverse path can be set up. If a reverse path is set up and a valid route to the destination is available at the intermediate node, it sends back a RREP to the source. Only the first arriving RREQ copy is forwarded if a route to destination is unavailable.
At the destination, reverse routes are set up. In order to get link-disjoint paths, the destination node adopts a "looser" reply policy. It replies up to k-copies of RREQ, regardless of the first hops taken by these RREQs. Here k is the parameter used to control the number of RREPs and thus to prevent a RREP storm. Unique neighbors guarantee link disjoint ness in the first hop of the RREP. Beyond the first hop, the RREP follow the reverse routes that have been set up already which are node-disjoint. Each RREP arriving at an intermediate node takes a different reverse route when multiple routes are already available (Tekaya et al., 2010).
Overview: After discovering multiple paths for a given source and destination, best paths should be selected for transmission.
Each node in adhoc network is driven by battery and it possesses only limited energy supply. Eventually, most of the nodes will exhaust their energy supplies and drop out from the network. If nodes are not replaced or recharged, the network will ultimately get partitioned. Only few nodes may be able to communicate directly with their intended destination in case of large networks. On the other hand most of the nodes depend on other nodes to forward the packets. There are some exceptional nodes which provide path only between certain pairs of nodes. In relation to nodes that depletes its battery and stops operating, there is possibility that some nodes cannot communicate anymore. Due to all the above said issues, focus of researchers was on communication protocols designing which will safeguard energy for avoiding network failures (Gole and Mallapur, 2011) For the best route discovery, the criterion is: • The total energy utilization of the path must be minimum • Total residual battery power of the nodes along the path must be maximum The total energy utilized in the network for the transmission of the RTS and CTS over each route and residual battery power over each route is calculated.
The multiple paths which satisfy the above criterion are selected and stored by the source. The routes that are optimized are chosen for multipath data transmission from a source to destination.
For congestion detection and mitigation, we observe the traffic load of each intermediate node by measuring the traffic contention. Each intermediate node maintains a Path Counter (PC) to keep track the number of paths passing through that node.
If another source try to transmit data through the route which is already in use with a source, then path counter for that node is incremented by one. If path counter exceeds the path counter threshold, it will induce more contention so it is assumed that congestion is likely to occur. Then transmission of data over the route is considered as overloaded and transmission will be stopped. The rate of overloaded traffic of the node in the specified route is calculated by subtracting maximum capacity of the node from the total load of the node. The node transmits the overload traffic value as a feedback to the corresponding source and the source transmits the overloaded part of the traffic through the other existing paths.
If the path counter does not exceed the path counter threshold, the transmission will continue through that node.

Advantages:
• Since it chooses energy efficient paths, the transmission is reliable and stable • Since congestion is detected at the intermediate node itself, immediate recovery is possible • Since multiple paths are used to transmit the congested data, load is balanced

Algorithm:
The algorithm provides a technique for multi-path routing in case of traffic overload in the network system. In this algorithm, the λ represents the frequency of the radio, receiver's threshold and signalto-noise threshold, d M is the maximum transmission range, R is the path loss exponent, N R are the nodes on the used route and t RTS and t CTS are the transmission time of RTS and CTS. The energy consumed for the transmission of the RTS from the source to the destination is given by Eq. 1: The energy consumed for the transmission of the CTS from the destination to the source is given by Eq. 2: For the best route discovery, the following two conditions should be satisfied: • The route should have minimum total energy consumption E Tot • The route should have maximum residual battery power b r For the congestion control, multipath routing is used which provides load balancing: • The paths are assumed to be discovered initially • The total energy E Toti , used in the network for the transmission of the RTS and the CTS over each route is calculated at the source separately to determine the energy consumption of each path which is given by Eq. 3:

RTS CTS
Toti i i , i 1, 2, 3, 4 • The residual battery power over each route is calculated based on the battery power consumed at each node of the route which is given by Eq. 4: • The multipath which satisfies the condition (i) and (ii) are selected • The multipath routes are already assumed to be discovered as shown in Fig. 1 Let R1, R2, R3 and R4 be the routes from the source S1 to the destination D1 b using (4) be the total residual battery power at path R1, R2, R3 and R4 respectively.
Hence the optimization condition is given by Eq. 5: • Let R o = {R opt } be the routes that satisfies the optimization condition • The routes that are optimized are selected for multipath data transmission from S1 to D1 • The nodes along the routes R o have a path counter, PC for storing the value of the number of paths that pass through it. PC_max is the maximum number of paths that the corresponding nodes can handle efficiently without getting overloaded • Now if another source S2 tries to transmit its data through any route in , which is already in use with S1 then the path counter, PC in that route increments by one which is given by Eq. 6: where, max_capacity is the maximum capacity for the node Ni • Ni transmits the overloaded traffic value as a feedback to the corresponding source S • Source S transmits the overloaded part of the traffic through the other existing paths

Simulation parameters:
We use NS2 to simulate our proposed algorithm. In this simulation, the channel capacity of mobile hosts is set to the value of 2 Mbps. We use the Distributed Coordination Function (DCF) of IEEE 802.11 for wireless LANs as the MAC layer protocol. It has the functionality to notify the network layer about link breakage. In our simulation, the number of nodes is varied as 30, 50, 70, 90 and 110. The mobile nodes move in a 1250×1250 m square region for 50 sec simulation time. We assume each node moves independently with the same average speed. All nodes have the same transmission range of 250 m. In our simulation, the speed is varied from 10-40 m sec −1 . Random Way Point mobility model is used. The simulated traffic is Constant Bit Rate (CBR).
Our simulation settings and parameters are summarized in Table 1.

Performance parameters:
We evaluate performance of the new protocol mainly according to the following parameters. We compare the QMRB routing protocol with our proposed AMRLBC protocol.

Control overhead:
The control overhead is defined as the total number of routing control packets normalized by the total number of received data packets.
Average end-to-end delay: The end-to-end-delay is averaged over all surviving data packets from the sources to the destinations.
Average packet delivery ratio: It is the ratio of the number of packets received successfully and the total number of packets transmitted.

DISCUSSION
Effect of varying number of nodes: Initially we vary the number of nodes as 30, 50, 70, 90 and 110. Figure 2 shows the results of average end-to-end delay for the increasing number of nodes. From the results, we can see that AMRLBC scheme has 67% of lower delay than the QMRB scheme. Figure 3 show the results of average packet delivery ratio for the varying nodes scenario. Clearly our AMRLBC scheme achieves 16% better packet delivery ratio than QMRB. Figure 4 shows the results of routing overhead versus number of nodes. From the results, we can see that AMRLBC scheme produces 2% less routing overhead than the QMRB scheme since it does not involve frequent route re-discovery routines.   Figure 5 shows the results of throughput obtained in both the schemes for various numbers of nodes. From the results we can see that our AMRLBC scheme has 20% high throughput when compared with the QMRB scheme.
Effect of varying node speed: Next, we vary the node movement speed as 10, 20, 30 and 40 m sec −1 . Figure 6 shows the results of average end-to-end delay for various node speeds. From the results, we can see that AMRLBC scheme has 65% significantly lower delay than the other scheme QMRB. Figure 7 show the results of average packet delivery ratio for the varying speed scenario. Clearly our proposed AMRLBC scheme achieves 32% better delivery ratio than the QMRB scheme. Figure 8 shows the results of routing overhead for various speeds. From the results, we can see that our proposed AMRLBC scheme has 3% less routing overhead than QMRB. Figure 9 shows the results of throughput obtained in both the schemes for various speeds. From the results we can see that our AMRLBC scheme has 38% high throughput when compared with the QMRB scheme.

CONCLUSION
In this study we have proposed a congestion controlled multi-path routing protocol scheme to achieve load balance and avoid congestion in Mobile Ad Hoc Networks (MANETs). The algorithm for finding multi-path routes computes fail-safe multiple paths, which provide all the intermediate nodes on the primary path with multiple routes to destination. The fail-safe multiple paths include the nodes with least load and more bandwidth and residual energy. When the average load of an existing link increases beyond a threshold or the available bandwidth and residual battery power of a node decreases below a threshold, it distributes the traffic over disjoint multi-path routes to reduce the traffic load on a congested link. Simulation results show that the proposed algorithm efficiently solves the problem of load balancing, network congestion and fault tolerance.