Object-Oriented QoS for C2 Adaptivity and Evolvability
(Position Paper)

DARPA Workshop on Security Technology for Next-Generation C2 Systems
Institute for Defense Analyses, Alexandria, VA
July 29-30, 1996

Dr. David E. Bakken
BBN Systems and Technologies
10 Moulton Street MS 6/3D
Cambridge, MA 02138 USA
dbakken@bbn.com
(See http://www.bbn.com/offerings/dcntn/dcntn.html)

Introduction

The DoD's requirements and expectations for US military capabilities into the next century require very aggressive innovation. In the future DoD will be faced with scenarios involving more missions using smaller forces, and will need to rapidly adapt to new threats. As a result, future C2 systems will be required to be much more adaptable at runtime to unforeseen circumstances and be able to evolve over time to perform new missions. Software is already a critical part of today's C2 systems, and will necessarily be even more important in tomorrow's because it is malleable, and thus has the potential to allow the system to change to meet unanticipated future requirements.

Issues in Adaptivity and Evolvability for Next-Generation C2 Systems

In our view, middleware systems must go beyond today's state of the art to enable C2 systems to meet future challenges. We consider the following points essential for this to happen:

Integrating these non-functional aspects requires a way to organize part of an architecture, a way to integrate disparate mechanisms for security and other properties which are provided by many sources, and a non-functional (QoS) API which allows requirements to be relaxed under certain conditions so the C2 system can make the most appropriate tradeoffs for the current conditions to provide the best adaptivity and resource usage possible.

Software engineering for systems as complex as C2 systems is inherently hard, harder still since security must be provided, and will be even harder if performance and availability and other aspects are to be adequately handled. We thus need to get a handle on how to organize these properties in a software engineering environment which C2 middleware must provide or else C2 systems will not be able to evolve to meet future threats.

Quality of Service for CORBA Objects

Overview

Quality of Service for CORBA Objects (QuO) is middleware which offers a CORBA-compliant API for system properties such as network performance, availability, security, etc., to augment those available for specifying the functional aspects of an application interface [ZBS97, BSZ96]. It was developed specifically with the QoS requirements of wide-area, C2-like systems in mind, based on our group's long experience in developing and deploying similar systems over the wide area, as well as creating and supporting object-oriented middleware to develop them with. QuO's salient features are:

QuO and Survivability

A recent DARPA study, "Survivable Distributed Information Systems" [ARPA95] outlined a vision of a "system of systems" with the following elements:
  1. There will be a process to relate local properties to system-wide properties.
  2. Critical properties of systems will be derived by ensuring robustness properties of their components.
  3. Component interfaces will be augmented to include assumptions, guarantees, properties as well as functional spec.
  4. Per-component cost/benefit tradeoffs.

The QuO architecture was developed in 1994 and early 1995 to meet these challenges, with the first emphasis on network performance with adaptivity. Pending QuO work will meet these challenges along the availability dimension in the following manner:

  1. We are extending the existing QoS for Objects (QuO) technology developed at BBN to deal with availability, under a pending BAA 96-07 project to be managed by Dr. Gary Koob and teaming with the two groups mentioned below. We will use the Horus group communication substrate [vRBM96] developed by Prof. Ken Birman, Dr. Robbert van Renesse, and colleagues at Cornell University under DARPA sponsorship as part of the implementation, and modify Horus to better operate over a WAN. Finally, we will use existing techniques and tools for performability analysis developed by Prof. Bill Sanders and colleagues at the University of Illinois [SOQ+95] to do predictive and corroborative analysis, and extend these techniques to support group communication in synchrony with the development activity as a companion analysis and prediction capability to extend the work to unimplemented, non-measurable situations.
  2. We will use a Horus group communication protocol stack derived from the application's end-to-end requirements specified using QuO and its companion modeling techniques.
  3. QuO's CORBA-compliant API will augment the functional specification for a component (specified by IDL) from its current emphasis on network performance to include availability.
  4. QuO's API allows different non-functional properties to be traded off based on the current operating environment, the existing resources, and the current mode of the application.

We hope to begin a similar endeavor with security properties in the near future, and other properties in medium term.

References

[ARPA95] ARPA, "Survivable Distributed Information Systems", 1995 ISAT Defensive Information Warfare Summer Study.

[BSZ96] David E. Bakken and Richard E. Schantz and John A. Zinky, QoS Issues for Wide-Area CORBA-Based Object Systems, in Proceedings of the Second International Workshop on Object-Oriented Real-Time Dependable Systems (WORDS 96), IEEE, Laguna Beach, California, February, 1996.

[SOQ+95] W. H. Sanders and W. D. Obal and M. A. Qureshi and F. K. Widjanarko, The ULTRASAN Modeling Environment, Performance Evaluation Journal, Special Issue on Tools for Performance Evaluation, vol. 1995. See also URL http://www.crhc.uiuc.edu.

[vRBM96] Robbert van Renesse and Kenneth P. Birman and Silvano Maffeis, Horus: A Flexible Group Communication System, Communications of the ACM, April 1996. See also URL http://www.cs.cornell.edu/Info/Projects/HORUS.

[ZBD97] John A. Zinky and David E. Bakken and Richard E. Schantz, Architectural Support for Quality of Service for CORBA Objects, Theory and Practice of Object Systems (TAPOS), January 1997, to appear. See also URL http://www.bbn.com/offerings/dcntn/dcntn.html.