Expressing Meaningful Processing Requirements Among Heterogeneous Nodes in an Active Network
NATIONAL INST OF STANDARDS AND TECHNOLOGY GAITHERSBURG MD
Pagination or Media Count:
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.
- Computer Programming and Software