140 likes | 159 Views
Expert Topic for 1770. QoS-Enabled Middleware. Content. Introduction Key Technical issues for DRE Component Middleware Limitation of DOC Static QoS Provisioning Dynamic QoS Provisioning Conclusion. Introduction. COTS (Commercial off-the-shelf) middlewares: CORBA, RMI, COM+
E N D
Expert Topic for 1770 QoS-Enabled Middleware Reza Eftekhari
Content • Introduction • Key Technical issues for DRE • Component Middleware • Limitation of DOC • Static QoS Provisioning • Dynamic QoS Provisioning • Conclusion Reza Eftekhari
Introduction • COTS (Commercial off-the-shelf) middlewares: CORBA, RMI, COM+ • Business-oriented QoS requirements: • Data persistence, confidentiality, and transactional support. • DRE (Distributed Real-time Embedded) systems: • Processor allocation, network latency, jitter, bandwidth Reza Eftekhari
Key Technical issues for DRE • Reducing the complexity of managing large-scale DRE software • Component middleware • Real-time QoS requirements • Statically: task prioritization, communication bandwidth reservation • Dynamically: runtime reallocation reprioritization for handling bursty CPU load. Reza Eftekhari
Component Middleware • Reusable services, create applications rapidly • CORBA Component Model CCM • Interfaces for collaboration • Component strategies via metadata (XML) • Persistence • Event notification • Transaction • Load balancing • Security Reza Eftekhari
Limitation of DOC • DOC (Distributed Object Computing): • Distributed computing + Object-oriented design • CORBA 2.x (DOC middleware standard) limitations: • Lack of functional boundaries • Lack of generic server standards • Lack of software configuration and deployment standards Reza Eftekhari
Component Middleware addresses DOC limitations • Virtual boundary around app component, well-defined interfaces • Standard container mechanism, generic component servers • Infrastructure to assemble, package, deploy CORBA Component Model CCM Reza Eftekhari
Limitations of Component Middleware for DRE • End-to-end QoS provisioning • Many interacting components • Component server for some resources (thread pools) • Component implementation not right level for QoS provision • Conflicting policies: high throughput, low latency • End-to-end QoS context a priori Solution: Separating programming and QoS concerns • Functional paths: flows of information • QoS systemic paths: end-to-end interaction, failure detection, recovery Reza Eftekhari
Static QoS Provisioning • Fixed set of QoS demand • Tightly bounded predictability for system functionality • Simplest solution available + QoS provisioning integral part of component + Decouple QoS provisioning from component functionality • Aspect-oriented techniques • Crosscut multiple interacting components, end-to-end QoS behavior Reza Eftekhari
Static QoS Provisioning with CIAO • QoS-enable implementation of CCM • Extends TAO (The ACE ORB), support component, end-to-end QoS at system assembly • Application assembly descriptor • QoS-enabled containers • CPU resources: priority models, priority levels • Communication resources: reserving and allocating communication resources, RSVP protocol Usage: • decouple QoS provisioning functionality • Compose static QoS provisioning capabilities into the application via the component assembly and deployment phases Reza Eftekhari
Dynamic QoS Provisioning • Allocation and management of resources at runtime • Events triggers reevaluation and reallocation of resources Dynamic QoS middleware capabilities: • Monitor DRE system, detect changes • Adapt to change, adjust the resource usage Dynamic QoS abstractions and mechanism for DRE systems • Design formalisms: level of service, measured QoS • Runtime capabilities: adapt behavior • Management mechanisms: dynamic control of resources Reza Eftekhari
QuO (Quality Object) Framework Allows DRE developers to specify: • QoS requirements • System elements that must be monitored and controlled to measure and provide QoS • Behavior for adapting to QoS variations that occur at runtime. QuO needs: • Contracts: level of service • Delegates: local proxies for remote components • System Condition objects: interfaces to resources, mechanisms, and ORBs Reza Eftekhari
Conclusion • DRE app QoS: predictability, latency, and dependability • DRE app historically been custom-programmed • expensive to build and maintain, adapt new functional needs • tight coupling between custom DRE software modules • increases the time and effort required to develop • QoS provisioning crosscuts multiple layers in applications • end-to-end enforcement • Component QoS-enable middleware • Static, dynamic provisioning • www.dre.vanderbilt.edu/CIAO • quo.bbn.com Reza Eftekhari
Discussion • End-to-end QoS in IP networks Reza Eftekhari