Name: Marjory Johnson Senior Scientist White Paper Topic: Reliable Multicast Affiliation: Research Institute for Advanced Computer Science (RIACS) NASA Ames Research Center Postal address: Mail Stop 19-39 NASA Ames Research Center Moffett Field, CA 94035 - 1000 e-mail address: mjj@riacs.edu Telephone: 1-415-604-6922 Fax: 1-415-962-7772 RELIABLE MULTICAST Multicast applications, many of which involve multimedia, are becoming increasingly important and are likely to account for a significant component of network traffic in the Next Generation Internet. The need to migrate towards a multicast-enabled Internet is widely recognized. The use of multicast will provide significant bandwidth savings for applications such as distance learning, database replication, audio and video conferencing, and distributed simulation. While some multicast applications (e.g., video conferencing) are tolerant of errors and thus reliability is not an issue, other multicast applications (e.g., database replication or distributed simulation) require reliable multicast. For the Next Generation Internet it is important to ensure that effective mechanisms are provided to offer reliable multicast to those applications requiring it. Different Approaches for Achieving Reliable Multicast Different approaches for achieving reliable multicast are presented in the literature. Numerous objectives have been used to measure the performance of a reliable-multicast protocol. These include avoiding ack implosion at the sender, minimizing total delay to achieve error-free transmission, minimizing bandwidth utilization, providing scalability to accommodate large multicast groups, accommodating diversity of receivers, minimizing processing requirements for both the sender and the receivers, etc. Different protocols generally focus on achieving different subsets of these objectives. There is no general consensus that one approach is clearly superior. The effectiveness and efficiency of a particular reliable-multicast protocol is likely to be dependent on the application and on the way in which applications interact with each other. It is this dependence that we address in this white paper. Application Taxonomy It would be useful to develop a taxonomy of multicast applications that require reliable multicast. Application characteristics that might be used as a basis for this taxonomy include size of multicast group, whether or not the multicast group could be divided into subgroups of receivers in a natural manner, number of senders, delay constraints, volume of traffic, burstiness of traffic, amount of processing required by the receivers, etc. It is also important to classify applications according to the degree of reliability required, e.g., forward error correction might suffice for some applications, while retransmission might be required for others. Such a classification could provide a foundation for evaluating the appropriateness of a particular reliable-multicast approach for a specific type of application. For example, a sender-initiated retransmission protocol might work well for non-interactive applications with a single sender (such as database replication), whereas a receiver-initiated retransmission protocol might be more appropriate for interactive applications. A closely related issue is the dependence of a reliability mechanism on the underlying network infrastructure. For example, the use of a satellite network might impact the selection of a mechanism for reliable multicast. Interactions between Network Applications The impact of multicast applications on other traffic on the Next Generation Internet is not well understood. Even though the MBone has experienced phenomenal growth, it remains a relatively controlled environment. There is still much to be learned about how various applications that will be typical in the time frame of the Next Generation Internet will interact with each other. TCP traffic dominates the current Internet. Both multimedia applications and multicast applications are UDP based. As these types of applications become increasingly prevalent, UDP traffic may become the dominant type of traffic. TCP incorporates mechanisms to back off when the network starts to become congested; congestion control may be quite different in an environment where a large percentage of the traffic is generated by UDP- based applications. An important factor in the development and evaluation of a reliable- multicast protocol should be consideration of the ways in which the multicast application will impact other applications running on the network. Adaptability of Reliable Multicast Protocols An effective reliability mechanism should be able to adapt to different network scenarios. For example, it is desirable for a protocol to be able to adapt to changes in the overall network performance, in the composition of the multicast group, or perhaps in the rate of transmission by a sender within the multicast group. This requires techniques for feedback of information in a timely enough manner to render it useful in managing the network.