CoSMIC: A Model Driven Middleware for Provisioning Large-scale Distributed Real-time and Embedded Systems - PowerPoint PPT Presentation

About This Presentation
Title:

CoSMIC: A Model Driven Middleware for Provisioning Large-scale Distributed Real-time and Embedded Systems

Description:

CoSMIC: A Model Driven Middleware for Provisioning Large-scale Distributed Real-time and Embedded Systems Dr. Aniruddha Gokhale a.gokhale_at_vanderbilt.edu – PowerPoint PPT presentation

Number of Views:513
Avg rating:3.0/5.0
Slides: 37
Provided by: Aniruddh7
Category:

less

Transcript and Presenter's Notes

Title: CoSMIC: A Model Driven Middleware for Provisioning Large-scale Distributed Real-time and Embedded Systems


1
CoSMIC A Model Driven Middleware for
Provisioning Large-scale Distributed Real-time
and Embedded Systems
Dr. Aniruddha Gokhale a.gokhale_at_vanderbilt.edu www
.dre.vanderbilt.edu/gokhale Assistant Professor
(EECS ISIS) Vanderbilt University Nashville, TN
37203
Work supported by AFRL contract F33615-03-C-4112
for DARPA PCES Program
2
Research Synopsis
Model Driven Approach for Distributed Real-time
Embedded Middleware
  • Develop, validate, help to standardize
    technologies that
  • Model
  • Analyze
  • Synthesize
  • 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

ltCONFIGURATION_PASSgt ltHOMEgt ltgt
ltCOMPONENTgt ltIDgt ltgtlt/IDgt
ltEVENT_SUPPLIERgt ltevents this component
suppliesgt lt/EVENT_SUPPLIERgt
lt/COMPONENTgt lt/HOMEgt lt/CONFIGURATION_PASSgt
3
Distributed Real-time Embedded Systems
The Future
The Past
  • Network-centric large-scale
  • Dynamic context
  • 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

4
Historical Overview of DRE Systems Development
Technology Problems DRE systems have historically
tended to be Stovepiped Proprietary Brittle
non-adaptive Expensive Vulnerable
  • Middleware has effectively factored out many
    reusable mechanisms services from what was
    traditionally DRE application responsibility
  • Middleware is no longer primary DRE system
    performance bottleneck
  • Historically, mission-critical apps were built
    directly atop hardware
  • Tedious
  • Error-prone
  • Costly over lifecycles

5
Layers of Middleware for DRE Systems
  • Middleware characteristics
  • Uniform abstraction over h/w OS e.g., JVM, ACE
  • Distribution capabilities like location
    transparency, data marshaling e.g., CORBA, J2EE,
    webservices
  • Commonly used higher level services e.g., Naming,
    Event
  • Services specific to domains e.g., Bold Stroke
    (Avionics), AMW (telecom)

6
RD Contributions to Middleware for DRE Systems
  • Network Element Software Management, Network
    contact center service
  • patent pending
  • Fault tolerant CORBA technologies
    standardization effort
  • HiPC 00, DOA 00, J. Cluster Computing 03
  • The TAO high-performance, Real-time CORBA ORB
  • Influenced Real-time CORBA standard
  • ACM Sigcomm96, IEEE Journal of Selected Areas in
    Communication 99, IEEE Transactions on Computing
    97, Journal of Real-time systems 99, IEEE
    Globecomm 96/97, IEEE Comm 97
  • Automatic test suite generation for protocol
    conformance testing
  • ASU Masters thesis

7
Emergence of Component Middleware
  • 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

8
DRE Systems The Challenges Ahead
  • 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

9
Our Solution Model-Driven Middleware for DRE
Systems
  • 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

ltCONFIGURATION_PASSgt ltHOMEgt ltgt
ltCOMPONENTgt ltIDgt ltgtlt/IDgt
ltEVENT_SUPPLIERgt ltevents this component
suppliesgt lt/EVENT_SUPPLIERgt
lt/COMPONENTgt lt/HOMEgt lt/CONFIGURATION_PASSgt
  • 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)

10
MDA-Middleware Integration
  1. Configuring and deploying application services
    end-to-end
  2. Composing components into component servers
  3. Configuring application component containers
  4. Synthesizing application component
    implementations
  5. Synthesizing dynamic QoS provisioning and
    adaptation logic
  6. Synthesizing middleware-specific configurations
  7. Synthesizing middleware implementations

11
Our Target Middleware CIAO CORBA Component Model
RT Event Channel
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

www.dre.vanderbilt.edu/CIAO
Component Integrated ACE ORB (CIAO)
12
Boeing Bold Stroke Our Research Vehicle
  • 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 ACETAO middleware
  • Used as Avionics Open Experimental Platform (OEP)
    for DARPA/IXO PCES MoBIES programs
  • Moving towards using CIAO CCM

13
Bold Stroke Architectural Elements
14
Bold Stroke Illustrative Example
Adapting to changing operating conditions
Determining the right assembly and deployment
Determining the right assignment of priorities
Determining the right concurrency strategy
Basic Modal Single Process Product Scenario (2
operational modes)
15
Research Thrusts of CoSMIC
  • Applying MDA to address
  • the end-to-end deployment aspect of DRE
    applications
  • the component container configuration aspect
  • the middleware configuration aspect
  • the dynamic QoS provisioning adaptation aspect
  • Our tool suite is called CoSMIC
  • CoSMIC Component Synthesis using Model
    Integrated Computing

16
Challenge 1 Component Assembly Deployment
CONTEXT
  • Application components are 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

17
Challenge1 Component Assembly Deployment
PROBLEMS
XML file in excess of 3,000 lines for medium
sized scenarios
Existing practices involve handcrafting the XML
descriptors
lt! Associate components with impls
--gtltcomponentfilesgt ltcomponentfile
idRateGenerator"gt ltfileinarchive
nameHouseRateGen.csd"/gt lt/componentfilegt
ltcomponentfile idHiResGPS"gt
ltfileinarchive nameaGPS.csd"/gt
lt/componentfilegt ltcomponentfile
idcockpitDisplay"gt ltfileinarchive
namenavDisplay-if.csd"/gt lt/componentfilegt
lt/componentfilesgt
Partitioning, Distribution and Deployment done in
ad hoc manner
Modifications in assembly requires modifying XML
file
18
Challenge 1 Component Assembly Deployment
SOLUTION
  • A domain-specific Component Descriptor Modeling
    Language (CDML)
  • Currently leverages ESML for synthesis of
    assembly descriptors
  • ESML allows modeling component behavior
    interactions in Bold Stroke
  • Analyze component requirements and synthesize
    deployment scripts
  • Synthesize component glue code to interact with
    environment
  • ESML developed by Dr. Gabor Karsai et. al for
    DARPA/IXO MoBIES program
  • CIDL compiler developed by our group at ISIS

19
Challenge 1 Component Assembly Deployment
Next Steps
Develop a component descriptor modeling language
(CDML)
Synthesize assembly descriptor metadata
Synthesize platform-specific metadata
Determine appropriate assembly deployment
20
Challenge 1 Component Assembly Deployment
METRICS
Determine expressive power and flexibility of
platform independent models
Determine savings in effort to synthesize
assembly metadata
Determine savings in VV, testing certification
of synthesized assembly deployment
21
Challenge 2 Configuring Container Policies
CONTEXT
  • Components execute in containers that decouple
    runtime configuration from the component
    implementation e.g.,
  • Priority propagation models
  • Threading models
  • Security, replication, persistence policies
  • Internal buffer sizes
  • e.g., Boldstroke components run in a
    multithreaded environment with different
    end-to-end priorities
  • Usually specified by the deployer using XML-based
    metadata

22
Challenge 2 Configuring Container Policies
PROBLEMS
Determine thread pool sizes how are they shared
number of lanes and their priorities if
borrowing is enabled
Determine various middleware policies for server
objects e.g., security, lifetime, replication
Determine right buffer sizes
Determine end-to-end priority propagation model
to use
Determine the server object management policies
Ensure semantic compatibility among chosen
configurations
  • Existing techniques for metadata configurations
    rely on ad hoc manual configurations e.g., CORBA
    server-side programming
  • This glue code is traditionally handcrafted

23
Challenge 2 Configuring Container Policies
SOLUTION
  • Develop a domain-specific Container Policy
    Modeling Language (CPML)
  • Current version restricted to container
    configuration glue code generation in the CORBA
    environment
  • Container policies are still manually chosen

24
Challenge 2 Configuring Container Policies
Next Steps
  • Extend CPML to capture application QoS
    requirements in a platform independent form
  • Design model transformers to desired platforms
  • Develop tools that will determine the right
    values for various platform-specific parameters

25
Challenge 2 Configuring Container Policies
METRICS
  • Determine expressive power and flexibility of
    platform independent models
  • Savings in effort to map to specific platforms
  • Impact on testing, VV costs gt savings in total
    ownership costs

26
Challenge 3 Configuring Middleware End-to-End
CONTEXT
  • 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

27
Challenge 3 Configuring Middleware End-to-End
PROBLEMS
Determine right marshaling optimizations
Determine right concurrency strategy
Determine right demux strategy
Configuring subset of underlying transports
Determine right connection mgmt policy
  • 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

28
Challenge 3 Configuring Middleware End-to-End
SOLUTION
  • Developed a domain-specific modeling language for
    TAO/CIAO called Options Configuration Modeling
    Language (OCML) using GME
  • User provides a model of desired options their
    values e.g.,
  • Middleware bus resources
  • Concurrency connection management strategies
  • Constraint checker flags incompatible options
  • Synthesizes XML descriptors for middleware
    configuration

29
Challenge 3 Configuring Middleware End-to-End
Next Steps
  • Extend OCML to capture application QoS
    requirements in a platform independent form
  • Design model transformers to synthesize
    platforms-specific configuration models
  • Design tools that will determine the right values
    for various platform-specific configuration
    parameters

30
Challenge 4 End-to-end QoS Provisioning
Enforcement
CONTEXT
Made feasible using adaptive reflective
middleware
e.g., BBN QuO, UIUC Quarterware, Lancaster
OpenORB
Need to provide runtime QoS adaptation along
functional path
31
Challenge 4 End-to-end QoS Provisioning
Enforcement
Glue code depends on the adaptive/reflective
middleware used
PROBLEMS
Need to add instrumentation code to collect QoS
metadata
Instrumentation code manually handcrafted
Need to retrofit middleware to collect and
distribute desired QoS metadata
Most existing middleware not designed to collect
and distribute QoS metadata
32
Challenge 4 End-to-end QoS Provisioning
Enforcement
SOLUTION
QoS Metadata model
Middleware Models
Integrated Models
Program TransformationTool
Collaboration with Dr. Jeff Gray (UAB)
33
Challenge 4 End-to-end QoS Provisioning
Enforcement
Next Steps
QoS Metadata model
Domain specific modeling language for middleware
models
Middleware Models
Domain specific modeling language for QoS metadata
Develop model weaver
Integrated Models
Program TransformationTool
Develop generators
34
Research Impact Future Work
Advanced MDA
  • Current progress stems from years of iteration,
    refinement, successful use

Shape the standards e.g., OMGs Model Driven
Architecture (MDA)
Model integrated middleware
CoSMIC
RT/CCM
ACE/TAO
CORBA Component Model (CCM)
  • Future Research Directions
  • High confidence, geographically distributed DRE
    systems
  • Grid applications
  • Large enterprise systems
  • Focus on platform-independent models

Component Models (EJB)
Real-time (RT) CORBA
CORBA DCOM
DCE
Micro-kernels
RPC
ARPAnet
1970
2010
2000
2005
Year
35
Concluding Remarks
Model, analyze, synthesize, and provision
middleware technologies at multiple layers for
distributed real-time and embedded systems that
require simultaneous control of multiple quality
of service properties end-to-end
Model Driven Approach to
  1. Configure and deploy DRE applications end-to-end
  2. Configure application component containers
  3. Synthesize middleware-specific configurations
  4. Synthesize dynamic QoS provisioning and
    adaptation logic

www.dre.vanderbilt.edu/gokhale/cosmic.html
36
Vanderbilt DRE DOC Group Capabilities
Configurable Communication Systems
Mission Critical DoD Systems
Industrial Process Control
Medical Imaging Systems
CoSMIC Model Driven Architecture
CIAO CORBA Component Middleware
Patterns Pattern Languages
TAO CORBA Distribution Middleware
ACE Host Infrastructure Middleware
  • Faculty Dr. Douglas C. Schmidt
  • Research Scientist Dr. Aniruddha Gokhale
  • Research Engineers Bala Natarajan, Jeff
    Parsons, Boris Kolpakov, Tao Lu
  • Grad/UGrad Students B. Krishnakumar, George
    Edwards, Emre Turkay,
  • Arvind Krishna, J. Balasubramaniam, Gan Geng

37
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

38
Additional Information
  • Patterns frameworks for concurrent networked
    objects
  • www.posa.uci.edu
  • www.ace.uci.edu
  • ACE TAO open-source middleware
  • www.cs.wustl.edu/schmidt/ACE.html
  • www.cs.wustl.edu/schmidt/TAO.html
  • DRE research papers
  • www.cs.wustl.edu/schmidt/research.html
  • DRE tutorials
  • www.cs.wustl.edu/schmidt/tutorials.html
  • ACE books
  • www.cs.wustl.edu/schmidt/ACE/
Write a Comment
User Comments (0)
About PowerShow.com