Contenido

Introducción

Migración de los protocolos de árbol de núcleo

Migración de C-Multicast Protocol

Escenario 1.

Situación hipotética 2.

Situación hipotética 3.

Situación hipotética 4.

problema

La solución

Conclusión

Introducción

Este documento describe la migración de los Árboles de Distribución Multicast Multidifusión Basados en el Árbol de Núcleo de Multidifusión Independiente de Multidifusión (PIM) a los MDT basados en el Árbol de Núcleo del Protocolo de Distribución de Etiquetas Multipunto (mLDP) . Además, cómo se señalizan los MDT de datos en detalle en el momento de la migración. Este documento describe la migración sólo para el router de borde del proveedor de entrada (PE) que ejecuta Cisco IOS®-XR.

Migración de los protocolos de árbol de núcleo

Dual-Encap hace referencia a un router de entrada que puede reenviar una secuencia de multidifusión de cliente (C) a diferentes tipos de árbol de núcleo al mismo tiempo. Por ejemplo, el router PE de entrada reenvía un flujo de multidifusión C a un árbol de núcleo basado en PIM y un árbol de núcleo basado en mLDP al mismo tiempo. Este es un requisito para migrar mVPN correctamente de un tipo de árbol de núcleo a otro.

PIM y mLDP admiten doble encapsulado.

Dual-Encap no es compatible con Multiprotocol Label Switching (MPLS) P2MP Traffic Engineering (TE).

La migración o coexistencia de MDT Generic Routing Encapsulation (GRE) y MDT mLDP predeterminado se basa en el hecho de que el router PE de entrada reenvía una secuencia C-multicast a un árbol de núcleo basado en PIM y un árbol de núcleo basado en mLDP al mismo tiempo. Mientras el PE de entrada se reenvía a ambos MDT, los routers PE de salida se pueden migrar uno por uno de un tipo de árbol de núcleo a otro.

Normalmente, las rutas PE migrarán del modelo de implementación mVPN más antiguo utilizando árboles de núcleo basados en PIM a un modelo de implementación mVPN usando árboles basados en mLDP. La implementación de mVPN más antigua es Profile 0, que es un núcleo basado en PIM, no Border Gateway Protocol (BGP) Auto-Discovery (AD) y PIM en la señalización superpuesta. Sin embargo, la migración también puede producirse de la forma opuesta.

Veamos este escenario de migración, ya que se trata de la migración más común: de GRE en el núcleo (Perfil 0) a un perfil mLDP de MDT predeterminado.

Hay algunos perfiles mLDP predeterminados posibles.

Veamos estos:

- mLDP sin BGP AD

- mLDP con BGP AD y señalización PIM C

- mLDP con BGP AD y BGP C-signaling

En este último caso, también hay una migración del protocolo de señalización C.

Una de las cosas que hay que tener en cuenta es que cuando se utiliza BGP AD, el BGP señala el MDT de datos de forma predeterminada. Si no hay BGP AD, BGP no puede señalizar el MDT de datos.

En cualquier caso, el PE de entrada debe tener tanto el perfil 0 como el perfil mLDP configurados. El PE de entrada reenviará el tráfico de multidifusión C a ambos MDT (Default o Data) de ambos protocolos de árbol de núcleo. Por lo tanto, ambos MDT predeterminados deben configurarse en el PE de entrada.

Si el PE de salida es capaz de ejecutar los protocolos de árbol de núcleo PIM y mLDP, puede decidir de qué árbol extraer el tráfico de multidifusión C. Esto se realiza mediante la configuración de la política Reverse Path Forwarding (RPF) en el PE de salida.

Si el router PE de salida es capaz de solamente el Perfil 0, entonces ese PE solamente se unirá al árbol PIM en el núcleo y recibirá el flujo C-multicast en el árbol basado en PIM.

Nota: Si se utiliza el modo disperso de PIM, tanto el RP-PE como el S-PE deben ser accesibles tanto a través del MDT basado en GRE como a través del MDP basado en mLDP.

Migración de C-Multicast Protocol

El protocolo C-multicast se puede migrar de PIM a BGP o viceversa. Esto se hace configurando el PE de egreso para elegir PIM o BGP como protocolo de superposición. Es el PE de egreso que envía una unión por PIM o BGP. El PE de entrada puede recibir y procesar ambos en un escenario de migración.

Este es un ejemplo de migración del protocolo C-multicast, configurado en el PE de salida:

router pim

vrf one

address-family ipv4

rpf topology route-policy rpf-for-one

mdt c-multicast-routing bgp

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

!

route-policy rpf-for-one

set core-tree mldp-default

end-policy

!

BGP se habilita como el protocolo de señalización de superposición. El valor predeterminado es PIM.

Escenarios

Consulte la figura 1. para ver la configuración utilizada para los escenarios.

Figura 1.

En estos escenarios, tiene al menos un router PE heredado como router PE receptor. Este es un router que sólo ejecuta el perfil 0 (MDT predeterminado - GRE - Señalización PIM C-mcast).

Este router debe tener configurado BGP IPv4 MDT.

Hay al menos un router Receiver-PE que ejecuta un perfil basado en mLDP. Estos son todos los perfiles mLDP de MDT predeterminados (1, 9, 13, 12, 17), todos los perfiles mLDP de MDT particionados (2, 4, 5, 14 ,15) y el perfil 7. También se admite el perfil 8 para P2MP TE.

El router PE de ingreso es un router de doble encapsulado: ejecuta el perfil 0 y un perfil basado en mLDP.

En todo momento, este router PE de entrada debe reenviar el tráfico tanto en los MDT basados en PIM como en los MDT basados en mLDP. Estos MDT pueden ser el valor predeterminado y los MDT de datos.

Como router heredado, tome un router que ejecuta IOS, que sólo puede ejecutar el perfil 0. La configuración del router heredado es esta.

vrf definition one

rd 1:3

vpn id 1:1

route-target export 1:1

route-target import 1:1

!

address-family ipv4

mdt default 232.1.1.1

exit-address-family

Se debe configurar BGP IPv4 MDT:

router bgp 1

…

address-family ipv4 mdt

neighbor 10.1.100.7 activate

neighbor 10.1.100.7 send-community extended

exit-address-family

!

…

Escenario 1.

Hay uno o más routers PE heredados como router PE receptor.

Hay uno o más routers PE como router Receiver-PE que ejecuta el perfil 1 (MDT predeterminado - Señalización de multidifusión C MP2MP PIM mLDP).

No hay ninguna señalización BGP AD o BGP C-multicast.

Configuración del router Receiver-PE, que ejecuta el perfil 1:

vrf one

vpn id 1:1

address-family ipv4 unicast

import route-target

1:1

!

export route-target

1:1

!

!

router pim

vrf one

address-family ipv4

rpf topology route-policy rpf-for-one

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

!

route-policy rpf-for-one

set core-tree mldp-default

end-policy

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

mdt default mldp ipv4 10.1.100.7

mdt data 100

rate-per-route

interface all enable

!

accounting per-prefix

!

!

!

mpls ldp

mldp

logging notifications

address-family ipv4

!

!

!

route-policy rpf-for-one

set core-tree mldp-default

Configuración del router PE de entrada:

vrf one

vpn id 1:1

address-family ipv4 unicast

import route-target

1:1

!

export route-target

1:1

!

!

router pim

vrf one

address-family ipv4

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

interface all enable

!

mdt default ipv4 232.1.1.1

mdt default mldp ipv4 10.1.100.7

mdt data 255

mdt data 232.1.2.0/24

!

!

!

mpls ldp

mldp

logging notifications

address-family ipv4

!

!

!

El router PE de ingreso debe tener la familia de direcciones BGP IPv4 MDT, que coincida con lo que tiene el router PE heredado.

El PE de ingreso debe estar reenviando a ambos tipos de MDT:

Ingress-PE#show mrib vrf one route 232.100.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.2.9,232.100.1.1) RPF nbr: 10.2.2.9 Flags: RPF MT

MT Slot: 0/1/CPU0

Up: 00:56:09

Incoming Interface List

GigabitEthernet0/1/0/0 Flags: A, Up: 00:56:09

Outgoing Interface List

mdtone Flags: F NS MI MT MA, Up: 00:22:59      <<< PIM-based tree

Lmdtone Flags: F NS LMI MT MA, Up: 00:56:09    <<< mLDP-based tree

El PE de ingreso debe ver el PE heredado en la interfaz mdtone y el PE Profile 1 en la interfaz Lmdtone como vecino PIM:

Ingress-PE#show pim vrf one neighbor

PIM neighbors in VRF one

Flag: B - Bidir capable, P - Proxy capable, DR - Designated Router,

E - ECMP Redirect capable

* indicates the neighbor created for this router

Neighbor Address             Interface             Uptime   Expires DR pri   Flags

10.1.100.1                   Lmdtone 6w1d     00:01:29 1     P

10.1.100.2*                  Lmdtone               6w1d     00:01:15 1 (DR) P

10.1.100.2*                  mdtone                 5w0d     00:01:30 1     P

10.1.100.3                   mdtone 00:50:20 00:01:30 1 (DR) P

"debug pim vrf one mdt data" en el PE de entrada:

Puede ver que se envían un tipo 1 (árbol de núcleo PIM) y un tipo 2 (árbol de núcleo mLDP) PIM Join TLV (TLV de unión PIM). El primero en mdtone y el segundo en Lmdtone.

pim[1140]: [13] MDT Grp lookup: Return match for grp 232.1.2.4 src 10.1.100.2 in local list (-)

pim[1140]: [13] In mdt timers process...

pim[1140]: [13] Processing MDT JOIN SEND timer for MDT null core mldp pointer in one

pim[1140]: [13] In join_send_update_timer: route->mt_head 50c53b44

pim[1140]: [13] Create new MDT tlv buffer for one for type 0x1

pim[1140]: [13] Buffer allocated for one mtu 1348 size 0

pim[1140]: [13] TLV type set to 0x1

pim[1140]: [13] TLV added for one mtu 1348 size 16

pim[1140]: [13] MDT cache upd: pe 0.0.0.0, (10.2.2.9,232.100.1.1), mdt_type 0x1, core (10.1.100.2,232.1.2.4), for vrf one [local, -], mt_lc 0x11, mdt_if 'mdtone', cache NULL

pim[1140]: [13] Looked up cache pe 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x1 in one (found) - No error

pim[1140]: [13] Cache get: Found entry for 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x1 in one

pim[1140]: [13] pim_mvrf_mdt_cache_update:946, mt_lc 0x11, copied mt_mdt_ifname 'mdtone'

pim[1140]: [13] Create new MDT tlv buffer for one for type 0x2

pim[1140]: [13] Buffer allocated for one mtu 1348 size 0

pim[1140]: [13] TLV type set to 0x2, o_type 0x2

pim[1140]: [13] TLV added for one mtu 1348 size 36

pim[1140]: [13] MDT cache upd: pe 0.0.0.0, (10.2.2.9,232.100.1.1), mdt_type 0x2, core src 10.1.100.2, id [mdt 1:1 1], for vrf one [local, -], mt_lc 0x11, mdt_if 'Lmdtone', cache NULL

pim[1140]: [13] Looked up cache pe 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x2 in one (found) - No error

pim[1140]: [13] Cache get: Found entry for 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

pim[1140]: [13] pim_mvrf_mdt_cache_update:946, mt_lc 0x11, copied mt_mdt_ifname 'Lmdtone'

pim[1140]: [13] Set next send time for core type (0x0/0x2) (v: 10.2.2.9,232.100.1.1) in one

pim[1140]: [13] 2. Flush MDT Join for one on Lmdtone(10.1.100.2) 6 (Cnt:1, Reached size 36 MTU 1348)

pim[1140]: [13] 2. Flush MDT Join for one (Lo0) 10.1.100.2

pim[1140]: [13] 2. Flush MDT Join for one on mdtone(10.1.100.2) 6 (Cnt:1, Reached size 16 MTU 1348)

pim[1140]: [13] 2. Flush MDT Join for one (Lo0) 10.1.100.2

Ingress-PE#show pim vrf one mdt cache

Core Source     Cust (Source, Group)               Core Data       Expires

10.1.100.2       (10.2.2.9, 232.100.1.1)             232.1.2.4       00:02:36

10.1.100.2       (10.2.2.9, 232.100.1.1)             [mdt 1:1 1]     00:02:36

Nota: El valor de longitud de tipo de unión PIM (TLV) es un mensaje PIM enviado a través del MDT predeterminado y se utiliza para indicar el MDT de datos. Se envía periódicamente, una vez cada minuto.

El PE de salida heredado:

"debug ip pim vrf one 232.100.1.1":

PIM(1): Receive MDT Packet (55759) from 10.1.100.2 (Tunnel3), length (ip: 44, udp: 24), ttl: 1PIM(1): TLV type: 1 length: 16 MDT Packet length: 16

El PE heredado almacena en caché el TLV de unión PIM:

Legacy-PE#show ip pim vrf one mdt receive

Joined MDT-data [group/mdt number : source] uptime/expires for VRF: one

[232.1.2.4 : 10.1.100.2] 00:01:10/00:02:45

El PE heredado se une al MDT de datos en el núcleo:

Legacy-PE#show ip mroute vrf one 232.100.1.1

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, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(10.2.2.9, 232.100.1.1), 00:08:48/00:02:34, flags: sTY

Incoming interface: Tunnel3, RPF nbr 10.1.100.2, MDT:[10.1.100.2,232.1.2.4]/00:02:46

Outgoing interface list:

GigabitEthernet1/1, Forward/Sparse, 00:08:48/00:02:34

El receptor PE del perfil 1 también recibe el TLV de unión PIM, pero para el MDT de datos basado en mLDP:

Egress-PE#debug pim vrf one mdt data

pim[1161]: [13] Received MDT Packet on Lmdtone (vrf:one) from 10.1.100.2, len 36

pim[1161]: [13] Processing type 2 tlv

pim[1161]: [13] Received MDT Join TLV from 10.1.100.2 for cust route 10.2.2.9,232.100.1.1

MDT number 1 len 36

pim[1161]: [13] Looked up cache pe 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

(found) - No error

pim[1161]: [13] MDT cache upd: pe 10.1.100.2, (10.2.2.9,232.100.1.1), mdt_type 0x2, core

src 10.1.100.2, id [mdt 1:1 1], for vrf one [remote, -], mt_lc 0xffffffff, mdt_if 'xxx',

cache NULL

pim[1161]: [13] Looked up cache pe 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

(found) - No error

pim[1161]: [13] Cache get: Found entry for 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2

in one

RP/0/RP1/CPU0:Nov 27 16:04:02.726 : Return match for [mdt 1:1 1] src 10.1.100.2 in remote

list (one)

pim[1161]: [13] Remote join: MDT [mdt 1:1 1] known in one. Refcount (1, 1)

Egress-PE#show pim vrf one mdt cache

Core Source     Cust (Source, Group)               Core Data       Expires

10.1.100.2       (10.2.2.9, 232.100.1.1)             [mdt 1:1 1]     00:02:12

Egress-PE#show mrib vrf one route 232.100.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.2.9,232.100.1.1) RPF nbr: 10.1.100.2 Flags: RPF

Up: 00:45:20

Incoming Interface List

Lmdtone Flags: A LMI, Up: 00:45:20

Outgoing Interface List

GigabitEthernet0/0/0/9 Flags: F NS LI, Up: 00:45:20

Situación hipotética 2.

Hay uno o más routers PE heredados como routers PE de receptor.

Hay uno o más routers PE como router Receiver-PE que ejecutan el perfil 9 (MDT predeterminado - Señalización de multidifusión C de PIM MP2MP BGP-AD de mLDP).

Hay un BGP AD involucrado, pero no hay señalización BGP C-multicast.

Configuración del router Receiver-PE, que ejecuta el perfil 9:

vrf one

vpn id 1:1

address-family ipv4 unicast

import route-target

1:1

!

export route-target

1:1

!

!

router pim

vrf one

address-family ipv4

rpf topology route-policy rpf-for-one

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

!

route-policy rpf-for-one

set core-tree mldp-default

end-policy

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

rate-per-route

interface all enable

accounting per-prefix

bgp auto-discovery mldp

!

mdt default mldp ipv4 10.1.100.7

!

!

!

router bgp 1

!

address-family vpnv4 unicast

!

!

address-family ipv4 mvpn

!

!

neighbor 10.1.100.7     <<< iBGP neighbor

remote-as 1

update-source Loopback0

address-family vpnv4 unicast

!

address-family ipv4 mvpn

!

!

vrf one

rd 1:1

address-family ipv4 unicast

redistribute connected

!

address-family ipv4 mvpn

!

!

mpls ldp

mldp

logging notifications

address-family ipv4

!

!

!

El router PE de ingreso debe tener la familia de direcciones BGP IPv4 MDT, que coincida con lo que tiene el router PE heredado. El router PE de ingreso debe tener la familia de direcciones BGP IPv4 MVPN, que coincida con lo que tiene el router PE de salida Profile 9.

Configuración del router PE de entrada:

vrf one

vpn id 1:1

address-family ipv4 unicast

import route-target

1:1

!

export route-target

1:1

!

!

address-family ipv6 unicast

!

!

router pim

vrf one

address-family ipv4

mdt c-multicast-routing pim

announce-pim-join-tlv

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

interface all enable

bgp auto-discovery mldp

!

mdt default ipv4 232.1.1.1

mdt default mldp ipv4 10.1.100.7

mdt data 255

mdt data 232.1.2.0/24

!

!

!

router bgp 1

address-family vpnv4 unicast

!

address-family ipv4 mdt

!

address-family ipv4 mvpn

!

neighbor 10.1.100.7     <<< iBGP neighbor

remote-as 1

update-source Loopback0

address-family vpnv4 unicast

!

address-family ipv4 mdt

!

address-family ipv4 mvpn

!

!

vrf one

rd 1:2

address-family ipv4 unicast

redistribute connected

!

address-family ipv4 mvpn

!

mpls ldp

mldp

logging notifications

address-family ipv4

!

!

!

Sin el comando "announce-pim-Join-tlv", el router PE de ingreso no envía los mensajes PIM Join TLV a través de los MDT predeterminados si se habilita la Detección Automática de BGP (AD). Sin este comando, el router PE de ingreso sólo envía una actualización de BGP IPv4 mvpn route-type 3. El router PE de salida Profile 9 recibe la actualización de BGP e instala el mensaje MDT de datos en su memoria caché. El router PE heredado no ejecuta BGP AD y, por lo tanto, no aprende el mensaje de unión de datos MDT a través de BGP.

El PE de entrada debe reenviar el tráfico de multidifusión C a ambos tipos de MDT:

Ingress-PE#show mrib vrf one route 232.100.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.2.9,232.100.1.1) RPF nbr: 10.2.2.9 Flags: RPF MT

MT Slot: 0/1/CPU0

Up: 05:03:56

Incoming Interface List

GigabitEthernet0/1/0/0 Flags: A, Up: 05:03:56

Outgoing Interface List

mdtone Flags: F NS MI MT MA, Up: 05:03:56

Lmdtone Flags: F NS LMI MT MA, Up: 05:03:12

El PE de ingreso debe ver el PE heredado en la interfaz mdtone y el PE Profile 9 en la interfaz Lmdtone como vecino PIM:

Ingress-PE#show pim vrf one neighbor

PIM neighbors in VRF one

Flag: B - Bidir capable, P - Proxy capable, DR - Designated Router,

E - ECMP Redirect capable

* indicates the neighbor created for this router

Neighbor Address             Interface             Uptime   Expires DR pri   Flags

10.1.100.1                   Lmdtone               6w1d     00:01:18 1     P

10.1.100.2*                  Lmdtone               6w1d     00:01:34 1 (DR) P

10.1.100.2*                  mdtone                5w0d     00:01:18 1     P

10.1.100.3                   mdtone                06:00:03 00:01:21 1 (DR)

El PE de salida del perfil 9 recibe el mensaje de datos MDT como actualización BGP para un tipo de ruta 3 en la familia de direcciones IPv4 MVPN:

Egress-PE#show bgp ipv4 mvpn vrf one

BGP router identifier 10.1.100.1, local AS number 1

BGP generic scan interval 60 secs

BGP table state: Active

Table ID: 0x0   RD version: 1367879340

BGP main routing table version 92

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network           Next Hop           Metric LocPrf Weight Path

Route Distinguisher: 1:1 (default for vrf one)

*> [1][10.1.100.1]/40 0.0.0.0                               0 i

*>i[1][10.1.100.2]/40 10.1.100.2                   100     0 i

*>i[3][32][10.2.2.9][32][232.100.1.1][10.1.100.2]/120

10.1.100.2                   100     0 i

Processed 3 prefixes, 3 paths

Egress-PE#show bgp ipv4 mvpn vrf one [3][32][10.2.2.9][32][232.100.1.1][10.1.100.2]/120

BGP routing table entry for [3][32][10.2.2.9][32][232.100.1.1][10.1.100.2]/120, Route

Distinguisher: 1:1

Versions:

Process           bRIB/RIB SendTblVer

Speaker                 92         92

Last Modified: Nov 27 20:25:32.474 for 00:44:22

Paths: (1 available, best #1, not advertised to EBGP peer)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.1.100.2 (metric 12) from 10.1.100.7 (10.1.100.2)

Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate,

imported

Received Path ID 0, Local Path ID 1, version 92

Community: no-export

Extended community: RT:1:1

Originator: 10.1.100.2, Cluster list: 10.1.100.7

PMSI: flags 0x00, type 2, label 0, ID

0x060001040a016402000e02000b0000010000000100000001

Source VRF: default, Source Route Distinguisher: 1:2

Esta ruta BGP es un tipo de ruta 3, para el tipo de túnel de protocolo 2, que es mLDP P2MP LSP (el MDT de datos construido en un P2MP mLSP LSP). No hay entrada BGP route-type 3 para ningún árbol PIM, ya que BGP AD no está habilitado para PIM.

"debug pim vrf one mdt data" en el PE de entrada:

pim[1140]: [13] In mdt timers process...

pim[1140]: [13] Processing MDT JOIN SEND timer for MDT null core mldp pointer in one

pim[1140]: [13] In join_send_update_timer: route->mt_head 50c53b44

pim[1140]: [13] Create new MDT tlv buffer for one for type 0x1

pim[1140]: [13] Buffer allocated for one mtu 1348 size 0

pim[1140]: [13] TLV type set to 0x1

pim[1140]: [13] TLV added for one mtu 1348 size 16

pim[1140]: [13] MDT cache upd: pe 0.0.0.0, (10.2.2.9,232.100.1.1), mdt_type 0x1, core

(10.1.100.2,232.1.2.5), for vrf one [local, -], mt_lc 0x11, mdt_if 'mdtone', cache NULL

pim[1140]: [13] Looked up cache pe 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x1 in one

(found) - No error

pim[1140]: [13] Cache get: Found entry for 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x1 in

one

pim[1140]: [13] pim_mvrf_mdt_cache_update:946, mt_lc 0x11, copied mt_mdt_ifname 'mdtone'

pim[1140]: [13] Create new MDT tlv buffer for one for type 0x2

pim[1140]: [13] Buffer allocated for one mtu 1348 size 0

pim[1140]: [13] TLV type set to 0x2, o_type 0x2

pim[1140]: [13] TLV added for one mtu 1348 size 36

pim[1140]: [13] MDT cache upd: pe 0.0.0.0, (10.2.2.9,232.100.1.1), mdt_type 0x2, core src

10.1.100.2, id [mdt 1:1 1], for vrf one [local, -], mt_lc 0x11, mdt_if 'Lmdtone', cache

NULL

: pim[1140]: [13] Looked up cache pe 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

(found) - No error

pim[1140]: [13] Cache get: Found entry for 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x2 in

one

pim[1140]: [13] pim_mvrf_mdt_cache_update:946, mt_lc 0x11, copied mt_mdt_ifname 'Lmdtone'

pim[1140]: [13] Set next send time for core type (0x0/0x2) (v: 10.2.2.9,232.100.1.1) in

one

pim[1140]: [13] 2. Flush MDT Join for one on Lmdtone(10.1.100.2) 6 (Cnt:1, Reached size

36 MTU 1348)

pim[1140]: [13] 2. Flush MDT Join for one (Lo0) 10.1.100.2

pim[1140]: [13] 2. Flush MDT Join for one on mdtone(10.1.100.2) 6 (Cnt:1, Reached size 16

MTU 1348)

pim[1140]: [13] 2. Flush MDT Join for one (Lo0) 10.1.100.2

El PE de ingreso envía un TLV de unión PIM para el MDT de datos basado en PIM y en mLDP.

En el PE heredado:

"debug ip pim vrf one 232.100.1.1":

PIM(1): Receive MDT Packet (56333) from 10.1.100.2 (Tunnel3), length (ip: 44, udp: 24), ttl: 1

PIM(1): TLV type: 1 length: 16 MDT Packet length: 16

El PE heredado recibe y almacena en caché el TLV de unión PIM:

Legacy-PE#show ip pim vrf one mdt receive

Joined MDT-data [group/mdt number : source] uptime/expires for VRF: one

[232.1.2.5 : 10.1.100.2] 00:23:30/00:02:33

El PE heredado se une al MDT de datos en el núcleo:

Legacy-PE#show ip mroute vrf one 232.100.1.1

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, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(10.2.2.9, 232.100.1.1), 05:13:35/00:03:02, flags: sTY

Incoming interface: Tunnel3, RPF nbr 10.1.100.2, MDT:[10.1.100.2,232.1.2.5]/00:02:37

Outgoing interface list:

GigabitEthernet1/1, Forward/Sparse, 05:13:35/00:03:02

El receptor del perfil 9-PE.

"debug pim vrf one mdt data" en Profile 9 Egress PE:

pim[1161]: [13] Received MDT Packet on Lmdtone (vrf:one) from 10.1.100.2, len 36

pim[1161]: [13] Processing type 2 tlv

pim[1161]: [13] Received MDT Join TLV from 10.1.100.2 for cust route 10.2.2.9,232.100.1.1

MDT number 1 len 36

pim[1161]: [13] Looked up cache pe 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

(found) - No error

pim[1161]: [13] MDT cache upd: pe 10.1.100.2, (10.2.2.9,232.100.1.1), mdt_type 0x2, core

src 10.1.100.2, id [mdt 1:1 1], for vrf one [remote, -], mt_lc 0xffffffff, mdt_if 'xxx',

cache NULL

pim[1161]: [13] Looked up cache pe 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

(found) - No error

pim[1161]: [13] Cache get: Found entry for 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2

in one

pim[1161]: [13] MDT lookup: Return match for [mdt 1:1 1] src 10.1.100.2 in remote list

(one)

pim[1161]: [13] Remote join: MDT [mdt 1:1 1] known in one. Refcount (1, 1)

El receptor PE del perfil 9 recibe y almacena en caché el TLV de unión PIM. El Receptor PE del Perfil 9 también se enteró del MDT de Datos debido a la recepción del mensaje de actualización BGP para un tipo de ruta 3 desde el PE de Ingreso. El TLV de unión PIM y el tipo de ruta del mensaje de actualización BGP son equivalentes y contienen la misma información con respecto al túnel del árbol de núcleo para el MDT de datos.

Egress-PE#show pim vrf one mdt cache

Core Source     Cust (Source, Group)               Core Data       Expires

10.1.100.2       (10.2.2.9, 232.100.1.1)             [mdt 1:1 1]     00:02:35

Egress-PE#show mrib vrf one route 232.100.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.2.9,232.100.1.1) RPF nbr: 10.1.100.2 Flags: RPF

Up: 05:10:22

Incoming Interface List

Lmdtone Flags: A LMI, Up: 05:10:22

Outgoing Interface List

GigabitEthernet0/0/0/9 Flags: F NS LI, Up: 05:10:22

Situación hipotética 3.

Hay uno o más routers PE heredados como router PE receptor.

Hay uno o más routers PE como router Receiver-PE que ejecuta el perfil 13 (MDT predeterminado - Señalización de multidifusión de BGP BGP-AD MP2MP MP mLDP).

Hay un BGP AD involucrado y señalización BGP C-multicast.

Configuración del router Receiver-PE, que ejecuta el perfil 13:

vrf one

vpn id 1:1

address-family ipv4 unicast

import route-target

1:1

!

export route-target

1:1

!

!

router pim

vrf one

address-family ipv4

rpf topology route-policy rpf-for-one

mdt c-multicast-routing bgp

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

!

route-policy rpf-for-one

set core-tree mldp-default

end-policy

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

rate-per-route

interface all enable

accounting per-prefix

bgp auto-discovery mldp

!

mdt default mldp ipv4 10.1.100.7

!

!

!

router bgp 1

!

address-family vpnv4 unicast

!

!

address-family ipv4 mvpn

!

!

neighbor 10.1.100.7     <<< iBGP neighbor

remote-as 1

update-source Loopback0

!

address-family vpnv4 unicast

!

address-family ipv4 mvpn

!

!

vrf one

rd 1:1

address-family ipv4 unicast

redistribute connected

!

address-family ipv4 mvpn

!

!

mpls ldp

mldp

logging notifications

address-family ipv4

!

!

!

Configuración del router PE de entrada:

vrf one

vpn id 1:1

address-family ipv4 unicast

import route-target

1:1

!

export route-target

1:1

!

!

address-family ipv6 unicast

!

!

router pim

vrf one

address-family ipv4

mdt c-multicast-routing bgp

announce-pim-join-tlv

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

interface all enable

mdt default ipv4 232.1.1.1

mdt default mldp ipv4 10.1.100.7

mdt data 255

mdt data 232.1.2.0/24

!

!

!

router bgp 1

address-family vpnv4 unicast

!

address-family ipv4 mdt

!

address-family ipv4 mvpn

!

neighbor 10.1.100.7      <<< iBGP neighbor

remote-as 1

update-source Loopback0

address-family vpnv4 unicast

!

address-family ipv4 mdt

!

address-family ipv4 mvpn

!

!

vrf one

rd 1:2

address-family ipv4 unicast

redistribute connected

!

address-family ipv4 mvpn

!

mpls ldp

mldp

logging notifications

address-family ipv4

!

!

!

Sin el comando announce-pim-Join-tlv, el router PE de ingreso no envía los mensajes PIM Join TLV a través del MDT predeterminado, si se habilita el BGP AD. Sin este comando, el router PE de ingreso sólo envía una actualización de BGP IPv4 mvpn route-type 3. El router PE de salida Profile 13 recibe la actualización de BGP e instala el mensaje MDT de datos en su memoria caché. El router PE heredado no ejecuta BGP AD y, por lo tanto, no aprende el mensaje de unión de datos MDT a través de BGP.

El PE de ingreso debe estar reenviando a ambos tipos de MDT:

Ingress-PE#show mrib vrf one route 232.100.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(10.2.2.9,232.100.1.1) RPF nbr: 10.2.2.9 Flags: RPF MT

MT Slot: 0/1/CPU0

Up: 19:49:27

Incoming Interface List

GigabitEthernet0/1/0/0 Flags: A, Up: 19:49:27

Outgoing Interface List

mdtone Flags: F MI MT MA, Up: 19:49:27

Lmdtone Flags: F LMI MT MA, Up: 01:10:15

El PE de ingreso debe ver el PE heredado en el mdtone de la interfaz como un vecino PIM. Sin embargo, no es obligatorio tener el PE Profile 13 en la interfaz Lmdtone como vecino PIM, porque BGP ahora se utiliza como protocolo de señalización C-multicast.

"debug pim vrf one mdt data" en el PE de entrada:

pim[1140]: [13] In mdt timers process...

pim[1140]: [13] Processing MDT JOIN SEND timer for MDT null core mldp pointer in one

pim[1140]: [13] In join_send_update_timer: route->mt_head 50c53b44

pim[1140]: [13] Create new MDT tlv buffer for one for type 0x1

pim[1140]: [13] Buffer allocated for one mtu 1348 size 0

pim[1140]: [13] TLV type set to 0x1

pim[1140]: [13] TLV added for one mtu 1348 size 16

pim[1140]: [13] MDT cache upd: pe 0.0.0.0, (10.2.2.9,232.100.1.1), mdt_type 0x1, core (10.1.100.2,232.1.2.5), for vrf one [local, -], mt_lc 0x11, mdt_if 'mdtone', cache NULL

pim[1140]: [13] Looked up cache pe 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x1 in one (found) - No error

pim[1140]: [13] Cache get: Found entry for 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x1 in one

pim[1140]: [13] pim_mvrf_mdt_cache_update:946, mt_lc 0x11, copied mt_mdt_ifname 'mdtone'

pim[1140]: [13] Create new MDT tlv buffer for one for type 0x2

pim[1140]: [13] Buffer allocated for one mtu 1348 size 0

pim[1140]: [13] TLV type set to 0x2, o_type 0x2

pim[1140]: [13] TLV added for one mtu 1348 size 36

pim[1140]: [13] MDT cache upd: pe 0.0.0.0, (10.2.2.9,232.100.1.1), mdt_type 0x2, core src 10.1.100.2, id [mdt 1:1 1], for vrf one [local, -], mt_lc 0x11, mdt_if 'Lmdtone', cache NULL

pim[1140]: [13] Looked up cache pe 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x2 in one (found) - No error

pim[1140]: [13] Cache get: Found entry for 0.0.0.0(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

pim[1140]: [13] pim_mvrf_mdt_cache_update:946, mt_lc 0x11, copied mt_mdt_ifname 'Lmdtone'

pim[1140]: [13] Set next send time for core type (0x0/0x2) (v: 10.2.2.9,232.100.1.1) in one

pim[1140]: [13] 2. Flush MDT Join for one on Lmdtone(10.1.100.2) 6 (Cnt:1, Reached size 36 MTU 1348)

pim[1140]: [13] 2. Flush MDT Join for one (Lo0) 10.1.100.2

pim[1140]: [13] 2. Flush MDT Join for one on mdtone(10.1.100.2) 6 (Cnt:1, Reached size 16 MTU 1348)

pim[1140]: [13] 2. Flush MDT Join for one (Lo0) 10.1.100.2

pim[1140]: [13] MDT Grp lookup: Return match for grp 232.1.2.5 src 10.1.100.2 in local list (-)

El PE de entrada envía el TLV de unión PIM para el MDT de datos basado en PIM y el basado en mLDP.

"debug ip pim vrf one 232.100.1.1" en el PE heredado:

PIM(1): Receive MDT Packet (57957) from 10.1.100.2 (Tunnel3), length (ip: 44, udp: 24), ttl: 1

PIM(1): TLV type: 1 length: 16 MDT Packet length: 16

El PE heredado almacena en caché el TLV de unión PIM:

Legacy-PE#show ip pim vrf one mdt receive

Joined MDT-data [group/mdt number : source]  uptime/expires for VRF: one

[232.1.2.5 : 10.1.100.2]  00:03:36/00:02:24

El PE heredado se une al MDT de datos en el núcleo:

Legacy-PE#show ip mroute vrf one 232.100.1.1

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, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(10.2.2.9, 232.100.1.1), 18:53:53/00:02:50, flags: sTY

Incoming interface: Tunnel3, RPF nbr 10.1.100.2, MDT:[10.1.100.2,232.1.2.5]/00:02:02

Outgoing interface list:

GigabitEthernet1/1, Forward/Sparse, 18:53:53/00:02:50

El receptor-PE del perfil 13:

"debug pim vrf one mdt data" en Profile 13 Egress PE:

pim[1161]: [13] Received MDT Packet on Lmdtone (vrf:one) from 10.1.100.2, len 36

pim[1161]: [13] Processing type 2 tlv

pim[1161]: [13] Received MDT Join TLV from 10.1.100.2 for cust route 10.2.2.9,232.100.1.1 MDT number 1 len 36

pim[1161]: [13] Looked up cache pe 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2 in one (found) - No error

pim[1161]: [13] MDT cache upd: pe 10.1.100.2, (10.2.2.9,232.100.1.1), mdt_type 0x2, core src 10.1.100.2, id [mdt 1:1 1], for vrf one [remote, -], mt_lc 0xffffffff, mdt_if 'xxx', cache NULL

pim[1161]: [13] Looked up cache pe 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2 in one (found) - No error

pim[1161]: [13] Cache get: Found entry for 10.1.100.2(10.2.2.9,232.100.1.1) mdt_type 0x2 in one

pim[1161]: [13] MDT lookup: Return match for [mdt 1:1 1] src 10.1.100.2 in remote list (one)

pim[1161]: [13] Remote join: MDT [mdt 1:1 1] known in one. Refcount (1, 1)

RP/0/RP1/CPU0:Legacy-PE#show pim vrf one mdt cache

Core Source      Cust (Source, Group)                Core Data        Expires

10.1.100.2       (10.2.2.9, 232.100.1.1)             [mdt 1:1 1]      00:02:21

El Receptor PE del Perfil 13 recibe y almacena en memoria caché el TLV de Conexión PIM para el MDT basado en mLDP. El Receptor PE del Perfil 13 también se enteró del MDT de datos debido a la recepción del mensaje de actualización BGP para un tipo de ruta 3 desde el PE de ingreso. El TLV de unión PIM y el tipo de ruta del mensaje de actualización BGP son equivalentes y contienen la misma información con respecto al túnel del árbol de núcleo para el MDT de datos.

Ingress-PE#show bgp ipv4 mvpn vrf one

BGP router identifier 10.1.100.1, local AS number 1

BGP generic scan interval 60 secs

BGP table state: Active

Table ID: 0x0   RD version: 1367879340

BGP main routing table version 93

BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best

i - internal, r RIB-failure, S stale, N Nexthop-discard

Origin codes: i - IGP, e - EGP, ? - incomplete

Network            Next Hop            Metric LocPrf Weight Path

Route Distinguisher: 1:1 (default for vrf one)

*> [1][10.1.100.1]/40 0.0.0.0                                0 i

*>i[1][10.1.100.2]/40 10.1.100.2                    100      0 i

*>i[3][32][10.2.2.9][32][232.100.1.1][10.1.100.2]/120

10.1.100.2                    100      0 i

*> [7][1:2][1][32][10.2.2.9][32][232.100.1.1]/184

0.0.0.0                                0 i

Processed 4 prefixes, 4 paths

Egress-PE#show bgp ipv4 mvpn vrf one [3][32][10.2.2.9][32][232.100.1.1][10.1.100.2]/120

BGP routing table entry for [3][32][10.2.2.9][32][232.100.1.1][10.1.100.2]/120, Route Distinguisher: 1:1

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 92          92

Paths: (1 available, best #1, not advertised to EBGP peer)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.1.100.2 (metric 12) from 10.1.100.7 (10.1.100.2)

Origin IGP, localpref 100, valid, internal, best, group-best, import-candidate, imported

Received Path ID 0, Local Path ID 1, version 92

Community: no-export

Extended community: RT:1:1

Originator: 10.1.100.2, Cluster list: 10.1.100.7

PMSI: flags 0x00, type 2, label 0, ID 0x060001040a016402000e02000b0000010000000100000001

Source VRF: default, Source Route Distinguisher: 1:2

Esta ruta BGP es un tipo de ruta 3, para el tipo de túnel de protocolo 2, que es mLDP P2MP LSP (el MDT de datos construido en un P2MP mLSP LSP). No hay ninguna ruta BGP tipo 3 para ningún árbol PIM, ya que BGP AD no está habilitado para PIM.

También hay un tipo de ruta 7 porque la señalización de multidifusión C está activada entre el PE de salida del perfil 13 y el PE de entrada. La actualización BGP de tipo de ruta 7 se envía desde el PE de salida del perfil 13 al PE de entrada.

Situación hipotética 4.

Hay un modo PIM Sparse en el contexto VPN en este escenario.

Hay uno o más routers PE heredados como router Source-PE.

Hay uno o más routers PE como router Receiver-PE que ejecuta el perfil 13 (MDT predeterminado - Señalización de multidifusión de BGP BGP-AD MP2MP MP mLDP). Hay un BGP AD involucrado y señalización BGP C-multicast. Debido a que estos routers PE necesitarán poder recibir tráfico directamente desde el PE de origen (el router PE heredado), también deben ejecutar el perfil 0.

El RP-PE es un router PE que ejecuta el perfil 13 (MDT predeterminado - Señalización de multidifusión BGP-AD BGP MP2MP mLDP). Hay un BGP AD involucrado y señalización BGP C-multicast. Debido a que el router RP-PE tendrá que ser capaz de recibir tráfico directamente desde el PE de origen (el router PE heredado), también deben ejecutar el perfil 0.

El routing de multidifusión funcionó en el escenario 3, pero esto sólo podría funcionar para la multidifusión específica de origen (SSM). Si la señalización C es Modo disperso, entonces puede fallar el multicast. Esto puede depender de dónde se ubique el punto Rendez-Vous (RP). Si la señalización en la superposición es solamente (S, G), el ruteo multicast funcionará como en el escenario 3. Esto ocurre si el RP se encuentra en el sitio del Receptor. Si el RP está en el sitio de un Receptor, entonces el Receptor-PE no enviará una unión (*, G) en superposición, ya sea por PIM o BGP. Si el RP se encuentra sin embargo en el Source-PE u otro PE, entonces habrá señalización (*, G) y (S, G) en la superposición. El ruteo multicast puede fallar si esto se hace con la configuración como en el escenario 3.

Consulte la figura 2. Muestra una red con un Source-PE (Legacy-PE), un RP-PE (PE2) y un Receiver-PE (PE1).

Figura 2

Los routers PE de salida deben enviar uniones para (*,G). El protocolo que utilizarán está determinado por la configuración. El Egress-PE utilizará BGP, y el router Legacy-Source-PE utilizará PIM si también tiene un Receptor. Por lo tanto, el árbol compartido se indicará correctamente. Habrá un problema cuando el Origen comience a enviar: el árbol de origen no se señalizará.

problema

Una vez que el Origen comienza a enviar, el RP recibirá los paquetes de registro del PIM First Hop Router (FHR). Éste podría ser el router Legacy-Source-PE aquí. El RP-PE luego tendría que enviar un PIM (S, G) Join hacia Legacy-Source-PE, ya que Legacy-Source-PE no ejecuta BGP como protocolo de señalización superpuesta. Sin embargo, el RP-PE tiene BGP configurado como el protocolo de señalización de superposición. Por lo tanto, Legacy-Source-PE nunca recibirá un mensaje de unión PIM (S, G) del RP-PE y, por lo tanto, el árbol de origen del Origen al RP no se puede señalizar. La configuración se bloquea en la fase de registro. La lista de interfaces salientes (OIL) en Legacy-Source-PE estará vacía:

Legacy-PE#show ip mroute vrf one 225.1.1.1

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, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 225.1.1.1), 00:05:47/stopped, RP 10.2.100.9, flags: SPF

Incoming interface: Tunnel3, RPF nbr 10.1.100.2

Outgoing interface list: Null

(10.2.3.10, 225.1.1.1), 00:05:47/00:02:42, flags: PFT

Incoming interface: GigabitEthernet1/1, RPF nbr 10.2.3.10

Outgoing interface list: Null

Para corregir esto, necesita que el RP-PE envíe una Conexión PIM para (S, G) al Legacy-Source-PE, mientras que el RP-PE todavía tiene BGP habilitado como protocolo de señalización superpuesta para los routers no heredados. Si un Origen se conecta detrás de un router no heredado, entonces el RP-PE necesita enviar un mensaje de actualización BGP de tipo de ruta 7 hacia ese router no heredado.

El RP-PE puede utilizar tanto PIM como BGP como señalización superpuesta. La elección de uno u otro será determinada por una política de ruta. Debe tener el comando de migración bajo el PIM del router para el VRF. Para la red representada en la Figura 2, esta es la configuración necesaria en el RP-PE:

router pim

vrf one

address-family ipv4

rpf topology route-policy rpf-for-one

mdt c-multicast-routing bgp

migration route-policy PIM-to-BGP

announce-pim-join-tlv

!

interface GigabitEthernet0/1/0/0

enable

!

!

!

!

route-policy rpf-for-one

if next-hop in (10.1.100.3/32) then

set core-tree pim-default

else

set core-tree mldp-default

endif

end-policy

!

route-policy PIM-to-BGP

if next-hop in (10.1.100.3/32) then

set c-multicast-routing pim

else

set c-multicast-routing bgp

endif

end-policy

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

rate-per-route

interface all enable

accounting per-prefix

bgp auto-discovery mldp

!

mdt default ipv4 232.1.1.1

mdt default mldp ipv4 10.1.100.7

!

!

!

La política de ruta PIM-to-BGP especifica que si el router PE remoto es 10.1.100.3 (Legacy-Source-PE), utilice PIM como un protocolo de señalización superpuesta. De lo contrario (para el router PE no heredado), BGP se utiliza como protocolo de señalización superpuesta. Por lo tanto, el RP-PE ahora envía un PIM (S, G) Join hacia el Legacy-Source-PE en el MDT predeterminado basado en PIM. El Legacy-Source-PE ahora tiene la entrada (S, G):

Legacy-PE#show ip mroute vrf one 225.1.1.1

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, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 225.1.1.1), 00:11:56/stopped, RP 10.2.100.9, flags: SPF

Incoming interface: Tunnel3, RPF nbr 10.1.100.2

Outgoing interface list: Null

(10.2.3.10, 225.1.1.1), 00:11:56/00:03:22, flags: FT

Incoming interface: GigabitEthernet1/1, RPF nbr 10.2.3.10

Outgoing interface list:

Tunnel3, Forward/Sparse, 00:00:11/00:03:18

El Receptor puede recibir los paquetes multicast si el RP-PE U-vierte los paquetes: reenvía los paquetes multicast recibidos del MDT al árbol Lmdt.

Nota: Verifique si el router RP-PE tiene soporte para la función de respuesta PE en esa plataforma y software.

RP/0/3/CPU1:PE2#show mrib vrf one route 225.1.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(*,225.1.1.1) RPF nbr: 10.2.2.9 Flags: C RPF

Up: 00:53:59

Incoming Interface List

GigabitEthernet0/1/0/0 Flags: A, Up: 00:53:59

Outgoing Interface List

Lmdtone Flags: F LMI, Up: 00:53:59

(10.2.3.10,225.1.1.1) RPF nbr: 10.1.100.3 Flags: RPF

Up: 00:03:00

Incoming Interface List

mdtone Flags: A MI, Up: 00:03:00

Outgoing Interface List

Lmdtone Flags: F NS LMI, Up: 00:03:00

No importa si el router de último salto (LHR) tiene configurado o no el switchover SPT, el tráfico de multidifusión sigue reenviándose sobre el árbol compartido, hacia el RP-PE. Consulte la figura 3. para ver cómo se reenvía el tráfico multicast.

Figura 3.

El Egress-PE no tiene entrada (S, G):

RP/0/RP1/CPU0:PE1#show mrib vrf one route 225.1.1.1

IP Multicast Routing Information Bas

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,   IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(*,225.1.1.1) RPF nbr: 10.1.100.2 Flags: C RPF

Up: 04:35:36

Incoming Interface List

Lmdtone Flags: A LMI, Up: 03:00:24

Outgoing Interface List

GigabitEthernet0/0/0/9 Flags: F NS, Up: 04:35:36

Si Egress-PE es el LHR, no tendrá una entrada (S, G). La razón por la que Egress-PE no puede conmutar a la entrada (S, G) es que no recibió una ruta activa de origen BGP de un router PE. El tráfico de multidifusión se reenvía como se muestra en la figura 3.

Sin embargo, es posible que Egress-PE no sea el LHR, sino un router CE en el sitio Egress-PE- es el LHR. Si ese router CE conmuta al árbol de origen, el Egress-PE recibirá un PIM (S, G) Join e install la entrada (S, G).

RP/0/RP1/CPU0:PE1#show mrib vrf one route 225.1.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(*,225.1.1.1) RPF nbr: 10.1.100.2 Flags: C RPF

Up: 00:04:51

Incoming Interface List

Lmdtone Flags: A LMI, Up: 00:04:51

Outgoing Interface List

GigabitEthernet0/0/0/9 Flags: F NS, Up: 00:04:51

(10.2.3.10,225.1.1.1) RPF nbr: 10.1.100.3 Flags: RPF

Up: 00:00:27

Incoming Interface List

Lmdtone Flags: A LMI, Up: 00:00:27

Outgoing Interface List

GigabitEthernet0/0/0/9 Flags: F NS, Up: 00:00:27

Pero, Egress-PE ahora enviará RPF al Origen y encontrará el router Legacy-Source-PE como vecino RPF:

RP/0/RP1/CPU0:PE1#show pim vrf one rpf 10.2.3.10

Table: IPv4-Unicast-default

* 10.2.3.10/32 [200/0]

via Lmdtone with rpf neighbor 10.1.100.3

Connector: 1:3:10.1.100.3, Nexthop: 10.1.100.3

Puesto que no hay MDT entre Egress-PE y Legacy-Source-PE, Egress-PE no puede enviar una Unión al Legacy-Source-PE. Recuerde que Egress-PE sólo construye árboles mLDP y hace señalización de cliente BGP. Recuerde que Legacy-Source-PE sólo genera árboles basados en PIM y sólo hace señalización de cliente PIM.

Sin embargo, dado que el Egress-PE tiene información RPF que apunta a la interfaz entrante Lmdt y el tráfico multicast llega todavía en ese MDT desde el RP-PE, el tráfico multicast se reenviará hacia el receptor y no fallará en RPF. La razón es que el RPF no realiza una verificación RPF estricta para verificar si el tráfico multicast realmente llega del vecino RPF 10.1.100.3, el router Legacy-PE. Tenga en cuenta que no hay adyacencia PIM para 10.1.100.3 en PE1 en Lmdt, porque Legacy-PE no puede tener Lmdt porque sólo ejecuta PIM como protocolo de árbol de núcleo (Perfil 0):

RP/0/RP1/CPU0:PE1#show pim vrf one neighbor

PIM neighbors in VRF one

Flag: B - Bidir capable, P - Proxy capable, DR - Designated Router,

E - ECMP Redirect capable

* indicates the neighbor created for this router

Neighbor Address             Interface             Uptime   Expires DR pri   Flags

10.1.100.1*                  Lmdtone               01:32:46 00:01:32 100 (DR) P

10.1.100.2                   Lmdtone               01:30:46 00:01:16 1     P

10.1.100.4                   Lmdtone               01:30:38 00:01:24 1     P

10.1.100.1*                  mdtone                 01:32:46 00:01:34 100 (DR) P

10.1.100.2                   mdtone                 01:32:45 00:01:29 1     P

10.1.100.3                   mdtone                 01:32:17 00:01:29 1     P

10.1.100.4                   mdtone                 01:32:43 00:01:20 1     P

10.2.1.1*                    GigabitEthernet0/0/0/9 01:32:46 00:01:18 100     B P E

10.2.1.8                     GigabitEthernet0/0/0/9 01:32:39 00:01:16 100 (DR)

La razón por la que PE1 elige Lmdt como la interfaz entrante es que ésta es la información recibida del comando de topología RPF en PE1:

route-policy rpf-for-one

set core-tree mldp-default

end-policy

!

Si el RPF sigue estando bien en PE1, el tráfico multicast puede llegar al Receptor detrás de PE1. Pero, el tráfico no toma el trayecto más corto Legacy-PE a PE1 en el núcleo.

La solución

Para corregir esto, el Egress-PE (PE1) debe configurarse para indicar a MDT basado en PIM y BGP como señalización superpuesta también. Esta configuración es necesaria en Egress-PE en ese caso:

router pim

vrf one

address-family ipv4

rpf topology route-policy rpf-for-one

mdt c-multicast-routing bgp

migration route-policy PIM-to-BGP

announce-pim-join-tlv

!

rp-address 10.2.100.9 override

!

interface GigabitEthernet0/0/0/9

enable

!

!

!

!

route-policy rpf-for-one

if next-hop in (10.1.100.3/32) then

set core-tree pim-default

else

set core-tree mldp-default

endif

end-policy

!

route-policy PIM-to-BGP

if next-hop in (10.1.100.3/32) then

set c-multicast-routing pim

else

set c-multicast-routing bgp

endif

end-policy

!

multicast-routing

vrf one

address-family ipv4

mdt source Loopback0

rate-per-route

interface all enable

accounting per-prefix

bgp auto-discovery mldp

!

mdt default ipv4 232.1.1.1

mdt default mldp ipv4 10.1.100.7

!

!

!

Consulte la figura 4. Ahora hay un MDT basado en PIM entre el PE heredado y el PE de egreso.

Figura 4

El mensaje Egress-PE envía mensajes PIM Join a través del MDT basado en PIM hacia el Legacy-Source-PE para (S, G) después del switchover SPT. La interfaz entrante en Egress-PE ahora es mdtone. El RP-PE ya no es un router de respuesta para el tráfico multicast.

RP/0/RP1/CPU0:PE1#show mrib vrf one route 225.1.1.1

IP Multicast Routing Information Base

Entry flags: L - Domain-Local Source, E - External Source to the Domain,

C - Directly-Connected Check, S - Signal, IA - Inherit Accept,

IF - Inherit From, D - Drop, ME - MDT Encap, EID - Encap ID,

MD - MDT Decap, MT - MDT Threshold Crossed, MH - MDT interface handle

CD - Conditional Decap, MPLS - MPLS Decap, MF - MPLS Encap, EX - Extranet

MoFE - MoFRR Enabled, MoFS - MoFRR State, MoFP - MoFRR Primary

MoFB - MoFRR Backup, RPFID - RPF ID Set, X - VXLAN

Interface flags: F - Forward, A - Accept, IC - Internal Copy,

NS - Negate Signal, DP - Don't Preserve, SP - Signal Present,

II - Internal Interest, ID - Internal Disinterest, LI - Local Interest,

LD - Local Disinterest, DI - Decapsulation Interface

EI - Encapsulation Interface, MI - MDT Interface, LVIF - MPLS Encap,

EX - Extranet, A2 - Secondary Accept, MT - MDT Threshold Crossed,

MA - Data MDT Assigned, LMI - mLDP MDT Interface, TMI - P2MP-TE MDT Interface

IRMI - IR MDT Interface

(*,225.1.1.1) RPF nbr: 10.1.100.2 Flags: C RPF

Up: 00:09:59

Incoming Interface List

Lmdtone Flags: A LMI, Up: 00:09:59

Outgoing Interface List

GigabitEthernet0/0/0/9 Flags: F NS, Up: 00:09:59

(10.2.3.10,225.1.1.1) RPF nbr: 10.1.100.3 Flags: RPF

Up: 00:14:29

Incoming Interface List

mdtone Flags: A MI, Up: 00:14:29

Outgoing Interface List

GigabitEthernet0/0/0/9 Flags: F NS, Up: 00:14:29

Y PE1 tiene esta información de PIM RPF para el Origen:

RP/0/RP1/CPU0:PE1#show pim vrf one rpf 10.2.3.10

Table: IPv4-Unicast-default

* 10.2.3.10/32 [200/0]

via mdtone with rpf neighbor 10.1.100.3

RT:1:1 ,Connector: 1:3:10.1.100.3, Nexthop: 10.1.100.3

Esto significa que el tráfico ahora fluye directamente de Legacy-Source-PE a Egress-PE en la red principal a través del MDT basado en PIM. Consulte la Figura 5.

Figura 5.

Conclusión

Todos los routers PE no heredados, que son routers Receiver-PE o RP-PE, deben tener la configuración en su lugar para migrar los protocolos de árbol de núcleo y los protocolos de señalización C.

Alternativamente, una solución alternativa es asegurarse de que el intercambio SPT no ocurra, pero entonces el ruteo del tráfico multicast podría no estar sobre la trayectoria más corta en el núcleo de la red.