DCQCN:適用於 RDMA 的量化擁塞控制

DCQCN 是一種閉環擁塞控制機制,可使 RoCEv2 AI 組網遠離 PFC pause 並避免丟包:交換機提前進行 ECN 標記,接收端回送 CNP,發送端據此量化調整其速率。OcNOS-DC 為 xCCL(NCCL / RCCL / oneCCL)集合通信負載提供了預調優的預設參數,並對外開放每一個閾值,以滿足需要偏離預設值的組網需求。

DCQCN 閉環

發送端 NIC、擁塞交換機、接收端 NIC。交換機的 WRED ECN 標記器觸發 before 隊列觸及 PFC pause 閾值。接收方生成一個 Congestion Notification Packet(CNP);發送方的反應點降低速率,隨後再回升。無丟包、無 PFC 壓力、快速收斂。

DCQCN 閉環擁塞控制 從左到右共三個方框:發送端網卡(reaction point)、帶 WRED ECN 標記器的擁塞交換機、接收端網卡(notification point)。正向箭頭表示報文從左向右流動並被交換機標記。反向箭頭表示 CNP 從右向左回傳至發送端。標註指明了 ECN K-min、K-max 閾值以及 CNP 反饋路徑。 數據 + 支持 ECN ECN = CE(已標記) CNP:擁塞通知報文 發送端 NIC反應點(Reaction Point)α-update · cut · ramp OcNOS-DC 交換機WRED ECN 標記器K-min · K-max · P-max 接收端 NIC通知點每 50 µs 發送一次 CNP DCQCN · WRED MARKING · CNP FEEDBACK · QUANTIZED RATE LIMIT · LOSSLESS RoCEv2

DCQCN 在 AI 網路中所承擔的工作

RoCEv2 有兩種處理擁塞的方式:PFC pause(逐跳傳播的反壓)和 DCQCN(端到端速率控制環路)。單獨使用 PFC 也能奏效,但它會將擁塞向上遊推送,並可能引發 pause 風暴和隊頭阻塞。DCQCN 在 PFC 之前發揮作用,通過 ECN 對報文進行標記 before 隊列到達暫停閾值,從而讓發送端在交換機不得不發起暫停之前就降速。

做得好,您 fabric 生命周期的大部分時間都只依賴 DCQCN 反饋,以 PFC 作為安全兜底。做得差,ECN 閾值與 PFC headroom 不匹配,即便配置了 DCQCN,您仍會遭遇 pause 風暴。 閾值調優是全部關鍵所在、OcNOS-DC 提供針對 xCCL 集體通信調優的預設值,同時為具有特定流量模式的 fabric 開放所有參數。

三大要素

  • 反應點(發送端 NIC)。 接收 CNP 並運行 DCQCN 的 α 更新/乘性遞減/加性遞增循環,以量化其發送速率。
  • 擁塞點(交換機)。 將支持 ECN 的報文標記為 CE 當隊列深度越過 K-min 時採用 WRED 曲線,標記概率隨之線性上升,並在 K-max 處達到 P-max。
  • 通告點(接收端 NIC)。 針對每條被標記的流向發送端生成一個 CNP,並進行速率限制(通常每條流每 50 µs 一個)。

OcNOS DCQCN 實現方案

WRED 曲線

K-min, K-max, P-max

按優先級隊列進行 WRED ECN 標記,K-min 與 K-max 閾值及 P-max 標記概率均可配置。開箱即享 xCCL 級預設值,以 YANG 路徑開放供調優。

Per-Priority

獨立於 PFC

ECN 標記與 PFC pause 閾值是獨立配置的。兩者不匹配是最常見的 DCQCN 配置錯誤。OcNOS 會在應用之前,校驗 K-max、headroom 與 pause 觸發之間的關係。

VXLAN 感知

基於 VXLAN 的 ECN

ECN 比特位在 VXLAN 封裝/解封裝過程中得以保留,因此 DCQCN 可在 EVPN-VXLAN overlay 上實現端到端工作,而不僅限於 underlay。

遙測

每隊列 ECN 計數器

通過 gNMI 流式上報每個出向隊列被 ECN 標記的報文計數、隊列深度分布以及 CNP 觸發速率。可在叢集上線(bring-up)期間進行閉環調優。

Diagnostics

在投入前先驗證

通過 CLI 進行健全性檢查,確認 K-min / K-max / PFC 餘量與分配給無損優先級的緩衝空間在數學上一致,從而對錯誤配置快速失敗。

Scope

DC-PLUS 許可層級

屬於 OcNOS-DC PLUS SKU 的一部分。同款鏡像、同款支持;無需任何按功能付費的附加項即可激活無損 RDMA 協議棧。

為什麼這一點比聽起來更重要

大多數「RoCEv2 行為異常」的支持工單都歸結於 DCQCN 閾值未對齊。要麼 ECN 已配置卻從不標記(K-min 設置過高),導致 PFC 承擔全部擁塞控制負擔;要麼 ECN 標記過於激進(K-min 設置過低),導致發送端在出現真正擁塞之前就降速。OcNOS-DC 出廠預設值適用於大多數 TH4 / TH5 架構;對於需要偏離預設的架構,每一項參數都採用 YANG 建模且可查證。

正在為真實工作負載調優 DCQCN?把您的 trace 發給我們。

申請技術演示 →