Kernel-Middleware Interaction to Support Adaptation in Pervasive Computing Environments F. Samimi, P. McKinley, S. Sadjadi, P. Ge Software Engineering.

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

Impala: A Middleware System for Managing Autonomic, Parallel Sensor Systems Ting Liu and Margaret Martonosi Princeton University.
Extensible Networking Platform IWAN 2005 Extensible Network Configuration and Communication Framework Todd Sproull and John Lockwood
Multicasting in Mobile Ad-Hoc Networks (MANET)
Leveraging IP for Sensor Network Deployment Simon Duquennoy, Niklas Wirstrom, Nicolas Tsiftes, Adam Dunkels Swedish Institute of Computer Science Presenter.
Quality of Service in IN-home digital networks Alina Albu 7 November 2003.
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
Software Architecture Design Instructor: Dr. Jerry Gao.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
An Energy Consumption Framework for Distributed Java-Based Systems Chiyoung Seo Software Architecture Research Group University of Southern California.
Cross Layer Design in Wireless Networks Andrea Goldsmith Stanford University Crosslayer Design Panel ICC May 14, 2003.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
PROGRESS project: Internet-enabled monitoring and control of embedded systems (EES.5413)  Introduction Networked devices make their capabilities known.
A Mobile Agent Infrastructure for QoS Negotiation of Adaptive Distributed Applications Roberto Speicys Cardoso & Fabio Kon University of São Paulo – USP.
Grids and Grid Technologies for Wide-Area Distributed Computing Mark Baker, Rajkumar Buyya and Domenico Laforenza.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Department of Computer Science & Engineering College of Engineering Dr. Betty H.C. Cheng, Laura A. Campbell, Sascha Konrad The demand for distributed real-time.
Safe Dynamic Adaptation Department of Computer Science & Engineering Ji Zhang and Zhenxiao Yang Advisor: Prof. Betty H.C. Cheng Software Engineering and.
26th May, Middleware or Simulator for Autonomic Communications Yang Qiu Networking Laboratory Helsinki University of Technology
Low Latency Wireless Video Over Networks Using Path Diversity John Apostolopolous Wai-tian Tan Mitchell Trott Hewlett-Packard Laboratories Allen.
Fault Tolerance in ZigBee Wireless Sensor Networks
TCP Behavior across Multihop Wireless Networks and the Wired Internet Kaixin Xu, Sang Bae, Mario Gerla, Sungwook Lee Computer Science Department University.
23 September 2004 Evaluating Adaptive Middleware Load Balancing Strategies for Middleware Systems Department of Electrical Engineering & Computer Science.
C OLUMBIA U NIVERSITY Lightwave Research Laboratory Embedding Real-Time Substrate Measurements for Cross-Layer Communications Caroline Lai, Franz Fidler,
Philip K. McKinley Software Engineering and Network Systems Laboratory Department of Computer Science and Engineering Michigan State University RAPIDware:
Run-Time Support for Adaptive Communication Services By: SeyedMasoud Sadjadi Advisor: Dr. Philip K. McKinley Computer Science and Engineering Michigan.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Univ. Notre Dame, September 25, 2003 Support for Run-Time Adaptation in RAPIDware Philip K. McKinley Software Engineering and Networking Systems Laboratory.
Tufts Wireless Laboratory School Of Engineering Tufts University “Network QoS Management in Cyber-Physical Systems” Nicole Ng 9/16/20151 by Feng Xia, Longhua.
26 Sep 2003 Transparent Adaptive Resource Management for Distributed Systems Department of Electrical Engineering and Computer Science Vanderbilt University,
Extensibility, Safety and Performance in the SPIN Operating System Ashwini Kulkarni Operating Systems Winter 2006.
Integrating Fine-Grained Application Adaptation with Global Adaptation for Saving Energy Vibhore Vardhan, Daniel G. Sachs, Wanghong Yuan, Albert F. Harris,
Improving QoS Support in Mobile Ad Hoc Networks Agenda Motivations Proposed Framework Packet-level FEC Multipath Routing Simulation Results Conclusions.
Distributed Systems: Concepts and Design Chapter 1 Pages
A SENS Internal Presentation on Friday, October 3, 2003 TRAP Transparent Reflective Aspect Programming SeyedMasoud Sadjadi Supervised by Dr. McKinley
The OSI Model.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Wireless Mesh Network 指導教授:吳和庭教授、柯開維教授 報告:江昀庭 Source reference: Akyildiz, I.F. and Xudong Wang “A survey on wireless mesh networks” IEEE Communications.
Overview of Research Activities Aylin Yener
Computer Emergency Notification System (CENS)
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
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.
International Symposium on Distributed Objects and Applications (DOA 2002) MetaSockets MetaSockets Run-Time Support for Adaptive Communication Services.
Trusted ILLIAC - A Configurable, Application-Aware, High-Performance Platform for Trustworthy Computing Ravishankar Iyer, Wen-mei Hwu, Klara Nahrstedt,
SCALABLE EVOLUTION OF HIGHLY AVAILABLE SYSTEMS BY ABHISHEK ASOKAN 8/6/2004.
OS Services And Networking Support Juan Wang Qi Pan Department of Computer Science Southeastern University August 1999.
Investigating Survivability Strategies for Ultra-Large Scale (ULS) Systems Vanderbilt University Nashville, Tennessee Institute for Software Integrated.
1 BRUSSELS - 14 July 2003 Full Security Support in a heterogeneous mobile GRID testbed for wireless extensions to the.
10/03/05 Johan Muskens ( TU/e Computer Science, System Architecture and Networking.
Distributed System Concepts and Architectures Services
CRG talk on Tuesday, August 19, 2003 SeyedMasoud Sadjadi Software Engineering and Networking Systems Laboratory Department of.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization of Distributed & Mobile Systems Dr. Michael R.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
GYTE - Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Bölümü GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR NEXT GENERATION MIDDLEWARE.
SensorWare: Distributed Services for Sensor Networks Rockwell Science Center and UCLA.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Status & Challenges Interoperability and global integration of communication infrastructure & service platform Fixed-mobile convergence to achieve a future.
Energy-Efficient Protocol for Cooperative Networks.
Improving the Reliability of Commodity Operating Systems Michael M. Swift, Brian N. Bershad, Henry M. Levy Presented by Ya-Yun Lo EECS 582 – W161.
1 Architecture and Behavioral Model for Future Cognitive Heterogeneous Networks Advisor: Wei-Yeh Chen Student: Long-Chong Hung G. Chen, Y. Zhang, M. Song,
CEN-4015, Software Project, Spring 2006 Transparent Shaping of Existing Software to Support Pervasive and Autonomic Computing S. Masoud Sadjadi Autonomic.
Gaia An Infrastructure for Active Spaces Prof. Klara Nahrstedt Prof. David Kriegman Prof. Dennis Mickunas
Euro-Par, HASTE: An Adaptive Middleware for Supporting Time-Critical Event Handling in Distributed Environments ICAC 2008 Conference June 2 nd,
Risk-Aware Mitigation for MANET Routing Attacks Submitted by Sk. Khajavali.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Presentation transcript:

Kernel-Middleware Interaction to Support Adaptation in Pervasive Computing Environments F. Samimi, P. McKinley, S. Sadjadi, P. Ge Software Engineering and Networking Systems Laboratory Department of Computer Science and Engineering Michigan State University (

Agenda Motivations RAPIDware and transparent shaping Kernel-Middleware eXchange (KMX) Wireless video streaming case study Conclusions and Future Work

Pervasive Computing Driving Factors –Convergence of advanced electronic technologies (wireless, handheld, sensors, etc) and the Internet. –Promises anywhere, anytime access to data and computing. Need for Dynamic Adaptation –Heterogeneity of hardware, network, software. –Dynamics of the environmental conditions, especially at the wireless edge of the Internet –Limited resources (such as battery lifetime). Military ApplicationsHandheld/Wearable Computing Sensor Networks

RAPIDware Project Funded by U.S Office of Naval Research –Adaptable Software / Critical Infrastructure Protection Program –Outgrowth of Presidential Decision Directive 63 (May ’98) Software adaptation technologies for: –Detecting and responding to environmental changes –Strengthening self-auditing capabilities of “always-on” systems Focus: High-assurance adaptive middleware –Rigorous software engineering, code generation, etc –military command and control –crisis management systems –management of military/industrial installations Enable systems to operate through failures and attacks

Transparent Shaping Automatically transform existing non-adaptive programs into adaptable programs Business Logic Development Time Transparent Shaping Adaptive Logic Adaptation Assurance Tools and Techniques Compile Time Start/Load Time Run Time Hooks Dynamic Adaptation Adapt-ReadyAdaptable Adapted Corrective Logic

MetaSockets Provide low-level, adaptable communication Example of host-infrastructure middleware

TRAP (Transparent Reflective Aspect Programming) Generator that enables adaptive behavior to be woven into existing programs Java and C++ versions available Example: Existing Java applications can be “upgraded” to use MetaSockets Reflective Class Generator Application Source AspectJ Compiler (ajc) Aspect Generator Class Name List WrapperLevel _ MulticastSocket.java MetaLevel _ MulticastSocket.java Absorbing_ MulticastSocket. aj TRAP/J Java Compiler (javac) Data Flow Adapt-Ready App. Sender.java Sender.class java.net. MulticastSocket

Adaptive CORBA Template (ACT) Enables run-time improvements to CORBA applications in response to unanticipated changes in either their functional requirements or their execution environments. Transparently weaves adaptive code into CORBA object request brokers (ORBs) at run time using a generic CORBA request interceptor. The woven code intercepts and adapts the requests, replies, and exceptions that pass through the ORBs

Need for More than Middleware… RAPIDware focuses on adaptive middleware technologies –Combines computational reflection, aspect-oriented programming, component-based design –Transparent shaping: automatically generating adaptable programs from non-adaptive existing programs –Automated checking for consistency and safe adaptation –Dynamic configuration of software sensors and actuators However, many adaptations require cooperation of middleware and the operating system, especially in pervasive computing contexts –Security (packet interception, usage monitoring) –Quality of service (faster response in OS) –Energy management (global tradeoffs among applications)

Kernel-Middleware eXchange (KMX) KMX investigates interaction between adaptive middleware and commodity operating systems Goal: general model of MW/OS interaction Enable sensors and actuators to “reach” from middleware into the OS kernel (as an optimization!) Combine vertical (cross-layer) and horizontal (cross- platform) adaptation

Example: “Universal” Adaptation Adaptive middleware mechanisms can be used to reconfigure transient proxies KMX can be used to support vertical cooperation Uses: Overlay networks, MANETs, wireless edge, … Application Middleware OS Hardware Communication Infrastructure Normal Data FlowIntercepted Data Flow Transient Proxy Vertical Cooperation Horizontal Cooperation

KMX Architecture Application Middleware Operating System Hardware Cross-Layer Coordination Incoming Control/Data Networking Subsystem Coordination and Decision Making Kernel- and hardware-level status information Transient Proxy Resources Network CPU Memory Energy Interception Outgoing Control/Data Actuator Sensor Kernel-Middleware Communication Incoming/Outgoing Flow Control Line Legend

Case Study Use KMX to improve wireless video streaming Linux implementation –In-kernel packet manipulation: interception of packet streams using iptables Transient proxies created at wireless edge –Dynamically configured using TRAP and MetaSockets –Intercept packet streams and add forward error correction

SENS Mobile Computing Testbed Multiple-cell WLAN –Various Wireless LANs –WLAN analyzers Mobile computers –Dell laptops (Windows, Linux) –iPAQ handhelds (Familiar Linux, Blackdown Java) –Xybernaut MA-V wearables (Windows) Multimeter for measuring energy consumption

Emerging approach: cross-layer adaptation –Vertical cooperation among multiple system layers –Horizontal cooperation among multiple platforms –Universal adaptation Combination of vertical and universal adaptation What do we address? –A generic model for the interaction between the middleware and operating systems –Kernel-Middleware eXchange (KMX) –Developing artifacts for KMX framework and including RAPIDware technology Introduction and Background

Case study –Scenario Enhancing QoS in wireless multimedia streaming –Experimental setup A hybrid wired-wireless testbed –Empirical results Significant improvement: –Packet loss / Video quality –Discussion Place of FEC encoding/decoding Real-time adaptation Prototype and Case Study

Test configuration and parameters Video Stream Path Sender b AP 100Mbps LAN Multicast Router b ad hoc network Receivers VideoHighway drive Number of Frames 1375 (original video contains 2001) Frame Rate25 fps Playing Time 55 seconds EncodingMpeg-4 avi Using DivX Pro Codec 200 kbps encoding rate Max key frame interval: 12 frames Video Size352*288 (CIF) File Size1386 KB (on hard disk) Streaming1 KB packet-size (including a 48-byte application header) 1905 packets totally Video Specifications

Wireless networks produce dynamic and location dependent packet loss because of signal strength, interference, antenna alignment b MAC layer does not provide link-level acknowledgement for multicast frames. FEC can be used to improving reliability by introducing redundancy into the data channel. Block Erasure Code Operation

Results Kernel Routing Middleware FEC (4, 2) Total Packet Loss (middleware layer) 27.01%8.6% Root Cause Analysis [Blurring] / [Jerky Motion] / [Block Distortion] [2.5%] / [45%] / [73.5%] [0%] / [32%] / [59.83%] VQM Score (video conferencing model) (84.97% boost) Video Quality Measurement Overall Packet Loss and Video Quality Packet Loss

Related Work Cross-layer adaptation –Odyssey (CMU): application-aware adaptation –GRACE (UIUC): global adaptation in mobile multimedia applications –DEOS (GATECH): user/kernel communication and end-to- end adaptation –Milly Watt (Duke): energy efficiency  Coordination among layers on a single platform and exchange of events between end nodes Peer-to-Peer systems –Overlay networking Conductor (UCLA): distributed adaptation of data streams –Ad hoc networks Roofnet (MIT): routing in multi-hop wireless ad hoc networks  System-level (or application-layer) oriented

Conclusions and Future Work –KMX Coordinated adaptation at multiple platforms (distributed cooperation) Adaptive middleware as the key enabling technology Universal adaptation in a general framework Interaction between the middleware and operating system layers Universal adaptation KMX project KMX applications –QoS, security,and energy –Overlay networks –MANETs –Collection of artifacts for a building a framework

Conclusions KMX –Addresses cross-layer adaptation with respect to coordinated adaptation across multiple platforms (horizontal cooperation) –Adaptive middleware as the key enabling technology, extended into operating system –Universal adaptation needed to support distributed applications Cooperation among: –Adaptive middleware –Extensible operating system –Adaptable overlay networks Case study reveals potential benefits of this cooperation for wireless video streaming

Related Recent Activities MetaSockets (ISWC’02, FTDCS’03) Transparent weaving weaving of adaptive behavior into CORBA applications [ICDCS’04, ICAC’04] TRAP for Java programs [DOA’04] Efficient overlay networks [ICNP’03,ICDCS’04] Decision-making software [ICDL’04] –Hierarchical discriminant regression (HDR) –Enable systems to “learn” how to adapt effectively Safe adaptation [WADS’04] Adaptive energy management [IWQoS’04]

Potential Impact Robust group communication among users with disparate devices and networks Self-healing systems to support mission-critical communication and computation under highly dynamic environmental conditions. Self-auditing systems that can report state inconsistencies, incorrect or improper use of components. Dynamic resource allocation in devices limited by battery-lifetime, bandwidth, or compute power Systematic evolution of legacy software to accommodate new technologies and adapt to new environments

RAPIDware Subprojects Programming language abstractions for adaptation Support for adaptation in legacy applications Dynamic software composition –Safeness –Efficiency –Fault tolerance –Security Adaptive group key management Adaptive overlay networks

Acknowledgements This work was supported in part by –U.S. Navy, Office of Naval Research Grant No. N –National Science Foundation grants CCR EIA EIA ITR

Further Information Related papers of the Software Engineering and Network Systems (SENS) Laboratory are available at: RAPIDware project: –Includes source code downloads contact: