Contenu

Introduction

Informations générales

Signalisation intrabande

Valeur opaque utilisée dans ce profil

Arborescence principale MLDP

ARBRE P2MP

ARBORESCENCE MP2MP

Valeur opaque

Signalisation de superposition

Types LSP MLDP

Multicast commuté par étiquette

Topologie

Configuration

Vérification

Vérification détaillée

Comment créer un plan de contrôle ?

Étape 1. Cet échange de messages a lieu après la configuration du protocole MLDP dans le coeur de réseau.

Étape 2. Activez la SIGNALISATION INBANDE dans le coeur du protocole MLDP.

Le récepteur est disponible en ligne

La source démarre la diffusion en continu

Capture de paquets (PCAP)

Vérification LSPVIF

Conclusion

Informations connexes

Introduction

Ce document décrit le protocole MLDP global de signalisation intrabande qui est le profil 7 pour la multidiffusion de nouvelle génération sur VPN (mVPN). Il utilise un exemple et la mise en oeuvre dans Cisco IOS afin d'illustrer le comportement.

Informations générales

- Arborescence intrabande P2MP mLDP dans le coeur ; pas de routage C-multicast.

- Le trafic client peut être SM S, G ou SSM.

- Prise en charge de la table globale (S, G) sur PE.

- PIM dans le coeur n’est pas nécessaire pour mLDP

Signalisation intrabande

La valeur opaque est utilisée pour mapper un LSP MP à un flux de multidiffusion IP.

Le contenu de la valeur opaque provient du flux de multidiffusion.

Valeur opaque utilisée dans ce profil

Le transit IPv4 PIM-SSM permet le transport des flux PIM-SSM globaux sur le coeur du MPLS (Multiprotocol Label Switch). La valeur opaque contient la valeur réelle (S, G) qui réside dans la table de routage globale des routeurs PE d'entrée et de sortie.

Non seulement la valeur opaque identifie de manière unique le LSP MP, mais elle peut également transporter les informations de flux (S, G) du réseau de multidiffusion IP de périphérie. Les routeurs P du chemin LSP (Label-Switched Path) MP n'ont pas besoin d'analyser la valeur opaque, mais utilisent la valeur comme index dans leur base de données LSP MP locale pour déterminer le ou les sauts suivants vers lesquels répliquer le paquet multicast. Cependant, le LSP PE d'entrée (le plus proche de la source) décode la valeur de sorte qu'il puisse sélectionner le LSP MP correct pour le flux entrant (S, G). L'équipement de sortie peut utiliser la valeur pour installer (S, G) l'état dans la table VRF locale ou la table de routage globale.

1. LSM permet l'utilisation d'un plan de transfert MPLS unique pour le trafic de monodiffusion et de multidiffusion.

2. LSM active la protection MPLS existante (par exemple, les mécanismes MPLS (TE/RSVP) et MPLS (OAM) à utiliser pour le trafic de multidiffusion.

3. LSM Réduit la complexité opérationnelle en éliminant le besoin de PIM dans le réseau principal MPLS.

Arborescence principale MLDP

ARBRE P2MP

Pilote du récepteur et signalisation de la racine apprise à l'aide du protocole MLDP P2MP FEC.

Identifié Uniquement :

- Adresse du noeud racine

- LSP P2MP - ID [32 bits]

ARBORESCENCE MP2MP

Configuration Driven et root sont configurés manuellement.

Identifié Uniquement :

- Adresse du noeud racine

- LSP MP2MP - ID [32 bits]

Valeur opaque

Utilisé pour transporter les informations de flux multidiffusion, qui ont une signification pour Root et les feuilles.

- (S, G) Signalisation intrabande

- LSPID (par défaut/données)

Type 1 : Défini par MDLP, contient LSP-ID pour Gérer ID-Space pour les LSP P2MP / MP2MP.

Type 2 : Défini pour le provisionnement des tunnels MP-LDP et utilisé pour BGP-MVPN sans chevauchement.

Signalisation de superposition

Types LSP MLDP

Multicast commuté par étiquette

Extensions de technologie MPLS pour prendre en charge la multidiffusion à l'aide d'étiquettes :

- LSP point à multipoint

- LSP multipoint à multipoint

P2MP

MP2MP

Étiquette

Allocation en amont

En amont et en aval

Trafic

Flux en aval

En amont et en aval

Racine

Routeur d'entrée

Fournir/fournir une périphérie

Type de trafic

Routeur de contrôle

Contrôler uniquement le trafic

Type LSP

Racine à plusieurs feuilles

De nombreuses racines à de nombreuses feuilles

Topologie

Configuration

Étape 1. Activez MPLS MLDP dans les noeuds principaux.

Sur PE1, PE2 et PE3 :

# mpls mldp logging

Étape 2. Activez la SIGNALISATION INBANDE MLDP dans CORE.

Sur PE1, PE2 et PE3 :

# ip multicast mpls mldp

# ip pim mpls source loopback 0

Étape 3. Activez le routage de multidiffusion.

Sur tous les noeuds :

# ip multicast-routing

Étape 4. Activez le protocole PIM (Protocol Independent Multicast) SSM dans Customer Edge (CE).

Sur les noeuds CE :

# ip pim ssm default

Étape 5. Activez PIM SM dans toutes les interfaces CE et l'interface PE (Provider Edge).

Sur CE1, CE2, CE3 et toutes les interfaces PE orientées CE :

# interface x/x

# ip pim sparse-mode

# interface loopback x/x

# ip pim sparse-mode

Note: x représente le numéro d'interface que PE a connecté à CE et inversement.

Vérification

Tâche 1 : vérification de la connectivité physique

- Vérifiez que toutes les interfaces connectées sont ACTIVÉES.

Tâche 2 : Vérification de la monodiffusion IPv4 de la famille d'adresses BGP

- Vérifiez que le protocole BGP (Border Gateway Protocol) est activé sur tous les routeurs pour la monodiffusion IPv4 AF et que les voisins BGP sont UP.

- Vérifiez que la table IPv4 BGP contient tous les préfixes du client.

Tâche 3 : Vérifier le trafic multidiffusion de bout en bout

- Vérifiez le voisinage PIM avec le voisin PIM connecté.

- Vérifiez que l'état de multidiffusion est créé.

- Sur l'entrée PE mRIB sur PE1, PE2 et PE3

- Vérifiez que (S, G) entrée mFIB, paquet incrémenté dans le transfert de logiciel.

- Vérifier que les paquets ICMP atteignent l'interface CE à CE.

Tâche 4 : Vérifiez le COEUR MPLS.

- Vérifiez le coeur LSP MPLS.

- Vérifiez le transfert MPLS à l'intérieur du coeur de réseau, conformément à la conception.

- Ping MPLS P2MP LSP pour IPv4.

Vérification détaillée

IGP (Interior Gateway Protocol), LDP MPLS, BGP (Border Gateway Protocol) s'exécutent de bout en bout sur notre réseau.

Dans cette section, vérifiez que vous devez archiver le réseau principal/d'agrégation. Vérifiez la contiguïté et le plan de contrôle et le plan de données pour le trafic sur le réseau MPLS.

Afin de vérifier que les périphériques CE locaux et distants peuvent communiquer sur le coeur de réseau MPLS (Multiprotocol Label Switching), procédez comme suit :

Comment créer un plan de contrôle ?

Vérifiez le plan de contrôle, dans lequel l'imposition d'étiquette se produit lorsque le routeur PE transfère, en fonction de l'en-tête IP et ajoute une étiquette MPLS au paquet lorsqu'il entre dans un réseau MPLS.

Dans la direction de l'imposition de l'étiquette, le routeur commute les paquets en fonction d'une recherche de table CEF (Cisco Express Forwarding) pour trouver le tronçon suivant et ajoute les informations d'étiquette appropriées stockées dans la FIB pour la destination. Lorsqu’un routeur effectue un échange d’étiquettes dans le coeur d’un paquet MPLS, il effectue une recherche dans la table MPLS. Le routeur déduit cette table MPLS (LFIB) à partir des informations de la table CEF et de la base d'informations d'étiquette (LIB).

La disposition d'étiquette se produit lorsque le routeur PE reçoit un paquet MPLS, prend une décision de transfert basée sur l'étiquette MPLS, supprime l'étiquette et envoie un paquet IP. Le routeur PE utilise la LFIB pour déterminer le chemin d’un paquet dans cette direction. Comme indiqué précédemment, une session iBGP spéciale facilite l'annonce des préfixes VPNv4 et de leurs étiquettes entre les routeurs PE. Au niveau du PE publicitaire, BGP alloue des étiquettes pour les préfixes VPN appris localement et les installe dans la base d'informations de transfert d'étiquette (LFIB), qui est la table de transfert MPLS.

Étape 1. Cet échange de messages a lieu après la configuration du protocole MLDP dans le coeur de réseau.

MLDP-MFI: Enabled MLDP MFI client on Ethernet0/0; status =  ok

MLDP-MFI: Enabled MLDP MFI client on Ethernet0/1; status =  ok

MLDP: P2MP Wildcard label request sent to 11.11.11.11:0 success

MLDP: MP2MP Wildcard label request sent to 11.11.11.11:0 success

MLDP-NBR: 11.11.11.11:0 ask LDP for adjacencies

Note: Utilisez # debug mpls mldp all pour vérifier l'établissement précédent.

PE1#sh mpls mldp neighbors

MLDP peer ID    : 11.11.11.11:0, uptime 00:02:05 Up,

Target Adj     : No

Session hndl   : 1

Upstream count : 0

Branch count   : 0

Path count     : 1

Path(s)        : 10.0.1.2          LDP Ethernet0/1

Nhop count     : 0

Étape 2. Activez la SIGNALISATION INBANDE dans le coeur du protocole MLDP.

ip pim mpls source loopback 0

ip multicast mpls mldp

MLDP: Enabled IPv4 on Lspvif0 unnumbered with Loopback0

MLDP-MFI: Enabled MLDP MFI client on Lspvif0; status =  ok

PIM(*): PIM subblock added to Lspvif0

MLDP: Enable pim on lsp vif: Lspvif0

MLDP: Add success lsp vif: Lspvif0 address: 0.0.0.0 application: MLDP vrf_id: 0

MLDP-DB: Replaying database events for opaque type value: 3

%LINEPROTO-5-UPDOWN: Line protocol on Interface Lspvif0, changed state to up

PIM(0): Check DR after interface: Lspvif0 came up!

%PIM-5-DRCHG: DR change from neighbor 0.0.0.0 to 1.1.1.1 on interface Lspvif0

Note: Utilisez # debug mpls mldp all pour vérifier l'établissement précédent.

PE1#sh int lspvif 0

Lspvif0 is up, line protocol is up

Hardware is

Interface is unnumbered. Using address of Loopback0 (1.1.1.1)

MTU 17940 bytes, BW 8000000 Kbit/sec, DLY 5000 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation LOOPBACK, loopback not set

Note: MPLS MLDP n'est pas encore créé car le récepteur n'est pas encore en ligne.

Le récepteur 3 est en ligne et envoie les messages PIM JOIN (S, G) à PE3.

Le récepteur est disponible en ligne

PIM(0): Received v2 Join/Prune on Ethernet0/2 from 10.2.0.2, to us

PIM(0): Join-list: (10.1.0.2/32, 232.1.1.1), S-bit set

MRT(0): Create (*,232.1.1.1), RPF (unknown, 0.0.0.0, 2147483647/0)

MRT(0): RPF Track start on 10.1.0.2 for (10.1.0.2, 232.1.1.1)

MRT(0): Reset the z-flag for (10.1.0.2, 232.1.1.1)

MLDP: Enabled IPv4 on Lspvif1 unnumbered with Loopback0

MLDP-MFI: Enable lsd on int failed; not registered;

PIM(*): PIM subblock added to Lspvif1

MLDP: Enable pim on lsp vif: Lspvif1

MLDP: Add success lsp vif: Lspvif1 address: 1.1.1.1 application: MLDP vrf_id: 0

MLDP-MRIB-IP: (10.1.0.2,232.1.1.1/32) update (t=0) RPF: 0.0.0.0

MLDP-MRIB-IP: (10.1.0.2,232.1.1.1/32) set rpf nbr: 0.0.0.0

MLDP-MRIB-IP: wavl insert success (10.1.0.2, 232.1.1.1)

MLDP-MRIB-IP: no RPF neighbor, done!

MLDP-MRIB-IP: (10.1.0.2,232.1.1.1/32) update (t=1) RPF: 1.1.1.1

MLDP-MRIB-IP: (10.1.0.2,232.1.1.1/32) set rpf nbr: 1.1.1.1

MLDP-MRIB-IP: Change RPF neighbor from 0.0.0.0 to 1.1.1.1

MLDP-MRIB-IP: (10.1.0.2,232.1.1.1/32) update idb = Lspvif1, (f=2,c=2)

MLDP-MRIB-IP: add accepting interface: Lspvif1 root: 1.1.1.1

MLDP-MRIB-IP: change interface from NULL to Lspvif1

%LINEPROTO-5-UPDOWN: Line protocol on Interface Lspvif1, changed state to up

PIM(0): Check DR after interface: Lspvif1 came up!

PIM(0): Changing DR for Lspvif1, from 0.0.0.0 to 2.2.2.2 (this system)

%PIM-5-DRCHG: DR change from neighbor 0.0.0.0 to 2.2.2.2 on interface Lspvif1

Note: Utilisez # debug mpls mldp all et # debug ip bgp ipv4 mvpn update Debugs pour vérifier l'établissement précédent.

Toute communication de Receiver (S, G) Join est convertie en MLDP et tous les messages sont acheminés vers Lspvif 1

Avec PIM JOIN (S, G) comme MLDP est un protocole piloté par le récepteur, il crée la base de données MLDP du récepteur à la source. Il s'agit de l'allocation d'étiquette en aval pour le protocole MLDP P2MP.

Note: Dans la signalisation intrabande, les interfaces LSPVIF (Label Switched Path Virtual Interfaces) sont créées par entrée-PE pour implémenter stricte-RPF, c'est-à-dire. accepter un paquet (S, G) uniquement s'il provient du PE distant attendu ; ceci est LSPVIF1 dans votre cas. Un PE source, le LSPVIF par défaut est utilisé pour transférer sur le coeur. Notez qu'il n'y a aucun signe de numéros d'interface LSPVIF, c'est-à-dire que lspvif0 n'est pas toujours l'interface par défaut et que lspvif1 n'est pas toujours l'interface par PE. Ces numéros sont attribués à la demande selon les besoins.

PE3#sh ip mroute 232.1.1.1 verbose

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

T - SPT-bit set, p - PIM Joins on route,

(10.1.0.2, 232.1.1.1), 00:19:28/00:02:42, flags: sTp

Incoming interface: Lspvif1, RPF nbr 1.1.1.1

Outgoing interface list:

Ethernet0/0, Forward/Sparse, 00:19:28/00:02:42, p

PE3#sh mpls mldp database

* For interface indicates MLDP recursive forwarding is enabled

* For RPF-ID indicates wildcard value

> Indicates it is a Primary MLDP MDT Branch

LSM ID : 1   Type: P2MP   Uptime : 00:28:02

FEC Root           : 1.1.1.1

Opaque decoded     : [ipv4 10.1.0.2 232.1.1.1]

Opaque length      : 8 bytes

Opaque value       : 03 0008 0A010002E8010101

Upstream client(s) :

11.11.11.11:0    [Active]

Expires        : Never         Path Set ID  : 1

Out Label (U)  : None          Interface    : Ethernet0/3*

Local Label (D): 24            Next Hop     : 10.0.3.2

Replication client(s):

MRIBv4(0)

Uptime         : 00:28:02      Path Set ID  : None

Interface      : Lspvif1

RR-P #sh mpls mldp database

* For interface indicates MLDP recursive forwarding is enabled

* For RPF-ID indicates wildcard value

> Indicates it is a Primary MLDP MDT Branch

LSM ID : A   Type: P2MP   Uptime : 00:40:52

FEC Root           : 1.1.1.1

Opaque decoded     : [ipv4 10.1.0.2 232.1.1.1]

Opaque length      : 8 bytes

Opaque value       : 03 0008 0A010002E8010101

Upstream client(s) :

1.1.1.1:0    [Active]

Expires        : Never         Path Set ID  : A

Out Label (U)  : None          Interface    : Ethernet0/1*

Local Label (D): 24            Next Hop     : 10.0.1.1

Replication client(s):

2.2.2.2:0

Uptime         : 00:40:52      Path Set ID  : None

Out label (D)  : 23            Interface    : Ethernet0/3*

Local label (U): None          Next Hop     : 10.0.2.1

3.3.3.3:0

Uptime         : 00:40:52      Path Set ID  : None

Out label (D)  : 24            Interface    : Ethernet0/2*

Local label (U): None          Next Hop     : 10.0.3.1

Informations reçues au niveau du PE source en fonction de la recherche RPF pour le tronçon suivant.

MLDP-LDP: [ipv4 10.1.0.2 232.1.1.1] label mapping from: 11.11.11.11:0 label: 23 root: 1.1.1.1 Opaque_len: 11 sess_hndl: 0x1

MLDP: LDP root 1.1.1.1 added

MLDP-DB: Added [ipv4 10.1.0.2 232.1.1.1] DB Entry

MLDP-DB: [ipv4 10.1.0.2 232.1.1.1] Changing branch 11.11.11.11:0 from Null/0.0.0.0 to Ethernet0/1/10.0.1.2

MLDP-MFI: Could not add Path type: PKT, Label: 23, Next hop: 11.11.11.11, Interface: NULL to set: 3, error 1

MLDP-DB: [ipv4 10.1.0.2 232.1.1.1] Added P2MP branch for 11.11.11.11:0 label 23

MLDP-MRIB-IP: [ipv4 10.1.0.2 232.1.1.1] client update: We are root

MLDP-MRIB-IP: wavl insert success (10.1.0.2, 232.1.1.1)

MLDP-MRIB-IP: [ipv4 10.1.0.2 232.1.1.1] Created: Lspvif0 for: 0.0.0.0

MLDP-MRIB: Created adjacency for LSM ID 3

MLDP-MRIB-IP: [ipv4 10.1.0.2 232.1.1.1] Created adjacency on Lspvif0

MLDP: nhop 1.1.1.1 added

MRT(0): Set the T-flag for (10.1.0.2, 232.1.1.1)

MRT(0): (10.1.0.2,232.1.1.1), RPF install from  /0.0.0.0 to Ethernet0/2/10.1.0.2

PIM(0): Insert (10.1.0.2,232.1.1.1) join in nbr 10.1.0.2's queue

MLDP-MRIB-IP: (10.1.0.2,232.1.1.1/32) update (t=1) RPF: 10.1.0.2

MLDP-MRIB-IP: (10.1.0.2,232.1.1.1/32) set rpf nbr: 10.1.0.2

MLDP-MRIB-IP: ignoring interface Ethernet0/2, no LS

Note: Utilisez # debug mpls mldp all et # debug ip bgp ipv4 mvpn update pour vérifier l'établissement précédent.

PE1#sh ip mroute 232.1.1.1 verbose

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, I - Received Source Specific Host Report,

(10.1.0.2, 232.1.1.1), 00:25:14/stopped, flags: sTI

Incoming interface: Ethernet0/2, RPF nbr 10.1.0.2

Outgoing interface list:

Lspvif0, LSM ID: 4, Forward/Sparse, 00:25:14/00:01:45

PE1# sh mpls mldp database

* For interface indicates MLDP recursive forwarding is enabled

* For RPF-ID indicates wildcard value

> Indicates it is a Primary MLDP MDT Branch

LSM ID : 4   Type: P2MP   Uptime : 00:25:25

FEC Root           : 1.1.1.1 (we are the root)

Opaque decoded     : [ipv4 10.1.0.2 232.1.1.1]

Opaque length      : 8 bytes

Opaque value       : 03 0008 0A010002E8010101

Upstream client(s) :

None

Expires        : N/A           Path Set ID  : 4

Replication client(s):

11.11.11.11:0

Uptime         : 00:25:25      Path Set ID  : None

Out label (D)  : 24            Interface    : Ethernet0/1*

Local label (U): None          Next Hop     : 10.0.1.2

MLDP-LDP: [id 0] Wildcard label request from: 11.11.11.11:0 label: 0 root: 6.2.0.0 Opaque_len: 0 sess_hndl: 0x1

MLDP-LDP: [ipv4 10.1.0.2 232.1.1.1] label mapping from: 11.11.11.11:0 label: 23 root: 1.1.1.1 Opaque_len: 11 sess_hndl: 0x1

Neighbor 11.11.11.11 request for the label request to PE1.

Note: Répondre aux demandes d'étiquettes génériques typées reçues de l'homologue en relisant sa base de données d'étiquettes pour les préfixes. Utilisez les requêtes d'étiquette générique typées à l'intention des homologues pour demander la relecture de la base de données d'étiquette d'homologue pour les préfixes.

MLDP-LDP: [ipv4 10.1.0.2 232.1.1.1] label mapping from: 11.11.11.11:0 label: 24 root: 1.1.1.1 Opaque_len: 11 sess_hndl: 0x1

MLDP: LDP root 1.1.1.1 added

MLDP-DB: Added [ipv4 10.1.0.2 232.1.1.1] DB Entry

MLDP-DB: [ipv4 10.1.0.2 232.1.1.1] Changing branch 11.11.11.11:0 from Null/0.0.0.0 to Ethernet0/1/10.0.1.2

%MLDP-5-ADD_BRANCH: [ipv4 10.1.0.2 232.1.1.1] Root: 1.1.1.1, Add P2MP branch 11.11.11.11:0 remote label 24

debug ip mfib pak

debug ip mfib mrib

La source démarre la diffusion en continu

Traffic from Source 10.1.0.2 streaming from 232.1.1.1. Enters through ethernet0/2.

The packet got forwarded via Lspvif 0.

PIM(0): Insert (10.1.0.2,232.1.1.1) join in nbr 10.1.0.2's queue

PIM(0): Building Join/Prune packet for nbr 10.1.0.2

PIM(0):  Adding v2 (10.1.0.2/32, 232.1.1.1), S-bit Join

PIM(0): Send v2 join/prune to 10.1.0.2 (Ethernet0/2)

MFIBv4(0x0): Pkt (10.1.0.2,232.1.1.1) from Ethernet0/2 (FS) accepted for forwarding

MFIBv4(0x0): Pkt (10.1.0.2,232.1.1.1) from Ethernet0/2 (FS) sent on Lspvif0, LSM NBMA/4

Capture de paquets (PCAP)

Ce paquet est tunnelisé dans le Lspvif 0.

At the receiver Side:

At the receiver side the packet reach at the Lspvif 1.

MFIBv4(0x0): Pkt (10.1.0.2,232.1.1.1) from Lspvif1 (FS) accepted for forwarding

MFIBv4(0x0): Pkt (10.1.0.2,232.1.1.1) from Lspvif1 (FS) sent on Ethernet0/0

PIM(0): Received v2 Join/Prune on Ethernet0/0 from 10.3.0.2, to us

PIM(0): Join-list: (10.1.0.2/32, 232.1.1.1), S-bit set

PIM(0): Update Ethernet0/0/10.3.0.2 to (10.1.0.2, 232.1.1.1), Forward state, by PIM SG Join

Vérification LSPVIF

Lorsque le paquet atteint le PE1, il vérifie l'ID LSM pour transférer le trafic, qui est étiqueté à imposer dans le paquet multidiffusion.

Conclusion

La signalisation multipoint LDP (M-LDP) en bande vous permet de transporter le trafic de multidiffusion sur un fédérateur IP/MPLS existant, tandis que l'utilisation de PIM dans le coeur du fournisseur est évitée.

Sur le routeur d'extrémité de l'étiquette (LER), activez PIM pour utiliser la signalisation intrabande M-LDP pour les voisins en amont lorsque le LER ne détecte pas de voisin en amont PIM.

Informations connexes

- https://tools.ietf.org/html/rfc4760

- https://tools.ietf.org/html/rfc4447

- https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipmulti_lsm/configuration/15-sy/imc-lsm-15-sy-book...

- Support et documentation techniques - Cisco Systems