Contenu

Introduction

Informations générales

Problème

Scénario 1. RR et PE en ligne avec valeur RD distincte

Scénario 2. RR et PE en ligne avec la même valeur RD

Scénario 3. RR et PE en ligne avec la même valeur RD et 'cef encap-share disable' configurés

Solution

Introduction

Ce document décrit le comportement de Cisco Systems Network Convergence System (NCS) 540, utilisé en tant que Border Gateway Protocol (BGP) VPNv4 in-line Route Reflector (RR) et Provider Edge (PE).

Informations générales

Ce document se concentre sur le comportement de NCS 540 tel que vérifié dans un environnement de travaux pratiques avec la version 7.3.1 du logiciel Cisco IOS® XR. le comportement décrit dans ce document s'applique à toutes les plates-formes et versions logicielles NCS5500 ou NCS500 basées sur DNX.

Problème

Considérez le scénario où NCS540 est configuré avec une instance VRF (Virtual Routing and Forwarding) et utilise la même valeur RD (Route-Distinguisher) que celle utilisée par les noeuds clients RR PE distants. Lorsqu'elle est utilisée en tant que rôle RR et PE en ligne et configurée avec la même valeur RD que les noeuds client PE RR distants, l'étiquette la plus élevée n'est pas affichée avant le transfert, ce qui conduit à une perte de paquets au niveau du PE de sortie.

Scénario 1. RR et PE en ligne avec valeur RD distincte

L'image montre le scénario du périphérique en cours de test (DUT) configuré en tant que RR et PE en ligne VPNv4 BGP avec une valeur RD distincte pour VRF vrf1 que celle utilisée par les autres noeuds PE.

Image 1 - DUT - RR et PE en ligne avec une valeur RD distincte.

La connectivité IP entre le PE d'entrée (IP 10.51.232.21) et le PE de sortie (10.51.232.145) dans VRF vrf1 est établie avec des paquets transférés avec succès entre les noeuds PE, comme le montrent les résultats des commandes Ping et 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 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

L'DUT est un RR et un PE VPNv4 en ligne BGP avec VRF configuré localement, mais qui utilise une valeur RD distincte (65000:104) que celle utilisée par les noeuds client RR PE (65000:104830). Comme le montrent les résultats, le DUT importe toutes les routes et échange les étiquettes VPNv4 en conséquence :

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>

Comme référence supplémentaire dans le scénario actuel de RR et PE en ligne qui utilise une valeur RD distincte, la sortie complète du préfixe 10.51.232.145/32 telle qu'elle a été reçue du noeud EGRESS_PE est affichée :

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

Les paquets provenant d'INGRESS_PE (10.51.232.21) et destinés à EGRESS PE (10.51.232.145) sont commutés par étiquette et sur l'étiquette DUT supérieure {24017} échangés par {23481 2400 8} selon les détails de transfert programmés :

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

À P-NODE, avec Netflow configuré pour correspondre au trafic d'entrée provenant du noeud INGRESS_PE, la pile d'étiquettes attendue {23481 24008} est observée comme indiqué dans le résultat du moniteur de flux :

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>

Scénario 2. RR et PE en ligne avec la même valeur RD

L'image montre le scénario problématique avec DUT configuré en tant que RR et PE en ligne VPNv4 BGP, mais maintenant configuré avec la même valeur RD pour VRF vrf1 - 65000:10430 - que les autres noeuds PE.

Image 2 - DUT - RR en ligne et PE avec la même valeur RD.

Dans ce scénario, la connectivité IP entre le PE d'entrée (IP 10.51.232.21) et le PE de sortie (10.51.232.145) dans VRF vrf1 échoue, comme indiqué dans les résultats des commandes Ping et 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>

Chez DUT, l'origine du problème n'est pas clairement perçue à partir des sorties BGP ou de transfert programmé, toutes étant considérées comme prévues :

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>

Comme dans la section précédente et comme référence supplémentaire dans le présent scénario de RR et PE en ligne utilisant la même valeur RD, la sortie complète du préfixe 10.51.232.145/32 reçue du noeud EGRESS_PE est affichée :

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

Les paquets provenant de INGRESS_PE (10.51.232.21) et destinés à EGRESS PE (10.51.232.145) sont commutés par étiquette et l'attente est qu'au DUT ces paquets ont leur étiquette supérieure {24013} échangée par {2348 1 24008} selon les détails de transfert programmés :

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

En outre, le triage sur P_NODE avec Netflow configuré pour correspondre au trafic d'entrée provenant de INGRESS_PE révèle l'origine du problème à savoir comment DUT transfère le paquet. Comme le montre le résultat affiché, l'étiquette locale 24013 n'est pas affichée par le DUT avant de transmettre le paquet. Par conséquent, P_NODE reçoit une trame MPLS empilée à trois étiquettes {23481 24008 24013} au lieu de la trame MPLS empilée à deux étiquettes attendue {23481 24008}. À P_NODE, l'étiquette supérieure 23481 est supprimée et le paquet transféré vers EGRESS_PE transporte en tant que pile d'étiquettes {24008 24013}, ce qui entraîne une perte de paquets à 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>

Scénario 3. RR et PE en ligne avec la même valeur RD et 'cef encap-share disable' configurés

En plus du scénario précédent, cef encap-share disable est configuré et des ressources matérielles distinctes sont allouées pour chaque préfixe.

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

L'image présente le scénario de RR et PE en ligne configurés avec la même RD et configurés avec le partage de l'encap cef désactivé.

Image 3 - DUT - RR et PE en ligne avec la même valeur RD et 'cef encap-share disable' configuré.

La connectivité IP entre le PE d'entrée (IP 10.51.232.21) et le PE de sortie (10.51.232.145) dans VRF vrf1 est restaurée avec des paquets une fois de plus transférés entre les noeuds PE, comme le montrent les sorties des commandes Ping et 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

À P_NODE, la sortie Netflow révèle que DUT transfère maintenant le paquet avec la pile d'étiquettes attendue {23481 24008}. P_NODE supprime l'étiquette supérieure 23481 et transfère le paquet vers le noeud EGRESS_PE avec la pile d'étiquettes {24008} que EGRESS_PE est en mesure de mettre en correspondance et de transférer avec succès le paquet encapsulé vers sa destination finale dans 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>

Avec la configuration cef encap-share disable, des ressources matérielles supplémentaires sont allouées pour chaque préfixe, et les informations de transfert requises sont en place au sein du DUT pour transférer correctement les paquets dans ce scénario particulier de RR en ligne avec la même valeur RD. Dans le but de mettre en évidence la distinction en ce qui concerne les détails de transfert programmés, référez-vous aux deux sorties illustrées de la commande show cef vrf vrf1 10.51.232.145/32 hardware egress location 0/RP0/CPU0 et notez les informations supplémentaires incluses lorsque cef encap-share disable est configuré.

Comme le montre le scénario de RR et PE en ligne avec la même valeur RD mais sans 'cef encap-share disable' configuré (par défaut) :

!

! --- 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

Comme le montre le scénario de RR et PE en ligne avec la même valeur RD et cef encap-share disable configuré :

!

! --- 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

Solution

Comme décrit tout au long de ce document, la solution pour une action d'étiquette incorrecte de l'étiquette la plus haute non appariée par RR en ligne avec la même valeur RD est de configurer cef encap-share disable. Cette configuration est obligatoire dans ce scénario particulier et impose l'allocation de ressources matérielles distinctes pour chaque préfixe, ce qui garantit que l'action et le transfert appropriés de l'étiquette se produisent au niveau du noeud RR en ligne.

Avant la validation de la configuration, l'utilisation des ressources disponibles doit être évaluée pour anticiper la condition des ressources une fois la commande validée. Pour vérifier et confirmer la consommation réelle des ressources, ces commandes peuvent être utilisées :

show controllers npu resources all location all

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

Note: Avec l'ID de bogue Cisco CSCvw20873 - L3VPN LSP path (label swap) optimisation - introduit une optimisation sur les ressources consommées et allouées avec cef encap-share disable configuré.