MTCP: scalable TCP-like congestion control for reliable multicast

We present MTCT, a congestion control scheme for large-scale reliable multicast. Congestion control for reliable multicast is important because of its wide applications in multimedia and collaborative computing, yet nontrivial, because of the potentially large number of receivers involved. Many schemes have been proposed to handle the recovery of lost packets in a scalable manner; but there is little work on the design and implementation of congestion control schemes for reliable multicast. We propose new techniques that can effectively handle instances of congestion occurring simultaneously at various parts of a multicast tree. Our protocol incorporates several novel features: (1) hierarchical congestion status reports that distribute the load of processing feedback from all receivers across the multicast group, (2) the relative time delay (RTD) concept which overcomes the difficulty of estimating round-trip times in tree-based multicast environments, (3) window-based control that prevents the sender from transmitting faster than packets leave the bottleneck link an the multicast path through which the sender's traffic flows, (4) a retransmission window that regulates the flow of repair packets to prevent local recovery from causing congestion, and (5) a selective acknowledgment scheme that prevents independent (i.e., non-congestion-related) packet loss from reducing the sender's transmission rate. We have implemented MTCP both on UDP in SunOS 5.6 and on the simulator ns, and we have conducted extensive Internet experiments and simulation to test the scalability and inter-fairness properties of the protocol. The encouraging results we have obtained support our confidence that TCP-like congestion control for large-scale reliable multicast is within our grasp.

[1]  Vaidy S. Sunderam,et al.  Group Communication Support for Distributed Multimedia and CSCW Systems. , 1997, ICDCS 1997.

[2]  Martin Vetterli,et al.  Receiver-driven layered multicast , 1996, SIGCOMM 1996.

[3]  Stephen Deering,et al.  Multicast routing in a datagram internetwork , 1992 .

[4]  J. J. Garcia-Luna-Aceves,et al.  A comparison of known classes of reliable multicast protocols , 1996, Proceedings of 1996 International Conference on Network Protocols (ICNP-96).

[5]  Alex Koifman,et al.  RAMP: a reliable adaptive multicast protocol , 1996, Proceedings of IEEE INFOCOM '96. Conference on Computer Communications.

[6]  Kenneth P. Birman,et al.  Performance of the ISIS Distributed Computing Toolkit , 1994 .

[7]  Raj Jain,et al.  A delay-based approach for congestion avoidance in interconnected heterogeneous computer networks , 1989, CCRV.

[8]  Markus Hofmann,et al.  A Generic Concept for Large-Scale Multicast , 1996, International Zurich Seminar on Digital Communications.

[9]  Alan O. Freier,et al.  Multicast Transport Protocol , 1992, RFC.

[10]  Jon Crowcroft,et al.  TCP-like congestion control for layered multicast data transfer , 1998, Proceedings. IEEE INFOCOM '98, the Conference on Computer Communications. Seventeenth Annual Joint Conference of the IEEE Computer and Communications Societies. Gateway to the 21st Century (Cat. No.98.

[11]  Ellen W. Zegura,et al.  Inter-receiver fairness: a novel performance measure for multicast ABR sessions , 1998, SIGMETRICS '98/PERFORMANCE '98.

[12]  V. Jacobson,et al.  Congestion avoidance and control , 1988, CCRV.

[13]  Robbert van Renesse,et al.  Horus: a flexible group communication system , 1996, CACM.

[14]  Don Towsley,et al.  Packet loss correlation in the MBone multicast network , 1996, Proceedings of GLOBECOM'96. 1996 IEEE Global Telecommunications Conference.

[15]  Donald F. Towsley,et al.  A Comparison of Sender-Initiated and Receiver-Initiated Reliable Multicast Protocols , 1997, IEEE J. Sel. Areas Commun..

[16]  Larry Peterson,et al.  TCP Vegas: new techniques for congestion detection and avoidance , 1994, SIGCOMM 1994.

[17]  J. J. Garcia-Luna-Aceves,et al.  The case for reliable concurrent multicasting using shared ACK trees , 1997, MULTIMEDIA '96.

[18]  Ellen W. Zegura,et al.  How to model an internetwork , 1996, Proceedings of IEEE INFOCOM '96. Conference on Computer Communications.

[19]  Markus Hofmann,et al.  Adding Scalability to Transport Level Multicast , 1996, COST 237 Workshop.

[20]  B. Barden Recommendations on queue management and congestion avoidance in the Internet , 1998 .

[21]  Todd Montgomery,et al.  A High Performance Totally Ordered Multicast Protocol , 1994, Dagstuhl Seminar on Distributed Systems.

[22]  Ian Wakeman,et al.  Scalable feedback control for multicast video distribution in the Internet , 1994, SIGCOMM 1994.

[23]  Van Jacobson,et al.  Random early detection gateways for congestion avoidance , 1993, TNET.

[24]  Sanjoy Paul,et al.  Reliable Multicast Transport Protocol (RMTP) , 1997, IEEE J. Sel. Areas Commun..

[25]  Sandeep K. Singhal,et al.  Log-based receiver-reliable multicast for distributed interactive simulation , 1995, SIGCOMM '95.

[26]  Madhu Sudan,et al.  A reliable dissemination protocol for interactive collaborative applications , 1995, MULTIMEDIA '95.

[27]  Matthias Grossglauser,et al.  Optimal deterministic timeouts for reliable scalable multicast , 1996, Proceedings of IEEE INFOCOM '96. Conference on Computer Communications.

[28]  Jeremy R. Cooperstock,et al.  Why Use a Fishing Line When you Have a Net? An Adaptive Multicast Data Distribution Protocol , 1996, USENIX ATC.

[29]  Alfred C. Weaver Xpress Transport Protocol version 4 , 1995, Proceedings 1995 IEEE International Workshop on Factory Communication Systems. WFCS'95.