Agile Application-Aware Adaptation for Mobility Khaled Hadi ICS243F Odyssey.

Slides:



Advertisements
Similar presentations
Building FHIR Servers on Existing Applications
Advertisements

© 2005 Avaya Inc. All rights reserved. A Client-Side Architecture for Supporting Pervasive Enterprise Communications Amogh Kavimandan, Reinhard Klemm,
Mobile Agents Mouse House Creative Technologies Mike OBrien.
Silberschatz and Galvin  Operating System Concepts Module 16: Distributed-System Structures Network-Operating Systems Distributed-Operating.
Pervasive Web Content Delivery with Efficient Data Reuse Chi-Hung Chi and Cao Yang School of Computing National University of Singapore
Using DSVM to Implement a Distributed File System Ramon Lawrence Dept. of Computer Science
Middleware in Mobile Environments ICS 280 Junjun Ouyang.
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
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.
Think. Learn. Succeed. Aura: An Architectural Framework for User Mobility in Ubiquitous Computing Environments Presented by: Ashirvad Naik April 20, 2010.
1 Odyssey – Support for Mobile, Adaptive Applications Examples and some slides from Brian Noble and Kip Walker (contributors to the project)
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Distributed Information Systems - The Client server model
SensIT PI Meeting, April 17-20, Distributed Services for Self-Organizing Sensor Networks Alvin S. Lim Computer Science and Software Engineering.
Internet Information Server (IIS)
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.
AJAC Systems Hotel Reservation System
Client-Server Computing in Mobile Environments
FHIRFarm – How to build a FHIR Server Farm (quickly)
Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google∗
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
Adaptation for Mobile Data Access (DM1 & PL1) Yerang Hur Mar. 24, 1998.
Ch 1. Mobile Adaptive Computing Myungchul Kim
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Design and Implement an Efficient Web Application Server Presented by Tai-Lin Han Date: 11/28/2000.
CORE KAIST EECS Computer Engineering Research Lab A General Purpose Proxy Filtering Mechanism Applied to the Mobile Environment Bruce Zenel Jupyung Lee.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Robot Autonomous Perception Model For Internet-Based Intelligent Robotic System By Sriram Sunnam.
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Bộ môn Mạng và Truyền Thông Máy Tính.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Research Overview TalkOdyssey - 1 Odyssey Agile, Application-Aware Adaptation for Mobility Kip Walker some slides “borrowed” from Satya.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
CH1. Hardware: CPU: Ex: compute server (executes processor-intensive applications for clients), Other servers, such as file servers, do some computation.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Chapter 18 Object Database Management Systems. McGraw-Hill/Irwin © 2004 The McGraw-Hill Companies, Inc. All rights reserved. Outline Motivation for object.
Smart Lab - RBV Network 1 Radial Basis Voronoi Network: An Internet Enabled Vision System for Remote Object Classification RAYMOND K. CHAFIN, CIHAN H.
Quick overview of ASP.NET Ajax Ajax deep-dive Cover some key real-world problems Discuss solutions, patterns, opportunities Lots of demos And more of.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Network Computing Laboratory Odyssey: Agile Application- Aware Adaptation for Mobility SOSP ’97 Brian D. Noble 외, CMU Presenter: Youngki Lee.
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.
NOVA A Networked Object-Based EnVironment for Analysis “Framework Components for Distributed Computing” Pavel Nevski, Sasha Vanyashin, Torre Wenaus US.
Search Engine using Web Mining COMS E Web Enhanced Information Mgmt Prof. Gail Kaiser Presented By: Rupal Shah (UNI: rrs2146)
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Acknowledgement: These slides are adapted from slides provided in Thißen & Spaniol's course Distributed Systems and Middleware, RWTH Aachen Processes Distributed.
1 Power to the Edge Agility Focus and Convergence Adapting C2 to the 21 st Century presented to the Focus, Agility and Convergence Team Inaugural Meeting.
Apache Web Server Architecture Chaitanya Kulkarni MSCS rd April /23/20081Apache Web Server Architecture.
Chapter 18 Object Database Management Systems. Outline Motivation for object database management Object-oriented principles Architectures for object database.
MGRID Architecture Andy Adamson Center for Information Technology Integration University of Michigan, USA.
HNC COMPUTING - Network Concepts 1 Network Concepts Network Concepts Network Operating Systems Network Operating Systems.
KAIS T System Support for Mobile, Adaptive Applications Brian Noble, University of Michigan Presented by Hyeeun Choi.
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.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
#01 Client/Server Computing
Chapter 3: Windows7 Part 4.
Comparison of LAN, MAN, WAN
Agile Application-Aware Adaptation for Mobility
Multithreaded Programming
#01 Client/Server Computing
Software Architecture Taxonomy
Presentation transcript:

Agile Application-Aware Adaptation for Mobility Khaled Hadi ICS243F Odyssey

Outline The Need of Adaptation Taxonomy of Adaptation Strategies Goals of Odyssey Model Realization Design and Implementation Application Examples Conclusion

The Need of Adaptation Poverty of resources Limited power Unpredicted network performance Inherently Insecure So, any viable approach to mobile computing must strike a balance between these competing concerns. This balance cannot be a static, mobile clients must be adaptive

Taxonomy of Adaptation Strategies The range of strategies for adaptation is delimited by two extremes:  laissez-faire approach: adaptation is entirely the responsibility of individual applications  Application-transparent adaptation: places entire responsibility for adaptation on the system. Between these two extremes lies a spectrum of possibilities that we collectively refer to as application-aware adaptation

Taxonomy of Adaptation Strategies (Cont’s) Range of Adaptation Strategies

Design Rationale Odyssey is a set of extensions to the NetBSD operating system to support adaptation for a broad range of mobile information access application

Odyssey Odyssey is a mobile system capable of - Dynamic adaptation: Change according to need - Agility: Fast change

Goals of Odyssey Fidelity: The degree to which data presented at client matches the reference copy at the server Concurrency: ability to execute multiple independent applications on a mobile client concurrently Agility: detect and respond to change quickly Minimalism: extended NetBSD

Model Realization Viceroy: - Mange resources - Type independent functionality Warden - type aware code components

Model Realization (cont’s) The collaborative relationship envisioned in application-aware adaptation is thus realized in two parts: - data-centric, between the viceroy and its wardens, it defines the fidelity levels for each data type and factors them into resource management -action-centric, between applications and Odyssey, it provides applications with control over the selection of fidelity levels supported by the wardens

Design and Implementation An implementation of Odyssey must enable an application to: Operate on Odyssey objects Express resource expectations Be notified when expectations are no longer met, and respond by changing fidelity

Odyssey Client Architecture Integrated into NetBSD New system call included Odyssey implemented in User space outside the kernel

Expressing Resource Reservations ApplicationOdyssey Request Request-ID PARAMETERS: Path Window Up-Call Resource-ID

Notifying Resource Changes Application Odyssey Up-Call Tsop PARAMETERS: Request-ID Resource-ID Resource-level Changing Fidelity

Application Examples Video Player Web Browser Speech Recognizer

Video Player (xanim) The server stores a number of tracks of the movie, each with a different fidelity Number of tracks, the size and offset of frames for each track is stored in meta data

Web Browser (Netscape) The cellophane transforms the http request into file operations on odyssey web objects The web Warden is responsible for setting the fidelity level The distillation server provides multiple levels of fidelity

Speech Recognizer Speech Warden is responsible for choosing to do a local, remote or hybrid (1 st pass on client) recognition. Decision is dependent on available bandwidth

Conclusion Partnership between application & system Division of tasks Balance Performance and Fidelity