QFQ: Efficient Packet Scheduling with Tight Bandwidth Distribution Guarantees

Packet scheduling, together with classification, is one of t he expensive processing steps in systems providing tight band width and delay guarantees at high packet rates. Schedulers with near-optimal bandwidth distribution and O(1) time complexity in the number of flows have been proposed in the literature, they adopt techniques as timestamp rounding andflow grouping to keep their execution time small. However even the two best proposals in this family either have a linear complexity component in the number of groups or require a number of operations proportional to the length of the packet during transmission. Furthermore, no studies are available on the actual execution time of these algorithms. In this paper we make two contributions. First, we present Quick Fair Queueing (QFQ), a new O(1) scheduler that provides near-optimal guarantees, and is the first to achieve th at goal with a constant cost also with respect to the number of groups and the packet length. The QFQ algorithm has no loops, and uses very simple instructions and data structure s that lend themselves very well to a hardware implementation. Secondly, we have developed production-quality implementations of QFQ and of its closest competitor, S-KPS, and we have used them to perform an accurate performance analysis, in terms of both run times and service guarantees. Experiments show that QFQ fulfills the expectations, with a runtime on a low end workstation of about 110 ns for an enqueue()/dequeue() pair (only twice the time of DRR, but with much better service guarantees).

[1]  George Varghese,et al.  Efficient fair queueing using deficit round robin , 1995, SIGCOMM '95.

[2]  Ion Stoica,et al.  Earliest Eligible Virtual Deadline First : A Flexible and Accurate Mechanism for Proportional Share Resource Allocation , 1995 .

[3]  Hui Zhang,et al.  Hierarchical packet fair queueing algorithms , 1996, SIGCOMM '96.

[4]  QueueingJon,et al.  WF 2 Q : Worst-case Fair Weighted Fair , 1996 .

[5]  Ion Stoica,et al.  A hierarchical fair service curve algorithm for link-sharing, real-time and priority services , 1997, SIGCOMM '97.

[6]  George Varghese,et al.  Leap forward virtual clock: a new fair queuing scheme with guaranteed delays and throughput fairness , 1997, PODC '97.

[7]  Anujan Varma,et al.  A general methodology for designing efficient traffic scheduling and shaping algorithms , 1997, Proceedings of INFOCOM '97.

[8]  Hui Zhang,et al.  Implementing scheduling algorithms in high-speed networks , 1999, IEEE J. Sel. Areas Commun..

[9]  Chuanxiong Guo SRR: An O(1) time complexity packet scheduler for flows in multi-service packet networks , 2001, SIGCOMM '01.

[10]  Luciano Lenzini,et al.  Tradeoffs between low complexity, low latency, and fairness with deficit round-robin schedulers , 2004, IEEE/ACM Transactions on Networking.

[11]  Richard J. Lipton,et al.  On fundamental tradeoffs between delay bounds and computational complexity in packet scheduling algorithms , 2002, IEEE/ACM Transactions on Networking.

[12]  Abdesselem Kortebi,et al.  Evaluating the number of active flows in a scheduler realizing fair statistical bandwidth sharing , 2005, SIGMETRICS '05.

[13]  M. Karsten,et al.  SI-WF2Q: WF2Q Approximation with Small Constant Execution Overhead , 2006, Proceedings IEEE INFOCOM 2006. 25TH IEEE International Conference on Computer Communications.

[14]  J. Pasquale,et al.  The Stratified Round Robin Scheduler: Design, Analysis and Implementation , 2006, IEEE/ACM Transactions on Networking.

[15]  Chuanxiong Guo,et al.  G-3: An O(1) Time Complexity Packet Scheduler That Provides Bounded End-to-End Delay , 2007, IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.

[16]  D. Cheriton,et al.  SI-WF 2 Q : WF 2 Q Approximation with Small Constant Execution Overhead-Extended Version , 2022 .