The AR Congestion Debug dashboard helps you tell fabric congestion apart from link instability on Cumulus Linux switches. It shows adaptive routing (AR) activity next to buffer occupancy, carrier changes, ECN marking, drops, and interface discards, and ends with a table that compares those signals for each interface. You can also ask Sherlock about AR congestion.
Persona Use Cases
|
Persona |
Primary Use Case |
|---|---|
|
Network Engineers |
Tell whether a RoCE slowdown comes from queue pressure or from a link that is bouncing, and find the interface involved. |
|
System Administrators / SREs |
Narrow a congestion report to a device and interface, and decide what to escalate. |
|
Performance Engineers |
Check whether a drop in workload performance lines up with buffer pressure, ECN marking, or drops in the fabric. |
Requirements
NVIDIA Spectrum-4 switches running Cumulus Linux 5.15 or later. The AR counter requires both.
Before You Begin
-
Import the dashboard. It is part of the Reference Configuration Package: import
minerva-configs/dashboards/user-tenant/ar-congestion-debug/ar_congestion_debug_views_filtered.jsonas described in Import Dashboards. The file includes the dashboard and all the views it uses. The dashboard is also part of the combined user-tenant import. -
Turn on buffer and AI Ethernet statistics export on your Cumulus Linux switches. These commands are optional in the Reference Configuration Package, so check that they're enabled:
nv set system telemetry buffer-stats sample-interval 60 nv set system telemetry buffer-stats export state enabled nv set system telemetry ai-ethernet-stats sample-interval 60 nv set system telemetry ai-ethernet-stats export state enabled nv config applyTo check the settings, run
nv show system telemetry ai-ethernet-stats,nv show system telemetry buffer-stats, andnv show system telemetry interface-stats. -
Configure adaptive routing on the switches. The AR counter counts activity only on AR-enabled ECMP ports.
-
Assign roles and pods to your switches so that you can filter the dashboard by them. See Assign Device Roles and Groups.
Dashboard Overview
Read the dashboard from top to bottom. Use the dashboard filters to narrow the views by device, role, or pod. All charts default to the latest day at five-minute granularity.
-
AR Congestion Changes: AR activity for each device. The counter counts adaptive routing egress port selections for eligible packets, such as RoCEv2, on AR-enabled ECMP ports. It isn't a count of congestion events or link transitions. It stays flat when the ports are idle or carry only TCP traffic. During congestion, or when an ECMP member goes down, its rate drops because fewer packets leave the port. Zero AR activity doesn't rule out RoCE traffic or congestion, and high AR activity with low buffer occupancy doesn't show that the fabric is healthy. For details, see AI Ethernet Statistic Format in the Cumulus Linux documentation.
-
Buffer Occupancy: current occupancy and watermark (the peak since the counter was last cleared) for traffic classes and priority groups. Values are in buffer cells, not bytes.
-
Carrier Changes: carrier changes, carrier up changes, and carrier down changes.
-
ECN Marking: packets marked with ECN.
-
Drops: WRED drops, head-of-queue discards, no-buffer discards, and priority-group buffer discards.
-
Interface Discards: inbound, outbound, and link-down discards.
-
Interface Congestion Summary: one row for each device and interface, with the traffic-class buffer watermark and current occupancy, ECN marks, WRED drops, carrier changes, and link-down discards for the selected time range. Click a column header to rank interfaces by that column.
Congestion or Link Instability?
Compare buffer occupancy and carrier changes on the same interface:
|
Buffer occupancy |
Carrier changes |
Possible interpretation |
Next check |
|---|---|---|---|
|
Rising |
Zero |
Queue pressure without carrier transitions |
ECN marks, drops, and current occupancy on the same interface |
|
Near baseline |
Nonzero |
Possible link instability |
Interface discards and link events on the same interface |
|
Rising |
Nonzero |
Queue pressure and link transitions together |
Interface identity and event timing, before you decide which caused which |
|
Near baseline |
Zero |
Neither signal shows a problem |
Telemetry freshness, drops, and other diagnostics |
Ask Sherlock About AR Congestion
You can also ask Sherlock about adaptive routing and congestion on a switch. Sherlock reads the same data as the dashboard and treats the AR counter as activity, not as proof of congestion. For example:
-
"Show the adaptive routing congestion counter on leaf-01 for the last hour."
-
"Was there congestion on leaf-01 in the last hour, and which interfaces were affected?"
See Ask Sherlock.
Last updated: