PAPER DIGEST
Most Influential SIGCOMM 2019 Paper · 2026-03 edition

Fast, Scalable, And Programmable Packet Scheduler In Hardware

Vishal Shrivastav

Venue
ACM SIGCOMM Conference (SIGCOMM) 2019
Recognition
Most Influential SIGCOMM 2019 Paper (Rank No. 11)
Edition
2026-03
Impact factor
4
Certificate ID
1ba92ffe8709bcc6

Abstract

With increasing link speeds and slowdown in the scaling of CPU speeds, packet scheduling in software is resulting in lower precision and higher CPU utilization. By offloading packet scheduling to the hardware such as a NIC, one can potentially overcome these drawbacks. However, to retain the flexibility of software packet schedulers, packet scheduler in hardware must be programmable, while also being fast and scalable. State-of-the-art packet schedulers in hardware either compromise on scalability (Push-In-First-Out (PIFO)) or the ability to express a wide range of packet scheduling algorithms (First-In-First-Out (FIFO)). Further, even a general scheduling primitive like PIFO is not expressive enough to express certain key classes of packet scheduling algorithms. Hence in this paper, we propose a generalization of the PIFO primitive, called Push-In-Extract-Out (PIEO), which like PIFO, maintains an ordered list of elements, but unlike PIFO which only allows dequeue from the head of the list, PIEO allows dequeue from arbitrary positions in the list by supporting a programmable predicate-based filtering at dequeue. Next, we present a fast and scalable hardware design of PIEO scheduler and prototype it on a FPGA. Overall, PIEO scheduler is both more expressive and over 30� more scalable than PIFO.

Download PDF certificate