SERENADE: A Parallel Randomized Algorithm Suite for Crossbar Scheduling in Input-Queued Switches
Most of today's high-speed switches and routers adopt an input-queued crossbar switch architecture. Such a switch needs to compute a matching (crossbar schedule) between the input ports and output ports during each switching cycle (time slot). A key research challenge in designing large (in number of input/output ports N) input-queued crossbar switches is to develop crossbar scheduling algorithms that can compute "high quality" matchings - i.e. those that result in high switch throughput (ideally 100%) and low queueing delays for packets - at line rates. SERENA is arguably the best algorithm in that regard: It outputs excellent matching decisions that result in 100% switch throughput and near-optimal queueing delays. However, since SERENA is a centralized algorithm with O(N) computational complexity, it cannot support switches that both are large (in terms of N) and have a very high line rate per port. In this work, we propose SERENADE (SERENA, the Distributed Edition), a parallel algorithm suite that emulates SERENA in only O( N) time complexity of only O( N) per port. Through extensive simulations, we show that all three variants in the SERENADE suite can, either provably or empirically, achieve 100% throughput, and that they have similar delay performances as SERENA under heavy traffic loads.
READ FULL TEXT