Dynamic Reconfiguration Support for Pervasive Computing

Slides:



Advertisements
Similar presentations
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Advertisements

Service-Based Paradigm Anchoring the Indefinable Field Of Pervasive Computing Presenter: Vijay Dheap.
End-to-End Efficiency (E 3 ) Integrated Project of the EC 7 th Framework Programme E 3 WP5 Objectives E 3 WP5 Structure and Research Challenges
Martin Wagner and Gudrun Klinker Augmented Reality Group Institut für Informatik Technische Universität München December 19, 2003.
Gaia: A Middleware Platform for Active Spaces Summarized by Dongjoo Lee, IDS Lab., Seoul National University.
Ch. 7. Architecture Standardization for WoT
Chapter 19: Network Management Business Data Communications, 4e.
Technical Architectures
02/12/00 E-Business Architecture
Think. Learn. Succeed. Aura: An Architectural Framework for User Mobility in Ubiquitous Computing Environments Presented by: Ashirvad Naik April 20, 2010.
Gaia Context and Location-Aware Encryption for Pervasive Computing Environments Jalal Al-MuhtadiRaquel Hill Roy Campbell Dennis Mickunas University of.
Quality of Service in IN-home digital networks Alina Albu 7 November 2003.
1 ITC242 – Introduction to Data Communications Week 12 Topic 18 Chapter 19 Network Management.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Chapter 6 SECURE WIRELESS PERSONAL NETWORKS: HOME EXTENDED TO ANYWHERE.
Grids and Grid Technologies for Wide-Area Distributed Computing Mark Baker, Rajkumar Buyya and Domenico Laforenza.
Emerging Research Dimensions in IT Security Dr. Salar H. Naqvi Senior Member IEEE Research Fellow, CoreGRID Network of Excellence European.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Lecture Nine Database Planning, Design, and Administration
Course Instructor: Aisha Azeem
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Client-Server Computing in Mobile Environments
Self-Organizing Adaptive Networks Hari Balakrishnan MIT Laboratory for Computer Science
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
An Intelligent Broker Architecture for Context-Aware Systems A PhD. Dissertation Proposal in Computer Science at the University of Maryland Baltimore County.
Ch 1. Mobile Adaptive Computing Myungchul Kim
Chapter 10 Architectural Design
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Software Architecture Framework for Ubiquitous Computing Divya ChanneGowda Athrey Joshi.
Distributed Systems: Concepts and Design Chapter 1 Pages
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Linked-data and the Internet of Things Payam Barnaghi Centre for Communication Systems Research University of Surrey March 2012.
PERVASIVE COMPUTING MIDDLEWARE BY SCHIELE, HANDTE, AND BECKER A Presentation by Nancy Shah.
The roots of innovation Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on:
Page 1 WWRF Briefing WG2-br2 · Kellerer/Arbanowski · · 03/2005 · WWRF13, Korea Stefan Arbanowski, Olaf Droegehorn, Wolfgang.
Cerberus: A Context-Aware Security Scheme for Smart Spaces presented by L.X.Hung u-Security Research Group The First IEEE International Conference.
Introduction Infrastructure for pervasive computing has many challenges: 1)pervasive computing is a large aspect which includes hardware side (mobile phones,portable.
A Context Model based on Ontological Languages: a Proposal for Information Visualization School of Informatics Castilla-La Mancha University Ramón Hervás.
Master Course /11/ Some additional words about pervasive/ubiquitous computing Lionel Brunie National Institute of Applied Science (INSA)
Computer Architecture and Embedded Systems Paul Havinga University of Twente.
An Architecture to Support Context-Aware Applications
A Study of Context-Awareness: Gaia & SOCAM Presented by Dongjoo Lee IDS Lab., Seoul National University Gaia: A Middleware Infrastructure to.
Jini Architecture Introduction System Overview An Example.
Introduction to Grids By: Fetahi Z. Wuhib [CSD2004-Team19]
Jini Architectural Overview Li Ping
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
SelfCon Foil no 1 Variability in Self-Adaptive Systems.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
1 Pervasive Computing: Vision and Challenges Myungchul Kim Tel:
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
1 Architecture and Behavioral Model for Future Cognitive Heterogeneous Networks Advisor: Wei-Yeh Chen Student: Long-Chong Hung G. Chen, Y. Zhang, M. Song,
Semantic Web in Context Broker Architecture Presented by Harry Chen, Tim Finin, Anupan Joshi At PerCom ‘04 Summarized by Sungchan Park
Gaia An Infrastructure for Active Spaces Prof. Klara Nahrstedt Prof. David Kriegman Prof. Dennis Mickunas
WOSS 04 1 Task-based Self-adaptation David Garlan Bradley Schmerl Joao Sousa Vahe Poladian Carnegie Mellon University WOSS’04.
Gaia Ubiquitous Computing Directions Roy Campbell University of Illinois at Urbana-Champaign.
System Software for Ubiquitous Computing Pervasive Computing 2002 Tim Kindberg, Armando Fox 2003 년 11 월 26 일 박준호.
Context-Aware Middleware for Resource Management in the Wireless Internet US Lab 신현정.
Chapter 1 Characterization of Distributed Systems
Chapter 19: Network Management
CHAPTER 2 CREATING AN ARCHITECTURAL DESIGN.
Storage Virtualization
Mobile Computing.
Project Oxygen… Shashwat Shriparv
3rd Studierstube Workshop TU Wien
Design Yaodong Bi.
System Software for Ubiquitous Computing
Presentation transcript:

Dynamic Reconfiguration Support for Pervasive Computing Dongman Lee Collaborative Distributed Systems & Networks Lab. Information and Communications Univ.

Contents Overview Key Requirements Case Study Technical Challenges

Paradigm Shift Technology is moving from personal computers to handheld, intelligent, and everyday devices with embedded technology and connectivity From Pervasive Computing: Vision and Challenges by Satyanarayanan, M.

Ubiquitous Computing Vision The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it – Mark Weiser Computation is freely available everywhere – IBM People, places, and things are first class citizens of the connected world, where e-services meet the physical world, where humans are mobile, devices and services are federated and context-aware – HP Brings computing away from the desktop and into the world, where people live and work – Microsoft Provides each user with an invisible halo of computing and information services that persists regardless of location – CMU By extending the reach of traditional computing systems to encompass the devices and physical space surrounding the machines, entities, both physical and virtual, may be allowed to seamlessly interact – UIUC

Key Characteristics of Ubiquitous Computing Human-centered Distraction-free Minimal administration Context-aware Invisibility Ideal – complete disappearance of pervasive computing technology from a user’s consciousness Practical – reasonable approximation to this ideal – minimal user distraction Not only hardware but also software Hardware aspect (physically invisible) Tangible interfaces, smart appliances, etc. Software aspect (logically invisible) Not intrude to users, self-configure, self-adaptive system

Key Features of Ubicomp Middleware To Support “Pervasiveness”, the system should provide the followings: Sense environment changes Provide mechanisms to gather the sensed information Sensed should be converted to context information Decision should be made by itself to provide efficient services to users without intrusion to the user Service discovery mechanism to discover currently available service based on current context New services or devices should be dynamically plugged into system without interventions of users The changed information should be distributed to other entities in the environment Environment Sensing Context Management Service Discovery Dynamic Reconfiguration Support

Why Dynamic Reconfiguration? Motivation Heterogeneity Ubiquitous computing environment contain a collection of heterogeneous devices (resources) Different environments have different number of resources Dynamics Not only devices but also users dynamically enter and leave an environment Multi-users Group of users share an environment Dynamic Reconfiguration Support Polymorphic and Transparent Application Transformation with minimal administration Applications are dynamically and automatically adapted to current context Efficient use of resources – system aspect User context (preference) – user aspect

Key Considerations Adaptability Flexibility Transparency Dynamic and heterogeneous nature of a ubiquitous computing environment Applications are dynamically and automatically adapted to current context with minimal intrusions to users Flexibility Different environments have different devices and services We may not assume that exactly same service (or devices) are available in environments Transparency Allow applications to spontaneously reconfigure with new services or established services regardless of context changes

Aura - Overview Aura Objectives Challenges Two Broad Concepts in Aura Intended for pervasive computing environments involving wireless communication, wearable or handheld computers, and smart spaces. Aims to provide User distraction-free computing environment Moving workspace Challenges Human attention is an especially scarce resource in pervasive environment Minimize distraction or intrusion of system Variable bandwidth connectivity, short battery life, and client resource constraints in mobile communication Two Broad Concepts in Aura Proactivity A system layer’s ability to anticipate requests from a higher layer Self-tuning Layers adapt by observing the demands made on them and adjusting their performance and resource usage characteristics

Intelligent Networking Aura - Architecture Aura Components Odyssey Resource monitoring and application-aware adaptation Coda Support for nomadic, disconnectable, and bandwidth-adaptive file access Spectra Adaptive remote execution mechanism that uses context to decide how to best execute the remote call Prism Responsible for capturing and managing user intent Layered above application and provides high-level support for proactivity and self-tuning Intelligent Networking Linux Kernel Coda Nomadic file access Odyssey Resource Monitoring, Adaptation Spectra Remote Execution Other Aura runtime support Application Prism Task Support, user intent, high-level proactivity Aura System Architecture

Aura - Adaptation Coarse-grained Adaptation (Application Re-composition or reconfiguration) Ongoing work (does not provide yet) Focus on Inter-environment Task Migration Describe Current Task Leverage Aura File Space (Extended Coda) to store task description Restore current task using task description Bird eye view of Aura Adaptation Description of Video Playing Service

Gaia - Overview Gaia Objectives Challenges People-Centric Pervasive Environment Mobile users in pervasive computing environment Many resources, devices per user Resource management and infrastructure for pervasive computing Context sensitive adaptation of applications, services, and resources Challenges Software infrastructure with which to develop applications for ubiquitous computing habitats or living spaces Unified infrastructure for Active Space Active Space A physical space coordinated by a responsive context-based software infrastructure that enhances mobile users’ ability to interact with and configure their physical and digital environments seamlessly

Gaia - Architecture Gaia System Software Application Framework Gaia Kernel Component Management Core Dynamically loads, unloads, transfers, creates, and destroys all Gaia Components Event Manager Supports creation of named event channels and distribution of load Context Service Provides a taxonomy and uniform representation of context types Context File System Make personal data automatically available to applications, conditioned on user presence Component Repository Provides persistent storage of components Presence Service Detects the presence of digital and physical entities Space Repository Centralized repository containing information about active entities Gaia Architecture Application Framework Model – Presentation – Controller – Coordinator Application Framework Model Implements the application logic Presentation Exports the application data Controller Maps input sensor events into method requests for the model Coordinator Manages the first four components

An Example of Group-aware Application (MP3 Player) Policy Gaia - Adaptation Manual Adaptation Provide GUI to select appropriate presentations and controllers Automatic Adaptation Use policies to drive application adaptation automatically Generate ACD from AGD with predefined policies GUI for Manual Adaptation An Example of Group-aware Application (MP3 Player) Policy ACD generator

Active Surroundings - Overview Explore ways in which surroundings are enabled to socially interact with themselves as well as human beings by embodiment of cognition, learning, emotion, behavior, etc. Active, not just reactive Surroundings are tangible, sociable, and cooperative Explore the context of groups as well as individuals Develop a framework by which surroundings can assist and help human beings, exploiting location- or context-aware understanding dynamically and adaptively Dynamic reconfiguration support Develop an application model suitable to a ubiquitous environment where there exist heterogeneous and dynamic resources, devices, services, security policies, etc. Provide application developers with an infrastructure with which they can develop applications transparently without concerning the context changes or target environments Allow flexible application adaptation to such a heterogeneous and dynamic environment

Active Surroundings - Architecture

Active Surroundings – Key Points Application Model Extended Presentation/semantic split application model An application is composed of a semantic object and one or more presentation objects Application can polymorphically change its presentations, exploiting currently available resources or devices in an environment Transparent Adaptability Support Virtually connected communication bus with a pub/sub model Supports two distinct adaptation semantics: anchored vs. localized Application developers can be relieved from being burdened on dealing with context changes Flexibility Support Application adaptation based on sub-typing concept Application can be flexibly reconfigured to current contexts

Active Surroundings – Interaction Model

Active Surroundings – Application Model Application Model – Extended Presentation/Semantic Split Model Presentation object A software abstraction created in an environment with devices Partially replicate state information Semantic object Implements logic of the application and manage the application’s state PS link Contains constraints and define how to access information in presentation and semantic objects Presentation Architecture Automatic mappings of presentation objects when context changes Advantages Association of a single semantic object with multiple presentation objects Multi-user support Effective use of resources (devices) Application access independent of local presentations

Active Surroundings – Adaptation Support Transparent Adaptability Support Assumption Publish/subscribe communication model Provides service objects with the interfaces for interacting with other service objects For dynamic binding, service objects are dynamically bound at runtime using event type matching Service link Acts as a proxy for local communication broker Represents how service objects (and associated link objects) are associated with each other Rebinds each of link objects when an application is introduced to a new context  Only link object is required to rebind itself to a new communication broker due to context changes while application object remains intact

Active Surroundings – Flexible Binding Flexibility Support Leverages notion of sub-typing concept The required service and operation is transparently substituted by 3 cases; substitution by its sub-type, substitution by its super-type, or coercion by its super-type functionality Subtyping Policy Substitution with subtype Searching level Subtype searching process will be continued till one of its subtype find (default) Replace with supertype In case of additional functionality Depend on the application policy (application developer’s role) If it allowed, follow ontology description (described by service provider)

Technical Challenges in System Support Technical [Kindberg] Service discovery Adaptation Integration with physical world Programming framework Robustness Security

Discovery and interaction Service discovery address allocation and name resolution Challenges avoiding overspecification Components must obey the same vocabulary and syntax of service specifications Lost opportunities for association A camera that can send an image for printing should be able to send the image to a digital frame. But, if the camera doesn’t have a specification for the digital frame, the opportunity passes More abstract and much less detailed service specifications can lead to ambiguity System designers must decide the human’s role to resolve tension between interoperability and ambiguity

Discovery and interaction (cont’d) After associating to a service, a component employs a programming interface to use it Challenges How can the software on the device use the service without a priori knowledge of its methods ? Data-oriented interaction is a promising model It requires ubiquitous data standardization for it to work across environment boundaries

Adaptation Challenges Content adaptation Adaptation must often take place without human intervention, to achieve calm computing Embedded devices tend to be small, and limits to miniaturization mean constrained resources Available resources tend to vary dynamically Content adaptation The content adaptation techniques in mobile computing solve only a part of the overall problem Content adaptation among n heterogeneous device types We must address such issues as discovery and robustness We must find a way to apply the adaptation using mechanisms invisible to the user The human interface adaptation It is to move the human interface to a physically different device chosen on the fly Applying transformation to the UI can be a powerful approach to achieving spontaneous interaction

Integration with the physical world Challenges We need low-level application programming interfaces that let software deal with physical sensors and actuators We need a high-level software framework that lets applications sense and interact with their environment, including physical sensors and actuators

Programming frameworks A framework for programming ubiquitous computing environments might address the ubiquitous computing challenges in applications, the operating system or middleware, and the development language Challenges to leverage existing applications because of large investment in the applications, their data, and knowledge of how to use them to leverage OSs without modification OSs are fragile, most users are reluctant or insufficiently sophisticated to apply OS patches, and OS functionality is generally regarded as beyond application writers’ control

Robustness and routine failures Challenges A radical increase of failure frequency due to wireless networking Solutions Expiration-based schemes and soft state Each available device or service send a periodic advertisement announcing its presence or availability to the directory service When failure is common case, identify what critical static or dynamic state you must persistently store and consider reconstructable soft state for the rest Separating failure-free and failure-prone operations Indicate which operations are more likely to fail which enables developers to be able to provide more effective error handling Group communication for “free” indirection to provide a level of indirection that helps rediscover lost resources

Security Challenges Trust Security for resource-poor devices Because of spontaneous interoperation Security for resource-poor devices Extremely resource-poor devices do not have sufficient computing resources for asymmetric encryption Protocols must minimize communication overheads to preserve battery life Access control Knowing an identified user’s whereabouts raises privacy issues Location Customizing services to a location can result in a loss of privacy for identified individuals New patterns of resource-sharing Physical integration works against the firewall model Spontaneous interaction makes extranet technologies unsuitable, because developers intend them for long-term relationships with outside users

Q &A What would you like to see in future?

References Manuel Roman, Christopher K. Hess, Renato Cerqueira, Anand Ranganathan, Roy H. Campbell, and Klara Nahrstedt, Gaia: A Middleware Infrastructure to Enable Active Spaces, IEEE Pervasive Computing, pages 74-83, Oct-Dec 2002. David Garlan, Dan Siewiorek, Asim Smailagic, and Peter Steenkiste, Project Aura: Towards Distraction-Free Pervasive Computing, IEEE Pervasive Computing, special issue on Integrated Pervasive Computing Environments, Volume 1, Number 2, April-June 2002, pages 22-31. Ralph D. Hill, The Abstraction-Link-View Paradigm: Using Constraints to Connect User Interfaces to Applications, Proceedings of CHI’92, pages 335-342. Glenn E. Krasner and Stephen T. Pope, A Description of the Model-View-Controller User Interface Paradigm in the Smalltalk-80 System, Journal of Object Oriented Programming, vol. 1(3), pages 26-49, 1988. Barbara H. Liskov and Jeannette M. Wing, A Behavioral Notion of Subtyping, ACM Transactions on Programming Languages and Systems 1994.