The design and implementation of a high-performance active network node

A capsule-oriented active network transports capsules containing code to be executed on the network nodes that they pass through. This approach makes networks more extensible by allowing new networking protocols to be deployed and used without any changes to the underlying network infrastructure. This thesis project describes the design, implementation, and evaluation of a high-performance practical active network node that can serve as a testbed for research into active network performance and resource management issues. Nodes provide resources to executing capsules containing Intel ix86 object code. Although the current implementation does not yet provide safety or interoperability, the results of experiments performed on the system implemented for this thesis indicate that an active network architecture may be able to provide signi cant exibility while only incurring a small performance overhead relative to traditional networks. Thesis Supervisor: M. Frans Kaashoek Title: Associate Professor

[1]  Brian N. Bershad,et al.  Extensibility safety and performance in the SPIN operating system , 1995, SOSP.

[2]  John V. Guttag,et al.  ANTS: a toolkit for building and dynamically deploying network protocols , 1998, 1998 IEEE Open Architectures and Network Programming.

[3]  Giovanna Di Marzo Serugendo,et al.  The Messenger paradigm and its implications on distributed systems , 1995 .

[4]  Armando P. Stettner The design and implementation of the 4.3BSD UNIX operating system , 1988 .

[5]  W. Richard Stevens,et al.  Unix network programming , 1990, CCRV.

[6]  David L. Tennenhouse,et al.  The ACTIVE IP option , 1996, EW 7.

[7]  Dan S. Wallach,et al.  Java security: from HotJava to Netscape and beyond , 1996, Proceedings 1996 IEEE Symposium on Security and Privacy.

[8]  Jerome H. Saltzer,et al.  End-to-end arguments in system design , 1984, TOCS.

[9]  John H. Hartman,et al.  Liquid Software: A New Paradigm for Networked Systems , 1996 .

[10]  Martín Abadi,et al.  Authentication in the Taos operating system , 1994, TOCS.

[11]  Dawson R. Engler,et al.  ASHs: Application-Specific Handlers for High-Performance Messaging , 1996, SIGCOMM.

[12]  W. David Sincoskie,et al.  SwitchWare: Accelerating Network Evolution (White Paper) , 1996 .

[13]  Dawson R. Engler,et al.  DPF: Fast, Flexible Message Demultiplexing Using Dynamic Code Generation , 1996, SIGCOMM.

[14]  Eddie Kohler,et al.  PROLAC: A LANGUAGE FOR PROTOCOL COMPILATION , 1998 .

[15]  Dawson R. Engler,et al.  VCODE: a retargetable, extensible, very fast dynamic code generation system , 1996, PLDI '96.

[16]  Marianne Shaw,et al.  Active bridging , 1997, SIGCOMM '97.

[17]  Michael Steffen Oliver Franz,et al.  Code_generation On_the_fly: a Key to Portable Software , 1994 .

[18]  T. Anderson,et al.  Eecient Software-based Fault Isolation , 1993 .

[19]  D. H. Bartley,et al.  Revised4 report on the algorithmic language scheme , 1991, LIPO.

[20]  Larry L. Peterson,et al.  The x-Kernel: An Architecture for Implementing Network Protocols , 1991, IEEE Trans. Software Eng..

[21]  David Wetherall,et al.  Towards an active network architecture , 1996, CCRV.

[22]  Robert Wahbe,et al.  Efficient and language-independent mobile programs , 1996, PLDI '96.

[23]  Jens Zander,et al.  SOFTNET – an approach to high level packet communication , 1983 .

[24]  James A. Gosling,et al.  The java language environment: a white paper , 1995 .

[25]  G.J. Minden,et al.  A survey of active network research , 1997, IEEE Communications Magazine.

[26]  Dawson R. Engler,et al.  Exokernel: an operating system architecture for application-level resource management , 1995, SOSP.

[27]  George C. Necula,et al.  Safe kernel extensions without run-time checking , 1996, OSDI '96.

[28]  Kenneth L. Calvert,et al.  Implementation of an Active Networking Architecture , 1996 .

[29]  Robert Magnus,et al.  Linux Kernel Internals , 1996 .