Expressing meaningful processing requirements among heterogeneous nodes in an active network

Abstract : Active Network technology envisions deployment of virtual execution environments within network elements, such as switches and routers. As a result, nonhomogeneous processing can be applied to network traffic associated with services, flows, or even individual packets. To use such a technology safely and efficiently, individual nodes must provide mechanisms to enforce resource limits. To provide effective enforcement mechanisms, each node must have a meaningful understanding of the resource requirements for specific network traffic. In Active Network nodes, resource requirements typically come in three categories: bandwidth, memory, and processing. Well-accepted metrics exist for expressing bandwidth (bits per second) and memory (bytes) in units independent of the capabilities of particular nodes. Unfortunately, no well-accepted metric exists for expressing processing (i.e., CPU time) requirements in a platform independent form. This paper investigates a method to express the CPU time requirements of Active Applications (similar to distributed, mobile agents) in a form that can be meaningfully interpreted among heterogeneous nodes in an Active Network. The model consists of two parts: a node model and an application model. For modeling applications, the paper describes and evaluates a semi-stochastic state-transition model intended to represent the CPU usage requirements of Active Applications. Using measurement data, the general model is instantiated for two Active Applications, ping and multicast. The model instances are simulated, and the simulation results are compared against real measurements. For both Active Applications, the simulated and measured CPU time usage compare within 5% for the mean and the 90th and 95th percentiles. The 99th percentiles compare within 7%. The paper also evaluates three different scaling factors that might be used to transform a model accurate on one node into terms that prove accurate on another node.

[1]  Craig Partridge,et al.  Smart packets: applying active networks to network management , 2000, TOCS.

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

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

[4]  Bernhard Plattner,et al.  A scalable high-performance active network node , 1999 .

[5]  Philipp Hoschka Compact and efficient presentation conversion code , 1998, TNET.

[6]  Eugene Miya,et al.  Machine Characterization Based on an Abstract High-level Language Machine , 1990, PERV.

[7]  R. Reiss Approximate Distributions of Order Statistics: With Applications to Nonparametric Statistics , 1989 .

[8]  Kevin L. Mills,et al.  Calibrating an Active Network Node , 2000 .

[9]  Robert Grimm,et al.  Application performance and flexibility on exokernel systems , 1997, SOSP.

[10]  K. Calvert,et al.  Architectural Framework for Active Networks Version 1 . 0 , 2022 .

[11]  David Wetherall,et al.  ANTS: Network Services Without the Red Tape , 1999, Computer.

[12]  Ben Wegbreit,et al.  Mechanical program analysis , 1975, CACM.

[13]  Jay Lepreau,et al.  The Flux OSKit: a substrate for kernel and language research , 1997, SOSP.

[14]  Richard M. Karp,et al.  A Note on the Applicaton of Graph Theory to Digital Computer Programming , 1960, Inf. Control..

[15]  James D. Foley,et al.  A Markovian model of the university of Michigan executive system , 1967, CACM.

[16]  Larry L. Peterson,et al.  Making paths explicit in the Scout operating system , 1996, OSDI '96.

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

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

[19]  Ken Kennedy,et al.  A static performance estimator to guide data partitioning decisions , 1991, PPOPP '91.

[20]  Gary J. Minden,et al.  Implementation of a prototype active network , 1998, 1998 IEEE Open Architectures and Network Programming.

[21]  Connie U. Smith,et al.  Performance Engineering of Software Systems , 1990, SIGMETRICS Perform. Evaluation Rev..

[22]  William Scott Bowie Towards a distributed architecture for os/360. , 1974 .

[23]  Boris Beizer Micro-analysis of computer system performance , 1978 .

[24]  G. Ramalingam Data flow frequency analysis , 1996, PLDI '96.

[25]  Jacques Cohen,et al.  Automating program analysis , 1988, JACM.

[26]  Brian A. Wichmann,et al.  A Synthetic Benchmark , 1976, Comput. J..

[27]  C. V. Ramamoorthy,et al.  Analysis of computational systems: Discrete Markov analysis of computer programs , 1965, ACM '65.

[28]  Alan Jay Smith,et al.  Analysis of benchmark characteristics and benchmark performance prediction , 1996, TOCS.

[29]  Mark A. Franklin,et al.  Computation of page fault probability from program transition diagram , 1974, CACM.

[30]  Reinhold Weicker,et al.  Dhrystone benchmark: rationale for version 2 and measurement rules , 1988, SIGP.

[31]  Reinhold Weicker,et al.  A detailed look at some popular benchmarks , 1991, Parallel Comput..

[32]  Ellen W. Zegura,et al.  An architecture for active networking , 1997, HPN.