670 likes | 807 Views
Algorithmic Challenges in Media-on-Demand Systems. Tami Tamir The Interdisciplinary Center. החזון:. לקראת סוף העשור הנוכחי. מאות מיליוני צרכנים. יוכלו לצרוך. מגוון עצום של תכני וידאו. באופן שיהיה. פשוט, זמין, ומותאם אישית. סביבת הטלוויזיה האישית של אורלי.
E N D
Algorithmic Challenges in Media-on-Demand Systems. Tami Tamir The Interdisciplinary Center
החזון: לקראת סוף העשור הנוכחי מאות מיליוני צרכנים יוכלו לצרוך מגוון עצום של תכני וידאו באופן שיהיה פשוט, זמין, ומותאם אישית
סביבת הטלוויזיה האישית של אורלי מימוש החזון באמצעותסביבת טלוויזיה אישית ?????????????????????????????? כבלים סביבת הטלוויזיה האישית של בני אינטרנט סלולר סביבת הטלוויזיה האישית של גבי
סביבת הטלוויזיה האישית שלי סביבת הטלוויזיה האישית גישה נוחה לתכני וידאו שמעניינים אותי אקטואליה בערוצים שאני מעדיףבשידור חי או לפי דרישה סרטים, סדרות ותחומים שאני חובבמציע לי את הפרקים והקטעים שטרם ראיתי צפייה בתוכן וידיאו ממקורות וידאו שוניםציבוריים (ספריות, ממשל), מסחריים ("למטייל", "e-learning", ...) פרטיים(חברים, משפחה) קביעת התכנים אני קובע מה יופיע בסביבה האישית שלי השירות מציע לי תכנים, על פי ההעדפות שלי ללא תלות בלוח השידורים צפייה דרך מגוון מכשירים :הטלוויזיה, המחשב, הטלפון הנייד, … המינוי נעשה אצל אחד מספקי הרשת או אצל גופים חדשים שאינם תלויי רשת
הכוחות הדוחפים את שירותי התכנים הצצה אל העתיד 1 • הצרכנים • אני מעוניין ... לאתר בקלות תוכן רלוונטי עבורי (מלוח השידורים, מקטלוגים של חברות הפצה..( ... להשתחרר מלוח השידורים (לצפות בשידור חי או מתי שמתאים לי) … לשלם רק עבור מה שאני רואה. ... לצפות דרך המכשיר המתאים לי בהתאם למקומי ולשעה • מפעילי רשתות ושירותי טלוויזיה - סלקום, בזק, הוט, יס, ... • מציעים צפיה בערוצי TVבחבילות משולבות שלדיבור, וידאו ומידע • עוברים משידור אחיד (Broadcast)לשידור אישי (Unicast) • מרחיבים את פס השידור ומציעים חווית משתמש טובה יותר ( PLTV, VOD) • משלבי וספקי התכנים – קשת, JCS, BBC, National Geographic, • מעוניינים למכור תכנים דרך כל הערוצים האפשריים
מגמות בשוק • השוק במספרים מ-2004 עד 2008 • מנויי IPTV : 1.9מיליון25מיליון (%79 בשנה !)(MM research) • הכנסות IPTV :$7.2B $0.6B(%100 בשנה !)(MM research) • שירותי :On Demand מ- 5%ל- 40%(מתוך כלל השידורים)(Forrester) • הערכות של אנליסטים • "ינתן שירות וידאו אחיד על פני כל סוגי הרשתות" (ARC Group) "השידור הליניארי המקובל יעלם לחלוטין עד 2010" (OFCOM) • "השידור על פי לוחות זמנים מת...עלינו לספק תוכן לצרכנים לצפות מתי שהם רוצים" (BBC)
זה הזמן לתכנן את שירותי הטלוויזיה האישית • בידי הצרכן מכשירי צפייה מתקדמים ואינטראקטיביים • Set Top Box, Mobile phonePortable video, • ערוצים רחבים מאפשרים הזרמת וידאו באיכות גבוהה אל הצרכן • מודל האינטרנט משנה את הרגלי הצריכה של התוכן • התרגלנו לחפש תוכן בזמננו החופשי • הציבור בשל יותר לשירותים פרסונליים שבהם מפעיל השירות אוסף מידע על הפרופיל האישי • התרגלנו שחברות האשראי והסלולר יודעות עלינו הרבה • שירותי On Demand נתמכים כיום על ידי ספקי התכנים ורשתות השידור הצצה אל העתיד 2
כיום אנו צורכים בידור גם (בעיקר?) כך הלקוח התרגל להיות אקטיבי רק כך צרכנו בידור בעבר 2 feet entertainment 10 feet entertainment Lean-forward entertainment Lean-back entertainment
N G V e e המחקר נעשה במסגרת מאגד The Consortium ofNext Generation Personalized Video Content Services נגב הדור הבא בשירותי תוכן וידאו אישיים
הפערים והמיקוד של נגב Access Networks Content Editing Service End User Devices Content Creation Content Management Content Network Management Backbone Physical Layer Content Delivery Content Protection Delivery Service Management Storage Technology Billing Video Codecs בליבו של שירות הטלוויזיה האישית נדרש מחקר ופיתוח משולב וארוך טווח End User Applications
האתגרים עמם נגב מתמודד Service • Service Management • בחירת התוכן על ידי הצרכן ועבורו איננה אפשרית :סוג התוכן, המועד, ... כיום לוח השידורים ומגוון הערוצים מכתיב לצרכן מה יקבל • אין שיטות יעילות לאפיון המנוי והעדפותיו כיום כל הצרכנים זהים מבחינת ספק השירות • Content Management • אין ניתוח התוכן וסיווגו המאפשר התאמה אישית כיום הסיווג הינו על פי מידע מנהלי בלבד, ולא על סמך תכונות התוכן • ארגון התוכן, ואחסונו לא ערוכים לכמויות הצפויות ולצריכה אישית אין ניהול לפי תדירות השימוש, מיקום המשתמשים והעדפותיהם • Content Delivery • הרשתות לא מסוגלות להפיץ תכנים בהיקפים הצפויים שידור טלוויזיה Broadcastהינו אחיד לכל המנויים • התלות בסוג הרשת ובסוג המכשיר מונעת שירות אוניברסלי לצרכן בכל סוג רשת יש שירות נפרד עבור ציוד צפייה מסוים Content Delivery
ספק שירות תוכן הביע נכונות להשתתף ללא מימון מפעיל רשת הביעו נכונות להצטרף למאגד. מפעיל יבחר ויצורף בשנה ב' החברות במאגד פתרונות דיגיטליים מלאים לכבלים, לוויין ופס רחב 230 עובדים מערכות ותוכנות מולטי-מדיה מבוססות רשת 2000 עובדים פתרונות מתקדמים להעברת וידאו על רשתות רחבות פס 145 עובדים טכנולוגיות ומוצרי מולטי-מדיה לתחום הנייד 65 עובדים אפליקציות עבור טלוויזית IP(IPTV) 85עובדים פתרונות אחסון והזרמהשל וידאו ברשתותIP 70עובדים מערכות לניהול שידורים עבור רשתות ותחנות טלוויזיה 110 עובדים שילוב החברות והתמחותן מאפשר טיפול משולב בפערים הטכנולוגיים
Service Content Delivery המחקר האקדמי במאגד חברה מלווה תחום המחקר מוסד חוקר/ים אורכה אלגוריתמים להקבצה של צרכנים על פי מאפיינים שימוש ומיקום אונ' בר-אילן פרופ' שרית קראוס אורכה וסינטקמדיה עיצוב סביבת הצריכה של תכני וידאו על פי מתודולוגיות לפיתוח מערכות תומכות החלטה אונ' תל אביב פרופ' גדי אריאב קומברס טכנולוגיה לקטלוג ואחזור תוכן וידאו הטכניון פרופ' דוד מלאך אופטיבייס הכנה אוטומטית של תוכן לצורך בנית תקצירים האונ' העברית פרופ' שמואל פלג שיטות לאיזון עומס ושיקולי מיקום של תוכן וידאו בשרתי מדיה מבוזרים ביטבנד הטכניון והמרכז הבינתחומי פרופ' הדס שכנאי ד"ר תמי תמיר סקופוס אלגוריתמים לאופטימיזציה של משאבי רשת לצורך השקת המונית של שירותי תוכן אישיים אונ' תל אביב ד"ר בועז פת-שמיר שיבוץ והזרקה של קטעי וידיאו לתוך וידיאו במישור הדחוס סקופוס ואופטיבייס הטכניון פרופ' דוד מלאך
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.
MOD applications • Entertainment • Education • Advertising • Distance learning • Home shopping • Games • Interactive news, etc. Examples: Sport , Music , News, E-learning , other • Client-Server paradigm:About 80% of clients want to view about 2% of most popular videos (Zipf distribution).
MOD applications • Web-Cameras Similar properties, different technologies. Examples: Traffic (2), Day-care and nanny watch Security, Many more.
The Challenges Minimizing clients’ maximal waiting time (delay). Balance the load on the disks. Service millions of clients using limited bandwidth.
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.
Staggered broadcasting, [Dan, Sitaram, Shahabuddin, 96]: Transmit the movie repeatedly on each of the channels. Example: One Movie, Two Channels C1: … 0 1/2 1 3/2 2 5/2 3 C2: … Guaranteed client delay: at most 1/2. The delay, D, is measured as a fraction of the movie length.
Staggered Broadcasting In general: To guarantee delay at most D, h=1/D channels are required, each transmitting the movie at clients’ view rate. h=7, D 1/7 Can we do better? A clue: With today’s advanced technology, clients can buffer data to their local machine.
Stream Merging • Reduces server bandwidth by using larger receiving bandwidth for clients and by adding buffers to clients.
Stream Merging • The server multicasts the media in a staggered way via several channels
Stream Merging • Clients may receive data from 2 streams simultaneously while playing data they have accumulated in their buffers.
Stream Merging • The initial position, where the client is about to receive data from a new stream and a stream that was initiated earlier. • The system after some time. The client still receives data from both streams.
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.
Batching Vs. Stream Merging • Assume a full stream has length 5.
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?
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.
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 rate • Display the trailing stream at a faster rate • The faster stream catch up with the slower one • The streams can be piggybacked/merged • The second stream can be dropped
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
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.
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!
C1: 1 1 1 1 1 1 … 0 1/3 2/3 1 4/3 5/3 2 C2: 2 3 2 3 2 3 … arrive watch & buffer arrive watch & buffer Using Client’s Buffer [Viswanathan, Imielinski, 96]: Partition the movie into segments. Early segments are transmitted more frequently. 1 2 3 (3 segments) Each time-slot has length 1/3. The client waits for the next slot start, and can then start watching the movie without interruptions. Maximal client delay: 1/3 (slot size).
C1: 1 1 1 1 1 1 … C2: 2 3 2 3 2 3 … Using Client’s Buffer Why does it work? The first segment is transmitted in any window of one slot. The second segment is transmitted in any window of two slots. The third segment is transmitted in any window of three slots.
… 4 4 4 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.
Examples:h=1, s=1, D=1 1 1 1 C1 1 1 1 1 1 1 … h=2, s=3. D=1/3 C1 … C2 2 3 2 3 2 3 … 4 4 4 C1 … C2 … 5 5 5 … C3 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 3 6 7 3 8 3 6 7 3 8 9 9 Harmonic Window Scheduling • Given h, maximize s such that each i in 1,..,s is scheduled with window at most i. h=3, s=9. D=1/9 Can other techniques do better? Match a lower bound?
Example: Input: W={2,4,5} Output: one channel … 4 2 5 2 4 2 5 2 4 2 5 2 There is at least one transmission of in any window of 5 time-slots There is at least one transmission of in any window of 4 time-slots 5 4 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.
w = 3 w = 4 w = 5 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
Perfect Channel Schedule • Perfect channel schedule: For page i, there exists a wi’ wisuch that the gap between any two consequent schedules of page i is exactly wi’ time slots. • wi is the actualthe 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.
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. S1 S2 S … S1 S2 S … RRk-1 RRk Recursive Round Robin (RRR) Schedules: RR1 schedule: For some , iterate over z1,z2,…,z. All the segments have window . … z1 z2 z RR1
a b a b a b a b a b a b a a b b c d e c d e c d e c d e c c d d e e a b a b a b a b a b c d e c d e c d e a c b d a e b c a d b e a c b d a e b Tree Representation of RRR Schedules An RR2-schedule from S1 and S2: S1: RR1 S2: RR1
c d e Tree Representation of RRR Schedules An RR3 schedule: f a b RR2 a c b d a e b c a d b e a c b d a e b RR1 f f f f f f f f f f f f f f f f f f f RR3 … a f c f b f a f e f
4 4 4 C1 … C2 … 5 5 5 … C3 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 3 6 7 3 8 3 6 7 3 8 9 9 Tree Representation of RRR Schedules 1 2 3 4 5 9 6 8 7
8 16 17 An RRR Schedule of [1..25] Harmonic window scheduling of 1..25 on 4 channels. 1 2 3 4 6 7 9 5 18 19 22 23 10 11 12 13 14 15 24 25 20 21 The window of a leaf k is idegree(vi), for all vi on the path from the root to the leaf.
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.
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.
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 1stsegment 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). The total delay is at most d+1 slots arrive buffer watch & buffer d slots s slots
… 1 1 1 1 1 1 … 2 3 2 3 2 3 3 3 3 4 4 4 1 1 1 1 1 1 2 5 6 2 7 2 5 6 2 7 8 8 Example I: One Movie, Two Channels Without shifting, the best schedule has delay 1/3 … C1: … C2: With shifting, we can schedule 8 segments 1..8, such that segment i is transmitted in any i+1 window (d=1). C1: C2: The resulting delay is (d+1)/s =2/8 = 1/4.