Presentation is loading. Please wait.

Presentation is loading. Please wait.

Building an Adaptive Multimedia System using the Utility Model Lei Chen, Shahadat Khan, Kin F.Li & Eric G.Manning PANDA Group, University of Victoria Victoria,

Similar presentations

Presentation on theme: "Building an Adaptive Multimedia System using the Utility Model Lei Chen, Shahadat Khan, Kin F.Li & Eric G.Manning PANDA Group, University of Victoria Victoria,"— Presentation transcript:

1 Building an Adaptive Multimedia System using the Utility Model Lei Chen, Shahadat Khan, Kin F.Li & Eric G.Manning PANDA Group, University of Victoria Victoria, British Columbia, Canada

2 2 Overview zThe problem zThe Utility Model (UM) zLayered Coding and Transmission (LCT) zHow to apply the Utility Model to LCT zThe Quality Utility Extension zUnix Kludges zImplementation & Experimental Results

3 3 The Problem: zHow to share resources in a multimedia system? yContention for resources by competing applications but yMultimedia real-time constraints demand resource guarantees to guarantee QoS

4 4 For example... Receiver Bandwidth y Bandwidth x Total Bandwidth z (x+y > z) File Transfer Video- on- demand Playback

5 5 Our solution: apply the Utility Model to Layered Coding and Transmission

6 6 We will zOptimize server revenue (utility) while zfully respecting all resource constraints demanded by hard QoS guarantees by on-line session admission & upgrades zdevise a bidding HMI protocol

7 7 The Utility Model (UM) z session utility u i (Q i ) session utility function system utility objective resource mapping system resource constraints maximize U =  u i (Q i )  r (Q i )  R session resources  r (Q i ) gold session i bronze silver Quality Q i

8 8 The Utility Model (UM) ydefines relationships among xquality profile, xquality-resource mapping, xsession and system utility, xapplication and system resource constraints, yformulates the Adaptive Multimedia Problem (AMP): Given: quality-resource mappings and quality-utility mappings, maximize some system utility function, subject to resource constraints.

9 9 Knapsack problems: u=10 p=5 u=8 p=4 u=15 p=8 Pick items to maximize weight (utility) U=  u, subject to volume constraint (resource constraint):  p  39 

10 10 UM as an MMKP problem zLet: ystones be sessions at QoS levels ypiles of stones be sessions yvolume be multidimensional (multiple resources): zChoose: yat most one stone per pile yto maximize revenue (weight) ysubject to all resource constraints (multidimensional volume)

11 11 Solving the AMP: u=10 p=5 m=4 u=8 p=4 m=5 u=15 p=8 m=7 u=20 p=10 m=8 u=20 p=8 m=10 u=25 p=15 m=15 u=50 p=20 m=22 u=30 p=15 m=21 Pick at most one item from each stack in order to maximize U=  u, subject to resource constraints:  p  39  m  35 i.e. map AMP to a Multiple-choice Multi-dimensional 0-1 Knapsack Problem (MMKP):

12 12 UM as an MMKP z Solve the MMKP algorithm BBLP gives optimal solutions heuristic HEU gives approximate but fast solutions –300  sec for moderate problems; –suitable for realtime session admission control

13 13 Layered coding: codeword Base qualityimprovements B E1 B: crude image -bronze B +E1: better - silver B+E1+E2:still better - gold E1 B E2

14 14 Layered Coding and Transmission zLayered coding methods: spatial layering (e.g. JPEG, MPEG, Pyramid coding, Sub-band coding) temporal layering (e.g. Motion-JPEG, H.261, DVI, MPEG-2, etc)

15 15 Layered transmission by multicast: zSend each part of the codeword as a separate multicast group zthe more groups received, the better the quality zLayered transmission methods: IP Multicast and MBone RLM ( Steve McCanne, UCB) DSG (Georgia Tech. Inst.) LVMR (by Xue Li, Georgia Tech.)

16 16 Using the UM: z Receiver maps quality levels into resource requirements z UM selects the quality level based on available resources

17 17 Using the UM: Receiver Video-on-Demand Playback The Utility Model Quality selection bronze E1 E2 silver gold Base CPUBW in BW out T

18 18 Questions yHow to design the interface between LCT and the UM? yWhat resources need to be monitored? yWhat resources can be monitored? (using an off-the-shelf OS) yWhat resources can be reserved? yHow? (Major Operating Systems problems )

19 19 More Questions... yHow to derive quality-resource mappings? yHow to use the UM in an obsolete* best- effort environment, i.e. x the present Internet x off-the-shelf operating systems (Unix, Windows, MacOS) _____________________ * from the viewpoint of multimedia with QoS

20 20 Demonstrations ybest-effort system: xthe UM adapts by scaling back QoS levels of the sessions in its domain yreservation based system: xall resources & sessions in UM’s domain, so x UM optimally sets QoS levels of all sessions.

21 21 The Unix QUE zUnix Quality Utility Extension (QUE) yprovides an extension to a traditional OS for QoS management ybased on the UM yestimates quantities which cannot be easily measured in Unix

22 22 Unix QUE yimplements the concepts of the UM: session profiles, quality-resource mapping, session and system utility, and resource constraints ; ysupports : xadmission control and xquality adaptation (HMI bidding protocol )

23 23 QUE Components & Interfaces ycomponents: Utility Model Engine (UME) the OS applications

24 24 QUE Components & Interfaces xInterfaces The Quality Management Interface(QMI) - between the UME and applications The Graphical User Interface(GUI) - between the UME and users The Resource Reservation and Monitoring APIs - between the UME and OS;

25 25 QUE components: GUI Reservation Agent Resource Monitor Admission Request or QoS Mapping Change Admission Reply or Quality Change Reserveget usage Operating System Applications ServicesManagement QMI Service APIResource Reservation APIResource Monitoring API Utility Model Engine Consume Resources User Adaptation Status QoS Mapping Change Start Application Obtain Services

26 26 QUE: Admission Control (HMI protocol) xUME must guarantee each session’s minimal quality; (by reserving the minimal resources required) xa session is accepted iff enough free resources to provide minimal QoS, and increase in system utility ($$) x sessions must obey UME’s adaptation decisions

27 27 HMI protocol: Quality Adaptation occurs when new session admitted, a session’s QoS mappings changes, a session is terminated, available resources change. x Operating System New / Drop / Change session profile 1 1 3 Utility Model Engine Application 2 2 Adjust reservation in system resources Available resources change Resulting changes in resource usage

28 28 QoS Mapping xquality-utility mapping xrefine the quality-resource mapping: quality-methods mapping method-resources mapping gold session i operating quality Q i session utility u i (Q i ) session utility function system utility objective resource mapping system resource constraints bronze silver maximize U =  u i (Q i ) constraint  r (Q i )  R session resource  r (Q i ) QoS scaling method  m i (Q i ) resource requirements  r (m i ) method-resources mapping quality-methods mapping

29 29 The QUE (cont.) zExample: (gold, silver, bronze) Video: 5 fps M-JPEG Audio: mono Image: gray scale Consistency: none Latency: high Video: 15 fps VHS Audio: stereo Image: low-res color Consistency: loose Latency: medium Video: 30 fps HDTV Audio: surround Image: hi-res color Consistency: tight Latency: low CPU: 30% in BW: 5 Mbps out BW: 512Kbps CPU: 20% in BW: 384 Kbps out BW: 64 Kbps CPU: 10% in BW: 56 Kbps out BW: 14.4 Kbps set_fps(30, HDTV); set_sound(surround); set_img_size(hi_res_c); consis_grp(join_all);... Method 1 set_fps(15, VHS); set_sound(stereo); set_img_size(lo_res_c); consis_grp(join_base);... Method 2 set_fps(5, mjpeg); set_sound(mono); set_img_size(grey); consis_grp(none);... Method 3 User-level QoS Application-level QoS System-level QoS Other Methods

30 30 The QUE (cont.) zQoS Agents: yper-session proxy yprovides QoS mappings ymaintains session profile yhandles communication between session and UME. Admission Reply Quality Change Application $100 Gold void set_fps (30); in,out,cpu (30, 15, 25) $100 Gold void set_fps (30); in,out,cpu (30, 15, 25) $100 Gold void set_fps (30); in,out,cpu (30, 15, 25) QoS Agent Admission Request Session Profile Operating System Consume Resources Map Quality- Utility Map Quality- Methods Utility Model Engine Service API QM I

31 31 OS requirements: zOS must be able to yallocate resources to sessions as decided by QUE yenforce allocations on misbehaving sessions ymeasure per-session consumption of each resource & report results to QUE

32 32 Meanwhile (in the Unix world)... yNo enforceable resource allocation available in Unix yNo per-session resource consumption data ySystem-level monitoring of consumption via /proc yResource consumption estimated as follows: CPU T = user _____________________(% total cpu cycles/sec) user + nice + idle + OS Tx T = totalTx T - totalTx T-1 (packets / sec ) Rx T = totalRx T - totalRx T-1 (packets / sec ) RHS quantities obtainable from /proc in Unix.

33 33 Estimating resource consumption in unix... z define: raw - total amount of a resource provided by the hardware manageable - available to the UME unmanageable - used by applications out of the UME’s domain –raw = manageable + unmanageable allocated - required to support operating QoS of admitted sessions –free = manageable - allocated : the unused resource reserved - required to support minimal QoS of admitted sessions

34 34 Getting around a unix defect - no reservations: yIn an unreserved system (unix) xallocations cannot be enforced xapplications contend for resources at run-time; xso manageable resources must be adjusted to avoid contention x but contention cannot be detected at OS level: (one cannot distinguish full utilization from contention.)

35 35 Contention Avoidance (the problem): zOnly raw T and monitored T are measurable; how to infer manageable T ? manageable unmanageable raw allocated free manageable monitored free raw Resource usage reading at time tResource partitions in the UME at time t-1 Question: How should the UME partition the resource at time t ? Quality adaptation result

36 36 Estimating Manageable for Contention Avoidance: assume applications do not over-consume initial condition: manageable T=0 = 95% * raw T=0 Now monitored T no out-of-domain work => manageable T = 95% * raw T monitored T > allocated T => out-of-domain work => manageable T = raw T - unmanageable T = raw T - ( monitored T - allocated T-1 )

37 37 Systems providing resource reservation: zNone of the above is necessary

38 38 Implementation and Results zPrototype implementation yimplemented the QUE over Linux yimplemented VoD, which uses LCT yimplemented QFTP, a rate controllable file transfer program

39 39 Experiment setup zQUE used in client Redhat Linux 2.1 Server B Redhat Linux 2.1 Client C (QUE) 10 Mbps Ethernet 1.6 Mbps Solaris 2.4 Server A 1.6 Mbps

40 40 Implementation and Results (cont.) zBest-effort mixed system (like today’s Internet) yVoD (in UM’s domain) starts first. yFTP (outside UM’s domain) seizes most of the inbound bandwidth. y UME required to scale back the quality of VoD yVoD customer cancels service agreement, sues provider Client C FTP Utility Model Engine VoD Scale back ! contention Quality Utility Extension Inbound bandwidth From Server A From Server B

41 41 QUE obeys system and application resource constraints. yQUE: x dynamically adjusts manageable resource; x adapts application’s QoS to avoid contention; x reserves required resources for applications’ minimal QoS; xdoes not scale back beyond the reserved level of the resource.

42 42 Reservation based system (future Internet, modern OS): z VoD preferred over QFTP (more utility offered) y preference then changed to favour QFTP (its $$ increased) y UME required to optimally adapt both sessions’ QoS Client C QFTP VoD gold provision Quality Utility Extension Inbound bandwidth silver From Server A From Server B Quality Resource Util bronze 40 pps $5 silver 60 pps $10 gold 120 pps $15 Quality Resource Util bronze 25 pps $50 silver 35 pps $75 gold 60 pps $100 Utility Model Engine silver

43 43 Implementation and Results (cont.) y QUE adapts both applications according to UM decisions: xpredictive system behavior xincreased system utility xoptimal resource allocation among applications xhappy customers

44 44 Performance yPentium 166MMX with 40MB memory y300ms (mean) for admission control yless than 2ms for quality adaptation

45 45 Summary zThe Utility Model: maximizes revenue while fully respecting all QoS guarantees zThe application of UM to LCT zThe Quality Utility Extension zKludges to avoid contention in an elderly OS with no resource reservation z Implementation and experimental results

Download ppt "Building an Adaptive Multimedia System using the Utility Model Lei Chen, Shahadat Khan, Kin F.Li & Eric G.Manning PANDA Group, University of Victoria Victoria,"

Similar presentations

Ads by Google