P4-MLFQ: A P4 implementation of Multi-level Feedback Queue Scheduling Using A Coarse-Grained Timer for Data Center Networks

Muhammad Shahid Iqbal, Chien Chen · 2023

For a better user experience, datacenter applications prefer short response times for short messages. As a result, minimizing flow completion time (FCT), particularly for short flows, is one of the goals for datacenter networks. Multilevel feedback queue (MLFQ) scheduling is a popular process scheduling algorithm that gives short processes higher precedence for finishing early. In this research, we present a P4-based MLFQ (P4-MLFQ) scheduling method for data center networks that runs on programmable switches at line rate. P4-MLFQ schedules incoming network traffic into numerous priority queues according to the active time of flows, resulting in short queuing delays for short flows. However, it is impossible to program P4-MLFQ using a programmable switch with millions of timers for millions of flows. Therefore, we propose a coarse-grained timer that keeps track of time as a count of time unit which allows P4-MLFQ to schedule millions of flows using only one timer. While a new flow arrives, P4-MLFQ assigns the current time unit count as the flow start time. Initially, a flow is served in the highest priority for a fixed number of time units. The allocated number of time units will increase as the queue priority decreases. We evaluated the performance of P4-MLFQ on a P4-based testbed and compared it with existing solutions. According to the results, P4-MLFQ improves the overall performance in average and 99th percentile FCT for short flows, which makes it a suitable scheduler for high-speed data center networks.

Read the paper · More papers on PaperTik