Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit ce qu'est la métrique du protocole AIGP (Accumulated Interior Gateway Protocol) dans le protocole BGP (Border Gateway Protocol) et ses exemples d'utilisation.
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est actif, assurez-vous de comprendre l'impact potentiel de toute commande.
Cette section fournit un aperçu de la métrique AIGP et quelques considérations importantes concernant son utilisation.
Comme vous le savez, IGP est l'acronyme de Interior Gateway Protocol et représente un groupe de protocoles de routage qui s'exécutent au sein d'un domaine administratif unique. Le protocole IGP prend une décision de sélection de chemin basée sur la valeur métrique.
Le protocole BGP est conçu pour fournir un routage sur un grand nombre de systèmes autonomes indépendants (AS) avec une coordination limitée ou inexistante entre les administrations respectives. Il ne prend pas ses décisions de sélection de chemin à l'aide d'une métrique. Cependant, dans certains déploiements, une seule administration exécute plusieurs réseaux BGP contigus. Dans de tels cas, il peut être souhaitable dans ce domaine administratif unique, pour BGP de sélectionner des chemins basés sur une métrique, tout comme un IGP le ferait.
La métrique AIGP (définie via RFC7311) est un attribut de chemin BGP non transitif facultatif. Le champ de valeur de l'attribut AIGP est défini comme un ensemble d'éléments Type/Length/Value (TLV). Le TLV AIGP BGP contient la métrique IGP accumulée.
Remarque : les routeurs BGP qui ne prennent pas en charge les attributs facultatifs non transitifs (par exemple, AIGP) doivent supprimer ces attributs et ne doivent pas les transmettre à d'autres homologues BGP. La métrique AIGP n'est pas conçue pour être transitive entre des systèmes autonomes complètement distincts (uniquement au-delà des frontières internes du système autonome).
Aujourd’hui, de nombreux réseaux se trouvent dans un domaine administratif unique, qui sont subdivisés en plusieurs ASN pour diverses raisons. Il pourrait y avoir de nombreuses raisons possibles à cela :
Dans des réseaux comme ceux-ci, il peut être utile de permettre à BGP de prendre ses décisions en fonction de la métrique IGP, de sorte que BGP choisisse le chemin de bout en bout le plus court entre deux noeuds, même si les noeuds sont dans deux ASN différents.
Par exemple : le réseau ABC, qui est subdivisé en deux ASN BGP, ASN 1 et ASN 2. Ils sont en appairage au niveau ASBR et les coûts de liaison IGP représentent la bande passante. L'objectif ici est d'avoir un chemin optimal de bout en bout entre PE11 et PE21.
Réseau multi-ASN sans AIGP
Remarque :
PE11#sh bgp ipv4 unicast 10.0.21.21/32
BGP routing table entry for 10.0.21.21/32, version 20
Paths: (2 available, best #2, table default)
Not advertised to any peer
Refresh Epoch 3
2
192.168.0.12 (metric 211) from 192.168.11.11 (192.168.11.11)
Origin IGP, metric 0, localpref 100, valid, internal
Originator: 192.168.0.12, Cluster list: 192.168.11.11
rx pathid: 0x1, tx pathid: 0
Refresh Epoch 3
2
192.168.0.11 (metric 201) from 192.168.11.11 (192.168.11.11)
Origin IGP, metric 0, localpref 100, valid, internal, best
Originator: 192.168.0.11, Cluster list: 192.168.11.11
rx pathid: 0x0, tx pathid: 0x0
Avec AiGP activé dans la topologie (sur PE11, PE32, ASBR1x, ASBR2x, RR1, RR2), PE11 choisit maintenant le chemin avec le coût IGP de bout en bout le plus faible.
Réseau multi-ASN avec AIGP
PEx, ASBRx, Rn :
Configuration de la fonctionnalité AIGP :
router bgp ASN
neighbor <NBR_IP> aigp
!
Remarque : l'appairage BGP abandonne et rétablit pour négocier cette nouvelle fonctionnalité. Il est donc conseillé de l'effectuer dans une fenêtre de maintenance.
Annoncez la métrique AIGP pour un préfixe.
PE21 :
route-map SET_AIGP permit 10
set aigp-metric igp-metric
!
router bgp 2
address-family {ipv4|ipv6} unicast
network 10.0.21.21 mask 255.255.255.255 route-map SET_AIGP
!
PE11#sh bgp ipv4 unicast 10.0.21.21/32
BGP routing table entry for 10.0.21.21/32, version 21
Paths: (2 available, best #2, table default)
Not advertised to any peer
Refresh Epoch 3
2
192.168.0.11 (metric 201) from 192.168.11.11 (192.168.11.11)
Origin IGP, aigp-metric 501, metric 0, localpref 100, valid, internal
Originator: 192.168.0.11, Cluster list: 192.168.11.11
rx pathid: 0x1, tx pathid: 0
Refresh Epoch 3
2
192.168.0.12 (metric 211) from 192.168.11.11 (192.168.11.11)
Origin IGP, aigp-metric 201, metric 0, localpref 100, valid, internal, best
Originator: 192.168.0.12, Cluster list: 192.168.11.11
rx pathid: 0x0, tx pathid: 0x0
Dans un grand réseau principal de fournisseur de services, le réseau de transport est généralement subdivisé en différents domaines IGP, assemblés à l'aide de la monodiffusion étiquetée BGP pour fournir un chemin commuté étiqueté de bout en bout (LSP). Les routeurs périphériques exécutent le protocole NHS (Next Hop Self) dans BGP LU AF.
IGP/LDP transporte les informations de préfixe/étiquette uniquement dans la zone/le domaine local. Ensuite, BGP transporte le préfixe/étiquette vers toutes les zones/domaines distants en redistribuant les routes dans BGP aux limites de zone. Les routes/étiquettes sont ensuite annoncées à l’aide de LSP. Le saut suivant pour la route est changé à chaque ABR en routeur local, ce qui élimine le besoin de laisser des routes IGP à travers les limites de zone/domaine.
Dans ce schéma de topologie, il y a un seul domaine BGP divisé en 2 domaines IGP (CORE et Access-1). Le numéro affiché à côté de chaque liaison représente le coût/la mesure IGP de cette liaison.
Réseau MPLS transparent sans AIGP
Défi : le trafic descendant de PS-Core vers eNB/gNB (connecté à CSR15) emprunte un chemin asymétrique et sous-optimal par rapport au trafic ascendant de eNB/gNB (connecté à CSR15) vers PS-Core, ce qui entraîne des problèmes de latence dans le trafic de mobilité.
Trafic en amont - CSR15 à SAR150
RP/0/0/CPU0:CSR15#traceroute mpls ipv4 10.0.2.150/32 so 10.0.2.15
Tracing MPLS Label Switched Path to 10.0.2.150/32, timeout is 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
0 10.15.102.15 MRU 1500 [Labels: explicit-null/16150 Exp: 0/0]
L 1 10.15.102.102 MRU 1500 [Labels: 16150 Exp: 0] 0 ms !!!! AGG102
. 2 * !!!! P112 does not have a route to CSR15
! 3 10.112.150.150 20 ms !!!! SAR150
Trafic en aval - SAR150 à CSR15
RP/0/0/CPU0:SAR150#traceroute mpls ipv4 10.0.2.15/32 source 10.0.2.150
Tracing MPLS Label Switched Path to 10.0.2.15/32, timeout is 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
0 10.101.150.150 MRU 1500 [Labels: explicit-null/16015 Exp: 0/0]
L 1 10.101.150.101 MRU 1500 [Labels: 16015 Exp: 0] 10 ms !!! AGG101
L 2 10.11.101.11 MRU 1500 [Labels: 16015 Exp: 0] 10 ms !!! CSR11
L 3 10.11.12.12 MRU 1500 [Labels: 16015 Exp: 0] 10 ms !!! CSR12
L 4 10.12.13.13 MRU 1500 [Labels: 16015 Exp: 0] 20 ms !!! CSR13
L 5 10.13.14.14 MRU 1500 [Labels: explicit-null Exp: 0] 30 ms !!! CSR14
! 6 10.14.15.15 30 ms !!! CSR15
L’objectif est d’avoir un chemin optimal de bout en bout entre les routeurs SAR et les routeurs CSR. La monodiffusion étiquetée BGP (RFC 3107) est utilisée pour calculer la distance entre les routeurs SAR et CSR. La bande passante disponible sur chacune des liaisons principales est mappée au coût IGP, par conséquent le protocole BGP doit transporter ce coût correctement entre chacun des PE. Cette fonctionnalité est obtenue en utilisant l'AiGP.
Réseau MPLS transparent avec AIPSRéseau MPLS transparent avec AIGP
Remarque :
La capacité d'attribut de chemin AiGP doit être convenue entre les homologues BGP. Les métriques AiGP sont uniquement incluses dans les annonces de préfixe entre les homologues compatibles AiGP. La fonctionnalité AIGP est configurée pour un homologue BGP individuel et une famille d'adresses BGP spécifique.
router bgp ASN
neighbor <NBR_IP>
address-family ipv4 unicast
aigp [disable]
La métrique AIGP est une valeur de 32 bits (0 à 4 294 967 295). Il peut être défini lors de la redistribution, de l'origine de la route via une instruction réseau ou lors de la réception d'un préfixe avec une carte de route/route-policy.
route-policy AIGP_POLICY
set aigp-metric igp-cost
end-policy
!
router bgp ASN
address-family {ipv4|ipv6} unicast
network <NETWORK/MASK> route-policy AIGP_POLICY
or
redistribute {ospf|isis} {process-id} route-policy AIGP_POLICY metric VALUE
!
Remarque :
CSR15:
! Additional config lines related to AIGP are marked in RED color
route-policy SID($SID)
set label-index $SID
set aigp-metric igp-cost
end-policy
!
router bgp 1
address-family ipv4 unicast
network 10.0.2.15/32 route-policy SID(15)
neighbor-group RR
address-family ipv4 labeled-unicast
aigp
!
!
!
Remarque : une configuration similaire a été effectuée sur tous les périphériques d'appairage BGP respectifs.
Trafic en aval - SAR150 à CSR15
RP/0/0/CPU0:SAR150#sh bgp ipv4 labeled-unicast 10.0.2.15/32
BGP routing table entry for 10.0.2.15/32
Versions:
Process bRIB/RIB SendTblVer
Speaker 411 411
Local Label: 16015
Last Modified: Oct 24 11:05:26.796 for 00:00:04
Paths: (2 available, best #1)
Not advertised to any peer
Path #1: Received by speaker 0
Not advertised to any peer
Local
10.0.2.102 (metric 200) from 10.0.2.100 (10.0.2.15)
Received Label 16015
Origin IGP, metric 0, localpref 100, aigp metric 20, valid, internal, best, group-best, labeled-unicast
Received Path ID 1, Local Path ID 1, version 410
Originator: 10.0.2.15, Cluster list: 10.0.2.100, 10.0.2.102
Total AIGP metric 220
Label-Index: 15
Path #2: Received by speaker 0
Not advertised to any peer
Local
10.0.2.101 (metric 180) from 10.0.2.100 (10.0.2.15)
Received Label 16015
Origin IGP, metric 0, localpref 100, aigp metric 60, valid, internal, backup, add-path, labeled-unicast
Received Path ID 8, Local Path ID 7, version 411
Originator: 10.0.2.15, Cluster list: 10.0.2.100, 10.0.2.101
Total AIGP metric 240
Label-Index: 15
RP/0/0/CPU0:SAR150#traceroute mpls ipv4 10.0.2.15/32 so 10.0.2.150
Tracing MPLS Label Switched Path to 10.0.2.15/32, timeout is 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
0 10.112.150.150 MRU 1500 [Labels: 16102/16015 Exp: 0/0]
L 1 10.112.150.112 MRU 1500 [Labels: explicit-null/16015 Exp: 0/0] 10 ms !!! P112
L 2 10.102.112.102 MRU 1500 [Labels: explicit-null Exp: 0] 10 ms !!! AGG102
! 3 10.15.102.15 20 ms !!! CSR15
Trafic en amont - CSR15 à SAR150
RP/0/0/CPU0:CSR15#traceroute mpls ipv4 10.0.2.150/32 source 10.0.2.15
Tracing MPLS Label Switched Path to 10.0.2.150/32, timeout is 2 seconds
Codes: '!' - success, 'Q' - request not sent, '.' - timeout,
'L' - labeled output interface, 'B' - unlabeled output interface,
'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,
'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,
'P' - no rx intf label prot, 'p' - premature termination of LSP,
'R' - transit router, 'I' - unknown upstream index,
'X' - unknown return code, 'x' - return code 0
Type escape sequence to abort.
0 10.15.102.15 MRU 1500 [Labels: explicit-null/16150 Exp: 0/0]
L 1 10.15.102.102 MRU 1500 [Labels: 16150 Exp: 0] 10 ms !!! AGG102
. 2 * !!! P112 does not have a route to CSR15
! 3 10.112.150.150 30 ms !!! SAR150
Un périphérique qui exécute le protocole BGP (Border Gateway Protocol) peut également être configuré pour ignorer la métrique AIGP lors du meilleur processus de sélection de chemin entre deux chemins lorsqu'un chemin n'a pas la métrique AIGP. Utilisation de la commandebgp bestpath aigp ignore en mode de configuration du routeur Pour rétablir le fonctionnement par défaut du périphérique, utilisez la forme no de cette commande.
[no] bgp bestpath aigp ignore
Par défaut, BGP préfère toujours un chemin avec la métrique AIGP. S'il y a deux chemins, l'un avec la métrique AIGP et l'autre sans, alors l'exécution de la
bgp bestpath aigp ignore commande entraîne BGP effectuant le meilleur calcul de chemin comme si aucun des chemins n'avait la métrique AIGP.
Conclusion
L'attribut BGP AIGP est certainement développé pour résoudre certains cas d'utilisation de niche, mais il doit être utilisé avec prudence.
Informations connexes
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
13-Dec-2023 |
Première publication |