Multicast Routing Protocols in Mobile Ad Hoc Networks: A Comparative Survey and Taxonomy <s> Ad Hoc Multicast Routing Protocol Utilizing Increasing ID Numbers (AMRISs) <s> We propose an ad-hoc multicast routing protocol, referred to as PatchODMRP. PatchODMRP extends the ODMRP (on-demand multicast routing protocol), which is a mesh-based multicast routing protocol proposed for ad-hoc networks. In ODMRP, the nodes that are on the shortest paths between the multicast group members are selected as forwarding group (FG) nodes, and form a forwarding mesh for the multicast group. The ODMRP reconfigures the forwarding mesh periodically to adapt it to the node movements. When the number of sources in the multicast group is small, usually the forwarding mesh is formed sparsely and it can be very vulnerable to mobility. In this case, very frequent mesh reconfigurations are required in ODMRP, resulting in a large control overhead. To deal with this problem in a more efficient way, PatchODMRP deploys a local patching scheme instead of having very frequent mesh reconfigurations. In PatchODMRP, each FG node keeps checking if there is a symptom of mesh separation around itself. When an FG node finds such a symptom, it tries to patch itself to the mesh with local flooding of control messages. Through a course of simulation experiments, the performance of PatchODMRP is compared to the performance of ODMRP. The simulation results show that PatchODMRP improves the data delivery ratio, and reduces the control overheads. It has also been shown that the performance gain is larger when the degree of node mobility is bigger. <s> BIB001 </s> Multicast Routing Protocols in Mobile Ad Hoc Networks: A Comparative Survey and Taxonomy <s> Ad Hoc Multicast Routing Protocol Utilizing Increasing ID Numbers (AMRISs) <s> The use of on-demand techniques in routing protocols for multi-hop wireless ad hoc networks has been shown to have significant advantages in terms of reducing the routing protocol's overhead and improving its ability to react quickly to topology changes in the network. A number of on-demand multicast routing protocols have been proposed, but each also relies on significant periodic (non-on-demand) behavior within portions of the protocol. This paper presents the design and initial evluation of the Adaptive Demand-Driven Multicast Routing protocol (ADMR), a new on-demand ad hoc network multicast routing protocol that attemps to reduce as much as possible any non-on-demand components within the protocol. Multicast routing state is dynamically established and maintained only for active groups and only in nodes located between multicast senders and receivers. Each multicast data packet is forwarded along the shortest-delay path with multicast forwarding state, from the sender to the receivers, and receivers dynamically adapt to the sending pattern of senders in order to efficiently balance overhead and maintenance of the multicast routing state as nodes in the network move or as wireless transmission conditions in the network change. We describe the operation of the ADMR protocol and present an initial evaluation of its performance based on detailed simulation in ad hoc networks of 50 mobile nodes. We show that ADMR achieves packet delivery ratios within 1% of a flooding-based protocol, while incurring half to a quarter of the overhead. <s> BIB002 </s> Multicast Routing Protocols in Mobile Ad Hoc Networks: A Comparative Survey and Taxonomy <s> Ad Hoc Multicast Routing Protocol Utilizing Increasing ID Numbers (AMRISs) <s> Ad hoc network is a multihop wireless network of mobile nodes without fixed infrastructure. We have proposed PDAODMRP (Passive Data Acknowledgement ODMRP) to adapt the limited bandwidth and frequently changing topology of ad hoc network. PDAODMRP defines the adjacent un-forwarding nodes of forwarding nodes as pool nodes to reduces its local route maintenance scope, and its local route maintenance scope is at least one-hop smaller than that of PatchODMRP. However, PDAODMRP does not make full use of its multiple paths by distributing its data load to these paths. Therefore, in this paper, we propose MPDAODMRP (Multipath PDAODMRP) to extend PDAODMRP. MPDAODMRP distributes data overhead to multipath based on diversity coding. The simulation results show that the data overhead and the data delivery delay of MPDAODMRP are much lower than that of PDAODMRP. <s> BIB003 </s> Multicast Routing Protocols in Mobile Ad Hoc Networks: A Comparative Survey and Taxonomy <s> Ad Hoc Multicast Routing Protocol Utilizing Increasing ID Numbers (AMRISs) <s> Preemptive route maintenance allows a routing algorithm to maintain connectivity by preemptively switching to a path of higher quality when the quality of the currently used path is deemed questionable. Preemptive routing initiates recovery actions early by detecting that a link is likely to be broken soon and searching for a new path before the current path actually breaks. Preemptive route maintenance has been used for unicast (point-to-point) communications in wired networks and in mobile ad-hoc networks (MANETs) to minimize the number of route breaks and thus packet losses, and end-to-end delays. In addition to these advantages, we show that preemptive route maintenance can help minimize control overhead and improve the scalability of multicast routing protocols in MANETs. In this paper, we present design and implementation issues of preemptive routing for multicast in MANETs. We then describe a preemptive multicast routing protocol based on ODMRP (On-Demand Multicast Routing Protocol), which we call PMR (Preemptive Multicast Routing). PMR significantly improves the scalability of ODMRP: it offers similar or higher packet delivery ratios while incurring much less control overhead. Our simulation results have confirmed these advantages of PMR. <s> BIB004
Protocol Description. AMRIS  is an on-demand protocol that constructs a shared delivery tree to support multiple senders and receivers within a multicast session. AMRIS dynamically assigns every node (on demand) in a multicast session with an ID number known as msm-id. A multicast delivery tree rooted at a particular node with the smallest msm-id, called the Sid, is constructed. msm-id increases as the tree expands from the source (generally, the Sid is the source if there is only one sender for a group). In the case of multiple senders, the sender with smallest msmid is selected as the Sid. A multicast session is initiated by a NEW-SESSION message sent by the Sid. The NEW-SESSION message includes the Sid's msm-id and the routing metrics. Neighbor nodes receiving this message generate their own msm-id, which is larger than that specified in the NEW-SESSION message. The nodes rebroadcast the NEW-SESSION message with their own msm-ids. To join a multicast group, a node sends a Join Request (JREQ) to the parent node with smallest msm-id. If the parent is a member in the desired multicast group, it sends a Join Acknowledgment (JACK). Otherwise, the parent sends a JREQ to its parent. Figure 15 illustrates the joining process in AMRIS. When a link between two nodes breaks, the node with the larger msm-id is responsible for rejoining. A node attempts to rejoin the tree by executing Branch Reconstruction (BR), which has two main subroutines, BR 1 and BR 2 . However, BR 1 is executed when the node has neighboring potential parent nodes which it can attempt to join, and BR 2 is executed when the node does not have any neighboring nodes that can be potential parents. Discussion. AMRIS repairs the broken links by performing local route repair without the need for any central controlling node, thereby reducing the control overhead. Introducing the concept of ID number avoids loop formation. However, AMRIS acts after a link has already failed, and so it introduces a significant delay in route recovery and packet loss. In addition, nodes periodically send beacons to signal their existence. As a result, bandwidth is wasted and also many packets are lost due to collisions between beacons. Figure 16 illustrates the joining process. This process constructs (or updates) the routes from sources to receivers and builds a mesh of nodes, the forwarding group. Multicast senders refresh the membership information and update the routes by sending JOIN DATA packets periodically. No explicit control message is required to leave the group. Any node which needs to leave the group just stops sending the JOIN DATA packet, or, if it does not need to receive from the multicast group, it does not send the JREP packet. Simulation results have shown that mesh-based protocols significantly outperform treebased protocols. In addition, compared with another mesh protocol CAMP, ODMRP produced less control overhead and efficiently utilized those control packets to deliver more data packets to multicast members. PatchODMRP BIB001 is proposed to save control overhead introduced by ODMRP by utilizing local route maintenance (3-hop). In spite of this modification, its local route maintenance is still considerable. In order to further reduce the scope of that maintenance and incur less control overhead, PoolODMRP is proposed  . With the aid of pool node technology and by reducing the scope of local route maintenance to 1-hop, PoolODMRP reduces its control overhead greatly. In order to alleviate the limitations of PoolODMRP (it is less efficient in local route maintenance than PatchODMRP, as it consumes CPU resources to collect route information from data packets and uses the BEACON signal from the MAC layer to maintain the status of forwarding nodes), an ad hoc multicast protocol based on passive data acknowledgement, called PDAODMRP, has been proposed BIB003 . PDAODMRP knows the status of its downstream forwarding nodes by route information collected from data packets instead of by means of the BEACON signal of the MAC layer, and reduces the wasting of wireless bandwidth created by the BEACON signal. It has also adopted a new method of route information collection from data packets to reduce CPU usage. In addition, it has adopted dynamic local route maintenance to enforce its local route maintenance methodology. Non-participating node Multicast group member Another variation of ODMRP is E-ODMRP [60] (Enhanced ODMRP). E-ODMRP enhances ODMRP with an adaptive route refresh mechanism based on receiver reports on link breakages, rather than on mobility prediction. In particular, the enhancement changes the route refreshing period dynamically to reduce the flooding overhead of JOIN QUERY packets. In this way, it improves the efficiency of the protocol. In addition, E-ODMRP proposes a local route recovery mechanism based on ERS. However, this scheme incurs additional control packets (i.e., the RECEIVER JOIN packet) and requires additional processing at nodes, which may not be available in low end mobile devices. Furthermore, malicious or misbehaving nodes can drain the resources of multicast receivers and forwarding nodes by initiating frequent ERSs. Simulation results show that E-ODMRP reduces packet overhead by up to 50%, while keeping the packet delivery ratio similar to that of the original ODMRP. Moreover, the simulation results also confirm that E-DMRP outperforms ADMR BIB002 . Discussion. The main disadvantage of ODMRP is high control overhead while maintaining current forwarder groups and all network request package flooding. This problem can be overcome using preemptive route maintenance, as suggested by Xiong et al. BIB004 . Another disadvantage is that the same data packet propagates through multiple paths to a destination (duplicate packets), which reduces multicast efficiency. In addition, ODMRP has a scalability problem. Finally, the sources must be part of the group's multicast mesh, even when they are not interested in receiving multicast packets.