Processor Scheduler for Multi-Service Routers

  • Authors:
  • Ravi Kokku;Upendra Shevade;Nishit Shah;Ajay Mahimkar;Taewon Cho;Harrick Vin

  • Affiliations:
  • NEC Laboratories America, Inc.;The University of Texas at Austin, USA;The University of Texas at Austin, USA;The University of Texas at Austin, USA;The University of Texas at Austin, USA;The University of Texas at Austin, USA

  • Venue:
  • RTSS '06 Proceedings of the 27th IEEE International Real-Time Systems Symposium
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we describe the design and evaluation of a scheduler (referred to as Everest) for allocating processors to services in high performance, multi-service routers. A scheduler for such routers is required to maximize the number of packets processed within a given delay tolerance, while isolating the performance of services from each other. The design of such a scheduler is novel and challenging because of three domain-specific characteristics: (1) difficultto- predict and high packet arrival rates, (2) small delay tolerances of packets, and (3) significant overheads for switching allocation of processors from one service to another. These characteristics require that the scheduler be agile and wary simultaneously. Whereas agility enables the scheduler to react quickly to fluctuations in packet arrival rates, wariness prevents the scheduler from wasting computational resources in unnecessary context switches. We demonstrate that by balancing agility and wariness, Everest, as compared to conventional schedulers, reduces by more than an order of magnitude the average delay and the percentage of packets that experience delays greater than their tolerance. We describe a prototype implementation of Everest on Intel's IXP2400 network processor.