cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
4047
Views
0
Helpful
8
Replies

ASR9k- How to check current exact number of IPv4 prefix count and MPLS label usage against the chassis limit?

Won Lee
Level 1
Level 1

Hi Cisco,

It has been known that ASR9k resource mgmt is not simple as of 7600s but, we are monitoring closely the resource usage for planning aspect and it is required to know 'exact' count of MPLS/IPv4/v6 current count, and approximately, how much room available to be added for growth. Below 3 cmds are what I know (lab equipment) but need help to interpret it correct. Any other cmds that can also to use?

 

sh mpls label table sum:

Application                  Count  
---------------------------- -------
LSD                          4
LDP:Active                   118
BGP-VPNv4:bgp-default        8
---------------------------- -------
TOTAL                        130     <<<<<<< is this correct count total to use?

sh cef resource sum:

Red/Green/Yellow <<<<< does not help us to plan how close to the limit.. to bogus.

sh cef platform resource location 0/0/CPU0 (What items indicates what??)

RP/0/RSP0/CPU0:Router#sh cef platform resource location 0/0/CPU0 
        Node: 0/0/CPU0
----------------------------------------------------------------
RPF_STRICT usage is same on all NPs

NP: 0  struct 9: RPF_STRICT      (maps to ucode stru = 15)

Used Entries: 0 Max Entries: 65536 
 -------------------------------------------------------------

IPV4_LEAF_P usage is same on all NPs

NP: 0  struct 23: IPV4_LEAF_P     (maps to ucode stru = 54)

Used Entries: 550 Max Entries: 1048576 
 -------------------------------------------------------------

IPV6_LEAF_P usage is same on all NPs

NP: 0  struct 24: IPV6_LEAF_P     (maps to ucode stru = 55)

Used Entries: 102 Max Entries: 524288 
 -------------------------------------------------------------

IP_LEAF usage is same on all NPs

NP: 0  struct 4: IP_LEAF         (maps to ucode stru = 8)

Used Entries: 645 Max Entries: 1703936 
 -------------------------------------------------------------

TX_ADJ usage is same on all NPs

NP: 0  struct 12: TX_ADJ          (maps to ucode stru = 8)

Used Entries: 645 Max Entries: 1703936 
 -------------------------------------------------------------

NR_LDI usage is same on all NPs

NP: 0  struct 7: NR_LDI          (maps to ucode stru = 8)

Used Entries: 645 Max Entries: 1703936 

 

Cheers,

-Won

intopian@gmail.com

 

 

8 Replies 8

xthuijs
Cisco Employee
Cisco Employee

hi Won,

also ref the asr9000 route scale architecture for more detail, but the things to focus on are the following:

 

with the show cef sum loc X you get a quick shot view of things.

You dont have to do that for each and every location as the full forwrding table is present in ALL linecards regardless of whether they need it or not (except for when one runs SVD/selective vrf download which is disabled by default in 43 for ASr9000).

In an Mtrie architecture, it looks like a tree with a root, branches and yeah leafs as the final part to get from the trunk to the tip/end of the "tree" (or trie :). so a forwarding leaf provides us that structural detail to complete the forwarding.

this forwarding is completed with an "adjacency" that provides us the "layer 2" specifics such as vlan, mac headers and all that.

The label summary as to what is allocated locally (that is more important then the full forwarding table) and the routing/forwarding table size is what you want to be looking at (show route summary).

In the end, the show cef and show label summar (for local labels) is something you want to monitor.

Mind you that the 7600 used a finite resource like a TCAM for forwarding whereas the a9k uses RLDRAM for search memory and on tyhpoon cards 2 separate peices for L2 (mac) and L3 (routes) (where shared on Trident cards).

cheers

xander

Thanks Xander for the explantion! Could you clarify a bit more for my understanding?  

 

1. For the max MPLS Label limit of 256k, does the number refers the total label generated by 'local' router only (LDP+BGP for VRF)? or, does it also includes the labels received from PE (BGP per-ce label)?

 

2. For the max route/path limit, Your suggestion is to use 'sh route sum' to get the route number statistic and compare with the max limit?

 

 

Regards,

-Won

Hi Won,

correct,for trident it maxes out at 128k in the l3xl profile; this is for local labels only.

that is why you probably need per-vrf or per-ce label assignment in l3vpn to stay within the limits. typhoon has access to the full label scale.

received labels do not count against this 128k

and correct too, show route summary is very easy to use for that purpose.

regards

xander

Thanks Xander,

I am a bit confused regarding the MPLS Label limit per the Trident LC, and puzzling to understand what I am seeing from my device which critical to me to clear on this.

The mpls label limit of 128k per Trident LC with L3xl profile, counting only the locally generated labels but 'sh mpls label table sum' shows the label count summary which seems includes all remove BGP VPN labels. Is there any other cmd to use to display the locally generated labels, so to use againt the LC limit? This is critical for my network resource planning. 

RP/0/RSP0/CPU0:pop3-asr2#sh mpls label table sum
 Application                  Count 
---------------------------- -------
LSD                          4
L2VPN                        2111
LDP:Active                   58
BGP-VPNv4:bgp-default        180059
---------------------------- -------
TOTAL                        182232

 

 

In the above snapshot, all of the VPNv4 BGP labels from a remote PE.

 

Thanks again.

 

Better! it's 256k in trident with l3xl in current going releases, so you have some room here, but your per-prefix allocation in bgp vpnv4 (vrf per prefix label alloc) is going to bite you soon if the number of routes/vrf's are going to increase.

would recommend applying a label allocation policy and/or resort to per-vrf label assignment.

 

cheers

xander

1. how about in 'l3' profile with Trident, but not l3xl? does it differ?

2. I am still not clear what the mpls label limit applies... does it count the remote PE advertised Label or not? the cmd 'sh mpls label table sum' display including the remote PE generated labels as well, therefore i can use it against the limit count of 128k or 256k. any other cmd available to see only the local PE generated route?

I may not understanding correctly...

Thanks,

-won 

 

 

CORRECTION:

 therefore i can NOT use it against the limit count of 128k or 256k. 

 

-sorry.

the scale profile should not matter, but if you are running or using the device in a layer 3 environment, you really want to use the l3xl profile because of the subtree and interface scale uppings it has.

you could use the following trick to find out the local label assignment:

show bgp vpnv4 unicast vrf RED | i 0.0.0.0 | util wc -l
Mon Feb  9 08:37:03.910 EST
        3


from this vrf:

RP/0/RSP0/CPU0:A9K-TOP#show bgp vpnv4 unicast vrf RED
   Network            Next Hop            Metric LocPrf Weight Path
Route Distinguisher: 8.8.8.8:0 (default for vrf RED)
*> 1.2.3.4/32         0.0.0.0                  0         32768 ?
*> 3.4.5.0/24         0.0.0.0                  0         32768 ?
*> 111.111.111.0/24   0.0.0.0                  0         32768 ?

*>i111.111.111.111/32 1.1.1.1                  0    100      0 ?
*>i212.1.2.3/32       1.1.1.1                  0    100      0 ?
*>i222.1.1.1/32       1.1.1.1                  0    100      0 ?

Processed 6 prefixes, 6 paths

you could also look at the

show mpls label table application bgp-vpn-ipv4 det

and count but exclude all the prefixes that have an assigned RD (which are remote received).

I'll see if there is a more simple command to use.

cheers

xander