Quality of service (QoS) provisioning for dynamically composable software elements in a programmable router has not received much attention. We present a router platform that supports extensible and configurable routing elements, and provides them with access to given resource allocations. Scheduling issues for these elements are discussed: (1) flow-based scheduling, (2) the preemptibility of a pipeline of elements, (3) CPU conservation for idle elements, (4) the CPU balance between input, output, and processing elements and its effects on buffer provisioning, and (5) performance interactions between the packet forwarding plane and the service extension control plane. P. Zaroo is with Vmware, Palo Alto, CA; P. Gopalan is with Mazu Networks, Cambridge, MA (work done while S. C. Han, P. Zaroo, and P. Gopalan are graduate students at Purdue University); D. K. Y. Yau and Y. Dong are with the Department of Computer Sciences, Purdue University, West Lafayette, IN 47907; J. C. S. Lui is wit...
Seung Chul Han, Puneet Zaroo, David K. Y. Yau, Yu