Abstract

The routing efficiency in Mobile Ad Hoc Networks (MANETs) suffers from frequent battery drains, mobility and large variation of received signal strength. Thus, nodes and links in MANETs become more vulnerable and unstable. Multicast routing in MANETs for group communication requires establishment of reliable links between neighbouring nodes called as reliability pair beginning from the source and extending such reliability pairs enroute to the destination. If there are multiple paths from source to every multicast destination, the reliability of source information may be enhanced by sending higher priority information on higher priority path. In this paper, we propose a scheme of Information Priority based Multicast Routing in MANETs using multiple paths (IPMRM). IPMRM operates in following phases. (1) Reliability pair factor computation based on node power level, received differential signal strength between the nodes and mobility. (2) Pruning neighbor nodes that have reliability pair factor lesser than a threshold. (3) Finding multicast mesh routes with multiple paths to a destination using request and reply packets. (4) Priority assignment to multiple paths based on minimum value of reliability pair factor of a path and information transfer from source to multicast destination. (4) Route maintenance against link failures. The simulation results for packet delivery ratio and control overhead demonstrate better performance of IPMRM over On Demand Multicast Routing Protocol (ODMRP) and Enhanced ODMRP (EODMRP).


Introduction
Wireless links in Mobile Ad Hoc Networks (MANETs) are unstable due to large variation of channel characteristics.To enhance routing efficiency, one needs reliable routes which may be realized with the help of multiple paths.The routing scheme must ensure that the nodes which participate in route establishment and route maintenance have links with higher reliability.Thus, reliable routing protocol design is a challenging research problem in MANETs [1] [2].Reliability of links depends on node power, received signal strength, mobility and physical conditions.The group communication services such as audio/video conference and surveillance applications require reliable nodes on the multicast path for continuous transfer of prioritized and non-prioritized packets.
Various multicast routing protocols proposed in the literature are classified according to two different criteria: (1) proactive and reactive and (2) tree-based or mesh-based.Proactive protocols maintain routing state, while reactive protocols reduce the impact of frequent topological changes by redefining routes on demand.Tree-based schemes establish a single path between any two nodes in the multicast group and they are bandwidth efficient.However, as mobility increases, link failures trigger reconfiguration of entire tree.Mesh-based schemes establish a mesh of alternate paths interconnecting source and destinations.They provide more reliable paths and are more resilient to link failures as well as to various mobility conditions of nodes.
We need reliability in MANET applications such as disaster recovery operations, battlefield scenarios, on line education, etc.In such applications, nodes may achieve reliability through the redundancy that exists in sensing or communicating nodes.However, the redundancy is not provided in routing data from node to sink in a sensor network (a type of MANET).The routing algorithms must take care of redundancy while routing data in a multihop mobile network.Thus, the proposed work provides a better multicast routing scheme using prioritized multiple paths as redundant paths.

Related Works
To provide higher reliability in routing multicast packets, multiple paths with different priorities may be a better choice such that data are routed on one of the priority paths according to significance of the data (i.e., higher significant data may be sent on top priority path).The work given in [3] proposes that the neighbor node stability is dependent upon link lifetime estimation where received signal strength of a node is monitored continuously using Newton Interpolation to estimate link lifetime.In [4], a signal strength based neighbor selection procedure is implemented to test the causes for failures of routing protocol due to fading channels and unreliable network links.In [5], a QoS (Quality of Service) aware routing problem is proposed by maximizing the link stability and lifetime while minimizing the link cost.Agent based reliable ring multicast routing scheme is proposed in [6] that employs reliable ring backbone construction with the help of convex hull algorithm and multicast routes are established using the backbone.The work given in [7] uses a mesh structure, which is capable of quick recovery from mobility by utilizing node locality to reduce the overhead of route failure recovery and mesh maintenance.The signal strength based neighbor node selection mechanisms and the extension of link lifetime are discussed in [3][4] [5].The work given in [8] proposes two topology control algorithms -ABsolute Distance-based (ABD) and PRedictive Distance-based (PRD), which adjust the transmission range of individual nodes in a MANET to achieve good network throughput in a vehicular environment.
New technical trends such as overlay multicast, network coding-based multicast, energy-efficient multicast etc., are discussed in [1].Reliable multicast transport protocol for MANETs presented in [9] recovers data from various types of losses using Reliable Adaptive Congestion controlled Transport protocol (ReACT) which combines source-based congestionand error control with receiver-initiated localized recovery.The work given in [10] proposes a mesh-based multicast routing scheme that finds stable multicast path from source to receivers.The multicast mesh is constructed by using route request and route reply packets with the help of multicast routing information cache and link stability database maintained at every node.The work given in [11] characterizes the performance of multicast protocols over a wide range of MANET scenarios.The work given in [12] provides the effects of three mobility models in MANETs.An efficient loss recovery scheme for reliable multicast (CoreRM) is proposed in [13].The cooperative communications idea is used to support the local loss recovery in multicast.A receiver node experiencing a packet loss tries to recover the lost packet through progressively cooperating with neighboring nodes, upstream nodes or even source node.The authors in [14] propose a multipath routing framework for the Internet access through Wireless Mesh Networks (WMNs) by using multiple access routers.
In ODMRP [15], a source floods request packets periodically and receiver responds to the packet by using backward learning.The nodes on the path from the receiver to source form a mesh of forwarding nodes.Advantage of ODMRP is that it produces high packet delivery ratio under mobility conditions since it reduces the overhead due to re-establishment of routes under route failures.Disadvantage of ODMRP is the growth of control overhead with network size.Enhanced ODMRP with Motion Adaptive Refresh (EODMRP) given in [16] presents an enhancement of ODMRP with refresh rate dynamically adapted to the environment.An additional enhancement is unified local recovery and receiver joining.On joining or upon detection of a broken route, a node performs an expanding ring search to graft to the forwarding mesh.EODMRP reduces the overhead up to 90\% yet keeping similar packet delivery ratio compared to the original ODMRP.Other mesh-based protocols include Forwarding Group Multicast Protocol (FGMP) [17], Core Assisted Mesh Protocol (CAMP) [18], location-based multicast protocol [19], and Dynamic Core-based Multicast Protocol (DCMP) [20]), Dynamic Counter-Based Forwarding Scheme for ODMRP (CODMRP) [21] and Resilient On Demand Multicast Routing Protocol (RODMRP) [22].
The work given in this paper is an extension of works given in [23] [24].The scope of the work was limited to selection of reliable neighbor nodes for routing in MANETs and it lacked detailed formulation of components of the scheme.Our contributions in this paper are as follows.(1) selection of reliable neighbor nodes based on reliability pair factor, (2) multiple path discovery for multicast routing through non-pruned neighbors, (3) assignment of priority multiple paths from source to every multicast destination to forward prioritized source information, (4) route maintenance scheme to handle link and node failures and (5) validating the performance of the scheme for packet delivery ratio and control overheads.

Identification of Reliable Neighbor Node
Reliable neighbor node selection mechanism is given in our previous work [23] and the concept is used for establishing multipath multicast routes using reliability pair.Reliability pair is defined as a set of two connected reliable nodes.Reliability Pair Factor (R PF ) defines the link connectivity status.In order to compute R PF , let us assume BF as the full battery capacity of a node, then remaining battery power of node i at time t (R i rem (t)) is given by equation 1.
where P b is the power required to transmit a bit, NB(t-1,t) is the number of bits transmitted from time t-1 to t and Pow I (t-1,t) is the power required to perform node i is internal operations for the duration t-1 to t.At t=0, R i rem (t) = BF.It is assumed that R i rem (t) lies in two ranges based on Power ratio defined by equation 2.

BF
such that R i rem (t) of node i is either in Low range (if the power ratio is within 10\%) or in High range (if the power ratio is within 10\%).
The ranges of R i rem (t) of node i decides transmission power and connectivity status of reliability pair nodes.Reliability pair is augmented as follows.Let initial positions of nodes i and j have coordinate values (x1,y1) and (x2, y2), respectively located at a distance d meters apart.At time T=0, the distance between the nodes is d (ij,0) , and at time T=t, nodes move to new positions (x1', y1') and (x2', y2') with new distance between them as d (ij,t) .The successful transmission of packets between nodes i and j is defined with R PF which is directly proportional to the minimum remaining battery power level of either nodes (R i rem , R j rem ), differential signal strength (D S ) calculated at either node and inversely proportional to the distance between them (d (ij,0) , d (ij,t) ).The R PF at T=0 is given by equation 3. (ij,0) where K is a proportionality constant.At T=t, the R PF is obtained by replacing d (ij,0) by d (ij,t) in equation 3.

Information Priority Based Multicast Routing
Information Priority based Multiple path Multicast routing in MANETs (IPMRM) is constructed using neighbor node selection method.The system operates in the following phases.
(1) Pruning neighbor nodes and multicast mesh route discovery, (2) priority assignment to multiple paths and information transfer and (3) route maintenance.

Neighbor Node Pruning and Route Discovery
Initially, the node willing to initiate route set up, identifies its neighbors.The R PF corresponding to each neighbor is computed using equation 3. We wish to establish multicast routes using nonpruned nodes that have R PF ≥ R PF

Th
. Here, R PF Th is the threshold of R PF and is fixed by system administrator required for an application and the routes are established through only nonpruned neighbors.Let us illustrate neighbor selection and pruning by considering node k with seven neighbors l, m, n, o, p, q and r that have 2.34, 2.12, 3.01,1.01,1.98, 1.8 and 0.32 values for R PF , respectively as shown in Figure 1.At time T=0, assume all nodes are stationary with sufficient bandwidth available to exchange hello messages and identify their neighbors.Assume the value of R PF Th = 1.2 set is set.Node k prunes neighbor nodes m and q since these nodes have R PF ≤ R PF Th .This procedure is repeated at non-pruned neighbor nodes to find their non-pruned neighbors till a destination is reached.For route construction period, assume the node's remaining power R i rem remains constant (i.e., the nodes are not involved in transmitting/receiving any packets) and there is no node mobility.
At time T=t, node n moves to a location n' away from node k, thus R PF of the node pair k and n' decreases to 0.97 because of increase in distance between the nodes for the same remaining power.R PF of node pair k and n' becomes less than R PF Th , hence the node n' in new position will be pruned.

Multicast Mesh Route Discovery
The components of request packet (RQ) and reply packet (RP) that are used to establish multicast routes are shown in Table 1.The components are explained.

RQ Packet Details:
• Source address (S addr ): It is the address of source willing to set up multicast mesh route to group members.
• Multicast address (MC addr ): It is the group address.
• Sequence number (Seq no): It is the RQ packet number originated at source to establish a path and helps in identification of duplicate RQ packets.
• Path information (PT infm ): This field stores node addresses a packet has visited in sequence.It stores all node addresses the packet visits while traveling from source to destination, i.e., visited node appends its address to this field at tail end of the field.
• R PFmin : This is the minimum value of R PF for a path.The field is updated (at every visited node) if previous node R PF (R PFPrevnode ) is less than R PFmin .It helps in deciding the priority level of a path.This is updated at every visited node.
• Hop count (HC): It is set to maximum value (number of hops RQ packet can travel) by source.The value is decremented by one for every visited node.This helps in preventing orphan packets, i.e., with hop count as zero, packet is discarded and the source of the packet is informed about it.There are three types of database maintained at a node: (1) neighbor information (NI) to identify pruned and non-pruned neighbors, (2) temporary information (TI) -it is created temporarily at a node to keep track of RQ packets visited at a node for multicast group.The TI from RQ is purged when respective RP packet visits the node and (3) routing information (RI)it helps in transmitting packets through mesh of multicast routes.) -the normalized priority of i th next hop at node N for a DN.
In request phase, every node identifies its non-pruned neighbors using R PF in NI and broadcasts RQ packet until either it reaches the other end of the network or hop count is zero.While traversing from source, RQ packet is appended with address of visited node in PT infm at tail end of RQ packet and R PFmin of path is updated.For every RQ visited at a node, TI components are updated to keep track of duplicate packets and path information.By the time RQ packet reaches destination, the individual route information such as PT infm and $R PFmin are available with the RQ packet.During request phase, if a node does not find its non-pruned neighbors (due node and link failures), RQ packet is not re-broadcasted.In reply phase, RP packet is generated at each multicast destination and it is routed to S through the path defined in PT infm brought by RQ packet.At every visited node, RI is updated by RP packet for DN, Next hop (using path information) and R PFmin components.For RP packet traveling from destination to source, RP packet updates Next hop by node address PT infm [HC].Visited node purges its TI for corresponding RP packet (based on sequence number of RQ and RP packets).If a node does not find its next hop due to node or link failures, RP packet is made to wait for some time at the visited node and after timeout, it can be resent.If a node does not find next hop even after timeout, RP packet is dropped and informed to the destination where RP packet is generated.However, nodes are fairly stable in the path and thus RP packet dropping rate may be low since it uses reliable non-pruned nodes.

Multiple Path Priority Assignment and Information Transfer
After receiving RP packet from each multicast destination, source assigns priority to all multiple paths to a destination.Sequence of operations performed by source are as follows: (a) receive RP packets from all destinations, (b) assign normalized priority to multiple paths based on R PFmin brought by RP packets, (c) segregate information to be transmitted to multicast destinations into different streams and assign the priority level to each stream and (d) transmit high priority information on high priority path and subsequent priority information on next priority paths.The multicast routing scheme balances various streams on different priority paths (mesh routes) so as to reduce the burden on a single route.As the number of multiple paths to a destination increase, the route reliability increases since different streams flow on different priority paths.

Route Maintenance
Due to node mobility and node/link failure, a link may be unavailable.This situation can be handled by either of the following mechanisms: (1) local recovery of failed link through nonpruned neighbor nodes and (2) entire reconstruction of routes.Whenever a link fails on a path from source to destination, the failed link divides the path into two segments: one segment is from source to the source side node of a failed link and the other segment is from receiver to the receiver side node of a failed link.
In local recovery mechanism, RQ packet is generated by the source side node of a failed link using source address as its own address and destination address as the receiver side node of a failed link.Route discovery takes place as explained in section 4 to patch-up the path between nodes of a failed link.However, the receiver side node generates only one RP packet needed to patch-up the failed link.If many links fail simultaneously, mesh routes are reconstructed from source to destination since local recovery overhead will be more than overhead of reconstruction of routes.
Whenever a new node wishes to join multicast group, it uses RQ and RP packets to join to multicast group using its non-pruned neighbors existing on multipath.Whenever a node is willing to leave the group, it simply does not respond to any control messages (RQ/RP packets) and its neighbor nodes remove this node from their list when the network is refreshed.

Simulation Model
The routing scheme is simulated in various network scenarios to assess the performance and effectiveness of the approach.Simulation environment for the proposed work consists of five models.(1) Network model: An ad hoc network is generated in an area of l × b square meters.It consists of N number of mobile nodes that are placed randomly in an area.Every node sets R PF Th .
(2) Power model: Every node is assumed to have its remaining battery power in two randomly distributed ranges, Low range and High range.A node has full battery power, BF.P b is the power required to transmit a bit and Pow I is the power required to perform node's internal operations.Differential received signal strength D S is randomly distributed.(3) Propagation model: Free space propagation model is used with propagation constant β.Transmission range of a node is r for one-hop distance.(4) Mobility model: Random waypoint (RWP) mobility model based upon three parameters is used where speed of movement, direction and time of mobility.In RWP, each node picks a random destination within a geographical area, and travels with an average velocity v. Node pause time at destination is Z.Eight directions are considered for node movement: east, west, north, south, north-east, northwest, south-east and south-west and (5) Traffic model: A multicast group may comprises of M members.Constant bit rate model is used to transmit constant sized packets, Tr pkts .Coverage area around each node has a bandwidth, BW single-hop , shared among its neighbors.

Simulation Procedure
The proposed scheme is simulated using following simulation inputs.The following performance parameters are assessed.
• Packet Delivery Ratio (PDR): It is defined as the average of ratio of packets received at the destinations to the number of packets sent from a source.• Control Overhead: It is defined as the number of control packets (RQ/RP packets) needed to establish routes to all destinations from a source.• Memory Overhead: It is the total number of bytes to be stored in node database (RI and NI) to establish and maintain the routes for a multicast group.• Message Overhead: It is the average number of messages exchanged between every non-pruned node and its neighbors at any given time to maintain neighbor information.

Results
The simulation is carried out on Pentium IV machine using 'C' language.The analysis of performance parameters are given in this section.
Effect of group size on PDR is shown in Figure 3 for various mobility patterns.For static pattern of nodes (no mobility), PDR is fairly high compared to mobility of 5 m/s and 10 m/s.The fall in PDR is due to change of non-pruned node's pattern under mobility condition, thus creating different set of end-to-end multipaths.In all cases, PDR increases with increase in group size as multiple paths to every destination increase and these multiple paths carry more number of priority streams that helps to increase PDR.PDR for IPMRM is better compared to ODMRP and EODMRP since these protocols do not consider multiple paths to send prioritized data streams and multiple paths are formed based on non-pruned nodes concept (see Figure 4).ODMRP and EODMRP rely on links which are vulnerable to packet drops in contrast to IPMRM that are established based on high reliability.The gap between PDR curve of IPMRM and ODMRP decreases with increase in group size since connectivity improves in ODMRP with increase in group size.But IPMRM maintains consistent PDR with increase in group size.Figure 5 shows control overhead with increase in number of nodes.For given number of nodes, the control overhead (control packets) increase with increase in group size.As network size increases (beyond 150 nodes), the control overhead decreases at higher multicast group sizes.This is due to the possibility of establishing multiple paths by many number of same non-pruned nodes to destinations since these non-pruned nodes happen to be on the path for all those destinations.Route establishment in IPMRM uses only non-pruned nodes and it needs less number of control packets (RQ/RP packets) compared to ODMRP and EODMRP as these protocols use all the nodes for route establishment (see Figure 6).As number of nodes increase, the overhead increases but the increase is less steeper in IPMRM.Figure 7 shows memory overhead of IPMRM for 50 and 100 node topology at discrete simulation time.The overhead in 100 node topology is more than that of 50 node topology.As the number of nodes increase, there are chances that more number of neighbors satisfy R PF Th condition and there are more entries in node database that increases overhead.ODMRP memory overhead is higher than IPMRM (See Figure 8) due to following reasons.(1) Forwarding nodes of ODMRP store join table and join reply packets corresponding to all the neighbors of nodes as there is no node-pruning mechanism on storage as in IPMRM.Messages exchanged among neighbors to find non-pruned nodes in IPMRM are shown in Figure 9 for 50 and 100 node topology over a simulation period.Message overhead in 100 node topology is more than that of 50 node topology as more messages are needed to select non-pruned nodes.Because of fixed duration refreshing in ODMRP, messages exchanged to set up a mesh of routes is high for short refresh duration due to frequent mobility and route breaks whereas in IPMRM, the route breaks are less frequent since it uses multiple routes to send prioritized data; if any route breaks, then other less priority path is used to send the data (see Figure 10).Since EODMRP uses dynamic refreshing and local recovery of routes, messages exchanged are less compared to ODMRP.

Conclusions
In this paper, we proposed a scheme for information priority based multiple path multicast routing in MANETs that used reliable neighbor node selection mechanism.Neighbor nodes are selected that satisfy certain threshold of reliability pair factor to find non-pruned neighbors.Non-pruned neighbors are used to establish reliable multipath multicast routes with assigned priority levels using request and reply control packets along with node database comprising of neighbor and routing information.Prioritized multipaths carry various priority data to multicast destinations.Neighbor node selection is realized with the help of node power model and mobility model.Robust route maintenance mechanism is provided to handle link and node failure situations.The results of simulation for packet delivery ratio, different overheads and packet delays illustrate the effectiveness of the developed scheme over well established mesh based multicast routing protocols such as ODMRP and EODMRP.

Figure 1 :
Figure 1: Reliability pair: before and after mobility of node n The normalized priority of i th next hop of a node N for a destination DN is computed as, is R PFmin of i th next hop of a node N and F RPmin NH is highest R PFmin of all next hop nodes of node N.

Figure 2
Figure 2 shows an arbitrary network topology with three multicast destinations (D1, D2 and D3) and one source (S) having multiple paths to each destination.

Figure 5 :
Figure 5: Control overhead Vs.Number of nodes

Figure 6 :
Figure 6: Control overhead Vs.Number of nodes (comparison with ODMRP and EODMRP)

( 2 )
Number of bytes in join request and join reply packets are more compared to the number of bytes in node database of IPMRM.

Figure 8 :
Figure 8: Memory overhead Vs.Simulation time (comparison with ODMRP and EODMRP)} However, memory overhead in EODMRP outperforms ODMRP since EODMRP uses expanding ring search mechanism upon joining or detection of a broken route.Expanding ring search mechanism helps EODMRP node to graft to the forwarding mesh there by reducing memory overhead under above said conditions.

Table 1 :
RQ/RP Packet Details It is the destination address of a member in a multicast group where RP packet is generated and routed to source.• Multicast address(MC addr ): It is the group address.• Sequence number(Seq no): Same as in RQ.This helps the source to identify RP for a RQ packet.• Request flag (RQF): Setting RQF=0 implies RP packet.• Path information (PT infm ): Same as in RQ.The sequence of addresses stored in this field are used by RP packet to route it to the source from destination node.The route traced is through the sequence of addresses starting from tail end address to front address.• R PFmin : This is the final value of a path brought by RQ packet at destination.For RP packet, this value is unchanged until delivered to the source.• Hop count (HC): This field is set at destination with total number of addresses in PT infm brought by RQ packet.It is decremented at every visited node while traveling to source.
• Source address (S addr ): It is the address of the source (as given in RQ packet) to which RP packet is routed from a destination.• Destination address (D addr ):

Table 2 :
Neighbor InformationThe components of NI are shown in Table2.It includes: R PF for all neighbor nodes and a pruned node flag (PNF) that indicate whether the node is either pruned or non-pruned.A pruned node cannot participate in routing.

Table 3 :
Temporary Information The components of TI are shown in Table3.It includes: MC group -multicast group address, $Seq~ no$ -sequence number and PT infm -path information.Entries in NI are updated at every node for each received RQ packet.This information is purged when RP packet corresponding to RQ packet is received at the node.Components of routing information (RI) at a node are shown in Table4.It includes: MC group -multicast group address, DN addr -multicast destination address, Next hop -address of next hop for forwarding data packet, DN -destination node, R PFmin -the minimum R PF value of a path and Normalized priority (P DN (N,i)

Table 4 :
Routing Information