Pull-based data broadcast with dependencies: be fair to users, not to items

Broadcasting is known to be an efficient means of disseminating data in wireless communication environments (such as Satellite, mobile phone networks,...). It has been recently observed that the average service time of broadcast systems can be considerably improved by taking into consideration existing correlations between requests. We study a pull-based data broadcast system where users request possibly overlapping sets of items; a request is served when all its requested items are downloaded. We aim at minimizing the average user perceived latency, i.e. the average flow time of the requests. We first show that any algorithm that ignores the dependencies can yield arbitrary bad performances with respect to the optimum even if it is given arbitrary extra resources. We then design a (4 + ε)-speed O(1 + 1/ε2)-competitive algorithm for this setting that consists in 1) splitting evenly the bandwidth among each requested set and in 2) broadcasting arbitrarily the items still missing in each set into the bandwidth the set has received. Our algorithm presents several interesting features: it is simple to implement, non-clairvoyant, fair to users so that no user may starve for a long period of time, and guarantees good performances in presence of correlations between user requests (without any change in the broadcast protocol). We also present a (4 + ε)-speed O(1 + 1/ε3)-competitive algorithm which broad-casts at most one item at any given time and preempts each item broadcast at most once on average. As a side result of our analysis, we design a competitive algorithm for a particular setting of non-clairvoyant job scheduling with dependencies, which might be of independent interest.1

[1]  Chun Chen,et al.  Correlation-Based Data Broadcasting in Wireless Networks , 2005, BNCOD.

[2]  Amotz Bar-Noy,et al.  Optimal broadcasting of two files over an asymmetric channel , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[3]  Jeff Edmonds,et al.  Scheduling in the dark , 1999, STOC '99.

[4]  Kirk Pruhs,et al.  A maiden analysis of longest wait first , 2005, TALG.

[5]  Rajiv Gandhi,et al.  Algorithms for Minimizing Response Time in Broadcast Scheduling , 2002, IPCO.

[6]  Andrew Chi-Chih Yao,et al.  Probabilistic computations: Toward a unified measure of complexity , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[7]  Joseph Naor,et al.  Pushing dependent data in clients-providers-servers systems , 2000, MobiCom '00.

[8]  Joseph Naor,et al.  Approximating the average response time in broadcast scheduling , 2005, SODA '05.

[9]  Thomas Erlebach,et al.  NP-Hardness of Broadcast Scheduling and Inapproximability of Single-Source Unsplittable Min-Cost Flow , 2002, SODA '02.

[10]  Ming-Syan Chen,et al.  Dependent data broadcasting for unordered queries in a multiple channel mobile environment , 2004, IEEE Transactions on Knowledge and Data Engineering.

[11]  Nicolas Schabanel,et al.  Customized Newspaper Broadcast: Data Broadcast with Dependencies , 2006, LATIN.

[12]  Kirk Pruhs,et al.  Multicast Pull Scheduling: When Fairness Is Fine , 2003, Algorithmica.

[13]  Amotz Bar-Noy,et al.  Optimal Broadcasting of Two Files over an Asymmetric Channel , 2000, J. Parallel Distributed Comput..

[14]  Ming-Syan Chen,et al.  Broadcast program generation for unordered queries with data replication , 2003, SAC '03.

[15]  Bala Kalyanasundaram,et al.  Scheduling Broadcasts in Wireless Networks , 2000, ESA.

[16]  Nikhil Bansal,et al.  Improved approximation algorithms for broadcast scheduling , 2006, SODA '06.

[17]  Russ Bubley,et al.  Randomized algorithms , 1995, CSUR.