Fair resource allocation in active networks
Vinod Ramachandran, Ravi Shankar Pandey, S.-H. Gary Chan · 2002
A packet scheduling scheme is an important component of a network node. The choice of a scheme dictates the allocation of network resources among contending flows of the network. In this paper we study packet scheduling in the context of active networks. In an active network, intermediate nodes, called active nodes, can perform customized computations on every packet. Programmability in active networks is achieved by having active packets carry either programs or references to programs that are injected into the active nodes offline. As each packet arrives at an active node, the node executes the program associated with the packet and then routes the packet to the next node. Traditionally, packet scheduling schemes are used to allocate a single resource fairly. This cannot be directly applied to active nodes because active nodes contain multiple resources, such as CPU and bandwidth. Moreover, these resources are inter-dependent. Hence, allocating one resource fairly does not entail allocating the other resources fairly. We describe a simple packet scheduling algorithm to allocate multiple resources fairly in an active node. Using simulations, we show that the algorithm effectively allocates both CPU and bandwidth resources fairly among the contending flows.