Le chemin AS est un attribut de chemin BGP qui répertorie, dans l'ordre, tous les systèmes autonomes (AS) traversés par une route depuis son origine jusqu'au routeur local. Les routeurs BGP s'en servent pour détecter les boucles de routage et influencer le choix du chemin : les administrateurs peuvent ajouter des numéros AS supplémentaires au début d'une route afin de la rendre moins attractive aux yeux de leurs pairs.
Points clés à retenir
- Le chemin AS répertorie tous les systèmes autonomes traversés par une route BGP.
- Les routeurs rejettent une route si leur propre AS figure déjà dans son chemin.
- L'ajout de numéros AS au début allonge le chemin, ce qui incite les pairs à l'éviter.
- Le BGP utilise la longueur du chemin AS comme critère de départage lors de la sélection du meilleur chemin.
- Versa VOS utilise la préfixation du chemin AS pour acheminer le trafic vers les hubs de secours.
Sur cette page : Pourquoi est-ce important ?Comment ça marcheTypes de segments de chemin ASChemin AS et VersaFAQ
Pourquoi le chemin AS est-il important ?
Le BGP prend ses décisions de routage principalement en fonction des politiques et des attributs de chemin, plutôt qu’en fonction de la bande passante ou de la latence, et le chemin AS est l’un des facteurs les plus déterminants. Sa longueur sert de critère de départage dans l’algorithme de sélection du meilleur chemin du BGP : à conditions égales, un chemin AS plus court est généralement préféré à un chemin plus long. Comme les opérateurs peuvent l’allonger artificiellement par préfixation, le chemin AS devient un outil essentiel d’ingénierie du trafic : un réseau disposant de deux liaisons montantes peut faire paraître l’une d’entre elles « plus proche » simplement en ajoutant des éléments au chemin annoncé via le circuit le moins privilégié.
Le chemin AS fait également office de mécanisme intégré de prévention des boucles du protocole BGP. Le BGP ne dispose pas de détection de boucles basée sur le TTL comme les protocoles internes ; ainsi, chaque routeur vérifie si son propre numéro AS figure déjà dans le chemin AS d’une route avant de l’accepter ; si c’est le cas, le routeur rejette la route, car l’accepter créerait une boucle.
Qu'est-ce qu'un chemin AS ?
Chaque fois qu'une route BGP passe d'un système autonome à un autre, le routeur frontal récepteur ajoute son propre numéro AS au début du chemin AS de la route avant de la réannoncer. Une fois que la route s'est largement propagée, le chemin AS se présente comme une série de repères : les numéros AS de tous les réseaux qu'elle a traversés, en terminant par le système autonome d'où elle provient.
Un routeur lit le chemin AS de gauche à droite, en commençant par l'AS le plus proche, et l'utilise à deux fins : rejeter d'emblée une route si l'AS local est déjà présent, et comparer les longueurs de chemin avec celles d'autres routes candidates, afin de déterminer le meilleur chemin après prise en compte des préférences locales. Comme le chemin AS est visible et modifiable par n'importe quel maillon de la chaîne, il s'agit de l'un des rares attributs BGP qu'un opérateur peut manipuler directement pour modifier la manière dont les autres réseaux privilégient ou évitent une route.
Types de segments de chemin AS
L'attribut « AS path » n'est pas simplement une liste plate. La RFC 4271 le définit comme une séquence de segments, chacun étant associé à un type. Les deux types principaux sont « AS_SEQUENCE », une liste ordonnée des AS que l'une des routes a effectivement traversés, et « AS_SET », un ensemble non ordonné utilisé lorsque les routes sont agrégées dans un résumé – ce qui suffit pour détecter les boucles sans révéler le chemin exact de chaque contributeur.
Les confédérations BGP divisent un grand AS en sous-AS sans exposer cette structure à l'extérieur, en ajoutant deux types de segments supplémentaires : AS_CONFED_SEQUENCE et AS_CONFED_SET, qui enregistrent les sauts intra-confédération et sont supprimés avant qu'une route ne quitte la confédération, conformément à la RFC 5065. VOS superpose ses propres actions de chemin au niveau de la configuration à cet attribut, comme décrit ci-après.
Chemin AS & Versa
Les appareils VOS permettent de contrôler le chemin AS dans l’ensemble de la configuration BGP sur Director: le mode AS local détermine si les numéros AS sont insérés ou préfixés lors de l’importation et de l’exportation, et un compteur de boucles définit le nombre de fois que l’AS local peut se répéter avant que la route ne soit rejetée. Les politiques de pair peuvent faire correspondre des routes en fonction du chemin AS et appliquer une action sur le chemin AS (préfixer, supprimer les numéros AS correspondants, ou les deux) via les règles d’importation et d’exportation BGP. La fonction « AS Override » remplace les numéros AS d’un voisin par ceux de l’AS local dans le chemin.
Le « prepending » est également un outil d’ingénierie du trafic en production : l’intégration SD-WAN–SSE l’utilise pour rendre une passerelle Cloud Gateway d’ Versa moins prioritaire qu’une autre, en plaçant l’AS local en tête une fois sur le chemin actif et deux fois sur le chemin de secours, de sorte que les hubs SSE des clients sélectionnent par défaut le hub actif et basculent sans heurts vers le hub de secours en cas de panne de celui-ci.
Questions fréquentes
Qu'est-ce que l'ajout d'un chemin AS en tête ?
L'ajout d'un préfixe AS consiste à répéter plusieurs fois le numéro AS d'un opérateur dans le chemin AS d'une route avant de l'annoncer. Le protocole BGP privilégiant les chemins les plus courts, la route ainsi complétée semble moins intéressante pour les pairs, ce qui permet aux opérateurs d'orienter le trafic entrant sans avoir à modifier leur politique ailleurs.
Comment le chemin AS permet-il d'éviter les boucles de routage ?
Chaque routeur BGP vérifie si le chemin AS d'une route reçue contient son propre numéro d'AS avant de l'accepter. Si l'AS local figure déjà dans la liste, le routeur rejette la route, car l'accepter reviendrait à faire revenir le trafic par un AS qu'il a déjà traversé.
Quelle est la différence entre AS_SEQUENCE et AS_SET ?
AS_SEQUENCE est une liste ordonnée répertoriant chaque AS sur une route effectivement empruntée. AS_SET est un ensemble non ordonné utilisé lors de l'agrégation des routes, qui répertorie les AS contributeurs sans respecter l'ordre – ce qui suffit pour la détection des boucles, mais ne constitue pas un enregistrement littéral.
Est-ce qu’un chemin AS plus court l’emporte toujours lors de la sélection du meilleur chemin dans le BGP ?
Pas toujours. Le BGP évalue les attributs dans un ordre fixe, et la longueur du chemin AS n'est prise en compte qu'après la préférence locale. Un chemin plus court l'emporte uniquement si les routes comparées sont toujours à égalité sur tous les attributs précédents.
L'attribut « AS path » peut-il être falsifié ?
L'ajout de préfixes est une pratique légitime, mais rien dans le protocole BGP de base ne permet de vérifier de manière cryptographique qu'un chemin AS reflète bien la route réelle. C'est pourquoi il existe des systèmes de validation de l'origine des routes, tels que le RPKI, ainsi que des initiatives de validation des chemins, comme BGPsec, destinés à détecter les fuites et les détournements de routes.
En savoir plus sur le chemin AS
Si vous souhaitez en savoir plus, voici des sources auxquelles nous faisons confiance.
| RFC 4271 : BGP-4 – l'attribut AS_PATH | RFC 5065 : Confédérations d'AS pour le BGP |
|---|---|
| Les principes fondamentaux de la spécification BGP-4 : comment l'AS_PATH est construit, comparé et utilisé pour la détection des boucles et la sélection du meilleur chemin. | Définit les types de segments utilisés par les confédérations pour masquer leur structure interne vis-à-vis de l'extérieur. |
Termes associés
Si vous vous intéressez au chemin AS, voici quelques liens qui pourraient vous intéresser.
| Protocole Border Gateway (BGP) | BGP externe | BGP interne |
|---|---|---|
| Le protocole de vecteur de chemin qui construit et échange le chemin AS à mesure que les routes se propagent entre les systèmes autonomes. | Une session BGP entre des pairs appartenant à des systèmes autonomes différents – là où le « prepending » et la détection de boucles jouent un rôle essentiel. | Une session BGP au sein d'un même système autonome, dans laquelle le chemin AS reste généralement inchangé lors de la redistribution interne des routes. |