Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Scheduling Techniques for Broadcasting Popular Media. Amotz Bar-Noy Brooklyn College Richard Ladner Tami Tamir University of Washington.

Similar presentations


Presentation on theme: "1 Scheduling Techniques for Broadcasting Popular Media. Amotz Bar-Noy Brooklyn College Richard Ladner Tami Tamir University of Washington."— Presentation transcript:

1 1 Scheduling Techniques for Broadcasting Popular Media. Amotz Bar-Noy Brooklyn College Richard Ladner Tami Tamir University of Washington

2 2 Multimedia-on-Demand Systems  A database of media objects (movies).  A limited number of channels.  Movies are broadcast based on customer demand.  The goal: Minimizing clients’ maximal waiting time (delay).  Broadcasting schemes: For popular movies, the system does not wait for client requests, but broadcasts these movies continuously.

3 3 Minimizing Clients’ Maximal Delay. We measure the quality of service by the maximal possible delay (different from ‘average delay’). Our goal is to guarantee that no client will wait more than some ‘D’. Short delay = happy customers Short delay = happy customers

4 4 Broadcasting Schemes for Media-on-Demand Systems. A server broadcasting movies of unit-length on h channels. Each channel transmits data at the playback rate. A client that wishes to watch a movie is ‘listening to all the channels’ and is waiting for his movie to start.

5 5 Broadcasting Schemes for Media-on-Demand Systems. This means that the client can read data at a rate which is h times the rate needed for playback. With new technologies, this is possible!

6 6 Example: One Movie, Two Channels Staggered broadcasting, [ Dan, Sitaram, Shahabuddin, 96 ]: Transmit the movie repeatedly on each of the channels. Guaranteed client delay: at most 1/2 (1/h in general). A clue: With today’s advanced technology, clients can buffer data to their local machine. 0 1/2 1 3/2 2 5/2 3 C1:C1: C2:C2: Can we do better? … …

7 7 Using Client’s Buffer [ Viswanathan, Imielinski, 96 ]: Partition the movie into segments. Early segments are transmitted more frequently. The client waits for the next slot start, and can then start watching the movie without interruptions. Maximal client delay: 1/3 (slot size). 132 (3 segments) Each time-slot has length 1/3. arrive watch & buffer 0 1/3 2/3 1 4/3 5/3 2 C1:C1: 111111 222333 C2:C2: … … arrive watch & buffer

8 8 Using Client’s Buffer Why does it work? The first segment is transmitted in any window of one slot. C1:C1: 111111 222333 C2:C2: … … The second segment is transmitted in any window of two slots. The third segment is transmitted in any window of three slots.

9 9 Using Client’s Buffer, The General Case: The movie is partitioned into s segments, 1,..,s. We schedule these segments such that segment i is transmitted in any window of i slots (i-window). The client has segment i available on time (from his buffer or from the channels). The maximal delay: one slot = 1/s. Therefore, the goal is to maximize s for given h. 444 …

10 10 Harmonic Window Scheduling Given h, maximize s such that each i in 1,..,s is scheduled with window at most i. Can other techniques do better? Match a lower bound? 662222224445553333779988111111111111 … … … C1C1 C2C2 C3C3 111 … C1C1 Examples: h=1, s=1, D=1 C1C1 111111 222333 C2C2 … … h=2, s=3. D=1/3 h=3, s=9. D=1/9

11 11 The Windows Scheduling Problem  Input: A set W={w 1,w 2,…,w n } of requests for periodic broadcast. A request with window w i needs to be tranmitted at least once in any window of w i time-slots.  Output: A feasible windows scheduling of W.  Goal: minimize number of channels used. Example: Input: W={2,4,5} Output: one channel 425242425252 … There is at least one transmission of in any window of 5 time-slots 5 There is at least one transmission of in any window of 4 time-slots 4

12 12 The Windows Scheduling Problem Windows Scheduling has applications in media delivery systems, and in machine maintenance. - Client-server-provider. - QoS in push system. - MoD systems. - Periodic job-scheduling Transmit the weather at least once in any 3 time units. Replace batteries at least once a week w = 3 w = 4 w = 5

13 13 Our Results - Better Techniques  Two new segment-scheduling techniques: -Shifting. -Channel sharing.  A lower bound for the minimum client’s delay (generalizes the lower bound of [Engebretsen, Sudan, 02] for a single movie).  Each of these techniques produces schedules that - Approach the lower bound for any number of channels. - Guarantee the minimal known delay for small number of segments.  The two techniques can be applied together.

14 14 delay The Shifting Technique: The movie is partitioned into s segments, 1,..,s. We find a schedule of these segments in h channels such that segment i is transmitted in any window of d+i slots (d is the shifting level).  The 1 st segment has window d+1.  The 2 nd segment has window d+2, etc. The client waits for the next slot start, buffers data during the next d slots, and then starts watching the movie (while continue buffering). arrive buffer watch & buffer d slots s slots The total delay is at most d+1 slots

15 15 Example I: One Movie, Two Channels Without shifting, the best schedule has delay 1/3 551111113334442222668877 C1:C1: 111111222333 C2:C2: C1:C1: C2:C2: With shifting, we can schedule 8 segments 1..8, such that segment i is transmitted in any i+1 window (d=1). … … … … The resulting delay is (d+1)/s =2/8 = 1/4.

16 16 Example I: One Movie, Two Channels For a client arriving during the second slot: 55 111111333444 2222668877 C1:C1: C2:C2: arrive buffer watch & buffer tttttttttt Client’s buffer Client watches 5678 16 1 24 2 7 3 8 4 … …

17 17 Example II: One Movie, One Channel Without shifting, even if the client can buffer data, a maximal 1-delay is inevitable. If you are taking a short nap, and you miss the beginning of the movie, you must wait for the next broadcast - even if you have your very own screen. 111 … C1C1

18 18 Example II: One Movie, One Channel 111134534532222 The first segment is transmitted every 4 th slotThe second segment is transmitted every 4 th slot The third, fourth, and fifth segments are transmitted every 6 th slot. We broadcast segment i in any i+3 (or smaller) window 12345 With shifting (d=3): We partition the movie into 5 segments. The resulting delay: at most 4 slots = 4/5. arrive buffer watch & buffer …

19 19 Asymptotic Results How far can we go with this technique? What happens when d is very large? Answer: Asymptotically, this is an optimal scheme. Lower bound [ Engebretsen, Sudan, 02 ]: The delay for one movie and h channels is at least Theorem: For h  1, there is a constant c h, such that shifting produces a schedule with delay at most (D LB (1)= 0.58).

20 20 We simulate our RRR scheduling algorithm. 30% different from the lower bound for s=8. 13% different from the lower bound for s=120 (one-minute segments in an average movie). Number of segments delay Lower bound =0.58 Simulation Results for h=1

21 21 The Channel Sharing Technique for Multiple Movies The idea: We can gain from transmitting segments of different movies on the same channel. Example: For three channels and one movie the best harmonic schedule guarantees max delay 1/9. Can we do better with six channels and two movies? 1 2 45 3 678 9 Bandwidth is lost since the actual windows of 5,7,8,9 are smaller than required.

22 22 Channel Sharing - continue 11 22 98 44 89 577 10 5 For six channels and two movies, we have a double- harmonic schedule of ten segments (delay =1/10). 6 3 6 3 Ch1 Ch2 Ch3 Ch4 Ch5 Ch6 Only these segments have an actual small window

23 23 Asymptotic Results How far can we go with this technique? What happens when the number of movies, m, is very large? Answer: Asymptotically, this is an optimal scheme. Lower bound: The guaranteed delay for m movies and h channels is at least Proof: An algorithm that produces an RRR schedule. Theorem: For h,m  1, there is a constant c h,m, such that there exists a schedule with guaranteed delay at most

24 24 Combining Techniques The shifting and the channel sharing techniques can be applied together. For small values of h, s, and m, we present schedules that achieve the smallest known delay. Asymptotically, we are getting closer to the lower bound much faster – to show this we analyze and simulate two simple RRR-schedules.

25 25 Combining Techniques – Simulation Results Case study 1: h=2m D  0.158

26 26 Combining Techniques – Simulation Results Case study 2: m=h. D  0.582 Algorithm RR 1 Algorithm RR 2 Greedy Algorithm 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1 1.05 15152540 # of segments delay 15152540 # of segments 15152540 # of segments m=1 m=2 m=3 m=5 m=10 m=20 m=50 m=80

27 27 Combining Techniques – Simulation Results Case study 3: h=½m D  1.552 # of segments m=2 m=4 m=6 m=10 m=20 m=50 m=80 delay # of segments Algorithm RR 2 Algorithm RR 1 Greedy Algorithm

28 28 Other Models Our shifting and channel sharing techniques can be used also: To reduce average client delay. In the receive-r model - where clients have limited number of readers. For movies with different lengths. For movies with different popularity/priority (where the desired maximal delay varies). For all these models we have examples of the efficiency of shifting and/or sharing. We have no general algorithm or asymptotic analysis. and Open Problems

29 29 More Open Problems  Product delivery systems: Any popular digital data can be broadcast - games, software (originals and updates), educational material.  Delivering multimedia vs. flexible data (that can be received in any order).  Delivering dependent data (e-learning)  Integrated error recovery.  Combining broadcasting and unicast.  Better broadcasting techniques, better disk utilization.


Download ppt "1 Scheduling Techniques for Broadcasting Popular Media. Amotz Bar-Noy Brooklyn College Richard Ladner Tami Tamir University of Washington."

Similar presentations


Ads by Google