ietf-bfd-types.yang   ietf-bfd-types-formatted.yang 
module ietf-bfd-types { module ietf-bfd-types {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-bfd-types"; namespace "urn:ietf:params:xml:ns:yang:ietf-bfd-types";
prefix "bfd-types"; prefix bfd-types;
import iana-bfd-types { import iana-bfd-types {
prefix "iana-bfd-types"; prefix iana-bfd-types;
reference reference
"RFC 9127: YANG Data Model for Bidirectional Forwarding "RFC 9127: YANG Data Model for Bidirectional Forwarding
Detection (BFD)"; Detection (BFD)";
} }
import ietf-inet-types { import ietf-inet-types {
prefix "inet"; prefix inet;
reference reference
"RFC 6991: Common YANG Data Types"; "RFC 6991: Common YANG Data Types";
} }
import ietf-yang-types { import ietf-yang-types {
prefix "yang"; prefix yang;
reference reference
"RFC 6991: Common YANG Data Types"; "RFC 6991: Common YANG Data Types";
} }
import ietf-routing { import ietf-routing {
prefix "rt"; prefix rt;
reference reference
"RFC 8349: A YANG Data Model for Routing Management "RFC 8349: A YANG Data Model for Routing Management
(NMDA Version)"; (NMDA Version)";
} }
import ietf-key-chain { import ietf-key-chain {
prefix "key-chain"; prefix key-chain;
reference reference
"RFC 8177: YANG Data Model for Key Chains"; "RFC 8177: YANG Data Model for Key Chains";
} }
organization "IETF BFD Working Group"; organization
"IETF BFD Working Group";
contact contact
"WG Web: <https://datatracker.ietf.org/wg/bfd/> "WG Web: <https://datatracker.ietf.org/wg/bfd/>
WG List: <mailto:rtg-bfd@ietf.org> WG List: <mailto:rtg-bfd@ietf.org>
Editor: Reshad Rahman Editor: Reshad Rahman
<mailto:reshad@yahoo.com> <mailto:reshad@yahoo.com>
Editor: Lianshu Zheng Editor: Lianshu Zheng
<mailto:vero.zheng@huawei.com> <mailto:vero.zheng@huawei.com>
skipping to change at line 125 skipping to change at line 119
"This feature indicates that the server supports BFD Echo "This feature indicates that the server supports BFD Echo
mode."; mode.";
reference reference
"RFC 5880: Bidirectional Forwarding Detection (BFD), "RFC 5880: Bidirectional Forwarding Detection (BFD),
Section 6.4"; Section 6.4";
} }
/* /*
* Identity definitions * Identity definitions
*/ */
identity bfdv1 { identity bfdv1 {
base "rt:control-plane-protocol"; base rt:control-plane-protocol;
description description
"BFD protocol version 1."; "BFD protocol version 1.";
reference reference
"RFC 5880: Bidirectional Forwarding Detection (BFD)"; "RFC 5880: Bidirectional Forwarding Detection (BFD)";
} }
identity path-type { identity path-type {
description description
"Base identity for the BFD path type. The path type indicates "Base identity for the BFD path type. The path type indicates
the type of path on which BFD is running."; the type of path on which BFD is running.";
skipping to change at line 229 skipping to change at line 231
description description
"'Up' state."; "'Up' state.";
} }
} }
description description
"BFD states as defined in RFC 5880."; "BFD states as defined in RFC 5880.";
} }
typedef multiplier { typedef multiplier {
type uint8 { type uint8 {
range 1..255; range "1..255";
} }
description description
"BFD multiplier as described in RFC 5880."; "BFD multiplier as described in RFC 5880.";
} }
typedef hops { typedef hops {
type uint8 { type uint8 {
range 1..255; range "1..255";
} }
description description
"This corresponds to Time To Live for IPv4 and corresponds to "This corresponds to Time To Live for IPv4 and corresponds to
the hop limit for IPv6."; the hop limit for IPv6.";
} }
/* /*
* Groupings * Groupings
*/ */
grouping auth-parms { grouping auth-parms {
description description
"Grouping for BFD authentication parameters "Grouping for BFD authentication parameters
(see Section 6.7 of RFC 5880)."; (see Section 6.7 of RFC 5880).";
container authentication { container authentication {
if-feature authentication; if-feature "authentication";
presence presence "Enables BFD authentication (see Section 6.7 of RFC 5880).";
"Enables BFD authentication (see Section 6.7 of RFC 5880).";
description description
"Parameters for BFD authentication."; "Parameters for BFD authentication.";
reference reference
"RFC 5880: Bidirectional Forwarding Detection (BFD), "RFC 5880: Bidirectional Forwarding Detection (BFD),
Section 6.7"; Section 6.7";
leaf key-chain { leaf key-chain {
type key-chain:key-chain-ref; type key-chain:key-chain-ref;
description description
"Name of the 'key-chain' as per RFC 8177."; "Name of the 'key-chain' as per RFC 8177.";
} }
leaf meticulous { leaf meticulous {
type boolean; type boolean;
description description
"Enables a meticulous mode as per Section 6.7 of "Enables a meticulous mode as per Section 6.7 of
RFC 5880."; RFC 5880.";
} }
} }
} }
grouping base-cfg-parms { grouping base-cfg-parms {
skipping to change at line 281 skipping to change at line 281
RFC 5880."; RFC 5880.";
} }
} }
} }
grouping base-cfg-parms { grouping base-cfg-parms {
description description
"BFD grouping for base configuration parameters."; "BFD grouping for base configuration parameters.";
leaf local-multiplier { leaf local-multiplier {
type multiplier; type multiplier;
default 3; default "3";
description description
"Multiplier transmitted by the local system."; "Multiplier transmitted by the local system.";
} }
choice interval-config-type { choice interval-config-type {
default tx-rx-intervals; default "tx-rx-intervals";
description description
"Two interval values or one value used for both transmit and "Two interval values or one value used for both transmit and
receive."; receive.";
case tx-rx-intervals { case tx-rx-intervals {
leaf desired-min-tx-interval { leaf desired-min-tx-interval {
type uint32; type uint32;
units microseconds; units "microseconds";
default 1000000; default "1000000";
description description
"Desired minimum transmit interval of control packets."; "Desired minimum transmit interval of control packets.";
} }
leaf required-min-rx-interval { leaf required-min-rx-interval {
type uint32; type uint32;
units microseconds; units "microseconds";
default 1000000; default "1000000";
description description
"Required minimum receive interval of control packets."; "Required minimum receive interval of control packets.";
} }
} }
case single-interval { case single-interval {
if-feature single-minimum-interval; if-feature "single-minimum-interval";
leaf min-interval { leaf min-interval {
type uint32; type uint32;
units microseconds; units "microseconds";
default 1000000; default "1000000";
description description
"Desired minimum transmit interval and required "Desired minimum transmit interval and required
minimum receive interval of control packets."; minimum receive interval of control packets.";
} }
} }
} }
} }
grouping client-cfg-parms { grouping client-cfg-parms {
description description
skipping to change at line 327 skipping to change at line 324
minimum receive interval of control packets."; minimum receive interval of control packets.";
} }
} }
} }
} }
grouping client-cfg-parms { grouping client-cfg-parms {
description description
"BFD grouping for configuration parameters "BFD grouping for configuration parameters
used by BFD clients, e.g., IGP or MPLS."; used by BFD clients, e.g., IGP or MPLS.";
leaf enabled { leaf enabled {
type boolean; type boolean;
default false; default "false";
description description
"Indicates whether BFD is enabled."; "Indicates whether BFD is enabled.";
} }
uses base-cfg-parms; uses base-cfg-parms;
} }
grouping common-cfg-parms { grouping common-cfg-parms {
description description
"BFD grouping for common configuration parameters."; "BFD grouping for common configuration parameters.";
uses base-cfg-parms; uses base-cfg-parms;
leaf demand-enabled { leaf demand-enabled {
if-feature demand-mode; if-feature "demand-mode";
type boolean; type boolean;
default false; default "false";
description description
"To enable Demand mode."; "To enable Demand mode.";
} }
leaf admin-down { leaf admin-down {
type boolean; type boolean;
default false; default "false";
description description
"Indicates whether the BFD session is administratively "Indicates whether the BFD session is administratively
down."; down.";
} }
uses auth-parms; uses auth-parms;
} }
grouping all-session { grouping all-session {
description description
"BFD session operational information."; "BFD session operational information.";
leaf path-type { leaf path-type {
type identityref { type identityref {
base path-type; base path-type;
} }
config "false"; config false;
description description
"BFD path type. This indicates the path type that BFD is "BFD path type. This indicates the path type that BFD is
running on."; running on.";
} }
leaf ip-encapsulation { leaf ip-encapsulation {
type boolean; type boolean;
config "false"; config false;
description description
"Indicates whether BFD encapsulation uses IP."; "Indicates whether BFD encapsulation uses IP.";
} }
leaf local-discriminator { leaf local-discriminator {
type discriminator; type discriminator;
config "false"; config false;
description description
"Local discriminator."; "Local discriminator.";
} }
leaf remote-discriminator { leaf remote-discriminator {
type discriminator; type discriminator;
config "false"; config false;
description description
"Remote discriminator."; "Remote discriminator.";
} }
leaf remote-multiplier { leaf remote-multiplier {
type multiplier; type multiplier;
config "false"; config false;
description description
"Remote multiplier."; "Remote multiplier.";
} }
leaf demand-capability { leaf demand-capability {
if-feature demand-mode; if-feature "demand-mode";
type boolean; type boolean;
config "false"; config false;
description description
"Local Demand mode capability."; "Local Demand mode capability.";
} }
leaf source-port { leaf source-port {
when "../ip-encapsulation = 'true'" { when "../ip-encapsulation = 'true'" {
description description
"Source port valid only when IP encapsulation is used."; "Source port valid only when IP encapsulation is used.";
} }
type inet:port-number; type inet:port-number;
config "false"; config false;
description description
"Source UDP port."; "Source UDP port.";
} }
leaf dest-port { leaf dest-port {
when "../ip-encapsulation = 'true'" { when "../ip-encapsulation = 'true'" {
description description
"Destination port valid only when IP encapsulation "Destination port valid only when IP encapsulation
is used."; is used.";
} }
type inet:port-number; type inet:port-number;
config "false"; config false;
description description
"Destination UDP port."; "Destination UDP port.";
} }
container session-running { container session-running {
config "false"; config false;
description description
"BFD 'session-running' information."; "BFD 'session-running' information.";
leaf session-index { leaf session-index {
type uint32; type uint32;
description description
"An index used to uniquely identify BFD sessions."; "An index used to uniquely identify BFD sessions.";
} }
leaf local-state { leaf local-state {
type state; type state;
description description
skipping to change at line 467 skipping to change at line 459
description description
"Indicates whether incoming BFD control packets are "Indicates whether incoming BFD control packets are
authenticated."; authenticated.";
} }
leaf remote-authentication-type { leaf remote-authentication-type {
when "../remote-authenticated = 'true'" { when "../remote-authenticated = 'true'" {
description description
"Only valid when incoming BFD control packets are "Only valid when incoming BFD control packets are
authenticated."; authenticated.";
} }
if-feature authentication; if-feature "authentication";
type iana-bfd-types:auth-type; type iana-bfd-types:auth-type;
description description
"Authentication type of incoming BFD control packets."; "Authentication type of incoming BFD control packets.";
} }
leaf detection-mode { leaf detection-mode {
type enumeration { type enumeration {
enum async-with-echo { enum async-with-echo {
value "1"; value 1;
description description
"Async with echo."; "Async with echo.";
} }
enum async-without-echo { enum async-without-echo {
value "2"; value 2;
description description
"Async without echo."; "Async without echo.";
} }
enum demand-with-echo { enum demand-with-echo {
value "3"; value 3;
description description
"Demand with echo."; "Demand with echo.";
} }
enum demand-without-echo { enum demand-without-echo {
value "4"; value 4;
description description
"Demand without echo."; "Demand without echo.";
} }
} }
description description
"Detection mode."; "Detection mode.";
} }
leaf negotiated-tx-interval { leaf negotiated-tx-interval {
type uint32; type uint32;
units microseconds; units "microseconds";
description description
"Negotiated transmit interval."; "Negotiated transmit interval.";
} }
leaf negotiated-rx-interval { leaf negotiated-rx-interval {
type uint32; type uint32;
units microseconds; units "microseconds";
description description
"Negotiated receive interval."; "Negotiated receive interval.";
} }
leaf detection-time { leaf detection-time {
type uint32; type uint32;
units microseconds; units "microseconds";
description description
"Detection time."; "Detection time.";
} }
leaf echo-tx-interval-in-use { leaf echo-tx-interval-in-use {
when "../../path-type = 'bfd-types:path-ip-sh'" { when "../../path-type = 'bfd-types:path-ip-sh'" {
description description
"Echo is supported for IP single-hop only."; "Echo is supported for IP single-hop only.";
} }
if-feature echo-mode; if-feature "echo-mode";
type uint32; type uint32;
units microseconds; units "microseconds";
description description
"Echo transmit interval in use."; "Echo transmit interval in use.";
} }
} }
container session-statistics { container session-statistics {
config "false"; config false;
description description
"BFD per-session statistics."; "BFD per-session statistics.";
leaf create-time { leaf create-time {
type yang:date-and-time; type yang:date-and-time;
description description
"Time and date when this session was created."; "Time and date when this session was created.";
} }
leaf last-down-time { leaf last-down-time {
type yang:date-and-time; type yang:date-and-time;
description description
"Time and date of the last time this session went down."; "Time and date of the last time this session went down.";
} }
 End of changes. 60 change blocks. 
65 lines changed or deleted 49 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/