Description

This article provides steps to troubleshoot the problem where we see the LPM table full brcm errors in the logs :

Jun 28 11:13:24 qfx5100 fpc0 brcm_rt_ip_uc_lpm_install:1419(LPM route add failed) Reason : Table full unit 0

Jun 28 11:13:24 qfx5100 fpc0 brcm_rt_ip_uc_entry_install:1275brcm_rt_ip_uc_entry_install Error: lpm ip route install failed vrf 1 ip abcd:abcd:abcd::/xx nh-swidx xxxx nh-hwidx xxxxxx

Symptoms

  • If we see the LPM table full messages it means that hardware table has reached its capacity and no further routes will be added in the pfe.
Jun 28 11:13:24 qfx5100 fpc0 brcm_rt_ip_uc_lpm_install:1419(LPM route add failed) Reason : Table full unit 0

Jun 28 11:13:24 qfx5100 fpc0 brcm_rt_ip_uc_entry_install:1275brcm_rt_ip_uc_entry_install Error: lpm ip route install failed vrf 1 ip abcd:abcd:abcd::/xx nh-swidx xxxx nh-hwidx xxxxxx

 

  • This issue may result into routes not installed in the pfe for the concerned nhid and may result into connectivity issues.

Solution

  1. If this issue is observed then first we need to check if the LPM table is indeed full by the cli command "show pfe route summary hw ".
  2. Based on this if we see the % free space for any of the entries IPV4/IPV6/Host/Multicast as "0" or very low % available then the error will be seen.
  3. The next step is to identify from which protocol we are installing more routes in the pfe. For this we need to check the output of "show route summary" which will provide us the information about which protocol has a high active routes. Usually this problem is seen if we are getting bgp routes (internet routes) due to any policy error in the upstream routers.
  4. After this step we need to identify the source of these route advertisement and based on that we need to modify the policy.
  5. Usually this issue might be seen if there is some bgp policy changes in the network routers and we are receiving a lot of unintended internet routes on the device.
  6. Also if we observe this error message on newly deployed device and the route scale is higher which is causing the pfe table to get filled then we may need to change the LPM profile based on the requirement.
  7. A possible solution is to allocate more space for LPM entries in switch's FIB TCAM table via "set chassis forwarding-option" command. See the example below.

Example

The example below shows a situation where more entires were needed in FIB TCAM for LPM routes, but more entries were allocated to IPv4 Host (/32) routes. Changing the switch's forwarding option to "lpm-profile" allocates more entries to LPM routes and resolves this issue:

1) Following command shows only 12K entries for routes (LPM: longest match prefixes) were available at the time of the problem

user@switch show pfe route summary hw        
Dec 04 18:28:42
 
Slot 0
 
Unit: 0
Profile active: l2-profile-three <==== current profile
Type      Max   Used   Free   % free
----------------------------------------------------
IPv4 Host   147456  300   147136  99.78 <==== un-utilized space
IPv4 LPM    12288  12215  63    0.51 <==== where space is needed
IPv4 Mcast   73728  0    73568  99.78
 
IPv6 Host   73728  10    73568  99.78
IPv6 LPM(< 64) 6144   5    31    0.50
IPv6 LPM(> 64) 1024   0    1024   100.00
IPv6 Mcast   36864  0    36784  99.78
 
{master:0}

2) The chassis forwarding-option needs to be changed to “lpm-profile” to give 128K entries for routing table

user@switch# set chassis forwarding-options ?
Possible completions:
+ apply-groups         Groups from which to inherit configuration data
+ apply-groups-except  Don't inherit configuration data from these groups
> l2-profile-one       MAC: 288K L3-host: 16K LPM: 16K.  (restarts PFE automatically once the UFT profile is set)
> l2-profile-three     MAC: 160K L3-host: 144K LPM: 16K. (restarts PFE automatically once the UFT profile is set)
> l2-profile-two       MAC: 224K L3-host: 80K LPM: 16K.  (restarts PFE automatically once the UFT profile is set)
> l3-profile           MAC: 96K L3-host: 208K LPM: 16K.  (restarts PFE automatically once the UFT profile is set)
> lpm-profile          MAC: 32K L3-host: 16K LPM: 128K.  (restarts PFE automatically once the UFT profile is set)
{master:0}[edit]

user@switch# set chassis forwarding-options lpm-profile    

{master:0}[edit]
user@switch# commit 
configuration check succeeds
commit complete

{master:0}[edit]
user@switch# 

3) After executing above command, profile is changed to “lpm-profile” and FIB TCAM has 128K entries for routes

user@switch> show chassis forwarding-options all-members 
localre:
--------------------------------------------------------------------------
UFT Configuration:
lpm-profile. <==== current profile changed
prefix-65-127 = enable
--------------Bank details for various types of entries------------------
Entry type                         Dedicated Bank Size(K)     Shared Bank Size(K)     
L2(mac)                            32                         64 * num shared banks
L3(unicast & multicast)            16                         64 * num shared banks
Exact Match                        0                          0 * num shared banks

{master:0}

user@switch> show pfe route summary hw 

Slot 0

Unit: 0
Profile active: lpm-profile
Type            Max       Used      Free      % free
----------------------------------------------------
IPv4 Host       16384     18        16354     99.82
IPv4 LPM        131072    7         131065    99.99 <=== 128K entries for routes
IPv4 Mcast      8192      0         8177      99.82

IPv6 Host       8192      6         8177      99.82
IPv6 LPM(< 64)  16384     6         16378     99.96
IPv6 LPM(> 64)  16384     0         16384     100.00
IPv6 Mcast      4096      0         4089      99.83

{master:0}
user@switch>  

Note: Above command will restart PFE and will impact the traffic.

RELATED DOCS :

https://supportportal.juniper.net/s/article/QFX-How-to-determine-the-space-utilized-by-a-prefix-in-UFT-in-QFX5100?language=en_US

https://www.juniper.net/documentation/us/en/software/junos/multicast-l2/topics/topic-map/layer-2-forwarding-tables.html

Modification History

2025-01-20 : Article Created

2025-09-26 : Modified the categories. Issue is also observed on EX switches.