An OpenConfig model of Bi-Directional Forwarding Detection (BFD) configuration and operational state.
Version: 2025-03-18
module openconfig-bfd { yang-version 1; namespace "http://openconfig.net/yang/bfd"; prefix oc-bfd; import openconfig-extensions { prefix oc-ext; } import openconfig-types { prefix oc-types; } import openconfig-interfaces { prefix oc-if; } import openconfig-inet-types { prefix oc-inet; } import openconfig-policy-types { prefix oc-pol-types; } import ietf-inet-types { prefix ietf-if; } organization "OpenConfig working group"; contact "OpenConfig working group www.openconfig.net"; description "An OpenConfig model of Bi-Directional Forwarding Detection (BFD) configuration and operational state."; revision "2025-03-18" { description "Clarify BFD session failure as a transition from the UP state to the DOWN state. This does not include UP to ADMIN_DOWN transitions, since when the BFD session is administratively disabled it is not a session failure."; reference "0.4.1"; } revision "2025-02-05" { description "Move the up-transitions leaf from the async and echo sub-containers into the state container."; reference "0.4.0"; } revision "2024-12-16" { description "Add Bfd diagnostic code for when neighbor signaled session down. Specified in RFC5880."; reference "0.3.1"; } revision "2024-03-05" { description "Add configuration of min interval, multiplier when BFD is enabled at protocol level"; reference "0.3.0"; } revision "2023-08-09" { description "Update interface key to use interface-id type"; reference "0.2.6"; } revision "2023-02-06" { description "Clarify interface references."; reference "0.2.5"; } revision "2022-06-28" { description "Remove reference to invalid oc-ift type check"; reference "0.2.4"; } revision "2021-06-16" { description "Remove trailing whitespace"; reference "0.2.3"; } revision "2021-03-17" { description "Remove augments from bfd module. Add bfd support directly on the protocols"; reference "0.2.2"; } revision "2020-05-08" { description "Ensure that when statements reference only read-write leaves from read-write contexts. Add ietf-inet-types LAG type to conditions for micro-bfd."; reference "0.2.1"; } revision "2019-10-25" { description "Correct when statements."; reference "0.2.0"; } revision "2019-06-02" { description "Fix detection multiplier to be 8-bit value"; reference "0.1.1"; } revision "2018-11-21" { description "Add OpenConfig module metadata extensions."; reference "0.1.0"; } revision "2017-10-19" { description "Adopt OpenConfig types models, type corrections"; reference "0.0.2"; } revision "2016-06-24" { description "Initial revision"; reference "0.0.1"; } oc-ext:openconfig-version "0.4.1"; oc-ext:regexp-posix; oc-ext:catalog-organization "openconfig"; oc-ext:origin "openconfig"; typedef bfd-session-state { type enumeration { enum "UP" { value 0; description "The BFD session is perceived to be up by the system."; } enum "DOWN" { value 1; description "The BFD session is perceived to be down by the system."; } enum "ADMIN_DOWN" { value 2; description "The BFD session is administratively disabled."; } enum "INIT" { value 3; description "The BFD session is perceived to be initialising by the system."; } } description "The state of the BFD session according to the system referred to by the context of the leaf."; reference "RFC5880 - Bidirectional Forwarding Detection, Section 4.1"; } typedef bfd-diagnostic-code { type enumeration { enum "NO_DIAGNOSTIC" { value 0; description "No diagnostic code was specified, or the session has not changed state."; } enum "DETECTION_TIMEOUT" { value 1; description "The control detection time expired: no BFD packet was received within the required period."; } enum "ECHO_FAILED" { value 2; description "The BFD echo function failed - echo packets have not been received for the required period of time."; } enum "FORWARDING_RESET" { value 3; description "The forwarding plane in the local system was reset - such that the remote system cannot rely on the forwarding state of the device specifying this error code."; } enum "PATH_DOWN" { value 4; description "Signalling outside of BFD specified that the path underlying this session has failed."; } enum "CONCATENATED_PATH_DOWN" { value 5; description "When a BFD session runs over a series of path segments, this error code indicates that a subsequent path segment (i.e., one in the transmit path between the source and destination of the session) has failed."; } enum "ADMIN_DOWN" { value 6; description "The BFD session has been administratively disabled by the peer."; } enum "REVERSE_CONCATENATED_PATH_DOWN" { value 7; description "In the case that a BFD session is running over a series of path segments, this error code indicates that a path segment on the reverse path (i.e., in the transmit direction from the destination to the source of the session) has failed."; } enum "NEIGHBOR_DOWN" { value 8; description "The Bfd neighbor signaled session down - Bfd packet was received with neighbor state down."; } } description "Diagnostic codes defined by BFD. These typically indicate the reason for a change of session state. The NEIGHBOR_DOWN diagnostic was added to the enum at value 8 to avoid making a breaking change. This deviates from RFC5880 where the enum is value 3. This also shifts the following values by 1, in relation to RFC5880: FORWARDING_RESET, PATH_DOWN, CONCATENATED_PATH_DOWN, ADMIN_DOWN, REVERSE_CONCATENATED_PATH_DOWN."; reference "RFC5880 - Bidirectional Forwarding Detection, Section 4.1"; } } // module openconfig-bfd
© 2024 YumaWorks, Inc. All rights reserved.