Download presentation
Presentation is loading. Please wait.
Published byStephen Nicholson Modified over 9 years ago
1
Model Driven Middleware: A New Approach for Developing & Provisioning Large-scale Distributed Real-time and Embedded Applications Dr. Aniruddha Gokhale a.gokhale@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
Aniruddha GokhaleMDM 2 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 Middleware for Distributed Real-time & Embedded Systems Middleware Services DRE Applications Operating Sys & Protocols Hardware & Networks distributed system
3
Aniruddha GokhaleMDM 3 R&D Focus: Distributed Real-time & Embedded (DRE) Systems 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 Total Ship C&C Center Total Ship Computing Environments
4
Aniruddha GokhaleMDM 4 The Transforming Landscape of DRE Appln Development Technology Problems DRE systems have historically tended to be: Stovepiped Proprietary Brittle & non-adaptive Expensive Vulnerable Historically, mission-critical apps were built directly atop hardware Tedious Error-prone Costly over lifecycles IOM BSE Middleware Services DRE Applications Operating Systems Hardware & Networks Middleware Services DRE Applications Operating Systems Hardware & Networks 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 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)
5
Aniruddha GokhaleMDM 5 Growing Trend: Component Middleware for DRE Applns Component middleware gaining importance (CCM, J2EE,.NET) Components encapsulate application core logic Components possess ports: 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 Security ReplicationNotificationPersistence Container … … …
6
Aniruddha GokhaleMDM 6 Different Aspects in Component Middleware- based DRE Appln Provisioning & Deployment Specification & Implementation Application functionality specification, partitioning and implementation as standalone components Packaging bundling a suite of software binary modules and metadata representing application components Installation populating a repository with the packages required by the application Configuration configuring the packages with the appropriate parameters to satisfy the functional and systemic requirements of application without constraining to any physical resources Planning making appropriate deployment decisions including identifying the entities, such as CPUs, of the target environment where the packages will be deployed Preparation moving the binaries to the identified entities of the target environment Launching triggering the installed binaries and bringing the application to a ready state Adaptation Runtime reconfiguration & resource management to maintain end-to-end QoS
7
Aniruddha GokhaleMDM 7 Limitations and Complexities of Middleware Win2KLinuxLynxOS Solaris VxWorks CORBA Services CORBA Apps MIDDLEWARE ARCHS J2EE Services J2EE Apps.NET Services.NET Apps Middleware Services 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
8
Aniruddha GokhaleMDM 8 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 Applns Middleware Bus Security ReplicationNotificationPersistence Container … … … …
9
Aniruddha GokhaleMDM 9 CIAO: Our Middleware for DRE Applications Event Notifications A/V Streaming Dynamic/Static Scheduling RT-CORBA 1.0+2.0 CORBA Security FT-CORBA & Load Balancing Component Implementation Definition Language CCM Packaging & Deployment Time/space Optimizations http://www.dre.vanderbilt.edu
10
Aniruddha GokhaleMDM 10 The MDM Approach: OMG 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
Aniruddha GokhaleMDM 11 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 ACE+TAO middleware Used as Avionics Open Experimental Platform (OEP) for DARPA/IXO PCES & MoBIES programs Moving towards using CIAO CCM
12
Aniruddha GokhaleMDM 12 Bold Stroke Architectural Elements Hardware organization ACE+TAO real-time CORBA distribution middleware Push-based event model Pull-based data model This common usage simplifies assembly complexity Application components (consumer) Application components (supplier)
13
Aniruddha GokhaleMDM 13 Bold Stroke Illustrative Example Basic Modal Single Process Product Scenario (2 operational modes) Determining the right assembly and deployment Determining the right assignment of priorities Determining the right concurrency strategy Adapting to changing operating conditions
14
Aniruddha GokhaleMDM 14 CoSMIC: Our MDM Tool Suite Applying OMG MDA to address DRE appln development & provisioning challenges w.r.t: 1.the packaging aspect 2.the configuration aspect 3.the planning aspect 4.the dynamic QoS provisioning & adaptation aspect … Container … … Our tool suite is called CoSMIC CoSMIC = Component Synthesis using Model Integrated Computing Middleware Bus Security ReplicationNotificationPersistence
15
Aniruddha GokhaleMDM 15 Challenge 1: Packaging Aspect Application components are bundled together into assemblies Several different assemblies tailored towards delivering different end-to- end QoS and/or using different algorithms can be part of the package e.g., Bold Stroke scenarios involve assembling & deploying hundreds of components Packages describing the components and assemblies can be scripted by using XML descriptors CONTEXT
16
Aniruddha GokhaleMDM 16 Challenge1: Packaging Aspect PROBLEMS (1/2) RT Event Channel Ad hoc techniques for ensuring syntactic & semantic compatibility End-to-end QoS metric assigned in ad hoc manner Ad hoc means to determine event channel support
17
Aniruddha GokhaleMDM 17 Challenge1: Packaging Aspect PROBLEMS (2/2) XML file in excess of 3,000 lines for medium sized scenarios Existing practices involve handcrafting the XML descriptors Modifications to the assemblies requires modifying XML file
18
Aniruddha GokhaleMDM 18 Challenge 1: Packaging Aspect Status: Component & Assembly Descriptor Modeling Language (CADML) developed in GME Used to model & synthesize assembly descriptor and package descriptor files for Boldstroke product scenarios SOLUTION Point of Contact: Krishnakumar Balasubramaniam (kitty@dre.vanderbilt.edu) Tao Lu (lu@dre.vanderbilt.edu)
19
Aniruddha GokhaleMDM 19 Challenge 1: Packaging Aspect Next Steps Align CADML DSML with OMG’s D&C spec Improve syntactic & semantic compatibility checks Benchmarking of assemblies to assign QoS metrics Synthesize assembly descriptor metadata
20
Aniruddha GokhaleMDM 20 Challenge 2: Configuration Aspect CONTEXT Platform independent configuration Configuration of components & assemblies Configuration of component containers Configuration of middleware bus (i.e., ORB) Configuration of component server Configuration of event channel support
21
Aniruddha GokhaleMDM 21 server object management middleware Challenge 2: Configuring Container Policies Existing techniques for metadata configurations rely on ad hoc manual configurations e.g., CORBA server-side programming PROBLEMS (1/3) Determine the server object management policies Determine right buffer sizes 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 This “glue code” is traditionally handcrafted Ensure semantic compatibility among chosen configurations Determine end-to-end priority propagation model to use
22
Aniruddha GokhaleMDM 22 Challenge 2: Configuring RT Event Channels PROBLEMS (1/3) This “glue code” for event channel integration is traditionally handcrafted Determine priority propagation policies for events Determine the right locking strategies Determine the right strategy for event channel integration i.e., within container or within component Enable colocation optimizations PROBLEMS (2/3)
23
Aniruddha GokhaleMDM 23 Challenge 2: Configuring Middleware End-to-End I/O Subsystem M/W Bus SkeletonStub 201051201051 PROBLEMS (3/3) Determine 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
24
Aniruddha GokhaleMDM 24 Challenge 2: Configuration Aspect 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
25
Aniruddha GokhaleMDM 25 Challenge 2: Configuration Aspect High priority 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 Point of Contact Emre Turkaye, George Edwards, Gan Deng
26
Aniruddha GokhaleMDM 26 Challenge 3: Planning Aspect Context Determine current resource allocations on target platforms Select the appropriate package to deploy on selected target Select appropriate target platform to deploy packages
27
Aniruddha GokhaleMDM 27 Challenge 3: Planning Aspect Problems distributed system How do you determine current resource allocations? How do you correlate QoS requirements of packages to resource needs How do you ensure that the selected targets will deliver required QoS
28
Aniruddha GokhaleMDM 28 Challenge 3: Planning Aspect Target platforms will be selected based on a priori benchmarking data obtained by running different packages on target configurations Modeling paradigms being developed to represent target platforms Modeling paradigms being developed for synthesizing appropriate benchmarking test suites On going work Point of Contact Jaiganesh Balasubramaniam,Arvind Krishna Collaboration with Dr. Swapna Gokhale, Univ of Connecticut on analysis techniques for selecting right set of assemblies for deployment that will assure end-to-end QoS
29
Aniruddha GokhaleMDM 29 Challenge 4: Adaptation & Resource Management Aspect CONTEXT Appln Server Static configuration Need to provide runtime QoS adaptation along functional path Made feasible using adaptive & reflective middleware e.g., BBN QuO, UIUC Quarterware, Lancaster OpenORB Global, dynamic resource management
30
Aniruddha GokhaleMDM 30 Challenge 4: Adaptation & Resource Management Aspect PROBLEMS Glue code depends on the adaptive/reflective middleware used Most existing middleware not designed to collect and distribute QoS metadata Need to retrofit middleware to collect and distribute desired QoS metadata Need to add instrumentation code to collect QoS metadata Instrumentation code manually handcrafted
31
Aniruddha GokhaleMDM 31 Challenge 4: Adaptation & Resource Management Aspect SOLUTION Middleware Models Integrated Models QoS Metadata model Program Transformation Tool Language- specific QoS aspects generator Collaboration with Dr. Jeff Gray (UAB) Middleware Applications Operating System Interceptor Endsystem Local Resource Manage- ment Infrastructure Middleware Distribution Middleware Common Services Domain-Specific Services Point of Contact Bala Natarajan, Jeff Parsons
32
Aniruddha GokhaleMDM 32 Middleware Applications Operating System Interceptor Endsystem Local Resource Manage- ment Infrastructure Middleware Distribution Middleware Common Services Domain-Specific Services Challenge 4: Adaptation & Resource Management Aspect Next Steps Middleware Models Integrated Models QoS Metadata model Program Transformation Tool Language- specific QoS aspects generator Domain specific modeling language for QoS metadata Domain specific modeling language for middleware models C-SAW model weaver available Develop generators Collaboration with Dr. Priya Narsimhan (CMU) on model driven middleware instrumentation for proactive fault tolerance
33
Aniruddha GokhaleMDM 33 Research Impact & Future Work Current progress stems from years of iteration, refinement, & successful use Year 19702010 ARPAnet RPC Micro-kernels CORBA & DCOM Real-time (RT) CORBA Component Models (EJB) CORBA Component Model (CCM) RT/CCM DCE CoSMIC Future Research Directions High confidence, geographically distributed DRE systems Grid applications Large enterprise systems Focus on platform-independent models Future Research Directions High confidence, geographically distributed DRE systems Grid applications Large enterprise systems Focus on platform-independent models Model integrated middleware Shape the standards e.g., OMG’s Model Driven Architecture (MDA) Advanced MDA ACE/TAO 20002005
34
Aniruddha GokhaleMDM 34 Applying ACE+TAO in Mission-Critical DRE Systems OrganizationApplication Domain BoeingAircraft Mission Control Computer BAE SystemsJoint Tactical Radio System (JTRS) SAICDistributed Interactive Simulation HLA/RTI RaytheonAircraft Carrier self-defense Systems US ArmyJoint Tactical Terminal (JTT) JPL/NASASOFIA Telescope, Cassini Space Probe LMCOShipboard Resource Management Contact SystemsSurface mounted “pick-and-place” systems AT DeskAutomated Stock Trading CiscoHigh-performance network control KronesProcess Automation & QC SiemensHot Rolling Mill Control System CUSeeMeMonitor H.323 Servers
35
Aniruddha GokhaleMDM 35 Research Snapshot Funded Projects DARPA Program Composition of Embedded Systems (PCES) DARPA Adaptive & Reflective Middleware Systems (ARMS) ITS Warehouse Management (Siemens) Fault Tolerant CORBA (Lockheed Martin) Collaborations Dr. Douglas C. Schmidt, Vanderbilt University Dr. Jeff Gray (Univ of Alabama, Birmingham) Dr. Swapna Gokhale (Univ of Connecticut) Dr. Marina Thottan (Bell Labs) Dr. Priya Narsimhan (CMU) Dr. Sylvester Fernandez (Lockheed Martin) Spring ’04: CS292/CS396 – Special Topics Course on Model Driven Middleware
36
Aniruddha GokhaleMDM 36 DRE (DOC) Group Capabilities Faculty: Dr. Douglas C. Schmidt, 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 Deng Patterns & Pattern Languages ACE Host Infrastructure Middleware Configurable Communication Systems Mission Critical DoD Systems Industrial Process Control Medical Imaging Systems TAO CORBA Distribution Middleware CIAO CORBA Component Middleware CoSMIC Model Driven Middleware
37
Aniruddha GokhaleMDM 37 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 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 5.Benchmark provisioned system Model Driven Approach to: www.dre.vanderbilt.edu/cosmic
38
Aniruddha GokhaleMDM 38 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
39
Aniruddha GokhaleMDM 39 EXTRA
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.