Qu’est-ce que le BGP et pourquoi Internet en dépend-il ?
La panne de Facebook de six heures le 4 octobre 2021 a poussé les gens à se démener pour savoir exactement ce qui se passait. Une partie de la réponse réside dans une partie intégrante d’Internet appelée Border Gateway Protocol, ou BGP.
Sommaire
Qu’est-ce que BGP exactement de toute façon ?
Plusieurs métaphores très appropriées ont été utilisées dans des articles récents pour expliquer le BGP. Les gens l’ont comparé à tout, d’un contrôleur aérien à une carte d’Internet en constante évolution. Il a même été appelé « le ruban adhésif d’Internet ». Et ils vont bien.
BGP est le protocole qui indique aux requêtes de données quel chemin elles doivent emprunter pour atteindre le serveur. Si, par exemple, vous vous connectez à Facebook ou ouvrez l’application pour afficher votre flux, BGP est ce qui guide votre paquet de données le long de la route la plus rapide pour récupérer ces données pour vous à partir des serveurs de Facebook.
Cloudflare décrit BGP comme « le service postal d’Internet », en ce sens qu’il choisit le chemin le plus rapide et le plus efficace pour que vos demandes atteignent le serveur prévu. BGP examine tous les itinéraires disponibles que vos données pourraient emprunter, puis choisit ce qu’il considère comme le meilleur.
Souvent, cela signifiera acheminer vos données à travers les systèmes autonomes qui composent Internet dans son ensemble. BGP détermine quels systèmes communiquent entre eux, puis envoie vos données par le chemin le plus rapide entre eux afin qu’elles puissent arriver à la bonne destination.
Poursuivant la métaphore de la poste, chaque système autonome sur Internet est comme une branche de la poste. Même si votre ville compte des milliers de boîtes aux lettres, chaque courrier doit toujours passer par le bureau de poste avant d’être livré.
Voici des exemples de systèmes autonomes sur Internet :
- Un fournisseur de services Internet (FAI) comme Comcast, AT&T, Verizon, etc.
- Une entreprise comme Facebook
- Autres grandes organisations comme les gouvernements ou les universités
Mitchell Clark, écrivant pour Le bord, compare BGP à une carte constamment mise à jour et des systèmes autonomes aux îles sur cette carte. Puisqu’il y a beaucoup trop d' »îles » sur Internet pour construire des ponts entre chacun, BGP vous indique où se trouvent déjà les ponts.
Il existe en fait deux types de BGP :
- BGP externe (eBGP): Le protocole utilisé par Internet en général. Dans notre métaphore du bureau de poste, cela s’apparente à l’expédition internationale.
- BGP interne (iBGP): protocole BGP interne que les systèmes autonomes peuvent choisir d’utiliser pour acheminer les données au sein de leurs propres réseaux. Ceci est similaire aux services de courrier dans différents pays.
Il n’est pas nécessaire d’avoir configuré iBGP pour accéder à l’eBGP de l’Internet plus large, mais certains systèmes autonomes comme les grandes entreprises technologiques utilisent de toute façon iBGP pour acheminer le trafic interne.
Comment BGP et DNS fonctionnent-ils ensemble ?
Le BGP est ce qui rend possible le routage des données sur Internet, ce qui en fait la colle (ou le ruban adhésif) qui maintient Internet ensemble. Une partie du fonctionnement de BGP est qu’il annonce des routes viables pour les données. Si BGP cesse de fonctionner, ces routes sont introuvables et disparaissent d’Internet, de sorte que les données n’ont nulle part où aller.
Cela fait partie de ce qui s’est passé sur Facebook. Le vice-président de l’infrastructure de Facebook, Santosh Janardhan, l’a exprimé ainsi dans son article de blog expliquant les mécanismes de la panne :
« L’une des tâches accomplies par nos plus petites installations est de répondre aux requêtes DNS. Le DNS est le carnet d’adresses d’Internet, permettant aux simples noms Web que nous tapons dans les navigateurs d’être traduits en adresses IP de serveur spécifiques. Ces requêtes de traduction sont traitées par nos serveurs de noms faisant autorité qui occupent eux-mêmes des adresses IP bien connues, qui à leur tour sont annoncées au reste d’Internet via un autre protocole appelé le protocole de passerelle frontière (BGP).
En d’autres termes, le protocole DNS (Domain Name System) d’Internet fonctionne comme une liste d’adresses, et BGP est le service postal qui envoie le courrier à ces maisons. Le courrier ne peut pas être livré si vous avez une adresse mais pas d’itinéraire vers la maison.
Janardhan poursuit :
« … Les serveurs DNS désactivent ces publicités BGP s’ils ne peuvent pas eux-mêmes parler à nos centres de données, car cela indique une connexion réseau défectueuse. Lors de la récente panne, l’ensemble du backbone a été retiré du service, ce qui a amené ces emplacements à se déclarer insalubres et à retirer ces publicités BGP. Le résultat final était que nos serveurs DNS sont devenus inaccessibles même s’ils étaient encore opérationnels. Cela a rendu impossible pour le reste d’Internet de trouver nos serveurs.
Comment BGP peut gâcher Internet
Plusieurs facteurs peuvent affecter l’itinéraire emprunté par vos données sur la carte Internet. Le coût peut en être un, car certains fournisseurs facturent l’accès à leurs systèmes. La nature changeante d’Internet en est une autre.
Les systèmes autonomes et les sites Web peuvent se déplacer ou être entièrement supprimés de la carte d’Internet. Ils peuvent également modifier ou ajouter des fournisseurs de services. Par exemple, un collège peut changer de fournisseur de services Internet de Comcast à AT&T. BGP doit régulièrement mettre à jour les données d’itinéraires pour s’assurer qu’elles restent à jour et que votre demande ne se heurte pas à une impasse, à la manière de Wile E. Coyote.
Les systèmes autonomes exécutent les mises à jour BGP sans incident tout le temps. Mais quand ils vont mal, ils peuvent aller très mal. Dans leur article, Clark explique que puisque BGP est conçu pour se propager rapidement d’un système à l’autre, une erreur peut avoir un effet d’entraînement comme celui que nous avons vu sur Facebook.
Correction des bogues
Selon Cloudflare, une mauvaise mise à jour BGP en 2004 par le FAI turc TTNet a temporairement annoncé TTNet comme la meilleure destination pour tout le trafic sur Internet. Cela a entraîné des problèmes de connexion pendant une journée entière jusqu’à ce que le problème soit résolu.
Des incidents comme ceux-ci mettent en évidence certaines faiblesses de BGP, à savoir que les systèmes autonomes qui composent Internet dans son ensemble feront implicitement confiance à ce que BGP leur dit être le meilleur itinéraire pour les données. Bien que les problèmes ne se produisent pas souvent, certains ont plaidé pour la nécessité de rendre BGP plus sécurisé. Une mise à jour à cette échelle, cependant, nécessiterait que chaque système autonome sur Internet se mette à jour en même temps. Cela signifie que la mise en œuvre de changements majeurs au protocole serait pour le moins difficile.
BGP n’est qu’un des nombreux éléments qui font fonctionner Internet. Comprendre ses fondements peut vous aider à naviguer et à comprendre les pannes et autres problèmes à l’avenir.
Comment fonctionne Internet ?