Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "CoSMIC: A Model Driven Middleware for Provisioning Large-scale Distributed Real-time and Embedded Systems Dr. Aniruddha Gokhale"— Presentation transcript:

1 CoSMIC: A Model Driven Middleware for Provisioning Large-scale Distributed Real-time and Embedded Systems 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 GokhaleCoSMIC 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 Approach for Distributed Real-time & Embedded Middleware Middleware Services DRE Applications Operating Sys & Protocols Hardware & Networks distributed system

3 Aniruddha GokhaleCoSMIC 3 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

4 Aniruddha GokhaleCoSMIC 4 Historical Overview of DRE Systems 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

5 Aniruddha GokhaleCoSMIC 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) Middleware Services DRE Applications Operating Sys & Protocols Hardware & Networks

6 Aniruddha GokhaleCoSMIC 6 R&D 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 Master’s thesis Middleware Services DRE Applications Operating Sys & Protocols Hardware & Networks

7 Aniruddha GokhaleCoSMIC 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 Middleware Bus Security ReplicationNotificationPersistence Container … … …

8 Aniruddha GokhaleCoSMIC 8 DRE Systems: The Challenges Ahead 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

9 Aniruddha GokhaleCoSMIC 9 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 Security ReplicationNotificationPersistence Container … … … …

10 Aniruddha GokhaleCoSMIC 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 Aniruddha GokhaleCoSMIC 11 Our Target Middleware: CIAO CORBA Component Model www.dre.vanderbilt.edu/CIAO Component 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 Event Channel RT Event Channel

12 Aniruddha GokhaleCoSMIC 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 ACE+TAO middleware Used as Avionics Open Experimental Platform (OEP) for DARPA/IXO PCES & MoBIES programs Moving towards using CIAO CCM

13 Aniruddha GokhaleCoSMIC 13 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)

14 Aniruddha GokhaleCoSMIC 14 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

15 Aniruddha GokhaleCoSMIC 15 Research Thrusts of CoSMIC 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 … Container … … Our tool suite is called CoSMIC CoSMIC = Component Synthesis using Model Integrated Computing Middleware Bus Security ReplicationNotificationPersistence

16 Aniruddha GokhaleCoSMIC 16 Challenge 1: Component Assembly & Deployment 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 CONTEXT

17 Aniruddha GokhaleCoSMIC 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 Partitioning, Distribution and Deployment done in ad hoc manner Modifications in assembly requires modifying XML file

18 Aniruddha GokhaleCoSMIC 18 ESML developed by Dr. Gabor Karsai et. al for DARPA/IXO MoBIES program CIDL compiler developed by our group at ISIS 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 SOLUTION Challenge 1: Component Assembly & Deployment

19 Aniruddha GokhaleCoSMIC 19 Challenge 1: Component Assembly & Deployment Next Steps Develop a component descriptor modeling language (CDML) Synthesize assembly descriptor metadata Synthesize platform- specific metadata Synthesize custom strategies e.g., lazy or eager Determine appropriate assembly & deployment

20 Aniruddha GokhaleCoSMIC 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 V&V, testing & certification of synthesized assembly & deployment

21 Aniruddha GokhaleCoSMIC 21 Challenge 2: Configuring Container Policies 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 High priority Medium priority Low priority CONTEXT

22 Aniruddha GokhaleCoSMIC 22 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 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

23 Aniruddha GokhaleCoSMIC 23 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 Challenge 2: Configuring Container Policies SOLUTION

24 Aniruddha GokhaleCoSMIC 24 Challenge 2: Configuring Container Policies High priority 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 server object management middleware

25 Aniruddha GokhaleCoSMIC 25 Challenge 2: Configuring Container Policies High priority METRICS Determine expressive power and flexibility of platform independent models Savings in effort to map to specific platforms Impact on testing, V&V costs => savings in total ownership costs

26 Aniruddha GokhaleCoSMIC 26 Challenge 3: Configuring Middleware End-to-End I/O Subsystem M/W Bus SkeletonStub 201051201051 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 CONTEXT

27 Aniruddha GokhaleCoSMIC 27 Challenge 3: Configuring Middleware End-to-End I/O Subsystem M/W Bus SkeletonStub 201051201051 PROBLEMS 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

28 Aniruddha GokhaleCoSMIC 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 Aniruddha GokhaleCoSMIC 29 Challenge 3: Configuring Middleware End-to-End 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

30 Aniruddha GokhaleCoSMIC 30 Challenge 4: End-to-end QoS Provisioning & Enforcement 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

31 Aniruddha GokhaleCoSMIC 31 Challenge 4: End-to-end QoS Provisioning & Enforcement 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

32 Aniruddha GokhaleCoSMIC 32 Challenge 4: End-to-end QoS Provisioning & Enforcement 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

33 Aniruddha GokhaleCoSMIC 33 Middleware Applications Operating System Interceptor Endsystem Local Resource Manage- ment Infrastructure Middleware Distribution Middleware Common Services Domain-Specific Services Challenge 4: End-to-end QoS Provisioning & Enforcement 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 Develop model weaver Develop generators

34 Aniruddha GokhaleCoSMIC 34 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

35 Aniruddha GokhaleCoSMIC 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 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 Model Driven Approach to: www.dre.vanderbilt.edu/~gokhale/cosmic.html

36 Aniruddha GokhaleCoSMIC 36 Vanderbilt DRE DOC Group Capabilities 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 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 Architecture

37 Aniruddha GokhaleCoSMIC 37 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

38 Aniruddha GokhaleCoSMIC 38 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/ Additional Information


Download ppt "CoSMIC: A Model Driven Middleware for Provisioning Large-scale Distributed Real-time and Embedded Systems Dr. Aniruddha Gokhale"

Similar presentations


Ads by Google