Scheduling algorithms for input-queued cell switches

The algorithms described in this thesis are designed to schedule cells in a very high-speed, parallel, input-queued crossbar switch. We present several novel scheduling algorithms that we have devised, each aims to match the set of inputs of an input queued switch to the set of outputs more efficiently, fairly and quickly than existing techniques. In Chapter 2 we present the simplest and fastest of these algorithms: SLIP--a parallel algorithm that uses rotating priority ("round-robin") arbitration. SLIP is simple: it is readily implemented in hardware and can operate at high speed. SLIP has high performance: for uniform i.i.d. Bernoulli arrivals, SLIP is stable for any admissible load, because the arbiters tend to desynchronize. We present analytical results to model this behavior. However, SLIP is not always stable and is not always monotonic: adding more traffic can actually make the algorithm operate more efficiently. We present an approximate analytical model of this behavior. SLIP prevents starvation: all contending inputs are eventually served. We present simulation results, indicating SLIP's performance. We argue that SLIP can be readily implemented for a 32 x 32 switch on a single chip. In Chapter 3 we present i-SLIP, an iterative algorithm that improves upon SLIP by converging on a maximal size match. The performance of i-SLIP improves with up to log$\sb2N$ iterations. We show that although it has a longer running time than SLIP, an i-SLIP scheduler is little more complex to implement. In Chapter 4 we describe maximum or maximal weight matching algorithms based on the occupancy of queues, or waiting times of cells. These algorithms are stable over a wider range of traffic loads. We describe two algorithms, longest queue first (LQF) and oldest cell first (OCF) and consider their performance. We prove that LQ although too complex to implement in hardware, is stable under all admissible i.i.d. offered loads. We consider two implementable, iterative algorithms i-LQF and i-OCF which converge on a maximal weight matching. Finally, we present two interesting implementations of the Gale-Shapley algorithm, designed to solve the stable marriage problem.

[1]  Samuel P. Morgan,et al.  Input Versus Output Queueing on a Space-Division Packet Switch , 1987, IEEE Trans. Commun..

[2]  T. Saito,et al.  A 250 Mb/s 32*32 CMOS crosspoint LSI for ATM switching systems , 1990, 1990 37th IEEE International Conference on Solid-State Circuits.

[3]  Walter Willinger,et al.  On the Self-Similar Nature of Ethernet Traffic ( extended version ) , 1995 .

[4]  D. Mitra,et al.  Stochastic theory of a data-handling system with multiple sources , 1982, The Bell System Technical Journal.

[5]  Sean P. Meyn,et al.  Stability of queueing networks and scheduling policies , 1995, IEEE Trans. Autom. Control..

[6]  A. Marrakchi,et al.  A neural net arbitrator for large crossbar packet-switches , 1989 .

[7]  Satoru Okamoto,et al.  Input and output queueing ATM switch architecture with spatial and temporal slot reservation control , 1992 .

[8]  Raj Jain,et al.  Packet Trains-Measurements and a New Model for Computer Network Traffic , 1986, IEEE J. Sel. Areas Commun..

[9]  Scott Shenker,et al.  Analysis and simulation of a fair queueing algorithm , 1989, SIGCOMM '89.

[10]  Robert W. Irving,et al.  The Stable marriage problem - structure and algorithms , 1989, Foundations of computing series.

[11]  Ronald W. Wolff,et al.  Stochastic Modeling and the Theory of Queues , 1989 .

[12]  S.-Y.R. Li Theory of periodic contention and its application to packet switching , 1988, IEEE INFOCOM '88,Seventh Annual Joint Conference of the IEEE Computer and Communcations Societies. Networks: Evolution or Revolution?.

[13]  Oliver W. W. Yang,et al.  A fast algorithm for multi-channel/port traffic assignment , 1994, Proceedings of ICC/SUPERCOMM'94 - 1994 International Conference on Communications.

[14]  Marcel F. Neuts,et al.  Matrix-geometric solutions in stochastic models - an algorithmic approach , 1982 .

[15]  Yuval Tamir,et al.  High-performance multiqueue buffers for VLSI communication switches , 1988, [1988] The 15th Annual International Symposium on Computer Architecture. Conference Proceedings.

[16]  E. A. Dinic Algorithm for solution of a problem of maximal flow in a network with power estimation , 1970 .

[17]  Y. Hamazumi,et al.  Parallel contention resolution control for input queueing ATM switches , 1992 .

[18]  Srinivasan Keshav,et al.  On the Efficient Implementation of Fair Queueing , 1991 .

[19]  Thomas E. Anderson,et al.  High-speed switch scheduling for local-area networks , 1993, TOCS.

[20]  Richard M. Karp,et al.  An optimal algorithm for on-line bipartite matching , 1990, STOC '90.

[21]  Pravin Varaiya,et al.  Burstiness bounds for some burst reducing servers , 1993, IEEE INFOCOM '93 The Conference on Computer Communications, Proceedings.

[22]  David M. Lucantoni,et al.  A Markov Modulated Characterization of Packetized Voice and Data Traffic and Related Statistical Multiplexer Performance , 1986, IEEE J. Sel. Areas Commun..

[23]  Stephen M. Walters,et al.  Neural network architecture for crossbar switch control , 1991 .

[24]  Jean C. Walrand,et al.  Effective bandwidths for multiclass Markov fluids and other ATM sources , 1993, TNET.

[25]  W. David Sincoskie,et al.  Sunshine: A High-Performance Self-Routing Broadband Packet Switch Architecture , 1991, IEEE J. Sel. Areas Commun..

[26]  Lixia Zhang,et al.  VirtualClock: a new traffic control algorithm for packet-switched networks , 1991, TOCS.

[27]  H. Obara Optimum architecture for input queuing ATM switches , 1991 .

[28]  J J Hopfield,et al.  Neural networks and physical systems with emergent collective computational abilities. , 1982, Proceedings of the National Academy of Sciences of the United States of America.

[29]  Rene L. Cruz,et al.  A calculus for network delay, Part I: Network elements in isolation , 1991, IEEE Trans. Inf. Theory.

[30]  Y. Tamir,et al.  High-performance multi-queue buffers for VLSI communications switches , 1988, ISCA '88.

[31]  Hitoshi Uematsu,et al.  A 1.5 Gb/s 8 X 8 Cross-Connect Switch Using a Time Reservation Algorithm , 1991, IEEE J. Sel. Areas Commun..

[32]  Debasis Mitra,et al.  Effective bandwidth of general Markovian traffic sources and admission control of high speed networks , 1993, TNET.

[33]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[34]  Walter Willinger,et al.  On the self-similar nature of Ethernet traffic , 1993, SIGCOMM '93.

[35]  Michael G. Hluchyj,et al.  Multicast and broadcast services in a knockout packet switch , 1988, IEEE INFOCOM '88,Seventh Annual Joint Conference of the IEEE Computer and Communcations Societies. Networks: Evolution or Revolution?.

[36]  Timothy X. Brown,et al.  Neural Network Design of a Banyan Network Controller , 1990, IEEE J. Sel. Areas Commun..

[37]  Joseph Y. Hui,et al.  A Broadband Packet Switch for Integrated Transport , 1987, IEEE J. Sel. Areas Commun..

[38]  Lixia Zhang VirtualClock: A New Traffic Control Algorithm for Packet-Switched Networks , 1991, ACM Trans. Comput. Syst..

[39]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

[40]  Srinivasan Keshav,et al.  Comparison of rate-based service disciplines , 1991, SIGCOMM '91.

[41]  Alan Huang,et al.  Starlite: a wideband digital switch , 1991 .

[42]  Robert E. Tarjan,et al.  Network Flow and Testing Graph Connectivity , 1975, SIAM J. Comput..

[43]  Kai Y. Eng,et al.  Improving the performance of input-queued ATM packet switches , 1992, [Proceedings] IEEE INFOCOM '92: The Conference on Computer Communications.

[44]  Mark J. Karol,et al.  Queueing in high-performance packet switching , 1988, IEEE J. Sel. Areas Commun..