RFC 9871 - Routage BGP sensible aux couleurs (Color-Aware Routing)
Informations sur le document
- Numéro RFC : 9871
- Titre : BGP Color-Aware Routing (CAR)
- Date de publication : Novembre 2025
- Statut : EXPERIMENTAL (Expérimental)
- Auteurs :
- D. Rao, Ed. (Cisco Systems)
- S. Agrawal, Ed. (Cisco Systems)
Résumé (Abstract)
Ce document décrit une solution de routage basée sur BGP pour établir des chemins sensibles à l'intention de bout en bout à travers un réseau de transport multi-domaines. Le réseau de transport peut s'étendre sur plusieurs domaines de fournisseurs de services et de réseaux clients. Les chemins BGP sensibles à l'intention peuvent être utilisés pour diriger les flux de trafic pour les routes de service nécessitant une intention spécifique. Cette solution est appelée Routage BGP sensible aux couleurs (BGP CAR).
Ce document décrit le cadre de routage et les extensions BGP pour permettre le routage sensible à l'intention en utilisant la solution BGP CAR. La solution définit deux nouveaux SAFI BGP (BGP CAR SAFI et BGP VPN CAR SAFI) pour IPv4 et IPv6. Elle définit également un modèle extensible d'informations de disponibilité de la couche réseau (NLRI) pour les deux SAFI qui permet de définir plusieurs types de NLRI pour différents cas d'usage. Chaque type de NLRI contient des champs clés et des champs non-clés basés sur TLV pour un encodage efficace de différentes informations par préfixe. Cette spécification définit deux types de NLRI : NLRI de route sensible aux couleurs (Color-Aware Route) et NLRI de préfixe IP. Elle définit des types de TLV non-clés pour la pile d'étiquettes MPLS, l'index d'étiquette SR-MPLS et les identifiants de segment (SID) Segment Routing over IPv6 (SRv6). Cette solution définit également une nouvelle communauté étendue de mappage de couleur locale (LCM).
Qu'est-ce que le routage sensible aux couleurs ?
Concepts fondamentaux
Couleur (Intent) :
- Une valeur entière de 32 bits identifiant un niveau de service spécifique ou une politique d'ingénierie du trafic
- Exemple : Couleur 100 = "Chemin à faible latence", Couleur 200 = "Chemin à large bande passante"
- Contrairement au routage traditionnel "destination uniquement", le CAR prend en compte à la fois la destination et la couleur
Routage sensible aux couleurs :
Routage BGP traditionnel :
Destination : 10.1.1.0/24 → Sélectionner le meilleur chemin
Routage CAR :
Destination : 10.1.1.0/24 + Couleur : 100 → Sélectionner le meilleur chemin répondant aux exigences de la couleur 100
Destination : 10.1.1.0/24 + Couleur : 200 → Sélectionner le meilleur chemin répondant aux exigences de la couleur 200
Cas d'usage
Cas d'usage 1 : Différenciation de service
Service VPN d'entreprise :
- Trafic client VIP → Couleur 100 (Faible latence, Haute fiabilité)
- Trafic client standard → Couleur 200 (Best-effort)
- Trafic de sauvegarde → Couleur 300 (Faible priorité)
Cas d'usage 2 : Optimisation d'application
Fournisseur de services cloud :
- Vidéo en temps réel → Couleur 100 (Sensible à la gigue)
- Transfert de fichiers → Couleur 200 (Priorité à la bande passante)
- Données en masse → Couleur 300 (Optimisation des coûts)
Cas d'usage 3 : Interconnexion multi-cloud
Connectivité cross-cloud :
- Applications critiques → Couleur 100 (Circuit dédié, Faible latence)
- Applications générales → Couleur 200 (Internet, Optimisation des coûts)
Architecture technique
Extensions BGP
Nouvel attribut BGP : Communauté étendue de couleur
Type : Extended Community
Format :
Type : 0x0b (Color)
Sub-Type : 0x0b
Valeur de couleur : Entier 32 bits
Exemples :
Color:100
Color:200
Message BGP UPDATE
BGP UPDATE standard :
NLRI : 10.1.1.0/24
Next-Hop : 203.0.113.1
AS-Path : 65001 65002
BGP UPDATE CAR :
NLRI : 10.1.1.0/24
Next-Hop : 203.0.113.1
AS-Path : 65001 65002
Extended Community : Color:100 ← Nouveau
Processus de routage
Étape 1 : Organisation de la table de routage
Table de routage traditionnelle :
Destination Saut suivant
10.1.1.0/24 → 203.0.113.1
Table de routage CAR :
Destination Couleur Saut suivant
10.1.1.0/24 + Aucune → 203.0.113.1 (Par défaut)
10.1.1.0/24 + 100 → 203.0.113.2 (Faible latence)
10.1.1.0/24 + 200 → 203.0.113.3 (Large bande passante)
Étape 2 : Classification des paquets
Routeur d'entrée :
1. Inspecter le paquet (basé sur la politique)
2. Attribuer une valeur de couleur
3. Rechercher dans la table de routage sensible aux couleurs
4. Transférer vers le saut suivant approprié
Étape 3 : Mappage de chemin
Mappage de couleur vers chemin physique :
Couleur 100 → Politique SR 1 → Via liens à faible latence
Couleur 200 → Politique SR 2 → Via liens à large bande passante
Couleur 300 → Politique SR 3 → Via chemin optimisé en coût
Intégration avec le routage par segment (SR)
Liaison de politique SR
Exemple de configuration :
sr-policy color 100
candidate-path preference 100
explicit segment-list path1
segment 16001
segment 16002
segment 16003
Flux de bout en bout
1. Annonce BGP : Préfixe + Color:100
2. Contrôleur/PCE : Calculer la politique SR satisfaisant Color:100
3. PE d'entrée : Mapper le trafic vers la politique SR
4. Plan de données : Transférer le long de la politique SR
5. PE de sortie : Décapsuler et livrer
Exemples de configuration
Configuration de base
Annoncer des routes avec couleur
router bgp 65001
neighbor 203.0.113.1 remote-as 65002
address-family ipv4 unicast
network 10.1.1.0/24
route-policy ADD-COLOR out
route-policy ADD-COLOR
set extcommunity color 100
end-policy
Recevoir et traiter la couleur
router bgp 65001
address-family ipv4 unicast
neighbor 203.0.113.2 remote-as 65002
route-policy MATCH-COLOR in
route-policy MATCH-COLOR
if extcommunity color is 100 then
set local-preference 200
elseif extcommunity color is 200 then
set local-preference 100
endif
end-policy
Applications avancées
Mappage de couleur basé sur l'application
class-map match-any REALTIME
match protocol http
match dscp ef
policy-map COLOR-MAPPING
class REALTIME
set extcommunity color 100
class BULK-DATA
set extcommunity color 300
class class-default
set extcommunity color 200
Redondance multi-couleur
router bgp 65001
address-family ipv4 unicast
network 10.1.1.0/24
route-policy MULTI-COLOR out
route-policy MULTI-COLOR
set extcommunity color 100 additive
set extcommunity color 200 additive
end-policy
# Résultat : La route porte à la fois la couleur 100 et 200
# Permet au récepteur de choisir la couleur appropriée
Considérations de déploiement
Déploiement progressif
Phase 1 : Réseau central
1. Activer CAR sur les routeurs centraux
2. Définir les politiques de couleur
3. Configurer les politiques SR (si utilisation de SR)
4. Tester la fonctionnalité de routage par couleur
Phase 2 : Extension de la périphérie
5. Activer CAR sur les routeurs PE
6. Configurer la classification du trafic
7. Mapper le trafic client vers les couleurs
8. Surveiller et optimiser
Phase 3 : Couverture à l'échelle du réseau
9. Tous les locuteurs BGP supportent CAR
10. Affiner les politiques de couleur
11. Intégrer avec les systèmes métier
12. Automatisation et orchestration
Interopérabilité
Routeurs non-CAR :
- Ignoreront la communauté étendue de couleur
- Traiteront les routes en utilisant BGP traditionnel
- N'affectent pas la connectivité de base
Environnement mixte :
Domaine CAR 1 ← → BGP traditionnel ← → Domaine CAR 2
Ignorer couleur Réajouter couleur
Évolutivité
Taille de la table de routage :
Sans CAR : N préfixes
Avec CAR : N préfixes × M couleurs
Exemple :
- 100K préfixes
- 10 couleurs
- Maximum : 1M routes (théorique)
- Réel : Dépend de l'utilisation des couleurs
Recommandations d'optimisation :
- Limiter le nombre de couleurs (recommandé < 100)
- Utiliser l'agrégation de couleurs
- Appliquer les couleurs uniquement aux préfixes nécessitant une différenciation
- Déployer des réflecteurs de routes (RR)
Avantages et limitations
Avantages
-
Ingénierie du trafic flexible
- Sélection de chemin basée sur les exigences métier
- Contrôle QoS à grain fin
-
Opérations simplifiées
- Sémantique de couleur unifiée
- Gestion centralisée des politiques
-
Support multi-locataire
- Différents locataires utilisent différentes couleurs
- Isolation et différenciation
-
Favorable à l'automatisation
- Intégration facile avec les contrôleurs SDN
- Support pour l'ajustement dynamique des politiques
Limitations
-
Nécessite un support à l'échelle du réseau
- Au moins les dispositifs sur les chemins critiques doivent supporter CAR
- Le déploiement progressif peut être complexe
-
Surcharge de routage supplémentaire
- Plus d'entrées de route
- Mises à jour BGP plus volumineuses
-
Complexité de configuration
- Nécessite une conception soignée du schéma de couleurs
- Complexité de la gestion des politiques
-
Défis de débogage
- Plusieurs chemins augmentent la difficulté de dépannage
- Nécessite de nouveaux outils de surveillance
Surveillance et dépannage
Commandes de vérification
# Afficher les routes avec couleur
show bgp ipv4 unicast 10.1.1.0/24 detail
Extended Community: Color:100
# Afficher les statistiques de couleur
show bgp color-aware-routing statistics
Color 100: 150 routes
Color 200: 200 routes
# Tracer le chemin de couleur
traceroute 10.1.1.1 color 100
Problèmes courants
Problème 1 : Perte de couleur
Symptôme : La couleur n'est pas conservée après l'annonce de route
Cause : Le routeur intermédiaire ne supporte pas CAR ou filtre la communauté étendue
Solution : Vérifier la configuration des voisins BGP, activer la propagation de la communauté étendue
Problème 2 : Chemin sous-optimal
Symptôme : Le trafic n'utilise pas le chemin de couleur attendu
Cause : Problèmes de sélection de chemin BGP ou de politique
Solution : Vérifier local-preference, AS-Path et autres attributs BGP
Références
RFC connexes :
- [RFC4360] BGP Extended Communities
- [RFC8664] Path Computation Element (PCE) Communication Protocol (PCEP) Extensions for Segment Routing
- [RFC9256] Segment Routing Policy Architecture
Résumé : Le routage BGP sensible aux couleurs fournit de puissantes capacités d'ingénierie du trafic et de différenciation de service, permettant une gestion complexe de multiples chemins via de simples identificateurs de couleur. C'est une technologie clé pour les réseaux SDN et 5G modernes.
Document officiel : https://www.rfc-editor.org/rfc/rfc9871.txt