Contenu

Introduction

Conditions préalables

Conditions requises

Components Used

Fond

Architecture

Configuration

Vérification

Dépannage

Informations connexes

Introduction

Ce document décrit l’objectif du protocole unifié MPLS (Multiprotocol Label Switching) et donne un exemple de configuration.

Conditions préalables

Conditions requises

Aucune spécification déterminée n'est requise pour ce document.

Components Used

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.

Fond

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.

Architecture

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.

Note: Grâce à cette architecture, tout service MPLS est fourni. Par exemple, MPLS VPN ou MPLS L2VPN sont fournis entre les routeurs PE. Dans le plan de données, la différence pour ces paquets, c’est qu’ils ont maintenant trois étiquettes dans la pile d’étiquettes, alors qu’ils en avaient seulement deux lorsque le protocole Unified MPLS n’était pas utilisé.

Deux scénarios sont possibles :

- L’ABR ne règle pas le saut suivant sur « self » pour les préfixes (reflétés par BGP) qu’annonce l’ABR dans la zone d’agrégation du réseau. C’est pourquoi l’ABR doit redistribuer les préfixes des boucles avec retour des ABR, de l’IGP central vers l’IGP d’agrégation. Ainsi, l’évolutivité reste possible. Seuls les préfixes des boucles avec retour ABR (à partir de la zone centrale) doivent être annoncés dans la zone d’agrégation, et pas les préfixes des boucles avec retour qui proviennent des routeurs PE situés dans les zones d’agrégation à distance.

- L’ABR règle le saut suivant sur « self » pour les préfixes (reflétés par BGP) qu’annonce l’ABR dans la zone d’agrégation. C’est pourquoi l’ABR n’a pas à redistribuer les préfixes des boucles avec retour des ABR, de l’IGP central vers l’IGP d’agrégation.

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.

Configuration

Il s’agit de la configuration des routeurs PE et des ABR pour le scénario 2.

Note: La topologie est illustrée à la figure 2. L’exemple de service est xconnect (MPLS L2VPN). Entre les routeurs PE et les ABR, il y a le BGP pour l’étiquette IPv4 +.

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

Note: La redistribution de l’IGP central (ospf 1) dans l’IGP d’agrégation (ospf 2 ou ospf 3) est effectuée avec une carte de routage. Cette carte de routage permet aux préfixes des boucles avec retour du réflecteur de routage d’effectuer la redistribution dans l’IGP d’agrégation. La raison? Le préfixe des boucles avec retour du réflecteur de routage est seulement annoncé directement dans l’IGP central (ospf 1). Cependant, le préfixe des boucles de routage du réflecteur de routage doit également être connu dans l’IGP d’agrégation, de sorte que BGP sur le routeur PE puisse s’associer à la boucle avec retour du réflecteur de routage.

Vérification

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

Note: Le saut 5 affiche « ?5  *  *  *? ». En effet, le routeur P2 n’a pas de route pour l’adresse IP source 10.100.1.4 (PE1) de Traceroute. Par conséquent, le routeur P2 ne peut pas renvoyer le message d’erreur ICMP (Internet Control Message Protocol) à PE1. Cette situation est normale, car le protocole Unified MPLS doit faire en sorte que les préfixes des boucles avec retour de tous les routeurs PE ne se trouvent pas dans une seule zone d’agrégation pour apparaître dans les IGP des autres zones d’agrégation. Le routeur P2 ne tente pas de transférer le message d’erreur ICMP avec la pile d’étiquettes d’origine. En effet, la pile d’étiquettes d’origine ne comporte qu’une seule étiquette. Si cette pile d’étiquettes d’origine du paquet comporte au moins deux étiquettes, le message d’erreur ICMP est alors transmis sur le LSP et peut revenir à la source de Traceroute. Si la pile d’étiquettes d’origine ne comporte qu’une étiquette, le routeur qui génère le message d’erreur ICMP effectue une recherche de routage et tente de l’acheminer au moyen de la table de routage (sans utiliser la pile d’étiquettes d’origine).

P2#show ip route 10.100.1.4

% Subnet not in table

Dépannage

Il n'existe actuellement aucune information de dépannage spécifique pour cette configuration.

Informations connexes

- Architecture MPLS continue

- Support et documentation techniques - Cisco Systems