Download - 1 Algorithmic Challenges in Media-on-Demand Systems. Tami Tamir The Interdisciplinary Center
1
Algorithmic Challenges in Media-on-Demand
Systems.
Tami TamirTami TamirThe Interdisciplinary Center
2
מאות מיליוני צרכניםמאות מיליוני צרכנים
מגוון עצום של תכני וידאומגוון עצום של תכני וידאו
לקראת סוף העשור הנוכחילקראת סוף העשור הנוכחי
פשוט, זמין, ומותאם אישיתפשוט, זמין, ומותאם אישית
:החזון
יוכלו לצרוךיוכלו לצרוך
באופן שיהיהבאופן שיהיה
3
??????????????????????????????
כבלים
סלולר
אינטרנט
סביבת הטלוויזיה האישיתשל גבי
מימוש החזון באמצעות
סביבת טלוויזיה אישיתסביבת טלוויזיה אישית
סביבת הטלוויזיה האישיתשל בני
סביבת הטלוויזיה האישיתשל אורלי
4
סביבת הטלוויזיה האישית אותיגישה נוחה לתכני וידאו שמעניינים
מעדיףשאניאקטואליה בערוצים בשידור חי או לפי דרישה
חובבשאניסרטים, סדרות ותחומים את הפרקים והקטעים שטרם ראיתי לימציע
צפייה בתוכן וידיאו ממקורות וידאו שונים(, , ממשלציבוריים )ספריות
( ", ...e-learning"למטייל", "מסחריים ))חברים, משפחה(פרטיים
קביעת התכנים
שליאני קובע מה יופיע בסביבה האישית
שלי תכנים, על פי ההעדפות ליהשירות מציע
ללא תלות בלוח השידורים
…טלפון הנייד, המחשב, הצפייה דרך מגוון מכשירים : הטלוויזיה,
המינוי נעשה אצל אחד מספקי הרשת או אצל גופים חדשים שאינם תלויי רשת
סביבת הטלוויזיה האישיתשלי
5
הכוחות הדוחפים את שירותי התכניםהצרכנים •
אני מעוניין –
נטי עבורי )מלוח השידורים, מקטלוגים של חברות וו... לאתר בקלות תוכן רל
הפצה..)
... להשתחרר מלוח השידורים )לצפות בשידור חי או מתי שמתאים לי(
לשלם רק עבור מה שאני רואה.…
... לצפות דרך המכשיר המתאים לי בהתאם למקומי ולשעה
סלקום, בזק, הוט, יס, ...- ושירותי טלוויזיה מפעילי רשתות •
בחבילות משולבות של דיבור, וידאו ומידע TVמציעים צפיה בערוצי •
( Unicast( לשידור אישי )Broadcastעוברים משידור אחיד )•
(PLTV, VOD) ומציעים חווית משתמש טובה יותר מרחיבים את פס השידור •
, JCS, BBC, National Geographicקשת, משלבי וספקי התכנים – •
מעוניינים למכור תכנים דרך כל הערוצים האפשריים•
הצצה אל העתיד 1
6
מגמות בשוק
2008 עד 2004מ- השוק במספרים •
(MM research) בשנה !(%79 מיליון )25מיליון IPTV : 1.9מנויי –
(MM research) בשנה !IPTV : $7.2B $0.6B (%100)הכנסות –
(Forrester) )מתוך כלל השידורים( 40%ל- 5% מ- On Demandשירותי :–
הערכות של אנליסטים•
( ARC Group) "ינתן שירות וידאו אחיד על פני כל סוגי הרשתות"–
(OFCOM ) "2010"השידור הליניארי המקובל יעלם לחלוטין עד
"השידור על פי לוחות זמנים מת ...–
( BBC) עלינו לספק תוכן לצרכנים לצפות מתי שהם רוצים"
7
זה הזמן לתכנן את שירותי הטלוויזיה האישית
בידי הצרכן מכשירי צפייה מתקדמים ואינטראקטיביים•
–Set Top Box, Mobile phone Portable video ,
ערוצים רחבים מאפשרים הזרמת וידאו באיכות גבוהה אל הצרכן•
מודל האינטרנט משנה את הרגלי הצריכה של התוכן•
התרגלנו לחפש תוכן בזמננו החופשי–
הציבור בשל יותר לשירותים פרסונליים שבהם מפעיל השירות אוסף •מידע על הפרופיל האישי
התרגלנו שחברות האשראי והסלולר יודעות עלינו הרבה–
נתמכים כיום על ידי ספקי התכנים ורשתות On Demandשירותי •השידור
הצצה אל העתיד 2
8
רק כך צרכנו בידור בעבר
כיום אנו צורכים בידור גם )בעיקר?(
כך
הלקוח התרגל להיות אקטיבי
2 feet entertainment 10 feet entertainment
Lean-forward entertainment Lean-back entertainment
9
נגבנגבהדור הבא בשירותי תוכן וידאו הדור הבא בשירותי תוכן וידאו
אישייםאישיים
The Consortium of Next Generation
Personalized Video Content Services
המחקר נעשה במסגרת מאגד
10
Billing
הפערים והמיקוד של נגבAccess
Networks
End UserDevices
ContentProtection
Content Editing
NetworkManagementBackbone
PhysicalLayer
Content Creation
Service Management
Content Delivery
Content ManagementService
Content
Delivery
End UserApplications
StorageTechnology
Video Codecs
בליבו של שירות הטלוויזיה האישית
נדרש מחקר ופיתוח משולב וארוך טווח
בליבו של שירות הטלוויזיה האישית
נדרש מחקר ופיתוח משולב וארוך טווח
11
• Service Managementבחירת התוכן על ידי הצרכן ועבורו איננה אפשרית : סוג התוכן, המועד, ...–
כיום לוח השידורים ומגוון הערוצים מכתיב לצרכן מה יקבל
אין שיטות יעילות לאפיון המנוי והעדפותיו–כיום כל הצרכנים זהים מבחינת ספק השירות
•Content Managementאין ניתוח התוכן וסיווגו המאפשר התאמה אישית –
כיום הסיווג הינו על פי מידע מנהלי בלבד, ולא על סמך תכונות התוכן
אחסונו לא ערוכים לכמויות הצפויות ולצריכה אישיתוארגון התוכן, –לפי תדירות השימוש, מיקום המשתמשים והעדפותיהםניהול אין
•Content Deliveryהרשתות לא מסוגלות להפיץ תכנים בהיקפים הצפויים –
הינו אחיד לכל המנוייםBroadcastשידור טלוויזיה
התלות בסוג הרשת ובסוג המכשיר מונעת שירות אוניברסלי לצרכן– בכל סוג רשת יש שירות נפרד עבור ציוד צפייה מסוים
האתגרים עמם נגב מתמודד
Service
Content
Delivery
12
החברות במאגד
הביע נכונות להשתתף ללא מימון ספק שירות תוכן
מערכות ותוכנות מולטי-מדיה מבוססות רשת
עובדים2000
פתרונות מתקדמים להעברת וידאו על רשתות
רחבות פס עובדים145
פתרונות דיגיטליים מלאים לכבלים, לוויין ופס רחב
עובדים 230
מערכות לניהול שידורים עבור רשתות ותחנות
טלוויזיהעובדים 110
פתרונות אחסון והזרמה
IP של וידאו ברשתות עובדים70
אפליקציות עבור )IP )IPTVטלוויזית
עובדים85
טכנולוגיות ומוצרי מולטי-מדיה לתחום הנייד
עובדים 65
מפעיל רשתהביעו נכונות להצטרף למאגד.
ב'בשנה מפעיל יבחר ויצורף
שילוב החברות והתמחותן מאפשר טיפול משולב בפערים הטכנולוגיים
13
המחקר האקדמי במאגד
עיצוב סביבת הצריכה של תכני וידאו על פי אונ' תל אביבפרופ' גדי אריאב מתודולוגיות לפיתוח מערכות תומכות החלטה
אורכה
וסינטקמדיה
אלגוריתמים להקבצה של צרכנים על פי אונ' בר-אילןפרופ' שרית קראוסמאפיינים שימוש ומיקום
אורכה
חברה תחום המחקרמוסדחוקר/יםמלווה
Service Content Delivery
שיבוץ והזרקה של קטעי וידיאו לתוך וידיאו הטכניוןפרופ' דוד מלאךבמישור הדחוס
סקופוס ואופטיבייס
אלגוריתמים לאופטימיזציה של משאבי רשת אונ' תל אביבד"ר בועז פת-שמירלצורך השקת המונית של שירותי תוכן אישיים
סקופוס
פרופ' הדס שכנאי ד"ר תמי תמיר
הטכניון והמרכז הבינתחומי
שיטות לאיזון עומס ושיקולי מיקום של תוכן וידאו בשרתי מדיה מבוזרים
ביטבנד
קומברסטכנולוגיה לקטלוג ואחזור תוכן וידאוהטכניוןפרופ' דוד מלאך
הכנה אוטומטית של תוכן לצורך בנית האונ' העבריתפרופ' שמואל פלגתקצירים
אופטיבייס
14
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).
Read only, basically predictable requests. Rigid real-time scheduling requirements. Fixed transfer rate.
15
MOD applications Entertainment Education Advertising Distance learning Home shopping Games Interactive news, etc.
Client-Server paradigm: About 80% of clients
want to view about 2% of most popular videos
(Zipf distribution).
Examples:
Sport , Music , News, E-learning , other
16
MOD applicationsWeb-Cameras
Similar properties, different technologies.
Examples:
Traffic (2),
Day-care and nanny watch
Security,
Many more.
17
The Challenges1. Minimizing clients’ maximal waiting time
(delay).
2. Balance the load on the disks.
3. Service millions of clients using limited
bandwidth.
18
The Challenges
•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’.
• Clients can also be ‘rejected’. We want as few rejections as possible.
19
The Challenges
20
Staggered broadcasting, [Dan, Sitaram, Shahabuddin, 96]:
Transmit the movie repeatedly on each of the channels.
Example: One Movie, Two Channels
Guaranteed client delay: at most 1/2.
The delay, D, is measured as a fraction of the movie length.
0 1/2 1 3/2 2 5/2 3 C1:
C2: …
…
21
Staggered Broadcasting
In general: To guarantee delay at most D, h=1/D channels are required, each transmitting the movie at clients’ view rate.
A clue: With today’s advanced technology, clients can buffer data to their local machine.
Can we do better?
h=7,
D 1/7
22
Stream Merging
• Reduces server bandwidth by using larger receiving bandwidth for clients and by adding buffers to clients.
23
Stream Merging
• The server multicasts the media in a staggered way via several channels
24
Stream Merging
• Clients may receive data from 2 streams simultaneously while playing data they have accumulated in their buffers.
25
Stream Merging
a) The initial position, where the client is about to receive data from a new stream and a stream that was initiated earlier.
b) The system after some time. The client still receives data from both streams.
26
Stream Merging• At some point, the later stream can terminate-
the client already has the data from buffering the earlier one. The later stream merges with the earlier one.
• The playback rate is identical to the rate of each of the channels, so the receiving bandwidth should be twice the playback bandwidth.
27
Batching Vs. Stream Merging
• Assume a full stream has length 5.
28
Problems
• Given a sequence of arrivals, there can be a number of different stream merging solutions to accommodate this sequence.
• So which sequence do we choose?• How do we compare them?
29
Merge Trees [Bar-noy, Ladner 02]
On the left is a concrete diagram showing the length of each stream with its merging pattern. On the right is its corresponding merge tree. In this example there are 13 arrivals at times 0…12.
30
Piggyback Merging
– “Catch up streams”– Altering the display rates of videos – How does it work?
Two streams display the same video a small number of frames apart
Display the leading stream at a slower rateDisplay the trailing stream at a faster rateThe faster stream catch up with the slower oneThe streams can be piggybacked/merged The second stream can be dropped
31
“catch up streams”
32
Near Media-on-Demand (Broadcasting)
Broadcasting schemes: For popular
movies, the system does not wait for
client requests, but broadcasts these
movies continuously.
Unicast on-demand: For less popular
media, a single stream dedicated to each
client transferring its data
33
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.
34
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!
35
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).
1 32 (3 segments)
Each time-slot has length 1/3.
arrive watch & buffer
0 1/3 2/3 1 4/3 5/3 2
C1: 11111 1
2 2 2 333C2:
…
…
arrive watch & buffer
36
Using Client’s Buffer
Why does it work?
The first segment is transmitted in any window of one slot.
C1: 11111 1
2 2 2 333C2:
…
…
The second segment is transmitted in any window of two slots.
The third segment is transmitted in any window of three slots.
37
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.
4 4 4 …
38
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?
6 6
2 2 22 224 4 45 5 5
3 33 37 79 98 8
1 1 1 1 1 1 1 1 1 1 1 1 …
…
…
C1
C2
C3
1 1 1 …C1
Examples: h=1, s=1, D=1
C1 11111 1
2 2 2 333C2
…
…
h=2, s=3. D=1/3
h=3, s=9. D=1/9
39
The Windows Scheduling Problem
Input: A set W={w1,w2,…,wn} of requests for periodic broadcast. A request with window wi needs to be broadcasted at least once in any window of wi time-slots. Output: A feasible windows scheduling of W. Goal: minimize number of channels used. Example: Input: W={2,4,5} Output: one channel
4 2 5 2 4 2 425 252 …
There is at least one transmission of in any window of 5 time-slots
5There is at least one transmission of in any window of 4 time-slots
4
40
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
41
Perfect Channel Schedule
• Perfect channel schedule: For page i, there exists a wi’ wi such that the gap between any two consequent schedules of page i is exactly wi’ time slots. – wi is the actual the window size of page i in the
schedule.– Perfect channel schedule is cyclic (cycle length
is the least common multiplier of the actual windows).
• The broadcasting schemes we present are based on perfect schedules and can be described by Recursive Round Robin (RRR) Trees.
42
Recursive Round Robin (RRR) Schedules:
RR1 schedule: For some , iterate over z1,z2,…,z. All the segments have window .
z1 z z2
…
RR1
S1 S2 S…
RRk
SS1 S2…
RRk-1
RRk schedule: Iterate over the RRk-1 schedules, S1,S2,…, S, for some >1.
A segment with window w in some Si have window w in the new schedule.
43
a b a b a b a b a b a b
c d e c d e c d e c d e
Tree Representation of RRR Schedules
a b
c ed
S1: RR1
S2: RR1
c eda b
a c b ad c abe aebd adbc be
An RR2-schedule from S1 and S2:
a b a ab ab ab b
c d ce ed dc e
44
Tree Representation of RRR Schedules
c eda b
fAn RR3
schedule:
a c b ad c abe aebd adbc be
f f f ff f fff ffff ffff ff
a f f f ffc b a e …
RR2
RR1
RR3
45
Tree Representation of RRR Schedules
1
2
4 5
3
6 8 7 9
6 6
2 2 22 224 4 45 5 5
3 33 37 79 98 8
1 1 1 1 1 1 1 1 1 1 1 1 …
…
…
C1
C2
C3
46
An RRR Schedule of [1..25]
The window of a leaf k is idegree(vi), for all vi on the path from the root to the leaf.
Harmonic window scheduling of 1..25 on 4 channels.
2322
76
3
18 19
9
2
4
8
1716
141110
5
1312 15 24 25
20 21
1
47
Back to the Broadcasting Problem:
Previous work: Windows scheduling of 1,…,s on h channels guarantees delay at most 1/s.
WS is NP-hard, in particular, it is NP-hard to find the largest possible s for a given h.
Can other techniques do better?
Match a lower bound?
Not less interesting (but out of this talk scope):
Improve known algorithms for WS.
Online windows scheduling.
48
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.
49
delay
The Shifting Technique:
• The movie is partitioned into s segments, 1,..,s.
• 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 1st segment has window d+1.
The 2nd 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
50
Example I: One Movie, Two Channels
Without shifting, the best schedule has delay 1/3
5 5
1 1 11 113 3 34 4 4
2 22 26 68 87 7
C1: 11111 1
2 2 2 333C2:
C1:
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.
51
Example I: One Movie, Two Channels
For a client arriving during the second slot:
5 5
1 1 11 113 3 34 4 4
2 22 26 68 87 7
C1:
C2:
arrive buffer watch & buffer
tt t t t t t t t t
Client’s buffer
Client watches
5 6 7 8
1 6
1
2 4
2
7
3
8
4
…
…
52
Example I: One Movie, Two Channels
For a client arriving during the first slot:
5 5
1 1 11 113 3 34 4 4
2 22 26 68 87 7
C1:
C2:
arrive buffer watch & buffer
Client’s buffer
Client watches
3 5
1
6
2
4 7
3
8
4 5 6 7 8
t t t t t t t t t t
…
…
53
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.
1 1 1 …C1
54
Example II: One Movie, One Channel
1 11 13 4 5 3 4 5 322 2 2
The first segment is transmitted every 4th slotThe second segment is transmitted every 4th slotThe third, fourth, and fifth segments are transmitted every 6th slot.
We broadcast segment i in any i+3 (or smaller) window
1 2 3 4 5
With shifting (d=3): We partition the movie into 5 segments.
The resulting delay: at most 4 slots = 4/5.arrive buffer watch & buffer
…
55
Asymptotic Results
•How far can we go with this technique?
•What happens when d is very large?
Answer: Asymptotically, this is an optimal scheme.
Proof: Based on Recursive Round Robin (RRR) schedules.
56
A Shifted RRR Schedule
1 11 13 4 5 3 4 5 322 2 2
66 6
3 54
44
1 2
In a schedule with shift level d each segment z 1..s is scheduled with window at most z+d.
Back to our one-movie one-channel example:
d=3,s=5
4
6 874 5
No shift
57
Asymptotic Results (cont’)
Lower bound [Engebretsen, Sudan, 02]: The delay for one movie and h channels is at least
Theorem: For h 1, there is a constant ch, such that shifting produces a schedule with delay at most
Proof : Given h,d, we find an RR2 schedule on h channels of segments 1,..,s with shift level d, such that s is large enough to satisfy the theorem.
(h)D)d
c(1 D LB
hh
)1e
1( (h)D hLB
(DLB(1)= 0.58).
58
Asymptotic Results (cont’)
For a given d we construct an RR2-tree. The root has subtrees for some >1. Starting from d+1, we assign in a greedy fashion as many segments as possible
8 9 10 1211 13 1614 15
=3
d=7
9 11 16 1917 18
=3
d=8
10 13 14 1512 20
Scheduled range [8..16]. Resulting delay = 8/9
Scheduled range [9..20]. Resulting delay = 9/12 =3/4
59
Other Models
The 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
60
Another Challenge
Storage management –
How to use the disks
61
Unicast in MoD Systems
Less-popular media is not broadcasted. Each request is served by a ‘dedicated’ stream.
New problem: Data placement on the disks.
• Each disk has two limited resources:
Storage Capacity: the number of movies that can be stored on the disk.
Load Capacity: the maximal number of concurrent
streams that can be transmitted by dj.
62
The Challenge: Balance the load on the
disks.
How many broadcasts should be allocated to each of these copies?
Given the file popularities, how many copies of each
file should be kept? Where should we store each copy?
63
The Provider’s Dilemma
Fairness vs. Utilization
64
f1: Pokemon p1 = 0.8
f2: Telletubies p2=
0.1f3: The Flinstones p3=
0.1
Maximizing Fairness and Utilization
B1= 60, B2= 20, B3= 20
3/4fair (60/80 for f1) ; U = 60 + 10 + 10 =
80
Most Fair!
V=100 W1 = 80, W2 = W3 =
10
d1: c1= 1 v1=60
d2: c2= 2 v2=40
B11= 60 B22=B23=20
65
f1: Pokemon p1 = 0.8
f2: Telletubies p2=
0.1f3: The Flinstones p3=
0.1
Maximizing Fairness and Utilization
Most Utilized!
V=100 W1 = 80, W2 = W3 =
10
d1: c1= 1 v1=60
d2: c2= 2 v2=40
B11= 60 B12=B22=20
B1= 80, B2= 20, B3= 0
0fair, U = 80 + 10 + 0 = 90
66
Summary: Multimedia-on-Demand Systems
A large database of media files transmitted to clients on channels. Storage devices (disks). The goal: minimize client delay.
Broadcasting: The ultimate solution for popular
media.
Unicast on-demand: For less popular media.
We only saw a sample of the problems arising in
each. An example
67
References
J.L. Wolf, P.S. Yu, H. Shachnai . Disk Load Balancing for Video-on-Demand Systems, 1997. http://www.cs.technion.ac.il/~hadas/PUB/WYS2.pdf
S. W. Carter, D. D. E Long and J.-F. Pâris, Video-on-Demand Broadcasting Protocols, 2000. http://www.cs.uh.edu/~paris/MYPAPERS/chapter.pdf
A. Bar-Noy and R.E. Ladner, Efficient Algorithms for Optimal Stream Merging for Media-on-Demand. (2001). http://www.cs.washington.edu/homes/ladner/papers/generaloffline.ps
C. C. Aggarwal, J. L. Wolf, and P. S. Yu, On Optimal Piggyback Merging Policies for Video-on-Demand Systems, http://www.cs.wisc.edu/~vernon/cs838/00/papers/aggarwal.96sigm.pdf
A. Bar-Noy and R.E. Ladner, T.Tamir Scheduling Techniques for Media on Demand. http://www.faculty.idc.ac.il/tami/Papers/blt03full.pdf
H. Shachnai , T. Tamir On Two Class-Constrained Versions of the Multiple Knapsack Problem, 2001. http://www.faculty.idc.ac.il/tami/Papers/st01.pdf