An efficient randomized algorithm for input-queued switch scheduling

P. Giaccone, B. Prabhakar and D. Shah
Proceedings of Hot Interconnects IX, Stanford, CA, pp. 3-8, 2001

The essential problem in the design of high-performance schedulers for input-queued switches is the determination, in each time slot of a good matching between inputs and outputs for the transfer of packets. The rapid increase of line rates is making this very difficult: finding good matchings takes time, and there is very little time at the highest line speeds. A similar difficulty arises when designing schedulers for switches with a large number of ports. Randomized algorithms have proved particularly effective in providing good scalable solutions to problems where decisions need to be made within a limited amount of time and/or with little information. The main idea of randomized algorithms is simply stated: Basing decisions on a few randomly chosen samples is often a good surrogate for basing decisions with complete knowledge of the state. This paper is about the design of randomized algorithms for switch scheduling. We begin by examining the difficulty of implementing well known deterministic solutions like the maximum weight matching algorithm, discuss a simple randomized proposed by L. Tassiulas (1998), develop a suite of novel randomized algorithms, and discuss their theory and performance.