CERT
Back to [34]   [35]    Forwards to [36]



Massive Games of Artificial Life on the Internet:
A Testbed for Research on Survivability Architectures

Position Paper Submitted to the Information Survivability Workshop 1998

July 15, 1998

Kevin J. Sullivan
Department of Computer Science
University of Virginia
Charlottesville, VA 22903
E-mail: sullivan@Virginia.EDU
Tel. (804) 982-2206
FAX: (804) 982-2214
URL: http://www.cs.virginia.edu

Gary McGraw
Reliable Software Technologies Corporation
21515 Ridgetop Circle, Suite 250
Sterling, VA 20166
E-mail: gem@rstcorp.com
Tel. (703) 404-9293
FAX: (703) 494-9295
URL: http://www.rstcorp.com

Introduction

Information survivability is not a new idea. Neither is it new to look to biology for metaphors on which to base radical new architectures. In the 1960's, Baran though to combine path-redundancy and packet-switching in an architecture for communications systems that could survive massive disruption. The problem emerged from the threat of nuclear attack; but the idea came in the form of a metaphor: the richly interconnected structure of the human brain provided significant resiliency for critical functioning to continue in the face of injuries. The ARPANET confirmed Baran's early insights.

What is new in the 1990s is the vastly expanded role of software as a key, non-physical element of critical infrastructure systems; the opening of systems through networks and also outsourcing of code development; and thus a new kind of threat: information attack. New architectures are needed to enable critical systems to continue to deliver critical functions in the face of various disruptions to their software intensive elements. The question could be asked: What are the analogs of path-redundancy and packet-switching for the new class of smart but interconnected and vulnerable software-intensive systems?

In this paper, we sketch an architecture that we think might provide a useful testbed for research on the survivability of software-intensive systems-an architecture based on the notion of artificial life (AL). We are not endorsing AL as a mechanism for building real systems-though closely related ideas in the area of soft complexity are actually pursued, notably for designing control systems for the deregulated electric power grid [1]. Rather, we seek to exploit AL (e.g., "the game of life") as an extremely simple and light-weight model that nevertheless exhibits key features of complex systems of systems, namely autonomous local control, local interconnection of autonomous nodes, a high degree of decentralized decision-making, and clear emergent global properties. The problem of monitoring and controlling large-scale, highly decentralized, networked AL systems thus models that of monitoring and controlling real infrastructure systems of systems.

Our notion, then, is to execute "games of life" on large-scale, decentralized, networked systems in order to provide a dynamic model of actual or future infrastructure systems, and to use that executing "game" as a target for research in monitoring and control for survivability purposes. An intriguing possibility is that by enabling people everywhere to particpate in such "games" we might foster the creation of distributed simulations with a number of users well beyond what would otherwise be possible. That possibility in turn is interesting because one of the key changes facing infrastructure systems is dramatic increases in numbers of users, e.g., as power generation and distribution are deregulated. Perhaps our concept would lead to a testbed in which the global consequences of many "users" interacting could be investigated. With modification to the rules of the game we might even be able to explore cascading other failure modes of complex systems.

Concept and Design Sketch

The game of life is based theory of cellular automata, the mathematical foundations of which have been established by Wolfram and others. We are interested not in the game per se, but in its instantiation within the computational and communications fabric of the Internet and World-Wide Web. We envision "games" occurring as cells are created as the result of executions of cell programs on computers attached to the Internet. Initially we will generate the games in our local networks, but we hope to harness the curiosity of the public to realize massive game instances in later stages of the work. To that end, we will investigate implementing cell programs as Java applets or something similar. The idea is to enable anyone anywhere to enter a game by downloading and executing a cell program. A game evolves as cells enter the game; interact locally to produce globally emergent behaviors; and die as the result of program termination, computer crashes, etc.

We see massively distributed instances of such "games" as an attractive driver of work on critical technical and research issues, such as scalable communication, reconfiguration of game topologies in the face of loss of cells, and hierarchical monitoring and control of emergent behaviors. As cells are augmented with non-trivial capabilities, these games might even become useful, e.g., for network monitoring or factoring large primes.

The remainder of this abstract comprises three sections. First, we define three objectives for the proposed work. Second, we identify requirements that will drive the elaboration of our vision. Third, we describe our light-weight rapid prototyping strategy. We discuss how the work is relevant to Information Survivability throughout the paper.

Objectives

We believe that our systems concept can address three important objectives, which we now enumerate and comment upon briefly.

Requirements

Our proposed system is meant to capture essential aspects of Information Survivability but in a highly abstracted form to facilitate exploration and experimentation.

Strategy

Our strategy is to focus on key abstractions without getting dragged down by application-specific detail. We want a framework for experimentation in which we can move quickly to develop, evaluate and demonstrate new survivability concepts and issues. We will thus take an incremental, spiral-based approach to developing this simulation capability. We are focused getting on maximum leverage for minimum design investment, within an architectural framework designed not only to model the key features of real systems, but also to accommodate rapid evolution of our concepts and iterative delivery of developed capabilities to researchers in the field.

We do not intend to compete head-on with researchers in other technical disciplines, such as fault-tolerance, network protocols, or computer security. Our goal is to build a novel framework that captures key features of distributed infrastructure applications and that can serve as an interesting, very large-scale testbed for exploration and evaluation of new architectural approaches to scalable survivability monitoring and control of next century infrastructure systems of systems. If this work were supported, we would expect to make research contributions in the areas of software architectures and control system theoretic approaches. For more on the control systems perspective, see the paper by Sullivan et al. in this same Workshop [2].

Bibliography

[1]
Wildberger, "Complex Adaptive System: Concepts and Application to Electric Power Distribution," IEEE Control Systems, January 1998.
[2]
Sullivan, Knight, Du and Geist, "Survivability Control Systems," this workshop.



Back to the Table of Contents
Back to [34]   [35]    Forwards to [36]