Design and run-time bandwidth contracts for pervasive computing middleware Peter Rigole K.U.Leuven – Belgium

Slides:



Advertisements
Similar presentations
All rights reserved © 2006, Alcatel Grid Standardization & ETSI (May 2006) B. Berde, Alcatel R & I.
Advertisements

MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Remote Procedure Call (RPC)
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
A Java Architecture for the Internet of Things Noel Poore, Architect Pete St. Pierre, Product Manager Java Platform Group, Internet of Things September.
Distributed components
Component-Based Adaptive Tasks Guided by Resource Contracts Peter Rigole K.U.Leuven Belgium.
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Middleware Technologies compiled by: Thomas M. Cosley.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Enterprise Resource Planning
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Modeling and simulation of systems Simulation optimization and example of its usage in flexible production system control.
An affinity-driven clustering approach for service discovery and composition for pervasive computing J. Gaber and M.Bakhouya Laboratoire SeT Université.
Introduction to MDA (Model Driven Architecture) CYT.
MILCOM 2001 October page 1 Defense Enabling Using Advanced Middleware: An Example Franklin Webber, Partha Pal, Richard Schantz, Michael Atighetchi,
QoS Support in High-Speed, Wormhole Routing Networks Mario Gerla, B. Kannan, Bruce Kwan, Prasasth Palanti,Simon Walton.
WDMS 2002 June page 1 Middleware Policies for Intrusion Tolerance QuO Franklin Webber, Partha Pal, Chris Jones, Michael Atighetchi, and Paul Rubel.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Introduction A GENERAL MODEL OF SYSTEM OPTIMIZATION.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
© 2004 Mercury Computer Systems, Inc. FPGAs & Software Components Graham Bardouleau & Jim Kulp Mercury Computer Systems, Inc. High Performance Embedded.
AUTHORS: MIKE P. PAPAZOGLOU WILLEM-JAN VAN DEN HEUVEL PRESENTED BY: MARGARETA VAMOS Service oriented architectures: approaches, technologies and research.
SEMINOR. INTRODUCTION 1. Middleware is connectivity software that provides a mechanism for processes to interact with other processes running on multiple.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Lecture 4: Sun: 23/4/1435 Distributed Operating Systems Lecturer/ Kawther Abas CS- 492 : Distributed system & Parallel Processing.
SCALABLE EVOLUTION OF HIGHLY AVAILABLE SYSTEMS BY ABHISHEK ASOKAN 8/6/2004.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
1 ACTIVE FAULT TOLERANT SYSTEM for OPEN DISTRIBUTED COMPUTING (Autonomic and Trusted Computing 2006) Giray Kömürcü.
Grid programming with components: an advanced COMPonent platform for an effective invisible grid © 2006 GridCOMP Grids Programming with components. An.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Managing Cross-Cutting QoS Issues in MULTE Middleware T. Plagemann, F. Eliassen, B. Hafskjold, T. Kristensen, R.H. Macdonald and H.O. Rafaelsen University.
Presented By:- Sudipta Dhara Roll Table of Content Table of Content 1.Introduction 2.How it evolved 3.Need of Middleware 4.Middleware Basic 5.Categories.
Software Requirements: A More Rigorous Look 1. Features and Use Cases at a High Level of Abstraction  Helps to better understand the main characteristics.
Design and Implementation of a Rationale-Based Analysis Tool (RAT) Diploma thesis from Timo Wolf Design and Realization of a Tool for Linking Source Code.
A QoS Policy Modeling Language for Publish/Subscribe Middleware Platforms A QoS Policy Modeling Language for Publish/Subscribe Middleware Platforms Joe.
1 010/02 Aspect-Oriented Interceptors Pattern 1/4/2016 ACP4IS 2003John Zinky BBN Technologies Aspect-Oriented Interceptors Pattern Dynamic Cross-Cutting.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
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.
1 Chapter 38 RPC and Middleware. 2 Middleware  Tools to help programmers  Makes client-server programming  Easier  Faster  Makes resulting software.
Software Architecture in the Future 1960s. Assembly languages, subroutines, semicolon as connectors 1970s. Structuring of programs to achieve qualities.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
By Nitin Bahadur Gokul Nadathur Department of Computer Sciences University of Wisconsin-Madison Spring 2000.
Improving System Availability in Distributed Environments Sam Malek with Marija Mikic-Rakic Nels.
TTCN-3 Testing and Test Control Notation Version 3.
High degree of user interaction Interactive Systems: Model View Controller Presentation-abstraction-control.
1 Software Requirements Descriptions and specifications of a system.
Copyright © Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Deployment and Mobility Software Architecture Lecture 12.
Middleware Policies for Intrusion Tolerance
MCA – 405 Elective –I (A) Java Programming & Technology
CORBA Alegria Baquero.
Distribution and components
NET323 D: Network Protocols
Dipanjan Chakraborty Anupam Joshi CSEE University of Maryland Baltimore County Anamika: Distributed Service Discovery and Composition Architecture for.
Inventory of Distributed Computing Concepts and Web services
Service-centric Software Engineering
CORBA Alegria Baquero.
NET323 D: Network Protocols
Analysis models and design models
Pervasive Computing Happening?
Utility-Function based Resource Allocation for Adaptable Applications in Dynamic, Distributed Real-Time Systems Presenter: David Fleeman {
Software Architecture
Quality-aware Middleware
Presentation transcript:

Design and run-time bandwidth contracts for pervasive computing middleware Peter Rigole K.U.Leuven – Belgium

Challenge Pervasive computing:  Flexible computing requirements Restricted host platform:  Scarce resources MPAC – Middleware 2003 WorkshopPeter Rigole

Vision Combining: 1.Resource aware applications monitoring, prediction, reliability 2.Fine-grained applications run-time scaling: removing, relocating, updating comp. In a design-time methodology –including awareness of limited resources –maintaining the flexibility to enable perv. comp. MPAC – Middleware 2003 WorkshopPeter Rigole

State of the art: S EESCOA Component oriented software architecture For embedded devices A S EESCOA application consists of: –components –ports –port specifications –connectors –port contracts –component contracts Blueprints – instance model – C COM tool - contracts MPAC – Middleware 2003 WorkshopPeter Rigole

S EESCOA component specification Basis of run-time reliability and flexibility Four levels: –Syntactic level –Semantic level –Synchronization level –QoS level MPAC – Middleware 2003 WorkshopPeter Rigole

S EESCOA run-time Executing environment –Loads, instantiates, links components –Manages connections (local or remote) –Delivers and executes messages sent between ports MPAC – Middleware 2003 WorkshopPeter Rigole

State of the art: QuO Quality Objects: –Applications adapting to QoS offered by resources –Application designer decides HOW the application should adapt to changes in resource availability (QDL) –Providing: Several layers of tools (code generators based on QDL, …) Adaptive distributed applications C ORBA development process (code generators, support libs) MPAC – Middleware 2003 WorkshopPeter Rigole

QuO Drawbacks: –Object level (no real components) –Client – Object relationship Contracts, RMI, stubs, skeletons, … –Design-time distribution of objects –Run-time reconfiguration is difficult to achieve –QDL: description of all feasible QoS states = burden  Burden for program designer to describe adaptation  Could we let the middleware make these decisions? MPAC – Middleware 2003 WorkshopPeter Rigole

Contracts for S EESCOA components Contracts on all components and ports –no decisions for distribution at design time Requirements: –Easy for application designers In terms of parameters that are relevant to app. designers –Multiple contracts possible When contracts indirectly depend on certain resources –Fallback mechanism For contracts that can not be established (relocation unsuccessful) MPAC – Middleware 2003 WorkshopPeter Rigole

Contracts for S EESCOA components Hier nog meer over ? MPAC – Middleware 2003 WorkshopPeter Rigole

Example: bandwidth contracts Technology independent –various implementations of physical layers Detail –exact required bandwidth is never known –no complex dependencies with application details –tradeoff between expressiveness and manageability Solution: statistical expressions on meaningful parameters –MS: Message Size –ITBM: Interval Time Between Messages MPAC – Middleware 2003 WorkshopPeter Rigole

Representation MPAC – Middleware 2003 WorkshopPeter Rigole Statistical analysis: –Port output: avg ITBM = a avg ITBM acc = b var ITBM = c var ITBM acc = d max ITBM = e min ITBM = f –Port input: max ITMB < m n < min ITMB o < avg ITBM < p q < var ITMB < r avg MS = g avg MS acc = h var MS = i var MS acc = j max MS = k min MS = l max MS < s t < min MS u < avg MS < v w < var MS < x

Representation MPAC – Middleware 2003 WorkshopPeter Rigole

Connection setup and negotiation Exchanging contracts outgoing flow behaviour must match incoming requirements Agreement Connection contract Now run-time system judges feasibility –based on knowledge about available bandwidth When declined: further negotiation –Solutions: other contracts, relocation of components No solution: notify application manager –application/user reacts MPAC – Middleware 2003 WorkshopPeter Rigole

Example: projector case SlideInterpreter connects with SlideVisualizer but, Bluetooth connection not enough bandwidth systems declines connection Solution: relocating SlideInterpreter component MPAC – Middleware 2003 WorkshopPeter Rigole

Example: projector case MPAC – Middleware 2003 WorkshopPeter Rigole

Concluding remarks Appropriate architectures for ad hoc systems: –let middleware decide how to distribute and adapt applications –judging by resource consumption and availability –Cyber foraging: searching for distributed resources Difficulty: realistic adaptation strategies –without sacrificing application availability Fine-grained application structure is required –for flexibility –for supporting dynamic resource management techniques MPAC – Middleware 2003 WorkshopPeter Rigole