Qu'est-ce que BGP et pourquoi Internet en dépend-il ?
Publié: 2022-01-29La 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.
Qu'est-ce que BGP exactement?
Plusieurs métaphores très appropriées ont été utilisées dans des articles récents pour expliquer BGP. Les gens l'ont comparé à tout, d'un contrôleur de la circulation aérienne à une carte Internet en constante évolution. On l'a même appelé "le ruban adhésif d'Internet". Et ils vont bien.
BGP est le protocole qui indique aux demandes de données quel chemin elles doivent emprunter pour atteindre le serveur. Si, par exemple, vous vous connectez à Facebook ou ouvrez l'application pour extraire votre flux, BGP est ce qui guide votre paquet de données le long de l'itinéraire le 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 l'itinéraire le plus rapide et le plus efficace pour que vos requêtes atteignent leur serveur prévu. BGP examine toutes les routes disponibles que vos données pourraient emprunter, puis choisit celle qu'il considère comme la meilleure.
Souvent, cela signifie acheminer vos données via les systèmes autonomes qui composent Internet dans son ensemble. BGP détermine quels systèmes se parlent, puis envoie vos données le long du 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 succursale 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 The Verge , compare BGP à une carte constamment mise à jour et des systèmes autonomes aux îles sur cette carte. Puisqu'il y a beaucoup trop d'"îlots" 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 au sens large. 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 messagerie dans différents pays.
Il n'est pas nécessaire de configurer iBGP pour accéder à l'eBGP d'Internet au sens large, mais certains systèmes autonomes comme les grandes entreprises de technologie utilisent de toute façon iBGP pour acheminer le trafic interne.
Comment BGP et DNS fonctionnent-ils ensemble ?
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 itinéraires 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 effectuées par nos plus petites installations consiste à répondre aux requêtes DNS. Le DNS est le carnet d'adresses d'Internet, permettant aux noms Web simples que nous tapons dans les navigateurs d'être traduits en adresses IP de serveur spécifiques. Ces requêtes de traduction sont répondues 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 de l'Internet via un autre protocole appelé le protocole de passerelle frontaliè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 achemine le courrier vers ces maisons. Le courrier ne peut pas être livré si vous avez une adresse, mais aucune indication pour vous rendre chez vous.
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, toute la dorsale a été mise hors service, ce qui a obligé ces sites à se déclarer malsains et à retirer ces publicités BGP. Le résultat final a été que nos serveurs DNS sont devenus inaccessibles même s'ils étaient toujours 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 lui-même 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 qui change de FAI de Comcast à AT&T. BGP doit régulièrement mettre à jour les routes que les données peuvent emprunter 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 en permanence les mises à jour BGP sans incident. 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é. Cependant, une mise à jour à cette échelle nécessiterait que chaque système autonome sur Internet se mette à jour en même temps. Cela signifie que la mise en œuvre de modifications majeures du protocole serait difficile, c'est le moins qu'on puisse dire.
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 à venir.
CONNEXION : Comment fonctionne Internet ?