Le Border Gateway Protocol (BGP) est un protocole de routage qui est utilisé pour échanger des informations de routage et de joignabilité entre les systèmes autonomes (AS) sur Internet. Un système autonome est un réseau ou un groupe de réseaux qui est contrôlé par une seule entité, comme un fournisseur de services Internet (ISP).
BGP est utilisé pour construire une toile d'AS, qui leur permet d'échanger du trafic entre eux. Lorsqu'un routeur dans un AS veut envoyer du trafic à un routeur dans un autre AS, il utilise BGP pour déterminer le meilleur chemin à suivre.
Voici comment fonctionne BGP :
-
Les routeurs BGP échangent des informations de routage avec leurs voisins en utilisant un processus appelé "peerings". Lorsqu'une session de peering est établie entre deux routeurs, ils échangent leurs tables de routage BGP.
-
Chaque routeur BGP maintient une table de routage qui liste tous les préfixes (par exemple, les adresses IP) qu'il sait atteindre, ainsi que le chemin AS (c'est-à-dire la séquence de AS que le trafic traversera) pour atteindre chaque préfixe.
-
Lorsqu'un routeur reçoit une mise à jour de routage d'un voisin, il compare la mise à jour à sa propre table de routage. Si la mise à jour contient un préfixe plus spécifique ou un chemin AS plus court, le routeur met à jour sa propre table de routage et propage la mise à jour à ses autres voisins.
-
Si plusieurs mises à jour sont reçues pour le même préfixe, BGP utilise un ensemble de règles appelées "politiques de routage" pour décider quelle mise à jour utiliser. Les politiques de routage peuvent être basées sur des facteurs tels que la longueur du chemin AS, la source de la mise à jour ou l'origine du préfixe.