SRv6 Flexible Algorithms with IS-IS
Flex-Algo is an SRv6 feature that:
-
enables custom path computation within an IGP such as IS-IS by associating specific metric types and constraints, rather than relying solely on the default IGP metric
-
allows logical network segmentation by distributing multiple, parallel routing topologies through a standard IGP protocol such as IS-IS, and
-
supports adaptive, traffic-engineered paths by associating prefix-SIDs with each algorithm to meet specific operational requirements.
You can identify each Flex-Algo by a numeric value from 128 to 255, and configure it through a Flex-Algo Definition.
Flex-Algo definition
A Flex-Algo definition (FAD) is a mechanism that combines a calculation type, a metric type, and a set of constraints. IS-IS advertises this definition using a Flex-Algo definition sub-TLV (type, length, value).
Flex-Algo definition Sub-TLV Format
The Flex-Algo definition Sub-TLV format includes these fields.
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length |Flex-Algorithm | Metric-Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Calc-Type | Priority | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sub-TLVs | + + | ... | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Field |
Description |
|---|---|
|
Type |
Specifies the sub-TLV type. |
|
Length |
Specifies the size of the data that follows the Type and Length fields, including any sub-TLVs. Varies based on the sub-TLVs included. |
|
Flex-Algorithm |
Represents the Flex-Algo number with a single-octet value ranging from 128 to 255. |
|
Metric-type |
Identifies the metric used for path calculation, such as IGP-metric or delay-metric. |
|
Calc-type |
Defines the calculation logic with a value from 0 to 127. |
|
Priority |
Indicates the advertisement priority with a value between 0 and 255. |
|
Sub-TLVs |
Optional; used to specify additional attributes and constraints. |
Key concepts of SRv6 Flex-Algo
-
Algorithm: An algorithm defines how IGP computes the best path. Routers advertise the support for the algorithm as a node capability. Routers also advertise prefix-SIDs with an algorithm value, so each SID is tightly coupled with its algorithm."An algorithm is a one octet value. You can reserve values from 128 to 255 for Flex-Algo representation.
-
Metric types: Metric types are values used by routing protocols to evaluate and select the best network paths. They help determine the preferred route when multiple paths exist to a destination. Each metric type measures specific network characteristics, which may include IGP-metric and delay-metric.
-
Constraints: Constraints are rules or conditions that affect which network paths are considered valid or preferred. If you set constraints, you can control route selection based on specific requirements or policies. Constraints can be set to include (require) or exclude (avoid) specific link-affinities in the path computation. Alternatively, constraints can instruct the routing algorithm to avoid using multiple links from the same SRLG.
Feedback