Améliorer les performances de la recherche de chemin AS dans la stratégie BGP
Vue d’ensemble de la recherche de chemin AS dans une stratégie BGP sans expression régulière
Lorsque vous utilisez des chemins BGP AS et des conditions de correspondance de stratégie de routage, vous pouvez configurer des stratégies BGP pour rechercher une correspondance de système autonome (AS) dans un chemin AS sans utiliser d’expressions régulières. La stratégie BGP compare l’AS à une liste AS ou à un groupe de listes AS et renvoie true si elle trouve une correspondance. Vous pouvez configurer la stratégie BGP pour rechercher une origine, un voisin ou un AS de transit correspondant. Cette fonctionnalité offre une alternative plus rapide pour faire correspondre les numéros d’origine, de transit et d’AS pair qu’à l’aide d’une expression régulière.
Avantages d’AS-Path sans utiliser d’expression régulière dans la stratégie BGP :
- La recherche optimisée des AS d’origine, de voisinage et de transit améliore les performances.
- Fournit une recherche plus rapide en termes de vitesse.
Les opérations suivantes sont prises en charge pour faire correspondre les AS d’un chemin AS :
-
Faire correspondre l’AS d’origine dans le chemin AS : compare l’AS à l’origine de l’itinéraire. Détermine si le numéro AS le plus à droite sur le chemin AS appartient au
as-listouas-list-groupspécifié dans l’instructionas-path-originsde configuration au niveau de la[edit policy-options policy-statement policy-name from]hiérarchie. Dans le cas où la route a été agrégée et que l’emplacement de l’AS d’origine contient un AS-set, l’opérateuras-path-originsévalue à true si un AS contenu dans l’AS-set appartient auas-listouas-list-groupspécifié dans l’instructionas-path-originsde configuration. -
Faire correspondre l’AS voisin dans le chemin AS : compare l’AS voisin dans le chemin AS. Détermine si le premier numéro AS sur le chemin AS correspond
as-listau ouas-list-groupspécifié dans l’instructionas-path-neighborsde configuration au niveau de la[edit policy-options policy-statement policy-name from]hiérarchie. Si l’emplacement AS voisin se trouve être un AS-set, l’opérateuras-path-neighborsévalue à true si un AS contenu dans l’AS-set appartient auas-listouas-list-groupspécifié dans l’instructionas-path-neighborsde configuration. -
Correspond à l’AS de transit dans le chemin AS : compare n’importe quel AS dans le chemin AS. Évalue l’appartenance d’un AS au
as-listouas-list-groupspécifié dans l’instructionas-path-transitde configuration au niveau de la[edit policy-options policy-statement policy-name from]hiérarchie. Dans le cas d’AS-set, l’opérateur as-path-transit compare tous les AS de l’AS-set.
Configurer la recherche de chemin AS sans utiliser d’expression régulière
Vous pouvez configurer les recherches de chemin AS en définissant des listes AS ou des groupes de listes AS pour les AS d’origine, de voisinage et de transit et filtrer les routes sans utiliser d’expression régulière.
Le tableau ci-dessous montre les configurations de correspondance universelle basée sur des expressions régulières et une correspondance équivalente avec un temps d’exécution plus rapide.
| Type de correspondance | Correspondance universelle basée sur des expressions régulières | Correspondance équivalente avec un temps d’exécution plus rapide |
|---|---|---|
| Pair | set policy-options as-path peer-match « ^101.* » | set policy-options as-list peer-match members 101 |
| Transit | set policy-options as-path transit-match « .*61453.*10001.*40007$ » | set policy-options as-list transit-match members 61453 |
| Origine | set policy-options as-path origin-match « .*54367$ » | set policy-options as-list origin-match members 54367 |
L’exemple de configuration suivant montre comment vous pouvez définir des listes AS (as-list as-list-name) pour les AS d’origine, de voisinage et de transit et comment vous pouvez utiliser des stratégies pour filtrer les routes sans utiliser d’expression régulière :
Étape 1 : Définissez des listes d’AS pour faire correspondre les AS d’origine, de voisinage et de transit et appliquez-les en tant que filtre pour filtrer les itinéraires à l’aide de stratégies.
set policy-options as-list origin-match members 54367 set policy-options as-list neighbor-match members 101 set policy-options as-list transit-match members 61453 set policy-options as-list transit-match members 10001
Vous pouvez également définir des groupes de listes AS (as-list-group group-name) pour faire correspondre les AS d’origine, de voisinage et de transit afin de filtrer les routes à l’aide de stratégies. Voici un exemple de configuration pour définir des groupes de listes AS qui correspondent aux AS d’origine afin de filtrer les routes à l’aide de stratégies :
set policy-options as-list-group origin_group as-list origin-match-1 members 3-4 set policy-options as-list-group origin_group as-list origin-match-2 members 6-9 set policy-options policy-statement neighbor-accept term 1 from as-path-origins as-list-group origin_group set policy-options policy-statement neighbor-accept term 1 then accept set policy-options policy-statement neighbor-accept term 2 then reject
Les groupes de listes AS correspondant aux AS d’origine, de voisinage et de transit peuvent être un membre AS (par exemple, 101) ou une plage de membres AS (par exemple, 6-9). Dans ce cas, tous les itinéraires provenant de 6, 7, 8, 9 seront appariés.
Si vous utilisez une plage de membres AS (as-start à as-finish), la valeur du membre as-start doit être inférieure ou égale à la valeur du membre as-finish. Le membre AS ou la plage de membres AS (as-start à as-finish) ne peut pas être égal à 0.
Le as-list ou as-list-group définit un ensemble AS.
Lors de l’exécution d’une recherche d’ensemble AS pour les origines et les voisins, le premier ou le dernier AS d’un chemin AS est mis en correspondance. Dans le cas des transits, il peut y avoir plusieurs itérations sur le chemin AS pour effectuer une recherche d’ensemble AS.
Étape 2 : Configurez des stratégies pour faire correspondre et filtrer les itinéraires en fonction des AS d’origine, de voisinage et de transit.
set policy-options policy-statement as-list-match term transit-match from as-path-transits as-list transit-match set policy-options policy-statement as-list-match term transit-match then local-preference 300 set policy-options policy-statement as-list-match term transit-match then accept set policy-options policy-statement as-list-match term origin-match from as-path-origins as-list origin-match set policy-options policy-statement as-list-match term origin-match then local-preference 400 set policy-options policy-statement as-list-match term origin-match then accept set policy-options policy-statement as-list-match term neighbor-match from as-path-neighbors as-list peer-match set policy-options policy-statement as-list-match term peer-match then local-preference 200 set policy-options policy-statement as-list-match term peer-match then accept
Étape 3 : Définir le système autonome local.
set routing-options autonomous-system 100
Étape 4 : Appliquez la stratégie en tant que stratégie d’importation BGP pour filtrer les routes.
set protocols bgp group ebgp-1 type external set protocols bgp group ebgp-1 import as-list-match set protocols bgp group ebgp-1 family inet unicast set protocols bgp group ebgp-1 neighbor 192.168.1.2 peer-as 101 set protocols bgp group ebgp-1 neighbor 192.168.1.6 peer-as 102
Cette stratégie peut être appliquée en tant que stratégie d’importation ou d’exportation pour filtrer les itinéraires afin d’effectuer les actions correspondantes définies dans la stratégie.
Vous pouvez utiliser la show route commande CLI pour afficher les itinéraires dans la table de routage.
Les instructions de configuration de la condition de correspondance de clause from se produisent à la fois [edit policy-options policy-statement policy-name from] au niveau de la hiérarchie et [edit policy-options policy-statement policy-name term term-name from] .