Our goal is to demonstrate the feasibility of this approach by building and demonstrating a prototype Survivability Service consisting of all of the above capabilities except monitoring, which we assume will be developed elsewhere. We plan to propose the Survivability Service specification to the Object Management Group and to make the prototype available as a reference implementation. The following papers have been written over a period of approximately 18 months. As our understanding of the technology increased, both our terminology and design have been refined. This report describes the static properties of a survivable object abstraction that extends standard object models in several ways to allow objects and applications to be reconfigured to recover from or protect against failures.
Survivable objects are the basis for constructing survivable applications.
Both semantically identical and semantically similar transformations are possible under this model, which allows applications to continue to survive in degraded mode when system resources become unavailable due to attack or failure. This report describes the architecture of a Survivability Service that manages survivable objects and applications constructed using the survivable object abstraction. The Survivability Service is compatible with existing work in failure detection and classification, fault tolerance, and highly available systems. Portions of the Survivability Service are being prototyped as part of this project. This report describes recent research in service-level quality of service and the relationship between survivability and quality of service.