Implementing Multicast Data Dissemination

Wang Lam and Hector Garcia-Molina

Papers Available

Abstract

In this paper we consider the design and implementation of a general-purpose reliable multicast data-dissemination facility. Using design insights we uncovered for data scheduling under high request load, reliable transmission over lossy networks, and bandwidth slicing to accommodate participants of varying network capacity, we create a working implementation able to transmit data efficiently over IP multicast networks. We describe challenges we encountered and design decisions we made in implementing our prototype, then evaluate the performance of our system and seek its scaling limits. We find that our data server can provide data to hundreds of simultaneous clients and provide service under request loads beyond the limits of traditional queued or other unicast file service.

Summary

This paper describes how we implement a multicast facility that reliably delivers data to many clients, and measures its performance when run over low-end commodity computers. The paper describes the rationale and decision for one versus many announcement channels preannouncing data-channel transmissions; various ways for a server to verify a client's successful receipt of a data item; and how the server can break files into data items with unique fixed-length identifiers. The evaluation then compares the implementation to prior simulation study, determines the scaling behavior of the implementation for many hundreds of simultaneous clients, and profiles the relative computational cost of the multicast server's key activities.

Citation (BibTeX)

@techreport{lg-implementation,
 author      = {Wang Lam and Hector Garcia-Molina},
 title       = {Implementing Multicast Data Dissemination},
 institution = {Stanford University},
 year        = {2004},
 note        = {Available at http://dbpubs.stanford.edu/pub/2004-32}
}

Wang Lam - source Sun Oct 24 21:16:39 2004 - generated Sun Oct 23 19:55:08 2005