rfc9129.txt   rfc9129-13Oct2021.txt 
skipping to change at line 12 skipping to change at line 12
Internet Engineering Task Force (IETF) D. Yeung Internet Engineering Task Force (IETF) D. Yeung
Request for Comments: 9129 Arrcus Request for Comments: 9129 Arrcus
Category: Standards Track Y. Qu Category: Standards Track Y. Qu
ISSN: 2070-1721 Futurewei ISSN: 2070-1721 Futurewei
J. Zhang J. Zhang
Juniper Networks Juniper Networks
I. Chen I. Chen
The MITRE Corporation The MITRE Corporation
A. Lindem A. Lindem
Cisco Systems Cisco Systems
November 2021 October 2021
YANG Data Model for the OSPF Protocol YANG Data Model for the OSPF Protocol
Abstract Abstract
This document defines a YANG data model that can be used to configure This document defines a YANG data model that can be used to configure
and manage OSPF. The model is based on YANG 1.1 as defined in RFC and manage OSPF. The model is based on YANG 1.1 as defined in RFC
7950 and conforms to the Network Management Datastore Architecture 7950 and conforms to the Network Management Datastore Architecture
(NMDA) as described in RFC 8342. (NMDA) as described in RFC 8342.
skipping to change at line 292 skipping to change at line 292
stub-router: Support for OSPF stub router advertisements [RFC6987]. stub-router: Support for OSPF stub router advertisements [RFC6987].
pe-ce-protocol: Support for OSPF as a PE-CE protocol [RFC4577] pe-ce-protocol: Support for OSPF as a PE-CE protocol [RFC4577]
[RFC6565]. [RFC6565].
ietf-spf-delay: Support for the IETF Shortest Path First (SPF) delay ietf-spf-delay: Support for the IETF Shortest Path First (SPF) delay
algorithm [RFC8405]. algorithm [RFC8405].
bfd: Support for Bidirectional Forwarding Detection (BFD) to detect bfd: Support for Bidirectional Forwarding Detection (BFD) to detect
OSPF neighbor reachability [RFC5880] [RFC5881]. OSPF neighbor reachability [RFC5880] [RFC5881] [RFC9127].
bfd-client-cfg: Support for Bidirectional Forwarding Detection (BFD)
configuration of client parameters [RFC9127].
hybrid-interface: Support for OSPF hybrid broadcast and point-to- hybrid-interface: Support for OSPF hybrid broadcast and point-to-
multipoint interfaces [RFC6845]. multipoint interfaces [RFC6845].
It is expected that vendors will support additional features through It is expected that vendors will support additional features through
vendor-specific augmentations. vendor-specific augmentations.
2.5. OSPF Router Configuration / Operational State 2.5. OSPF Router Configuration / Operational State
The "ospf" container is the top-level container in this data model. The "ospf" container is the top-level container in this data model.
skipping to change at line 338 skipping to change at line 335
| | +--:(detail) | | +--:(detail)
| | | +--rw intra-area? uint8 | | | +--rw intra-area? uint8
| | | +--rw inter-area? uint8 | | | +--rw inter-area? uint8
| | +--:(coarse) | | +--:(coarse)
| | +--rw internal? uint8 | | +--rw internal? uint8
| +--rw external? uint8 | +--rw external? uint8
+--rw nsr {nsr}? +--rw nsr {nsr}?
| +--rw enabled? boolean | +--rw enabled? boolean
+--rw graceful-restart {graceful-restart}? +--rw graceful-restart {graceful-restart}?
| +--rw enabled? boolean | +--rw enabled? boolean
| +--rw helper-enabled? boolean | +--rw helper-enable? boolean
| +--rw restart-interval? uint16 | +--rw restart-interval? uint16
| +--rw helper-strict-lsa-checking? boolean | +--rw helper-strict-lsa-checking? boolean
+--rw auto-cost {auto-cost}? +--rw auto-cost {auto-cost}?
| +--rw enabled? boolean | +--rw enabled? boolean
| +--rw reference-bandwidth? uint32 | +--rw reference-bandwidth? uint32
+--rw spf-control +--rw spf-control
| +--rw paths? uint16 {max-ecmp}? | +--rw paths? uint16 {max-ecmp}?
| +--rw ietf-spf-delay {ietf-spf-delay}? | +--rw ietf-spf-delay {ietf-spf-delay}?
| +--rw initial-delay? uint16 | +--rw initial-delay? uint16
| +--rw short-delay? uint16 | +--rw short-delay? uint16
skipping to change at line 799 skipping to change at line 796
| +--rw static-neighbors | +--rw static-neighbors
| | +--rw neighbor* [identifier] | | +--rw neighbor* [identifier]
| | +--rw identifier inet:ip-address | | +--rw identifier inet:ip-address
| | +--rw cost? uint16 | | +--rw cost? uint16
| | +--rw poll-interval? uint16 | | +--rw poll-interval? uint16
| | +--rw priority? uint8 | | +--rw priority? uint8
| +--rw node-flag? boolean | +--rw node-flag? boolean
| {node-flag}? | {node-flag}?
| +--rw bfd {bfd}? | +--rw bfd {bfd}?
| | +--rw enabled? boolean | | +--rw enabled? boolean
| | +--rw bfd-client-parms {bfd-client-cfg}?
| | +--rw local-multiplier? multiplier
| | +--rw (interval-config-type)?
| | +--:(tx-rx-intervals)
| | | +--rw desired-min-tx-interval?
| | | uint32
| | | +--rw required-min-rx-interval?
| | | uint32
| | +--:(single-interval)
| | {single-minimum-interval}?
| | +--rw min-interval? uint32
| +--rw fast-reroute {fast-reroute}? | +--rw fast-reroute {fast-reroute}?
| | +--rw lfa {lfa}? | | +--rw lfa {lfa}?
| | +--rw candidate-enabled? boolean | | +--rw candidate-enable? boolean
| | +--rw enabled? boolean | | +--rw enabled? boolean
| | +--rw remote-lfa {remote-lfa}? | | +--rw remote-lfa {remote-lfa}?
| | +--rw enabled? boolean | | +--rw enabled? boolean
| +--rw hello-interval? uint16 | +--rw hello-interval? uint16
| +--rw dead-interval? uint32 | +--rw dead-interval? uint32
| +--rw retransmit-interval? uint16 | +--rw retransmit-interval? uint16
| +--rw transmit-delay? uint16 | +--rw transmit-delay? uint16
| +--rw lls? boolean {lls}? | +--rw lls? boolean {lls}?
| +--rw ttl-security {ttl-security}? | +--rw ttl-security {ttl-security}?
| | +--rw enabled? boolean | | +--rw enabled? boolean
skipping to change at line 1457 skipping to change at line 1443
feature bfd { feature bfd {
description description
"Support for BFD to detect OSPF neighbor reachability."; "Support for BFD to detect OSPF neighbor reachability.";
reference reference
"RFC 5880: Bidirectional Forwarding Detection (BFD) "RFC 5880: Bidirectional Forwarding Detection (BFD)
RFC 5881: Bidirectional Forwarding Detection RFC 5881: Bidirectional Forwarding Detection
(BFD) for IPv4 and IPv6 (Single Hop)"; (BFD) for IPv4 and IPv6 (Single Hop)";
} }
feature bfd-client-cfg {
description
"Support for BFD configuration of client parameters.";
reference
"RFC 9127: YANG Data Model for Bidirectional Forwarding
Detection (BFD)";
}
feature hybrid-interface { feature hybrid-interface {
description description
"Support for the OSPF hybrid interface type."; "Support for the OSPF hybrid interface type.";
reference reference
"RFC 6845: OSPF Hybrid Broadcast and "RFC 6845: OSPF Hybrid Broadcast and
Point-to-Multipoint Interface Type"; Point-to-Multipoint Interface Type";
} }
identity ospf { identity ospf {
base rt:routing-protocol; base rt:routing-protocol;
skipping to change at line 3952 skipping to change at line 3930
} }
} }
grouping interface-fast-reroute-config { grouping interface-fast-reroute-config {
description description
"This group defines interface configuration of IP-FRR."; "This group defines interface configuration of IP-FRR.";
container fast-reroute { container fast-reroute {
if-feature "fast-reroute"; if-feature "fast-reroute";
container lfa { container lfa {
if-feature "lfa"; if-feature "lfa";
leaf candidate-enabled { leaf candidate-enable {
type boolean; type boolean;
default "true"; default "true";
description description
"Enables the interface to be used as a backup."; "Enables the interface to be used as a backup.";
} }
leaf enabled { leaf enabled {
type boolean; type boolean;
default "false"; default "false";
description description
"Activates an LFA. Per-prefix LFA computation "Activates an LFA. Per-prefix LFA computation
skipping to change at line 4367 skipping to change at line 4345
default "false"; default "false";
description description
"Sets the prefix as identifying the advertising router."; "Sets the prefix as identifying the advertising router.";
reference reference
"RFC 7684: OSPFv2 Prefix/Link Attribute Advertisement"; "RFC 7684: OSPFv2 Prefix/Link Attribute Advertisement";
} }
container bfd { container bfd {
if-feature "bfd"; if-feature "bfd";
description description
"BFD interface configuration."; "BFD client configuration.";
leaf enabled { uses bfd-types:client-cfg-parms;
type boolean;
default "false";
description
"Indicate whether BFD is enabled.";
}
container bfd-client-parms {
if-feature "bfd-client-cfg";
uses bfd-types:base-cfg-parms;
description
"BFD client configuration.";
reference
"RFC 9127: YANG Data Model for Bidirectional Forwarding
Detection (BFD)";
}
reference reference
"RFC 5880: Bidirectional Forwarding Detection (BFD) "RFC 9127: YANG Data Model for Bidirectional Forwarding
RFC 5881: Bidirectional Forwarding Detection Detection (BFD)";
(BFD) for IPv4 and IPv6 (Single Hop)";
} }
uses interface-fast-reroute-config; uses interface-fast-reroute-config;
uses interface-common-config; uses interface-common-config;
uses interface-physical-link-config; uses interface-physical-link-config;
} }
grouping neighbor-state { grouping neighbor-state {
description description
"OSPF neighbor operational state."; "OSPF neighbor operational state.";
skipping to change at line 5020 skipping to change at line 4983
"Graceful restart configuration state."; "Graceful restart configuration state.";
reference reference
"RFC 3623: Graceful OSPF Restart "RFC 3623: Graceful OSPF Restart
RFC 5187: OSPFv3 Graceful Restart"; RFC 5187: OSPFv3 Graceful Restart";
leaf enabled { leaf enabled {
type boolean; type boolean;
description description
"Enables/disables graceful restart as defined in RFC 3623 "Enables/disables graceful restart as defined in RFC 3623
for OSPFv2 and RFC 5187 for OSPFv3."; for OSPFv2 and RFC 5187 for OSPFv3.";
} }
leaf helper-enabled { leaf helper-enable {
type boolean; type boolean;
description description
"Enables graceful restart helper support for restarting "Enables graceful restart helper support for restarting
routers (Section 3 of RFC 3623)."; routers (Section 3 of RFC 3623).";
reference reference
"RFC 3623: Graceful OSPF Restart, Section 3"; "RFC 3623: Graceful OSPF Restart, Section 3";
} }
leaf restart-interval { leaf restart-interval {
type uint16 { type uint16 {
range "1..1800"; range "1..1800";
skipping to change at line 5060 skipping to change at line 5023
container auto-cost { container auto-cost {
if-feature "auto-cost"; if-feature "auto-cost";
description description
"Interface auto-cost configuration state."; "Interface auto-cost configuration state.";
leaf enabled { leaf enabled {
type boolean; type boolean;
description description
"Enables/disables interface auto-cost."; "Enables/disables interface auto-cost.";
} }
leaf reference-bandwidth { leaf reference-bandwidth {
when "../enabled = 'true'" { when "../enable = 'true'" {
description description
"Only when auto-cost is enabled."; "Only when auto-cost is enabled.";
} }
type uint32 { type uint32 {
range "1..4294967"; range "1..4294967";
} }
units "Mbits"; units "Mbits";
description description
"Configures reference bandwidth used to automatically "Configures reference bandwidth used to automatically
determine interface cost (Mbits). The cost is the determine interface cost (Mbits). The cost is the
skipping to change at line 6575 skipping to change at line 6538
(BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010,
<https://www.rfc-editor.org/info/rfc5880>. <https://www.rfc-editor.org/info/rfc5880>.
[RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection [RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, (BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881,
DOI 10.17487/RFC5881, June 2010, DOI 10.17487/RFC5881, June 2010,
<https://www.rfc-editor.org/info/rfc5881>. <https://www.rfc-editor.org/info/rfc5881>.
[RFC9130] Litkowski, S., Yeung, D., Lindem, A., Zhang, J., and L. [RFC9130] Litkowski, S., Yeung, D., Lindem, A., Zhang, J., and L.
Lhotka, "YANG Data Model for the IS-IS Protocol", Lhotka, "YANG Data Model for the IS-IS Protocol",
RFC 9130, DOI 10.17487/RFC9130, November 2021, RFC 9130, DOI 10.17487/RFC9130, October 2021,
<https://www.rfc-editor.org/info/rfc9130>. <https://www.rfc-editor.org/info/rfc9130>.
Acknowledgments Acknowledgments
The authors wish to thank Yi Yang, Alexander Clemm, Gaurav Gupta, The authors wish to thank Yi Yang, Alexander Clemm, Gaurav Gupta,
Ladislav Lhotka, Stephane Litkowski, Greg Hankins, Manish Gupta, Ladislav Lhotka, Stephane Litkowski, Greg Hankins, Manish Gupta,
Michael Darwish, and Alan Davey for their thorough reviews and Michael Darwish, and Alan Davey for their thorough reviews and
helpful comments. helpful comments.
Thanks to Tom Petch for Last Call review and improvements to the Thanks to Tom Petch for Last Call review and improvements to the
 End of changes. 12 change blocks. 
49 lines changed or deleted 12 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/