PLAN: A packet language for active networks

Citation
M. Hicks et al., PLAN: A packet language for active networks, ACM SIGPL N, 34(1), 1999, pp. 86-93
Citations number
28
Categorie Soggetti
Computer Science & Engineering
Journal title
ACM SIGPLAN NOTICES
ISSN journal
15232867 → ACNP
Volume
34
Issue
1
Year of publication
1999
Pages
86 - 93
Database
ISI
SICI code
1523-2867(199901)34:1<86:PAPLFA>2.0.ZU;2-0
Abstract
PLAN (Packet Language for Active Networks) is a new language for pro,scams that form the packets of a programmable network. These programs replace the packet headers (which can be viewed as very rudimentary programs) used in current networks. As such, PLAN programs are lightweight and of restricted functionality. These limitations are mitigated by allowing PLAN code to cal l node-resident service routines written in other, more powerful languages. This two-level architecture, in which PLAN serves as a scripting or 'glue' language for more general services, is the primary contribution of this pa per. We have successfully applied the PLAN programming environment to imple ment an IP-free internetwork. PLAN is based on the simply typed lambda calculus andprovides a restricted set of primitives and datatypes. PLAN defines a special construct called a chunk used to describe the remote execution of PLAN programs on other nodes . Primitive operations on chunks are used to provide basic data transport i n the network and to support layering of protocols. Remote execution can ma ke debugging difficult, so PLAN provides strong static guarantees to the pr ogrammer, such as type safety. A more novel property aimed at protecting ne twork availability is a guarantee that PLAN programs use a bounded amount o f network resources.