Delay-BBR: Delay-Aware Congestion Control
- Delay-BBR is a delay-sensitive variant of BBR that integrates queuing delay signals into bandwidth probing to significantly reduce queuing delay and packet loss.
- It employs mechanisms like EWMA-based RTT estimation and dynamic pacing adjustments to respond rapidly to network congestion in real-time and multipath scenarios.
- Multipath scheduling in Delay-BBR uses network utility maximization to minimize packet delays, ensuring efficient frame delivery in shallow-buffer and heterogeneous environments.
Delay-BBR refers to delay-sensitive modifications of the BBR (Bottleneck Bandwidth and RTT) congestion control algorithm, integrating queuing delay signals into BBR’s bandwidth-probing core. Two prominent lines of Delay-BBR development are the delay-responsive variant for multipath real-time streaming with packet scheduling (Zhang et al., 2019) and delay-enhanced BBRv2+ which augments BBRv2 with fine-grained RTT guidance (Yang et al., 2021). Both approaches aim to preserve BBR’s high-throughput operation while curbing queuing delay and packet loss, particularly in real-time, shallow-buffered, or multi-path environments.
1. Mechanisms of Delay-BBR: Integrating Delay into BBR
Delay-BBR variants augment classic BBR by monitoring smoothed RTT metrics and dynamically throttling the send rate in response to delay rises. This is in contrast to the original BBR, where rate adjustment is triggered solely by bandwidth and minimal RTT estimation, leading to aggressive bandwidth probing and associated bufferbloat in shallow queues.
Core Methods in Delay-BBR (Zhang et al., 2019):
- RTT is estimated using an EWMA: with .
- Minimum RTT (“baseline RTT”) is continuously tracked when not in back-off.
- Congestion (i.e. queue build-up) is detected if with .
- On congestion detection, Delay-BBR immediately backs off pacing rate (“drain” state, ) and resets critical sliding window variables.
- Unlike BBR, repeated back-off is allowed per RTT if persistent queuing exists, rather than waiting for a fixed 10s interval.
- Normal bandwidth probing resumes once the in-flight data drops below the BDP estimate.
Enhanced Path Modeling in BBRv2+ (“Delay-BBR”) (Yang et al., 2021):
- Maintains multiple RTT filters ().
- Delay-based expiry of BBR’s bandwidth estimate occurs if , with .
- Probing aggressiveness is governed by comparing to after up-probe.
- Jitter adaptation uses a composite propagation delay 0.
- The state machine incorporates ProbeTry (gentle probe) with near-immediate abort if queuing spike is detected, ensuring fairness under heterogeneous traffic.
2. Multipath Scheduling and Utility Maximization
Delay-BBR, as implemented for real-time video over multipath, explicitly supports packet-level path selection atop congestion control, leveraging network utility maximization (NUM) theory (Zhang et al., 2019). Each RTP packet is allocated to the path minimizing an instantaneous “cost” reflecting combined propagation and queuing delays as well as sender-side queueing:
- The per-path cost is
1
where 2 is path RTT, 3 is sender buffer occupancy, and 4 is local pacing rate.
- Each frame is split so that the next packet is greedily pushed to the path 5.
- This approach closely tracks minimum end-to-end packet delay and reduces frame arrival jitter.
Such NUM-derived scheduling is designed to be computationally lightweight, effective at short timescales relevant to video RTP, and outperforms both weighted round-robin and water-filling (“SFL”) scheduling on frame delivery delay.
3. Experimental Evaluation
Single-Path Congestion Control (Zhang et al., 2019)
Delay-BBR was evaluated in simulated networks (ns-3) with bottlenecks (3–5 Mbps, buffer=0.3–0.6s BDP), comparing against QUIC-BBR and WebRTC-BBR:
| Case | QUIC-BBR (OWD ms, Loss %) | Delay-BBR (OWD ms, Loss %) |
|---|---|---|
| 1 | (≈370, 11.6) | (≈231, 1.1) |
| 2 | (≈380, 10.3) | (≈199, 0.8) |
| 3 | (≈400, 8.5) | (≈215, 0.9) |
- Delay-BBR achieves ~40% lower queuing delay and over 10× lower loss rate compared to QUIC-BBR under competing flows.
- Rate stability is improved: Delay-BBR flows converge smoothly to fair shares, while QUIC-BBR shows significant rate oscillations.
- In mixed TCP Reno/Delay-BBR environments, Delay-BBR remains starvation-free, yielding to Reno only transiently.
Multipath Scheduling (Zhang et al., 2019)
- In diverse two-path topologies, Delay-BBR’s cost-based scheduler achieved the minimal average frame delay in 8 out of 10 network cases, with 10–20% improvement over the next best scheduling algorithm.
Delay-Responsive BBRv2+ (BBRv2+) (Yang et al., 2021)
Evaluation using Mahimahi and Mininet environments demonstrates:
- 25% higher throughput vs. BBRv2 in high-mobility scenarios.
- Comparable or lower queuing delay (≈100 µs tail, matching BBR).
- Rapid adaptation to bandwidth drops: BBRv2+ responds within 1 RTT, versus ≥10 RTTs for BBRv2.
- Sustained throughput under random loss up to 10% loss rate when loss threshold α is tuned.
- Robustness to network jitter, holding near-maximum throughput for Gaussian σ-delay up to 3x the baseline RTT.
4. Implementation Parameters and Tuning Guidelines
Key implementation constants for Delay-BBR and BBRv2+:
| Parameter | Value (Delay-BBR) (Zhang et al., 2019) | Value (BBRv2+) (Yang et al., 2021) |
|---|---|---|
| RTT EWMA α | 0.9 | – |
| Delay threshold β | 1.2 | – |
| kMinRttExpiry | 10 s | 5 s (min-RTT window) |
| Up-probe pacing gain | 1.11 | 1.1 (ProbeTry), 1.25 (full) |
| Down-probe pacing gain | 0.9 | 0.9 |
| Drain (ProbeRTT) gain | 0.75 | n/a |
| Jitter compensation μ | n/a | 0.5 |
| Cost for scheduler | 6 | – |
Recommended procedures for tuning:
- Lowering β in Delay-BBR increases delay sensitivity but risks overly conservative rate reduction.
- Modifying up-probe gain in multipath is a lever for mitigating aggregated buffer pressure.
- In BBRv2+, setting ProbeTry and ProbeUp pacing gains ensures that delay-safety and probing aggressiveness remain balanced.
- Jitter adaptation parameters should be adjusted according to measured network delay variance.
5. Algorithms and Pseudocode
Delay-BBR Core Loop (Zhang et al., 2019)
2
Multipath Cost-Based Scheduling (Zhang et al., 2019)
3
ProbeTry and Delay-Based Expiry in BBRv2+ (Yang et al., 2021)
- On entering ProbeTry: pace at 1.1 × BDP for first RTT, then 1.0 × BDP for second.
- If 7 (8), immediately abort probe.
- If queue persists in ProbeCruise, fall back to BBRv2 filtering and pacing.
6. Quantitative Performance and Trade-offs
Performance trade-offs are dominated by the sensitivity of the delay threshold and pacing gains:
- Lower delay threshold (9 or 0) improves delay at risk of over-back-off and underutilization.
- Higher probe gain increases bandwidth detection speed but can cause short-term queue spikes.
- Jitter compensation must be carefully tuned to avoid persistent or excessive send window expansion.
- Scheduler weighting of RTT vs. local queue (1) allows operators to prioritize path diversity or queue avoidance as application requirements dictate.
Experimentally, Delay-BBR achieves:
- 40% lower queuing delays and >10× reduction in packet loss vs. QUIC-BBR in single-path settings.
- 25% throughput improvement and lower queuing delay relative to BBRv2 in high-mobility and variable-loss scenarios.
- Stable coexistence (“fairness”) with loss-based flows and RTT fairness index ≥0.8 (Yang et al., 2021).
7. Significance, Context, and Open Issues
Delay-BBR represents a critical step in evolving BBR-type congestion control schemes to accommodate delay- and loss-sensitive traffic. Stateless, delay-aware pacing enables rapid adaptation in the face of dynamics, competition with loss-based algorithms, and adverse conditions like shallow buffers or multipath heterogeneity. The explicit NUM-based multipath scheduler closely approaches minimum-delay flow splitting for real-time traffic.
Known limitations include the possibility of overreaction to transient jitter if delay thresholds are too tight, the complex interaction between aggressive probing and deep-buffer loss-based cross-traffic, and the need to explicitly tune scheduler costs for path pathologies.
Delay-BBR, by coupling delay signals with bandwidth estimation, marks the transition toward hybrid congestion controls that can sustain throughput while bounding delay across a wide array of network topologies (Zhang et al., 2019, Yang et al., 2021).