290 likes | 370 Views
Multicast Pull Scheduling. Kirk Pruhs. Content Richness. Today’s Internet. Audience Size. The Big Problem. Movie Distribution. Olympics. Database Replication via Internet. Software Download. Harry Potter Book Download. Pay-Per-View Movies.
E N D
Multicast Pull Scheduling Kirk Pruhs
Content Richness Today’s Internet Audience Size The Big Problem Movie Distribution Olympics Database Replication via Internet Software Download Harry Potter Book Download Pay-Per-View Movies
The Standard Centralized Unicast Pull Approach is Not Scalable • Creates unnecessary network congestion • Overloads the server
Response Times for the 3 Different Multicast Distribution Methods Unicast Pull Multicast Pull Average response time Multicast Push High load Low load
Appropriate Distribution Method Depends on Popularity of Data Multicast Push Unicast Pull Multicast Pull
Another Application: (RODS) Realtime Outbreak Detection System • Developed at Pitt • Deployed in Utah for Winter Olympics • Now collects information on 70% of doctors visits in Utah • Since the anthrax attacks, RODS has received lots of funding http://www.health.pitt.edu/rods/
Project Goals • Build a prototype data dissemination system that uses all three basic data dissemination methods appropriately • Supported by an NSF grant from ANIR program • Joint work with Panos Chysanthis and Vincenzo Liberatore • Study the interesting data management problems that arise in such a system • Supported by an NSF grant from CCR program
Middleware Architecture and Data Management Issues Application Layer Server Side Client Side Document Selection Unicast Pull Scheduling Multicast Push Scheduling Multicast Pull Scheduling Indexing Caching Multicast Transport Layer, e.g. Java Reliable Multicast
Rest of the Talk:Multicast Pull Scheduling From www.direcpc.com From Newsweek magazine
Simple Example Instance of Multicast Pull Scheduling Input Schedule Average response time = (9 + 18 + 3 + 2 )/4
Standard Worst-case Algorithm Analysis Technique • Competitive ratio of algorithm A is maxI A(I)/Opt(I) • A(I) is the average response time on input I using algorithm A • Opt(I) is the average response time for the optimal schedule • For example, a 2-competitive algorithm A guarantees that it will produce a schedule with average response time at most twice of the optimal average response time
Warm-up Problem:Unit Sized Documents • Obvious Algorithm? • Most Requests First (MRF): Broadcast the document with the most requests • Surprisingly, MRF has unbounded competitive ratio (proof next slide) • Moral: Multicast pull scheduling is trickier than it might first appear
n jobs n2 jobs Most Requests First (MRF) is not anO(1)-competitive algorithm Input Average response time ~ n MRF Optimal Average response time ~ 1
n jobs n2 jobs There is no O(1)-competitive Online Server Scheduling Algorithm for Multicast Pull Input Average response time ~ n Online schedule Average response time ~ 1 Optimal schedule
Resource Augmentation Analysis • Compare the limited (e.g. online) algorithm with more resources (e.g. a faster processor or more processors) to the optimal algorithm with less resources • Online algorithm A is s-speed c-competitive if maxI As(I)/Opt1(I) < c • Subscript denotes processor speed • Example: A 2-speed 3-competitive algorithm equipped with a speed 2 processor guarantees an average response time at most 3 times the optimal average response time for a 1 speed processor
Classic Server QoS Curves • Online is not • O(1)-competitive • Online is O(1)-speed • O(1)-competitive Online Optimal Average response time High load Low load Slow Processor Fast processor
Old Chinese Saying: • Three blind shoemakers are better than one politician
n jobs n2 jobs Most Requests First (MRF) is not anO(1)-competitive algorithm O(1)-speed Input Average response time ~ n MRF Optimal Average response time ~ 1
The Power of the Adversary in Multicast Pull Scheduling Recall general lower bound instance • Intuition: The adversary forces the online algorithm to labor on sequential work
Definition of Parallel and Sequential Work Rate work is completed Rate work is completed low low high high Processing power devoted to the work Processing power devoted to the work Parallel work Sequential work
Another Application Where Sequential Work Arises: Scheduling Jobs on a Multi-Processor Parallel work Sequential work Input One Possible Optimal Schedule P1 P2 Average response time = ( 6 + 3 + 8)/3
The Main Result to Date (with Jeff Edmonds) • A method to construct a multicast pull scheduling algorithm B from a nonclairvoyant unicast scheduling algorithm A. • If algorithm A is an s-speed c-competitive algorithm when jobs have parallel and sequential components, then B is a (2+ ε )s-speed c-competitive • Formalizes the surprising insight that the difficulty of multicast pull scheduling = the difficulty of unicast scheduling of jobs with parallel and sequential components
Multicast pull input Unicast input Algorithm B’s multicast pull schedule Algorithm A’s unicast schedule Constructing the Multicast Pull Algorithm B from the Unicast Algorithm A
Equipoise Algorithm for Unicast Scheduling of Jobs with Parallel and Sequential Components • Equipoise (Round Robin) transmits each file at the same rate. • Edmonds (1999) showed that the algorithm Equipoise is a (2+ ε )-speed O(1 + 1/ε)-competitive algorithm
The BEquipoise Multicast Pull Algorithm • BEquipoise broadcasts each document at a rate proportional to the number of requests to that document • The algorithm BEquipoise is a (4+ε)-speed O(1 + 1/ε)-competitive algorithm • BEquipoise will work reasonably well if the server load < ¼ • Bequipoise is not an 2-speed O(1)-competitive algorithm
Possible O(1)-competitive (1+ε)-speed Algorithms ? • Unit sized files: Longest Wait First (LWF): Send out the document where the sum of the ages of the outstanding requests is maximized • Arbitrary sized files: Longest Total Stretch First (LTSF): Send out the document where the sum of the ages of the outstanding requests, divided by the file size, is maximized • Appear to be the current experimental champions (Acharya and Muthukrishnan)
Future Directions • Are LWF and LTSF (1 + ε)-speed O(1 + 1/ε)-competitive algorithms for multicast pull scheduling? • If not, is an (1 + ε)-speed O(1 + 1/ε)-competitive algorithm possible? • One possibility is to find an (1 + ε)-speed O(1 + 1/ε)-competitive algorithm for unicast scheduling of jobs with arbitrary speed-up curves, and to remove the factor of two in the speed in our reduction. • Is there an O(1)-competitive polynomial-time offline algorithm for multicast pull scheduling? • The problems are known to be NP-hard (Erlebach and Hall) • Open for both the case of unit sized files and arbitrary sized files