Faculty recruitment talk

download report

Transcript Faculty recruitment talk

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
{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
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Research Synopsis
Model Driven Approach for Distributed Real-time & Embedded Middleware
Develop, validate, & help to
standardize technologies
that:
(1) Model
(2) Analyze
(3) Synthesize &
(4) Provision
DRE Applications
distributed
system
Middleware
Services
Middleware
Operating Sys
& Protocols
<CONFIGURATION_PASS>
<HOME>
<…>
<COMPONENT>
<ID> <…></ID>
<EVENT_SUPPLIER>
<…events this component
supplies…>
</EVENT_SUPPLIER>
</COMPONENT>
</HOME>
</CONFIGURATION_PASS>
Hardware &
Networks
2
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
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Distributed Real-time & Embedded Systems
The Past
The Future
• 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
3
Gokhale et al
CoSMIC
OMG RTED Workshop July 2003
DRE Systems: The Challenges Ahead (1/2)
DRE Applications
Middleware
Services
Middleware
Operating Sys
& Protocols
• 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
Hardware &
Networks
MIDDLEWARE ARCHS
• There are now multiple
middleware technologies to
choose from
CORBA
Apps
J2EE
Apps
.NET
Apps
CORBA
Services
J2EE
Services
.NET
Services
CORBA
J2EE
.NET
Solaris
Win2K
4
VxWorks
Linux
LynxOS
Gokhale et al
CoSMIC
OMG 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
…
…
Container
Middleware Bus
Replication
Security
Persistence
Notification
Challenges
•Accidental complexities configuring
the middleware
•Accidental complexities deploying
semantically compatible components
5
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Our Solution: Model-Driven Middleware for DRE Systems
Key Benefits
•Preserves DRE application functional
& systemic QoS properties as high
level models
<CONFIGURATION_PASS>
<HOME>
<…>
<COMPONENT>
<ID> <…></ID>
<EVENT_SUPPLIER>
<…events this component
supplies…>
</EVENT_SUPPLIER>
</COMPONENT>
</HOME>
</CONFIGURATION_PASS>
…
…
…
Container
…
•Domain-specific languages &
analysis/synthesis tools transform
models to customize underlying multilayered middleware platforms
•Leverages & shapes standards for
wider applicability
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)
Container
Middleware Bus
Replication
Security
Persistence
Notification
6
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
MDA-Component Middleware Integration
Flight
Scheduling
Chicago
Data
Center
Field Radar
Control
System
•Our tool suite is called CoSMIC
•CoSMIC = Component Synthesis
using Model Integrated Computing
Central
Data
Store
1
Goals
Middleware Bus
Component
Repository
Compose
1.
Deploy
Component
Assembly
Airport
Traffic
Control
2
System Development
2.
3.
Component
Home
1 UML Model
CoSMIC
Model
Interpreter &
Synthesizer
select
components
QoSPolicies
5
QoS Property
Adaptor
4
3
6
7
4.
5.
POA
ORB
Metadata
ORB QoS Interfaces
(Scheduling,
Timeliness,Priority,...)
ORB Plugins
CCM Component Library
Reflect
Container
CORBA
Component
ORB
6.
7.
CIAO
7
Configuring and deploying application
services end-to-end
Composing components into
component servers
Configuring application component
containers
Synthesizing application component
implementations
Synthesizing middleware-specific
configurations
Synthesizing dynamic QoS provisioning
and adaptation logic
Synthesizing middleware
implementations
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Current Target Middleware: CIAO CORBA Component Model
RT Event
Channel
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
Component Integrated ACE ORB (CIAO)
8
www.dre.vanderbilt.edu/CIAO
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Boeing Bold Stroke: Current Target Domain
• Avionics Product Line Component
Model
• DRE system with 3,000+ domainspecific 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
9
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Component Assembly & Deployment (1/3)
TIMER
20Hz
GPS
NAV DISP
CONTEXT
• 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
10
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Component Assembly & Deployment (2/3)
PROBLEMS
XML file in
excess of 3,000
lines for medium
<!– Associate components with impls -->
sized scenarios
Existing
practices involve
handcrafting the
XML descriptors
<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"/>
Partitioning,
</componentfile>
Distribution and
Deployment
done in ad hoc
manner
</componentfiles>
Modifications in
assembly requires
modifying XML file
11
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Component Assembly & Deployment (3/3)
SOLUTION
TIMER
20Hz
GPS
AIRFRAME
NAV DISP
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
12
Gokhale et al
CoSMIC
OMG RTED Workshop July 2003
Configuring Middleware End-to-End (1/3)
CONTEXT
GPS
PILOT
CONTROL
NAV
STEERING
NAV DISP
Stub
20
10
Skeleton
5
1
M/W
Bus
20
10
5
1
I/O
Subsystem
• 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
13
Gokhale et al
CoSMIC
OMG RTED Workshop July 2003
Configuring Middleware End-to-End (2/3)
PROBLEMS
Determine
right
marshaling
optimizations
Determine right
demux strategy
Stub
20
Determine right
connection mgmt
policy
Determine right
concurrency strategy
10
Skeleton
5
1
M/W
Bus
20
10
5
1
Configuring subset of
underlying transports
I/O
Subsystem
• 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
14
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
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
SOLUTION
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
15
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Concluding Remarks
NAV DISP
CoSMIC Tools Applying MDA to address
1. the end-to-end deployment aspect of DRE
applications
2. the component container configuration aspect
3. the middleware configuration aspect
4. the dynamic QoS provisioning & adaptation aspect
…
Current Status:
GPS
• Modeling paradigm and
generators developed for CCM
component assembly &
deployment
• Modeling paradigm and
constraint checker to determine
semantic compatibility of ORB
configuration options
…
…
Container
TIMER
20Hz
Middleware Bus
Replication
Security
Persistence
Notification
16
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Downloading the Middleware & Tools
• Beta and Stable release can be accessed from
http://www.dre.vanderbilt.edu/Download.html
• http://www.dre.vanderbilt.edu/cosmic
17
Gokhale et al
OMG RTED Workshop July 2003
CoSMIC
Component Assembly & Deployment (1/2)
18