An Analysis of Power Aware Congestion Control Multipath Multicast Protocol for Mobile Ad hoc Network

: Problem statement: In MANETs, wireless link transmission errors, mobility and congestion are major causes for packet loss. Mobility may cause packet loss in different ways. Whereas congestion in a network occurs, whenever the demands exceed the maximum capacity of a communication link especially when multiple hosts try to access a shared media simultaneously. Approach: In this study, we proposed a Power Aware Congestion Control Multipath Multicast Protocol (PAC 2 M 2 P) for MANETs. In order to reduce the packet losses, a congestion identification scheme is proposed at the receiver. In the PAC 2 M 2 P the receiver node was made to measure the number of packets received. If the number of packets received is found to be less than allowed loss, it initiated an error message towards the source. Upon receiving the error message the source node increases the packet sent interval. Results: The PAC 2 M 2 P protocol had been implemented using the group learning module of VCR and compared with PAMPMAODV. The performance of PAC 2 M 2 P has been studied for different scenarios. For the test case 1 the PDR of PAC 2 M 2 P was increased by 2-18% than that of PAMPMAODV algorithm. For test case 2 the PDR of PAC 2 M 2 P was increased by 2-32% than that of PAMPMAODV algorithm. PDR of PAC 2 M 2 P was increased by 2-11% for test case 3 and 2-7% for test case 4. Conclusion/Recommendations: The average end-to-end delay and PDR parameters have been studied for different test cases. For the test cases 1 and 2, where the nodes are not mobile, the packet delivery ratio increases with increase in packet sent interval for both the sparse and dense networks. For the test cases 3 and 4, where the nodes are allowed to move in any direction with a speed of 1-10m/sec, the PDR decreases with an increase in pause time.


INTRODUCTION
MANETs are infrastructure-less wireless networks where nodes are capable of moving. They are formed dynamically by a collection of arbitrarily located wireless mobile nodes without much set up time or cost and without the use of existing network infrastructure or centralized administration. Generally, some or all nodes of a MANET function as routers and communication between two hosts is done by multi-hop routing through the nodes of the network. Devices such as laptops, PDAs, mobile phones, pocket PC with wireless connectivity are commonly used.
Multicasting is intended for group-oriented computing. There are more and more applications where one-to-many dissemination is necessary. The multicast service is critical in applications characterized by the close collaboration of teams (e.g., rescue patrol, battalion, scientists, VCR) with requirements for audio and video conferencing and sharing of text and images. The use of multicasting within a network has many benefits. Multicasting reduces the communication costs for applications that send the same data to multiple recipients. Instead of sending via multiple unicast, multicasting minimizes the link bandwidth consumption, sender and router processing and delivery delay. Maintaining group membership information and building optimal multicast trees is challenging even in wired networks. Routing is needed to find a path between source and destination and to forward the packets appropriately. When it became clear that grouporiented communication is one of the key application classes in MANET environments, a number of MANET multicast routing protocols have been proposed (Garcia-Luna-Aceves and Madruga, 1999;Lee et al., 1999;Jacquet et al., 2001;Royer and Perkins, 1999;Sinha et al., 1999;Alfawaer et al., 2007;Kaabneh et al., 2009;Murad and Al-Mahadeen, 2007;Maalla et al., 2009;Raghunathan and Kumar, 2007). These protocols can be classified according to two different criteria. The first criterion has to do with maintaining routing state and classifies routing mechanisms into two types: Proactive and reactive. Proactive protocols maintain routing state, while the reactive reduce the impact of frequent topology changes by acquiring routes on demand.
Multipath routing is a technique that exploits the underlying physical network resources by utilizing source to multiple paths. It is used for a number of purposes, including bandwidth aggregation, minimizing end-to-end delay, increasing fault-tolerance, enhancing reliability, load balancing and so on. The idea of using multiple paths has existed for some time and it has been explored in different areas of networking. Many multicast multipath routing protocols for MANETs have been proposed (Tang et al., 2008;Chow et al., 2007;Vijayaragavan et al., 2009a;2009b).
Energy conservation: Energy efficiency is a limiting factor in the successful deployment of MANETs, because nodes are expected to rely on portable, limited power sources. Moreover, energy conservation is extremely challenging in multi-hop environments, where the mobile nodes should also consume energy to route packets for other nodes and to guarantee the connectivity of the network.
Wireless link transmission errors, mobility and congestion are major causes for packet loss. Packet loss due to transmission errors is affected by the physical condition of the channel. Mobility may cause packet loss in different ways. A packet may be dropped at the source if a route to the receiver is not available or the buffer that stores pending packets is full. It may also be dropped at an intermediate host if the link to the next hop has broken. Packet loss due to mobility can be reduced by reading the RSSI of the received packet. Whereas congestion in a network occurs, whenever the demands exceed the maximum capacity of a communication link especially when multiple hosts try to access a shared media simultaneously. The congestion may result due to any of the following reasons (Lu et al., 2003): Link load exceeds the carrying capacity, Redundant broadcasting packets, Number of packets timeout and retransmitted, Average packet delay or SD of packet delay and Number of nodes increase. Ramesh and Manjula (2007), packet loss was measured at all mobile hosts. Every host monitored the networking layer and the MAC layer for all kinds of packet losses. Congestion-related packet loss only occurred at the MAC layer. Because CSMA/CA was used in the simulation, a packet may be dropped due to congestion for two reasons: The wireless channel is so busy that the times of back off exceed the limit; the channel is associated with a queue that buffers all the packets waiting to be sent. When the queue is full any coming packet is dropped. Kliazovich and Granelli (2006), authors have proposed a scheme Cross-layer Congestion Control for TCP (C 3 TCP) for congestion control over WLAN where data delivery was performed over multiple wireless hops. The C 3 TCP required the introduction of an additional module to be embedded within the protocol stack of the mobile node to adjust the outgoing data stream based on capacity measurements. Chen and Heinzelman (2004), the rate adaptation scheme has been implemented with a minor modification to the IEEE 802.11 MAC protocol. In this scheme, a source node sends a Request To Send (RTS) packet before it transmits any data. When the destination node receives this RTS, it estimates the signal strength. The transmission power of each packet is known and the receive power is estimated. Then the signal strength is mapped to a transmission data rate based on an efficient rate adaptation algorithm. This transmission rate information is contained in Clear To Send (CTS) packet and sent back to the source node. The source node then transmits data at this rate. In PAMP-MAODV (Vijayaragavan et al., 2010), to utilize the battery effectively a different strategy has been proposed for route selection and route maintenance. The route selection process has been designed to select multiple routes based on hop count, end-to-end delay and residual battery capacity. In this study, we propose a Power Aware Congestion Control Multipath Multicast Protocol (PAC 2 M 2 P) for MANETs. In order to reduce the packet losses, a congestion identification scheme is proposed at the receiver.
The organization of the study is as follows: The PAMPMAODV is explained. The implementation detail of PAC 2 M 2 P routing algorithm is described. The materials and methods are discussed. The results and discussion are presented. Finally, conclusion of this study is presented.

Power-Aware Multiple Path Multicast AODV (PAMP-MAODV):
In PAMP-MAODV (Vijayaragavan et al., 2010), to utilize the battery effectively a different strategy has been proposed for route selection and route maintenance. The route selection process has been designed to select multiple routes based on hop count, end-to-end delay and residual battery capacity. PAMPMAODV relies on broadcast based on-demand route discovery. When a source node wants to send a packet or join a multicast group, it broadcasts a Route Request (RREQ) Packet, it is often likely to receive more than one response packet since any node in the multicast tree can responds to the packet. Each intermediate node, which receives RREQ, calculates 'N' using Eq. 4.2 (Vijayaragavan et al., 2010) and battery capacity Rth needed to transfer 'N' packets. When the Residual Battery (RB) capacity is greater than Rth, then each neighbor node calculates the distance between itself and the previous node which has sent RREQ, using Eq. 4.6 (Vijayaragavan et al., 2010). If the calculated distance is less than Dth, then the intermediate node forwards RREQ further. When an RREQ packet arrives at its any member, the received RREQs are stored in RREQ table.
All the member nodes are wait for a particular time RREQ_TIMER (which is set to 3 sec), receives all the incoming RREQ packets and maintains them in a RREQ table. Upon RREQ_TIMER expiry, Member node assigns rank for each path based on the hop count and link quality and sends corresponding reply, which travel back to the source retracing the path. The member generates a RREP packet that contains the node list of the whole route and unicast it back towards the source that originated the RREQ packet along the reverse route. When an intermediate node receives a RREP, it updates its mcast routing table to add an entry towards member node by using the nodes list of the whole route contained in the RREP. If the source node receives one or more RREP messages in this time, it queries the multicast table and check if the route is activated to confirm which one is the first arrival. The source node unicasts a MACT to the node which RREP is the first arrival for activating the route and sends packets through the path due to the first path has the shortest latency. The intermediate nodes, which received MACT, activate the related entry in mcast routing table and set mpath field as 1, then forward the MACT to next hop until one group member receives MACT. If the RREP received by the source node is not the first arrival, the source node replies MACT-S to the next hop. The intermediate nodes, which received MACT-S, query the multicast table and check if the route is activated. If the route is activated, the intermediate nodes discard this MACT-S, if not , it will add an entry to the backup route table to establish reverse route in backup route table and send MACT-S to the next hop until this MACT-S forward to a group member. The multicast group node received the MACT-S then unicasts a RREP-S to the source node. The intermediate node that received MACT-S adds an entry to the mcast routing table to establish forwarding route and set mpath field as 2, then forwards it to the source node. So this mechanism can guarantee two node disjoint paths and avoided loops. Source node is likely to receive one or more RREP-S messages during this time, but it selects the route with largest sequence number and smallest hops by checking the RREP-S messages as the second path and adds an entry to the mcast route table with mpath field as 2. Maintaining more than two backup paths cannot evidently improve route performance. So we select only two paths in order to reduce resource consumption and improve calculation efficiency. If the source node does not receive a RREP-S message before timeout, it uses the one path to send data packets.
Once the source node activates the first path, it sends all packets through the path in order to reduce latency caused by route discovery. When two paths has been selected, the source node starts to send packets through two paths in turn, that is, send a packet through the first path, then send the next packet through the second path. This simple method can balance the network load and relieve the network congestion.
The wireless link is easy to break because of nodes mobility or other reasons. When a node doesn't receive any message from the adjacent node or can't send any packet to the next hop, it thinks the link is broken. If the broken node on the tree, it will be treated according to the MAODV (Royer and Perkins, 1999). If not, the upstream node unicasts a Route Error message (RERR) to the source node which notifies the source node that link is broken. When the intermediate nodes in this path receive RERR, they delete the entry in the route table and continue to forwarding RERR until the source node receives RERR message. When the source node receives the RERR, it deletes the related entry in the route table, searches backup route table and checks whether both paths are invalid. If the two paths are broken at the same time, the source node broadcasts RREQ to initiate a new route discovery.
Power aware congestion control multipath multicast protocol: Scheme: UDP and TCP are two transport layer protocols widely used in wired networks. UDP has no congestion control scheme (Chen and Heinzelman, 2004) to react to network congestion. Applications that use UDP as the underlying transport protocol to transmit packets can easily overwhelm the network with data, which results in a considerable amount of wasted bandwidth in transmitting packets that will be dropped due to congestion. Therefore, some dropping of UDP packets should be investigated to react to congestion. Since TCP has an inherent congestion control scheme, congestion control is not a problem. The packet loss due to congestion has been handled by two steps: Identification of packet losses, Rate adaptation technique. The route discovery process is similar to PAMPMAODV. Once the multi-paths are discovered, the source nodes start distributing the packets along with the discovered paths to their respective receivers. The receiver nodes are informed with the number of packets to be sent and packet sent interval and these information have been included in the RREQ itself. The receiver nodes calculate the amount of packets lost, periodically. Based on the packet losses, an error message is generated by the receiver to reduce the packet sending rate. The PAC 2 M 2 P uses a new control message Packet Error Announcing Message (PEAM) message.
Determination of Threshold: Based on the different test samples, it has been found that the audio and video files allow packet loss of up to 10% at the receiving side for reconstructing the original file (ALLOWED_PACKET_LOSS = 10%). At each receiver, the packet loss is calculated after waiting for T w -the waiting time to receive 25% of the packets. The value of T w is calculated based on the packet sent interval, the total number of packets to be sent, the medium access delay using Short Inter Frame Space (SIFS) and DCF Inter Frame Space (DIFS) at every intermediate node and the propagation delay of IEEE 802.11g-T hop , during unload condition (0.003 sec) (ANSI/ IEEE Std 802.11, 1999). The value of SIFS and DIFS are 10 µsec and 50 µs respectively: Let: 'N' = the total packet count 'I' = the packet sent interval in milliseconds T hop = propagation delay (ANSI/ IEEE Std 802.11, 1999) at unload condition = 3 m sec Algorithm: In PAC 2 M 2 P, the route discovery procedure is done by using RREQs similar to PAMPMAODV. Once the routes have been discovered, the source node starts distribution of data along the discovered paths. At the receiver side the congestion is identified by calculating the T w, using MAC accessing delay, packet sent interval, propagation delay and total number of packets to be sent as mentioned in (2). After waiting for T w seconds, the receiver node checks the total number of packets received during that period and calculates the packet loss count. If the packet loss count is more than ALLOWED_PACKET_LOSS, then the receiver initiates PEAM packet to the receiver as a broadcast message.

MATERIALS AND METHODS
Experimental setup: The above mentioned protocols are implemented to form a Virtual Class Room (VCR). A VCR is one that can be immediately established and whose members can be dynamically added or removed; the group structure of the members can be reorganized dynamically. The ad hoc classroom can support urgent and timely learning activities, thus improving learning effectiveness. For example, a teacher may establish a virtual classroom from his residence, students located around can take the opportunity to form an ad hoc group to improve the teaching learning process at any time using IEEE802.11g WLAN. The network has been formed with 30 PDA nodes. Each node in the network is assigned with static IP address. The software components  The nodes are allowed to move with a speed of 0-10 m sec −1 . Field configurations of 50×50 m field with 30 nodes are used for dense network and 500×500 m field with 30 nodes for sparse network. Each node uses the IEEE 802.11g (ANSI/ IEEE Std 802.11, 1999) with a 30 m transmission radius. The pause time is varied as 0, 15, 30, 60, 120 and 240 sec respectively. Traffic sources are CBR with 512 bytes data packets. The source and receivers are spread randomly over the network and the number of receivers is varied (3-15) to change the offered load in the network. The sending rate is set by assigning different values for packet sent interval as 200, 300, 400, 500 and 1000msec respectively.
The performance of PAMPMAODV and PAC 2 M 2 P has been analyzed by considering hop count, end-to-end delay, signal strength, remaining battery capacity and packet loss count parameters for route discovery. The Packet Delivery Ratio (PDR) and Average End-to-end Delay (AED) metrics have been analyzed for the four test cases (Table 1) to evaluate the PAC 2 M 2 P. The parameter values are calculated from the log file maintained at each PDA node. The log file contains the sequence of actions performed and the necessary tables maintained by each routing protocol. Figure 1 and 2 shows the PDR of sparse network for the test case 1 mentioned in the Table 1. When the packet sent interval is 1000 m sec and the file size is small i.e., the number of packets are minimum, 98% packet delivery is achieved. When the packets are sent with 200 m sec packet sent interval, the packet delivery is increased by 18% than the PAMPMAODV. Figure 3 and 4 shows the average end-to-end delays of sparse network for test case 1. The value of average end-to-end delay for the same file at different packet sent interval is found to be increased by 15-21% than that of the PAC 2 M 2 P.

RESULTS
The test case 2 deals with a dense network and no mobility decision. The file size and the packet sent interval have been changed according to the test case 2 values. The PDR values obtained for different file sizes against varying the packet sent interval for a dense network.  When one packet is sent for one second, 98% PDR is achieved irrespective of the file size. The PDR values of PAC 2 M 2 P are found to be increased by 2-11% than that of the PAMPMAODV.
The PDRs obtained for PAC 2 M 2 P for test case 3 are shown in the Fig. 7. The PDRs for the packet sent interval of 1000 m sec are found to be 2-7% better than that of 500 m sec packet sent interval. The average end-to-end delays obtained for PAC 2 M 2 P for test case 3 is given in Fig. 8. The average end-to-end delay for packet sent interval of 500 m sec is observed to be 32-37% more than that for packet sent interval of 1000 m sec for PAC 2 M 2 P.
The PDR values obtained for a file of 600KB size, by varying the packet sent intervals as 500 and 1000 m sec in a dense network with mobile nodes are shown in the Fig. 9.
The PDR for a packet sent interval of 500 m sec in is 3-4% more than that of packet sent interval of 1000 m sec. Figure 10 shows the average end-to-end delay of PAC 2 M 2 P for the test case 4. The packet sent intervals have been varied as 500 and 1000 m sec.
The average end-to-end delay for a packet sent interval of 500 m sec is 2-7% more than that for a packet sent interval of 1000 m sec.

DISCUSSION
The performances of PAMPMAODV for different test scenarios have been analyzed. The average end-toend delay and PDR parameters have been studied for different test cases. For the test cases 1 and 2, where the nodes are not mobile, the packet delivery ratio increases with increase in packet sent interval for both the sparse and dense networks. For the test cases 3 and 4, where the nodes are allowed to move in any direction with a speed of 1-10 m sec −1 , the PDR decreases with an increase in pause time.
In order to reduce the packet losses, a congestion identification scheme is proposed at the receiver. In the PAC 2 M 2 P the receiver node is made to measure the number of packets received. If the number of packets received is found to be less than allowed loss, it initiated an error message towards the source. Upon receiving the error message the source node increases the packet sent interval.
The performance of PAC 2 M 2 P has been studied for different scenarios. For the test case 1 the PDR of PAC 2 M 2 P is increased by 2-18% than that of PAMPMAODV algorithm. For test case 2 the PDR of PAC 2 M 2 P is increased by 2-32% than that of PAMPMAODV algorithm. PDR of PAC 2 M 2 P is increased by 2-11% for test case 3 and 2-7% for test case 4 than that of the PAMPMAODV algorithm.

CONCLUSION
The performance of PAMPMAODV and PAC 2 M 2 P has been performed for different input samples, network types and mobility types. Based on the results obtained for the different test cases, the researcher observed that the increase in number of sources resulted in packet losses at the receiver side. Power Aware Congestion Control Multipath Multicast Protocol routing scheme has been proposed to reduce the packet losses. The performance of PAC 2 M 2 P has been analyzed with PAMPMAODV for four different test cases. The PDR of PAC 2 M 2 P has been increased by 2-7% for mobility allowed network. PAC 2 M 2 P has produced 2-32% increase in PDR for network with no mobility feature.