Towards a theory of nearly constant time parallel algorithms
SFCS '91 Proceedings of the 32nd annual symposium on Foundations of computer science
High-speed switch scheduling for local-area networks
ACM Transactions on Computer Systems (TOCS)
An engineering approach to computer networking: ATM networks, the Internet, and the telephone network
The iSLIP scheduling algorithm for input-queued switches
IEEE/ACM Transactions on Networking (TON)
Computer networks: a systems approach
Computer networks: a systems approach
Contention Resolution in Hashing Based Shared Memory Simulations
SIAM Journal on Computing
Optical networks: a practical perspective
Optical networks: a practical perspective
Multiwavelength Optical Networks: A Layered Approach
Multiwavelength Optical Networks: A Layered Approach
Computer architecture: a quantitative approach
Computer architecture: a quantitative approach
Interconnection Networks: An Engineering Approach
Interconnection Networks: An Engineering Approach
Tiny Tera: A Packet Switch Core
IEEE Micro
Achieving 100% throughput in an input-queued switch
INFOCOM'96 Proceedings of the Fifteenth annual joint conference of the IEEE computer and communications societies conference on The conference on computer communications - Volume 1
Load balanced Birkhoff-von Neumann switches, part II: multi-stage buffering
Computer Communications
Load balanced Birkhoff-von Neumann switches, part I: one-stage buffering
Computer Communications
Issues and trends in router design
IEEE Communications Magazine
On the performance of greedy algorithms in packet buffering
STOC '04 Proceedings of the thirty-sixth annual ACM symposium on Theory of computing
Overall Blocking Behavior Analysis of General Banyan-Based Optical Switching Networks
IEEE Transactions on Parallel and Distributed Systems
Implementing DSP Algorithms with On-Chip Networks
NOCS '07 Proceedings of the First International Symposium on Networks-on-Chip
Accelerated packet placement architecture for parallel shared memory routers
NETWORKING'07 Proceedings of the 6th international IFIP-TC6 conference on Ad Hoc and sensor networks, wireless networks, next generation internet
Packet buffering: randomization beats deterministic algorithms
STACS'05 Proceedings of the 22nd annual conference on Theoretical Aspects of Computer Science
Hi-index | 0.00 |
We present a simple and near optimal randomized parallel scheduling algorithm for scheduling packets in routers based on the Switch-Memory-Switch (SMS)architecture, which emulates 'output queuing' by using a collection of small memories within the switch to buffer packets, and which forms the basis of the fastest routers in use today. For a router with N inputs and N outputs, our algorithm computes the schedule in O(log* N) rounds, where a round is a communication of a few bits between input ports and memory together with simple local computation at the inputs and memory. Furthermore, by using an O(log* N) deep pipeline at each input, our algorithm computes the schedule in a constant number of rounds. Our pipelined algorithm is quite simple and achieves optimal (i.e.,constant) throughput with a tiny O(log* N) delay.We show that the total amount of buffer memory required by our algorithm is close to the minimum required. We also show that the number of buffer memories is within an εN additive term of 2N -- 1, for any positive constant ù0 (and is within an additive term of o(N)for the basic scheduler), where 2N -- 1 is the minimum number of memories needed under adversarial placement of packets. Furthermore we show that the number of extra memories that we use over the minimum of N that is required in the offline version, is within a constant factor of the minimum required by any on-line scheduler, even if that scheduler is allowed to fail occasionally.Our scheduling algorithm is randomized and works with high probability in N. We also prove that it has the 'self-stabilizing' property, i.e., it resumes its normal behavior if occasional lapses occur due to the probabilistic nature of the algorithm.