40 %
60 %
Information about acmmm02

Published on October 24, 2007

Author: Lassie


A Programming Framework for Quality-Aware Ubiquitous Multimedia Applications:  A Programming Framework for Quality-Aware Ubiquitous Multimedia Applications Duangdao Wichadakul, Xiaohui Gu, Klara Nahrstedt Department of Computer Science University of Illinois at Urbana-Champaign {wichadak, xgu, klara} Presented by Klara Nahrstedt Outline:  Outline Motivation, assumptions, and goals; Overall framework Quality-aware ubiquitous multimedia models; High-level application specification; Meta-data compilation protocol; Run-time meta-data execution; Experimental results; Conclusion. Motivation:  Motivation Ubiquitous environments promotes the proliferation of stationary and mobile devices interconnected by heterogeneous networks; Emerging distributed multimedia applications are being developed in such environments. Motivation (Cont.) :  Motivation (Cont.) Heterogeneity and mobility yield complexity of applications and systems, so building these quality- aware applications is hard. Different multimedia applications deal with different application-specific performance criteria (e.g., frame rate for Video-on-Demand applications); These applications are expected to be deployable in dynamic distributed heterogeneous environments; Mobility becomes a standard feature of these applications. Previous Solutions:  Previous Solutions Platform specific, and implemented with different programming languages with specific semantics, expected interfaces and parameters; Designed to handle particular aspects of quality provisions (e.g., resource reservation). Q-Compiler Concepts and Assumptions:  Q-Compiler Concepts and Assumptions Reusing multimedia components and underlying QoS- enabling services; De-coupling of generic QoS-enabling services and their specific implementations; Providing automated translations and substitutions to relieve the application developer from dealing with underlying QoS-enabling services’ details. Goals:  Goals VoDServer VoDClient Frame rate: [10, 30] fps VoDServer VoDClient Transcoder Easy program of component-based multimedia applications; Inclusion of QoS; Automated translation in ubiquitous environments; Flexible in deployment of QoS services. Meta-data programming Meta-data compilation <QoSCASpec> <ApplicationDescription> <SCD name=“VoDServer”> … <QSCD name=“DSRT”>… <SpecificConfiguration> <SupportingQoS frameRate=[10,30]/> <Cost estimations…/> <SpecificConfiguration> <ApplicationDescription> </QoSCASpec> Q-Compiler Overall Framework:  Q-Compiler Overall Framework High-level QoS-aware application specification Pre-defined meta-data compilation Meta-data compilation protocol Run-time meta-data execution Models Low level programming language compilers [Middleware 2001] [Assumed] Ubiquitous Multimedia Application (UMA) Model:  Ubiquitous Multimedia Application (UMA) Model (a) Task-flow model (b) Reward profile Relationship among tasks represented by a directed acyclic graph (DAG); Each task described by input and output service quality vectors (Qin and Qout), and a reward profile. Ubiquitous Multimedia Component (UMC) Model:  Ubiquitous Multimedia Component (UMC) Model UMC modeled as a multimedia component code(s), attached with a meta-data description and extended with a set of adaptation handlers. High-Level QoS-Aware Application Specification:  High-Level QoS-Aware Application Specification VoDServer VoDClient VoDServer VoDClient Transcoder Application description <ApplicationDescription> <ApplicationInformation> <ApplicationName name=“mobiman”/>… </ApplicationInformation> <SCDs> <SCD> <Name name=“VoDServer”/> … <SupportingQoS=“VoDServerQoS.xml”/> </SCD> </ SCDs> <SetupConfigurations> <SetupConfiguration> <Connection consumer=“VoDClient” producer=“VoDServer”> <ConnectionType>“real-time-streaming” </ConnectionType> </Connection> ... </SetupConfiguration> </SetupConfigurations> </ApplicationDescription> High-Level QoS-Aware Application Specification (Cont.) :  High-Level QoS-Aware Application Specification (Cont.) Frame rate: [10, 30, 5] fps Service quality description Adaptation control description if(clientMove(VoDClient, m1, m2)) then { instantiate(VoDClient, m2); reconnect(VoDClient, VoDServer);} <QoSCategory name=“Time”> <QoSSubCategory name=“videoDataType”> <Framerate type=“integerRange”> [10,30,5] </Framerate> </QoSSubCategory> </QoSCategory> <AdaptationRules> <Rule control=“if” events=“(clientMove(VoDClient,m1,m2))” actions=“instantiate(VoDClient,m2); reconnect(VoDClient, VoDServer);”/> </Rule> </AdaptationRules> Meta-Data Compilation Protocol:  Meta-Data Compilation Protocol Environment-independent translation Environment-dependent translation Slide14:  Environment-Independent Translation Slide15:  Environment-Independent Translation (Cont.) Application Deployment Descriptor :  Application Deployment Descriptor <QoSAwareApplicationDescriptor> <ApplicationInformation> … </ApplicationInformation> <SCDs> … </SCDs> <QSCDs> … </QSCDs> <GenericConfigurations> <SetupConfiguration index=“0” type=“…”> <SubConfiguration> <SupportingQoS profile=“setupConfig0QoS.xml”/> <Connection> … </Connection> <QoSCategory name=“Time”> <Association> <QoSRequester name=“VoDServer”> <QoSEnablingService name=“CPU”/> … </QoSRequester> </Association> </QoSCategory> <UpdatedInfo> <UpdatedInfo> </SubConfiguration> </SetupConfiguration> </GenericConfigurations> <AdaptationRules> … </AdaptationRules> </QoSAwareApplicationDescriptor> Application’s general information; Service component descriptions; Generic QoS-enabling service descriptions; Generic QoS-aware configurations; Adaptation rules. Slide17:  Environment-Dependent Translation QoSCASpec :  QoSCASpec <QoSCASpecr> <ApplicationInformation> … </ApplicationInformation> <SCDs> from the descriptor with additions </SCDs> <QSCDs> … </QSCDs> <SpecificTranslators> … </SpecificTranslators> <SpecificConfigurations> <SetupConfiguration index=“0” type=“…” <CostEstimations> <Substitution index=“0”> … <SetupCost> … </SetupCost> <RunningCost> … </RunningCost> </Substitution> </’CostEstimations> <SubConfiguration> from the descriptor </SubConfiguration> </SetupConfiguration> </SpecificConfigurations> <AdaptationRules> … </AdaptationRules> </QoSCASpec> Application’s general information; Service component descriptions; Specific QoS-enabling service descriptions; Specific translators; Specific QoS-aware configurations; Adaptation rules. Code Instrumentation :  Code Instrumentation Binding Partially-automatic code instrumentation Automatic code instrumentation Specific QoS enabling service’s pre-defined tags (e.g., DSRT’s tags such as STARTLOOP) Specific QoS enabling service’s (e.g., DSRT’s) interface binder Standard system calls (e.g., socket system calls) Specific QoS enabling service’s (e.g., RSVP’s) interface binder Run-Time Meta-Data Execution :  Run-Time Meta-Data Execution D. Wichadakul, K. Nahrstedt, X. Gu and D. Xu, “2KQ+: An Integrated Approach of QoS compilation and Component-Based, Run-Time Middleware for the Unified QoS Management Framework”, In Proceedings of IFIP/ACM International Conference on Distributed Systems Platforms (Middleware 2001), November 2001. Implementation and Results:  Implementation and Results The implementation of the Q-Compiler is divided in two main parts: The Q-Compiler’s cores are implemented in Java; The run-time meta-data execution is implemented as Lua scripts, interacting to Gaia services in the active space project. Florence Casablanca Satyam 100Mbps Overhead of UMC’s instantiation:  Overhead of UMC’s instantiation Instantiations of UMCs on Satyam, where its local disk contains all UMCs (b) Instantiations of UMCs on Florence, which maps its network drive to Satyam’s local disk Slide23:  Overhead of mobile VoD Setup Configuration 1: {VoDServer on Florence, and VoDClientPC on Satyam} Configuration 2: {VoDServer and UserProfileServer on Florence, and VoDClientPC on Satyam} Configuration 3: {VoDServer, UserProfileServer, and ProxyServer on Florence} Slide24:  Overhead of a Functional Adaptation Moving scenario (b) Overhead of functional adaptation according to user mobility Conclusion:  Conclusion Q-Compiler provides: High-level application specification for easily specifying a ubiquitous quality-aware multimedia application; Meta-data compilation protocol for translating the high-level specification into lower-level application/system descriptors portable and customizable for different deployment environments; Binding between application and QoS-enabling service components in a specific deployment environment; Run-time meta-data execution for helping the compilation and the instantiation of a quality-aware application. Acknowledgements:  Acknowledgements This work was supported by the National Science Foundation under contract number 9870736, the Air Force Grant under contract number F30602-97-2-0121, NSF CISE Infrastructure grant under contract numbers NSF EIA 99-72884EQ and NSF CCR-9988199, and NASA grant under contract number NASA NAG 2-1250. We would like to thank Yi Cui for his contribution to the multimedia component codes of the mobile VoD application, and Renato Cerqueira for an example of Lua script. Slide27:  For more information, please visit Motivation (Cont.):  Motivation (Cont.) Developing and deploying a quality-aware application in ubiquitous environments are time consuming and not trivial. Various application domains exist and have specific quality semantics; Ex. Video-on-Demand: frame rate, frame size, … Various system services exist that support quality and have specific quality semantics; Ex. CPU scheduling service: period, cycle time Heterogeneity yields complexity of applications and systems, so building quality-aware applications is hard. Application Specification:  Application Specification Application functional dependency graph; Setup configurations; service component descriptions; Connection descriptions. Application’s Service Quality Specification:  Application’s Service Quality Specification Mapping between different user quality levels and corresponding application specific QoS categories. Adaptation Specification:  Adaptation Specification Describing how the run-time meta-data execution should control the application corresponding to resource availability and mobility. Slide33:  Environment-Independent Translation Slide34:  Environment-Independent Translation (Cont.) Slide35:  Environment-Dependent Translation Slide36:  Environment-Dependent Translation (Cont.) Instantiation Overhead for individual components :  Instantiation Overhead for individual components and (b) use ExecManager for the instantiation instead of the javacomp manager (c) is the raw data of slide 22.(a) Instantiation Overhead for Different Setup Configurations :  Instantiation Overhead for Different Setup Configurations and (b) use ExecManager for the instantiation instead of the javacomp manager (c) is the raw data of slide 23 Pre-Defined Meta-Data Compilation :  Pre-Defined Meta-Data Compilation Common-and-actual ontology translation Two-common ontology translation Intermediate representation translation Application layer Middleware/RM layer

Add a comment

Related presentations

Related pages

Content-based Organization and Visualization of Music Archives

Content-based Organization and Visualization of Music Archives Elias Pampalk Austrian Research Institute for Artificial Intelligence (OeFAI) Schottengasse ...
Read more

J. Li, “Embedded Audio Coding (EAC) With Implicit ...

Embedded Audio Coding (EAC) With Implicit Auditory Masking Jin Li Microsoft Research, One Microsoft Way, Bld. 113, Redmond, WA 98052. Tel. + 1 (425) 703 ...
Read more

Content-based organization and visualization of music ...

pam_acmmm02.pdf ;; Info; Download PDF. potential certification reach. To share this paper with the field, you must first certify it.
Read more

19.4.6 News Video Analysis, Cut Detection, Summaries, Indexing

19.4.6 News Video Analysis, Cut Detection, Summaries, Indexing Chapter Contents (Back) Specific to news programs. ... ACMMM02(323-326). BibRef 0200.
Read more

Constant Density Displays Using Diversity Sampling. (PDF ...

Official Full-Text Publication: Constant Density Displays Using Diversity Sampling. on ResearchGate, the professional network for scientists.
Read more

Curriculum Library PLUS Catalogue 2015 AU by ClickView

Curriculum Library PLUS Catalogue 2015 AU.
Read more

... text en Metadata may ...
Read more

2015-05-10T20:08:02Z oai:CiteSeerX.psu: 2009-04-17 Multiuser Diversity For Mimo Wireless Systems With Linear ...
Read more


myCH14 #part Science-Technology presentation. ... Published on May 7, 2008. Author: Lassie. Source:
Read more