Abstract
Effective bandwidth management in switches is critical to ensuring fair resource allocation among diverse application flows in data center networks. Modern switches often adopt shared memory architectures to improve resource efficiency. While fair queuing mechanisms are designed to ensure fair bandwidth allocation, existing approaches in shared memory switches frequently suffer from excessive packet drops, resulting in suboptimal network utilization. In this paper, we propose DFQ+, a dynamic fair queuing mechanism that leverages a limited number of priority queues to achieve both high network utilization and fair bandwidth allocation. DFQ+ is designed based on three key novel ideas. First, it dynamically adjusts the sliding window size according to flow arrival rates and queue occupancy, adapting the observation horizon to track traffic dynamics. Second, it introduces dynamic admission thresholds, which manage packet enqueuing by monitoring both the accumulated packet bits and the buffer occupancy in real time. Third, DFQ+ reclaims unused space from the head queue and reallocates it to the tail queue, improving buffer utilization while preserving fairness. Simulation experiments and a P4-based emulated prototype validate the functionality of DFQ+ and show that it can significantly improve fairness and overall network utilization, while reducing flow completion time by up to 83.96%.