Configuring SRv6 Flex-Algo

Flex-Algo is an algorithm that allows an IGP to calculate eligible paths automatically based on the link cost, delay, or TE constraint to flexibly meet TE requirements.

Usage Scenario

Traditionally, IGPs can use only the SPF algorithm to calculate the shortest paths to destination addresses based on link costs. As the SPF algorithm is fixed and cannot be adjusted by users, the optimal paths cannot be calculated according to users' diverse requirements, such as the requirement for traffic forwarding along the lowest-delay path or without passing through certain links.

On a network, constraints used for path calculation may be different. For example, as autonomous driving requires an ultra-low delay, an IGP needs to use delay as the constraint to calculate paths on such a network. Another constraint that needs to be considered is cost, so some links with high costs need to be excluded in path calculation. These constraints may also be combined.

To make path calculation more flexible, users may want to customize IGP route calculation algorithms to meet their varying requirements. They can define an algorithm value to identify a fixed algorithm. When all devices on a network use the same algorithm, their calculation results are also the same, preventing loops. Since users, not standards organizations, are the ones to define these algorithms, they are called Flex-Algos.

SRv6 Flex-Algo is implemented as follows:

  1. Define Flex-Algos: You can select one or two devices in the same IGP domain to configure flexible algorithm definitions (FADs). To improve reliability, you are advised to select two devices. A FAD is generally represented by a 3-tuple: Metric-Type, Calc-Type, and Constraints.

    Because each user can individually define their Flex-Algos, the same Flex-Algo running on devices in the same IGP domain may have different FADs. To ensure that the path calculated using a specific Flex-Algo is loop-free, one FAD must be preferentially selected and advertised in the domain.

    The selection rules are as follows:
    1. In the advertisement domain of FADs, the FAD with the highest priority is preferred.
    2. If the FADs advertised in an IS-IS domain have the same priority, the FAD generated by the device with the largest system ID is preferred.
  2. Define Flex-Algo link attributes: The Flex-Algo link attributes are used by the IGP to calculate Flex-Algo-based SRv6 BE paths. The IGP selects Flex-Algo links based on the corresponding FAD.
  3. Enable the IGP to advertise FADs and Flex-Algo link attributes: After Flex-Algos are defined on a device, the device uses the IGP to advertise the corresponding FADs and related calculation rules through the FAD Sub-TLV. In addition, after TE is enabled for the IGP, the IGP automatically floods the Flex-Algo link attributes in the IGP domain.
  4. Enable the IGP to advertise the mappings between locators and Flex-Algos: When configuring locators, you can associate locators with Flex-Algos. The IGP can then advertise the Flex-Algos and associated locators through the SRv6 Locator TLV.

    A Flex-Algo represents a user's forwarding path requirements. When SRv6 uses the IGP to calculate paths, it selects Flex-Algo links based on the Flex-Algo information carried in locator routes and runs Flex-Algos to calculate SRv6 BE paths that meet different requirements.

  5. Configure services supported by SRv6 Flex-Algo.

Pre-configuration Tasks

Before configuring SRv6 Flex-Algo, complete the following tasks:

  • Configure a link layer protocol.

  • Configure IP addresses for interfaces to ensure that neighboring devices are reachable at the network layer.

Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
< Previous topic Next topic >