Network Computing Laboratory Odyssey: Agile Application- Aware Adaptation for Mobility SOSP ’97 Brian D. Noble 외, CMU Presenter: Youngki Lee.

Slides:



Advertisements
Similar presentations
Operating System Structures
Advertisements

Silberschatz and Galvin  Operating System Concepts Module 16: Distributed-System Structures Network-Operating Systems Distributed-Operating.
Context Awareness System and Service SCENE JS Lee 1 An Energy-Aware Framework for Dynamic Software Management in Mobile Computing Systems.
Distributed Multimedia Systems
Middleware in Mobile Environments ICS 280 Junjun Ouyang.
Panoptes: A Scalable Architecture for Video Sensor Networking Applications Wu-chi Feng, Brian Code, Ed Kaiser, Mike Shea, Wu-chang Feng (OGI: The Oregon.
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
1 Virtual Machine Resource Monitoring and Networking of Virtual Machines Ananth I. Sundararaj Department of Computer Science Northwestern University July.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
1 Odyssey – Support for Mobile, Adaptive Applications Examples and some slides from Brian Noble and Kip Walker (contributors to the project)
Quality of Service in IN-home digital networks Alina Albu 23 October 2003.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
Distributed Information Systems - The Client server model
RDMA ENABLED WEB SERVER Rajat Sharma. Objective  To implement a Web Server serving HTTP client requests through RDMA replacing the traditional TCP/IP.
Differentiated Multimedia Web Services Using Quality Aware Transcoding S. Chandra, C.Schlatter Ellis and A.Vahdat InfoCom 2000, IEEE Journal on Selected.
Adaptive Content Delivery for Scalable Web Servers Authors: Rahul Pradhan and Mark Claypool Presented by: David Finkel Computer Science Department Worcester.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP  FTP  SMTP / POP3 / IMAP  Focus on client-server.
Security and Digital Recording System Students: Gadi Marcu, Tomer Alon Number:D1123 Supervisor: Erez Zilber Semester:Spring 2004 Final Presentation.
1 Web Testing CIS 376 Bruce R. Maxim UM-Dearborn.
Web-Enabling the Warehouse Chapter 16. Benefits of Web-Enabling a Data Warehouse Better-informed decision making Lower costs of deployment and management.
Agile Application-Aware Adaptation for Mobility Khaled Hadi ICS243F Odyssey.
The Origin of the VM/370 Time-sharing system Presented by Niranjan Soundararajan.
1 Efficient Management of Data Center Resources for Massively Multiplayer Online Games V. Nae, A. Iosup, S. Podlipnig, R. Prodan, D. Epema, T. Fahringer,
A Web Services Based Streaming Gateway for Heterogeneous A/V Collaboration Hasan Bulut Computer Science Department Indiana University.
MSF Testing Introduction Functional Testing Performance Testing.
Active Network Applications Tom Anderson University of Washington.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Adaptation for Mobile Data Access (DM1 & PL1) Yerang Hur Mar. 24, 1998.
Ch 1. Mobile Adaptive Computing Myungchul Kim
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
TESTING STRATEGY Requires a focus because there are many possible test areas and different types of testing available for each one of those areas. Because.
IMS 4212: Distributed Databases 1 Dr. Lawrence West, Management Dept., University of Central Florida Distributed Databases Business needs.
Design and Implement an Efficient Web Application Server Presented by Tai-Lin Han Date: 11/28/2000.
Introduction To Computer System
Integrating Fine-Grained Application Adaptation with Global Adaptation for Saving Energy Vibhore Vardhan, Daniel G. Sachs, Wanghong Yuan, Albert F. Harris,
Supporting Multi-Fidelity Computations in Mobile Interactive Applications Dushyanth Narayanan.
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Rethinking OS Design Metrics Workload Hardware Resources Services & API Internal Structure Policies / Mechanisms Energy efficiency Processor, Memory, Disks.
Research Overview TalkOdyssey - 1 Odyssey Agile, Application-Aware Adaptation for Mobility Kip Walker some slides “borrowed” from Satya.
Computer Emergency Notification System (CENS)
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
An Overlay Network Providing Application-Aware Multimedia Services Maarten Wijnants Bart Cornelissen Wim Lamotte Bart De Vleeschauwer.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
OPERETTA: An Optimal Energy Efficient Bandwidth Aggregation System Karim Habak†, Khaled A. Harras‡, and Moustafa Youssef† †Egypt-Japan University of Sc.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
INFORMATION SYSTEM-SOFTWARE Topic: OPERATING SYSTEM CONCEPTS.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
ECI – electronic Commerce Infrastructure “ An application to the Shares Market ” Demetris Zeinalipour ( Melinos Kyriacou
Remote Execution to Save Local Energy Compute locally on battery power vs Transmit to wired compute server + Idle in low power mode + Receive results Why.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Lecture 24: GFS.
KAIS T System Support for Mobile, Adaptive Applications Brian Noble, University of Michigan Presented by Hyeeun Choi.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
CS848: Pervasive and Mobile Computing April 15, 2002 Department of Computer Science The University of Western Ontario Mobile Computing Models.
Operating Systems Distributed-System Structures. Topics –Network-Operating Systems –Distributed-Operating Systems –Remote Services –Robustness –Design.
Nope OS Prepared by, Project Guides: Ms. Divya K V Ms. Jucy Vareed
Parallel Data Laboratory, Carnegie Mellon University
Datamining : Refers to extracting or mining knowledge from large amounts of data Applications : Market Analysis Fraud Detection Customer Retention Production.
Overview of Computer Architecture and Organization
Agile Application-Aware Adaptation for Mobility
PLANNING A SECURE BASELINE INSTALLATION
Congestion Control in SDN-Enabled Networks
Presentation transcript:

Network Computing Laboratory Odyssey: Agile Application- Aware Adaptation for Mobility SOSP ’97 Brian D. Noble 외, CMU Presenter: Youngki Lee

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 2 Contents Motivating scenario Odyssey Goals Fidelity Concurrency Agility Application-aware adaptation Odyssey architecture and APIs Example applications Experiments Conclusion

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 3 Motivating Scenario Speech Recognition Server Video Streaming Server Web server Travel information response Voice Recognized command Travel information request Video narration of local history Request

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 4 What does odyssey do? Speech Recognition Server Video Streaming Server Web server Travel information response Voice Recognized command Travel information request Video narration of local history Request Odyssey monitors resources. Bandwidth, CPU cycles and battery power Odyssey interacts with each application to best exploit monitored resources. When high bandwidth connectivity is lost due to a radio shadow Odyssey detects the change and notifies interested applications Application-dependant adaptation When the user emerges from the radio shadow Revert!!

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 5 Goals Support variety of applications and data types Concurrent applications Quick adaptation Simple programming model

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 6 Fidelity The degree to which data presented at a client matches the reference copy at the server How snazzy the data is. The dimensions of fidelity are natural axes of adaptation for mobility. Fidelity has many dimensions one is universal: consistency others depend on data type video: frame rate, frame quality geographical databases: feature set, minimum feature size tradeoffs are application-dependent A key goal of Odyssey is to provide a framework within which diverse notions of fidelity can easily be incorporated.

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 7 Concurrency Many mobile users will find it valuable to run background applications in addition to the foreground application that dominates their attention. Background: information filtering application monitoring data such as stock prices or enemy movement One must control the use of limited resources. Application transparent such as OS? Application dependant such as Eudora?

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 8 Agility A key property of an adaptive system is the speed and accuracy with which it detects and responds to changes in resource availability. Especially important when changes are large and erratic. Agility is complex property with many components. Differing sensitivities to different resources. A system may be much more sensitive to changes in network bandwidth than to changes in battery power level. Differing origins of changes in resource availability. Supply of a resource due to mobility Demand for resource by concurrent applications.

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 9 Application-Aware Adaptation Who is responsible for adaptation ? Individual applications (laissez-faire adaptation) The system (application-transparent adaptation) system provides resource arbitration and control fidelity. Both (application-aware adaptation) application specific information is used while the system controls resources. Application-aware Odyssey Laissez-faire (ex. Eudora) Application-transparent (ex. Coda) Application diversity ↑Application currency ↑

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 10 Application-Aware Adaptation Collaborative partnership between the system and individual applications. The system monitors resource levels, notifies applications of relevant changes, and enforces resource allocation decisions. Each application independently decides how best to adapt when notified. Both of application diversity and currency are achieved. Diversity is accommodated by allowing applications to determine the mapping of resource levels to fidelity levels Concurrency is supported by allowing the system to retain control of resource monitoring and arbitration.

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 11 Odyssey System Architecture Interceptor Application Odyssey NetBSD OS Kernel Warden2 Warden3 Viceroy Warden1 Odyssey calls Upcall All system calls

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 12 Viceroy and Wardens System-level data differentiation through wardens Many, per application (data type) provides system-level support to manage a data type To support a new data type, an appropriate warden has to be written Wardens subordinate to viceroy single, central component type-independent, system-level support responsible for all resource allocation, arbitration central point of authority and control for Odyssey

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 13 Resource Negotiation Applications give viceroy a window of tolerance for some resource viceroy monitors resource availability if it leaves window, notifies application via upcall Our architecture supports many resources we currently focus only on network bandwidth Available bandwidth Fid. 1 Fid. 2 Fid. 3 Fid. 2 Time

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 14 Odyssey API Resource negotiation operations request(in path, in resource-descriptor, out request id) cancel(in request-id) Upcall handler handler(in request-id, in resource-id, in resource-level) Changing Fidelity: Type-specific operations tsop(in path, in opcode, in insize, in inbuf, inout outsize, out outbuf) Resource Descriptor Fields Resource-id Lower bound Upper bound Name of upcall handler Generic Resources in Odyssey Network bandwidth Network latency Disk cache space CPU Battery power

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 15 Example Applications Video player Web browser Speech recognizer

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 16 Video Player xanim: split into client and server server offers movie at several levels of fidelity application plays the track that the current bandwidth can support Xanim Video Server Viceroy Video Warden Odyssey API RPC Client JPEG(99) JPEG(50) Black-and-white Two tsops (1)To read a movie’s meta data (2)To get a particular frame from a specified track

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 17 Web Browser Netscape: client-side proxy (cellophane) + remote distillation server distillation server degrades data before shipping to client Netscape Distillation Server Viceroy Web Warden Odyssey API RPC Client Cellophane HTTP To Web servers Tsop to set a fidelity level

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 18 Speech Recognizer Janus: support remote recognition method, hybrid Xanim Remote Janus Server Viceroy Video Warden Odyssey API RPC Client Local Janus Server RPC

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 19 Evaluation How agile is Odyssey in the face of changing network bandwidth? How beneficial is it for applications to exploit the dynamic adaptation made possible by Odyssey How important is centralized resource management for concurrent applications?

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 20 Agility Matrics The field of control systems Characterize the adaptive ability of a system with respect to a particular output in terms of its responses to a set of input reference waveforms Reference waveforms 30 sec 60 sec 2 sec

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 21 Experimental methodology Generating discontinuous waveforms It is impossible in real network to generate those waveforms precisely and repeatedly. So, trace modulation is used. Interpreting results Fidelity and performance should be considered together. Experimental conditions 90 MHz Pentium client with 32 MB of memory A collection of 200 MHz Pentium Pro servers with 64MB of memory NetBSD 1.2 kernel customized to include Odyssey and trace modulation extensions.

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 22 How to measure network bandwidth? Measure and log roundtrip time and throughput Each round trip entry records the time, T rtt, to send a request to a server and receive a response. Each throughput entry records T win, which is either the time for a receiver to request and receive a window’s worth, D, of data, or for a sender to transmit that data and receive an ack. Smooth RTT and Throughput New =  (measured) + (1-  )(old) Bandwidth estimation by viceroy

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 23 Supply Estimation Agility

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 24 Demand Estimation Agility

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 25 How Beneficial is Adaptation? Video Player Fidelity : the quality of the video JPEG(99) = 1, JPEG(50) = 0.5, black-and-white = 0.01 Performance: frames dropped Adaptation goal: play the highest quality possible without dropping frames

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 26 How Beneficial is Adaptation? Web Browser Fidelity: Quality of image Full quality=1, JPEG(50) =0.5, JPEG(25) = 0.25, JPEG(5) = 0.05 Performance: average time to fetch and display an image during an execution Adaptation goal: display the best quality image that can be fetched within twice the twice the Eathernet time, in this case 0.4 sec.

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 27 How Beneficial is Adaptation? Speech Recognizer Fidelity: fixed since the quality of recognition does no vary. Performance: the speed with which recognitions take place

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 28 How Important is Centralized Resource Management? Laissez-Faire Rather than combining information from all logs, each log is examined in isolation. Blind-Optimism Pass the theoretical bandwidth to any interested applications

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 29 Conclusion Need for adaptation in mobile systems is widely recognized Application-aware adaptation offers most general and effective approach to adaptation collaborative partnership between system and application previous approaches are limiting cases of this approach Odyssey prototype provides initial validation of concept

Korea Advanced Institute of Science and Technology Network Computing Laboratory | 30 Future Work Short term adaptation for Web objects other than images Multiple levels of fidelity in the speech application. improving agility on bandwidth drops Medium term explore integration of Odyssey in other operating systems broaden number of managed resources enlarge range of supported applications... Long term deploy Odyssey for real use dynamic function vs. data shipping as in speech