Title :
Pipelined Heap (Priority Queue) Management for Advanced Scheduling in High-Speed Networks
Author :
Ioannou, Aggelos ; Katevenis, Manolis G H
Author_Institution :
Comput. Archit., Found. for Res. & Technol. Hellas, Heraklion
fDate :
4/1/2007 12:00:00 AM
Abstract :
Per-flow queueing with sophisticated scheduling is one of the methods for providing advanced quality of service (QoS) guarantees. The hardest and most interesting scheduling algorithms rely on a common computational primitive, implemented via priority queues. To support such scheduling for a large number of flows at OC-192 (10 Gb/s) rates and beyond, pipelined management of the priority queue is needed. Large priority queues can be built using either calendar queues or heap data structures; heaps feature smaller silicon area than calendar queues. We present heap management algorithms that can be gracefully pipelined; they constitute modifications of the traditional ones. We discuss how to use pipelined heap managers in switches and routers and their cost-performance tradeoffs. The design can be configured to any heap size, and, using 2-port 4-wide SRAMs, it can support initiating a new operation on every clock cycle, except that an insert operation or one idle (bubble) cycle is needed between two successive delete operations. We present a pipelined heap manager implemented in synthesizable Verilog form, as a core integratable into ASICs, along with cost and performance analysis information. For a 16 K entry example in 0.13-mum CMOS technology, silicon area is below 10 mm2 (less than 8% of a typical ASIC chip) and performance is a few hundred million operations per second. We have verified our design by simulating it against three heap models of varying abstraction
Keywords :
CMOS integrated circuits; application specific integrated circuits; quality of service; queueing theory; telecommunication network management; telecommunication network routing; telecommunication switching; ASIC; CMOS technology; OC-192 rates; SRAM; advanced quality of service guarantees; advanced scheduling; calendar queues; clock cycle; computational primitive; heap data structures; high-speed networks; idle bubble cycle; insert operation; per-flow queueing; pipelined heap management; priority queue management; silicon; successive delete operations; synthesizable Verilog form; CMOS technology; Calendars; Computer network management; Data structures; High-speed networks; Processor scheduling; Quality of service; Scheduling algorithm; Silicon; Switches; High-speed network scheduling; pipelined hardware heap; priority queue; synthesizable core; weighted fair queueing; weighted round robin;
Journal_Title :
Networking, IEEE/ACM Transactions on
DOI :
10.1109/TNET.2007.892882