Commutation multiprotocole par étiquette (MPLS) : MPLS

FOIRE AUX QUESTIONS 6PE : Pourquoi 6PE utilise-il deux mpls label dans le plan de données ?

18 octobre 2016 - Traduction automatique
Autres versions: PDFpdf | Anglais (22 août 2015) | Commentaires


Contenu


Introduction

Ce document explique pourquoi le routeur de Provider Edge d'IPv6 de½ du¿Â du Cisco IOSï (6PE) utilise deux étiquettes de Commutation multiprotocole par étiquette (MPLS) dans le plan de données.

Pour plus d'informations sur les conventions utilisées dans ce document, reportez-vous à Conventions relatives aux conseils techniques Cisco.

Remarque: Contribué par Luc De Ghein, ingénieur TAC Cisco.

Q. Pourquoi 6PE utilise-il deux mpls label dans le plan de données ?

A. Utilisations 6PE deux étiquettes :

  • L'étiquette supérieure est l'étiquette de transport, qui est assignée le saut par saut par le protocole de distribution d'étiquette (LDP) ou par l'Ingénierie de trafic MPLS (TE).

  • L'étiquette inférieure est l'étiquette assignée par le Protocole BGP (Border Gateway Protocol) et annoncée par le BGP interne (iBGP) entre les Routeurs de Provider Edge (PE).

Quand le 6PE a été libéré, une condition requise principale était qu'aucun des Routeurs de noyau MPLS (les Routeurs P) n'a dû être IPv6-aware. Que la condition requise a piloté le besoin de deux étiquettes dans le plan de données. Il y a deux raisons pour lesquelles le 6PE a besoin des deux étiquettes.

Fonctionnalité PHP

Si seulement l'étiquette de transport étaient utilisées, et si pénultième le saut sautant (PHP) étaient utilisés, le routeur pénultième de saut (le routeur P) devrait comprendre l'IPv6.

Avec le PHP, ce routeur pénultième de saut devrait retirer les mpls label et expédier le paquet comme paquet d'IPv6. Ce routeur P devrait savoir que le paquet est IPv6 parce que le routeur P devrait utiliser le type d'encapsulation correct de la couche 2 pour l'IPv6. (Le type d'encapsulation est différent pour l'IPv6 et l'ipv4 ; par exemple, pour des Ethernets, le type d'encapsulation est 0x86DD pour l'IPv6, alors que c'est 0x0800 pour l'ipv4.) Si le routeur pénultième de saut n'est pas IPv6-capable, il mettrait vraisemblablement le type d'encapsulation de la couche 2 pour l'ipv4 pour le paquet d'IPv6. Le routeur PE de sortie croire alors que le paquet était ipv4.

Il y a du Time to Live (TTL) traitant dans les en-têtes d'ipv4 et d'IPv6. Dans l'IPv6, le champ s'appelle la limite de saut. Les champs d'ipv4 et d'IPv6 sont aux endroits différents dans les en-têtes. En outre, la somme de contrôle d'en-tête dans l'en-tête d'ipv4 devrait également être changée ; il n'y a aucun champ de somme de contrôle d'en-tête dans l'IPv6. Si le routeur pénultième de saut n'est pas IPv6-capable, il rendrait le paquet d'IPv6 mal formé puisque le routeur compte trouver le champ TTL et le champ de somme de contrôle d'en-tête dans l'en-tête.

En raison de ces différences, le routeur pénultième de saut devrait savoir que c'est un paquet d'IPv6. Comment ce routeur n'est-il saurait-il que le paquet est un paquet d'IPv6, puisqu'il n'a pas assigné une étiquette à la Classe d'équivalence de transfert d'IPv6 (FEC), et là aucun champ d'encapsulation dans l'en-tête MPLS ? Il pourrait balayer pour le premier quartet après que la pile d'étiquette et détermine que le paquet est IPv6 si la valeur est 6. Cependant, cela implique que le routeur pénultième de saut doit être IPv6-capable.

Ce scénario pourrait fonctionner si l'étiquette d'Étiqette Explicit Null est utilisée (par conséquent aucun PHP). Cependant, la décision était d'exiger le PHP.

Équilibrage de charge

L'Équilibrage de charge typique sur un routeur P suit ce processus. Le routeur P va à l'extrémité de la pile d'étiquette et détermine si c'est un paquet d'ipv4 en regardant le premier quartet après la pile d'étiquette.

  • Si le quartet a une valeur de 4, la charge utile MPLS est un paquet d'ipv4, et le routeur P équilibrent la charge en hachant les adresses de source et d'ipv4 de destination.

  • Si le routeur P est IPv6-capable et la valeur du quartet est 6, le routeur P équilibrent la charge en hachant les adresses de source et d'IPv6 de destination.

  • Si le routeur P n'est pas IPv6-capable et la valeur du quartet n'est pas 4 (elle pourrait être 6 si le paquet est un paquet d'IPv6), le routeur P le détermine n'est pas un paquet d'ipv4 et fait la décision fondée d'Équilibrage de charge sur l'étiquette inférieure.

Dans le scénario 6PE, imaginez qu'il y a deux Routeurs de PE de sortie annonçant un préfixe d'IPv6 dans le BGP vers le routeur PE d'entrée. Ce préfixe d'IPv6 serait annoncé avec deux étiquettes différentes dans le BGP. Par conséquent, dans le plan de données, l'étiquette inférieure serait l'un ou l'autre des deux étiquettes. Ceci permettrait à un routeur P pour équilibrer la charge sur l'étiquette inférieure sur une base de par-écoulement.

Si 6PE utilisait seulement l'étiquette de transport pour transporter les paquets 6PE par le noyau MPLS, les Routeurs P ne pourraient pas équilibrer la charge ces paquets sur une base de par-écoulement à moins que les Routeurs P aient été IPv6-capable. Si les Routeurs P étaient IPv6-capable, ils pourraient utiliser la source et l'IPv6 de destination adresse afin de prendre une décision d'Équilibrage de charge.


Informations connexes


Document ID: 116061