O conjunto de documentação deste produto faz o possível para usar uma linguagem imparcial. Para os fins deste conjunto de documentação, a imparcialidade é definida como uma linguagem que não implica em discriminação baseada em idade, deficiência, gênero, identidade racial, identidade étnica, orientação sexual, status socioeconômico e interseccionalidade. Pode haver exceções na documentação devido à linguagem codificada nas interfaces de usuário do software do produto, linguagem usada com base na documentação de RFP ou linguagem usada por um produto de terceiros referenciado. Saiba mais sobre como a Cisco está usando a linguagem inclusiva.
A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este documento descreve o comportamento de Make-Before-Break (MBB) no Cisco IOS® XR.
Não existem requisitos específicos para este documento.
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
O Make-Before-Break (MBB) tem uma finalidade: configurar uma nova árvore mLDP (Multipoint Label Distribution Protocol) antes de destruir a árvore antiga e alternar o tráfego da árvore antiga para a nova sem perder o tráfego de multicast. Isso pode ser usado em dois cenários:
Se o roteador souber que o antigo LSP (Label Switched Path, Caminho Comutado de Rótulo) foi interrompido, ele não deverá esperar para começar a usar o novo LSP. Esperar não faz sentido aqui, pois não há mais tráfego chegando à árvore antiga. Se a árvore antiga ainda estiver funcionando, o roteador não deverá derrubar a árvore antiga até que a nova árvore esteja totalmente configurada.
O MBB é orientado por um mecanismo de consulta e confirmação, conforme descrito no RFC 6388. Este é o RFC base do mLDP. Esse mecanismo de consulta e confirmação sinaliza quando a nova árvore está pronta para encaminhar tráfego multicast. Dessa forma, não deve haver nenhuma perda de pacotes. Se o roteador souber que o LSP antigo está quebrado, ele não deverá esperar para começar a usar o novo LSP. Esperar não faz sentido aqui, pois não há mais tráfego chegando à árvore antiga. Se a árvore antiga ainda estiver funcionando, o roteador não deverá derrubar a árvore antiga até que a nova árvore esteja totalmente configurada.
Os casos em que o MBB pode ajudar são:
Observe que esses dois representam bons eventos. Um exemplo de um evento ruim seria um link diretamente conectado desativado em um roteador no caminho de upstream. A MBB não pode ajudar neste caso. O IP FRR (Fast ReRoute) é necessário neste caso.
Quando ocorre MBB, há temporariamente mais de um vizinho upstream e/ou mais de um vizinho downstream. No RFC 6388, é especificado que pode haver vários elementos de aceitação. Isso significa que pode haver vários vizinhos de upstream e valores de rótulo de upstream por árvore. Um "elemento de aceitação" significa que o vizinho mLDP de upstream é um candidato para aceitar tráfego no. Um elemento de aceitação é o elemento ativo. O elemento ativo é aquele para o qual o rótulo MPLS é instalado no plano de encaminhamento. O outro elemento de aceitação é o elemento inativo. Este elemento é aquele para o qual a etiqueta MPLS ainda não está instalada no plano de encaminhamento. Esse elemento inativo é o da parte recém-sinalizada da árvore com o mecanismo Consulta/Confirmações e deve ter vida curta, antes de passar a ser o elemento de aceitação ativo. Pode haver apenas dois elementos de aceitação por árvore: um é o ativo, o outro é o inativo. Assim que a sinalização Query/Ack terminar ou um atraso de tempo fixo for atingido, os vizinhos antigos serão removidos da árvore.
Em vez do mecanismo Query/Ack, a outra opção de implementação poderia ser apenas atrasar o switchover para o novo LSP por um atraso fixo configurável.
É importante observar que o mLDP compartilha o espaço de rótulo atribuído a downstream que o unicast usa e, portanto, para o plano de encaminhamento MPLS, não há, em essência, nenhuma diferença entre pacotes multicast ou pacotes unicast. Como o plano de encaminhamento é compartilhado com unicast, certos recursos unicast são herdados para multicast, como o IP FRR.
Os procedimentos MBB aplicam-se a árvores P2MP (ponto a multiponto) e MP2MP (multiponto a multiponto).
O MBB é opcional (também é opcional no RFC), portanto deve ser configurado para que seja ativado. Quando configurado, pode haver um status MBB anexado à mensagem de mapeamento de rótulo enviada upstream e também pode ser anexado a uma mensagem de notificação LDP enviada por um roteador upstream para o roteador downstream. Um roteador pode anexar um Status MBB em um TLV de Status MP LDP.
O status de MBB é um tipo do elemento de valor de status de MP do LDP:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MBB Type = 1 | Length = 1 | Status Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O Código de Status é 1 para uma solicitação MBB e 2 para um MBB ack.
O LDP MP Status TLV é codificado da seguinte maneira:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|0| LDP MP Status Type(0x096F)| Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value |
~ ~
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O campo Valor contém um ou mais elementos de Valor de Status MP do LDP.
O elemento de valor de status MP do LDP que está incluído no valor TLV de status MP do LDP tem a próxima codificação:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
~ ~
| |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O LDP MP Status TLV pode aparecer em uma mensagem Label Mapping ou em uma mensagem LDP Notification.
Em uma mensagem de notificação LDP:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Notification (0x0001) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LDP MP Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional LDP MP FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional Label TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Em uma Mensagem de Mapeamento de Rótulo:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Label Mapping (0x0400) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional LDP MP Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Additional Optional Parameters |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
A anterior descreve o comportamento dinâmico do MBB. Outra opção é ter um comportamento estático em que o switchover para a nova árvore é determinado apenas por um atraso. Nesse caso, o switchover ocorre uma certa quantidade de (milissegundos) segundos depois que a nova árvore está pronta.
A Imagem 1 representa uma captura no Wireshark da mensagem mLDP Label Mapping. Há um LDP MP Status TLV anexado.
Imagem 1
01000102 decodifica para 1 para MBB Tipo 1, 0001 para Comprimento 1 e 02 para MBB Ack.
Observe que o mecanismo MBB se aplica ao FEC mLDP P2MP (Forwarding Equivalence Class) e aos FECs upstream ou downstream de MP2MP.
Um roteador capaz de executar MBB anuncia isso em um anúncio de capacidade de MBB na sessão LDP para seus vizinhos.
RP/0/RSP1/CPU0:R2#show mpls mldp neighbors
MLDP peer ID : 10.79.196.14:0, uptime 22:32:06 Up,
Capabilities : Typed Wildcard FEC, P2MP, MP2MP, MBB
Target Adj : No
Upstream count : 0
Branch count : 0
Label map timer : never
Policy filter in :
Path count : 1
Path(s) : 10.159.248.201 Bundle-Ether120 No LDP
Adj list : 10.254.3.36 Bundle-Ether10362
Peer addr list : 10.79.196.14
: 10.55.55.1
: 10.196.91.134
: 10.200.30.1
O MBB não está habilitado por padrão para o Cisco IOS XR.
O comando "make-before-break" ativa o recurso e o anúncio de capacidade.
mpls ldp
mldp
logging notifications
address-family ipv4
make-before-break delay 0
O MBB não tem um atraso por padrão. Somente em uma configuração dimensionada, o atraso deve ser aumentado. O motivo é que com muitas entradas de banco de dados mLDP pode haver muitas entradas de encaminhamento mLDP que precisam ser instaladas. O tempo para instalar essas entradas de encaminhamento no plano de dados das placas de linha pode levar algum tempo.
Veja a imagem 2.
Imagem 2
Há a árvore antiga e a árvore recém-sinalizada. O roteador onde as duas árvores se ramificam é o Ponto de Reparo Local (PLR). O roteador onde as duas árvores se mesclam novamente é o Ponto de Mesclagem (MP). A nova parte da árvore mLDP é sinalizada devido à descoberta de um caminho melhor pelos roteadores. O novo link R4 - R2 tornou-se disponível ou a métrica IGP nesse link foi reduzida para produzir um caminho com uma métrica geral mais baixa.
Você pode configurar dois valores de atraso para MBB. O primeiro é o atraso quando o MBB é usado para fazer com que o switchover MP retorne a um caminho nativo. Este é o tempo após o recebimento do retorno de MBB.
RP/0/RP1/CPU0:Router(config-ldp-mldp-af)#make-before-break delay ?
<0-600> Forwarding delay in seconds
Um atraso de zero significa que o caminho recém-sinalizado é imediatamente usado depois que o MBB Ack é recebido no roteador onde o caminho antigo e o novo são diversos, o PLR. O segundo é o atraso para a exclusão do caminho de backup depois que o MP tiver mudado para o caminho nativo.
RP/0/RP1/CPU0:Router(config-ldp-mldp-af)#make-before-break delay 10 ?
<0-60> Delete delay in seconds
<cr>
RP/0/RP1/CPU0:Router(config-ldp-mldp-af)#make-before-break delay 10 10 ?
<cr>
Tanto o atraso de switchover quanto o atraso de exclusão são usados no MP.
A MBB cuida da montagem de uma nova árvore mLDP antes que a antiga seja derrubada. Isso só fará sentido se a árvore antiga ainda estiver presente e encaminhando o tráfego. Uma convergência de IGP, como um evento de link up, pode produzir um caminho melhor para a árvore mLDP. Isso significa uma métrica IGP menor em direção à raiz, ou em direção à folha, se for uma árvore mLDP MP2MP.
Veja um exemplo.
A imagem 3 mostra uma rede antes do evento de convergência de roteamento.
Imagem 3
R5 é o roteador raiz de uma árvore mLDP e R6 é o roteador folha. Uma árvore mLDP P2MP é sinalizada com uma mensagem Label Mapping (incluindo um rótulo MPLS), de cada roteador em direção à raiz. Essa mensagem de Mapeamento de rótulo LDP não transporta uma Solicitação MBB.
O tráfego mLDP vai da esquerda (raiz) para a direita (folha) sobre o caminho superior. Em cada link, o rótulo MPLS indicado está na parte superior do pacote multicast.
A imagem 4 mostra a rede após o evento de convergência de roteamento (sem MBB).
Imagem 4
O link R4 - R2 está ativo agora. A métrica desse link é de um valor baixo para que o caminho inferior tenha uma métrica inferior ao caminho superior. Duas coisas precisam acontecer: a adjacência IGP precisa ser estabelecida no link e a sessão LDP precisa ser estabelecida também nesse novo link. Quando essa sessão LDP estiver ativa, a mensagem Label Mapping será trocada por esse link para mover a árvore mLDP de cima para baixo.
Se o MBB não estiver configurado, haverá sinalização regular com mensagens de Mapeamento de rótulo LDP no caminho inferior. Assim que a mensagem Label Mapping (sem uma solicitação MBB) chegar a R1, o R1 pára de encaminhar o tráfego multicast no caminho superior e começa a encaminhar o tráfego multicast no caminho inferior.
No final, R1 nunca encaminhou o tráfego multicast pelos dois caminhos, mas apenas por um: ele trocou o tráfego de cima para baixo. O switchover é imediato, o que pode levar a um curto período de tráfego multicast descartado devido ao fato de que a sinalização do plano de controle de R2 para R1 sobre R4 pode ser um pouco mais rápida do que o tempo necessário para que as entradas mLDP sejam instaladas no plano de dados nos roteadores no novo caminho.
Há notificação de log mLDP habilitada explicitamente.
RP/0/0/CPU0:Jan 1 16:06:49.778 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_ADD : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Add LDP 10.0.0.4:0 branch remote label 24009
RP/0/0/CPU0:Jan 1 16:06:49.838 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_DELETE : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Delete LDP 10.0.0.3:0 branch remote label 24009
Se o MBB estiver configurado, temos o seguinte.
Observe que não é suficiente apenas configurar o MBB em R1.
Este é um exemplo de configuração em R2:
mpls ldp
mldp
logging notifications
address-family ipv4
make-before-break delay 60
!
Você gostaria que o R2 atrasasse o switchover do caminho antigo para o novo com 60 segundos quando a sessão LDP no link R4-R2 estiver ativa. Isso não acontece. Você precisa ter o MBB habilitado em cada roteador (ou pelo menos R1, R4 e R2) para ter a sinalização MBB funcionando entre R2 e R1 através de R4.
Você precisa ter essa configuração mínima em cada roteador para ter a sinalização MBB habilitada.
mpls ldp
mldp
logging notifications
address-family ipv4
make-before-break delay 0
!
Veja a imagem 5.
Imagem 5
Todas as configurações corretas estão em vigor. Vemos os acontecimentos desde o início, portanto a situação antes do acontecimento de convergência.
O caminho superior ativo é o início. Em R1, R3 é o único cliente downstream.
RP/0/0/CPU0:R1#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:19:43
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.5:0 [Active] [MBB] Uptime: 00:19:43
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.3:0 Uptime: 00:03:28
Next Hop : 10.1.3.3
Interface : GigabitEthernet0/0/0/0
Remote label (D) : 24009
RP/0/0/CPU0:R1#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24009, NH: 10.1.3.3, Intf: GigabitEthernet0/0/0/0 Role: M
Em R2, R3 é o único elemento de aceitação.
RP/0/0/CPU0:R2#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:23:58
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.3:0 [Active] [MBB] Uptime: 00:03:19
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.6:0 Uptime: 00:23:58
Next Hop : 10.2.6.6
Interface : GigabitEthernet0/0/0/2
Remote label (D) : 24010
RP/0/0/CPU0:R2#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
Após a sinalização MBB, R2 tem dois elementos de aceitação, um ativo e um inativo.
Jan 1 16:52:43.700 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_ADD : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Add LDP 10.0.0.4:0 branch remote label 240
R1 tem dois clientes downstream, R3 e R4:
RP/0/0/CPU0:R1#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:22:35
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.5:0 [Active] [MBB] Uptime: 00:22:35
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.3:0 Uptime: 00:06:20
Next Hop : 10.1.3.3
Interface : GigabitEthernet0/0/0/0
Remote label (D) : 24009
LDP 10.0.0.4:0 Uptime: 00:00:36
Next Hop : 10.1.4.4
Interface : GigabitEthernet0/0/0/1
Remote label (D) : 24009
R1 está encaminhando em ambos os caminhos:
RP/0/0/CPU0:R1#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24009, NH: 10.1.3.3, Intf: GigabitEthernet0/0/0/0 Role: M
24009, NH: 10.1.4.4, Intf: GigabitEthernet0/0/0/1 Role: M
R2 agora tem dois vizinhos de upstream, um ativo (R3) e um inativo (R4). Essa fase está lá por 60 segundos, o tempo de atraso de encaminhamento.
RP/0/0/CPU0:R2#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:27:00
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
MBB nbr evaluate : 00:00:21
Features : MBB
Upstream neighbor(s) :
10.0.0.4:0 [Inactive] [MBB] Uptime: 00:00:38
Local Label (D) : 24009
10.0.0.3:0 [Active] [Delete] [MBB] Uptime: 00:06:22
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.6:0 Uptime: 00:27:00
Next Hop : 10.2.6.6
Interface : GigabitEthernet0/0/0/2
Remote label (D) : 24010
RP/0/0/CPU0:R2#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
24009 LSM-ID: 0x00001 flags: ED
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
Observe que o rótulo local para cada árvore mLDP é diferente. Assim, R2 não tem problema para diferenciar o tráfego mLDP de entrada e identificar qual pacote mLDP de entrada pertence a qual árvore mLDP. O R2 encaminha o tráfego de uma árvore por vez. O flag ED significa 'Queda de Saída' e significa que os pacotes que chegam com rótulo 24009 são descartados. Esses são os pacotes na árvore para os quais o elemento de aceitação está inativo. Não há tráfego duplicado chegando aos receptores!
Observe que o rótulo de saída para cada árvore mLDP em R2 é o mesmo. Assim, para R6, um roteador downstream de R2, ele não pode distinguir se o tráfego veio sobre o caminho antigo original (superior) ou o novo caminho (inferior) após o novo roteamento.
Após 60 segundos, R2 pára de encaminhar o tráfego do caminho superior e inicia o tráfego do caminho inferior.
RP/0/0/CPU0:R1 Jan 1 16:53:44.236 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_DELETE : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Delete LDP 10.0.0.3:0 branch remote label 24009
R1 tem apenas um cliente downstream, R4.
RP/0/0/CPU0:R1#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:25:21
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.5:0 [Active] [MBB] Uptime: 00:25:21
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.4:0 Uptime: 00:03:22
Next Hop : 10.1.4.4
Interface : GigabitEthernet0/0/0/1
Remote label (D) : 24009
RP/0/0/CPU0:R1#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24009, NH: 10.1.4.4, Intf: GigabitEthernet0/0/0/1 Role: M
R2 tem apenas um vizinho upstream:
RP/0/0/CPU0:R2#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:29:54
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.4:0 [Active] [MBB] Uptime: 00:03:31
Local Label (D) : 24009
Downstream client(s):
LDP 10.0.0.6:0 Uptime: 00:29:54
Next Hop : 10.2.6.6
Interface : GigabitEthernet0/0/0/2
Remote label (D) : 24010
RP/0/0/CPU0:R2#show mpls mldp forwarding
mLDP MPLS forwarding database
24009 LSM-ID: 0x00001 flags: None
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
O rastreamento mLDP em R2 mostra que a sinalização MBB foi usada, que houve um atraso de 60 segundos antes de alternar do caminho antigo para o novo caminho e um atraso subsequente de 0 segundo para excluir o caminho antigo. Depois disso, R2 envia uma mensagem Label Withdraw para R3 para o caminho antigo e recebe uma mensagem Label Release de R3 como uma resposta.
RP/0/0/CPU0:R2#show mpls mldp trace
Jan 1 16:52:43.370 MLDP GLO 0/0/CPU0 t21 NBR : New LDP peer 10.0.0.4:0 UP cap: f
Jan 1 16:52:43.370 MLDP GLO 0/0/CPU0 t21 NBR : 10.0.0.4:0 LDP Adjacency addr: 10.2.4.4, Interface: GigabitEthernet0/0/0/1 Add
Jan 1 16:52:43.660 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.4:0 installed local label 24009
Jan 1 16:52:43.660 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP label mappping MBB Request msg to 10.0.0.4:0 Success
Jan 1 16:52:43.660 MLDP LSP 0/0/CPU0 t21 FWD : 0x00001 Label 24009 add path label 24010 intf GigabitEthernet0/0/0/2 nexthop 10.2.6.6 id 0x00001 Success
Jan 1 16:52:43.660 MLDP GLO 0/0/CPU0 t21 GEN : Root 10.0.0.5 path 10.2.4.4 php nh 10.2.4.4 peer 134a338c:10.0.0.4:0
Jan 1 16:52:43.910 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP notification from 10.0.0.4:0 root 10.0.16.0 Opaque Len: 83886090 MBB Ack
Jan 1 16:52:43.910 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 Start MBB Notification timer 100 msec (MBB ack)
Jan 1 16:52:43.910 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL selection delayed for 60 seconds (MBB)
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 start delete pending timer at 0 sec
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.4:0 activate
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 update active ident from 10.0.0.3:0 to 10.0.0.4:0
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 deactivate
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 delete delay timer expired, delete pending TRUE
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 FWD : 0x00001 Label 24008 delete, Success
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 binding list Local Delete
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 Released label 24008 to LSD
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP label withdraw msg to 10.0.0.3:0 Success
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 remove
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP label release from 10.0.0.3:0 label 24008 root 10.0.0.5 Opaque Len 11
Jan 1 16:53:44.356 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 MBB notification delay timer expired
A proteção mLDP é composta por duas partes principais: a própria proteção e MBB (Make-Before-Break).
Proteção
A proteção do tráfego mLDP é semelhante aos mecanismos de proteção do tráfego MPLS unicast. Assim que uma falha de link é detectada, o roteador PLR comuta o tráfego multicast das árvores que atravessam esse link para o caminho de backup. Esse caminho de backup é um caminho pré-calculado que é instalado no plano de encaminhamento. Assim, assim que a falha ocorrer, o tráfego multicast pode ser comutado imediatamente para o caminho de backup.
A proteção é somente para link inativo. Não há proteção de nó para mLDP.
O evento de link inativo deve ser detectado muito rapidamente. Isso significa que o BFD (Detecção de encaminhamento bidirecional) deve ser usado.
MBB
Após o início da proteção, o tráfego multicast não fica no caminho de backup para sempre. O tráfego deve ser comutado para uma árvore/caminho mLDP nativo recém-calculado. Esse switchover deve ocorrer de forma que nenhum tráfego multicast seja perdido. O MBB é usado para isso, de modo que o tráfego só é comutado quando a árvore recém-sinalizada está completamente configurada e está encaminhando o tráfego. O roteador MP pode, então, comutar com segurança o encaminhamento do tráfego da antiga árvore de backup para a árvore recém-sinalizada sem perda de tráfego.
Veja a imagem 6. Ele mostra uma rede com um link R1 - R2 que é protegido com Ti-LFA.
Imagem 6
O tráfego mLDP é encaminhado pelo link R1 - R2. O FRR calcula e instala um caminho de backup via R3.
Veja a imagem 7.
Imagem 7
A imagem 7 mostra a situação quando a proteção está ativa.
Quando o link R1 - R2 é desativado, a sessão LDP através dele é mantida ativa pela proteção de sessão LDP. A sessão LDP - que é uma sessão TCP - faz o reroteamento em R3. Isso evita que as vinculações de rótulo para LDP e mLDP entre R1 e R2 sejam removidas. Para que essa sessão LDP possa ser roteada por R3 e ser multi-hop, ela deve ser uma sessão LDP de destino. Isso é feito automaticamente quando a proteção de sessão LDP é configurada.
Quando o link R1 - R2 fica inativo, o tráfego mLDP pode ser roteado novamente de forma rápida sobre R3. Para que isso funcione, deve haver alguma forma de proteção em R1 para a rota em direção ao LDP router-ID de R2. Isso é obtido ativando os túneis de Engenharia de Tráfego MPLS, LFA (Loop-free Alternate) ou Ti-LFA (Topology Independent LFA). O tráfego multicast de R1 para R2 tinha um rótulo mLDP. Quando o link R1 - 2 fica inativo, o tráfego multicast recebe um rótulo extra quando enviado para R2. Há um Penultimate Hop Popping (PHP), de modo que o tráfego é encaminhado com um rótulo para R2. R2 recebe esse tráfego com o mesmo rótulo de quando o link R1 - R2 estava ativo. O R2 continua encaminhando esse tráfego multicast.
Essa proteção é rápida. Embora haja proteção para o tráfego mLDP, o R2 começa a sinalizar um novo caminho nativo dele em direção ao R1 por meio do R3. R2 envia uma mensagem de mapeamento de rótulo mLDP para R3. R3 faz o mesmo em relação a R1. Este é o mesmo processo/sinalização como sempre ao criar um novo caminho mLDP. Enquanto essa sinalização está acontecendo, o R2 continua encaminhando o tráfego do caminho mLDP de backup. Quando o R2 começa a encaminhar o tráfego do caminho nativo recém-criado? O acionador pode ser duas coisas: um atraso cronometrado ou um acionador de sinalização. O atraso cronometrado é algo configurado. O disparador de sinalização é o comportamento Make-Before-Break (MBB) introduzido no mLDP e especificado no RFC 6388. Quando o R2 recebe o sinal do R1, ele indica que o caminho mLDP nativo recentemente está pronto, de modo que o R2 pode começar a encaminhar o tráfego desse novo caminho mLDP e parar de encaminhar o tráfego do caminho de backup.
R1 é chamado de PLR (Point-of-Local-Repair, ponto de reparo local), é o roteador onde o caminho protegido e o caminho nativo recém-sinalizado se ramificam. R2 é o MP (Ponto de Mesclagem), o roteador onde o caminho protegido e o caminho nativo recém-sinalizado se mesclam novamente.
Veja a imagem 8.
Imagem 8
A imagem 8 mostra que há uma mensagem mLDP Label Mapping de R2 para R3 e de R3 para R1. Esta mensagem de Mapeamento de Rótulo tem a Solicitação MBB.
Veja a imagem 9.
Imagem 9
R1 responde essa sinalização com uma Notificação LDP, transportando a confirmação MBB na direção inversa. Então, descendo a árvore. Essa mensagem viaja de R1 para R3 e de R3 para R2. Isso sinaliza para R2, o roteador MP, que o novo caminho mLDP nativo está pronto. Nesse ponto, R1 encaminha o tráfego mLDP duas vezes, uma no caminho de backup e outra no novo caminho nativo
O MBB é usado aqui para ter o switchover MP (R2) de volta para um caminho nativo (que acabou de ser criado). Quando o MBB tiver concluído a parte de sinalização, o MP interromperá o encaminhamento do tráfego mLDP que chega do caminho de backup e começará a encaminhar o tráfego do caminho nativo recém-sinalizado. O MBB é usado aqui para indicar quando esse caminho recém-sinalizado está pronto. Outra possibilidade é configurar um atraso. Nesse caso, o MP pára de encaminhar o tráfego mLDP que chega do caminho de backup e começa a encaminhar o tráfego do caminho nativo recém-sinalizado depois que o MBB sinalizou que esse novo caminho nativo está pronto e após o temporizador de atraso configurado.
Quando R2 começa a encaminhar o tráfego do novo caminho nativo, ele para de encaminhar o tráfego do caminho de backup e sinaliza a destruição do caminho de backup enviando uma mensagem LDP Label Withdraw para a árvore (e uma mensagem LDP Label Release).
Um retardo de exclusão adicional pode ser adicionado para remover a árvore antiga, a fim de permitir que a plataforma programe todo o estado de encaminhamento para as placas de linha.
Depois disso, há apenas a árvore nativa recém-sinalizada. Observe a imagem 10 para ver o encaminhamento do tráfego mLDP nesse caso.
Imagem 10
Observe que o tráfego mLDP tem um rótulo MPLS no topo novamente.
Os próximos três itens de configuração são necessários para que o mLDP FRR (Fast ReRoute) funcione.
Você precisa de:
- Encaminhamento recursivo para mLDP habilitado
- Proteção de sessão LDP habilitada
- LFA (Loop-free Alternate) ou Ti-LFA (Topology Independent LFA) sob o IGP (Ti-LFA requer roteamento de segmento). A engenharia de tráfego ponto-a-ponto também é possível.
Se qualquer um desses três estiver ausente, não haverá proteção de FRR para mLDP. O mLDP protege apenas contra falhas de link, não contra falhas de nó.
Exemplo de configuração
mpls ldp
log
neighbor
nsr
graceful-restart
session-protection
!
igp sync delay on-session-up 25
mldp
logging notifications
address-family ipv4
make-before-break delay 600 60 <<<<<<
forwarding recursive <<<<<<
!
!
router-id 10.79.196.14
neighbor
dual-stack transport-connection prefer ipv4
!
session protection for LDP-PEERS <<<<<<
address-family ipv4
label
local
allocate for host-routes
!
!
!
O comando make-before-break é opcional.
Verifique se a interface de saída está protegida por LFA ou Ti-LFA:
router isis IGP
set-overload-bit on-startup 600
net 49.0010.0000.0000.0001.00
segment-routing global-block 100000 150000
nsf cisco
log adjacency changes
lsp-gen-interval maximum-wait 5000 initial-wait 1 secondary-wait 50
lsp-refresh-interval 1800
max-lsp-lifetime 1880
address-family ipv4 unicast
metric-style wide
fast-reroute per-prefix priority-limit critical
fast-reroute per-prefix tiebreaker lowest-backup-metric index 20
fast-reroute per-prefix tiebreaker node-protecting index 30
fast-reroute per-prefix tiebreaker srlg-disjoint index 10
mpls traffic-eng level-2-only
mpls traffic-eng router-id Loopback145
mpls traffic-eng multicast-intact
spf-interval maximum-wait 7000 initial-wait 1 secondary-wait 50
segment-routing mpls sr-prefer
segment-routing prefix-sid-map advertise-local
spf prefix-priority critical tag 17
mpls ldp auto-config
!
address-family ipv6 unicast
metric-style wide
fast-reroute per-prefix priority-limit critical
fast-reroute per-prefix tiebreaker lowest-backup-metric index 20
fast-reroute per-prefix tiebreaker node-protecting index 30
fast-reroute per-prefix tiebreaker srlg-disjoint index 10
spf-interval maximum-wait 7000 initial-wait 1 secondary-wait 50
segment-routing mpls sr-prefer
spf prefix-priority critical tag 17
!
interface Bundle-Ether10362
circuit-type level-2-only
point-to-point
address-family ipv4 unicast
fast-reroute per-prefix <<<<<<
fast-reroute per-prefix ti-lfa <<<<<<
metric 420 level 2
mpls ldp sync level 2
!
address-family ipv6 unicast
fast-reroute per-prefix
fast-reroute per-prefix ti-lfa
metric 420 level 2
!
Não há impacto na proteção do tráfego multicast se qualquer um dos roteadores ao longo do novo caminho nativo não tiver MBB configurado. A proteção depende apenas da configuração da proteção de sessão LDP, do encaminhamento recursivo e do FRR, no PLR. A configuração de MBB nos roteadores de caminho recém-nativos somente tem uma consequência quando o tráfego é comutado do caminho de backup para a árvore recém-sinalizada. Se um roteador mLDP recebeu uma mensagem Label Mapping com solicitação MBB de um roteador downstream e precisa enviar uma mensagem Label Mapping para um roteador upstream, mas esse roteador upstream não tem MBB habilitado, o roteador mLDP envia uma mensagem LDP Notification para esse roteador downstream assim que ele envia a mensagem Label Mapping (sem a solicitação MBB) para o roteador upstream. Como tal, uma árvore mLDP regular é o resultado.
Veja a imagem 11 para a topologia.
Imagem 11
Quando o link falha entre R1 e R2, a sessão mLDP entre eles é protegida por uma sessão de destino LDP entre eles sobre R3. Assim, a sessão mLDP entre R1 e R2 permanece ativa mesmo quando o link entre eles está inativo. Isso protege as vinculações de rótulo mLDP entre elas, elas são mantidas. Quando o link R1-R2 é desativado, o plano de encaminhamento imediatamente alterna: o link de saída R1-R2 alterna para o link R1-R3 de forma muito rápida, graças ao MPLS TE, LFA ou Ti-LFA de ponto a ponto no lugar. Esse TE, LFA ou Ti-LFA de MPLS P2P deve proteger em R1 a rota para o ID do roteador LDP de R2 para comutar as entradas de encaminhamento para mLDP de maneira correta. Finalmente, o encaminhamento recursivo é necessário porque a sessão mLDP alterna de uma sessão diretamente conectada para uma sessão remota, onde o ID do roteador LDP é resolvido de forma recursiva.
R1 é chamado de PLR (Point-of-Local-Repair, ponto de reparo local), é o roteador onde o caminho protegido e o caminho nativo recém-sinalizado se ramificam. R2 é o MP (Ponto de Mesclagem), o roteador onde o caminho protegido e o caminho nativo recém-sinalizado se mesclam novamente.
Verifique os três requisitos:
-proteção LDP
Para o vizinho LDP (mLDP) conectado diretamente sobre Bundle-Ethernet10362, também devem existir helloS direcionados:
RP/0/RP0/CPU0:R1#show mpls ldp discovery 10.79.196.10
Local LDP Identifier: 10.79.196.14:0
Discovery Sources:
Interfaces:
Bundle-Ether10362 : xmit/recv
VRF: 'default' (0x60000000)
LDP Id: 10.79.196.10:0, Transport address: 10.79.196.10
Hold time: 15 sec (local:15 sec, peer:15 sec)
Established: Dec 28 10:23:16.144 (00:02:13 ao)
Targeted Hellos:
10.79.196.14 -> 10.79.196.10 (active), xmit/recv
LDP Id: 10.79.196.10:0
Hold time: 90 sec (local:90 sec, peer:90 sec)
Established: Dec 28 10:23:30.008 (00:01:59 ago)
-LFA ou Ti-LFA no IGP
Verifique se a rota para o vizinho LDP router-id tem um caminho de backup. O RIB (Routing Information Base) e o FIB (Forwarding Information Base ou CEF) devem ter este caminho de backup:
RP/0/RP0/CPU0:R1#show route 10.79.196.10
Routing entry for 10.79.196.10/32
Known via "isis IGP", distance 115, metric 420, labeled SR
Tag 17, type level-2
Installed Dec 28 10:23:42.659 for 00:07:58
Routing Descriptor Blocks
10.254.1.144, from 10.79.196.10, via Bundle-Ether10301, Backup (Local-LFA)
Route metric is 2000
10.254.3.37, from 10.79.196.10, via Bundle-Ether10362, Protected
Route metric is 420
No advertising protos.
RP/0/RP0/CPU0:R1#show cef 10.79.196.10
10.79.196.10/32, version 7364, labeled SR, internal 0x1000001 0x83 (ptr 0x788e1f78) [1], 0x0 (0x788ab5a8), 0xa28 (0x79dd1138)
Updated Oct 25 11:32:44.299
Prefix Len 32, traffic index 0, precedence n/a, priority 1
via 10.254.1.144/32, Bundle-Ether10301, 11 dependencies, weight 0, class 0, backup (Local-LFA) [flags 0x300]
path-idx 0 NHID 0x0 [0x78f4e9b0 0x0]
next hop 10.254.1.144/32
local adjacency
local label 100010 labels imposed {100010}
via 10.254.3.37/32, Bundle-Ether10362, 11 dependencies, weight 0, class 0, protected [flags 0x400]
path-idx 1 bkup-idx 0 NHID 0x0 [0x7905e510 0x7905e350]
next hop 10.254.3.37/32
local label 100010 labels imposed {ImplNull}
-encaminhamento recursivo para mLDP
A entrada do banco de dados mLDP não tem uma interface de saída no LFIB se o encaminhamento recursivo for aplicado:
Sem encaminhamento recursivo:
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 BE10362 10.254.3.37 7893474
Com encaminhamento recursivo:
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 10.79.196.10 2516786878
Observe que não há mais interface de saída para a entrada de encaminhamento mLDP. Isso torna a solução de problemas um pouco mais difícil.
O MP tem a próxima configuração para mLDP. Observe os temporizadores de 600 e 60 segundos. O PLR tem os mesmos temporizadores. O PLR encaminha o tráfego pelo caminho de backup e pelo caminho nativo por 600 segundos. O atraso de 600 segundos significa que o MP encaminha o tráfego do caminho de backup por 600 segundos, enquanto descarta o tráfego que chega do caminho nativo. 600 segundos é muito tempo para este temporizador. Ele foi usado em um ambiente de laboratório para fornecer tempo suficiente para capturar a saída com comandos show. O atraso de 60 segundos significa que o MP aguarda a exclusão do caminho MBB por 60 segundos depois de começar a encaminhar o tráfego que chega do caminho nativo e descartar o tráfego que chega pelo caminho de backup. O valor correto para esses dois atrasos depende da rede. Ela precisa ser derivada do teste de rede, software e hardware específicos.
mpls ldp
log
neighbor
nsr
graceful-restart
session-protection
!
igp sync delay on-session-up 25
mldp
logging notifications
address-family ipv4
make-before-break delay 600 60
forwarding recursive
!
!
router-id 10.79.196.10
neighbor
dual-stack transport-connection prefer ipv4
!
session protection for LDP-PEERS
address-family ipv4
label
local
allocate for LDP-PEERS
!
!
!
Observe a imagem 12, ela mostra o encaminhamento enquanto o mLDP está no modo de proteção.
Imagem 12
Antes da interface de saída ser desativada, esta é a entrada LFIB para o LDP router-ID remoto (R2):
RP/0/RP0/CPU0:R1#show mpls forwarding labels 100010
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
100010 Pop SR Pfx (idx 10) BE10362 10.254.3.37 355616309429
100010 SR Pfx (idx 10) BE10301 10.254.1.144 0 (!)
The (!) indicates a backup path.
Esta é a entrada do banco de dados da árvore mLDP no PLR:
RP/0/RP0/CPU0:R1#show mpls mldp database details
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 3d03h
FEC Root : 10.79.196.14 (we are the root)
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
None
Downstream client(s):
LDP 10.79.196.10:0 Uptime: 02:09:09
Rec Next Hop : 10.79.196.10
Remote label (D) : 24440
LDP MSG ID : 254705
PIM MDT Uptime: 3d03h
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000014 IPv6: 0xe0800014
HLI : 0x00001
Ingress : Yes
Peek : Yes
PPMP : Yes
Esta é a entrada de encaminhamento mLDP para a árvore:
RP/0/RP0/CPU0:R1#show mpls mldp forwarding label 25426
mLDP MPLS forwarding database
25426 LSM-ID: 0x00001 HLI: 0x00001 flags: In Pk
Lmdtvrfone, RPF-ID: 0, TIDv4: E0000014, TIDv6: E0800014
24440, NH: 10.79.196.10, Intf: Role: H, Flags: 0x4 Local Label : 25426 (internal)
Esta é a entrada de encaminhamento LFIB (Label Forwarding Instance Base) para a árvore:
RP/0/RP0/CPU0:R1#show mpls for labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 10.79.196.10 0
A entrada de encaminhamento mLDP está protegida. A entrada de encaminhamento é protegida por rótulo 100010, a entrada para o ID do roteador LDP remoto.
RP/0/RP0/CPU0:R1#show mpls for labels 25426 detail
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 10:23:42.669
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 1, local mpls paths: 0, protected mpls paths:
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 0
Updated: Dec 28 10:23:42.670
My Nodeid:0x20
Interface Nodeids:
[ 0x8620 - - - - - - - - - ]
Interface Handles:
[ 0xc0001c0 - - - - - - - - - ]
Backup Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Backup Interface Handles:
[ 0xa000400 - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
Esta é a entrada de encaminhamento no hardware. Os roteadores são ASR9k.
RP/0/RP0/CPU0:R1#show mpls for labels 25426 detail hardware ingress location 0/2/CPU0
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 10:23:42.674
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 1, local mpls paths: 0, protected mpls paths: 1
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 N/A
Updated: Dec 28 10:23:42.674
My Nodeid:0x8420
Interface Nodeids:
[ 0x8620 - - - - - - - - - ]
Interface Handles:
[ 0xc0001c0 - - - - - - - - - ]
Backup Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Backup Interface Handles:
[ 0xa000400 - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
LEAF - HAL pd context :
sub-type : MPLS_P2MP, ecd_marked:0, has_collapsed_ldi:0
collapse_bwalk_required:0, ecdv2_marked:0,
Leaf H/W Result
Leaf H/W Result on NP:0
09000014000000921806352100020900006000020a0000600000a00001010400
vpn_special = 0 (0x0)
vc_label_vpws = 0 (0x0)
vc_label_vpls = 0 (0x0)
pwhe = 0 (0x0)
p2mp = 1 (0x1)
tp = 0 (0x0)
recursive = 0 (0x0)
non_recursive = 1 (0x1)
flow_label_dispose = 0 (0x0)
receive_entry_type = 0 (0x0)
control_word_enabled = 0 (0x0)
imp_ttl_255 = 0 (0x0)
collapsed = 0 (0x0)
recursive_lsp_stats = 0 (0x0)
vpn_key = 20 (0x14)
Non-recursive:
rpf_id = 0 (0x0)
nrldi_ptr = 406817 (0x63521)
P2MP:
rpf_id = 146 (0x92)
nrldi_ptr = 146 (0x92)
mldp_egr_drop = 0 (0x0)
mldp_ing_drop = 0 (0x0)
mldp_signal = 0 (0x0)
mldp_peek = 1 (0x1)
mldp_tunnel = 1 (0x1)
p2mp_bud_node = 0 (0x0)
p2mp_ip_lookup = 0 (0x0)
per_lc_receivers = 0 (0x0)
igp_local_label: eos = 1 (0x1)
igp_local_label: exp = 0 (0x0)
igp_local_label: label = 25426 (0x6352)
fab_info: fab_mgid = 521 (0x209)
fab_info: fab_slotmask = 96 (0x60)
fab_info: fab_fgid = 150995040 (0x9000060)
backup_fab_info: backup_fab_mgid = 522 (0x20a)
backup_fab_info: backup_fab_slotmask= 96 (0x60)
backup_fab_info: backup_fab_fgid = 167772256 (0xa000060)
rep_node_ndx = 40960 (0xa000)
ecmp_size = 1 (0x1)
stats_ptr = 66560 (0x10400)
Leaf H/W Result on NP:1
09000014000000921806352100020900006000020a0000600000a00001010400
…
Existe o FGID (Fabric Group Index, índice de grupos de estrutura) e o FGID de backup. O FGID é usado pela matriz de comutação para encaminhar o tráfego multicast para as placas de linha corretas. Há também o MGID (Multicast Group Identifier). O MGID é usado para encaminhar o tráfego multicast aos elementos de replicação corretos nas placas de linha.
RP/0/RP0/CPU0:R1#show mrib encap-id
Encap ID Key : 00000101000000600600020100000000000002
Encap ID Length : 19
Encap ID Value : 262145
Platform Annotation:
Slotmask: Primary: 0x40, Backup: 0x60
MGID: Primary: 64059, Backup: 64060
Flags (Vrflite(v4/v6),Stale,v6): N/N, N, N
Oles:
[1] type: 0x5, len: 12
LSM-ID: 0x00001 MDT: 0x2000660 Turnaround: TRUE
Primary: 0/4/CPU0[1]
Backup: 0/3/CPU0[1]
TableId: 0xe0000014[1001]
Redist History:
client id 31 redist time: 02:01:27 redist flags 0x0
É assim que você pode procurar a entrada MGID:
RP/0/RP0/CPU0:R1#show controllers mgidprgm mgidindex 521 location 0/2/CPU0
Device MGID-Bits Client-Last-Modified
=======================================================
XBAR-0 1 P2MP
XBAR-1 1 P2MP
FIA-0 1 P2MP
FIA-1 0 None
FIA-2 0 None
FIA-3 0 None
FIA-4 0 None
FIA-5 0 None
FIA-6 0 None
FIA-7 0 None
========================================================
Client Mask
========================================================
MFIBV4 0x0
MFIBV6 0x0
L2FIB 0x0
sRP-pseudo-mc 0x0
UT 0x0
Prgm-Svr 0x0
P2MP 0x1
xbar 0x0
UT1 0x0
UT2 0x0
punt_lib 0x0
RP/0/RP0/CPU0:R1#show controllers mgidprgm mgidindex 522 location 0/2/CPU0
Device MGID-Bits Client-Last-Modified
=======================================================
XBAR-0 1 P2MP
XBAR-1 1 P2MP
FIA-0 1 P2MP
FIA-1 0 None
FIA-2 0 None
FIA-3 0 None
FIA-4 0 Non
FIA-5 0 None
FIA-6 0 None
FIA-7 0 None
========================================================
Client Mask
========================================================
MFIBV4 0x0
MFIBV6 0x0
L2FIB 0x0
sRP-pseudo-mc 0x0
UT 0x0
Prgm-Svr 0x0
P2MP 0x1
xbar 0x0
UT1 0x0
UT2 0x0
punt_lib 0x0
A interface de saída está inoperante e o MBB está em uso.
A imagem 13 mostra a sinalização.
Imagem 13
R1 agora tem duas entradas de encaminhamento para esta árvore:
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 10.79.196.10 1834250032
24033 mLDP/IR: 0x00001 10.79.196.13 1825230386
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426 detail
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 13:07:03.417
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 2, local mpls paths: 0, protected mpls paths:
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 2230150704
Updated: Dec 28 13:07:03.245
My Nodeid:0x20
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 21039158
24033 mLDP/IR: 0x00001 (0x00001) \
10.79.196.13 2221131058
Updated: Dec 28 13:07:03.417
My Nodeid:0x20
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100013, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 20954067
Há dois clientes mLDP downstream, R2 e R3:
RP/0/RP0/CPU0:R1#show mpls mldp database details
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 3d04h
FEC Root : 10.79.196.14 (we are the root)
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
None
Downstream client(s):
LDP 10.79.196.10:0 Uptime: 02:44:09
Rec Next Hop : 10.79.196.10
Remote label (D) : 24440
LDP MSG ID : 254705
LDP 10.79.196.13:0 Uptime: 00:00:48
Rec Next Hop : 10.79.196.13
Remote label (D) : 24033
LDP MSG ID : 98489
PIM MDT Uptime: 3d04h
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000014 IPv6: 0xe0800014
HLI : 0x00001
Ingress : Yes
Peek : Yes
PPMP : Yes
Local Label : 25426 (internal)
O MP (R2) tem dois vizinhos upstream, um está ativo e o outro está inativo:
P/0/RSP1/CPU0:R2#show mpls mldp database details
LSM-ID: 0x00002 Type: P2MP Uptime: 03:45:22
FEC Root : 10.79.196.14
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
MBB nbr evaluate : 00:08:18
Features : MBB RFWD Trace
Upstream neighbor(s) :
Is CSI accepting : N
10.79.196.13:0 [Inactive] [MBB] Uptime: 00:01:42
Local Label (D) : 24441
Is CSI accepting : N
10.79.196.14:0 [Active] [Delete] [MBB] Uptime: 02:45:02
Local Label (D) : 24440
Downstream client(s):
PIM MDT Uptime: 03:45:22
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000013 IPv6: 0xe0800013
RPF ID : 3
Peek : Yes
RD : 3209:92722001
A interface de backup foi removida em R1:
RP/0/RP0/CPU0:R1#show mpls for labels 25426 detail hardware ingress location 0/2/CPU0
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 13:07:03.418
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 2, local mpls paths: 0, protected mpls paths:
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 N/A
Updated: Dec 28 13:07:03.255
My Nodeid:0x8420
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
24033 mLDP/IR: 0x00001 (0x00001) \
10.79.196.13 N/A
Updated: Dec 28 13:07:03.418
My Nodeid:0x8420
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100013, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
RP/0/RP0/CPU0:R1#show mrib encap-id
Encap ID Key : 00000101000000600600020100000000000002
Encap ID Length : 19
Encap ID Value : 262145
Platform Annotation:
Slotmask: Primary: 0x20, Backup: 0x20
MGID: Primary: 64059, Backup: 64060
Flags (Vrflite(v4/v6),Stale,v6): N/N, N, N
Oles:
[1] type: 0x5, len: 12
LSM-ID: 0x00001 MDT: 0x2000660 Turnaround: TRUE
Primary: 0/3/CPU0[1]
Backup:
TableId: 0xe0000014[1001]
Redist History:
client id 31 redist time: 00:01:22 redist flags 0x0
O MP mudou para a árvore nativa recém-sinalizada e está dentro dos 60 segundos antes de excluir a árvore antiga:
RP/0/RSP1/CPU0:R2#show mpls mldp database details
LSM-ID: 0x00002 Type: P2MP Uptime: 03:53:56
FEC Root : 10.79.196.14
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
Is CSI accepting : N
10.79.196.13:0 [Active] [MBB] Uptime: 00:10:16
Local Label (D) : 24441
Is CSI accepting : N
10.79.196.14:0 [Inactive] [Delete 00:00:44] [MBB] Uptime: 02:53:37
Local Label (D) : 24440
Downstream client(s):
PIM MDT Uptime: 03:53:56
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000013 IPv6: 0xe0800013
RPF ID : 3
Peek : Yes
RD : 3209:92722001
Existe o estado, depois que a árvore antiga é excluída:
RP/0/RSP1/CPU0:R2#show mpls mldp database details
mLDP database
LSM-ID: 0x00002 Type: P2MP Uptime: 03:58:03
FEC Root : 10.79.196.14
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
Is CSI accepting : N
10.79.196.13:0 [Active] [MBB] Uptime: 00:14:23
Local Label (D) : 24441
Downstream client(s):
PIM MDT Uptime: 03:58:03
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000013 IPv6: 0xe0800013
RPF ID : 3
Peek : Yes
RD : 3209:92722001
O PLR tem apenas um cliente mLDP downstream:
RP/0/RP0/CPU0:R1#show mpls mldp database details
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 3d04h
FEC Root : 10.79.196.14 (we are the root)
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
None
Downstream client(s):
LDP 10.79.196.13:0 Uptime: 00:11:13
Rec Next Hop : 10.79.196.13
Remote label (D) : 24033
LDP MSG ID : 98489
PIM MDT Uptime: 3d04h
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000014 IPv6: 0xe0800014
HLI : 0x00001
Ingress : Yes
Peek : Yes
PPMP : Yes
Local Label : 25426 (internal)
O rastreamento mLDP mostra os eventos com mais detalhes.
No PLR
A interface BE10362 fica inativa:
Dec 28 13:07:03.220 MLDP GLO 0/RP0/CPU0 t10704 RIB : Read notification
Dec 28 13:07:03.225 MLDP GLO 0/RP0/CPU0 t10706 RIB : Notify client 'Peer' for prefix: 10.79.196.10/32
Dec 28 13:07:03.225 MLDP GLO 0/RP0/CPU0 t10706 GEN : Checkpoint save neighbor 10.79.196.10:0 canceled, no GR or NSR
Dec 28 13:07:03.227 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 delete adj 2000460/10.254.3.37
Dec 28 13:07:03.227 MLDP GLO 0/RP0/CPU0 t10706 GEN : Checkpoint delete neighbor adj 2000460/10.254.3.37 objid 0 version 0 Failed
Dec 28 13:07:03.227 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 LDP Adjacency addr: 10.254.3.37, Interface: Bundle-Ether10362 Delete
Dec 28 13:07:03.325 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 Check branches for path change
O link foi perdido, mas a adjacência de LDP não é perdida, ela é mantida como uma sessão de destino.
As próximas entradas são a nova filial sobre o roteador P (10.79.196.13):
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : P2MP Label mapping from 10.79.196.13:0 label 24033 root 10.79.196.14 Opaque Len 7
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Add branch LDP 10.79.196.13:0 Label 24033
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Branch LDP 10.79.196.13:0 binding list Remote Add
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Changing branch LDP 10.79.196.13:0 from None/0.0.0.0 to None/10.79.196.13
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Notify client Add event: 6 root TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Add update to PIM Root TRUE Upstream TRUE Ingress TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 add path label 24033 intf None nexthop 10.79.196.13 id 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 set HLI 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Notify client Add event: 6 root TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Add update to PIM Root TRUE Upstream TRUE Ingress TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 add path label 24033 intf None nexthop 10.79.196.13 id 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 set HLI 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10705 DB : 0x00001 Add event from mLDP to PIM, ready TRUE root TRUE csc_rd 0:0 csc_umh 0.0.0.0, msg_len 50
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10705 DB : 0x00001 Add event from mLDP to PIM, ready TRUE root TRUE csc_rd 0:0 csc_umh 0.0.0.0, msg_len 50
Dec 28 13:07:05.296 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 to address: 10.254.3.37 mapping deleted
O resto é a limpeza. R3 envia a mensagem Label Withdraw e a mensagem Label Release para R1:
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 P2MP label withdraw from 10.79.196.10:0 label 24440 root 10.79.196.14 Opaque Len 7
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 P2MP label release msg to 10.79.196.10:0 Success
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 delete path label 24440 intf None nexthop 10.79.196.10 id 0x00001 Success
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Branch LDP 10.79.196.10:0 binding list Remote Delete
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Deleting branch entry LDP 10.79.196.10:0
No MP
A interface para o MP é desativada. A adjacência é perdida no link, mas a adjacência LDP é mantida como uma sessão iniciada:
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 delete adj 20003a0/10.254.3.36
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checkpoint delete neighbor adj 20003a0/10.254.3.36 objid 0 version 0 Failed
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 LDP Adjacency addr: 10.254.3.36, Interface: Bundle-Ether10362 Delete
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Start path timer for root: 10.79.196.14
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checkpoint save neighbor 10.79.196.14:0 canceled, no GR or NSR
Dec 28 13:05:27.152 MLDP GLO 0/RSP1/CPU0 t31488 RIB : Read notification
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Root paths count 1
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 None 10.79.196.13
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 added (chkpt FALSE)
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 binding list Local Add
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 path changed from None:0.0.0.0 to None:10.79.196.13
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Request label type ACEL ident 10.79.196.13:0 LSD Success
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 RIB : Notify client 'Root' for prefix: 10.79.196.14/32
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Root 10.79.196.14 path 10.254.1.184 php nh 10.254.1.184 peer 72d83798:10.79.196.13:0
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : mldp_root_get_path: tid e0100000 ifh 0 php_nh 0.0.0.0
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Failed to get intf type for ifh 0x0
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 RIB : Notify client 'Peer' for prefix: 10.79.196.14/32
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checkpoint save neighbor 10.79.196.14:0 canceled, no GR or NSR
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Main Entry LSD label 24441 type ACEL ident 10.79.196.13:0 assigned
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 installed local label 24441
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Neighbor 10.79.196.13:0 not MBB capable or worse metric, ignore MBB code 0
MBB entra em ação: os 600 segundos são o atraso de switchover configurado
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Start MBB Notification timer 100 msec (MBB ack)
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL selection delayed for 600 seconds (MBB)
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 P2MP label mappping msg to 10.79.196.13:0 Success
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL selection delayed for 600 seconds (MBB)
O novo caminho através do roteador P é criado:
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 create, Flags: 5 Success
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 add path lspvif Lmdtvrfone rpf-id 3 tid v4 0xe0000013 v6 0xe0800013 Success
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 id_val 0 id_type 0
Dec 28 13:05:27.154 MLDP GLO 0/RSP1/CPU0 t31491 GEN : ACEL for local label 24441 label up 1048577
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Root paths count 1
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 None 10.79.196.13
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 found, retain TRUE, to front TRUE
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL selection delayed for 600 seconds (MBB)
Dec 28 13:05:27.234 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 Check branches for path change
Dec 28 13:05:27.234 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checking paths for root: 10.79.196.14
Dec 28 13:05:27.234 MLDP GLO 0/RSP1/CPU0 t31491 GEN : mldp_root_get_path: tid e0100000 ifh 0 php_nh 0.0.0.0
Dec 28 13:05:27.350 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 MBB notification delay timer expired
Dec 28 13:05:29.275 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 to address: 10.254.3.36 mapping deleted
O temporizador de 600 segundos expira:
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Peer change delay timer expired
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL evaluate
A entrada é excluída após outros 60 segundos.
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 start delete pending timer at 60 sec
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 activate
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 create, Flags: 1 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 update active ident from 10.79.196.14:0 to 10.79.196.13:0
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save Main Entry active 10.79.196.13:0 rec_nh 0.0.0.0 rec_rd 0:0 cont...
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save lbl no_label length: 88 obj 80002f60 version 136 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 deactivate
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24440 create, Flags: 5 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 update active ident from 10.79.196.13:0 to 0.0.0.0:0
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save Main Entry active 0.0.0.0:0 rec_nh 0.0.0.0 rec_rd 0:0 cont...
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save lbl no_label length: 88 obj 80002f60 version 137 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 update active ident from 0.0.0.0:0 to 10.79.196.13:0
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save Main Entry active 10.79.196.13:0 rec_nh 0.0.0.0 rec_rd 0:0 cont...
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save lbl no_label length: 88 obj 80002f60 version 138 Success
Dec 28 13:15:28.352 MLDP GLO 0/RSP1/CPU0 t31491 GEN : ACEL for local label 24441 label up 1048577
Dec 28 13:15:28.352 MLDP GLO 0/RSP1/CPU0 t31491 GEN : ACEL for local label 24440 label up 1048577
O temporizador de atraso de exclusão expira. O R3 envia a mensagem de Retirada de Rótulo e a mensagem de Liberação de Rótulo para R1:
Dec 28 13:15:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 MBB notification delay timer expired
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 delete delay timer expired, delete pending TRUE
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24440 delete, Success
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 binding list Local Delete
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Released label 24440 to LSD
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 P2MP label withdraw msg to 10.79.196.14:0 Success
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 remove
Dec 28 13:16:28.557 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 P2MP label release from 10.79.196.14:0 label 24440 root 10.79.196.14 Opaque Len 7
Em uma configuração em escala com mais de 500 LSPs, quando ocorre um FRR, o protocolo de gateway de Internet (IGP - Internet Gateway Protocol) unicast pode convergir mais rápido do que as atualizações de multicast (LMRIB para FIB) para atualizações de rótulo mLDP. Como resultado, a FIB pode marcar o bit de FRR em 2 segundos após um evento de FRR, em que a programação de hardware de rótulo mLDP não é concluída na placa de linha de saída, hospedando o caminho de backup. O tempo de espera de FRR é, por padrão, de 2 segundos.
É aconselhável aumentar esse tempo de espera de FRR em uma configuração dimensionada.
O comando frr-holdtime configura o tempo de espera de FRR para ser proporcional ao número de escala de LSPs. O valor de frr-holdtime recomendado é o mesmo ou menor que o temporizador de atraso MBB. Isso garante que a placa de linha de saída esteja no estado FRR após o evento de caminho principal inativo. Quando não configurado, o frr-holdtimer padrão, em segundos, é definido como 2.
Esse comando foi apresentado na versão 5.3.2.
RP/0/RSP1/CPU0:ASR-9906#conf t
RP/0/RSP1/CPU0:ASR-9906(config)#cef platform ?
lsm Label-switched-multicast parameters
RP/0/RSP1/CPU0:ASR-9906(config)#cef platform lsm ?
frr-holdtime Time to keep FRR slots programmed post FRR
RP/0/RSP1/CPU0:ASR-9906(config)#cef platform lsm frr-holdtime ?
<3-180> Time in seconds
O MBB pode funcionar para evitar a perda de tráfego multicast para reroteamento no caso de convergência de roteamento e no caso de proteção de tráfego no caso de um link ficar inoperante, ao alternar de volta o tráfego multicast do caminho de backup para um caminho nativo.
O MBB deve ser configurado para ativá-lo. Ele deve ser configurado em todos os roteadores.
Deve haver um atraso de encaminhamento de MBB configurado de vários segundos para permitir a instalação da árvore mLDP recém-sinalizada no plano de encaminhamento antes de encaminhar o tráfego dessa árvore mLDP.
Revisão | Data de publicação | Comentários |
---|---|---|
2.0 |
18-Oct-2022 |
Revisão do endereçamento IP |
1.0 |
04-May-2021 |
Versão inicial |