Successful global networks, such as the Internet and the phone system, derive a substantial part of their value from their ability to interoperate. Achieving this interoperability requires standardization. Unfortunately, the pace of evolution in current networks is severely limited by the standardization process. For example, conservatively it takes 6-8 years for new versions of IP to move from the IETF, to Cisco, and finally to the ISPs. In this same time the underlying technology of the network will improve drastically. For example, we can expect CPU speeds to increase by at least an order of magnitude.
To increase the pace of network evolution to match that of the underlying technology a fundamental change in the level of abstraction at which interoperability takes place is required. We propose that the network and its infrastructure itself be made programmable and that the point of standardization be the programmable interface. This change will allow new protocols to be deployed as rapidly as technology changes. It will also greatly enhance the flexibility of these protocols and enhance our ability to experiment with new protocols. This is no less than a fundamental rethinking of the basic ideas of packet switched networks, replacing Store-and-Forward with Store-Compute-and-Forward.
There are obvious security, safety, and performance concerns with using the network infrastructure as a collection of general-purpose computers and with allowing these computers be programmed remotely. Addressing these concerns will require advances in networking, security, and the theory, design, and implementation of programming languages.
To address these issues concretely, we are building a programmable network switch, SwitchWare. This prototype will allow us to experiment with the networking and programming language design and implementation issues. Possibly more importantly, it will help us derive a realistic formal model of the infrastructure of a programmable network. Such an understanding is essential if progress is to be made on the theoretical issues in security and programming languages. My talk will discuss our preliminary work on SwitchWare.
This is joint work with Dave Farber, Carl Gunter and Scott Nettles of Penn, and Dave Sincoskie and Mark Segal of Bellcore.
Johnanthan M. Smith
University of Pennsylvania
Submit a summary of this lecture to the EE380 mailbot.