Synthèse
- Le 25 janvier 2023, Microsoft a connu un incident réseau mondial qui a affecté la connectivité entre Internet et Azure, la connectivité entre services et régions, les connexions ExpressRoute, Microsoft 365 et d’autres services Microsoft. Un rapport Microsoft 365 destiné aux clients indique une fenêtre d’impact de 07:05 à 12:43 UTC et renvoie vers l’identifiant de suivi WAN Azure VSG1-B90. [1][2]
- L’explication publique de Microsoft indique qu’un changement planifié visait à mettre à jour une adresse IP sur un routeur WAN. Une commande s’est comportée différemment selon les équipements réseau et n’avait pas été entièrement qualifiée sur le routeur où elle a été exécutée. Des messages ont atteint d’autres routeurs WAN, qui ont recalculé leurs tables d’adjacence et de transfert; pendant la convergence, les routeurs ne pouvaient pas transférer correctement les paquets. [1][2][4]
- ThousandEyes a observé de manière indépendante des retraits BGP, des réannonces, des changements de chemins répétés autour des préfixes associés à l’AS8075 de Microsoft, des bascules entre pairs directs et chemins de transit, ainsi que des pertes de paquets corrélées aux événements de routage. Ces preuves établissent une instabilité de routes visible de l’extérieur, et non chaque commande privée ou état de table interne. [3]
- La question utile en matière de responsabilité n’est pas de savoir si le changement était planifié, mais si sa sémantique exacte a été testée sur l’ensemble des équipements et logiciels qui allaient l’exécuter, si la propagation était délimitée et si des invariants de route et de joignabilité pouvaient arrêter le déploiement avant un impact mondial.
- Microsoft a indiqué que les premiers travaux de surveillance ont examiné le DNS avant que le WAN ne soit confirmé comme source de la panne. Cette séquence soulève une question de classification et d’observabilité: la surveillance identifiait-elle les symptômes utilisateurs, ou pouvait-elle distinguer rapidement le mécanisme de plan de contrôle et de plan de transfert qui en était responsable? Elle ne prouve ni dissimulation ni retard déraisonnable.
- La redondance ExpressRoute reste une architecture client pertinente, mais elle ne transfère pas aux clients le contrôle des commandes du backbone privé de Microsoft, des adjacences de routeurs, de la convergence du transfert ni de la récupération mondiale. La responsabilité suit les contrôles que chaque partie exploite réellement. [8]-[11]
- Les normes BGP et opérationnelles expliquent l’annonce, le retrait, le filtrage et le drainage planifié du trafic. Elles ne prouvent pas l’état interne de Microsoft. L’autorisation d’origine RPKI n’aurait pas validé une commande propre à un équipement, le recalcul interne des adjacences ni la continuité du transfert. [18]-[20]
- Les preuves post-incident les plus solides lieraient la demande de changement à la commande exacte et à l’état candidat, à une matrice de qualification par équipement et version, aux invariants de route, à un canari représentatif, à un domaine de propagation maximal, à des sondes indépendantes, à un déclencheur de retour arrière automatique et à des journaux de récupération conservés.
- La documentation actuelle de Microsoft décrit l’ingénierie du réseau mondial, la surveillance, ExpressRoute et les contrôles Virtual WAN. Ces documents identifient les mécanismes disponibles et les affirmations de conception actuelles; ils ne prouvent pas que chaque contrôle existait sous la même forme en janvier 2023 ni qu’il demeure appliqué en continu. [7]-[17]
- Les informations publiques n’identifient pas la commande exacte, chaque modèle de routeur et version logicielle, chaque préfixe affecté, un nombre complet de clients, les pertes financières, les conclusions réglementaires, la négligence, l’intention malveillante ni une faute du fournisseur. Ces limites font partie de la conclusion.
Un changement planifié n’est pas un changement qualifié
L’expression « changement planifié » peut sembler rassurante. Elle implique une autorisation, une préparation et un objectif connu. Dans cet incident, Microsoft a décrit l’action initiale comme un changement planifié visant à mettre à jour une adresse IP sur un routeur WAN. L’objectif était une maintenance ordinaire, et non une tentative de modifier la joignabilité mondiale. Pourtant, la commande utilisée pour ce travail se serait comportée différemment selon les équipements réseau et n’avait pas été entièrement qualifiée sur le routeur où elle a été exécutée. [1][2][4]
Cet écart constitue la première conclusion en matière de responsabilité. La planification consigne ce qu’une organisation a l’intention de faire. La qualification teste ce que le système déployé fera réellement. Les deux sont liés, mais ils ne sont pas interchangeables.
Les routeurs ne sont pas des conteneurs génériques pour des commandes textuelles. Une commande est interprétée par une plateforme, une version de système d’exploitation, un ensemble de fonctionnalités, un contexte de configuration et une topologie de voisinage particuliers. La même syntaxe peut être non prise en charge, développée différemment, appliquée à une portée différente ou déclencher des opérations dépendantes différentes au sein d’un parc hétérogène.
Même lorsque la configuration résultante semble similaire, le chemin entre un changement local et les messages de protocole, l’état des adjacences, la sélection des routes et les entrées de transfert peut différer.
L’explication publique de Microsoft pointe donc vers une défaillance de contrôle plus précise que « quelqu’un a fait une erreur ». La question est de savoir si le système de changement savait quels équipements recevraient la commande ou y réagiraient, et si ses preuves de qualification représentaient ces équipements. Un test sur une plateforme ne peut pas établir le comportement sur une autre simplement parce que les deux sont appelés routeurs.
Un test en laboratoire ne peut pas établir la sécurité en production s’il omet la version logicielle, le nombre de pairs, l’échelle de routes, l’ensemble de politiques ou le chemin de propagation qui crée le risque.
La distinction importe parce que les commandes réseau sont une autorité exécutable. Une description de changement peut dire « mettre à jour une adresse IP ». Le routeur n’exécute pas cette description. Il exécute des commandes et des protocoles qui modifient un état. Les autres routeurs répondent aux messages qu’ils reçoivent, et non à l’objectif commercial du ticket. Les paquets rencontrent la table de transfert résultante, et non l’enregistrement d’approbation.
Un processus de changement responsable doit donc préserver une chaîne allant de l’intention à l’effet opérationnel:
- L’objectif approuvé et la portée exacte.
- La commande rendue ou la configuration candidate.
- Le modèle d’équipement, la version logicielle, le rôle et la topologie censés l’exécuter.
- Les messages de protocole et les transitions d’état qu’elle est censée provoquer.
- Les invariants de route et de joignabilité qui doivent rester vrais.
- Le canari et la limite de propagation utilisés pour tester ces attentes.
- Le déclencheur et l’autorité du retour arrière.
- Les observations montrant que le réseau est revenu à l’état prévu.
Sans cette chaîne, un changement planifié peut être complet sur le plan procédural et non qualifié sur le plan opérationnel. L’incident de janvier 2023 est important précisément parce que l’explication publique relie un objectif de routine à un comportement dépendant de l’équipement et à des conséquences à l’échelle du réseau.
Le mécanisme de défaillance est passé par le WAN
Les pannes d’application produisent souvent des symptômes de type réseau. Un utilisateur voit un délai d’attente, un échec de connexion ou une page qui ne se charge pas. Ces observations seules n’établissent pas si le DNS, l’authentification, la capacité applicative, le stockage, un chemin de transport ou un contrôle de routage a échoué.
Le dossier disponible pour le 25 janvier est plus précis. Microsoft a relié l’événement à son réseau étendu. Son compte rendu indique que des messages ont été envoyés à d’autres routeurs WAN. Ces routeurs ont recalculé leurs tables d’adjacence et de transfert. Pendant cette convergence, ils ne pouvaient pas transférer correctement les paquets. [1][2][4]
Les adjacences et le transfert ne sont pas des processus d’arrière-plan abstraits. Les adjacences de routage établissent quels équipements réseau échangent des informations de joignabilité. Le plan de contrôle utilise ces informations et les politiques pour sélectionner les chemins. Le plan de transfert installe des entrées qui indiquent à un routeur où envoyer les paquets. Si un changement amène une large population de routeurs à recalculer ces relations et entrées, l’effet peut s’étendre bien au-delà du premier équipement.
Le résultat décrit par Microsoft a suivi ce mécanisme. La connectivité entre les clients sur Internet et Azure a été affectée. La connectivité entre services dans les régions a été affectée. La connectivité ExpressRoute a été affectée. Microsoft 365 et Power Platform ont également subi un impact. [1][2][4][6]
Cette ampleur ne signifie pas que chaque service a connu une panne ou une durée identiques. Elle signifie que le WAN se situait sous plusieurs chemins de service. Un substrat de routage partagé peut transformer un changement réseau en symptômes applicatifs apparemment sans rapport, car les services dépendent de la même interconnexion, du même backbone et de la même joignabilité régionale.
La documentation actuelle sur le réseau mondial de Microsoft aide à expliquer la surface de dépendance. Microsoft décrit un WAN mondial privé reliant les centres de données, transportant le trafic sur son backbone et s’interconnectant avec les réseaux externes. ExpressRoute fournit une connectivité privée vers les services Microsoft par le biais de relations de routage, tandis que les régions et services Azure s’appuient sur le réseau du fournisseur pour échanger du trafic. [7]-[10]
Ces descriptions actuelles ne doivent pas être lues rétroactivement comme une carte complète de l’incident de 2023. Elles établissent pourquoi un contrôle du WAN peut avoir des conséquences interservices. Si le backbone ne peut pas transférer correctement les paquets, un processus applicatif sain peut rester injoignable. Si la connectivité inter-régions se dégrade, les services distribués peuvent perdre des dépendances même lorsque des hôtes individuels restent opérationnels. Si les chemins ExpressRoute traversent le domaine de contrôle affecté, les circuits privés peuvent subir un impact bien qu’ils évitent l’Internet public.
C’est pourquoi la thèse de l’article ne peut pas survivre à la suppression des faits réseau. L’incident n’est pas une leçon générique sur la gestion des changements avec des routeurs pour décor. La commande, le recalcul des adjacences, l’état des tables de transfert, le churn de routes, les pertes de paquets, les chemins inter-régions et la frontière ExpressRoute constituent le cœur causal et probatoire.
L’observation BGP externe a fourni un second plan de preuves
Microsoft contrôlait les enregistrements de changement internes et la télémétrie des routeurs. Des observateurs indépendants contrôlaient un autre type de preuves: quels changements de routage et effets de connectivité étaient visibles depuis l’extérieur du réseau privé.
ThousandEyes a signalé un nombre important de changements de routes BGP affectant des préfixes associés à l’AS8075 de Microsoft à partir de peu après 07:10 UTC. L’observateur a constaté des retraits suivis de réannonces, des changements répétés impliquant des chemins directs et des fournisseurs de transit, ainsi que des pertes de paquets qui ont augmenté avec l’activité de routage. Certains emplacements observés ont connu une perte complète de paquets pendant des portions de l’événement. [3]
Ces preuves sont précieuses parce qu’elles n’ont pas été produites par le récit d’incident de Microsoft. Elles montrent que l’instabilité des routes et la perte de joignabilité étaient visibles depuis des points de vue indépendants. Elles rendent aussi le mécanisme réseau large testable. Une affirmation selon laquelle un événement de routage WAN a affecté la connectivité externe devrait être cohérente avec les observations de routes et de paquets à l’extérieur du domaine administratif de l’opérateur.
Les preuves indépendantes doivent néanmoins rester délimitées. Un observateur BGP voit les mises à jour qui atteignent ses collecteurs ou agents. Il ne voit pas chaque adjacence privée, chaque route interne, chaque entrée de table de transfert ni la commande qui les a provoquées. Il peut observer un retrait sans savoir si le routeur d’origine a supprimé une route, si une politique intermédiaire l’a supprimée ou si un autre événement interne a modifié ce qui était exporté.
De même, la corrélation temporelle n’est pas une reconstruction causale complète. ThousandEyes a vu des changements de routes et des pertes de paquets autour de l’incident. L’explication de Microsoft fournit le compte rendu interne d’une commande et de la convergence du WAN. Les deux enregistrements sont mutuellement cohérents, mais aucun ne doit être utilisé pour revendiquer les preuves de l’autre.
Un rapport d’incident responsable rapprocherait explicitement les plans:
- Quels changements internes de route ou d’adjacence ont produit chaque retrait observé de l’extérieur?
- Quels préfixes ont été affectés, et quels services en dépendaient?
- Quels chemins de pairs directs ont disparu, et quels chemins de transit sont devenus des alternatives?
- Le trafic a-t-il basculé vers des chemins qui manquaient de capacité adéquate ou de transfert stable?
- Quel événement de stabilisation interne correspond au retour externe de routes stables?
- Y a-t-il eu des pannes de joignabilité internes que les données BGP publiques ne pouvaient pas voir?
- Les sondes externes ont-elles déclaré la récupération avant que chaque service Microsoft ait récupéré?
La chronologie publique suggère que la stabilisation des routes et la récupération des services n’étaient pas des événements identiques. ThousandEyes a signalé une stabilisation majeure vers 08:10, avec une activité BGP ultérieure également observée. Microsoft a indiqué que la récupération automatique a commencé peu après 08:10, que la plupart des services affectés ont récupéré vers 09:00, que les équipements réseau étaient stables à 09:35 et que les services Microsoft 365 restants ont récupéré à 12:43. [1][3][4]
Cette différence n’est pas contradictoire. Rétablir une route peut être nécessaire sans être suffisant pour une récupération complète du service. Les connexions peuvent devoir réessayer. Les caches et les files d’attente peuvent devoir se vider. Les services dépendants peuvent devoir rétablir des sessions ou réparer un état. Le dossier responsable devrait montrer où la récupération du réseau s’est terminée et où la restauration du service s’est poursuivie.
Le churn BGP peut transformer la redondance en instabilité
Les chemins redondants sont un fondement de la conception des réseaux Internet et cloud. Si un chemin direct disparaît, un autre chemin peut être disponible via un fournisseur de transit. Pourtant, la redondance ne garantit pas que des changements de chemins rapides et répétés seront inoffensifs.
ThousandEyes a décrit des retraits qui ont largement affecté les pairs directs, suivis d’une utilisation de chemins alternatifs puis d’une réannonce de chemins directs plus courts. La répétition a produit un churn de routes. [3] Chaque changement peut amener les routeurs à reconsidérer leur route sélectionnée. Le trafic peut se déplacer entre des chemins de capacité, latence, politique et exposition aux pannes différentes. Des paquets peuvent être perdus pendant que l’état de transfert rattrape les décisions du plan de contrôle.
La spécification BGP définit comment les locuteurs échangent la joignabilité et retirent des routes. Elle ne promet pas une convergence instantanée et synchronisée sur Internet. Les opérateurs choisissent les politiques localement, reçoivent les mises à jour à des moments différents et installent les changements de transfert selon leur propre calendrier. [18]
Cela signifie qu’un chemin de repli n’est pas une voie de secours statique qui attend d’accepter le trafic. Il fait partie d’un système de contrôle distribué. Lorsque de nombreuses routes changent rapidement, un chemin de transit peut recevoir une charge soudaine. Un pair direct peut disparaître et revenir avant que tous les équipements s’accordent sur le même meilleur chemin. Certains réseaux peuvent conserver une route que d’autres ont retirée. Les connexions applicatives peuvent traverser différents états pendant la transition.
Des conseils opérationnels comme la RFC 7454 mettent l’accent sur une politique de routage disciplinée et le filtrage. La RFC 8326 décrit des mécanismes d’arrêt progressif destinés à drainer le trafic avant une maintenance BGP planifiée. Aucune de ces normes n’est une prescription directe pour l’incident interne de Microsoft, et le dossier public ne dit pas quels mécanismes ont été utilisés. Elles établissent toutefois un principe de contrôle utile: la maintenance devrait viser à déplacer le trafic de manière délibérée et observable, plutôt que de permettre une rafale incontrôlée de retraits et de réannonces de routes. [19][20]
Pour un changement de WAN mondial, l’invariant pertinent n’est pas simplement « un autre chemin existe ». Un ensemble plus robuste poserait les questions suivantes:
- Les préfixes requis restent-ils joignables par au moins un chemin qualifié?
- Le chemin alternatif dispose-t-il d’une capacité suffisante pour le déplacement attendu?
- La fréquence des changements de chemins est-elle inférieure à un seuil sûr?
- Les entrées de transfert convergent-elles dans un intervalle testé?
- Les changements de pairs directs et de transit sont-ils visibles par des sondes indépendantes?
- Le déploiement peut-il s’interrompre avant que la même commande n’affecte le domaine de propagation suivant?
- L’accès de gestion reste-t-il disponible lorsque les routes de service changent?
La redondance est une affirmation de conception. La preuve opérationnelle est de savoir si le trafic peut utiliser le chemin redondant dans les conditions exactes de panne et de changement qui surviennent.
L’échelle mondiale a changé le sens du rayon d’impact
Une commande appliquée à un routeur peut sembler locale. Un message de protocole qui amène de nombreux routeurs à recalculer un état n’est pas local. La frontière de responsabilité doit suivre le domaine de propagation, et non le clavier ou l’équipement où la commande initiale a été saisie.
L’explication publique de Microsoft indique que la commande a envoyé des messages à d’autres routeurs WAN. [4] Cette déclaration fait de la propagation une propriété de changement de premier ordre. Avant approbation, l’opérateur devrait savoir quels équipements peuvent réagir, quel état ils vont recalculer et comment la réaction peut être arrêtée.
Dans un backbone mondial, le rayon d’impact a plusieurs dimensions:
- Portée des équipements:les routeurs et versions logicielles qui reçoivent ou interprètent le changement.
- Portée protocolaire:les adjacences, réflecteurs de routes, pairs et sessions de contrôle affectés.
- Portée des préfixes:les entrées de joignabilité qui peuvent être retirées, remplacées ou sélectionnées différemment.
- Portée du trafic:les flux clients, de service, inter-régions et de gestion utilisant ces entrées.
- Portée géographique:les régions et points d’interconnexion qui partagent le domaine de contrôle.
- Portée de la récupération:les systèmes et opérateurs requis pour restaurer un état stable.
Un changement peut être petit en nombre d’équipements mais grand en portée protocolaire. Il peut toucher un objet de configuration tout en modifiant des milliers de chemins sélectionnés. Il peut être réversible sur le routeur initial tout en laissant le reste du réseau en reconvergence.
Cela crée une exigence d’exécution délimitée. Un système sûr devrait pouvoir appliquer le candidat à un domaine représentatif mais limité, observer les invariants de route et de joignabilité, et s’arrêter avant que les messages ne se propagent mondialement. Le canari doit exercer la même sémantique de commande et le même rôle réseau que la cible de production. Un routeur de laboratoire générique ou une périphérie non représentative ne suffit pas.
Le canari a aussi besoin d’une durée liée au comportement de convergence du système. Si un problème de route n’apparaît qu’après que les messages atteignent une population plus large, un contrôle de cinq secondes sur le succès local de la commande ne prouve presque rien. La fenêtre d’observation devrait inclure les changements d’adjacences, la distribution des routes, l’installation du transfert, les sondes de trafic et toute réponse d’automatisation différée.
La conception la plus solide rendrait les limites du rayon d’impact exécutoires plutôt que consultatives. Le contrôleur de déploiement connaîtrait l’ensemble d’équipements autorisé et la portée de route de chaque étape. Il rejetterait une commande dont les destinataires dépassent cette limite. Il exigerait des preuves explicites avant de passer à l’étape suivante. Un contrôleur indépendant pourrait retirer l’autorisation ou déclencher un retour arrière lorsque les invariants échouent.
Les documents publics ne montrent pas si de tels contrôles existaient ni comment ils ont été modifiés après l’incident. Ils montrent pourquoi un WAN mondial ne peut pas traiter la portée des commandes comme une question d’attente de l’opérateur.
La surveillance a vu des symptômes avant de classer la panne réseau
Le compte rendu de Microsoft indique que l’enquête initiale a examiné le DNS avant que le WAN ne soit confirmé comme source. [4] Cette séquence ne doit pas être dramatisée. Les délais d’attente DNS peuvent accompagner de larges problèmes de joignabilité, et les intervenants testent raisonnablement plusieurs hypothèses. La question utile est de savoir si l’observabilité pouvait distinguer rapidement le symptôme du mécanisme.
Du point de vue de l’utilisateur, une requête DNS échouée, un délai d’attente HTTP et un échec d’authentification peuvent tous ressembler à une indisponibilité de service. Du point de vue de l’opérateur, ils surviennent à des couches différentes et exigent une autorité de récupération différente. Si le réseau perd des paquets, les alarmes applicatives peuvent se multiplier sans identifier la cause commune.
La documentation actuelle de Microsoft décrit des outils tels que Network Watcher et Connection Monitor qui peuvent collecter des preuves de connexion, de joignabilité, de topologie et de diagnostic. [12]-[15] Ces capacités montrent ce qu’une conception de surveillance par couches peut conserver. Elles ne prouvent pas que les mêmes outils, configurations ou alertes couvraient les chemins de janvier 2023.
Un ensemble de preuves d’incident utile alignerait les signaux par couche:
- Événements du contrôleur de changement montrant la commande exacte et la cible.
- Journaux de routeurs montrant la génération de messages et les changements d’adjacences.
- Informations de routage montrant les chemins sélectionnés et retirés.
- Preuves de transfert montrant les prochains sauts installés.
- Sondes actives sur les chemins Internet, inter-régions et ExpressRoute.
- Transactions DNS et applicatives montrant les symptômes visibles par les clients.
- Données de dépendance de service montrant quelles pannes partagent le même chemin réseau.
L’objectif n’est pas d’éliminer le test d’hypothèses. C’est de rendre la panne réseau commune lisible avant que chaque service dépendant n’ouvre un incident séparé. Si le churn de routes, le recalcul des adjacences et les pertes de paquets augmentent en même temps que les délais d’attente DNS et HTTP, le système de réponse devrait pouvoir les relier.
La surveillance a aussi besoin d’indépendance par rapport au chemin affecté. Un tableau de bord accessible uniquement via le WAN en panne peut disparaître au moment où il est le plus nécessaire. Des sondes partageant le même domaine de routage peuvent confirmer mutuellement leur angle mort. Les observateurs BGP externes, les clients synthétiques hors réseau, une connectivité de gestion séparée et la télémétrie interne du fournisseur couvrent chacun des limites différentes.
La responsabilité ne demande pas seulement si une alerte s’est déclenchée, mais ce que l’alerte pouvait prouver. Un délai d’attente DNS prouve une transaction échouée. Un retrait BGP prouve une mise à jour de route observée à un point de vue. Un instantané de table de transfert prouve un état installé sur un équipement. Une explication complète exige que les enregistrements soient reliés sans traiter l’un comme un substitut de tous les autres.
ExpressRoute montre où la responsabilité se déplace et où elle ne se déplace pas
ExpressRoute offre aux clients une connectivité privée vers les services cloud de Microsoft par l’intermédiaire de fournisseurs de connectivité et d’emplacements de périphérie Microsoft. Il utilise BGP pour échanger des routes. Microsoft recommande des circuits redondants, des emplacements diversifiés et une architecture client résiliente. [8]-[11]
Ces contrôles comptent. Un client qui dépend d’un seul circuit, d’un seul emplacement de peering, d’un seul fournisseur ou d’un seul routeur sur site crée une concentration évitable. Un client peut surveiller ses sessions, valider les routes annoncées, tester le basculement et concevoir des applications qui tolèrent la perte d’un chemin.
Mais la redondance du client ne transfère pas le contrôle du changement du WAN mondial de Microsoft. Les clients n’ont pas choisi la commande, n’ont pas qualifié son comportement sur le parc de routeurs de Microsoft, n’ont pas décidé quels équipements WAN recevraient des messages et n’ont pas contrôlé la convergence interne. Ils ne pouvaient pas inspecter chaque table de transfert de Microsoft ni arrêter le déploiement du fournisseur.
Cette frontière évite deux erreurs opposées. La première consiste à traiter le fournisseur de cloud comme responsable de toutes les conséquences pour les clients, y compris les défaillances de l’architecture appartenant au client. La seconde consiste à utiliser les conseils de résilience client pour excuser un événement de mode commun contrôlé par le fournisseur.
La responsabilité peut être cartographiée par le contrôle:
| Acteur | Contrôles | Preuves dues |
|---|---|---|
| Opérateur réseau Microsoft | Qualification des commandes WAN, inventaire des équipements, portée de propagation, routage interne, récupération du backbone | État candidat exact, couverture équipement/version, invariants de route, résultats du canari, journaux de retour arrière, chronologie de récupération |
| Fournisseur de connectivité | Circuit client, périphérie de peering, livraison des routes, basculement local | Journaux de circuit et de session, changements de routes, résultats de capacité et de basculement |
| Équipe réseau du client | Diversité des circuits, routage sur site, cartographie des dépendances, basculement applicatif | Conception de redondance, modes de défaillance testés, enregistrements BGP et de joignabilité locaux |
| Observateur indépendant | Mesures externes de routes et de paquets | Portée des points de vue, horodatages, méthodologie, limites observées |
Ce tableau n’attribue pas de responsabilité juridique. Il maintient la responsabilité factuelle alignée sur l’autorité opérationnelle.
L’événement de janvier montre aussi pourquoi la diversité nominale des chemins doit être testée contre les modes communs du fournisseur. Deux circuits clients peuvent se terminer à des points physiques différents tout en dépendant du même contrôle de backbone Microsoft. Un repli Internet public peut encore atteindre les services via le même WAN affecté. La véritable résilience exige de savoir quelles pannes les chemins ne partagent pas.
Les conseils de haute disponibilité de Microsoft sont utiles pour concevoir le côté client. [9] Le dossier d’incident est nécessaire pour évaluer le côté fournisseur. Les deux sont nécessaires, et aucun ne doit être utilisé pour effacer l’autre.
La qualification des équipements doit être un système de preuves maintenu
Un test de laboratoire ponctuel ne suffit pas pour un parc de routeurs hétérogène. Les populations d’équipements changent. Les logiciels sont mis à niveau. Les cartes de ligne, fonctionnalités, modèles de politique et rôles topologiques évoluent. Une commande prouvée sur une version peut devenir non prouvée lorsque l’ensemble de production change.
L’explication publique selon laquelle le comportement de la commande variait selon les équipements crée une demande de preuves concrète: quelle matrice reliait la sémantique de la commande au modèle, au logiciel, à la fonctionnalité et au rôle?
Cette matrice ne devrait pas être un tableur statique détaché du déploiement. Elle devrait être générée à partir de l’inventaire actuel et liée au changement. Pour chaque cible, elle devrait identifier:
- La famille matérielle et les composants de transfert concernés.
- La version du système d’exploitation réseau et le niveau de correctif.
- L’ensemble de fonctionnalités activées et le comportement de l’analyseur de configuration.
- Le rôle de routage, le nombre de pairs et l’échelle de routes.
- L’expansion attendue de la commande et la transition d’état.
- Les preuves de laboratoire ou de préproduction utilisant les mêmes caractéristiques.
- Les exceptions connues et les combinaisons bloquées.
- La date et le responsable du résultat de qualification.
Le contrôleur de déploiement devrait échouer en position fermée lorsqu’une cible n’a pas de preuves actuelles. Un opérateur ne devrait pas pouvoir convertir « inconnu » en « compatible » simplement en poursuivant. Si une exécution d’urgence est nécessaire, l’exception devrait être explicite, étroite, limitée dans le temps et accompagnée d’un rayon d’impact plus petit et d’une observation plus forte.
Microsoft aurait déclaré qu’il bloquerait les commandes à fort impact et créerait des directives d’exécution sûre. [4] Le blocage est précieux lorsque la classe de commande interdite est précise et que le point d’application ne peut pas être contourné à la légère. Les directives sont plus faibles parce qu’elles reposent sur l’interprétation et la conformité.
Les questions de suivi utiles sont donc opérationnelles:
- Quels modèles de commandes sont devenus bloqués?
- À quelle couche sont-ils bloqués: client, contrôleur d’automatisation, équipement ou service d’autorisation?
- Les alias, modèles, API et variantes spécifiques au fournisseur sont-ils couverts?
- L’accès d’urgence peut-il contourner le blocage, et qui l’approuve?
- Le blocage tient-il compte de la topologie et du nombre de destinataires?
- Comment le contrôle est-il testé après les mises à niveau logicielles?
- Quelles preuves montrent que la commande bloquée ne peut pas atteindre la production par un autre chemin?
Le dossier public ne répond pas à ces questions. Les poser n’implique pas que Microsoft n’a pas agi. Cela définit ce qui transformerait une déclaration de remédiation en preuve opérationnelle vérifiable.
Les invariants de route rendent la réalité attendue testable
Les systèmes de changement valident souvent la syntaxe et les différences de configuration. Une commande syntaxiquement valide peut néanmoins violer l’objectif du réseau. Les invariants de route expriment cet objectif en des termes que le système peut tester.
Pour cet incident, les invariants auraient pu couvrir au moins quatre couches.
Invariants d’adjacenceindiqueraient quels peerings critiques doivent rester établis, quelles réinitialisations planifiées sont autorisées et combien de pertes simultanées sont acceptables. Un recalcul large en dehors de l’ensemble approuvé arrêterait le changement.
Invariants de routeidentifieraient les préfixes requis, les attentes d’origine et de prochain saut, les changements de chemins autorisés et les seuils maximaux de retraits. Ils détecteraient quand la joignabilité sort de la mise à jour d’adresse IP prévue.
Invariants de transferttesteraient si les routeurs ont installé des prochains sauts utilisables et si des paquets représentatifs pouvaient les traverser. L’accord du plan de contrôle ne suffit pas si l’état de transfert est absent ou incohérent.
Invariants de chemin de servicesonderaient les chemins Internet vers Azure, inter-régions, de service Microsoft, de gestion et ExpressRoute. Ils relieraient l’état des routeurs aux dépendances que les clients utilisent réellement.
L’ensemble d’invariants a besoin de propriété et de provenance. Une liste de routes critiques devient obsolète si les équipes de service créent de nouvelles dépendances sans la mettre à jour. Une sonde devient trompeuse si elle ne teste qu’un chemin sain. Un enregistrement de préfixe attendu devient dangereux si une adresse est transférée ou si un rôle de routage change sans que le registre soit mis à jour.
C’est là que la discipline de registre soutient les opérations sans prétendre gouverner la réalité. Des identifiants, enregistrements de préfixes, relations d’ASN, rôles de route et métadonnées de propriété exacts aident l’opérateur à définir ce qui devrait exister. Ils ne rendent pas la route joignable. Le code en cours d’exécution et la livraison de paquets observée restent la couche décisive.
Un système responsable compare le registre attendu avec plusieurs observations. Il vérifie la sortie de configuration, les informations de routage, les entrées de transfert, les sondes actives et les vues de routes externes. Une incohérence n’est pas automatiquement une preuve d’incident, mais c’est une raison d’arrêter un déploiement à fort impact jusqu’à ce que la différence soit comprise.
Le même modèle améliore l’examen post-incident. Au lieu de dire seulement que « le réseau a été rétabli », le rapport peut montrer quels invariants ont échoué, quand chacun est revenu à la normale et lesquels sont restés incertains. Cela rend la récupération vérifiable et les futurs tests de régression concrets.
Un canari représentatif doit exercer le chemin de propagation
Le déploiement canari est souvent décrit comme l’application d’un changement à un petit nombre de cibles. La petitesse est utile, mais la représentativité est plus importante. Un canari qui ne peut pas manifester la défaillance pertinente fournit une assurance faible même s’il reste sain.
Pour une commande WAN dépendante de l’équipement, un canari représentatif doit correspondre à la sémantique de la commande, à la famille logicielle, au rôle de routage, aux relations de pairs et au comportement de propagation de la cible de production. Il doit aussi être suffisamment isolé pour qu’une défaillance ne puisse pas déclencher le même recalcul mondial que le canari est censé détecter.
Cette combinaison est difficile. Si l’effet dangereux de la commande n’apparaît que lorsque les messages atteignent de nombreux routeurs, un seul équipement isolé peut ne pas le reproduire. La solution n’est pas d’abandonner la préproduction, mais de construire un environnement de test ou un domaine de production délimité qui reproduit le graphe pertinent tout en limitant les conséquences externes.
Une séquence solide pourrait être:
- Rendre et analyser statiquement la commande exacte par rapport à l’inventaire.
- La rejouer dans un laboratoire représentatif ou un environnement d’émulation réseau.
- Confirmer les changements d’adjacence, de route et de transfert attendus.
- L’appliquer à un seul domaine de production délimité avec un accès de gestion indépendant.
- Observer pendant un intervalle complet de convergence et de stabilité.
- Comparer l’état interne avec les sondes externes de route et de joignabilité.
- Passer au domaine suivant uniquement après que des preuves explicites sont validées.
La documentation actuelle de Microsoft décrit des concepts d’émulation et de surveillance réseau dans son ingénierie du réseau mondial, ainsi que des outils de diagnostic destinés aux clients. [7][12]-[15] Ces documents indiquent des mécanismes qui pourraient soutenir une telle séquence. Ils n’établissent pas le flux de travail exact de 2023.
Le dossier du canari devrait inclure des critères d’échec autant que de succès. Quel nombre de retraits arrête le déploiement? Quel changement d’adjacence est attendu? Quelle perte de paquets est tolérable? Combien de temps la convergence peut-elle se poursuivre avant le retour arrière? Qui peut déclarer qu’une métrique est trompeuse?
Sans critères prédéfinis, les intervenants peuvent rationaliser un avertissement comme une convergence normale jusqu’à ce que le rayon d’impact s’étende. Avec des critères, l’arrêt est le résultat par défaut lorsque la réalité s’écarte du modèle approuvé.
Le retour arrière doit prendre en compte l’état distribué
Revenir en arrière sur un changement réseau n’équivaut pas toujours à annuler une ligne sur un équipement. D’autres routeurs peuvent avoir reçu des messages, recalculé des chemins, installé des entrées de transfert, déplacé du trafic et déclenché des automatisations. Restaurer la configuration initiale est nécessaire, mais le réseau doit encore converger vers un état stable.
Microsoft a indiqué qu’au moment où le changement WAN récent a été identifié comme cause sous-jacente, la récupération automatique avait déjà commencé, avec des actions de récupération démarrant peu après 08:10 UTC. [1][3][4] Le dossier public ne divulgue pas chaque étape du retour arrière. Cette limite importe parce que les preuves de récupération devraient distinguer l’annulation de la commande de la stabilisation des routes et de la restauration des services.
Un plan de retour arrière vérifiable répondrait:
- Quelle configuration ou commande est annulée?
- Quels équipements ont reçu un état dépendant et doivent reconverger?
- Quel est l’état souhaité faisant autorité?
- Comment l’opérateur empêche-t-il des actions de remédiation concurrentes?
- Quels contrôles de route, de transfert et de joignabilité déclarent la récupération?
- Le retour arrière peut-il passer par un chemin de gestion indépendant du WAN affecté?
- Comment les effets de service résiduels sont-ils séparés d’une panne réseau continue?
- Quand l’incident peut-il être clos en toute sécurité?
L’automatisation peut réduire le délai, mais seulement si son déclencheur et sa portée sont fiables. Un retour arrière automatique fondé uniquement sur le code de sortie d’une commande peut manquer une panne de route. Un retour arrière fondé sur un taux d’erreur applicatif peut réagir trop tard ou à un problème sans rapport. Un déclencheur composite peut comparer les changements réseau attendus exacts avec les invariants protégés.
Le dossier de récupération devrait aussi préserver l’ordre causal. Si les routes se sont stabilisées vers 08:10, que la plupart des services ont récupéré vers 09:00, que les équipements étaient stables à 09:35 et que certains effets Microsoft 365 ont duré jusqu’à 12:43, un horodatage unique « résolu » masque des distinctions utiles. [1][3][4]
Ces distinctions aident les opérateurs à tester de futurs exercices. Ils peuvent mesurer le délai de détection du mécanisme réseau, le délai d’arrêt de la propagation, le délai de restauration de la stabilité des routes, le délai de restauration du transfert et le délai d’élimination des effets de service dépendants. Améliorer une métrique n’améliore pas automatiquement les autres.
Le retour arrière est donc un système de contrôle, et non un bouton. Sa crédibilité repose sur des preuves conservées montrant que le réseau distribué est revenu à la réalité opérationnelle prévue.
La mesure publique doit être rapprochée, pas traitée comme une décoration
Les rapports d’incident citent souvent des mesures externes après coup. L’usage le plus solide consiste à intégrer l’observation indépendante dans les décisions de changement et de récupération.
Pour un réseau tourné vers Internet, les données BGP externes peuvent révéler des retraits, des réannonces, des changements de chemins et des différences entre pairs. Des sondes actives peuvent montrer des pertes de paquets, de la latence, des résultats DNS et la joignabilité applicative depuis plusieurs réseaux. Ces signaux ne remplacent pas la télémétrie interne, mais ils couvrent ce que les propres points de vue de l’opérateur peuvent manquer.
L’incident de janvier montre pourquoi les deux sont nécessaires. Microsoft pouvait voir l’état interne des équipements. ThousandEyes pouvait voir les effets sur les routes et les paquets à l’extérieur de Microsoft. [3] Un client ou un pair peut voir une troisième frontière. Aucun point de vue unique ne définit l’ensemble du réseau.
Le rapprochement devrait préserver les horodatages, la portée et l’incertitude. Un changement de route interne sur un routeur peut précéder un retrait externe. Un collecteur peut recevoir une mise à jour après un délai de politique intermédiaire. Une sonde de paquets peut échouer avant qu’une route ne soit formellement retirée parce que le transfert est déjà incohérent. Une autre sonde peut continuer à réussir via un chemin qui reste disponible.
Le système de preuves devrait donc éviter de forcer chaque signal dans une chronologie simpliste unique. Il devrait conserver:
- Les horodatages d’origine et la source d’horloge.
- L’identité et le réseau du point de vue.
- Le préfixe, le pair et le chemin observés.
- La classification plan de contrôle contre plan de transfert.
- La confiance et les angles morts connus.
- Les liens vers l’action de changement et de récupération supposée correspondante.
L’analyse commerciale d’un observateur externe n’est pas une omniscience neutre. Elle a des choix de couverture et des limites méthodologiques. Il en va de même des tableaux de bord de l’opérateur. La responsabilité s’améliore lorsque chaque source indique ce qu’elle a mesuré et que le rapport teste l’accord et le désaccord entre elles.
Cela protège aussi contre les surinterprétations. Le churn BGP public ne prouve pas que chaque chemin privé Azure a échoué. Des sondes réussies depuis un réseau ne réfutent pas des pannes ailleurs. Un label de service mondial ne signifie pas un impact uniforme. Le dossier devient plus crédible lorsqu’il garde ces limites visibles.
RPKI n’aurait pas validé cette commande
La présence de churn de routes BGP peut conduire à recommander automatiquement RPKI. Cela confondrait deux problèmes de contrôle différents.
RPKI et la validation d’origine de route aident un réseau à évaluer si un système autonome est autorisé à annoncer un préfixe. Ce sont des protections importantes contre les origines non autorisées ou erronées. Cet incident, tel que décrit publiquement, concernait un changement planifié à l’intérieur du WAN de Microsoft, un comportement de commande dépendant de l’équipement et une large convergence de routage. Les preuves disponibles ne disent pas qu’un AS non autorisé a annoncé les préfixes de Microsoft.
Une origine peut être valide alors que la route est opérationnellement incorrecte. Un préfixe peut être annoncé par l’AS autorisé mais par une politique non intentionnelle, à une mauvaise portée ou pendant une convergence instable. RPKI ne valide pas la commande interne, chaque adjacence, le prochain saut sélectionné, l’installation de la table de transfert, la conception du canari ni la séquence de retour arrière.
Cette frontière ne rend pas les données de registre et d’autorisation sans intérêt. Des enregistrements de préfixes et d’ASN exacts aident à définir les origines attendues et à détecter une autre classe d’erreur. Ils devraient faire partie de l’ensemble d’invariants. Mais ils ne peuvent pas être promus en preuve de continuité du réseau.
La distinction reflète un principe opérationnel plus large. Les enregistrements établissent l’identité, l’autorisation et les relations attendues. Les routeurs en cours d’exécution établissent la joignabilité. Le premier peut contraindre et auditer le second, mais il n’est pas souverain sur lui. La livraison des paquets suit l’état installé.
Pour l’événement de janvier, les contrôles prioritaires sont donc la qualification des équipements, la portée des commandes, les invariants de route et de transfert, la propagation délimitée, l’observation externe et le retour arrière. RPKI reste un contrôle voisin, et non le correctif manquant revendiqué par les preuves.
Cette précision importe pour la responsabilité publique. Des recommandations génériques peuvent donner à un article l’air techniquement informé tout en évitant la défaillance réelle. Un remède n’est utile que lorsqu’il traite le mécanisme soutenu par le dossier.
La documentation actuelle est une affirmation de contrôle, pas une preuve historique
La documentation réseau actuelle de Microsoft décrit un backbone mondial, une interconnexion directe, la résilience ExpressRoute, Network Watcher, Connection Monitor et une conception de surveillance. [7]-[17] Ces documents sont utiles pour comprendre l’architecture et les outils disponibles pour les opérateurs et les clients.
Ils ne sont pas une machine à remonter le temps. Une page mise à jour après janvier 2023 ne peut pas prouver quelle configuration, quel flux de travail ou quelle application existaient pendant l’incident. Elle ne peut pas non plus prouver qu’un processus déclaré s’exécute en continu sur chaque équipement.
Cette distinction devrait façonner l’évaluation de la remédiation. La documentation publique peut répondre:
- Quelle conception Microsoft décrit-il actuellement?
- Quelles fonctionnalités de surveillance et de résilience sont actuellement disponibles?
- Quelles responsabilités Microsoft attribue-t-il aux clients?
- Quels mécanismes de preuve pourraient être utilisés?
Elle ne peut pas, à elle seule, répondre:
- La commande WAN exacte a-t-elle été testée sur le routeur affecté?
- Quels équipements ont reçu les messages propagés?
- Quels invariants de route ont été vérifiés avant le déploiement?
- Un blocage automatique a-t-il empêché des commandes similaires après la remédiation?
- Microsoft a-t-il exercé le retour arrière dans des conditions représentatives?
La preuve d’une réparation durable exige des artefacts plus proches de l’opération: tests de politique en tant que code, journaux de commandes bloquées, matrices de qualification, dossiers de canaris, historique de sondes synthétiques, exercices de retour arrière et données de récurrence d’incident. Certains peuvent être sensibles sur le plan commercial ou sécuritaire. La confidentialité peut justifier une expurgation, mais elle ne transforme pas une page d’architecture générale en preuve.
Un opérateur peut publier des preuves agrégées sans exposer de détails exploitables. Il peut communiquer les pourcentages de couverture des familles d’équipements qualifiées, le nombre de classes de commandes à fort impact bloquées, le domaine de propagation maximal autorisé, la fréquence des exercices de retour arrière et si des sondes indépendantes ont confirmé chaque changement majeur. Les mesures devraient avoir des définitions et des enregistrements d’audit conservés.
La même discipline s’applique aux affirmations tournées vers les clients. Un service peut offrir des fonctionnalités de routage redondant et de surveillance, mais un client doit encore tester les chemins qu’il a achetés. La documentation décrit la capacité. Les preuves opérationnelles montrent si cette capacité a protégé une dépendance particulière.
La responsabilité suit le contrôle, les preuves et la réparation
Il est tentant de réduire une panne majeure à un blâme. Les preuves publiques soutiennent une répartition plus utile.
Microsoft contrôlait le changement WAN planifié, l’inventaire des routeurs, l’exécution des commandes, les messages internes, les limites de propagation, la surveillance, la récupération et l’explication publique de l’incident. Ce contrôle crée un devoir de qualifier le comportement, de délimiter la portée, de préserver les preuves et de vérifier la réparation.
Les fournisseurs de routeurs contrôlaient la sémantique du produit et la documentation, mais le dossier public n’identifie pas de fournisseur et n’établit pas de défaut produit. Aucune allégation de faute du fournisseur n’est justifiée.
Les fournisseurs de connectivité contrôlaient leurs circuits clients et leurs périphéries d’interconnexion. Les clients contrôlaient leur propre routage, leur redondance, leur cartographie des dépendances et leur basculement applicatif. Ces contrôles affectent les conséquences et les options de récupération, mais ils n’ont pas provoqué ni gouverné la commande interne de Microsoft.
Les observateurs indépendants contrôlaient leurs systèmes de mesure. Leur devoir est la clarté méthodologique: où ils ont mesuré, ce qu’ils ont vu et ce qu’ils ne peuvent pas déduire.
La responsabilité inclut aussi la réparation. Une réparation crédible n’est pas simplement l’absence d’un autre incident public. C’est la preuve que la classe de défaillance a été contrainte. Pour ce cas, cela signifie montrer que:
- Le comportement des commandes selon l’équipement est inventorié et testé.
- Les commandes à fort impact sont techniquement bloquées ou étroitement autorisées.
- La propagation ne peut pas dépasser un domaine défini sans preuves validées.
- Les routes et la joignabilité requises sont vérifiées automatiquement.
- Les observations externes font partie de l’acceptation et de la récupération.
- Le retour arrière restaure l’état distribué, et pas seulement le premier équipement.
- Des exercices démontrent que les contrôles fonctionnent encore après des changements de parc.
Le dossier public justifie de demander ces preuves. Il ne justifie pas de déclarer que Microsoft les a ignorées, a dissimulé l’événement, a enfreint une loi ou a agi avec négligence.
Cette approche délimitée n’est pas de l’indulgence. C’est une norme plus stricte que le blâme rhétorique, car chaque conclusion et chaque affirmation de remédiation doit être rattachée à un acteur, un contrôle, un enregistrement conservé et un résultat observable.
Un tableau de preuves pour le prochain changement de WAN mondial
Le tableau suivant convertit l’incident en enregistrements inspectables. Il n’affirme pas que Microsoft manque de chaque élément. Il identifie ce qui prouverait le contrôle.
| Contrôle | Enregistrement conservé | Résultat opérationnel observé | Limite non résolue |
|---|---|---|---|
| Autorisation du changement | Objectif approuvé, portée exacte, responsable, fenêtre temporelle | Seules les cibles prévues sont entrées en exécution | L’approbation ne prouve pas la sémantique de la commande |
| Commande rendue | Commande exacte ou configuration candidate avec empreinte | Les octets déployés correspondaient aux octets examinés | Une correspondance peut rester dangereuse |
| Qualification des équipements | Modèle, logiciel, rôle, fonctionnalité et matrice de test | Chaque cible disposait de preuves compatibles actuelles | L’échelle du laboratoire peut différer de la production |
| Limite de propagation | Graphe de destinataires et d’adjacences autorisé | Les messages sont restés dans le domaine du canari | Des dépendances cachées peuvent traverser la limite |
| Invariants de route | Préfixes requis, chemins et seuils de retrait | Aucune perte de route ni churn non approuvé | Les routes internes peuvent manquer de visibilité externe |
| Invariants de transfert | Contrôles de prochain saut et de livraison de paquets | Des paquets représentatifs ont utilisé des entrées de transfert valides | Les échantillons ne couvrent pas chaque flux |
| Observation BGP externe | Retraits, annonces et chemins horodatés | Le routage public est resté stable ou a récupéré | La couverture des collecteurs est incomplète |
| Sondes de bout en bout | Tests Internet, inter-régions, ExpressRoute, DNS et HTTP | Les chemins de service ont atteint les seuils de succès définis | Une sonde peut manquer des chemins propres au client |
| Arrêt automatisé | Déclencheur, journal de décision et état cible | Le déploiement s’est arrêté avant une propagation plus large | Un mauvais seuil peut arrêter trop tard |
| Retour arrière | État souhaité faisant autorité et journal d’actions | Adjacence, route, transfert et sondes ont récupéré | La réparation du service peut se poursuivre ensuite |
| Gestion indépendante | Test de joignabilité hors bande | Les opérateurs ont conservé le contrôle pendant la panne WAN | Un accès séparé peut partager une autre dépendance |
| Exercice post-remédiation | Scénario, défaillance attendue, résultat, responsable | La même classe de défaillance a été contenue | Un exercice ne prouve pas la conformité continue |
Le tableau sépare l’enregistrement du résultat. Un document prouve qu’un contrôle a été spécifié. Une observation opérationnelle prouve ce qui s’est passé pendant une exécution. Les deux sont nécessaires.
Il préserve aussi les limites non résolues. Les systèmes de preuves deviennent trompeurs lorsqu’ils présentent une mesure partielle comme une certitude complète. Un collecteur de routes ne peut pas voir chaque route privée. Un canari ne peut pas représenter chaque chemin client. Un exercice de retour arrière réussi peut devenir obsolète après une mise à niveau. Nommer les limites crée le prochain test.
Un programme de vérification délimité
L’incident peut soutenir un ensemble concret de questions sans spéculation.
Sémantique de la commande
- Quel comportement exact de la commande variait selon les équipements?
- Quel matériel, logiciel, rôle ou contexte de configuration expliquait la différence?
- La commande candidate a-t-elle été examinée sous la même forme rendue que celle exécutée?
- Quel contrôle actuel empêche une variante non qualifiée d’atteindre la production?
Propagation
- Quels routeurs ont reçu des messages du changement initial?
- Quel était l’ensemble de destinataires prévu?
- Quels recalculs d’adjacence et de transfert étaient attendus?
- Quelle limite technique limite désormais la même classe de changement?
État des routes et du transfert
- Quels préfixes et chemins ont changé?
- Quels invariants de route auraient détecté l’écart?
- Quand le transfert est-il devenu incohérent, et quand s’est-il stabilisé?
- Comment les observations internes ont-elles été rapprochées du churn BGP externe?
Joignabilité
- Quels chemins Internet, inter-régions, ExpressRoute et de gestion ont échoué?
- Quelles sondes ont continué de fonctionner, et pourquoi?
- Les chemins alternatifs avaient-ils une capacité suffisante?
- Quelles preuves ont distingué les symptômes DNS de la panne WAN?
Récupération
- Quelle action a déclenché la récupération automatique?
- Quels systèmes ont dû reconverger après l’annulation de la commande initiale?
- Quels critères ont déclaré les équipements réseau stables?
- Pourquoi certains effets de service ont-ils dépassé la large stabilisation des routes?
Durabilité
- Les commandes à fort impact sont-elles bloquées techniquement ou régies uniquement par des directives?
- À quelle fréquence la matrice de qualification des équipements est-elle actualisée?
- Quand le retour arrière a-t-il été exercé pour la dernière fois sur une topologie représentative?
- Quelles preuves agrégées peuvent démontrer une application continue sans exposer de configuration sensible?
Ces questions sont suffisamment étroites pour être répondues et suffisamment fortes pour changer les pratiques. Elles se concentrent sur la réalité du réseau en cours d’exécution plutôt que sur des promesses génériques de résilience.
Conclusion
La panne de Microsoft de janvier 2023 a montré comment un objectif de maintenance WAN de routine peut devenir un événement d’infrastructure mondial lorsque la sémantique des commandes, la diversité des équipements, la propagation et la convergence ne sont pas délimitées par un état vérifié.
Les preuves sont inhabituellement instructives parce qu’elles proviennent de deux plans. Le compte rendu de Microsoft relie l’incident à un changement planifié d’adresse de routeur, à un comportement de commande dépendant de l’équipement, à des messages vers d’autres routeurs WAN, à un recalcul d’adjacence et de transfert et à un échec du transfert de paquets. ThousandEyes a observé indépendamment des retraits BGP, des réannonces, un churn de chemins et des pertes de paquets autour du réseau de Microsoft. [1]-[4]
Aucun enregistrement n’est complet. Ensemble, ils définissent une norme de responsabilité.
Un ticket de changement devrait être lié à la commande exacte que les routeurs exécuteront. La qualification devrait couvrir la population d’équipements et de logiciels de production. Un canari devrait exercer la topologie pertinente tout en limitant la propagation. Les invariants de route, de transfert et de chemin de service devraient arrêter le déploiement lorsque la réalité s’écarte de l’intention. Les observateurs indépendants devraient tester ce qui quitte le domaine de l’opérateur. Le retour arrière devrait restaurer l’état distribué et préserver une chronologie allant de la récupération des routes à la restauration du service.
Des enregistrements réseau précis comptent. Les préfixes, les relations d’AS, l’inventaire des équipements, la topologie, la provenance des commandes et les routes attendues rendent le système testable. Ils ne contrôlent pas la livraison de paquets par déclaration. La configuration en cours d’exécution et l’état de transfert résultant restent décisifs.
C’est la leçon centrale de responsabilité. L’opérateur qui contrôle la commande et le domaine de propagation doit produire la preuve que le réseau s’est comporté comme approuvé, et pas seulement que le changement était planifié. Les clients et les fournisseurs conservent des devoirs dans leur propre contrôle, mais ils ne peuvent pas qualifier ni arrêter la commande du backbone privé d’un opérateur cloud. Les normes et RPKI peuvent contraindre des risques voisins, mais ils ne peuvent pas valider un chemin d’exécution propre à un équipement.
La réparation la plus solide n’est donc pas une promesse plus large d’être prudent. C’est une chaîne actuelle et vérifiable allant de l’intention à la commande rendue, à la qualification représentative, à la propagation délimitée, à l’état de route observé, à la joignabilité indépendante, au retour arrière contrôlé et à l’exercice répété. Tout ce qui est moindre laisse le prochain changement de WAN mondial régi davantage par l’attente que par la preuve.
Limites des sources
Le rapport Microsoft 365 destiné aux clients utilisé ici se présente comme préliminaire et renvoie les lecteurs à l’historique de statut Azure pour l’incident WAN associé. Les pages de statut de Microsoft sont dynamiques, et les détails historiques peuvent nécessiter l’identifiant de suivi. Les reportages contemporains résument l’explication publique ultérieure de Microsoft, mais ils ne remplacent pas les enregistrements de changement internes. [1][2][4]
ThousandEyes fournit des observations indépendantes de routage et de paquets issues de sa propre couverture de mesure. Sa vue BGP ne peut pas établir chaque route privée de Microsoft, chaque commande, adjacence, entrée de transfert ou chemin client. [3]
Les pages Microsoft Learn actuelles décrivent l’architecture et les capacités disponibles au moment où elles sont lues. Elles ne prouvent pas l’état exact des contrôles le 25 janvier 2023 ni leur application continue par la suite. [7]-[17]
Le dossier public ne divulgue pas la commande exacte, l’inventaire complet des équipements et logiciels, l’ensemble complet des préfixes affectés, tous les journaux internes, les pertes propres aux clients, les crédits contractuels, les conclusions réglementaires, l’intention malveillante, la négligence ni la faute du fournisseur. Cet article ne formule aucune de ces affirmations.
Sources
- https://content.mailplus.nl/m18/docs/user318000551/1126/Post_Incident_Report_Microsoft_verstoring_25_01_23__MO502273___VSG1_B90_.pdf
- https://azure.status.microsoft/en-us/status/history/?q=VSG1-B90
- https://www.thousandeyes.com/blog/microsoft-outage-analysis-january-25-2023
- https://www.theregister.com/2023/01/30/microsoft_blames_router_ip_address_change/
- https://www.networkworld.com/article/971873/global-microsoft-cloud-service-outage-traced-to-rapid-bgp-router-updates.html
- https://techcrunch.com/2023/01/25/microsoft-teams-outlook-service-outage/
- https://learn.microsoft.com/en-us/azure/networking/microsoft-global-network
- https://learn.microsoft.com/en-us/azure/expressroute/expressroute-introduction
- https://learn.microsoft.com/en-us/azure/expressroute/designing-for-high-availability-with-expressroute
- https://learn.microsoft.com/en-us/azure/expressroute/expressroute-routing
- https://learn.microsoft.com/en-us/azure/expressroute/expressroute-troubleshooting-expressroute-overview
- https://learn.microsoft.com/en-us/azure/network-watcher/connection-monitor-overview
- https://learn.microsoft.com/en-us/azure/network-watcher/
- https://learn.microsoft.com/en-us/azure/networking/networking-overview
- https://learn.microsoft.com/en-us/azure/networking/design-guide/monitor
- https://learn.microsoft.com/en-us/azure/virtual-wan/virtual-wan-about
- https://learn.microsoft.com/en-us/azure/virtual-wan/about-virtual-hub-routing
- https://www.rfc-editor.org/rfc/rfc4271
- https://www.rfc-editor.org/rfc/rfc7454
- https://www.rfc-editor.org/rfc/rfc8326
Briefing des membres
Contexte approfondi du profil
Connectez-vous avec le bon niveau d'adhésion pour débloquer le briefing complet et les notes de source.
Réservé à Strategic Circle
Strategic Circle
Ouvert à tous les lecteurs. Débloquez les briefings de profil après adhésion et connexion.
Rejoindre Strategic CircleRéservé aux membres de Leadership Alliance
Leadership Alliance
Réservé aux propriétaires et dirigeants qualifiés d'actifs IP ; connectez-vous pour débloquer les briefings Alliance.
Rejoindre Leadership Alliance
