From f28e539ce1f029b166959c93261b6e7e229dc1a7 Mon Sep 17 00:00:00 2001 From: Erick Eckermann <44233963+Pull-eckermann@users.noreply.github.com> Date: Thu, 20 Jun 2024 16:53:47 -0300 Subject: [PATCH 1/5] Update openconfig-bfd.yang Creation of a BFD single-hop session subtree at interface level, so that BFD sessions can be created besides routing protocols, as stated in RFC-9127 (https://datatracker.ietf.org/doc/rfc9127/) --- release/models/bfd/openconfig-bfd.yang | 95 ++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) diff --git a/release/models/bfd/openconfig-bfd.yang b/release/models/bfd/openconfig-bfd.yang index 8f5041b79..b6d25eadd 100644 --- a/release/models/bfd/openconfig-bfd.yang +++ b/release/models/bfd/openconfig-bfd.yang @@ -508,6 +508,100 @@ module openconfig-bfd { uses bfd-session-microbfd-common; } + grouping bfd-interface-session-config { + description + "Configuration parameters for a BFD session on an interface."; + + leaf local-address { + type oc-inet:ip-address; + description + "The local IP address used by the system for the single-hope BFD session + specified."; + } + + leaf remote-address { + type oc-inet:ip-address; + description + "The remote IP destination that should be used by the system for + the single-hope BFD session specified."; + } + + leaf enabled { + type boolean; + description + "When this leaf is set to true then the single-hope BFD session is enabled + - if it is set to false, it is administratively disabled."; + } + + leaf demand-mode { + type boolean; + description + "When this leaf is set to true then the single-hope BFD session + is operating in demand-mode."; + } + } + + grouping bfd-interface-session-state { + // placeholder + description + "Operational state parameters relating to the single-hope BFD session + running on the interface."; + } + + grouping bfd-interface-sessions-structural { + description + "Structural grouping for BFD sessions configuration on interface + and state parameters."; + + container sessions { + description + "Parameters relating to BFD sessions associated with the interface."; + + list session { + key "local-address"; + key "remote-address"; + + description + "This list contains configuration and state parameters + relating to interface single-hope session."; + reference + "RFC5881 - Bidirectional Forwarding Detection + (BFD) for IPv4 and IPv6 (Single Hop)."; + + leaf local-address { + type leafref { + path "../config/local-address"; + } + description + "A reference to the local-address for the BFD single-hop + session"; + } + leaf remote-address { + type leafref { + path "../config/remote-address"; + } + description + "A reference to the remote-address for the BFD single-hop + session"; + } + + container config { + description + "Configuration parameters for the BFD single-hope session."; + uses bfd-interface-session-config; + } + + container state { + config false; + description + "Operational state parameters for the BFD single-hope session."; + uses bfd-interface-session-config; + uses bfd-interface-session-state; + } + } + } + } + grouping bfd-interface-microbfd-structural { description "Structural grouping for micro-bfd configuration and state @@ -650,6 +744,7 @@ module openconfig-bfd { uses oc-if:interface-ref; + uses bfd-interface-sessions-structural; uses bfd-interface-microbfd-structural; uses bfd-interface-peer-structural; } From cf99396182d953b6b1331c0093d8003215f578d2 Mon Sep 17 00:00:00 2001 From: Erick Eckermann <44233963+Pull-eckermann@users.noreply.github.com> Date: Thu, 20 Jun 2024 17:25:20 -0300 Subject: [PATCH 2/5] Update openconfig-bfd.yang Fix typo "single-hope" to "single-hop" --- release/models/bfd/openconfig-bfd.yang | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/release/models/bfd/openconfig-bfd.yang b/release/models/bfd/openconfig-bfd.yang index b6d25eadd..758d93464 100644 --- a/release/models/bfd/openconfig-bfd.yang +++ b/release/models/bfd/openconfig-bfd.yang @@ -515,7 +515,7 @@ module openconfig-bfd { leaf local-address { type oc-inet:ip-address; description - "The local IP address used by the system for the single-hope BFD session + "The local IP address used by the system for the single-hop BFD session specified."; } @@ -523,20 +523,20 @@ module openconfig-bfd { type oc-inet:ip-address; description "The remote IP destination that should be used by the system for - the single-hope BFD session specified."; + the single-hop BFD session specified."; } leaf enabled { type boolean; description - "When this leaf is set to true then the single-hope BFD session is enabled + "When this leaf is set to true then the single-hop BFD session is enabled - if it is set to false, it is administratively disabled."; } leaf demand-mode { type boolean; description - "When this leaf is set to true then the single-hope BFD session + "When this leaf is set to true then the single-hop BFD session is operating in demand-mode."; } } @@ -544,7 +544,7 @@ module openconfig-bfd { grouping bfd-interface-session-state { // placeholder description - "Operational state parameters relating to the single-hope BFD session + "Operational state parameters relating to the single-hop BFD session running on the interface."; } @@ -563,7 +563,7 @@ module openconfig-bfd { description "This list contains configuration and state parameters - relating to interface single-hope session."; + relating to interface single-hop session."; reference "RFC5881 - Bidirectional Forwarding Detection (BFD) for IPv4 and IPv6 (Single Hop)."; @@ -587,14 +587,14 @@ module openconfig-bfd { container config { description - "Configuration parameters for the BFD single-hope session."; + "Configuration parameters for the BFD single-hop session."; uses bfd-interface-session-config; } container state { config false; description - "Operational state parameters for the BFD single-hope session."; + "Operational state parameters for the BFD single-hop session."; uses bfd-interface-session-config; uses bfd-interface-session-state; } From e050d1e7228a45cb13f646a937f4b08d6ec16a6b Mon Sep 17 00:00:00 2001 From: Erick Eckermann <44233963+Pull-eckermann@users.noreply.github.com> Date: Mon, 24 Jun 2024 10:27:03 -0300 Subject: [PATCH 3/5] Update description of contatiner sessions Update description of contatiner interface/sessions to specify that these are statically configured single-hop sessions. Also changed session/config/enabled leaf to session/config/admin-down to be more especific. --- release/models/bfd/openconfig-bfd.yang | 35 +++++++++++++------------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/release/models/bfd/openconfig-bfd.yang b/release/models/bfd/openconfig-bfd.yang index 758d93464..1eaf97e32 100644 --- a/release/models/bfd/openconfig-bfd.yang +++ b/release/models/bfd/openconfig-bfd.yang @@ -109,28 +109,28 @@ module openconfig-bfd { oc-ext:catalog-organization "openconfig"; oc-ext:origin "openconfig"; - typedef bfd-session-state { + typedef bfd--state { type enumeration { enum UP { description - "The BFD session is perceived to be up by the system."; + "The BFD is perceived to be up by the system."; } enum DOWN { description - "The BFD session is perceived to be down by the system."; + "The BFD is perceived to be down by the system."; } enum ADMIN_DOWN { description - "The BFD session is administratively disabled."; + "The BFD is administratively disabled."; } enum INIT { description - "The BFD session is perceived to be initialising by the + "The BFD is perceived to be initialising by the system."; } } description - "The state of the BFD session according to the system referred + "The state of the BFD according to the system referred to by the context of the leaf."; reference "RFC5880 - Bidirectional Forwarding Detection, Section @@ -510,7 +510,7 @@ module openconfig-bfd { grouping bfd-interface-session-config { description - "Configuration parameters for a BFD session on an interface."; + "Configuration parameters for a static BFD single-hop session on an interface."; leaf local-address { type oc-inet:ip-address; @@ -526,11 +526,11 @@ module openconfig-bfd { the single-hop BFD session specified."; } - leaf enabled { + leaf admin-down { type boolean; description - "When this leaf is set to true then the single-hop BFD session is enabled - - if it is set to false, it is administratively disabled."; + "When this leaf is set to true then the single-hop BFD session + is administratively down."; } leaf demand-mode { @@ -544,26 +544,25 @@ module openconfig-bfd { grouping bfd-interface-session-state { // placeholder description - "Operational state parameters relating to the single-hop BFD session + "Operational state parameters relating to the static BFD single-hop session running on the interface."; } grouping bfd-interface-sessions-structural { description - "Structural grouping for BFD sessions configuration on interface + "Structural grouping for static BFD single-hop sessions configuration on interface and state parameters."; container sessions { description - "Parameters relating to BFD sessions associated with the interface."; + "Parameters relating to static BFD single-hop sessions associated with the interface."; list session { - key "local-address"; - key "remote-address"; + key "local-address remote-address" description "This list contains configuration and state parameters - relating to interface single-hop session."; + relating to interface static BFD single-hop session."; reference "RFC5881 - Bidirectional Forwarding Detection (BFD) for IPv4 and IPv6 (Single Hop)."; @@ -587,14 +586,14 @@ module openconfig-bfd { container config { description - "Configuration parameters for the BFD single-hop session."; + "Configuration parameters for the static BFD single-hop session."; uses bfd-interface-session-config; } container state { config false; description - "Operational state parameters for the BFD single-hop session."; + "Operational state parameters for the static BFD single-hop session."; uses bfd-interface-session-config; uses bfd-interface-session-state; } From ece907299d09b19028d71209f76d17ad79b6d5ba Mon Sep 17 00:00:00 2001 From: Erick Eckermann <44233963+Pull-eckermann@users.noreply.github.com> Date: Wed, 26 Jun 2024 10:26:07 -0300 Subject: [PATCH 4/5] Fix issues and add revision date Fix issues in openconfig-bfd.yang sessions subtree under interfaces and add revision date. --- release/models/bfd/openconfig-bfd.yang | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/release/models/bfd/openconfig-bfd.yang b/release/models/bfd/openconfig-bfd.yang index 1eaf97e32..b93212afe 100644 --- a/release/models/bfd/openconfig-bfd.yang +++ b/release/models/bfd/openconfig-bfd.yang @@ -28,6 +28,13 @@ module openconfig-bfd { oc-ext:openconfig-version "0.3.0"; + revision "2024-06-26" { + description + "Add sessions subtree at interface level for configuration of + static BFD single-hop sessions."; + reference "0.3.0"; + } + revision "2024-03-05" { description "Add configuration of min interval, multiplier when @@ -109,28 +116,28 @@ module openconfig-bfd { oc-ext:catalog-organization "openconfig"; oc-ext:origin "openconfig"; - typedef bfd--state { + typedef bfd-session-state { type enumeration { enum UP { description - "The BFD is perceived to be up by the system."; + "The BFD session is perceived to be up by the system."; } enum DOWN { description - "The BFD is perceived to be down by the system."; + "The BFD session is perceived to be down by the system."; } enum ADMIN_DOWN { description - "The BFD is administratively disabled."; + "The BFD session is administratively disabled."; } enum INIT { description - "The BFD is perceived to be initialising by the + "The BFD session is perceived to be initialising by the system."; } } description - "The state of the BFD according to the system referred + "The state of the BFD session according to the system referred to by the context of the leaf."; reference "RFC5880 - Bidirectional Forwarding Detection, Section @@ -536,7 +543,7 @@ module openconfig-bfd { leaf demand-mode { type boolean; description - "When this leaf is set to true then the single-hop BFD session + "When this leaf is set to true then the single-hop BFD session is operating in demand-mode."; } } @@ -544,7 +551,7 @@ module openconfig-bfd { grouping bfd-interface-session-state { // placeholder description - "Operational state parameters relating to the static BFD single-hop session + "Operational state parameters relating to the static BFD single-hop session running on the interface."; } @@ -558,7 +565,7 @@ module openconfig-bfd { "Parameters relating to static BFD single-hop sessions associated with the interface."; list session { - key "local-address remote-address" + key "local-address remote-address"; description "This list contains configuration and state parameters From 72c371e9f674ba401804584fc8258be557c77417 Mon Sep 17 00:00:00 2001 From: Erick Eckermann <44233963+Pull-eckermann@users.noreply.github.com> Date: Wed, 26 Jun 2024 10:29:17 -0300 Subject: [PATCH 5/5] Update reference for revision date Update reference number for revision date --- release/models/bfd/openconfig-bfd.yang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/release/models/bfd/openconfig-bfd.yang b/release/models/bfd/openconfig-bfd.yang index b93212afe..fbf8df480 100644 --- a/release/models/bfd/openconfig-bfd.yang +++ b/release/models/bfd/openconfig-bfd.yang @@ -26,13 +26,13 @@ module openconfig-bfd { "An OpenConfig model of Bi-Directional Forwarding Detection (BFD) configuration and operational state."; - oc-ext:openconfig-version "0.3.0"; + oc-ext:openconfig-version "0.3.1"; revision "2024-06-26" { description "Add sessions subtree at interface level for configuration of static BFD single-hop sessions."; - reference "0.3.0"; + reference "0.3.1"; } revision "2024-03-05" {