Compiling PLAN to SNAP

PLAN( Packet Language for Active Networks) [3] is a highly flexible and usable active packet language, whereas SNAP (Safe and Nimble Active Packets) [12] offers significant resource usage safety and achieves much higher performance compared to PLAN, but at the cost of flexibility and usability. Ideally, we would like to combine the good properties of PLANw ith those of SNAP. We have achieved this end by developing a compiler that translates PLANi nto SNAP. The compiler allows us to achieve the flexibility and usability of PLAN, but with the safety and efficiency of SNAP. In this paper, we describe both languages, highlighting the features that require special compilation techniques. We then present the details of our compiler and experimental results to evaluate our compiler with respect to code size.

[1]  Stefan Covaci Proceedings of the First International Working Conference on Active Networks , 1999 .

[2]  Dan Grossman,et al.  TALx86: A Realistic Typed Assembly Language∗ , 1999 .

[3]  William A. Arbaugh,et al.  The SwitchWare active network architecture , 1998, IEEE Netw..

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

[5]  Scott Nettles,et al.  Dynamic software updating , 2001, PLDI '01.

[6]  Scott Nettles,et al.  Practical programmable packets , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[7]  Scott M. Nettles,et al.  Practical active packets , 2002 .

[8]  Paul Menage RCANE: A Resource Controlled Framework for Active Network Services , 1999, IWAN.

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

[10]  Giuseppe Di Fatta,et al.  Adaptive routing in active networks , 2000 .

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

[12]  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.

[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]  Craig Partridge,et al.  Smart packets: applying active networks to network management , 2000, TOCS.

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

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

[17]  J. Guttag,et al.  ANTS : A Toolkit for Building and DynamicallyDeploying Network , 1998 .

[18]  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).