summaryrefslogtreecommitdiff
path: root/interface-definitions
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@vyos.io>2025-09-09 09:18:24 -0500
committerGitHub <noreply@github.com>2025-09-09 09:18:24 -0500
commit1124d3f9aa0531489bc8f622143afcb6116e8f47 (patch)
treebb13b20c096bbeb9c1d7b38f8ce7f93f6e73d623 /interface-definitions
parent151719295965fdb834cf507a3feb44fa80798fd8 (diff)
parent5098fa8eb575afed317207c325f9126d3e0b32ae (diff)
downloadvyos-1x-1124d3f9aa0531489bc8f622143afcb6116e8f47.tar.gz
vyos-1x-1124d3f9aa0531489bc8f622143afcb6116e8f47.zip
Merge pull request #4682 from aapostoliuk/T7722-current
isis: T7722: Added interface fast-reroute configuration commands
Diffstat (limited to 'interface-definitions')
-rw-r--r--interface-definitions/include/isis/exclude-interface.xml.i10
-rw-r--r--interface-definitions/include/isis/frr-maxmetric.xml.i14
-rw-r--r--interface-definitions/include/isis/node-protection.xml.i15
-rw-r--r--interface-definitions/include/isis/protocol-common-config.xml.i90
-rw-r--r--interface-definitions/include/isis/remote_lfa_tunnel.xml.i15
5 files changed, 144 insertions, 0 deletions
diff --git a/interface-definitions/include/isis/exclude-interface.xml.i b/interface-definitions/include/isis/exclude-interface.xml.i
new file mode 100644
index 000000000..87399b43f
--- /dev/null
+++ b/interface-definitions/include/isis/exclude-interface.xml.i
@@ -0,0 +1,10 @@
+<!-- include start from isis/exclude-interface.xml.i -->
+<node name="exclude">
+ <properties>
+ <help>Exclude interfaces from fast reroute</help>
+ </properties>
+ <children>
+ #include <include/generic-interface-multi.xml.i>
+ </children>
+</node>
+<!-- include end --> \ No newline at end of file
diff --git a/interface-definitions/include/isis/frr-maxmetric.xml.i b/interface-definitions/include/isis/frr-maxmetric.xml.i
new file mode 100644
index 000000000..2e1cad19d
--- /dev/null
+++ b/interface-definitions/include/isis/frr-maxmetric.xml.i
@@ -0,0 +1,14 @@
+<!-- include start from isis/frr-maxmetric.xml.i -->
+<leafNode name="maximum-metric">
+ <properties>
+ <help>Limit remote LFA node selection within the metric</help>
+ <valueHelp>
+ <format>u32:1-16777215</format>
+ <description>Metric value</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-16777215"/>
+ </constraint>
+ </properties>
+</leafNode>
+<!-- include end --> \ No newline at end of file
diff --git a/interface-definitions/include/isis/node-protection.xml.i b/interface-definitions/include/isis/node-protection.xml.i
new file mode 100644
index 000000000..2dda81c0c
--- /dev/null
+++ b/interface-definitions/include/isis/node-protection.xml.i
@@ -0,0 +1,15 @@
+<!-- include start from isis/node-protection.xml.i -->
+<node name="node-protection">
+ <properties>
+ <help>Protect against node failures</help>
+ </properties>
+ <children>
+ <leafNode name="link-fallback">
+ <properties>
+ <help>Enable link-protection fallback</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ </children>
+</node>
+<!-- include end --> \ No newline at end of file
diff --git a/interface-definitions/include/isis/protocol-common-config.xml.i b/interface-definitions/include/isis/protocol-common-config.xml.i
index e75466457..459a048a2 100644
--- a/interface-definitions/include/isis/protocol-common-config.xml.i
+++ b/interface-definitions/include/isis/protocol-common-config.xml.i
@@ -667,6 +667,96 @@
</constraint>
</properties>
</leafNode>
+ <node name="fast-reroute">
+ <properties>
+ <help>IS-IS fast reroute</help>
+ </properties>
+ <children>
+ <node name="lfa">
+ <properties>
+ <help>Enable LFA computation</help>
+ </properties>
+ <children>
+ <node name="level-1">
+ <properties>
+ <help> Enable LFA computation for Level 1 only</help>
+ </properties>
+ <children>
+ <leafNode name="enable">
+ <properties>
+ <help>Enable LFA</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ #include <include/isis/exclude-interface.xml.i>
+ </children>
+ </node>
+ <node name="level-2">
+ <properties>
+ <help>Enable LFA computation for Level 2 only</help>
+ </properties>
+ <children>
+ <leafNode name="enable">
+ <properties>
+ <help>Enable LFA</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ #include <include/isis/exclude-interface.xml.i>
+ </children>
+ </node>
+ </children>
+ </node>
+ <node name="remote-lfa">
+ <properties>
+ <help>Enable remote LFA computation</help>
+ </properties>
+ <children>
+ <node name="level-1">
+ <properties>
+ <help> Enable remote LFA computation for Level 1 only</help>
+ </properties>
+ <children>
+ #include <include/isis/frr-maxmetric.xml.i>
+ #include <include/isis/remote_lfa_tunnel.xml.i>
+ </children>
+ </node>
+ <node name="level-2">
+ <properties>
+ <help>Enable remote LFA computation for Level 2 only</help>
+ </properties>
+ <children>
+ #include <include/isis/frr-maxmetric.xml.i>
+ #include <include/isis/remote_lfa_tunnel.xml.i>
+ </children>
+ </node>
+ </children>
+ </node>
+ <node name="ti-lfa">
+ <properties>
+ <help> Enable TI-LFA computation</help>
+ </properties>
+ <children>
+ <node name="level-1">
+ <properties>
+ <help>Enable TI-LFA computation for Level 1 only</help>
+ </properties>
+ <children>
+ #include <include/isis/node-protection.xml.i>
+ </children>
+ </node>
+ <node name="level-2">
+ <properties>
+ <help>Enable TI-LFA computation for Level 2 only</help>
+ </properties>
+ <children>
+ #include <include/isis/node-protection.xml.i>
+ </children>
+ </node>
+ </children>
+ </node>
+ </children>
+ </node>
<leafNode name="hello-padding">
<properties>
<help>Add padding to IS-IS hello packets</help>
diff --git a/interface-definitions/include/isis/remote_lfa_tunnel.xml.i b/interface-definitions/include/isis/remote_lfa_tunnel.xml.i
new file mode 100644
index 000000000..62091a5ee
--- /dev/null
+++ b/interface-definitions/include/isis/remote_lfa_tunnel.xml.i
@@ -0,0 +1,15 @@
+<!-- include start from isis/remote_lfa_tunnel.xml.i -->
+<node name="tunnel">
+ <properties>
+ <help>Enable remote LFA computation using tunnels</help>
+ </properties>
+ <children>
+ <leafNode name="mpls-ldp">
+ <properties>
+ <help>Use MPLS LDP tunnel to reach the remote LFA node</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ </children>
+</node>
+<!-- include end --> \ No newline at end of file