Scheduling computations on a software-based router

  • Authors:
  • Xiaohu Qie;Andy Bavier;Larry Peterson;Scott Karlin

  • Affiliations:
  • Department of Computer Science, Princeton University, Princeton, NJ;Department of Computer Science, Princeton University, Princeton, NJ;Department of Computer Science, Princeton University, Princeton, NJ;Department of Computer Science, Princeton University, Princeton, NJ

  • Venue:
  • Proceedings of the 2001 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recent efforts to add new services to the Internet have increased the interest in software-based routers that are easy to extend and evolve. 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. The scheduling decision is complicated by the desire to differentiate the level of service for different packet flows, which leads to two fundamental conflicts: (1) assigning processor 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.