Time-dependent multi-scheduling of multicast

Rami Cohen, Dror Rawitz, Danny Raz
2009 ACM Transactions on Algorithms  
Multicasting is a common technique that is often used by network applications that need to distribute contents and data to a large number of clients. One multicast transmission saves the necessity to send multiple unicast transmissions and therefore it reduces the overall congestion and delay that have become one of the main problems of the current Internet. Many applications use a hybrid scheme in which one or more multicast channel is used in parallel to a unicast dissemination. This way the
more » ... pplication can distribute data using one of its available multicast channels or by sending one or more unicast transmissions. In such a model the utilization of the multicast channels is critical for the overall performance of the system. In this paper we study the scheduling algorithm of the sender in such a model. We describe this scheduling problem as an optimization problem where the objective is to maximize the utilization of the multicast channel. Our model captures the fact that it may be beneficial to multicast an object more than one time (e.g. page update). Thus, the benefit depends, among other things, on the last time the object was sent, which makes the problem much more complex than previous related scheduling problems. We show that our problem is NP-hard and that no on-line competitive algorithm exists for it. Then, using the local ratio technique we obtain a 4-approximation algorithm for the case where the objects is of fixed size and a 10-approximation algorithm for the general case. We also consider a special case which may be of practical interest, and present a simple linear 3-approximation algorithm for it.
doi:10.1145/1644015.1644029 fatcat:g5pnxuc2nfdopp4sy7uyym5lmi