UFT profiles

The processors in 7220 IXR-D1, 7220 IXR-D2/D3, and 7220-IXR H2/H3 systems use shared memory tables known as Unified Forwarding Tables (UFTs). With UFTs, the processor has a set of shared banks that can be partitioned to support the following types of forwarding table entries:

  • Learned MAC addresses

  • IP host entries

  • IP longest-prefix-match routes

The default settings for the shared bank allocations can be changed by modifying the UFT profile for the system.

Shared bank partitioning for SR Linux systems

The number of shared banks, the size of each shared bank, and the way they can be divided depend on the SR Linux system, as described in Shared bank configuration for SR Linux systems.

Table 1. Shared bank configuration for SR Linux systems

SR Linux system

Shared bank configuration

7220 IXR-D1

6 shared banks

16K single-wide/SW or 8K double-wide/DW entries per shared bank

  • 1 SW entry can store 1 IPv4 host entry or 1 MAC address.

  • 1 DW entry can store 1 IPv6 host entry.

  • If a bank has any DW entry, it is forced into DW mode.

If ALPM is enabled, it requires 4 shared banks; each of the remaining banks can be allocated to either IP host entries or MAC addresses.

7220 IXR-D2/D3

8 shared banks

32K single-wide of 16K double-wide entries per shared bank

  • 1 SW entry can store 1 IPv4 host entry or 1 MAC address.

  • 1 DW entry can store 1 IPv6 host entry.

  • If a bank has any DW entry, it is forced into DW mode.

ALPM can be enabled in 8-bank (high-scale) mode; each of the remaining banks, if there are any, can be allocated to either IP host entries or MAC addresses.

7220 IXR-H2/H3

8 shared banks

8K entries per shared bank

ALPM is enabled by default. ALPM uses all of the shared banks.

LPM table partitioning

IP FIB scale depends significantly on the number of UFT banks used for ALPM, but also depends on the partitioning of the hardware LPM table, which is an always-present TCAM + SRAM table that stores IP LPM route entries.

When ALPM is not active, IP FIB scale is entirely determined by the size and partitioning of this table. When ALPM is active, the hardware LPM table is used as a first-search table into the ALPM banks, so it also plays an important role.

If the ipv6-128bit-lpm-entries parameter is configured to be greater than zero, the hardware LPM table is partitioned into two sub-blocks: a single-wide sub-block and a double-wide sub-block:

  • The single-wide sub-block can store IPv4 routes (each consuming half of a single-wide entry) and IPv6 routes up to /64 prefix length (each consuming a single-wide entry).

  • The size of the double-wide sub-block is controlled by the ipv6-128bit-lpm-entries parameter, and this sub-block can store IPv6 routes up to /128 prefix length (each consuming a double-wide entry).

    It can also store IPv4 routes and IPv6 routes up to /64 prefix length; inside the double-wide sub-block, IPv4 routes consume half of a single-wide entry, and IPv6 routes up to /64 prefix length require a double-wide entry.

Default UFT allocations for SR Linux systems

The default UFT shared bank allocations and hardware LPM table parameters for each SR Linux system are summarized in Default UFT allocations and hardware LPM table parameters.

Table 2. Default UFT allocations and hardware LPM table parameters

SR Linux system

Default UFT allocations and L3DEFIP table parameters

7220 IXR-D1

Extra IP host shared banks: 3

Extra MAC address shared banks: 3

ALPM: disabled

ipv6-128bit-lpm-entries: 1024

7220 IXR-D2/D3

Extra IP host shared banks: 4

Extra MAC address shared banks: 4

ALPM: disabled

ipv6-128bit-lpm-entries: 2048

7220 IXR-H2/H3

ALPM: enabled

ipv6-128bit-lpm-entries: 512

Configuring a UFT profile

You can change the settings for the UFT shared bank allocations and hardware LPM table parameters from the defaults listed in Default UFT allocations and hardware LPM table parameters by modifying the system UFT profile.

To change the settings for the UFT shared bank allocations and hardware LPM table parameters from the defaults, modify the system UFT profile as shown in the following example.

This example configures a UFT profile for a 7220 IXR-D1 system. The UFT profile enables ALPM and configures 32K extra IP host entries from the UFT shared banks.

--{ * candidate shared default }--[  ]--
# info platform resource-management unified-forwarding-resources
    platform {
        resource-management {
            unified-forwarding-resources {
                alpm enabled
                requested-extra-ip-host-entries 32768
                ipv6-128bit-lpm-entries 1024
            }
        }
    }
Note:

UFT profile configuration changes do not take effect immediately when the changes are committed; they take effect the next time XDP is restarted.

Displaying UFT profile information

Use the info from state command to display the UFT profile, including the extra number of host entries and MAC address entries allocated from UFT shared banks.

--{ * candidate shared default }--[  ]--
# info from state platform resource-management unified-forwarding-resources
    platform {
        resource-management {
            unified-forwarding-resources {
                xdp-restart-required true
                alpm enabled
                requested-extra-ip-host-entries 32768
                allocated-extra-ip-host-entries 32768
                allocated-extra-mac-entries 0
                ipv6-128bit-lpm-entries 1024
            }
        }
    }

In the example, the xdp-restart-required leaf is shown as true if a change has been committed to one or more of the configurable values in the unified-forwarding-resources container, but XDP has not yet been restarted. Until XDP is restarted, the operational values are still the values initialized at the last XDP restart.