Quality Objects Qu O Adaptive Management and Control
Quality Objects (Qu. O): Adaptive Management and Control Middleware for End-to-End Qo. S Craig Rodrigues, Joseph P. Loyall, Richard E. Schantz BBN Technologies/GTE Technology Organization Cambridge, Massachusetts, USA http: //www. dist-systems. bbn. com/tech/Qu. O/ OMG’s First Workshop on Real-Time and Embedded Distributed Object Computing July 24 -27, 2000 Falls Church, Virginia, USA 1 BBN Technologies
As real-time applications become more distributed and complex, their needs for knowledge and control increase. • Real-time applications always require resource management and allocation. • Traditionally, resources (CPU, memory, I/O) are controlled at runtime but allocated at design time. • More complex applications and environments require adaptive behavior to deal with uncertainty. • Distributed RT applications must deal with an unpredictable network, as well as control environment. 2 BBN Technologies
Resource Allocation and Control are Common to RT Applications - Solve Problem Once with Middleware. • Adaptive resource allocation must be supported by all applications in a system. • Resource management requires low-level control, which ties applications to a specific platform. • Adaptive applications must support operation with variable available resources. • Applications should monitor delivered Qo. S to determine current resource requirements. 3 BBN Technologies
Distributed object middleware has emerged to solve heterogeneity and distribution problems Collaborative Planning Simulation Applications Workflow IDL IDL Distributed Object Middleware Host 1 Impl. Host 2 Impl Hosts/Systems 4 Middleware makes programming distributed applications easier • Standard programming interfaces hide platform and system dependencies • Standard protocols, e. g. , message formats, allow applications on different systems to interoperate • Middleware provides higher level, application oriented programming building blocks BBN Technologies
Distributed object middleware with Qo. S extensions is a powerful abstraction layer on which to build applications Collaborative Simulation Planning Work. Flow CORBA + Qu. O TCP/IP Qo. S RSVP Multicast Ethernet ATM 5 Applications for geographically dispersed, heterogeneous environments Distributed objects are the first abstraction layer that unifies CPU, storage, and communications This interface needs to be hidden from applications • It is too complicated • It is changing too quickly BBN Technologies
Qu. O adds Qo. S control and measurement into the DOC remote method call 6 BBN Technologies
Client calls delegate, which triggers contract evaluation and chooses behavior based upon current regions Client Code Client 1) Client calls delegate Callback 2) Delegate evaluates contract Connect Reference 6 1 11 Qu. O Kernel 2 Delegate Contract Factory 5 7 10 Proxy 9 ORB Network Control Proxy Del. Object 7 SC SC Qu. O Kernel Contract 6) Region transitions trigger callbacks 7) Current region is returned Manager ORB Proxy Syscond ORB 4) Contract snapshots value of system conditions 5) Contract is re-evaluated 4 3 8 3) Measurement system conditions are signaled 8) If Qo. S is acceptable, delegate passes the call to the remote object 9) Remote object returns value 10) Contract is re-evaluated. . . 11) Return value given to client BBN Technologies
The Qu. O designer provides contracts, system condition objects, and delegates in the application • Contracts summarize the possible states of Qo. S in the system and behavior to trigger when Qo. S changes – Regions can be nested, representing different epochs at which Qo. S information becomes available, e. g. , negotiated regions represent the levels of service a client expects to receive and a server expects to provide, while reality regions represent observed levels of service – Regions are defined by predicates over system condition objects – Transitions specify behavior to trigger when the active regions change • System condition objects are used to measure and control Qo. S – Provide interfaces to system resources, client and object expectations, mechanisms, managers, and specialized ORB functions – Changes in system condition objects observed by contracts can cause region transitions – Methods on system condition objects can be used to access Qo. S controls provided by resources, mechanisms, managers, and ORBs • Delegates provide local state for remote objects – Upon method call/return, delegate can check the current contract state and choose behavior based upon the current state of Qo. S – For example, delegate can choose between alternate methods, alternate remote object bindings, perform local processing of data, or simply pass the method call or return through 8 BBN Technologies
Example Qu. O adaptive control of real-time event channel Consumer Supplier Delegate Contract Contract Delegate Event Channel • Filtering events to reduce period or to enforce priority • Changing event priorities • Changing event types 9 BBN Technologies
event channel service and Qu. O adaptation in Boeing’s WSO • • 10 Qu. O provides adaptation for ranges of soft RT task periods to enable fair scheduling Qu. O adapts tiling and quality of images to enable image delivery within its deadline TAO services messages and image transport between C 2 (AWACS) and F-15 components TAO real-time event channel and scheduler hard and soft RT tasks BBN Technologies
Qu. O adapts tile requests to meet image delivery deadline in the face of changing conditions • request higher Q level on next tile • finish early • request more bandwidth on next tile Image A • request higher priority • request lower Q level on next tile Image B 11 • notify application BBN Technologies
Further Directions • Continuing development of the Qu. O framework – Multiple contracts, layering of delegates, contracts on the client and the server side – More example applications, libraries of system condition objects – applying Qu. O concepts to other frameworks such as Java RMI 12 BBN Technologies
Conclusions • We have developed middleware that supports adaptable software that can measure and control changing system properties – Supports software that has critical resource needs and can be deployed in unpredictable WAN environments – Instrumentation, triggers and effects can be defined and employed in an application in a structured manner as opposed to ad-hoc exception handling – Enables the combination and trade-off of multiple Qo. S dimensions, e. g. , real-time, dependability and security • This is useful for distributed RT applications – Supports applications that can adapt to changing external environments – Supports application-level interfacing of resource managers 13 BBN Technologies
Further information • Qu. O http: //www. dist-systems. bbn. com/tech/Qu. O • To get the Qu. O Toolkit software, send e-mail to quo-help@bbn. com 14 BBN Technologies
- Slides: 14