Facebook a complètement disparu du net pendant plusieurs heures. C'est en tout cas de cette façon que les internautes ont perçu les choses. Ils n'avaient pas tout à fait tort. Des précisions techniques permettent de comprendre comment un réseau social et ses filiales WhatsApp, Messenger et Instagram ont semblé avoir quitté Internet, avant de revenir.

C’est par un très court message, sans fioritures ni explications, que Mark Zuckerberg a annoncé ce que beaucoup avaient déjà pu constater dans la nuit du 4 au 5 octobre  : « Facebook, Instagram, WhatsApp et Messenger sont de nouveau en ligne », a déclaré le fondateur et grand patron du réseau social, après une panne historique de l’ensemble de l’écosystème Facebook qui aura duré plusieurs heures.

Un message accompagné d’excuses, alors que le contexte général est défavorable pour le site — quelques jours avant, une lanceuse d’alerte a accusé l’entreprise de favoriser le profit au détriment de la sécurité de ses membres : « Nous sommes désolés pour la perturbation d’aujourd’hui. Je sais à quel point vous comptez sur nos services pour rester en contact avec les personnes qui vous sont chères. »

Internet traffic served by Facebook
Oups. // Source : Kentik

Pour qui était sur Twitter dans la soirée du 4 octobre, il était possible de voir circuler de premières pistes cherchant à expliquer l’origine technique de la panne, car l’évènement était considérable : pendant plusieurs heures, Facebook avait complètement disparu d’Internet. Certes, ce n’est qu’un site parmi tant d’autres sur le web, mais c’est loin d’être la même chose que la petite page personnelle du voisin.

Plusieurs fils d’explication, parfois un peu techniques, parfois accessibles, ont d’ailleurs fleuri dans les heures qui ont suivi, aussi bien anglais qu’en français. Il y a notamment eu les messages très pédagogiques du journaliste Alex Hern, du Guardian, mais aussi les précisions de Renaud Guerin et Cécile Morange, deux spécialistes des réseaux.

Un raté interne chez Facebook, qui a eu des répercussions externes

Très vite, la thèse de l’attaque informatique de grande ampleur conduite par des pirates à la solde d’un État a été écartée, après avoir été quelques fois évoquée sur le site de microblogging, pour semer la zizanie ou par ignorance. La source de l’incident est en fait bien plus banale (bien qu’à cette ampleur, elle ne l’était pas dans ses effets sur le quotidien pour des centaines de millions d’individus dans le monde).

Un article du 4 octobre par le vice-président de Facebook en charge de l’infrastructure, Santosh Janardh, sur le blog dédié à l’ingénierie donne plusieurs éléments cruciaux pour éclairer la situation. Ainsi, il apparaît bien que « la cause première de cette panne est un changement de configuration défectueux », qui s’est propagé dans la totalité de l’écosystème de Facebook.

Dans son malheur, Facebook peut toutefois avoir un motif de satisfaction : a priori, il n’y a pas eu dans le même temps une compromission de données personnelles appartenant aux membres du réseau social (hasard du calendrier, une prétendue fuite qui affecterait 1,5 milliard de profils a émergé au même moment, mais celle-ci est excessivement douteuse et il ne s’agirait en fait d’une tentative d’escroquerie).

Tout le monde s’est rabattu sur ce qui marchait à ce moment-là : Twitter, Signal, Telegram et TikTok. // Source : Cloudflare

Selon Santosh Janardh, « des changements de configuration sur les routeurs dorsaux qui coordonnent le trafic réseau entre nos centres de données ont provoqué des problèmes qui ont interrompu cette communication ». C’est cette perturbation dans le trafic qui a par la suite entraîné la réaction en chaîne à laquelle le web a assisté le 4 octobre, avec l’arrêt de tous les services de l’entreprise américaine.

Cette chute en cascade de l’écosystème de Facebook a été vue par les internautes, mais son ampleur a parfois eu des conséquences inattendues, au point de ralentir la résolution du problème. C’est ce qu’admet Santosh Janardh : « de nombreux outils et systèmes internes » utilisés au quotidien ont aussi été impactés, « ce qui a compliqué nos tentatives pour diagnostiquer et résoudre rapidement le problème ».

Une illustration de l’étendue de la catastrophe a été donnée par la journaliste Sheera Frenkel, du New York Times : « j’étais au téléphone avec quelqu’un qui travaille pour Facebook et qui a décrit des employés incapables d’entrer dans les bâtiments ce matin pour commencer à évaluer l’étendue de la panne parce que leurs badges ne fonctionnaient pas pour accéder aux portes. »

Pour les équipes en charge de la gestion de l’infrastructure, cette situation exceptionnelle s’est manifestement traduite par l’incapacité de gérer à distance certaines opérations. Ainsi, toujours selon le New York Times, cité par BNO News, il a fallu que le réseau social dépêche une équipe dans ses centres de données en Californie pour tenter de réinitialiser manuellement ses serveurs.

Facebook a été temporairement injoignable par Internet

La publication du billet de blog par Santosh Janardh a permis de comprendre un peu mieux ce qui s’est passé en interne chez Facebook. Une autre manière d’appréhender la disparition de Facebook du net est de regarder cette visualisation proposée par Steve Weis, un ingénieur en sécurité informatique, où l’on peut voir la disparition progressive de l’ASN (Autonomous System Number) de Facebook.

Il faut se souvenir qu’Internet est en fait un réseau de réseaux — c’est d’ailleurs son surnom et Internet est en fait une sorte de diminutif pour internetwork, c’est-à-dire un système de réseaux interconnectés. Internet consiste donc en somme à relier divers réseaux entre eux, partout dans le monde. Et chaque réseau est constitué d’ordinateurs qui « servent » des informations — d’où le nom de serveurs.

Il s’avère que chaque système autonome dispose de son propre numéro (ASN). Facebook a le sien (AS 32934) et, comme l’explique l’entreprise Cloudflare, qui fournit des services de prestation pour Internet, chaque réseau autonome (AS, système autonome) suit sa propre politique de routage interne unifiée. Reste alors une question : comment faire pour que tous ces AS se parlent et échangent des données ? Bref, qu’ils se connectent.

Il faut un mécanisme particulier appelé BGP (Border Gateway Protocol). Ce dispositif sert à échanger des informations de routage (c’est-à-dire, en quelque sorte, le chemin qu’il faut emprunter sur le réseau) entre ces systèmes autonomes. BGP, souligne Cloudflare, permet à un réseau comme Facebook d’annoncer sa présence aux autres réseaux. En somme, BGP est une sorte de liant pour former Internet.

«  Chaque ASN doit annoncer ses routes à Internet en utilisant BGP, sinon personne ne saura comment se connecter et où trouver [tel ou tel réseau] », et donc tel ou tel site, écrit Cloudflare. En clair, « si Facebook n’annonce pas sa présence, les fournisseurs d’accès à Internet et les autres réseaux ne trouvent pas celui de Facebook et il est donc indisponible », comme le 4 octobre.

La cascade d’effets ne s’arrête pas là.

Un problème de configuration interne, puis de BGP, puis de DNS, puis d’accès pour les internautes

Après le problème interne, causé par l’erreur de configuration dans la dorsale de Facebook (ou backbone, c’est-à-dire l’interconnexion des réseaux de fibres optiques pour acheminer le trafic, rappelle Réseaux & Télécoms), et dont les routeurs cités par M. Janardh servent à coordonner les données et les échanges entre toutes les infrastructures du réseau social, et la répercussion sur BGP, il y a ensuite eu un souci DNS.

C’est ce que pointe Stéphane Bortzmeyer, ingénieur R&D à l’AFNIC, l’organisme qui gère le nom de domaine de premier niveau attribué à la France (« .fr »), sur son blog. La panne au niveau du BGP a manifestement entraîné le dysfonctionnement du DNS (Domain Name System), c’est-à-dire le système de noms de domaine. Ce mécanisme consiste à faire correspondre des adresses IP à des noms de domaine.

Le DNS est indispensable, car il n’est pas possible de se passer des adresses IP, celles-ci servant de plaques d’immatriculation de façon à distinguer les serveurs des uns des autres — et chacun doit avoir, pour faire simple, un numéro unique. En outre, il est plus facile pour une personne de mémoriser une adresse faite de caractères comme www.numerama.com, que l’adresse IP du serveur du site.

«  Il faut se rappeler que les noms de domaine et le protocole DNS sont critiques pour le fonctionnement de l’Internet. Quasiment toute activité sur l’Internet commence par une requête DNS. Si elle ne fonctionne pas, presque rien n’est possible », rappelle ainsi ce spécialiste des réseaux. Or, les serveurs DNS faisant autorité pour Facebook étaient aussi injoignables pendant la panne.

Ces serveurs faisant autorité sont ceux qui stockent les données permettant de savoir à quelle adresse IP est rattaché tel serveur et, ainsi, permettra la résolution DNS (on tape une adresse via son navigateur web et, après une succession d’étapes, on peut accéder au site qui est hébergé sur un serveur). Et comme ces serveurs se trouvaient aussi dans le même AS de Facebook…

« Un problème de routage dans l’AS […] peut également empêcher les serveurs DNS de répondre. Mettre tous ses œufs dans le même panier est décidément une mauvaise pratique », fait ainsi observer Stéphane Bortzmeyer. En effet, Facebook a expérimenté bien malgré lui les conséquences du point de défaillance unique, ou single point of failure, c’est-à-dire quand une panne est capable de faire tomber tout un réseau.

Facebook, point de défaillance unique pour Facebook

Nul doute que Facebook tirera certainement des enseignements de cette gigantesque panne. Reste à savoir lesquels, mais ne plus mettre ses œufs dans le même panier reste un conseil avisé. « Nous nous efforçons de mieux comprendre ce qui s’est passé aujourd’hui afin de continuer à rendre notre infrastructure plus résiliente », a ainsi promis Santosh Janardh.

Facebook pourrait ainsi être incité à l’avenir à revoir un peu son organisation. C’est ce que rappelle non sans facétie le journaliste Alex Hern : « Facebook fait tout passer par Facebook. Donc, quand ses serveurs ont été coupés d’Internet, la possibilité d’envoyer le message de suivi [pour rattraper le coup, NDLR] a également été coupée. Et la capacité de se connecter au système qui enverrait le message de suivi. »

Oh non. // Source : Panik, le meme

« Et la capacité d’utiliser la serrure de la carte à puce sur la porte d’entrée du bâtiment qui contient les serveurs qui contrôlent le système qui envoie le message de suivi et le service de messagerie que vous utilisez pour contacter le chef de la sécurité physique pour lui dire qu’il doit se rendre au centre de données à l’est avec une clé physique pour passer outre la serrure de la carte à puce sur la porte d’entrée… »

Pour les sites web, cette affaire peut aussi conduire à repenser l’utilisation de l’utilitaire de connexion Facebook Login, qui est un dispositif qui permet de se connecter à un site web ou une application. Certes, l’outil a globalement bien fonctionné jusqu’à présent, mais il est lui aussi tombé provisoirement pendant la panne globale du réseau social, illustrant aussi ce que peut entraîner une telle dépendance.

L’affaire a aussi mis indirectement en évidence le poids considérable qu’a pris Facebook sur le web, mais aussi dans l’imaginaire collectif. On a ainsi vu fleurir des tweets à visée humoristique expliquer que le web était tombé, parce que Facebook était hors ligne, ou même que c’était tout Internet qui était à terre. Comme si le web se résumait à Facebook. Ou que Facebook était tout Internet.

Partager sur les réseaux sociaux

La suite en vidéo