PFC Deadlock Detection & Recovery

La pause PFC est ce qui rend RoCEv2 sans perte, mais dans de rares conditions de topologie et de routage elle peut créer une dépendance circulaire où chaque switch est en pause à attendre le suivant dans un cycle, et le trafic s'arrête indéfiniment. OcNOS-DC intègre un watchdog qui détecte le cycle en quelques millisecondes et vide automatiquement la file affectée, avant que les tâches d'entraînement ne se figent.

Un cycle de pause à 3 switchs

Trois switches en dépendance circulaire. Chacun est mis en pause sur sa file prioritaire sans perte, en attente que le switch suivant se vide. Sans intervention, le cycle est stable indéfiniment. Le watchdog d'OcNOS se déclenche après le délai configuré, vide la queue-3 sur le switch-A, et le cycle s'effondre.

Cycle de blocage PFC et récupération par watchdog Trois switches disposés en triangle. Les flèches de pause pointent dans le sens horaire de chaque switch vers le suivant, indiquant que chaque switch est mis en pause en attente du switch en aval. Une icône de watchdog sur le switch A montre le minuteur de deadlock d'OcNOS se déclenchant pour vider la file et briser le cycle. Pause PFC (CoS 3) pause PFC pause PFC WD déclenchement du watchdog vider la file 3 Switch-Aen pause sur Q3en attente de B Switch-Ben pause sur Q3en attente de C Switch-Cen pause sur Q3en attente de A DEADLOCK PFC · TIMEOUT WATCHDOG · VIDAGE DE FILE · AUTO-RÉCUPÉRATION

Comment PFC crée un blocage

Le PFC est une pause hop-by-hop : le switch-A déclenche une pause vers son équipement amont lorsque sa file d'attente d'ingress sans perte se remplit au-delà du seuil, et l'amont cesse d'émettre. Cela fonctionne très bien sur une topologie en arbre où il existe une seule direction de flux de trafic. Sur une fabric leaf-spine à chemins multiples, le réacheminement ECMP autour d'une défaillance de liaison peut, dans des conditions spécifiques, créer un chemin circulaire où chaque switch est en pause dans l'attente du suivant.

Une fois le cycle formé, il est stable : il y a assez de mémoire pour contenir les trames en pause, le protocole de routage estime que tout va bien, et PFC continue de se réaffirmer sur chaque switch. Sans intervention, la priorité lossless affectée reste bloquée indéfiniment. Le trafic RoCEv2 s'arrête, les opérations collectives xCCL (NCCL / RCCL / oneCCL) expirent, la tâche d'entraînement se bloque.

Le watchdog OcNOS-DC

Detection

Temporisateur par port et par priorité

Un timer s'exécute par port d'entrée et par priorité lossless. Si la priorité est mise en pause en continu pendant l'intervalle configuré (généralement 100 à 400 ms), le watchdog se déclenche.

Recovery

Vidage automatique des files d'attente

Lors d'un déclenchement, la file d'entrée concernée est drainée : des trames sont brièvement abandonnées pour rompre le cycle. Les trames perdues déclenchent une retransmission par les opérations collectives xCCL, mais l'alternative est un blocage indéfini.

Restoration

Restauration automatique après rétablissement

Après l'intervalle de restauration configuré, le fonctionnement PFC normal reprend sur la priorité concernée. Aucune intervention d'opérateur requise ; le fabric redevient lossless en quelques secondes.

Télémétrie

compteurs gNMI

Les événements de déclenchement du watchdog, les durées de drain et les compteurs de pause par priorité sont diffusés via gNMI pour une supervision en boucle fermée de la fabric. Les SRE voient les événements de deadlock comme des alertes, et non comme des blocages silencieux de l'entraînement.

Tunable

Temporisateurs configurables par l'opérateur

Le délai de détection, la durée de drain et l'intervalle de restauration sont configurables en CLI par port et par priorité. Les valeurs par défaut conviennent à la plupart des fabrics ; l'opérateur peut raccourcir les minuteries sur les clusters à fort enjeu.

Scope

Niveau de licence DC-PLUS

Fait partie de la SKU OcNOS-DC PLUS aux côtés du reste de la pile RoCEv2 sans perte. Confirmé sur les plateformes Broadcom Tomahawk 4 et Tomahawk 5.

Quand vous verrez ce déclenchement

Dans un fabric bien conçu avec une topologie et un routage appropriés, les deadlocks PFC sont rares. La plupart des opérateurs n'en voient jamais en des années d'exploitation. Le watchdog importe parce que « rare » ne veut pas dire « jamais »: une défaillance de lien pendant une fenêtre de convergence du routage, une erreur de configuration des priorités PFC sur un seul port, ou un événement de congestion transitoire sur un schéma de trafic inhabituel peuvent tous créer les conditions propices. Sans le watchdog, lorsqu'il se déclenche effectivement, le cluster IA s'arrête et l'équipe d'exploitation a des heures de débogage devant elle. Avec le watchdog, vous obtenez une brève rafale de retransmissions et un événement journalisé.

L'essentiel

  • Filet de sécurité sans perte. Le watchdog fait toute la différence entre « PFC est théoriquement risqué sur les fabrics IA de production » et « PFC peut être déployé en toute sécurité à grande échelle ».
  • Reprise en moins d'une seconde. Détection + drain + restauration s'achèvent généralement en moins d'une seconde. xCCL retransmet une petite fenêtre de trafic RDMA ; la tâche se poursuit.
  • Configuration standard. Le watchdog est activé par défaut dans le modèle lossless d'OcNOS-DC. Vous n'avez pas besoin de penser à l'activer.
  • Observable. Chaque incident est journalisé, comptabilisé et diffusé via gNMI. Une surveillance en boucle fermée avec votre stack d'observabilité existant.
  • Ajustable selon les enjeux. Abaissez les timers sur les clusters d'entraînement critiques ; les valeurs par défaut conviennent à une fabric DC générale.

Vous validez le comportement lossless sur une nouvelle fabric ? Commencez par le watchdog.

Demander une démo technique →