190 likes | 207 Views
Explore the essential need for adaptation in mobile computing due to resource constraints and network unpredictability. Learn about the taxonomy of adaptation strategies and the goals of the Odyssey system, which enables dynamic adaptation, agility, and minimalism. Discover the model realization of Odyssey through Viceroy and Warden components and its application examples like video player, web browser, and speech recognizer. The conclusion highlights the importance of partnership between application and system for balancing performance and fidelity.
E N D
Odyssey Agile Application-Aware Adaptation for Mobility Khaled Hadi ICS243F
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 Application Odyssey Request PARAMETERS: Path Window Up-Call Resource-ID Request-ID
Notifying Resource Changes Odyssey Application Up-Call PARAMETERS: Request-ID Resource-ID Resource-level Tsop 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 (1st pass on client) recognition. • Decision is dependent on available bandwidth
Conclusion • Partnership between application & system • Division of tasks • Balance Performance and Fidelity