294 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 8, NO. 3, JUNE 2000 Scalable Reliable Multicast Using Multiple Multicast Channels Sneha Kumar Kasera, Associate Member, IEEE, Gísli Hjálmtýsson, Associate Member, IEEE, Donald F. Towsley, Fellow, IEEE, and James F. Kurose, Fellow, IEEE Abstract—We examine an approach for providing reliable, scalable multicast communication, involving the use of multiple multicast channels for reducing receiver processing costs and reducing network bandwidth consumption in a multicast session. In this approach a single multicast channel is used for the original transmission of packets. Retransmissions of packets are done on separate multicast channels, which receivers dynamically join and leave. We first show that protocols using an infinite number of multicast channels incur much less processing overhead at the receivers compared to protocols that use only a single multicast channel. This is due to the fact that receivers do not receive retransmissions of packets they have already received correctly. Next, we derive the number of unwanted redundant packets at a receiver due to using only a finite number of multicast channels, for a specific negative acknowledgment (NAK)-based protocol. We then explore the minimum number of multicast channels required to keep the cost of processing unwanted packets to a sufficiently low value (i.e., to achieve most of the benefit of using an infinite number of multicast channels). For an application consisting of a single sender transmitting reliably to many receivers we find that only a small number of multicast channels are required for a wide range of system parameters. In the case of an application where all participants simultaneously act as both senders and receivers a moderate number of multicast channels is needed. Finally, we present two mechanisms for implementing multiple multicast channels, one using multiple IP multicast groups and the other using additional router support for selective packet forwarding. We discuss the impact of both mechanisms on performance in terms of end-host (sender, receiver) and network resources. The approach of implementing multiple multicast channels that uses additional router support reduces both end-host processing costs and network bandwidth usage. Index Terms—Multicast channel, reliable multicast, retransmis- sion scoping. I. INTRODUCTION M ANY applications such as shared whiteboard, multicast file transfer, stock quote dissemination, distributed interactive simulation, web cache updates, and distributed Manuscript received January 8, 1999; revised June 30, 1999; approved by IEEE/ACM TRANSACTIONS ON NETWORKING Editor S. McCanne. This work was supported by the National Science Foundation under Grant CDA-9502639 and Grant NCR-9508274. Any opinions, findings, conclusions or recommenda- tions expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. S. K. Kasera was with the Department of Computer Science, University of Massachusetts, Amherst, MA 01003 USA. He is now with Lucent Bell Labora- tories, Holmdel, NJ 07733 USA (e-mail: kasera@research.bell-labs.com). G. Hjálmtýsson is with AT&T Labs Research, Florham Park, NJ 07932-0000 USA (e-mail: gisli@research.att.com). D. Towsley and J. Kurose are with the Department of Computer Sci- ence, University of Massachusetts, Amherst, MA 01003 USA (e-mail: towsley@cs.umass.edu; kurose@cs.umass.edu). Publisher Item Identifier S 1063-6692(00)04997-9. Fig. 1. Retransmission scoping problem. computing require reliable multicast, where sender(s) transmit data to a group of receivers in a reliable manner. Using mul- ticast rather than sending to each receiver individually has the potential of saving on sender and network resources, and reducing the time to completion by overlapping transmission to multiple receivers. The design of reliable multicast architec- tures and protocols that make efficient use of both the network and end-host resources, and scale to applications that can potentially have several thousand receivers, is a challenging task. In this paper we examine an approach for providing reliable, scalable multicast communication, with end-to-end loss repairs, with the goal of reducing receiver processing overhead and re- ducing network bandwidth consumption. This approach (first suggested in [4] and [6]) involves the use of multiple multicast channels. To illustrate the problem, consider a reliable multi- cast scenario using a single multicast channel. All packet trans- missions and retransmissions are done over the single multicast channel. Each receiver therefore receives all of the retransmis- sions of a packet, even after correctly receiving the packet (see Fig. 1). This imposes unnecessary receiver processing overhead and wastes network bandwidth on links leading to receivers who have already received the packet, especially as the number of re- ceivers increases. Hence a fundamental problem in reliable mul- ticast is how to scope retransmissions so as to shield receivers and the links leading to them from loss recovery due to other receivers. In this paper we examine an approach that allows one to over- come this retransmission scoping problem in a multicast sce- 1063–6692/00$10.00 © 2000 IEEE