Inferensys

Glossary

DCQCN

DCQCN (Data Center Quantized Congestion Notification) is a congestion control algorithm for RDMA over Converged Ethernet (RoCEv2) that combines Explicit Congestion Notification (ECN) and Priority Flow Control (PFC) to prevent packet loss in GPU cluster fabrics.
Data scientist building training data pipeline on laptop, data preprocessing visible, technical workspace.
CONGESTION CONTROL ALGORITHM

What is DCQCN?

DCQCN is a congestion control algorithm specifically designed for RDMA over Converged Ethernet (RoCE) networks to prevent packet loss in loss-sensitive GPU cluster fabrics.

DCQCN (Data Center Quantized Congestion Notification) is a rate-based congestion control algorithm that combines Explicit Congestion Notification (ECN) marking with Priority Flow Control (PFC) to manage traffic in RoCE networks. It operates by having network switches mark packets when queue occupancy exceeds a threshold, prompting receivers to signal senders to reduce their injection rates before buffer overflows occur.

Developed collaboratively by Microsoft and Mellanox, DCQCN addresses the fundamental tension in lossless Ethernet fabrics: PFC prevents packet loss but can cause congestion trees, while ECN alone reacts too slowly. The algorithm uses a Reaction Point (RP) at the sender and a Congestion Point (CP) at the switch, with the receiver acting as a Notification Point (NP) to relay congestion feedback, enabling sub-microsecond response to incipient congestion.

CONGESTION CONTROL

Key Characteristics of DCQCN

DCQCN is a rate-based congestion control algorithm purpose-built for RDMA over Converged Ethernet (RoCEv2). It integrates Explicit Congestion Notification (ECN) for end-to-end signaling with Priority Flow Control (PFC) for hop-by-hop loss prevention, creating a hybrid scheme that maintains the lossless fabric required by RDMA in modern GPU clusters.

01

Hybrid ECN and PFC Architecture

DCQCN operates as a dual-layer defense against packet loss. The primary mechanism relies on Explicit Congestion Notification (ECN) marking from switches to signal incipient congestion to the end hosts. When a switch queue depth exceeds a configured threshold, it marks IP packets. The receiver reflects this marking back to the sender, which adjusts its injection rate using a multiplicative decrease algorithm. Priority Flow Control (PFC) acts as a safety net: if congestion builds too rapidly for ECN to react, PFC pauses the upstream link to prevent buffer overflow and packet drop. This hybrid design prevents the PFC deadlock and congestion spreading issues that plague PFC-only networks.

02

Rate-Based Sender Algorithm

The DCQCN reaction point resides entirely on the sender NIC. It maintains a current sending rate and adjusts it based on Congestion Notification Packets (CNPs) received from the destination. The algorithm uses three key parameters:

  • R_AI (Rate Increase): Additive increment applied when no congestion is detected
  • R_GD (Rate Decrease): Multiplicative factor for fast recovery during congestion
  • Alpha: A per-flow variable tracking the fraction of marked packets, updated using exponential weighted moving average

When a CNP arrives, the rate is reduced multiplicatively (R = R * (1 - R_GD/2)). During recovery without CNPs, the rate increases additively in a fast recovery phase before transitioning to a slower additive increase.

03

Congestion Notification Packet (CNP) Flow

The CNP mechanism forms the closed-loop feedback system:

  1. Switch Detection: An ECN-capable switch marks the ECN bits in the IP header when its egress queue exceeds the Kmin threshold
  2. Receiver Reflection: The destination NIC, upon receiving an ECN-marked packet, generates a CNP and sends it back to the source
  3. Rate Adjustment: The sender processes the CNP and immediately reduces its current rate

To prevent CNP storms, the receiver enforces a CNP generation rate limit, typically one CNP per 50 microseconds per flow. This ensures the feedback channel does not itself become a source of congestion.

04

ECN Marking Thresholds (Kmin, Kmax, Pmax)

Switch-side ECN configuration is critical to DCQCN performance. Three parameters define the marking probability curve:

  • Kmin: The queue depth below which no packets are marked. Sets the target operating point for low latency
  • Kmax: The queue depth above which all packets are marked with 100% probability
  • Pmax: The maximum marking probability applied between Kmin and Kmax

The marking probability increases linearly from 0 at Kmin to Pmax at Kmax. Proper tuning of these thresholds balances throughput and tail latency. Kmin is typically set to cover the bandwidth-delay product of the network to absorb transient bursts without triggering unnecessary rate reductions.

05

PFC Deadlock Prevention

A key innovation of DCQCN is its mitigation of PFC-induced pathologies. Pure PFC networks suffer from congestion spreading, where a single congested port triggers backpressure that cascades through the network, and PFC deadlock, where circular buffer dependencies cause permanent stalls. DCQCN addresses these by:

  • Using ECN as the primary congestion signal, triggering rate reduction before PFC activates
  • Configuring PFC thresholds significantly higher than ECN thresholds, so PFC engages only as a last resort
  • Limiting PFC pause duration to prevent indefinite head-of-line blocking

This layered approach ensures that PFC acts as a safety valve rather than the primary control mechanism.

06

DCQCN in GPU Cluster Fabrics

DCQCN is the default congestion control scheme in NVIDIA Mellanox ConnectX adapters for RoCEv2 deployments and is widely adopted in AI training clusters. Its design aligns with the traffic patterns of distributed training:

  • All-reduce bursts: Synchronous gradient aggregation creates periodic, high-bandwidth incast patterns that DCQCN's fast reaction time handles effectively
  • Elephant flows: Large parameter server updates benefit from the additive increase phase achieving full link utilization
  • Loss sensitivity: RDMA operations abort on packet loss; DCQCN's lossless guarantee prevents expensive retransmission and connection teardown

Properly tuned DCQCN enables GPU clusters to achieve line-rate throughput on 200Gb/s and 400Gb/s fabrics while maintaining microsecond-scale tail latency.

RDMA CONGESTION CONTROL COMPARISON

DCQCN vs. Other Congestion Control Mechanisms

A technical comparison of DCQCN against alternative congestion control algorithms used in RDMA over Converged Ethernet (RoCE) fabrics for GPU cluster interconnects.

FeatureDCQCNPFC (IEEE 802.1Qbb)Timely

Congestion Detection Method

ECN marking on switches

Queue depth threshold on switch ports

Round-trip time (RTT) measurement at NIC

Reaction Mechanism

Rate throttling via RP algorithm at sender

Pause frames sent to upstream device

Rate adjustment based on RTT gradient

Granularity of Control

Per-flow rate adjustment

Per-priority flow control (8 priorities)

Per-flow rate adjustment

Head-of-Line Blocking Prevention

Congestion Spreading Risk

Low (early ECN marking)

High (cascading pause frames)

Low (preemptive RTT detection)

Requires Switch Support

Packet Loss Under Extreme Congestion

< 0.001%

0% (prevents loss entirely)

< 0.01%

Deployment Complexity

Moderate (switch ECN config + NIC tuning)

Low (switch-only configuration)

High (NIC-side RTT measurement + tuning)

DCQCN EXPLAINED

Frequently Asked Questions

Clear answers to the most common technical questions about Data Center Quantized Congestion Notification, the critical congestion control algorithm that prevents packet loss in RDMA over Converged Ethernet (RoCEv2) fabrics for GPU clusters.

Data Center Quantized Congestion Notification (DCQCN) is a congestion control algorithm specifically designed for RDMA over Converged Ethernet (RoCEv2) networks. It prevents packet loss in lossless Ethernet fabrics by combining two mechanisms: Explicit Congestion Notification (ECN) for end-to-end rate adjustment and Priority Flow Control (PFC) as a last-resort safety net. When a switch buffer exceeds a configured threshold, it marks packets with an ECN flag. The receiving Reaction Point (RP) relays this congestion information back to the sender, which then reduces its injection rate using a multiplicative decrease algorithm. The sender subsequently recovers its rate through a fast recovery phase followed by additive increase. This multi-stage approach avoids the catastrophic throughput collapse that occurs when PFC triggers indiscriminate pause frames across the network, maintaining high utilization while protecting the lossless fabric from buffer overflow.

Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.