Sommario

Introduzione

Premesse

Problema

Scenario 1. RR in linea e PE con valore distinto per RD

Scenario 2. RR in linea e PE con lo stesso valore di RD

Scenario 3. Ripristino e ripristino in linea con lo stesso valore di Desktop remoto e 'cef encap-sharing disable' configurati

Soluzione

Introduzione

Questo documento descrive il comportamento di Cisco Systems Network Convergence System (NCS) 540 quando viene usato come BGP (Border Gateway Protocol) VPNv4 in-line Route Reflector (RR) e Provider Edge (PE).

Premesse

Questo documento è incentrato sul comportamento di NCS 540 come verificato in un ambiente lab con software Cisco IOS® XR versione 7.3.1. il comportamento descritto in questo documento si applica a tutte le piattaforme e le versioni software NCS5500 o NCS500 basate su DNX.

Problema

Si consideri lo scenario in cui NCS540 è configurato con un'istanza VRF (Virtual Routing and Forwarding) e utilizza lo stesso valore di Route-Distinguisher (RD) utilizzato dai nodi client PE RR remoti. Quando viene utilizzato come ruolo RR e PE in linea e configurato con lo stesso valore di RD dei nodi client RR PE remoti, l'etichetta più in alto non viene visualizzata prima dell'inoltro, determinando la perdita del pacchetto in uscita.

Scenario 1. RR in linea e PE con valore distinto per RD

Nell'immagine è illustrato lo scenario di DPT (Device Under Test) configurato come RR in linea BGP VPNv4 e PE con un valore di RD distinto per VRF vrf1 rispetto a quello utilizzato dagli altri nodi PE.

Immagine 1 - DUT - RR e PE in linea con valore RD distinto.

La connettività IP tra le porte in ingresso PE (IP 10.51.232.21) e in uscita PE (10.51.232.145) all'interno del VRF vrf1 viene stabilita con i pacchetti inoltrati correttamente tra i nodi PE, come mostrato dai comandi Ping e Traceroute restituiti:

INGRESS_PE#ping vrf vrf1 10.51.232.145 source 10.51.232.21

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.51.232.145, timeout is 2 seconds:

Packet sent with a source address of 10.51.232.21

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/4 ms

INGRESS_PE#traceroute vrf vrf1 10.51.232.145 source 10.51.232.21

Type escape sequence to abort.

Tracing the route to 10.51.232.145

VRF info: (vrf in name/id, vrf out name/id)

1 10.51.5.161 [MPLS: Label 24017 Exp 0] 4 msec 8 msec 0 msec

2 10.9.255.207 [MPLS: Labels 23481/24008 Exp 0] 4 msec 0 msec 0 msec

3 10.9.255.217 0 msec *  4 msec

La DUT è una VPNv4 BGP in-line RR e PE con VRF configurata localmente, ma che utilizza un valore RD distinto (65000:104) rispetto a quello utilizzato dai nodi client PE RR (65000:104830). Come mostrato dagli output, il DUT importa tutte le route e scambia le etichette VPNv4 di conseguenza:

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast

BGP router identifier 10.9.255.8, local AS number 65000

<snip>

Network            Next Hop            Metric LocPrf Weight Path

Route Distinguisher: 65000:104 (default for vrf vrf1)

*>i0.0.0.0/0          10.48.255.30            10    100      0 ?

*>i10.51.232.20/30    10.51.5.5                0    100      0 ?

*>i10.51.232.145/32   10.48.255.30             0    100      0 ?

Route Distinguisher: 65000:104830

*>i0.0.0.0/0          10.48.255.30            10    100      0 ?

*>i10.51.232.20/30    10.51.5.5                0    100      0 ?

*>i10.51.232.145/32   10.48.255.30             0    100      0 ?

<snip>

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast rd 65000:104 labels

BGP router identifier 10.9.255.8, local AS number 65000

<snip>

Network            Next Hop        Rcvd Label      Local Label

Route Distinguisher: 21497:104 (default for vrf vrf1)

*>i0.0.0.0/0          10.48.255.30    24008           nolabel

*>i10.51.232.20/30    10.51.5.5       17              nolabel

*>i10.51.232.145/32   10.48.255.30    24008           nolabel

<snip>

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast rd 65000:104830 labels

BGP router identifier 10.9.255.8, local AS number 65000

<snip>

Network            Next Hop        Rcvd Label      Local Label

Route Distinguisher: 21497:104830

*>i0.0.0.0/0          10.48.255.30    24008           24018

*>i10.51.232.20/30    10.51.5.5       17              24019

*>i10.51.232.145/32   10.48.255.30    24008           24017

<snip>

Come riferimento aggiuntivo nello scenario attuale di RR e PE in linea che utilizza un valore di RD distinto, viene mostrato l'output completo per il prefisso 10.51.232.145/32 ricevuto dal nodo EGRESS_PE:

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast rd 65000:104 10.51.232.145

BGP routing table entry for 10.51.232.145/32, Route Distinguisher: 65000:104

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                115         115

Last Modified: Feb  8 11:00:27.032 for 2w6d

Paths: (1 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local, (received & used)

10.48.255.30 (metric 20) from 10.48.255.30 (10.48.255.30)

Received Label 24008

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

Received Path ID 1, Local Path ID 1, version 115

Extended community: RT:65000:104830 RT:65000:105130

Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 65000:104830

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast rd 65000:104830 10.51.232.145

BGP routing table entry for 10.51.232.145/32, Route Distinguisher: 65000:104830

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                113         113

Local Label: 24017

Last Modified: Feb  8 11:00:22.032 for 2w6d

Paths: (1 available, best #1)

Advertised to peers (in unique update groups):

10.51.5.5

Path #1: Received by speaker 0

Advertised to peers (in unique update groups):

10.51.5.5

Local, (received & used)

10.48.255.30 (metric 20) from 10.48.255.30 (10.48.255.30)

Received Label 24008

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

Received Path ID 1, Local Path ID 1, version 113

Extended community: RT:65000:104830 RT:65000:10513

I pacchetti originati da INGRESS_PE (10.51.232.21) e destinati a EGRESS PE (10.51.232.145) sono a commutazione di etichetta e sull'etichetta superiore DUT {24017} scambiati da {23481/24008} secondo i dettagli di inoltro programmato:

RP/0/RP0/CPU0:DUT-N540#show cef vrf vrf1 10.51.232.145/32 detail

10.51.232.145/32, version 96, internal 0x5000001 0x0 (ptr 0x8ce0d034) [1], 0x0 (0x8b941ee0), 0xa08 (0x8cacb5f8)

Updated Feb 25 12:18:36.885

Prefix Len 32, traffic index 0, precedence n/a, priority 3

gateway array (0x8b7b6fd0) reference count 2, flags 0x38, source rib (7), 0 backups

[3 type 1 flags 0x8441 (0x8cb11e28) ext 0x0 (0x0)]

LW-LDI[type=1, refc=1, ptr=0x8b941ee0, sh-ldi=0x8cb11e28]

gateway array update type-time 1 Feb 25 12:18:36.885

LDI Update time Feb 25 12:18:36.885

LW-LDI-TS Feb 25 12:18:36.885

via 10.48.255.30/32, 7 dependencies, recursive [flags 0x6000]

path-idx 0 NHID 0x0 [0x8d37e3b8 0x0]

recursion-via-/32

next hop VRF - 'default', table - 0xe0000000

next hop 10.48.255.30/32 via 23481/0/21

next hop 10.9.255.207/32 BE100        labels imposed {23481 24008}

Load distribution: 0 (refcount 3)

Hash  OK  Interface                 Address

0     Y   recursive                 23481/0

In corrispondenza di P-NODE, con NetFlow configurato in modo da corrispondere al traffico in entrata proveniente dal nodo INGRESS_PE, viene osservato lo stack di etichette previsto {23481 24008}, come mostrato nell'output del monitor di flusso:

RP/0/RP0/CPU0:P_NODE#show flow monitor MONITOR_MAP_MPLS cache location 0/RP0/CPU0

<snip>

LabelType Prefix/Length      Label1-EXP-S     Label2-EXP-S     Label3-EXP-S   InputInterface  OutputInterface ForwardStatus        FirstSwitched   LastSwitched    ByteCount    PacketCount  Dir SamplerID  IPV4SrcAddr      IPV4DstAddr      IPV4TOS  IPV4Prot L4SrcPort  L4DestPort L4TCPFlags   InputVRFID                        OutputVRFID                       BGPNextHopV4

Unknown 10.48.255.30/32       23481-0-0        24008-0-1           -

BE100           BE1             Fwd                  33 17:49:08:468 33 17:49:11:765 108000       1000         Ing 1          10.51.232.21     10.51.232.145    0        icmp     0          0          0            default                           default                           0.0.0.0

<snip>

Scenario 2. RR in linea e PE con lo stesso valore di RD

Nell'immagine viene mostrato lo scenario con DUT configurato come RR in linea BGP VPNv4 e PE, ma ora configurato con lo stesso valore RD per VRF vrf1 - 6500:10430 - degli altri nodi PE.

Immagine 2 - DUT - RR in linea e PE con lo stesso valore RD.

In questo scenario, la connettività IP tra le porte in ingresso PE (IP 10.51.232.21) e in uscita PE (10.51.232.145) all'interno del VRF vrf1 non riesce, come mostrato nell'output dei comandi Ping e Traceroute:

INGRESS_PE#ping vrf vrf1 10.51.232.145 source 10.51.232.21

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.51.232.145, timeout is 2 seconds:

Packet sent with a source address of 10.51.232.21

.....

Success rate is 0 percent (0/5)

INGRESS_PE#traceroute vrf vrf1 10.51.232.145 source 10.51.232.21

Type escape sequence to abort.

Tracing the route to 10.51.232.145

VRF info: (vrf in name/id, vrf out name/id)

1 10.51.5.161 [MPLS: Label 24013 Exp 0] 4 msec 4 msec 0 msec

2  *  *  *

<snip>

Con DUT, l'origine del problema non viene percepita chiaramente né dal BGP né dalle uscite di inoltro programmate, con tutte le caratteristiche previste:

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast

BGP router identifier 10.9.255.8, local AS number 65000

<snip>

Network            Next Hop            Metric LocPrf Weight Path

Route Distinguisher: 65000:104830 (default for vrf vrf1)

*>i0.0.0.0/0          10.48.255.30            10    100      0 ?

*>i10.51.232.20/30    10.51.5.5                0    100      0 ?

*>i10.51.232.145/32   10.48.255.30             0    100      0 ?

<snip>

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast rd 65000:104830 labels

BGP router identifier 10.9.255.8, local AS number 65000

<snip>

Network            Next Hop        Rcvd Label      Local Label

Route Distinguisher: 21497:104830 (default for vrf vrf1)

*>i0.0.0.0/0          10.48.255.30    24008           24020

*>i10.51.232.20/30    10.51.5.5       17              24016

*>i10.51.232.145/32   10.48.255.30    24008           24013

<snip>

Analogamente alla sezione precedente e come riferimento aggiuntivo nello scenario attuale di RR e PE in linea che utilizzano lo stesso valore di RD, viene visualizzato l'output completo per il prefisso 10.51.232.145/32 ricevuto dal nodo EGRESS_PE:

RP/0/RP0/CPU0:DUT-N540#show bgp vpnv4 unicast rd 65000:104830 10.51.232.145

BGP routing table entry for 10.51.232.145/32, Route Distinguisher: 65000:104830

Versions:

Process           bRIB/RIB  SendTblVer

Speaker                134         134

Local Label: 24013

Last Modified: Feb 28 18:03:20.032 for 00:04:50

Paths: (1 available, best #1)

Advertised to peers (in unique update groups):

10.51.5.5

Path #1: Received by speaker 0

Advertised to peers (in unique update groups):

10.51.5.5

Local, (received & used)

10.48.255.30 (metric 20) from 10.48.255.30 (10.48.255.30)

Received Label 24008

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

Received Path ID 1, Local Path ID 1, version 134

Extended community: RT:65000:104830 RT:65000:105130

Source AFI: VPNv4 Unicast, Source VRF: vrf1, Source Route Distinguisher: 65000:10483

I pacchetti originati da INGRESS_PE (10.51.232.21) e destinati a EGRESS PE (10.51.232.145) sono a commutazione di etichetta e ci si aspetta che in DUT questi pacchetti abbiano l'etichetta superiore {24013} scambiata da {23481} 24008} come nei dettagli di inoltro programmato:

RP/0/RP0/CPU0:DUT-N540#show cef vrf vrf1 10.51.232.145/32 detail

10.51.232.145/32, version 107, internal 0x1000001 0x0 (ptr 0x8ce0d13c) [1], 0x0 (0x8b946be8), 0xa08 (0x8cacb7d8)

Updated Feb 28 18:03:19.778

Prefix Len 32, traffic index 0, precedence n/a, priority 3

gateway array (0x8b7b71a0) reference count 6, flags 0x78, source rib (7), 0 backups

[3 type 5 flags 0x8441 (0x8cb125d8) ext 0x0 (0x0)]

LW-LDI[type=5, refc=3, ptr=0x8b946be8, sh-ldi=0x8cb125d8]

gateway array update type-time 1 Feb 28 18:03:19.778

LDI Update time Feb 28 18:03:19.778

LW-LDI-TS Feb 28 18:03:19.778

via 10.48.255.30/32, 7 dependencies, recursive [flags 0x6000]

path-idx 0 NHID 0x0 [0x8d37e3b8 0x0]

recursion-via-/32

next hop VRF - 'default', table - 0xe0000000

next hop 10.48.255.30/32 via 23481/0/21

local label 24013

next hop 10.9.255.207/32 BE100        labels imposed {23481 24008}

Load distribution: 0 (refcount 3)

Hash  OK  Interface                 Address

0     Y   recursive                 23481/0

Inoltre, la selezione su P_NODE con NetFlow configurato in modo da far corrispondere il traffico in entrata proveniente da INGRESS_PE rivela l'origine del problema e la modalità con cui DUT inoltra il pacchetto. Come evidenziato nell'output mostrato, l'etichetta locale 24013 non viene scaricata dal DUT prima di inoltrare il pacchetto. Pertanto, P_NODE riceve un frame MPLS in pila con tre etichette {23481 24008 24013} anziché il frame MPLS in pila con due etichette previsto {23481 24008}. A P_NODE l'etichetta superiore 23481 viene eliminata e il pacchetto inoltrato verso EGRESS_PE viene trasportato come stack di etichette {24008 24013}, che porta al rilascio del pacchetto a EGRESS_PE.

RP/0/RP0/CPU0:P_NODE#show flow monitor MONITOR_MAP_MPLS cache location 0/RP0/CPU0

<snip>

LabelType Prefix/Length      Label1-EXP-S     Label2-EXP-S     Label3-EXP-S     InputInterface  OutputInterface ForwardStatus        FirstSwitched   LastSwitched    ByteCount    PacketCount  Dir SamplerID  IPV4SrcAddr      IPV4DstAddr      IPV4TOS  IPV4Prot L4SrcPort  L4DestPort L4TCPFlags   InputVRFID                        OutputVRFID                       BGPNextHopV4

Unknown 10.48.255.30/32       23481-0-0        24008-0-0        24013-0-1       BE100           BE1             Fwd                  33 17:51:40:181 33 17:51:41:521 112000       1000         Ing 1          10.51.232.21     10.51.232.145    0        icmp     0          0          0            default                           default                           0.0.0.0

<snip>

Scenario 3. Ripristino e ripristino in linea con lo stesso valore di Desktop remoto e 'cef encap-sharing disable' configurati

Oltre allo scenario precedente, la disabilitazione della condivisione dell'encap CEF è configurata e per ogni prefisso vengono allocate risorse hardware separate.

RP/0/RP0/CPU0:DUT-N540(config)#cef encap-sharing disable

Warning: The command will clear the forwarding table.Traffic loss is expected during rebuilding.

RP/0/RP0/CPU0:DUT-N540(config)#commit

Nell'immagine è illustrato lo scenario di RR e PE in linea configurati con lo stesso RD e configurati con la condivisione di crittografia cef disabilitata.

Immagine 3 - DUT - RR e PE in linea con lo stesso valore RD e 'cef encap-sharing disable' configurati.

La connettività IP tra le porte in ingresso PE (IP 10.51.232.21) e in uscita PE (10.51.232.145) all'interno del VRF vrf1 viene ripristinata con i pacchetti inoltrati nuovamente correttamente tra i nodi PE, come mostrato dagli output dei comandi Ping e Traceroute:

INGRESS_PE#ping vrf vrf1 10.51.232.145 source 10.51.232.21 repeat 1000

Type escape sequence to abort.

Sending 1000, 100-byte ICMP Echos to 10.51.232.145, timeout is 2 seconds:

Packet sent with a source address of 10.51.232.21

<snip>

Success rate is 100 percent (1000/1000), round-trip min/avg/max = 1/3/12 ms

INGRESS_PE#traceroute vrf vrf1 10.51.232.145 source 10.51.232.21

Type escape sequence to abort.

Tracing the route to 10.51.232.145

VRF info: (vrf in name/id, vrf out name/id)

1 10.51.5.161 [MPLS: Label 24013 Exp 0] 0 msec 0 msec 0 msec

2 10.9.255.207 [MPLS: Labels 23481/24008 Exp 0] 4 msec 4 msec 0 msec

3 10.9.255.217 0 msec *  0 msec

In P_NODE, l'output di Netflow rivela che DUT inoltra ora il pacchetto con lo stack di etichette previsto {23481 24008}. P_NODE rimuove l'etichetta 23481 superiore e inoltra il pacchetto verso il nodo EGRESS_PE con lo stack di etichette {24008} a cui EGRESS_PE è in grado di corrispondere, quindi inoltra correttamente il pacchetto incapsulato alla sua destinazione finale all'interno di VRF1.

RP/0/RP0/CPU0:P_NODE#show flow monitor MONITOR_MAP_MPLS cache location 0/RP0/CPU0

Cache summary for Flow Monitor MONITOR_MAP_MPLS:

<snip>

LabelType Prefix/Length      Label1-EXP-S     Label2-EXP-S     Label3-EXP-S     InputInterface  OutputInterface ForwardStatus        FirstSwitched   LastSwitched    ByteCount    PacketCount  Dir SamplerID  IPV4SrcAddr      IPV4DstAddr      IPV4TOS  IPV4Prot L4SrcPort  L4DestPort L4TCPFlags   InputVRFID                        OutputVRFID                       BGPNextHopV4

Unknown 10.48.255.30/32       23481-0-0        24008-0-1           -          BE100           BE1             Fwd                  33 18:03:14:211 33 18:03:17:505 108000       1000         Ing 1          10.51.232.21     10.51.232.145    0        icmp     0          0          0            default                           default                           0.0.0.0

<snip>

Con la configurazione cef con condivisione degli accessi disabilitata, vengono allocate risorse hardware aggiuntive per ogni prefisso e in DUT sono disponibili le informazioni di inoltro necessarie per inoltrare correttamente i pacchetti in questo particolare scenario di RR in linea con lo stesso valore di RD. Allo scopo di evidenziare la distinzione rispetto ai dettagli dell'inoltro programmato, fare riferimento ai due output mostrati in show cef vrf1 10.51.232.145/32 posizione di uscita hardware 0/RP0/CPU0 e notare le informazioni aggiuntive incluse quando è configurata la funzione cef encap-sharing disable.

Come mostrato nello scenario di RR e PE in linea con lo stesso valore di RD ma senza 'cef encap-sharing disable' configurato (predefinito):

!

! --- without 'cef encap-sharing disable' (default)

! --- note highlighted (bold) sections

!

RP/0/RP0/CPU0:DUT-N540#show cef vrf vrf1 10.51.232.145/32 hardware egress location 0/RP0/CPU0

10.51.232.145/32, version 107, internal 0x1000001 0x0 (ptr 0x8ce0d13c) [1], 0x0 (0x8b946be8), 0xa08 (0x8cacb7d8)

Updated Feb 28 18:03:19.778

Prefix Len 32, traffic index 0, precedence n/a, priority 3

gateway array (0x8b7b71a0) reference count 6, flags 0x78, source rib (7), 0 backups

[3 type 5 flags 0x8441 (0x8cb125d8) ext 0x0 (0x0)]

LW-LDI[type=5, refc=3, ptr=0x8b946be8, sh-ldi=0x8cb125d8]

gateway array update type-time 1 Feb 28 18:03:19.778

LDI Update time Feb 28 18:03:19.778

LW-LDI-TS Feb 28 18:03:19.778

via 10.48.255.30/32, 7 dependencies, recursive [flags 0x6000]

path-idx 0 NHID 0x0 [0x8d37e3b8 0x0]

recursion-via-/32

next hop VRF - 'default', table - 0xe0000000

next hop 10.48.255.30/32 via 23481/0/21

local label 24013

next hop 10.9.255.207/32 BE100        labels imposed {23481 24008}

Show-data Print at RPLC

LEAF - HAL pd context :

sub-type : IPV4, ecd_marked:0, has_collapsed_ldi:0

collapse_bwalk_required:0, ecdv2_marked:0,

HW Walk:

LEAF:

PI:0x8ce0d13c PD:0x8ce0d1dc rev:892768 type: IPV4 (0)

LEAF location: LEM

FEC key: 0x57f40001104

LWLDI:

PI:0x8b946be8 PD:0x8b946c28 rev:892767 p-rev:892766  ldi type:IMP_EOS0_EOS1

FEC key: 0x57f40001104 fec index: 0x0(0) num paths:1, bkup paths: 0

REC-SHLDI HAL PD context :

ecd_marked:0, collapse_bwalk_required:0, load_shared_lb:0

RSHLDI:

PI:0x8cb125d8 PD:0x8cb126a8 rev:892766 dpa-rev:41494702 flag:0x1

FEC key: 0x57f40001104 fec index: 0x2000ffcc(65484) num paths: 1

p-rev:854950

Path:0 fec index: 0x2000ffcc(65484) DSP fec index: 0x2000ffca(65482)

MPLS EEI push label: 24008

LEAF - HAL pd context :

sub-type : MPLS, ecd_marked:0, has_collapsed_ldi:0

collapse_bwalk_required:0, ecdv2_marked:0,

HW Walk:

LEAF:

PI:0x8d37e3b8 PD:0x8d37e458 rev:854953 type: MPLS (2)

LEAF location: LEM

FEC key: 0

LWLDI:

PI:0x8b945288 PD:0x8b9452c8 rev:854950 p-rev:854949  ldi type:IMP_EOS0_EOS1

FEC key: 0x51140001104 fec index: 0x0(0) num paths:1, bkup paths: 0

IMP LDI:

IMP pattern:3

PI:0x8b945288 PD:0x8b9452c8 rev:854950 p-rev:854949

FEC key: 0x51240001104 fec index: 0x2000ffca(65482) num paths:1

Path:0  fec index: 0x2000ffca(65482) DSP:0xc000001

MPLS encap key: 0xf1b0000040014822 MPLS encap id: 0x40014822 Remote: 0

SHLDI:

PI:0x8cb10718 PD:0x8cb107e8 rev:854949 dpa-rev:39755988 flag:0x0

FEC key: 0x51140001104 fec index: 0x2000ffcb(65483) num paths: 1 bkup paths: 0

p-rev:72522

Path:0 fec index: 0x2000ffcb(65483) DSP:0xc000001 Dest fec index: 0x0(0)

TX-NHINFO:

PI: 0x8d11fad0 PD: 0x8d11fb50 rev:72522 dpa-rev:3303803 Encap hdl: 0x8cd16098

Encap id: 0x40010003 Remote: 0 L3 int: 1579 flags: 0x407

npu_mask: 0x1 DMAC: 5c:5a:c7:ff:78:84

Load distribution: 0 (refcount 3)

Hash  OK  Interface                 Address

0     Y   recursive                 23481/0

Come mostrato nello scenario di RR e PE in linea con lo stesso valore di RD e disabilitazione della condivisione di crittografia cef configurati:

!

! --- with 'cef encap-sharing disable'

! --- note highlighted (bold) sections for the extra and additional forwarding information included

!

RP/0/RP0/CPU0:DUT-N540#show cef vrf vrf1 10.51.232.145/32 hardware egress location 0/RP0/CPU0

10.51.232.145/32, version 127, internal 0x1000001 0x0 (ptr 0x8ce0ffa4) [1], 0x0 (0x8b948630), 0xa08 (0x8cacb5f8)

Updated Feb 28 18:26:25.775

Prefix Len 32, traffic index 0, precedence n/a, priority 3

gateway array (0x8b7b5f80) reference count 3, flags 0x78, source rib (7), 0 backups

[2 type 5 flags 0x8441 (0x8cb14c48) ext 0x0 (0x0)]

LW-LDI[type=5, refc=3, ptr=0x8b948630, sh-ldi=0x8cb14c48]

gateway array update type-time 1 Feb 28 18:26:25.775

LDI Update time Feb 28 18:26:25.775

LW-LDI-TS Feb 28 18:26:25.779

via 10.48.255.30/32, 11 dependencies, recursive [flags 0x6000]

path-idx 0 NHID 0x0 [0x8d37e3b8 0x0]

recursion-via-/32

next hop VRF - 'default', table - 0xe0000000

next hop 10.48.255.30/32 via 23481/0/21

local label 24013

next hop 10.9.255.207/32 BE100        labels imposed {23481 24008}

Show-data Print at RPLC

LEAF - HAL pd context :

sub-type : IPV4, ecd_marked:0, has_collapsed_ldi:0

collapse_bwalk_required:0, ecdv2_marked:0,

HW Walk:

LEAF:

PI:0x8ce0ffa4 PD:0x8ce10044 rev:893768 type: IPV4 (0)

LEAF location: LEM

FEC key: 0x5ae40001104

LWLDI:

LSP pattern:3

PI:0x8b948630 PD:0x8b948670 rev:893767 p-rev:893766  ldi type:IMP_EOS0_EOS1

FEC key: 0x5af40001104 fec index: 0x2000ffbf(65471) num paths:1, bkup paths: 0

Path:0  fec index: 0x2000ffbf(65471) DSP fec index:0x20000001(1)

MPLS encap key: 0xf1b000004001482f MPLS encap id: 0x4001482f Remote: 0

IMP LDI:

IMP pattern:3

PI:0x8b948630 PD:0x8b948670 rev:893767 p-rev:893766

FEC key: 0x5ae40001104 fec index: 0x2000ffc0(65472) num paths:1

Path:0  fec index: 0x2000ffc0(65472) DSP fec index: 0x20000001(1)

MPLS encap key: 0xf1b000004001482e MPLS encap id: 0x4001482e Remote: 0

REC-SHLDI HAL PD context :

ecd_marked:0, collapse_bwalk_required:0, load_shared_lb:0

RSHLDI:

PI:0x8cb14c48 PD:0x8cb14d18 rev:893766 dpa-rev:41503635 flag:0x1

FEC key: 0x5ac40001104 fec index: 0x2000ffe0(65504) num paths: 1

p-rev:893704

Indirection ECMP FEC key: 0x5ad20001104 fec index: 0x20000001(1)

Path:0 fec index: 0x2000ffe0(65504) DSP fec index: 0x2000ffca(65482)

LEAF - HAL pd context :

sub-type : MPLS, ecd_marked:0, has_collapsed_ldi:0

collapse_bwalk_required:0, ecdv2_marked:0,

HW Walk:

LEAF:

PI:0x8d37e3b8 PD:0x8d37e458 rev:893707 type: MPLS (2)

LEAF location: LEM

FEC key: 0

LWLDI:

PI:0x8b9451a0 PD:0x8b9451e0 rev:893704 p-rev:893703  ldi type:IMP_EOS0_EOS1

FEC key: 0x59f40001104 fec index: 0x0(0) num paths:1, bkup paths: 0

IMP LDI:

IMP pattern:3

PI:0x8b9451a0 PD:0x8b9451e0 rev:893704 p-rev:893703

FEC key: 0x5a040001104 fec index: 0x2000ffca(65482) num paths:1

Path:0  fec index: 0x2000ffca(65482) DSP:0xc000001

MPLS encap key: 0xf1b0000040014822 MPLS encap id: 0x40014822 Remote: 0

SHLDI:

PI:0x8cb112a0 PD:0x8cb11370 rev:893703 dpa-rev:41503599 flag:0x0

FEC key: 0x59f40001104 fec index: 0x2000ffcb(65483) num paths: 1 bkup paths: 0

p-rev:72522

Path:0 fec index: 0x2000ffcb(65483) DSP:0xc000001 Dest fec index: 0x0(0)

TX-NHINFO:

PI: 0x8d11fad0 PD: 0x8d11fb50 rev:72522 dpa-rev:3303803 Encap hdl: 0x8cd16098

Encap id: 0x40010003 Remote: 0 L3 int: 1579 flags: 0x407

npu_mask: 0x1 DMAC: 5c:5a:c7:ff:78:84

Load distribution: 0 (refcount 2)

Hash  OK  Interface                 Address

0     Y   recursive                 23481/0

Soluzione

Come descritto in questo documento, la soluzione per un'azione non corretta dell'etichetta dell'etichetta più in alto non scaricata da record di risorse in linea con lo stesso valore di RD è configurare la disabilitazione della condivisione di crittografia. Questa configurazione è obbligatoria in questo particolare scenario e impone l'allocazione di risorse hardware separate per ogni prefisso che garantisce l'esecuzione corretta dell'azione e dell'inoltro dell'etichetta nel nodo di record di risorse in linea.

Prima del commit della configurazione, è necessario valutare l'utilizzo delle risorse disponibili per anticipare le condizioni delle risorse dopo il commit del comando. Per verificare e confermare l'utilizzo effettivo delle risorse, è possibile utilizzare i seguenti comandi:

show controllers npu resources all location all

show controllers fia diagshell 0 "diag alloc all" location all

Nota: Con l'ID bug Cisco CSCvw20873 - Ottimizzazione del percorso LSP (label swap) L3VPN - viene introdotta un'ottimizzazione sulle risorse consumate e allocate con la disabilitazione della condivisione dell'encap cef configurata.