Towards Practical Programmable Packets

Recent research in active networking has motivated the use o f programmable, oractive, packets in which a traditional packet header is replaced by a program that controls a packet’s actions in t he network. Despite the popularity of this idea in the active netwo rking community, it has not taken hold in general. We claim that thi s is because the current active packet systems are not sufficient ly practical. Our goal is to consider why current systems are not practical and to propose directions that will facilitate movement towards practical programmable packets. To this end, we first establ i h a framework that defines what it means to be “practical”. Next, we look at the existing “first-generation” active packet syste ms, paying particular regard to the key aspects of our framework. This s urvey is one of the major contributions of this paper. Finally, we d iscuss the overall lessons we draw from the first generation systems and present a view of what “second-generation” systems should c onsist of. We illustrate our views on second-generation systems by using SNAP (Safe Networking with Active Packets), a second-gener ation system we are currently exploring.

[1]  Christian F. Tschudin,et al.  A Self-Deploying Election Service for Active Networks , 1999, COORDINATION.

[2]  R. D. Rockwell,et al.  Smart Packets for active networks , 1999, 1999 IEEE Second Conference on Open Architectures and Network Programming. Proceedings. OPENARCH '99 (Cat. No.99EX252).

[3]  Murhimanya Muhugusa IMPLEMENTING DISTRIBUTED SERVICES WITH MOBILE CODE: THE CASE OF THE MESSENGER ENVIRONMENT , 1998 .

[4]  Jon Postel,et al.  Internet Protocol , 1981, RFC.

[5]  Stephen E. Deering,et al.  Internet Protocol, Version 6 (IPv6) Specification , 1995, RFC.

[6]  Scott Nettles,et al.  The measured cost of copying garbage collection mechanisms , 1997, ICFP '97.

[7]  Angelos D. Keromytis,et al.  A secure PLAN , 1999, IEEE Trans. Syst. Man Cybern. Part C.

[8]  John V. Guttag,et al.  Using Network-Level Support to Improve Cache Routing , 1998, Comput. Networks.

[9]  Frank Yellin,et al.  The Java Virtual Machine Specification , 1996 .

[10]  Christian F. Tschudin,et al.  The Messenger Environment MØ - A Condensed Description , 1996, Mobile Object Systems.

[11]  Christian F. Tschudin,et al.  An Active Networks Overlay Network (ANON) , 1999, IWAN.

[12]  Scott Shenker,et al.  Integrated Services in the Internet Architecture : an Overview Status of this Memo , 1994 .

[13]  David Wetherall,et al.  Improving the performance of distributed applications using active networks , 1998, Proceedings. IEEE INFOCOM '98, the Conference on Computer Communications. Seventeenth Annual Joint Conference of the IEEE Computer and Communications Societies. Gateway to the 21st Century (Cat. No.98.

[14]  Xavier Leroy,et al.  Security properties of typed applets , 1998, POPL '98.

[15]  Robin Milner,et al.  Definition of standard ML , 1990 .

[16]  Carl A. Gunter,et al.  PLANet: an active internetwork , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[17]  Michael Hicks,et al.  Chunks in PLAN: Language Support for Programs as Packets , 1999 .

[18]  Stephen J. Garland,et al.  Active reliable multicast , 1998, Proceedings. IEEE INFOCOM '98, the Conference on Computer Communications. Seventeenth Annual Joint Conference of the IEEE Computer and Communications Societies. Gateway to the 21st Century (Cat. No.98.

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

[20]  Tim Owen,et al.  Designing a Programming Language for Active Networks , 1998 .

[21]  David K. Gifford,et al.  Concurrent compacting garbage collection of a persistent heap , 1993, SOSP '93.

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

[23]  Lixia Zhang,et al.  Resource ReSerVation Protocol (RSVP) - Version 1 Functional Specification , 1997, RFC.

[24]  David Wetherall,et al.  Active network vision and reality , 1999, Symposium on Operating Systems Principles.

[25]  Stephen J. Garland,et al.  PAN: a high-performance active network node supporting multiple mobile code systems , 1999, 1999 IEEE Second Conference on Open Architectures and Network Programming. Proceedings. OPENARCH '99 (Cat. No.99EX252).

[26]  David Wetherall,et al.  Active network vision and reality: lessons from a capsule-based system , 1999, OPSR.

[27]  Zheng Wang,et al.  An Architecture for Differentiated Services , 1998, RFC.

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

[29]  Xavier Leroy,et al.  Security properties of typed applets , 1998, POPL '98.

[30]  David Wetherall,et al.  Introducing new Internet services: why and how , 1998, IEEE Netw..

[31]  Carl A. Gunter,et al.  PLAN: a packet language for active networks , 1998, ICFP '98.

[32]  Guy L. Steele,et al.  The Java Language Specification , 1996 .

[33]  Angelos D. Keromytis,et al.  A secure active network environment architecture: realization in SwitchWare , 1998, IEEE Netw..

[34]  Jonathan M. Smith,et al.  Alien: a generalized computing model of active networks , 1998 .

[35]  Jonathan T. Moore,et al.  Safe and Efficient Active Packets , 1999 .

[36]  Erik L. Nygren,et al.  The design and implementation of a high-performance active network node , 1998 .

[37]  Deyu Hu,et al.  Implementing Multiple Protection Domains in Java , 1998, USENIX Annual Technical Conference.