This module contains a collection of YANG definitions for BFD neighbor monitoring. Copyright (c) 2016-2019 by Cisco Systems, Inc...
Version: 2021-03-01
module Cisco-IOS-XE-bfd-oper { yang-version 1; namespace "http://cisco.com/ns/yang/Cisco-IOS-XE-bfd-oper"; prefix bfd-ios-xe-oper; import ietf-inet-types { prefix inet; } import cisco-semver { prefix cisco-semver; } organization "Cisco Systems, Inc."; contact "Cisco Systems, Inc. Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 Tel: +1 1800 553-NETS E-mail: cs-yang@cisco.com"; description "This module contains a collection of YANG definitions for BFD neighbor monitoring. Copyright (c) 2016-2019 by Cisco Systems, Inc. All rights reserved."; revision "2021-03-01" { description "- Added session state info and session neighbor details"; reference "2.3.0"; } revision "2019-05-01" { description "Added semantic version"; reference "2.2.0"; } revision "2018-10-29" { description "Cleaned up spelling errors in descriptions."; reference "2.1.0"; } revision "2017-09-10" { description "Enumeration renaming"; reference "2.0.0"; } revision "2017-02-07" { description "Initial revision"; reference "1.0.0"; } cisco-semver:module-version "2.3.0"; cisco-semver:module-version "2.2.0"; cisco-semver:module-version "2.1.0"; cisco-semver:module-version "2.0.0"; cisco-semver:module-version "1.0.0"; typedef bfd-oper-session-type { type enumeration { enum "ipv4" { value 0; } enum "ipv6" { value 1; } enum "vccv" { value 2; } enum "mpls-tp" { value 3; } enum "ipv4-multihop" { value 4; } enum "ipv6-multihop" { value 5; } enum "poch-ipv4" { value 6; description "Port Channel IPV4 client"; } } description "BFD session type"; } typedef bfd-remote-state-type { type enumeration { enum "remote-up" { value 0; } enum "remote-down" { value 1; } enum "remote-init" { value 2; } enum "remote-admindown" { value 3; } enum "remote-invalid" { value 4; } } description "BFD remote state type"; } typedef bfd-state-type { type enumeration { enum "admindown" { value 0; } enum "down" { value 1; } enum "fail" { value 2; } enum "init" { value 3; } enum "up" { value 4; } enum "invalid" { value 5; } } description "BFD state type"; } typedef bfd-lsp-type { type enumeration { enum "working" { value 0; } enum "protect" { value 1; } enum "unknown" { value 2; } } description "BFD LSP type"; } typedef bfd-diag-state { type enumeration { enum "bfd-diag-no-diag" { value 0; description "No failure"; } enum "bfd-diag-ctrl-time-exp" { value 1; description "Control time expired"; } enum "bfd-diag-echo-failed" { value 2; description "Echo failed"; } enum "bfd-diag-nbr-signaled-down" { value 3; description "Neighbor session down"; } enum "bfd-diag-fwd-plane-reset" { value 4; description "Forwarding plane in the local system is reset for some reason"; } enum "bfd-diag-path-down" { value 5; description "The underlying path has failed"; } enum "bfd-diag-concat-path-down" { value 6; description "Forward path failure"; } enum "bfd-diag-admin-down" { value 7; description "Entering the administratively down state and sending an explanatory diagnostic code"; } enum "bfd-diag-rev-concat-path-down" { value 8; description "Reverse path failure"; } enum "bfd-diag-not-valid" { value 9; description "Not valid diag"; } } description "BFD diag state to identify failure"; } typedef bfd-session-host { type enumeration { enum "bfd-host-software" { value 0; description "BFD sessions host software"; } enum "bfd-host-hardware" { value 1; description "BFD sessions host hardware"; } enum "bfd-host-unknown" { value 2; description "Unknown host"; } } description "BFD sessions host"; } grouping bfd-neighbor-params { description "BFD neighbour parameters"; leaf ld { type uint32; description "Local discriminator"; } leaf rd { type uint32; description "Remote discriminator"; } leaf remote-state { type bfd-remote-state-type; description "Remote Heard. RH state of BFD version '0' is also mapped to up/down"; } leaf state { type bfd-state-type; description "BFD state"; } leaf remote-min-tx-int { type uint32; units "microseconds"; description "Configured received remote TX interval"; } leaf remote-min-rx-int { type uint32; units "microseconds"; description "Configured received remote RX interval"; } leaf remote-multiplier { type uint32; description "Configured received remote multiplier value"; } leaf local-min-tx-int { type uint32; units "microseconds"; description "Configured transmit control packet interval"; } leaf local-min-rx-int { type uint32; units "microseconds"; description "Configured receive control packet interval"; } leaf local-multiplier { type uint32; description "Configured local multiplier value"; } leaf local-diag { type bfd-diag-state; description "Local diag is used to identify the remote sessions failure"; } leaf remote-diag { type bfd-diag-state; description "Remote diag is used to identify the remote sessions failure"; } leaf session-host { type bfd-session-host; description "If the hardware limit is exceeded, then the sessions are hosted in software"; } leaf common-tx-interval { type uint32; units "microseconds"; description "Common negotiated interval value"; } leaf hold-down-interval { type uint32; units "microseconds"; description "Detect time expired timer"; } } // grouping bfd-neighbor-params grouping bfd-tunnel-path-key { description "BFD tunnel Path Key"; leaf interface { type string; description "Associated interface"; } leaf lsp-type { type bfd-lsp-type; description "LSP type"; } } // grouping bfd-tunnel-path-key grouping bfd-circuit-key { description "BFD circuit key"; leaf interface { type string; description "Associated interface"; } leaf vcid { type uint32; description "Virtual circuit identifier"; } } // grouping bfd-circuit-key grouping bfd-nbr-key { description "BFD Neighbor key"; leaf ip { type inet:ip-address; description "Neighbor IP address"; } leaf interface { type string; description "Interface"; } } // grouping bfd-nbr-key grouping mhop-nbr-key { description "BFD MHOP Neighbor key"; leaf ip { type inet:ip-address; description "Neighbor IP address"; } leaf src-ip { type inet:ip-address; description "Source IP address"; } } // grouping mhop-nbr-key grouping mhop-vrf-nbr-key { description "BFD MHOP VRF Neighbor key"; leaf ip { type inet:ip-address; description "Neighbor IP address"; } leaf vrf { type string; description "Neighbor VFR"; } leaf src-ip { type inet:ip-address; description "Source IP address"; } } // grouping mhop-vrf-nbr-key grouping session-count-info { description "BFD sessions info"; leaf max-sup-sw-sess { type uint32; description "Maximum supported software sessions"; } leaf max-sup-hw-sess { type uint32; description "Maximum supported hardware sessions"; } leaf total-session { type uint32; description "Total sessions"; } leaf init-session { type uint32; description "Init sessions"; } leaf down-session { type uint32; description "Down sessions"; } leaf up-session { type uint32; description "Up sessions"; } leaf admin-down-session { type uint32; description "Admin down sessions"; } } // grouping session-count-info grouping bfd-session-v2 { description "BFD session data"; leaf type { type bfd-oper-session-type; description "Session type"; } container bfd-tunnel-paths { description "BFD tunnel path information"; list bfd-tunnel-path { when "../../type='mpls-tp'"; key "interface lsp-type"; description "List of BFD tunnel paths"; uses bfd-ios-xe-oper:bfd-tunnel-path-key; uses bfd-ios-xe-oper:bfd-neighbor-params; } // list bfd-tunnel-path } // container bfd-tunnel-paths container bfd-circuits { description "BFD circuit information"; list bfd-circuit { when "../../type='vccv'"; key "interface vcid"; description "List of BFD circuits"; uses bfd-ios-xe-oper:bfd-circuit-key; uses bfd-ios-xe-oper:bfd-neighbor-params; } // list bfd-circuit } // container bfd-circuits container bfd-nbrs { description "BFD neighbor information"; list bfd-nbr { when "../../type!='mpls-tp' and ../../type!='vccv'"; key "ip interface"; description "List of BFD neighbors"; uses bfd-ios-xe-oper:bfd-nbr-key; uses bfd-ios-xe-oper:bfd-neighbor-params; } // list bfd-nbr } // container bfd-nbrs container bfd-mhop-nbrs { description "Multi hop neighbors for multi hop neighbor scenario for global VRF (no VRF)"; list bfd-mhop-nbr { when "../../type='ipv4-multihop' or ../../type='ipv6-multihop'"; key "ip src-ip"; description "List of MHOP neighbors"; uses bfd-ios-xe-oper:mhop-nbr-key; uses bfd-ios-xe-oper:bfd-neighbor-params; } // list bfd-mhop-nbr } // container bfd-mhop-nbrs container bfd-mhop-vrf-nbrs { description "Multi hop neighbors for multi hop neighbor scenario with non-global VRF"; list bfd-mhop-vrf-nbr { when "../../type='ipv4-multihop' or ../../type='ipv6-multihop'"; key "ip vrf src-ip"; description "List of multi hop neighbors"; uses bfd-ios-xe-oper:mhop-vrf-nbr-key; uses bfd-ios-xe-oper:bfd-neighbor-params; } // list bfd-mhop-vrf-nbr } // container bfd-mhop-vrf-nbrs } // grouping bfd-session-v2 container bfd-state { config false; description "BFD neighbor information"; container sessions { description "BFD neighbor session information"; list session { key "type"; description "List of BFD sessions"; uses bfd-ios-xe-oper:bfd-session-v2; } // list session } // container sessions container bfd-session-info { presence "bfd-session-info"; description "BFD sessions state information"; uses bfd-ios-xe-oper:session-count-info; } // container bfd-session-info } // container bfd-state } // module Cisco-IOS-XE-bfd-oper
© 2023 YumaWorks, Inc. All rights reserved.