cosmic: an mda tool suite for distributed real-time and embedded systems

18
CoSMIC: An MDA Tool Suite for CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Distributed Real-time and Embedded Systems Systems Aniruddha Gokhale, Tao Lu, Emre Turkay, Balachandran Natarajan, Jeff Parsons, K. Balasubramaniam, Boris Kolpakov, Arvind Krishna, J. Balasubramaniam {gokhale, lu, turkaye, bala, parsons, kitty, boris, arvindk,jaiganesh}@dre.vanderbilt.edu www.dre.vanderbilt.edu/cosmic ISIS, Vanderbilt University Nashville, TN 37203 Work supported by AFRL contract# F33615-03- C-4112 for DARPA PCES Program

Upload: max

Post on 07-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems. Aniruddha Gokhale, Tao Lu, Emre Turkay, Balachandran Natarajan, Jeff Parsons, K. Balasubramaniam, Boris Kolpakov, Arvind Krishna, J. Balasubramaniam - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

CoSMIC: An MDA Tool Suite for Distributed CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded SystemsReal-time and Embedded Systems

Aniruddha Gokhale, Tao Lu, Emre Turkay, Balachandran Natarajan, Jeff Parsons, K. Balasubramaniam, Boris

Kolpakov, Arvind Krishna, J. Balasubramaniam

{gokhale, lu, turkaye, bala, parsons, kitty, boris, arvindk,jaiganesh}@dre.vanderbilt.edu

www.dre.vanderbilt.edu/cosmic

ISIS, Vanderbilt UniversityNashville, TN 37203

Work supported by AFRL contract# F33615-03-C-4112 for DARPA PCES Program

Page 2: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

2

Gokhale et al CoSMICOMG RTED Workshop July 2003

Research Synopsis

Develop, validate, & help to standardize technologies that:

(1) Model(2) Analyze(3) Synthesize &(4) Provision

multiple layers of middleware for distributed real-time and embedded (DRE) systems that require simultaneous control of multiple quality of service properties end-to-end

Model Driven Approach for Distributed Real-time & Embedded MiddlewareModel Driven Approach for Distributed Real-time & Embedded MiddlewareModel Driven Approach for Distributed Real-time & Embedded MiddlewareModel Driven Approach for Distributed Real-time & Embedded Middleware

Middleware

MiddlewareServices

DRE Applications

Operating Sys& Protocols

Hardware & Networks

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

distributed system

Page 3: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

3

Gokhale et al CoSMICOMG RTED Workshop July 2003

Distributed Real-time & Embedded Systems

•Stringent simultaneous quality of service (QoS) demands

•Part of larger systems•Resource constrained

•Stringent simultaneous quality of service (QoS) demands

•Part of larger systems•Resource constrained

•Network-centric & large-scale•Dynamic context•Stringent simultaneous quality of service (QoS) demands

•Part of larger systems•Resource constrained

•Network-centric & large-scale•Dynamic context•Stringent simultaneous quality of service (QoS) demands

•Part of larger systems•Resource constrained

The Past The Future

Page 4: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

4

Gokhale et al CoSMICOMG RTED Workshop July 2003

DRE Systems: The Challenges Ahead (1/2)

Win2K Linux LynxOS

Solaris VxWorks

CORBA

CORBAServices

CORBAApps

MIDDLEWARE ARCHS

J2EE

J2EEServices

J2EEApps

.NET

.NETServices

.NETApps

Middleware

MiddlewareServices

DRE Applications

Operating Sys& Protocols

Hardware & Networks

•There is a limit to how much application functionality can be factored into broadly reusable COTS middleware

•Middleware has become extremely complicated to use, configure, & provision statically & dynamically

•There are now multiple middleware technologies to choose from

Page 5: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

5

Gokhale et al CoSMICOMG RTED Workshop July 2003

DRE Systems Challenges: Emergence of Component Middleware (2/2)

Context•Component middleware gaining importance (CCM, J2EE, .NET)

•Components encapsulate application core logic

•Components possess•Event sinks & sources•Connection points e.g., receptacles• Interfaces e.g., facets•attributes

•Containers provide execution environment for components with common operating requirements

•Containers communicate via a middleware bus

Middleware Bus

SecurityReplication NotificationPersistence

Container

… …

Challenges•Accidental complexities configuring the middleware

•Accidental complexities deploying semantically compatible components

Page 6: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

6

Gokhale et al CoSMICOMG RTED Workshop July 2003

Related Work: •MIC, Vanderbilt (Sztipanovits, Karsai, et al)

•Ptolemy, UC Berkeley (Lee et al)•Cadena, KSU (John Hatcliff et al)•Quality Connector, LMCO (Joe Cross et. al)

Key Benefits•Preserves DRE application functional & systemic QoS properties as high level models

•Domain-specific languages & analysis/synthesis tools transform models to customize underlying multi-layered middleware platforms

•Leverages & shapes standards for wider applicability

Our Solution: Model-Driven Middleware for DRE Systems

Middleware Bus

SecurityReplication NotificationPersistence

Container

… …

Container

… …

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

Page 7: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

7

Gokhale et al CoSMICOMG RTED Workshop July 2003

MDA-Component Middleware Integration

Goals1. Configuring and deploying application

services end-to-end2. Composing components into

component servers3. Configuring application component

containers4. Synthesizing application component

implementations5. Synthesizing middleware-specific

configurations6. Synthesizing dynamic QoS provisioning

and adaptation logic7. Synthesizing middleware

implementations

ComponentRepository

Compose Deploy

Middleware Bus

CentralDataStore

1

System Development

Field RadarControlSystem

ChicagoData

Center

ComponentAssembly

FlightScheduling

2

CoSMICModel

Interpreter &Synthesizer

UML Model

selectcomponents

CIAO

ContainerCORBA

Component

ComponentHome

POA

QoS PropertyAdaptor

QoS Policies

Re

flect

4

CCM Component Library

1

ORB

ORB QoS Interfaces(Scheduling,

Timeliness,Priority,...)

ORB Plugins

ORBMetadata

6

7

3

5

AirportTrafficControl

•Our tool suite is called CoSMIC

•CoSMIC = Component Synthesis using Model Integrated Computing

Page 8: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

8

Gokhale et al CoSMICOMG RTED Workshop July 2003

Current Target Middleware: CIAO CORBA Component Model

www.dre.vanderbilt.edu/CIAOComponent Integrated ACE ORB (CIAO)

Focus on infrastructure support for composition of the following aspects CIDL compiler to synthesize component descriptor metadata & stubs/skeletons RT event channel integration with CIAO containers Assembly & deployment framework Collaboration with Washington University

RT EventChannel

Page 9: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

9

Gokhale et al CoSMICOMG RTED Workshop July 2003

Boeing Bold Stroke: Current Target Domain

•Avionics Product Line Component Model

•DRE system with 3,000+ domain-specific software components, 3-5 million lines of C++ code

•100+ developers

•Mission-control software for Boeing military aircraft, e.g., F-18 E/F, Harrier, UCAV

•Leverages the ACE+TAO middleware

•Used as Avionics Open Experimental Platform (OEP) for DARPA/IXO PCES & MoBIES programs

•Moving towards using CIAO CCM

Page 10: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

10

Gokhale et al CoSMICOMG RTED Workshop July 2003

Component Assembly & Deployment (1/3)

•Application components are partitioned, assembled and then deployed in a way that provides optimum resource utilization & delivers required QoS to the application•e.g., Bold Stroke scenarios involve assembling & deploying hundreds of components

•Assembly & deployment can be scripted by using XML descriptors & deployment tools

CONTEXT

TIMER20Hz

GPS NAV DISP

Page 11: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

11

Gokhale et al CoSMICOMG RTED Workshop July 2003

Component Assembly & Deployment (2/3)

<!– Associate components with impls --><componentfiles> <componentfile id=“RateGenerator"> <fileinarchive name=“HouseRateGen.csd"/> </componentfile>

<componentfile id=“HiResGPS"> <fileinarchive name=“aGPS.csd"/> </componentfile>

<componentfile id=“cockpitDisplay"> <fileinarchive name=“navDisplay-if.csd"/> </componentfile>

</componentfiles>

PROBLEMSXML file in excess of 3,000 lines for medium sized scenarios

Existing practices involve handcrafting the XML descriptors

Partitioning, Distribution and Deployment done in ad hoc manner

Modifications in assembly requires modifying XML file

Page 12: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

12

Gokhale et al CoSMICOMG RTED Workshop July 2003

Component Assembly & Deployment (3/3)

TIMER20Hz

GPS NAV DISPAIRFRAME

Status:• Component & Assembly Descriptor Modeling Language (CADML) developed in GME

• Used to model & synthesize CAD files for Boldstroke product scenarios in CIAO

Next Steps:• Analyze application QoS requirements and determine effective partitioning of

functionality and

• Synthesize component assembly descriptors using logical resources

• Deploy system on physical resources using existing assembly

SOLUTION

Page 13: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

13

Gokhale et al CoSMICOMG RTED Workshop July 2003

Configuring Middleware End-to-End (1/3)

I/O Subsystem

M/WBus

SkeletonStub

20 10 5 1 20 10 5 1

•Middleware must be configured with the appropriate systemic metadata end-to-end•e.g., in Bold Stroke example, appropriate priority banded connections must be set between application services

NAV DISPGPSNAV

STEERINGPILOT

CONTROL

CONTEXT

Page 14: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

14

Gokhale et al CoSMICOMG RTED Workshop July 2003

Configuring Middleware End-to-End (2/3)

I/O Subsystem

M/W Bus

SkeletonStub

20 10 5 1 20 10 5 1

PROBLEMSDetermine right concurrency strategy

Determine right demux strategy

Determine right marshaling optimizations

Determine right connection mgmt policy

Configuring subset of underlying transports

•Highly flexible middleware tend to provide numerous configuration knobs that can be configured to deliver required systemic properties to applications

•Existing techniques of metadata configurations rely on ad hoc manual selection of configuration parameters

Page 15: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

15

Gokhale et al CoSMICOMG RTED Workshop July 2003

Configuring Middleware End-to-End (3/3)Status:• Options Configuration Modeling Language (OCML) developed in GME

• Used by TAO developers to model TAO ORB configuration options and option constraints

• Validate user-provided option descriptor file

Next Steps:• Develop modeling paradigm to express QoS requirements

• Interactive tool to synthesize options descriptor file based on application QoS requirements

• Benchmarking on Emulab testbed• Tools to generate html documentation of options

SOLUTION

Page 16: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

16

Gokhale et al CoSMICOMG RTED Workshop July 2003

Concluding RemarksCoSMIC Tools Applying MDA to address

1. the end-to-end deployment aspect of DRE applications

2. the component container configuration aspect3. the middleware configuration aspect4. the dynamic QoS provisioning & adaptation aspect

Container

… …

TIMER20Hz

GPS

NAV DISP

Middleware Bus

SecurityReplication NotificationPersistence

Current Status:•Modeling paradigm and generators developed for CCM component assembly & deployment

•Modeling paradigm and constraint checker to determine semantic compatibility of ORB configuration options

Page 17: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

17

Gokhale et al CoSMICOMG RTED Workshop July 2003

Downloading the Middleware & Tools

• http://www.dre.vanderbilt.edu/cosmic

• Beta and Stable release can be accessed from http://www.dre.vanderbilt.edu/Download.html

Page 18: CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems

18

Gokhale et al CoSMICOMG RTED Workshop July 2003

Component Assembly & Deployment (1/2)