Contents

Introduction

Solução

Configuração

Configuração do RR

Configuração do PE de origem

Configuração do TA PE

Configuração do PE de saída

Verificação

Perfil 6 PE - PE3

TA PE

Perfil 0 PE - PE2

RR

Estratégia de saída

Conclusão

Introduction

Este documento descreve uma estratégia de migração do perfil 0 do mVPN (Multicast Virtual Private Network) para um perfil baseado em mLDP (Multipoint Label Distribution Protocol) no Cisco IOS®-XR usando um roteador giratório.

Uma rede está executando o perfil mVPN 0, que é o perfil com PIM (Protocol Independent Multicast) na rede central e PIM na sobreposição. A rede migrará para um perfil usando mLDP no núcleo. Aqui, a migração é para o perfil 6: Sinalização em banda com mLDP e usando VRF (Virtual Routing/Forwarding) nos roteadores PE (Provider Edge).

A solução de migração funciona para o tráfego SSM (Source Specific Multicast) e para o ASM (Any Source Multicast).

Veja a imagem 1.

Imagem 1

A Imagem 1 mostra o perfil de rede em execução 0. As fontes estão atrás de PE1. A migração é para o perfil 6, mas o problema é que o roteador de entrada PE (Provider Edge), PE1, é um roteador herdado que não pode migrar imediatamente para o perfil 6. A solução é continuar usando o perfil 0 em PE1 e usar um roteador TurnAround (TA) PE na rede, que cuida da comutação do tráfego multicast do perfil 0 para 6. A solução que usa um roteador de ciclo é uma solução temporária até que o PE de origem também possa ser migrado para o perfil 6. As setas na topologia mostram o fluxo de tráfego multicast.

Solução

A solução precisa do seguinte:

- Um roteador giratório capaz de executar o perfil 0 e o perfil 6.

- O roteamento SAFI (Identificador da família de endereços subsequente) 2 deve ser ativado nos roteadores não herdados. Essa é a chave para essa solução. O RPF (Reverse Path Forwarding) para a origem (ou RP (Rendez-Vous Point) para ASM) precisa estar em direção ao roteador TA PE. Para isso, deve haver rotas estáticas para origens e RP (se o ASM for usado) no VRF no SAFI 2 no roteador de ciclo. Essas rotas estáticas são anunciadas no roteador TA PE pelo BGP no SAFI 129 (multicast vpnv4). As rotas estáticas estão no SAFI 2 como não substituir as rotas no SAFI 1 (unicast) e não substituir a decisão de encaminhamento unicast no roteador PE TA e nos roteadores PE que recebem as rotas SAFI 129.

- O SAFI 129 no BGP é usado nos roteadores PE e RR (Route Reflector) do perfil 6. O SAFI 2 no BGP é usado nos roteadores PE do perfil 6. Esse SAFI 2 transporta as rotas de multicast no BGP usadas para RPF multicast, substituindo as rotas de unicast. SAFI 2 são as rotas multicast no VRF, e as rotas SAFI 129 são as rotas multicast para vpnv4.

O roteador PE de ciclo é responsável por atrair o tráfego multicast no perfil 0 e enviá-lo de volta ao núcleo pelo perfil 6. Isso o torna o roteador de ciclo. A reviravolta não precisa de um receptor conectado localmente, mas pode ter um.

Configuração

Configuração do RR

router bgp 65001

bgp router-id 10.0.0.5

address-family ipv4 unicast

!

address-family vpnv4 unicast

!

address-family ipv4 mdt   ## for profile 0

!

address-family ipv4 mvpn

!

address-family vpnv4 multicast   ## SAFI 129

!

neighbor 10.0.0.1       ## profile 0 peer

remote-as 65001

update-source Loopback0

address-family vpnv4 unicast

route-reflector-client

!

address-family ipv4 mdt

route-reflector-client

!

!

neighbor 10.0.0.2    ## profile 0 peer

remote-as 65001

update-source Loopback0

address-family vpnv4 unicast

route-reflector-client

!

address-family ipv4 mdt

route-reflector-client

!

!

neighbor 10.0.0.3    ## TA peer

remote-as 65001

update-source Loopback0

address-family vpnv4 unicast

route-reflector-client

!

address-family ipv4 mvpn

route-reflector-client

!

address-family vpnv4 multicast   ## SAFI 129

route-reflector-client

!

!

neighbor 10.0.0.4   ## profile 6 peer

remote-as 65001

update-source Loopback0

address-family vpnv4 unicast

route-reflector-client

!

address-family ipv4 mdt

route-reflector-client

!

address-family ipv4 mvpn

route-reflector-client

!

address-family vpnv4 multicast

route-reflector-client

O RR está refletindo rotas para o perfil 0 (AF ipv4 mdt). MDT significa Multicast Distribution Tree (Árvore de distribuição multicast).

O RR precisa do SAFI 129. Esta é a família de endereços multicast vpnv4. As sessões de BGP para este AF entre o RR e cada roteador que executa o perfil 6 precisam estar lá.

Configuração do PE de origem

Note: A configuração do PE de origem deve ser adicionada a qualquer outro perfil 0 PE que faça parte da migração.

vrf one

address-family ipv4 unicast

import route-target

65001:1

!

export route-target

65001:1

router bgp 65001

bgp router-id 10.0.0.1

address-family vpnv4 unicast

!

address-family ipv4 mdt

!

neighbor 10.0.0.5

remote-as 65001

update-source Loopback0

address-family vpnv4 unicast

!

address-family ipv4 mdt

!

!

vrf one

rd 1:2

address-family ipv4 unicast

redistribute onnected

multicast-routing

address-family ipv4

interface Loopback0

enable

!

interface GigabitEthernet0/0/0/0

enable

!

!

vrf one

address-family ipv4

interface GigabitEthernet0/0/0/1

enable

!

mdt source Loopback0

rate-per-route

mdt default ipv4 232.1.1.1   ## profile 0 Default MDT

O roteador PE de origem tem a configuração somente para o perfil 0. Não há SAFI 129 ou SAFI 2 configurado. Não há configuração do perfil 6.

Configuração do TA PE

vrf one

address-family ipv4 unicast

import route-target

65001:1

!

export route-target

65001:1

!

!

address-family ipv4 multicast   ## SAFI 2

import route-target

65001:1

!

export route-target

65001:1

router bgp 65001

bgp router-id 10.0.0.4

address-family ipv4 unicast

!

address-family ipv4 multicast   ## this is needed to have the static route in SAFI 2

!

address-family vpnv4 unicast

!

address-family ipv4 mdt   ## for profile 0

!

address-family ipv4 mvpn

!

address-family vpnv4 multicast   ## SAFI 129

!

neighbor 10.0.0.5   ## RR peer

remote-as 65001

update-source Loopback0

address-family vpnv4 unicast

!

address-family ipv4 mdt

!

address-family ipv4 mvpn

!

address-family vpnv4 multicast   ## SAFI 129

!

!

vrf one

rd 1:4

address-family ipv4 unicast

redistribute connected

redistribute static

!

address-family ipv4 multicast   ## SAFI 2

redistribute connected

redistribute static   ## redistribute SAFI 2 static routes

!

!

router static

vrf one

address-family ipv4 multicast

10.1.6.0/24 vrf default 10.0.0.1   ## SAFI 2 static route

route-policy rpf-PE-TA

set core-tree pim-default

end-polic

multicast-routing

address-family ipv4

interface Loopback0

enable

!

interface GigabitEthernet0/0/0/0

enable

!

!

vrf one

address-family ipv4

mdt source Loopback0

rate-per-route

mdt default ipv4 232.1.1.1    ## profile 0

mdt mldp in-band-signaling ipv4    ## profile 6

!

!

!

router pim

vrf one

address-family ipv4

rpf topology route-policy rpf-PE-TA

O assistente precisa do SAFI 129. Esse é o multicast da família de endereços vpnv4 para o RR.

O SAFI 2 é necessário sob o VRF e o BGP.

A rota estática no VRF em direção à origem (ou RP para ASM) é necessária, apontando para o roteador PE de entrada. Essa rota SAFI 2 estática deve ser redistribuída, como uma rota SAFI 129 no BGP. Essa rota SAFI 129 é recebida pelo perfil 6 rotas PE no BGP como uma rota SAFI 129 e instalada como uma rota SAFI 2 no VRF.

A configuração dos perfis 0 e 6 é necessária. O comando de topologia RPF é configurado para o perfil 0, pois é aqui que a origem (ou RP) está presente.

Note: O roteador de ciclo precisa ter uma (sub)interface física (não uma interface de loopback) habilitada para o roteamento multicast no VRF. Se esse não for o caso, as rotas multicast não serão instaladas nas placas de linha e o tráfego multicast não será revertido.

Configuração do PE de saída

vrf one

address-family ipv4 unicast

import route-target

65001:1

export route-target

65001:1

!

address-family ipv4 multicast   ## SAFI 2

import route-target

65001:1

!

export route-target

65001:1

router bgp 65001

bgp router-id 10.0.0.3

address-family ipv4 unicast

!

address-family vpnv4 unicast

!

address-family ipv4 mvpn

!

address-family vpnv4 multicast   ## SAFI 129

!

neighbor 10.0.0.5    ## RR peer

remote-as 65001

update-source Loopback0

address-family vpnv4 unicast

!

address-family ipv4 mvpn

!

address-family vpnv4 multicast   ## SAFI 129

!

!

vrf one

rd 1:3

address-family ipv4 unicast

redistribute connected

!

address-family ipv4 multicast   ## SAFI 2

redistribute connected

redisribute static

route-policy in-band-mldp

set core-tree mldp-inband   ## profile 6

end-polic

multicast-routing

address-family ipv4

interface Loopback0

enable

!

!

vrf one

address-family ipv4

interface GigabitEthernet0/0/0/1

enable

!

mdt source Loopback0

rate-per-route

mdt mldp in-band-signaling ipv4   ## profile 6

!

!

!

router pim

address-family ipv4

interface Loopback0

enable

!

!

vrf one

address-family ipv4

rpf topology route-policy in-band-mldp   ## profile 6

O roteador PE de saída tem a configuração para o perfil 6. Além disso: para que o roteador PE de saída tenha um RPF bem-sucedido para o roteador TA PE para a origem (ou RP para ASM), ele precisa da configuração para SAFI 2 e SAFI 129.

Verificação

Perfil 6 PE - PE3

RP/0/RP0/CPU0:PE3#show bgp vpnv4 multicast rd 1:3 10.1.6.0/24

BGP routing table entry for 10.1.6.0/24, Route Distinguisher: 1:3

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                136         136

Last Modified: Jul  7 12:02:27.278 for 00:49:22

Paths: (1 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.0.0.4 (metric 30) from 10.0.0.5 (10.0.0.4)

Origin incomplete, metric 0, localpref 100, valid, internal, best, group-best, import-candidate, imported

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

Extended community: RT:65001:1

Originator: 10.0.0.4, Cluster list: 10.0.0.5

Connector: type: 1, Value:1:4:10.0.0.4

Source AFI: VPNv4 Multicast, Source VRF: default, Source Route Distinguisher: 1:4

O próximo salto é 10.0.0.4, que é o roteador TA PE.

RP/0/RP0/CPU0:PE3#show route vrf one ipv4 multicast 10.1.6.0/24

Routing entry for 10.1.6.0/24

Known via "bgp 65001", distance 200, metric 0, type internal

Installed Jul  7 12:02:27.236 for 00:50:44

Routing Descriptor Blocks

10.0.0.4, from 10.0.0.5

Nexthop in Vrf: "default", Table: "default", IPv4 Unicast, Table Id: 0xe0000000

Route metric is 0

No advertising protos.

RP/0/RP0/CPU0:PE3#show pim vrf one rpf 10.1.6.6

Table: IPv4-Multicast-default

* 10.1.6.6/32 [200/0]

via Imdtone with rpf neighbor 10.0.0.4

Connector: 1:4:10.0.0.4, Nexthop: 10.0.0.4

O RPF está em direção ao roteador TA PE.

RP/0/RP0/CPU0:PE3#show mrib vrf one route 232.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, 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, TRMI - TREE SID MDT Interface, MH - Multihome Interface

(10.1.6.6,232.1.1.1) RPF nbr: 10.0.0.4 Flags: RPF

Up: 09:29:38

Incoming Interface List

Imdtone Flags: A LMI, Up: 00:47:04

Outgoing Interface List

GigabitEthernet0/0/0/1 Flags: F NS, Up: 09:29:38

A interface de entrada é o perfil 6.

TA PE

RP/0/RP0/CPU0:TA-PE#show bgp vpnv4 multicast rd 1:4 10.1.6.0/24

BGP routing table entry for 10.1.6.0/24, Route Distinguisher: 1:4

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 80          80

Last Modified: Jul  7 12:02:27.317 for 01:04:42

Paths: (1 available, best #1)

Advertised to peers (in unique update groups):

10.0.0.5

Path #1: Received by speaker 0

Advertised to peers (in unique update groups):

10.0.0.5

Local

10.0.0.1 (metric 30) from 0.0.0.0 (10.0.0.4)

Origin incomplete, metric 0, localpref 100, weight 32768, valid, redistributed, best, group-best, import-candidate

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

Extended community: RT:65001:1

Essa rota é local, mas o próximo salto é o PE de origem (10.0.0.1). A rota é anunciada para o RR (10.0.0.5).

RP/0/RP0/CPU0:TA-PE#show route vrf one ipv4 multicast 10.1.6.0/24

Routing entry for 10.1.6.0/24

Known via "static", distance 1, metric 0

Installed Jul  7 12:02:27.234 for 01:07:01

Routing Descriptor Blocks

10.0.0.1

Nexthop in Vrf: "default", Table: "default", IPv4 Multicast, Table Id: 0xe0100000

Route metric is 0, Wt is 1

No advertising protos.

RP/0/RP0/CPU0:PE-TA#show pim vrf one rpf 10.1.6.6

Table: IPv4-Multicast-default

* 10.1.6.6/32 [1/0]

via mdtone with rpf neighbor 10.0.0.1

O RPF é direcionado ao roteador de origem usando o perfil 0.

RP/0/RP0/CPU0:TA-PE#show mrib vrf one route 232.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, 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, TRMI - TREE SID MDT Interface, MH - Multihome Interface

(10.1.6.6,232.1.1.1) RPF nbr: 10.0.0.1 Flags: RPF

Up: 01:13:28

Incoming Interface List

mdtone Flags: A MI, Up: 01:13:28

Outgoing Interface List

Imdtone Flags: F LMI, Up: 01:13:28

A interface de entrada é MDT do perfil 0 e a interface de saída é MDT do perfil 6. Esta é a virada.

RP/0/RP0/CPU0:TA-PE#show mfib vrf one route 232.1.1.1 detail

IP Multicast Forwarding Information Base

Entry flags: C - Directly-Connected Check, S - Signal, D - Drop,

IA - Inherit Accept, IF - Inherit From, EID - Encap ID,

ME - MDT Encap, MD - MDT Decap, MT - MDT Threshold Crossed,

MH - MDT interface handle, CD - Conditional Decap,

DT - MDT Decap True, EX - Extranet, RPFID - RPF ID Set,

MoFE - MoFRR Enabled, MoFS - MoFRR State, X - VXLAN

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

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

EG - Egress, EI - Encapsulation Interface, MI - MDT Interface,

EX - Extranet, A2 - Secondary Accept

Forwarding/Replication Counts: Packets in/Packets out/Bytes out

Failure Counts: RPF / TTL / Empty Olist / Encap RL / Other

(10.1.6.6,232.1.1.1),  Flags:  EID RPFID

Up: 01:15:01

Last Used: never

SW Forwarding Counts: 0/0/0

SW Replication Counts: 0/0/0

SW Failure Counts: 0/0/0/0/0

Route ver: 0xd672

MVPN Info :-

Associated Table ID : 0xe0000000

MDT Handle: 0x0, MDT Probe:N [N], Rate:Y, Acc:N

MDT SW Ingress Encap V4/V6, Egress decap: 0 / 0, 0

Encap ID: 262146, RPF ID: 3

Local Receiver: False, Turnaround: True

mdtone Flags:  A MI, Up:01:15:01

Imdtone Flags:  F LMI, Up:01:15:01

A interface de entrada é MDT do perfil 0 e a interface de saída é MDT do perfil 6. Esta é a virada.

Perfil 0 PE - PE2

RP/0/RP0/CPU0:PE2#show pim vrf one rpf 10.1.6.6

Table: IPv4-Unicast-default

* 10.1.6.6/32 [200/0]

via mdtone with rpf neighbor 10.0.0.1

Connector: 1:1:10.0.0.1, Nexthop: 10.0.0.1

O RPF está em direção ao perfil 0 do roteador PE de entrada.

RP/0/RP0/CPU0:PE2#show mrib vrf one route 232.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, 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, TRMI - TREE SID MDT Interface, MH - Multihome Interface

(10.1.6.6,232.1.1.1) RPF nbr: 10.0.0.1 Flags: RPF

Up: 1d22h

Incoming Interface List

mdtone Flags: A MI, Up: 02:49:35

Outgoing Interface List

GigabitEthernet0/0/0/1 Flags: F NS, Up: 1d22h

A interface de entrada é o perfil 0.

RR

RP/0/RP0/CPU0:P#show bgp vpnv4 multicast rd 1:4 10.1.6.0/24

BGP routing table entry for 10.1.6.0/24, Route Distinguisher: 1:4

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                 84          84

Last Modified: Jul  7 12:02:27.979 for 00:54:33

Paths: (1 available, best #1)

Advertised to update-groups (with more than one peer):

0.2

Path #1: Received by speaker 0

Advertised to update-groups (with more than one peer):

0.2

Local, (Received from a RR-client)

10.0.0.4 (metric 20) from 10.0.0.4 (10.0.0.4)

Origin incomplete, metric 0, localpref 100, valid, internal, best, group-best, import-candidate, not-in-vrf

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

Extended community: RT:65001:1

Connector: type: 1, Value:1:4:10.0.0.4

A rota em direção à origem é anunciada para o perfil 6 dos roteadores PE e é recebida do roteador TA (10.0.0.4).

Estratégia de saída

A solução de migração usando um roteador de ciclo é uma solução temporária. A migração deve ser concluída com a migração de cada roteador PE para o perfil 6. Isso pode ser feito por meio das seguintes etapas:

- Adicionar um novo roteador PE de origem

- Adicione uma política de rota em roteadores PE a RPF para o roteador PE de origem herdado (Perfil 0), para o roteador PE TA (perfil 6) ou para o novo roteador PE de origem (perfil 6)

- Especificar uma origem e/ou um grupo na política de rotas

- Mover a origem multicast para o novo roteador PE de origem

- Remova o roteador PE de origem antiga assim que todos os grupos multicast forem migrados para o novo roteador PE de origem

Conclusão

Usar um roteador de ciclo para mVPN pode ser uma maneira fácil de facilitar a migração do perfil 0 para um novo perfil mVPN como uma solução temporária enquanto espera por um roteador PE de origem mais recente, capaz de executar o novo perfil mVPN.