Introdução
Este documento descreve o problema de vizinho do protocolo de distribuição de rótulo (LDP - Label Distribution Protocol) devido à memória insuficiente nos roteadores ASR9000.
Informações de Apoio
O LDP é um protocolo de distribuição de rótulo que ajuda a gerar e compartilhar as informações de rótulo para rotas IGP. Mas antes de trocar o rótulo, o roteador primeiro forma a vizinhança LDP. Como você sabe, o LDP funciona nos protocolos UDP e TCP. Para a descoberta de vizinhos, o LDP usa o protocolo UDP e para criar a vizinhança ele usa o protocolo TCP.
O roteador deve ter uma boa quantidade de memória e CPU para fazer uma conexão TCP.
Resumo da Questão
Como evidente, você pode fazer ping e traceroute.
RP/0/RSP0/CPU0:R1#ping 192.168.12.6 so l14
Thu Jun 27 07:01:31.192 UTC
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.12.6 timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 2/2/3 ms
RP/0/RSP0/CPU0:R1# traceroute 192.168.12.6 so l14 numeric
Thu Jun 27 07:01:56.748 UTC
Digite a seqüência de escape para cancelar.
Rastreando a rota para 192.168.12.6
1 192.168.99.220 [MPLS: Labels 26664/75671 Exp 0] 3 msec 2 msec 2 msec
2 192.168.96.8 [MPLS: Label 75671 Exp 0] 1 msec 1 msec 1 msec
3 192.168.62.151 [MPLS: Label 24201 Exp 0] 2 msec 2 msec 2 msec
4 192.168.12.6 2 ms 2 ms 2 ms
Todos os comandos ping e traceroute estão funcionando, mas não são membros LDP.
RP/0/RSP0/CPU0:R1# show mpls ldp discovery 192.168.12.6 detail
Thu Jun 27 07:05:43.503 UTC
Local LDP Identifier: 192.168.248.84:0
Discovery Sources:
Targeted Hellos:
192.168.248.84 -> 192.168.12.6 (active), xmit/recv
Hello interval: 5 sec (due in 978 msec)
Quick-start: Enabled
LDP Id:192.168.248.84:0
Hold time: 45 sec (local:90 sec, peer:45 sec)
(expiring in 41.3 sec)
Established: Jun 26 12:02:16.216 (18:58:47 ago)
Session bringup fail reason:
waiting for tcp incall
Você pode ver o motivo da falha do TCP.
Análise do problema
Quando o Show mpls ldp trace error reverse | in 192.168.12.6 comando é verificado, percebe-se que não há vizinhos LDP devido à memória insuficiente.
Jun 27 07:08:29.742 mpls/ldp/err 0/RSP0/CPU0 t1 [ERR][MISC]:8201: VRF(0x60000000):
ldp_nbr_ok_to_connect: Call from 192.168.12.6 rejected - state=2, reason=''MPLS_LDP'
detected the 'resource not available' condition 'A low memory condition prevents new
LDP sessions'
Além disso, observe-se que há memória secundária em RSP0, mas RSP1 é normal.
RP/0/RSP0/CPU0:R1#show watchdog memory-state
Thu Jun 27 06:16:13.033 UTC
Memory information:
Physical Memory: 6144 MB
Free Memory: 554.988 MB
Memory State: Minor
RP/0/RSP0/CPU0:R1#show watchdog memory-state location 0/RSP1/CPU0
Thu Jun 27 06:17:06.110 UTC
Memory information:
Physical Memory: 6144 MB
Free Memory: 1208.164 MB
Memory State: Normal
Como esse problema está relacionado à memória, você pode verificar o consumo de memória de diferentes componentes dos sistemas e o ltrace utilizando a memória mais alta, mesmo quando comparado a outros RSPs e dispositivos. Descobriu-se que RSP0 utiliza a maior quantidade de memória para ltrace.
RP/0/RSP0/CPU0:R1#show shmem summary location 0/rSP0/CPU0
Thu Jun 27 07:24:48.601 UTC
Total Shared memory: 2345M
ShmWin: 349M
Image: 71M
LTrace: 690M
AIPC: 73M
SLD: 3M
SubDB: 528K
CERRNO: 148K
GSP-CBP: 165M
EEM: 0
XOS: 15M
CHKPT: 10M
CDM: 9M
XIPC: 4M
DLL: 64K
SysLog: 10M
Miscellaneous: 940M
LTrace usage details:
Used: 690M, Max: 3366M
Current: default(dynamic)
Configured: dynamic with scale-factor: 16 (changes take effect after reload)
Você também pode ver que o Ltrace está utilizando uma grande quantidade de memória.
Solução:
1. Recarregue o RP em standby.
2. Aguarde a sincronização. Confirme se sh shmem summary loc 0/RSP1/CPU0, o perfil atual tem fator de escala 16.
3. Transição.
4. Confirme se a memória está normal. Confirme se o LDP está operacional novamente.
5. Confirme se o fator de escala 16 é aplicado a RSP0 com sh shmem summary loc 0/RSP0/CPU0.
Coletar logs:
show mpls ldp neighbor
show mpls ldp neighbor detail
show mpls ldp discovery 192.168.12.6 detail
show watchdog memory-state
show watchdog memory-state location 0/RSP1/CPU0
show shmem summ loc 0/RSP1/CPU0
show shmem summ loc 0/RSP0/CPU0
show redundancy
show tech-support mpls ldp
Observação: verifique o uso de memória em outro roteador com a mesma configuração.