Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.

Similar presentations


Presentation on theme: "1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area."— Presentation transcript:

1 1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area Distributed Applications Dr. Richard E. Schantz BBN Technologies (aka the BBN part of GTE) Cambridge, Mass. schantz@bbn.com

2 2 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Overview of Talk Problem Description & Role of Middleware QuO as Essential Middleware Current QuO Activities Summary

3 3 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Current and Future Distributed Systems have Critical Performance and Dependability Requirements

4 4 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Middleware Has Emerged to Help Solve Heterogeneity and Distribution Problems Middleware has made programming distributed applications easier Standard programming interfaces hide platform and system dependencies Standard protocols, e.g., message formats, allow applications on different systems to interoperate Provides higher level, application oriented programming building blocks However, current middleware has limitations in building wide-area, complex, distributed systems Little or no control over non-functional system behavior, such as performance, dependability, and fault tolerance No support for building systems that can adapt to changing environments Little support for reusing code in new environments

5 5 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz The Problem: Wide-Area Distributed Applications Are (Still) Hard to Build and Maintain WANs are dynamic with uncertain and sometime intermittent behavior Hosts span a wide range of platforms and resources Changing requirements and configurations Mission critical properties addressed in isolation Complex interactions in a mobile environment Host1 Client1 Host2 Client2 Host4 Client3 Object Resource Constrained Wide Area Network LAN Host3 Client4

6 6 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects (QuO) as an Organizing Architecture for Integrated System Properties The goal: Predictable and integrated behavior under uncertain circumstances The approach: Adding Quality of Service attributes to Distributed Object Computing QuO Architecture initiates the integration of various dimensions of quality for distributed objects Underway: Managed communication performance, dependability, information assurance »Other important aspects: real-time constraints, security,... Integration Architecture and Framework (in progress): QuO

7 7 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Managing System Properties Involves Cooperation Between Many Parties GUIGUI ? A Mode B Mode C Mode ADVISE ENFORCE ADVISE ENFORCE ? X Behavior Y Behavior Z Behavior DBDB User Understands Impact of Behavior Changes Behavior Application Supports alternative user behavior Translates System limitations into user terms Infrastructure Advises about resource status Enforces application’s contracts with Comms Resources Service Optimize Object Implementation based on available system resources Limited Comms QuO Framework supports multiple roles, such as user, application developer, object developer, mechanism developer, and Qosketeer

8 8 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz QuO Middleware Organizes Elements Required for Adaptable Behavior in a Reusable Manner Organizes System Properties Observe Ensure consistency between roles Translate Actively negotiate Execute Behavior Change policy Control resources Emit Events Reevaluate observations Change reservations Recover From Errors Mask undesirable behavior Dispatch X Behavior Y Behavior Z Behavior Measure Enforce Service Comms Resources System Properties User Environment Service Client

9 9 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz QuO Clients Connect to CORBA Objects using Functional and Quality Interfaces A QuO Connection logically moves the object into the client’s address space The QuO Connection integrates the individual QoS agreements for the Network, Client, and Server, by using a contract Remote Object Network Server ORB Client ORB QuO Delegate Client Functional Quality QuO Delegate Interface Description Language Defines the Functional Interface Quality Description Language Defines the System Interface IDL QDL QuO helps spread the object’s functionality to the most desirable location; extending the strict Client-Server implementation of the object The Client sees NO change in the functional interface, I.e. the language bindings are the same

10 10 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Key Abstractions: Operating Regions & Measurement Objects The quality engineer designs sets of regions, each describing a state in which the contract can exist with regard to QoS Negotiated regions represent agreements concerning the levels of service a client expects to receive and a server expects to provide Reality regions represent actual levels of service that are observed during system and contract execution System conditions represent object expectations and observed resource behavior Changes in object expectations trigger transitions between negotiated regions Changes in observed resource behavior trigger transitions between reality regions

11 11 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Contracts Summarize System Conditions into Expected and Reality Regions and Define Transitions Between Them Normal: Expected capacity >= 10 Measured capacity >= 10 As_expected: Insufficient_resources: Measured capacity < 10 Degraded: Expected capacity < 10 Expected capacity >= 2 As_expected: Extra_resources: Measured capacity < 10 Measured capacity >= 2 Measured capacity < 2 Insufficient_resources: Measured capacity >= 10 Unusable: Expected capacity < 2 As_expected: Extra_resources: Measured capacity < 2 Measured capacity >= 2 Contracts will break in hostile and dynamic WANs Commitment epochs represent the stability of system properties at different time scales Regions summarize system conditions by using a predicate to bound their range Transitions occur when one region becomes invalid and another becomes valid = Expected Region =Reality Region

12 12 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Delegates Change Their Behavior Based on Their Contract’s Current Regions Dispatch Contract Pass ThroughBlockShape PreMethod Measurements Method Call Lower Method Call Current Regions Result Lower Result SysCond Current Regions PostMethod Measurements Delegate Alternative Behaviors

13 13 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz The Status of an Object’s Complex Execution Environment is Summarized in Contracts Logical Method Call SysCon ClientNetworkServer SysCon Client Object Delegate ORB Proxy Specialized ORB Application Developer Qoskateer Mechanism Developer Resource Control Wrapper Network Contract SysCon Delegate ORB Proxy SysCon

14 14 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz QuO’s QoS Description Language (QDL) Contract Description Language (CDL) - describes expectations of clients and servers and regions and transitions for adapting to changing levels of service Structure Description Language (SDL) - describes objects’ internal structures and resource requirements Resource Description Language (RDL) - describes available system resources and their status Implementation CDLSDL RDL QDL IDL QDL + IDL Compiler Survivable System QuO Runtime ORB

15 15 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz

16 16 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Provides mechanisms for: –distributed applications to provide expectations to the system regarding the quality of service they desire –the system to inform applications of the quality of service they obtain –adaptation under changing fault, workload, and environmental conditions Gives applications simplified awareness of system conditions, without total responsibility for managing quality Permits system to effectively manage applications’ desires in changing system condition. Makes use of multiple simple languages (for contract specification now, for configuration issues later) Quality Objects in QuO


Download ppt "1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area."

Similar presentations


Ads by Google