Table of Contents
Fetching ...

FairQ: Fair and Fast Rate Allocation in Data Centers

Ahmed M. Abdelmoniem, Brahim Bensaou

TL;DR

This work tackles data-center congestion arising from bursty mice and elephant flows and the limitations of TCP in DCNs with shallow buffers. It proposes FairQ, a switch-based, TCP-invariant rate-allocation method that rewrites the per-flow receive window ($Rwnd$) in ACKs to enforce fair per-flow sharing without modifying end-host TCP stacks. The authors provide a mathematical model of FairQ for convergence and stability, and demonstrate practical viability via Open vSwitch and NetFPGA prototypes, plus software and hardware testbeds showing improved flow completion times, reduced drops, and better fairness during incasts. By enabling in-network flow control that coexists with existing TCP implementations, FairQ offers a scalable, deployable path for data-center congestion management without touching tenant end-hosts.

Abstract

The peculiar congestion patterns in data centers are caused by the bursty and composite nature of traffic, the small bandwidth-delay product, and the tiny switch buffers. It is not practical to modify TCP to adapt to data centers, especially in public clouds where multiple congestion control protocols coexist. In this work, we design a switch-based method to address such congestion issues; our approach does not require any modification to TCP, which enables easy and seamless deployment in public data centers via switch software update. We first present a simple analysis to demonstrate the stability and effectiveness of the scheme, and then we discuss a hardware NetFPGA switch-based prototype. The experimental results from real deployments in a small testbed cluster show the effectiveness of our approach.

FairQ: Fair and Fast Rate Allocation in Data Centers

TL;DR

This work tackles data-center congestion arising from bursty mice and elephant flows and the limitations of TCP in DCNs with shallow buffers. It proposes FairQ, a switch-based, TCP-invariant rate-allocation method that rewrites the per-flow receive window () in ACKs to enforce fair per-flow sharing without modifying end-host TCP stacks. The authors provide a mathematical model of FairQ for convergence and stability, and demonstrate practical viability via Open vSwitch and NetFPGA prototypes, plus software and hardware testbeds showing improved flow completion times, reduced drops, and better fairness during incasts. By enabling in-network flow control that coexists with existing TCP implementations, FairQ offers a scalable, deployable path for data-center congestion management without touching tenant end-hosts.

Abstract

The peculiar congestion patterns in data centers are caused by the bursty and composite nature of traffic, the small bandwidth-delay product, and the tiny switch buffers. It is not practical to modify TCP to adapt to data centers, especially in public clouds where multiple congestion control protocols coexist. In this work, we design a switch-based method to address such congestion issues; our approach does not require any modification to TCP, which enables easy and seamless deployment in public data centers via switch software update. We first present a simple analysis to demonstrate the stability and effectiveness of the scheme, and then we discuss a hardware NetFPGA switch-based prototype. The experimental results from real deployments in a small testbed cluster show the effectiveness of our approach.
Paper Structure (20 sections, 8 figures, 2 tables, 1 algorithm)

This paper contains 20 sections, 8 figures, 2 tables, 1 algorithm.

Figures (8)

  • Figure 1: FairSwitch System: it consists of an end-host module that attaches scaling value to ACKs and FairSwitch which performs equal fair share allocation
  • Figure 2: NetFPGA-based Modular Pipelined Design
  • Figure 3: FairSwitch NetFPGA-based system design
  • Figure 4: Testbed setup for FairSwitch evaluation
  • Figure 5: Incast Scenario: Average, Standard Deviation and Max FCT for TCP with FairSwitch vs DropTail vs DCTCP. Each flow requests 11.5MB file (divided into 1000 11.5KB blocks).
  • ...and 3 more figures