Presentation is loading. Please wait.

Presentation is loading. Please wait.

Model Driven Middleware: A New Approach for Developing & Provisioning Large-scale Distributed Real-time and Embedded Applications Dr. Aniruddha Gokhale.

Similar presentations


Presentation on theme: "Model Driven Middleware: A New Approach for Developing & Provisioning Large-scale Distributed Real-time and Embedded Applications Dr. Aniruddha Gokhale."— Presentation transcript:

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


Download ppt "Model Driven Middleware: A New Approach for Developing & Provisioning Large-scale Distributed Real-time and Embedded Applications Dr. Aniruddha Gokhale."

Similar presentations


Ads by Google