
Active network technology envisions deployment of virtual execution environments within network elements, such as switches and routers, so that inhomogeneous 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 associated with specific network traffic. In order to provide intelligent 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 meaningfully expressing processing (i.e., CPU time) requirements in a platform-independent form.
The aim of this project is to propose a method to express the CPU time requirements of active network applications in a form that can be meaningfully interpreted among heterogeneous nodes in an active network in order to improve network management.
People | Meet the people working on this project. |
Documents | Consult the documents (technical reports, published and unpublished papers, presentations...) we produced. |
Links | Browse through our extensive collection of links on other Active Nets projects. |
Site Map | Direct access to all pages of this site. |
The following links will provide you with detailed information about our project objectives, realizations, results and issues.
Real examples will be provided along the way to amplify our explanations. If you're interested, you can examine some of the raw data collected on our test network. We also provide you with some useful scripts and programs to process the raw data and with the code of the active platforms and applications we used.
We propose to model active applications and active nodes and then to use a combination of those models to predict the CPU resources required by an application on any modeled node. Our proposition requires finely information about the behavior of active applications and the performance of nodes. To obtain this information, we had to slightly modify the Linux kernel. We evaluated the prediction accuracy of our models for different EEs, AAs and nodes. We have several ideas on how to improve this work.
We demonstrated how our models could prove useful to prevent malicious packets from consuming too much CPU resources. We also used our models to improve a network load predictor system.