![]() |
Network Systems Group Princeton University Publication Info |
Scheduling Computations on a Software-Based Router
Xiaohu Qie
Andy Bavier
Larry Peterson
Scott Karlin
Recent efforts to add new services to the Internet have led to increased interest in software-based routers. This is because such routers are easily extended to support new and changing services. This paper describes our experiences implementing a software-based router, with a particular focus on the main difficulty we encountered: how to schedule the router's CPU cycles. This scheduling decision is complicated by the desire to differentiate the level of service given different packet flows, which leads to two fundamental conflicts: (1) assigning processors shares in a way that keeps the processes along the forwarding path in balance while meeting QoS promises, and (2) adjusting the level of batching in a way that minimizes overhead while meeting QoS promises.
Proceedings of SIMETRICS 2001.
Boston, MA, June 2001.