ReMHoc: A Reliable Multicast Protocol for Wireless Mobile Multihop Ad Hoc Networks Ahmed Sobeih Hoda Baraka, Aly Fahmy Department of Computer Science Computer Engineering Department University of Illinois at Urbana-Champaign Cairo University Urbana, IL 61801 Giza, Egypt sobeih@uiuc.edu hbaraka@mcit.gov.eg, afahmy@idsc1.net.eg Abstract-In this paper, a reliable multicast protocol for wireless mobile multihop ad hoc networks (ReMHoc) is proposed. ReMHoc ensures the eventual delivery of the multicast data to all the multicast group members. ReMHoc is receiver- initiated NACK-based and it makes use of feedback suppression in order to avoid negative acknowledgement (NACK) and retransmission implosion. The loss recovery burden is distributed over the multicast group members in order to reduce recovery latency and end-to-end delay. Simulations (using GloMoSim 2.0) have demonstrated the scalability of ReMHoc. I. INTRODUCTION An ad hoc network is a wireless network that comes together when and where needed, as a collection of wireless hosts, without relying on any assistance from an existing network infrastructure such as base stations or routers [1]. Due to the lack of complete connectivity and routers, the hosts are designed to serve as relays (routers) if needed and assist each other in delivering data packets. Hence, the route between two hosts may consist of hops through other hosts (i.e., multihop routing). The hosts in an ad hoc network may be mobile and as they move relative to each other, the wireless links between them may get broken and other links may be established. Hence, the topology of an ad hoc network may change rapidly and unpredictably [2]. In a typical ad hoc network (e.g., emergency and rescue missions and battlefield communication), hosts work in groups to carry out a given task. Hence, multicasting plays an important role in ad hoc networks [3]. Although some multicast applications, such as audio/video conferencing, can tolerate packet error and/or loss, other applications, such as one-to-many file transfer and military applications do not. Hence, an inevitable need for reliable multicasting arises. However, the salient characteristics of wireless mobile multihop ad hoc networks (e.g., lack of network infrastructure, dynamic network topology, scarce bandwidth, variable link capacity, high error rates, etc.) make reliable multicasting extremely challenging. In this paper, we propose a solution to this challenging problem. The rest of the paper is organized as follows. Section II discusses the problem definition and the motivation for this research. Section III explains ReMHoc. Section IV presents simulations and performance evaluation. Finally, Section V concludes the paper and suggests future work. II. PROBLEM DEFINITION AND MOTIVATION In recent years, a number of multicast routing protocols have been proposed for ad hoc networks. Some of these protocols use tree-based structures (e.g., LAM [4], AMRoute [5], AMRIS [6], MAODV [7]), while others use more robust mesh-based structures (e.g., CAMP [8] and ODMRP [9]). All of these multicast routing protocols are “best-effort” protocols and hence, they are, by definition, unreliable. On the other hand, reliable multicasting guarantees the eventual delivery of all the multicast data to all the multicast group members [10]. Although several reliable multicast protocols have been proposed for wired networks, reliable multicasting in wireless mobile multihop ad hoc networks is still in its infancy. In [11], Pagani and Rossi suggested a protocol for reliable broadcast delivery in ad hoc networks. Although the protocol is mainly suitable to broadcast or, at most, to multicast over a dense multicast group, it becomes inadequate for sparse groups. Moreover, the protocol requires an underlying clustering protocol; hence, it is inoperable in nonclustered ad hoc networks. In addition, while this protocol provides reliability when hosts move slowly, the performance of the protocol degrades with increasing mobility. Furthermore, the protocol is not scalable because it may switch to flooding and it uses ACK messages, which are known to be expensive in wireless networks. In [12], Gupta and Srimani suggested a reliable multicast protocol that makes use of a core-based shared multicast tree and depends heavily on an underlying reliable unicast protocol. However, because tree structures are known to be fragile in wireless mobile multihop ad hoc networks, the core-based shared tree may need frequent reconstruction [12]. Moreover, the protocol depends on a single core that is used for both joining and propagation of multicast messages. Hence, the protocol suffers from traffic concentration and core vulnerability. Furthermore, the protocol requires that not only multicast group nodes but also forwarding nodes (i.e., nodes belonging to the multicast tree but not belonging to the multicast group) should buffer multicast messages; hence, a node belonging to the multicast tree will buffer multicast messages even if it is not a multicast group member. In addition, the restrictive assumption, that the underlying unicast routing protocol is reliable, severely limits any practical deployment of the protocol. Observing that a certain class of applications will be almost infeasible on ad hoc networks without reliable multicasting and seeing that there is an emerging need to have a reliable multicast protocol that requires minimal support from underlying network protocols and does not depend on an 0-7803-8145-9/04/$17.00 ©2004 IEEE. 146