Heterogeneous application environments necessitate the coexistence of diverse Congestion Control Algorithms (CCAs). However, traditional active queue management (AQM) schemes are typically agnostic to specific CCAs and treat heterogeneous traffic flows uniformly, thereby overlooking the diverse buffering requirements of these CCAs. Consequently, bandwidth allocation does not explicitly consider latency and buffer utilization metrics. We present Niche, a lightweight, contention-aware AQM designed for programmable switches. Niche leverages local buffer—backlog statistics to dynamically classify and isolate flows into physical queues without incurring complex measurement overhead. Combined with dynamic bandwidth allocation, Niche not only improves inter-flow fairness but also optimizes comprehensive performance. Experimental validation on programmable switches confirms that in multi-CCA coexistence scenarios, Niche reduces total buffer occupancy by 50% while stabilizing the Jains’ Fairness Index at 0.98. Crucially, it lowers end-to-end latency for latency-sensitive flows like BBR and Vegas by an order of magnitude. Niche approximates the fairness of Fair Queuing (FQ) with limited queue resources, outperforming comparable baselines and demonstrating consistent performance gains as queue availability scales.
Gao et al. (Tue,) studied this question.