Contenido

Introducción

Antecedentes

Señalización en banda

Valor opaco utilizado en este perfil

Árbol de núcleo MLDP

ÁRBOL P2MP

ÁRBOL MP2MP

Valor opaco

Señalización superpuesta

Tipos LSP MLDP

Multidifusión conmutada por etiquetas

Topología

Configuración

Verificación

Verificación detallada

¿Cómo se crea un plano de control?

Paso 1. Este intercambio de mensajes tiene lugar después de configurar el MLDP en el núcleo.

Paso 2. Habilite INBAND SIGNALING en el núcleo para MLDP.

El receptor se conecta

El Origen Inicia la Transmisión

Captura de paquetes (PCAP)

Verificación de LSPVIF

Conclusión

Información Relacionada

Introducción

Este documento describe el MLDP global de señalización en banda que es el perfil 7 para multidifusión de última generación sobre VPN (mVPN). Utiliza un ejemplo y la implementación en Cisco IOS para ilustrar el comportamiento.

Antecedentes

- Árbol en banda mLDP P2MP en el núcleo; no C-multicast Routing.

- El tráfico del cliente puede ser SM S, G o SSM.

- Compatibilidad con la tabla global (S, G) en PE.

- No se necesita PIM en el núcleo para mLDP

Señalización en banda

El valor opaco se utiliza para asignar un LSP MP a un flujo de multidifusión IP.

El contenido del valor opaco se deriva del flujo multicast.

Valor opaco utilizado en este perfil

El tránsito de PIM-SSM IPv4 permite transportar secuencias PIM-SSM globales a través del núcleo del switch de etiquetas multiprotocolo (MPLS). El valor opaco contiene el valor real (S, G) que reside en la tabla global mroute de los routers PE de entrada y salida.

El valor opaco no solo identifica de forma única al LSP MP, sino que también puede transportar la información de flujo (S, G) desde la red de multidifusión IP de borde. Los routers P de la ruta conmutada (LSP) de etiquetas MP no necesitan analizar el valor opaco, pero utilizan el valor como un índice en su base de datos local de LSP MP para determinar los siguientes saltos a los que replicar el paquete multidifusión. Sin embargo, el PE LSP de entrada (más cercano al origen) decodifica el valor para que pueda seleccionar el MP LSP correcto para la secuencia entrante (S, G). El PE de salida puede utilizar el valor para instalar el estado (S, G) en el VRF local o en la tabla de ruta multicast global.

1. LSM permite el uso de un único plano de reenvío MPLS para el tráfico unidifusión y multidifusión.

2. LSM permite utilizar los mecanismos de protección MPLS existentes (por ejemplo, MPLS (TE/RSVP) y MPLS (OAM) para el tráfico multidifusión.

3. LSM Reduce la complejidad operativa debido a la eliminación de la necesidad de PIM en la red de núcleo MPLS.

Árbol de núcleo MLDP

ÁRBOL P2MP

El controlador del receptor y la raíz aprendida se señalizaron usando MLDP P2MP FEC.

Identificado de forma única:

- Dirección del nodo raíz

- LSP-ID de P2MP [32 bits]

ÁRBOL MP2MP

Configuration Driven y root se configuran manualmente.

Identificado de forma única:

- Dirección del nodo raíz

- LSP-ID de MP2MP [32 bits]

Valor opaco

Se utiliza para transportar información de flujo de multidifusión, que tiene significado para raíz y hojas.

- (S,G) Señalización dentro de la banda

- LSPID (Default/Data)

Tipo 1: Definido por MDLP, contiene LSP-ID para administrar el espacio de ID para los LSPs P2MP / MP2MP.

Tipo 2: Definido para el aprovisionamiento de túneles MP-LDP y utilizado para BGP-MVPN sin solapamiento.

Señalización superpuesta

Tipos LSP MLDP

Multidifusión conmutada por etiquetas

Extensiones de Tecnología MPLS para soportar Multicast usando Etiquetas:

- LSPs punto a multipunto

- LSP multipunto a multipunto

P2MP

MP2MP

Etiqueta

Asignación ascendente

Flujo ascendente y descendente

Tráfico

Flujo descendente

Flujo ascendente y descendente

Raíz

Router de ingreso

Proporcionar/Proporcionar perímetro

Tipo de tráfico

Router de control

Sólo tráfico de control

Tipo de LSP

Raíz a muchas hojas

Muchas raíces para muchas hojas

Topología

Configuración

Paso 1. Habilite MPLS MLDP en nodos de núcleo.

En PE1, PE2 y PE3:

# mpls mldp logging

Paso 2. Habilite la SEÑALIZACIÓN DE ENTRADA MLDP en el NÚCLEO.

En PE1, PE2 y PE3:

# ip multicast mpls mldp

# ip pim mpls source loopback 0

Paso 3. Habilite el ruteo multicast.

En todos los nodos:

# ip multicast-routing

Paso 4. Habilite el SSM de multidifusión independiente del protocolo (PIM) en el perímetro del cliente (CE).

En nodos CE:

# ip pim ssm default

Paso 5. Habilite PIM SM en todas las interfaces CE y en la interfaz Provider Edge (PE).

En CE1, CE2, CE3 y todas las interfaces PE de cara a CE:

# interface x/x

# ip pim sparse-mode

# interface loopback x/x

# ip pim sparse-mode

Nota: x representa el número de interfaz que PE conectó a CE y viceversa.

Verificación

Tarea 1: Verifique la conectividad física.

- Verifique que toda la interfaz conectada esté ACTIVADA.

Tarea 2: Verificar unidifusión IPv4 de Familia de Direcciones BGP

- Verifique que el protocolo de gateway fronterizo (BGP) esté habilitado en todos los routers para la unidifusión IPv4 AF y que los vecinos BGP estén ACTIVOS.

- Verifique que la tabla IPv4 de BGP tenga todos los prefijos del cliente.

Tarea 3: Verifique el tráfico de multidifusión de extremo a extremo.

- Verifique la vecindad PIM con el vecino PIM conectado.

- Verifique que se haya creado el estado multicast.

- En la entrada PE mRIB en PE1, PE2 y PE3

- Verifique que (S, G) la entrada mFIB, el paquete se incrementa en el reenvío de software.

- Verifique que los paquetes ICMP lleguen de CE a CE.

Tarea 4: Verifique el NÚCLEO MPLS.

- Verifique el núcleo MPLS LSP.

- Verifique el reenvío MPLS dentro del núcleo según el diseño.

- Ping MPLS P2MP LSP para IPv4.

Verificación detallada

El protocolo de gateway interior (IGP), MPLS LDP y protocolo de gateway fronterizo (BGP) se ejecutan correctamente en toda la red de principio a fin.

En esta sección, verifique para proteger la red de núcleo/agregación. Verifique la adyacencia y el plano de control y el plano de datos para el tráfico sobre la red MPLS.

Para verificar que los dispositivos CE locales y remotos pueden comunicarse a través del núcleo de switching de etiquetas multiprotocolo (MPLS), realice los pasos que se muestran en la imagen:

¿Cómo se crea un plano de control?

Verifique el plano de control, en el que se produce la imposición Label cuando el router PE se reenvía, en función del encabezado IP y agrega una etiqueta MPLS al paquete cuando ingresa a una red MPLS.

En la dirección de la imposición de etiquetas, el router conmuta los paquetes basados en una búsqueda de tabla de Cisco Express Forwarding (CEF) para encontrar el salto siguiente y agrega la información de etiqueta adecuada almacenada en la FIB para el destino. Cuando un router realiza un intercambio de etiquetas en el núcleo en un paquete MPLS, el router realiza una búsqueda de tabla MPLS. El router deriva esta tabla MPLS (LFIB) de la información de la tabla CEF y de la Base de información de etiquetas (LIB).

La disposición de la etiqueta ocurre cuando el router PE recibe un paquete MPLS, toma una decisión de reenvío basada en la etiqueta MPLS, quita la etiqueta y envía un paquete IP. El router PE utiliza el LFIB para la determinación de la trayectoria de un paquete en esta dirección. Como se indicó anteriormente, una sesión iBGP especial facilita el anuncio de prefijos VPNv4 y sus etiquetas entre routers PE. En el PE de publicidad, BGP asigna etiquetas para los prefijos VPN aprendidos localmente e instalarlas en la Base de información de reenvío de etiquetas (LFIB), que es la tabla de reenvío MPLS.

Paso 1. Este intercambio de mensajes tiene lugar después de configurar el MLDP en el núcleo.

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

Nota: Utilice # debug mpls mldp all para verificar el establecimiento anterior.

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

Paso 2. Habilite INBAND SIGNALING en el núcleo para 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

Nota: Utilice # debug mpls mldp all para verificar el establecimiento anterior.

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

Nota: MPLS MLDP todavía no se ha creado porque el receptor todavía no está en línea.

El receptor 3 se conecta y envía los mensajes PIM JOIN (S, G) a PE3.

El receptor se conecta

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

Nota: Use # debug mpls mldp all y # debug ip bgp ipv4 mvpn updates Debugs para verificar el establecimiento de la memoria.

Cualquier comunicación de la Unión del Receptor (S,G) se convierte en MLDP y todos los mensajes se transmiten hacia el Lspvif 1

Con PIM JOIN (S,G) como MLDP es un protocolo dirigido por el receptor, genera la base de datos MLDP de Receptor a Origen. Esta es la asignación de etiquetas descendentes para MLDP P2MP.

Nota: En la señalización dentro de la banda, las interfaces virtuales de ruta conmutada de etiquetas (LSPVIF) se crean por PE de ingreso para implementar RPF estricta, es decir, aceptar un paquete (S,G) sólo si proviene del PE remoto esperado; este es LSPVIF1 en su caso. Un PE de origen, el LSPVIF predeterminado se utiliza para reenviar al núcleo. Observe que no hay ningún signo de números de interfaz LSPVIF, es decir, lspvif0 no siempre es la interfaz predeterminada y lspvif1 no siempre es la interfaz por PE. Estas cifras se asignan a demanda según sea necesario.

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

La información recibida en el PE de origen basada en la búsqueda RPF para el salto siguiente.

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

Nota: Utilice # debug mpls mldp all y # debug ip bgp ipv4 mvpn updates para verificar el establecimiento anterior.

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.

Nota: Responda a las solicitudes de etiquetas comodín con tipo recibidas del par reproduciendo su base de datos de etiquetas para los prefijos. Utilice las solicitudes de etiquetas comodín con tipo hacia los pares para solicitar la repetición de la base de datos de etiquetas de peer para los prefijos.

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

El Origen Inicia la Transmisión

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

Captura de paquetes (PCAP)

Este paquete se tuneliza en el 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

Verificación de LSPVIF

Cuando el paquete llega al PE1, verifica el ID de LSM para reenviar el tráfico, que etiqueta para imponer en el paquete de multidifusión.

Conclusión

La señalización en banda de LDP multipunto (M-LDP) permite transportar tráfico multidifusión a través de una red troncal IP/MPLS existente, mientras que se evita el uso de PIM en el núcleo del proveedor.

En el router de borde de etiqueta (LER), active PIM para utilizar la señalización en banda M-LDP para los vecinos de flujo ascendente cuando LER no detecta un vecino ascendente PIM.

Información Relacionada

- 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...

- Soporte Técnico y Documentación - Cisco Systems