diff options
author | Renato Westphal <renato@opensourcerouting.org> | 2020-08-21 00:55:42 +0200 |
---|---|---|
committer | Renato Westphal <renato@opensourcerouting.org> | 2020-10-14 21:27:37 +0200 |
commit | c951ee6eeeace451f89bfafbbf2ce9e9d554c22f (patch) | |
tree | cf49bde9d5a593120c7c900b925458c95624a856 /isisd/isis_circuit.h | |
parent | yang, isisd: add TI-LFA YANG nodes and corresponding skeleton callbacks (diff) | |
download | frr-c951ee6eeeace451f89bfafbbf2ce9e9d554c22f.tar.xz frr-c951ee6eeeace451f89bfafbbf2ce9e9d554c22f.zip |
isisd: add support for Topology Independent LFA (TI-LFA)
TI-LFA is a modern fast-reroute (FRR) solution that leverages Segment
Routing to pre-compute backup nexthops for all destinations in the
network, helping to reduce traffic restoration times whenever a
failure occurs. The backup nexthops are expected to be installed
in the FIB so that they can be activated as soon as a failure
is detected, making sub-50ms recovery possible (assuming an
hierarchical FIB).
TI-LFA is a huge step forward compared to prior IP-FRR solutions,
like classic LFA and Remote LFA, as it guarantees 100% coverage
for all destinations. This is possible thanks to the source routing
capabilities of SR, which allows the backup nexthops to steer traffic
around the failures (using as many SIDs as necessary). In addition
to that, the repair paths always follow the post-convergence SPF
tree, which prevents transient congestions and suboptimal routing
from happening.
Deploying TI-LFA is very simple as it only requires a single
configuration command for each interface that needs to be protected
(both link protection and node protection are available). In addition
to IPv4 and IPv6 routes, SR Prefix-SIDs and Adj-SIDs are also
protected by the backup nexthops computed by the TI-LFA algorithms.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Diffstat (limited to 'isisd/isis_circuit.h')
-rw-r--r-- | isisd/isis_circuit.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/isisd/isis_circuit.h b/isisd/isis_circuit.h index 48afd24b6..b4b03bf6b 100644 --- a/isisd/isis_circuit.h +++ b/isisd/isis_circuit.h @@ -141,6 +141,8 @@ struct isis_circuit { bool disable_threeway_adj; struct bfd_info *bfd_info; struct ldp_sync_info *ldp_sync_info; + bool tilfa_protection[ISIS_LEVELS]; + bool tilfa_node_protection[ISIS_LEVELS]; /* * Counters as in 10589--11.2.5.9 */ |