summaryrefslogtreecommitdiff
path: root/isisd/isis_nb.h
diff options
context:
space:
mode:
authorFredi Raspall <fredi@voltanet.io>2021-04-23 18:33:43 +0200
committerFredi Raspall <fredi@voltanet.io>2021-05-03 17:27:37 +0200
commitce4eccfa800fccb461ac99ec3b6f12ba190c185d (patch)
treeae1e115b4d221e5f86cc1339328981759fb74c02 /isisd/isis_nb.h
parentf71e1ff6a98d0e244c7da11d870d14e31b517811 (diff)
isisd: link protection optional fallback in ti-lfa
The current implementation of TI-LFA computes link-protecting repair paths (even when node protection is enabled) to have repair paths to all destinations when no node-protecting repair has been found. This may be desired or not. E.g. the link-protecting paths may use the protected node and be, therefore, useless if the node fails. Also, computing link-protecting repairs incurs extra calculations. With this patch, when node protection is enabled, link protecting repair paths are only computed if "link-fallback" is specified in the configuration, on a per interface and IS-IS level. Signed-off-by: Fredi Raspall <fredi@voltanet.io>
Diffstat (limited to 'isisd/isis_nb.h')
-rw-r--r--isisd/isis_nb.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/isisd/isis_nb.h b/isisd/isis_nb.h
index 94aa00c975..0c2f7b6b7e 100644
--- a/isisd/isis_nb.h
+++ b/isisd/isis_nb.h
@@ -319,6 +319,8 @@ int lib_interface_isis_fast_reroute_level_1_ti_lfa_enable_modify(
struct nb_cb_modify_args *args);
int lib_interface_isis_fast_reroute_level_1_ti_lfa_node_protection_modify(
struct nb_cb_modify_args *args);
+int lib_interface_isis_fast_reroute_level_1_ti_lfa_link_fallback_modify(
+ struct nb_cb_modify_args *args);
int lib_interface_isis_fast_reroute_level_2_lfa_enable_modify(
struct nb_cb_modify_args *args);
int lib_interface_isis_fast_reroute_level_2_lfa_exclude_interface_create(
@@ -335,6 +337,8 @@ int lib_interface_isis_fast_reroute_level_2_ti_lfa_enable_modify(
struct nb_cb_modify_args *args);
int lib_interface_isis_fast_reroute_level_2_ti_lfa_node_protection_modify(
struct nb_cb_modify_args *args);
+int lib_interface_isis_fast_reroute_level_2_ti_lfa_link_fallback_modify(
+ struct nb_cb_modify_args *args);
struct yang_data *
lib_interface_state_isis_get_elem(struct nb_cb_get_elem_args *args);
const void *lib_interface_state_isis_adjacencies_adjacency_get_next(