Ce document décrit l’objectif du protocole unifié MPLS (Multiprotocol Label Switching) et donne un exemple de configuration.
Aucune spécification déterminée n'est requise pour ce document.
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. If your network is live, make sure that you understand the potential impact of any command.
Le but du protocole Unified MPLS est d’évoluer. Pour y arriver, s’il existe différents types de formes et de services dans certaines parties du réseau, il est logique de diviser le réseau en plusieurs zones. Une conception typique introduit une hiérarchie articulée autour d’une zone centrale, avec une zone d’agrégation sur le côté. Afin d’évoluer, il peut y avoir différents protocoles IGP (Interior Gateway Protocol) dans la zone central par rapport à la zone d’agrégation. Afin d’évoluer, vous ne pouvez pas distribuer les préfixes IGP d’un IGP à l’autre. Si vous ne distribuez pas les préfixes IGP d’un IGP à l’autre, les chemins commutés par étiquette (LSP) de bout en bout sont impossibles.
Afin de fournir les services MPLS de bout en bout, vous devez disposer du LSP de bout en bout. L’objectif est de maintenir les services MPLS (MPLS VPN, MPLS L2VPN) comme ils sont, tout en intégrant une plus grande évolutivité. Pour ce faire, transférez certains préfixes IGP dans le protocole BGP (Border Gateway Protocol) [les préfixes de bouclage des routeurs de périphérie fournisseur (PE)], lequel distribue ensuite les préfixes de bout en bout.
La figure 1 montre un réseau composé de trois zones : une zone centrale et deux zones d’agrégation sur le côté. Chaque zone exécute son propre IGP, sans redistribution d’un à l’autre sur le routeur de frontière de zone (ABR). L’utilisation de BGP est nécessaire pour fournir un LSP MPLS de bout en bout. BGP annonce les boucles avec retour des routeurs PE avec une étiquette sur tout le domaine et fournit un LSP de bout en bout. BGP est déployé entre les PE et les ABR avec RFC 3107, ce qui signifie que BGP envoie le préfixe + étiquette IPv4 (AFI/SAFI 1/4).
Comme la zone centrale et les zones d’agrégation du réseau sont intégrées et que des LSP de bout en bout sont fournis, la solution MPLS unifiée est également appelée « MPLS transparent ».
Les nouvelles technologies ou les nouveaux protocoles ne sont pas utilisés ici; seuls MPLS, LDP (Label Distribution Protocol), IGP et BGP le sont. Comme vous ne voulez pas distribuer entre deux parties du réseau les préfixes des boucles avec retour des routeurs PE, vous devez transporter les préfixes dans BGP. Le protocole iBGP (Internal Border Gateway Protocol) est utilisé dans un réseau, de sorte que l’adresse de saut suivant des préfixes correspond aux préfixes des boucles avec retour des routeurs PE, ce qu’IGP ne connaît pas dans les autres parties du réseau. Or, l’adresse de saut suivant ne peut pas être utilisée pour récupérer un préfixe IGP. L’astuce, c’est de faire sorte que les réflecteurs de routage des routeurs ABR définissent le saut suivant sur eux-mêmes, et c’est également le cas pour les préfixes iBGP réfléchis. Pour que cela fonctionne, un nouveau bouton est nécessaire.
Seuls les réflecteurs de routage ont besoin de logiciels plus récents pour prendre en charge cette architecture. Étant donné que les réflecteurs de routage annoncent les préfixes BGP avec le saut suivant défini sur eux-mêmes, ils attribuent une étiquette MPLS locale à ces préfixes. Ainsi, dans le plan de données, les paquets transférés sur ces LSP de bout en bout disposent d’une étiquette MPLS supplémentaire dans la pile d’étiquettes. Les réflecteurs de routage se trouvent sur le chemin de transmission.
Deux scénarios sont possibles :
Dans les deux scénarios, l’ABR règle le saut suivant sur « self » pour les préfixes (reflétés par BGP) qu’annonce l’ABR à partir de la zone d’agrégation du réseau dans la zone centrale. Autrement, l’ABR doit redistribuer les préfixes des boucles avec retour des PE, de l’IGP d’agrégation vers l’IGP central. Or, si cela est fait, il n’y a pas d’évolutivité possible.
Afin de régler le saut suivant sur « self » pour les routes iBGP reflétées, vous devez configurer la commande neighbor x.x.x.x next-hop-self all.
Il s’agit de la configuration des routeurs PE et des ABR pour le scénario 2.
PE1
interface Loopback0
ip address 10.100.1.4 255.255.255.255
!
interface Ethernet1/0
no ip address
xconnect 10.100.1.5 100 encapsulation mpls
!
router ospf 2
network 10.2.0.0 0.0.255.255 area 0
network 10.100.1.4 0.0.0.0 area 0
!
router bgp 1
bgp log-neighbor-changes
network 10.100.1.4 mask 255.255.255.255
neighbor 10.100.1.1 remote-as 1
neighbor 10.100.1.1 update-source Loopback0
neighbor 10.100.1.1 send-label
RR1
interface Loopback0
ip address 10.100.1.1 255.255.255.255
router ospf 1
network 10.1.0.0 0.0.255.255 area 0
network 10.100.1.1 0.0.0.0 area 0
!
router ospf 2
redistribute ospf 1 subnets match internal route-map ospf1-into-ospf2
network 10.2.0.0 0.0.255.255 area 0
!
router bgp 1
bgp log-neighbor-changes
neighbor 10.100.1.2 remote-as 1
neighbor 10.100.1.2 update-source Loopback0
neighbor 10.100.1.2 next-hop-self all
neighbor 10.100.1.2 send-label
neighbor 10.100.1.4 remote-as 1
neighbor 10.100.1.4 update-source Loopback0
neighbor 10.100.1.4 route-reflector-client
neighbor 10.100.1.4 next-hop-self all
neighbor 10.100.1.4 send-label
ip prefix-list prefix-list-ospf1-into-ospf2 seq 5 permit 10.100.1.1/32
route-map ospf1-into-ospf2 permit 10
match ip address prefix-list prefix-list-ospf1-into-ospf2
RR2
interface Loopback0
ip address 10.100.1.2 255.255.255.255
router ospf 1
network 10.1.0.0 0.0.255.255 area 0
network 10.100.1.2 0.0.0.0 area 0
!
router ospf 3
redistribute ospf 1 subnets match internal route-map ospf1-into-ospf3
network 10.3.0.0 0.0.255.255 area 0
!
router bgp 1
bgp log-neighbor-changes
neighbor 10.100.1.1 remote-as 1
neighbor 10.100.1.1 update-source Loopback0
neighbor 10.100.1.1 next-hop-self all
neighbor 10.100.1.1 send-label
neighbor 10.100.1.5 remote-as 1
neighbor 10.100.1.5 update-source Loopback0
neighbor 10.100.1.5 route-reflector-client
neighbor 10.100.1.5 next-hop-self all
neighbor 10.100.1.5 send-label
ip prefix-list prefix-list-ospf1-into-ospf3 seq 5 permit 10.100.1.2/32
route-map ospf1-into-ospf3 permit 10
match ip address prefix-list prefix-list-ospf1-into-ospf3
PE2
interface Loopback0
ip address 10.100.1.5 255.255.255.255
interface Ethernet1/0
no ip address
xconnect 10.100.1.4 100 encapsulation mpls
router ospf 3
network 10.3.0.0 0.0.255.255 area 0
network 10.100.1.5 0.0.0.0 area 0
router bgp 1
bgp log-neighbor-changes
network 10.100.1.5 mask 255.255.255.255
neighbor 10.100.1.2 remote-as 1
neighbor 10.100.1.2 update-source Loopback0
neighbor 10.100.1.2 send-label
Voir la figure 2 pour vérifier le fonctionnement du plan de contrôle.
Voir la figure 3 pour vérifier les annonces des étiquettes MPLS.
Voir la figure 4 pour vérifier le transfert des paquets.
Voici comment les paquets sont transférés de PE1 à PE2. Le préfixe des boucles avec retour de PE2 est 10.100.1.5/32, et donc le préfixe devient intéressant.
PE1#show ip route 10.100.1.5
Routing entry for 10.100.1.5/32
Known via "bgp 1", distance 200, metric 0, type internal
Last update from 10.100.1.1 00:11:12 ago
Routing Descriptor Blocks:
* 10.100.1.1, from 10.100.1.1, 00:11:12 ago
Route metric is 0, traffic share count is 1
AS Hops 0
MPLS label: 22
PE1#show ip cef 10.100.1.5
10.100.1.5/32
nexthop 10.2.2.6 Ethernet0/0 label 19 22
PE1#show ip cef 10.100.1.5 detail
10.100.1.5/32, epoch 0, flags rib defined all labels
1 RR source [no flags]
recursive via 10.100.1.1 label 22
nexthop 10.2.2.6 Ethernet0/0 label 19
PE1#show bgp ipv4 unicast labels
Network Next Hop In label/Out label
10.100.1.4/32 0.0.0.0 imp-null/nolabel
10.100.1.5/32 10.100.1.1 nolabel/22
P1#show mpls forwarding-table labels 19 detail
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
19 Pop Label 10.100.1.1/32 603468 Et1/0 10.2.1.1
MAC/Encaps=14/14, MRU=1504, Label Stack{}
AABBCC000101AABBCC0006018847
No output feature configured
RR1#show mpls forwarding-table labels 22 detail
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
22 21 10.100.1.5/32 575278 Et0/0 10.1.1.3
MAC/Encaps=14/22, MRU=1496, Label Stack{17 21}
AABBCC000300AABBCC0001008847 0001100000015000
No output feature configured
RR1#show bgp ipv4 unicast labels
Network Next Hop In label/Out label
10.100.1.4/32 10.100.1.4 19/imp-null
10.100.1.5/32 10.100.1.2 22/21
P3#show mpls forwarding-table labels 17 detail
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
17 Pop Label 10.100.1.2/32 664306 Et1/0 10.1.2.2
MAC/Encaps=14/14, MRU=1504, Label Stack{}
AABBCC000201AABBCC0003018847
No output feature configured
RR2#show mpls forwarding-table labels 21 detail
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
21 17 10.100.1.5/32 615958 Et0/0 10.3.1.7
MAC/Encaps=14/18, MRU=1500, Label Stack{17}
AABBCC000700AABBCC0002008847 00011000
No output feature configured
RR2#show bgp ipv4 unicast labels
Network Next Hop In label/Out label
10.100.1.4/32 10.100.1.1 22/19
10.100.1.5/32 10.100.1.5 21/imp-null
P2#show mpls forwarding-table labels 17 detail
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
17 Pop Label 10.100.1.5/32 639957 Et1/0 10.3.2.5
MAC/Encaps=14/14, MRU=1504, Label Stack{}
AABBCC000500AABBCC0007018847
No output feature configured
PE1#trace
Protocol [ip]:
Target IP address: 10.100.1.5
Source address: 10.100.1.4
DSCP Value [0]:
Numeric display [n]:
Timeout in seconds [3]:
Probe count [3]:
Minimum Time to Live [1]:
Maximum Time to Live [30]:
Port Number [33434]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Type escape sequence to abort.
Tracing the route to 10.100.1.5
VRF info: (vrf in name/id, vrf out name/id)
1 10.2.2.6 [MPLS: Labels 19/22 Exp 0] 3 msec 3 msec 3 msec
2 10.2.1.1 [MPLS: Label 22 Exp 0] 3 msec 3 msec 3 msec
3 10.1.1.3 [MPLS: Labels 17/21 Exp 0] 3 msec 3 msec 2 msec
4 10.1.2.2 [MPLS: Label 21 Exp 0] 2 msec 3 msec 2 msec
5 * * *
6 10.3.2.5 4 msec * 4 msec
P2#show ip route 10.100.1.4
% Subnet not in table
Il n'existe actuellement aucune information de dépannage spécifique pour cette configuration.
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
03-Jul-2013 |
Première publication |