bbn technologies craig rodrigues gary duzan qos enabled middleware: adding qos management...

21
BBN Technologies Craig Rodrigues Gary Duzan QoS Enabled Middleware: Adding QoS Management Capabilities to the CORBA Component Model Real-time CCM Meeting March 1, 2003

Upload: ernest-gordon

Post on 28-Dec-2015

227 views

Category:

Documents


0 download

TRANSCRIPT

BBN Technologies

Craig Rodrigues

Gary Duzan

QoS Enabled Middleware: Adding QoS Management Capabilities to the CORBA

Component Model

Real-time CCM Meeting

March 1, 2003

Presentation Outline

• Overview of what CCM offers to DRE application developer

• Description of what CCM lacks in terms of QoS Management features

• Description of QoS Management strategies (in-band, out-of-band)

• Description of cross-cutting nature of QoS Management– QoS management across multiple components

– QoS management between components and containers

• Further references and standards activity

CCM Benefits for DRE Systems

• DRE systems consist of many Resource Consuming Components (RCC)

• An RCC is a processing entity which cooperates with other entities in the execution of a certain activity, and consumes some type of system resource (ie. CPU, network, etc.)

• CCM allows us to:– Specify the properties of an RCC

– Specify the services offered by the RCC (facets) and services required by the RCC (receptacles)

– Specify how an RCC can be connected to other components in a larger system (assembly)

CCM lacks features for Specifying QoS for Resource Consuming Components

• CCM does not give us:– Ways to specify end-to-end QoS requirements, i.e. QoS

Characteristics and QoS Values

– Ways to specify adaptation strategies for how RCC’s can coordinate with other entities in order to meet QoS requirements

– Ways to specify QoS management which cross multiple system and application level boundaries

QoS Management in DRE Systems

• Managing end-to-end QoS involves managing resources which cross multiple system and application-level boundaries

• Network-level resource management– QoS specific protocols such as RSVP and Diffserv– Enhanced transport protocols (SCTP)– Traffic shapers and firewalls

• Processor-level resource management– CPU scheduling strategies– CPU reservations

• Resource management of application specific behaviors– Frame dropping– Compression

CCM Should Allow QoS Management to Cross-Cut Components

• QoS is a cross-cutting concern that can affect the interaction between multiple components

• CCM must allow for complex component interactions that will result from implementing cross-cutting QoS management

QoS Management

Infrastructure

QoS Management

Infrastructure

ClientComponent

Service AComponent

Service BComponent

Service CComponent

QuO Extends the Distributed Object Model to Provide QoS Management

ApplicationDeveloper

MechanismDeveloper

CLIENT

Network

operation()

in args

out args + return value

IDLSTUBS

IDLSKELETON

OBJECTADAPTER

ORB IIOP ORBIIOP

CLIENT OBJECT(SERVANT)OBJECT(SERVANT)

OBJREF

CLIENT

DelegateContract

SysCond

Contract

Network

MECHANISM/PROPERTYMANAGER

operation()

in args

out args + return value

IDLSTUBS

Delegate

SysCond

SysCond

SysCond

IDLSKELETON

OBJECTADAPTER

ORB IIOP ORBIIOP

CLIENT OBJECT(SERVANT)OBJECT(SERVANT)

OBJREF

ApplicationDeveloper

QuODeveloper

MechanismDeveloper

CO

RB

A D

OC

MO

DE

LQ

UO

/CO

RB

A D

OC

MO

DE

L

Adding QoS Management Capabilities to the CORBA Component Model

ApplicationDeveloper

MechanismDeveloper

Network

COMPONENTSKELETON

OBJECT ADAPTER

ORB IIOP ORBIIOP

ApplicationDeveloper

QoSComponentDeveloper

MechanismDeveloper

CO

MP

ON

EN

T M

OD

EL

QU

O/C

OM

PO

NE

NT

MO

DE

L

in args out args + return valueClient/SourceComponent

events

Server/SinkComponent

COMPONENTSTUBS

Contract Component

SysCond

Network

MECHANISM/PROPERTYMANAGER

COMPONENTSTUBS

SysCond

SysCond

SysCond

COMPONENTSKELETON

ORB IIOP ORBIIOP

in args out args + return valueClient/SourceComponent

events

Server/SinkComponent

DelegateComponent

DelegateComponent

OBJECT ADAPTER

Contract Component

Important Places where QoS Can Be Inserted in a Component-based DRE Application

• Interaction between components (in-band)

• Interaction between components and environment (out-of-band)

• Interaction between components and containers

QuO Provides In-Band and Out-of-Band Adaptation and Control

• In-band adaptation provided by the delegate and gateway

– A delegate decides what to do with a method call or return based upon the state of its contract

• Out-of-band adaptation triggered by transitions in contract regions

– Caused by changes in the system observed by system condition objects

CLIENT

DelegateContract

SysCond

Contract

Network

MECHANISM/PROPERTYMANAGER

operation()

in args

out args + return value

IDLSTUBS

Delegate

SysCond

SysCond

SysCond

IDLSKELETON

OBJECTADAPTER

ORB IIOP ORBIIOP

CLIENT OBJECT(SERVANT)OBJECT(SERVANT)

OBJREF

CLIENT

DelegateContract

SysCond

Contract

Network

MECHANISM/PROPERTYMANAGER

operation()

in args

out args + return value

IDLSTUBS

Delegate

SysCond

SysCond

SysCond

IDLSKELETON OBJECT

ADAPTER

ORB IIOP ORBIIOP

CLIENT OBJECT(SERVANT)OBJECT(SERVANT)

OBJREF

Adding QoS Management Between Components (in-band)

• Modeling QoS infrastructure as components allows us to use standard component assembly mechanisms to introduce QoS behaviors to component-based DRE applications

Contract Component

SysCond

Network

MECHANISM/PROPERTYMANAGER

COMPONENTSTUBS

SysCond

SysCond

SysCond

COMPONENTSKELETON

ORB IIOP ORBIIOP

in args out args + return valueClient/SourceComponent

events

Server/SinkComponent

DelegateComponent

DelegateComponent

OBJECT ADAPTER

Contract Component

Adding QoS Management between Components and Environment (out-of-band)

• Changes in environment as detected by monitoring SysConds (sensors) trigger adaptive behaviors through Callbacks (actuators)

Contract Component

SysCond

Network

MECHANISM/PROPERTYMANAGER

COMPONENTSTUBS

SysCond

SysCond

SysCond

COMPONENTSKELETON

ORB IIOP ORBIIOP

in args out args + return valueClient/SourceComponent

events

Server/SinkComponent

DelegateComponent

DelegateComponent

OBJECT ADAPTER

Contract Component

Inserting QoS Management Capabilities into CCM between Components and Containers

ORB

RT TraderRT Scheduling 2.0 CPU SchedulingFT/RT Event

Client

Container

CORBAComponent

Home

PO

AContainerAPI

ContainerAPI

QoSManagement

QoS Management Behaviors can be Added to CCM by Using Reusable “Qoskets”

• Qosket bundles a set of contracts (CDL), system condition objects (IDL), and QoS adaptive behavior (ASL)

• Qosket provides reusable QoS Management behavior to application

• Qoskets are cross-cutting, their interfaces will not map directly to CCM interfaces

Qosket

Contracts SysConds

CallbackObjects

DelegateTemplates

Contract Component

SysCond

Network

MECHANISM/PROPERTYMANAGER

COMPONENTSTUBS

SysCond

SysCond

SysCond

COMPONENTSKELETON

ORB IIOP ORBIIOP

in args out args + return valueClient/SourceComponent

events

Server/SinkComponent

DelegateComponent

DelegateComponent

OBJECT ADAPTER

Contract Component

Conclusions

• Integrating QoS management into the CORBA Component Model will be important for developing component-based DRE applications

• QuO offers a middleware framework for QoS-enabled applications

• QuO functionality integrated with CCM would provide more flexible and reusable QoS Management behaviors

Further References and Ongoing Standards Activity

• CORBA Component Model specification, http://doc.omg.org/ptc/02-08-03

• Quality of Service for CCM draft RFP,http://doc.omg.org/mars/03-01-18http://doc.omg.org/mars/03-01-19

• UML Profile for QoS and FT Characteristics and Mechanisms, RFP responsehttp://doc.omg.org/realtime/02-09-01

– Co-authored by I-Logix, THALES, Tri-Pacific

– Supported by Lockheed Martin, ARTISAN, Softeam, and others

Extra slides

Overview of Quality of ServiceTerminology and Concepts *

* source: UML Profile for QoS RFP response

QoS: Basic Terminology

• QoS Characteristics– Represent quantifiable characteristics of services.

– Specified independently of the elements they qualify, and represent non-functional aspects such as:

– Latency, Throughput, Capacity

– Availability, Reliability, Integrity, Safety

– Error probability, Accuracy

– Confidentiality, Access Control

QoS: Basic Terminology

• QoS Value Definitions– Quantification of QoS Characteristics

– for latency, we can quantify end-to-end delay of a function, the mean time of all executions, or the variance of time delay

• QoS Capability– A way of grouping together QoS Characteristics for large, complex

systems which may have many QoS Characteristics

– Performance: refers to timeliness aspects of a system, and incorporates characteristics such as latency and throughput

– Dependability: refers to the reliability of the service provided by a system, and incorporates characterstics such as: availability, reliability, safety, integrity

– Security: incorporates characteristics such as access control and confidentiality

QoS: Basic Terminology

• QoS Contract– System requirements that include restrictions that the system must

adhere to

– Can be specified in terms of QoS Values, which restrict QoS Characteristics, such as maximum latency