Networking Minerva User Guide

Adaptive Routing Congestion

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.json as 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 apply
    

    To check the settings, run nv show system telemetry ai-ethernet-stats, nv show system telemetry buffer-stats, and nv 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.

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: