draft-ietf-ospf-sr-yang-05.txt   draft-ietf-ospf-sr-yang-06.txt 
Internet D. Yeung Internet D. Yeung
Internet-Draft Arrcus Internet-Draft Arrcus
Intended status: Informational Y. Qu Intended status: Informational Y. Qu
Expires: January 2, 2019 Huawei Expires: September 7, 2019 Huawei
J. Zhang J. Zhang
Juniper Networks Juniper Networks
I. Chen I. Chen
Jabil Circuit The MITRE Corporation
A. Lindem A. Lindem
Cisco Systems Cisco Systems
July 1, 2018 March 6, 2019
Yang Data Model for OSPF SR (Segment Routing) Protocol YANG Data Model for OSPF SR (Segment Routing) Protocol
draft-ietf-ospf-sr-yang-05 draft-ietf-ospf-sr-yang-06
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 Segment Routing. and manage OSPF Segment Routing. The model is based on YANG 1.1 as
defined in RFC 7950 and conforms to the Network Management Datastore
Architecture (NDMA) as described in RFC 8342.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 2, 2019. This Internet-Draft will expire on September 7, 2019.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2
2. OSPF Segment Routing . . . . . . . . . . . . . . . . . . . . 2 2. Tree Diagrams . . . . . . . . . . . . . . . . . . . . . . . . 3
3. OSPF Segment Routing Yang Module . . . . . . . . . . . . . . 7 3. OSPF Segment Routing . . . . . . . . . . . . . . . . . . . . 3
4. Security Considerations . . . . . . . . . . . . . . . . . . . 20 4. OSPF Segment Routing YANG Module . . . . . . . . . . . . . . 7
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20 5. Security Considerations . . . . . . . . . . . . . . . . . . . 20
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21
6.1. Normative References . . . . . . . . . . . . . . . . . . 20 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.2. Informative References . . . . . . . . . . . . . . . . . 22 7.1. Normative References . . . . . . . . . . . . . . . . . . 21
Appendix A. Contributors' Addreses . . . . . . . . . . . . . . . 23 7.2. Informative References . . . . . . . . . . . . . . . . . 22
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 23 Appendix A. Contributors' Addreses . . . . . . . . . . . . . . . 24
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24
1. Overview 1. Overview
YANG [RFC6020] [RFC7950] is a data definition language used to YANG [RFC6020] [RFC7950] is a data definition language used to define
define the contents of a conceptual data store that allows networked the contents of a conceptual data store that allows networked devices
devices to be managed using NETCONF [RFC6241]. YANG is proving to be managed using NETCONF [RFC6241]. YANG is proving relevant
relevant beyond its initial confines, as bindings to other interfaces beyond its initial confines, as bindings to other interfaces (e.g.,
(e.g., ReST) and encodings other than XML (e.g., JSON) are being ReST) and encodings other than XML (e.g., JSON) are being defined.
defined. Furthermore, YANG data models can be used as the basis for Furthermore, YANG data models can be used as the basis for
implementation of other interfaces, such as CLI and programmatic implementation of other interfaces, such as CLI and programmatic
APIs. APIs.
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 Segment Routing and it is an augmentation to the OSPF and manage OSPF Segment Routing and it is an augmentation to the OSPF
YANG data model. YANG data model.
The YANG modules in this document conform to the Network Management
Datastore Architecture (NMDA) [RFC8342].
1.1. Requirements Language 1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
2. OSPF Segment Routing 2. Tree Diagrams
This document uses the graphical representation of data models
defined in [RFC8340].
3. OSPF Segment Routing
This document defines a model for OSPF Segment Routing feature [I-D.i This document defines a model for OSPF Segment Routing feature [I-D.i
etf-ospf-segment-routing-extensions][I-D.ietf-ospf-ospfv3-segment-rou etf-ospf-segment-routing-extensions][I-D.ietf-ospf-ospfv3-segment-rou
ting-extensions]. It is an augmentation of the OSPF base model. ting-extensions]. It is an augmentation of the OSPF base model.
The OSPF SR YANG module requires support for the base segment routing The OSPF SR YANG module requires support for the base segment routing
module [I-D.ietf-spring-sr-yang], which defines the global segment module [I-D.ietf-spring-sr-yang], which defines the global segment
routing configuration independent of any specific routing protocol routing configuration independent of any specific routing protocol
configuration, and support of OSPF base model[I-D.ietf-ospf-yang] configuration, and support of OSPF base model[I-D.ietf-ospf-yang]
which defines basic OSPF configuration and state. which defines basic OSPF configuration and state.
skipping to change at page 5, line 21 skipping to change at page 5, line 34
| | +--ro sid? uint32 | | +--ro sid? uint32
| +--ro unknown-tlvs | +--ro unknown-tlvs
| +--ro unknown-tlv* | +--ro unknown-tlv*
| +--ro type? uint16 | +--ro type? uint16
| +--ro length? uint16 | +--ro length? uint16
| +--ro value? yang:hex-string | +--ro value? yang:hex-string
+--ro sr-algorithm-tlv +--ro sr-algorithm-tlv
| +--ro sr-algorithm* uint8 | +--ro sr-algorithm* uint8
+--ro sid-range-tlvs +--ro sid-range-tlvs
| +--ro sid-range-tlv* | +--ro sid-range-tlv*
| +--ro range-size? ospf:uint24 | +--ro range-size? uint24
| +--ro sid-sub-tlv | +--ro sid-sub-tlv
| +--ro sid? uint32 | +--ro sid? uint32
+--ro local-block-tlvs +--ro local-block-tlvs
| +--ro local-block-tlv* | +--ro local-block-tlv*
| +--ro range-size? ospf:uint24 | +--ro range-size? uint24
| +--ro sid-sub-tlv | +--ro sid-sub-tlv
| +--ro sid? uint32 | +--ro sid? uint32
+--ro srms-preference-tlv +--ro srms-preference-tlv
+--ro preference? uint8 +--ro preference? uint8
augment /rt:routing/rt:control-plane-protocols augment /rt:routing/rt:control-plane-protocols
/rt:control-plane-protocol/ospf:ospf /rt:control-plane-protocol/ospf:ospf
/ospf:areas/ospf:area/ospf:database/ospf:area-scope-lsa-type /ospf:areas/ospf:area/ospf:database/ospf:area-scope-lsa-type
/ospf:area-scope-lsas/ospf:area-scope-lsa/ospf:version /ospf:area-scope-lsas/ospf:area-scope-lsa/ospf:version
/ospf:ospfv2/ospf:ospfv2/ospf:body/ospf:opaque: /ospf:ospfv2/ospf:ospfv2/ospf:body/ospf:opaque:
+--ro extended-prefix-range-tlvs +--ro extended-prefix-range-tlvs
skipping to change at page 6, line 8 skipping to change at page 6, line 21
| | +--ro sid? uint32 | | +--ro sid? uint32
| +--ro unknown-tlvs | +--ro unknown-tlvs
| +--ro unknown-tlv* | +--ro unknown-tlv*
| +--ro type? uint16 | +--ro type? uint16
| +--ro length? uint16 | +--ro length? uint16
| +--ro value? yang:hex-string | +--ro value? yang:hex-string
+--ro sr-algorithm-tlv +--ro sr-algorithm-tlv
| +--ro sr-algorithm* uint8 | +--ro sr-algorithm* uint8
+--ro sid-range-tlvs +--ro sid-range-tlvs
| +--ro sid-range-tlv* | +--ro sid-range-tlv*
| +--ro range-size? ospf:uint24 | +--ro range-size? uint24
| +--ro sid-sub-tlv | +--ro sid-sub-tlv
| +--ro sid? uint32 | +--ro sid? uint32
+--ro local-block-tlvs +--ro local-block-tlvs
| +--ro local-block-tlv* | +--ro local-block-tlv*
| +--ro range-size? ospf:uint24 | +--ro range-size? uint24
| +--ro sid-sub-tlv | +--ro sid-sub-tlv
| +--ro sid? uint32 | +--ro sid? uint32
+--ro srms-preference-tlv +--ro srms-preference-tlv
+--ro preference? uint8 +--ro preference? uint8
augment /rt:routing/rt:control-plane-protocols augment /rt:routing/rt:control-plane-protocols
/rt:control-plane-protocol/ospf:ospf /rt:control-plane-protocol/ospf:ospf
/ospf:database/ospf:as-scope-lsa-type/ospf:as-scope-lsas /ospf:database/ospf:as-scope-lsa-type/ospf:as-scope-lsas
/ospf:as-scope-lsa/ospf:version/ospf:ospfv2/ospf:ospfv2 /ospf:as-scope-lsa/ospf:version/ospf:ospfv2/ospf:ospfv2
/ospf:body/ospf:opaque: /ospf:body/ospf:opaque:
+--ro extended-prefix-range-tlvs +--ro extended-prefix-range-tlvs
skipping to change at page 6, line 43 skipping to change at page 7, line 8
| | +--ro sid? uint32 | | +--ro sid? uint32
| +--ro unknown-tlvs | +--ro unknown-tlvs
| +--ro unknown-tlv* | +--ro unknown-tlv*
| +--ro type? uint16 | +--ro type? uint16
| +--ro length? uint16 | +--ro length? uint16
| +--ro value? yang:hex-string | +--ro value? yang:hex-string
+--ro sr-algorithm-tlv +--ro sr-algorithm-tlv
| +--ro sr-algorithm* uint8 | +--ro sr-algorithm* uint8
+--ro sid-range-tlvs +--ro sid-range-tlvs
| +--ro sid-range-tlv* | +--ro sid-range-tlv*
| +--ro range-size? ospf:uint24 | +--ro range-size? uint24
| +--ro sid-sub-tlv | +--ro sid-sub-tlv
| +--ro sid? uint32 | +--ro sid? uint32
+--ro local-block-tlvs +--ro local-block-tlvs
| +--ro local-block-tlv* | +--ro local-block-tlv*
| +--ro range-size? ospf:uint24 | +--ro range-size? uint24
| +--ro sid-sub-tlv | +--ro sid-sub-tlv
| +--ro sid? uint32 | +--ro sid? uint32
+--ro srms-preference-tlv +--ro srms-preference-tlv
+--ro preference? uint8 +--ro preference? uint8
3. OSPF Segment Routing Yang Module 4. OSPF Segment Routing YANG Module
<CODE BEGINS> file "ietf-ospf-sr@2018-06-25.yang" <CODE BEGINS> file "ietf-ospf-sr@2019-03-05.yang"
module ietf-ospf-sr { module ietf-ospf-sr {
namespace "urn:ietf:params:xml:ns:yang:ietf-ospf-sr"; namespace "urn:ietf:params:xml:ns:yang:ietf-ospf-sr";
prefix ospf-sr; prefix ospf-sr;
import ietf-inet-types { import ietf-inet-types {
prefix "inet"; prefix "inet";
} }
import ietf-yang-types { import ietf-yang-types {
skipping to change at page 8, line 4 skipping to change at page 8, line 17
Editor: Derek Yeung Editor: Derek Yeung
<mailto:derek@arrcus.com> <mailto:derek@arrcus.com>
Author: Derek Yeung Author: Derek Yeung
<mailto:derek@arrcus.com> <mailto:derek@arrcus.com>
Author: Yingzhen Qu Author: Yingzhen Qu
<mailto:yingzhen.qu@huawei.com> <mailto:yingzhen.qu@huawei.com>
Author: Acee Lindem Author: Acee Lindem
<mailto:acee@cisco.com> <mailto:acee@cisco.com>
Author: Jeffrey Zhang Author: Jeffrey Zhang
<mailto:zzhang@juniper.net> <mailto:zzhang@juniper.net>
Author: Ing-Wher Chen Author: Ing-Wher Chen
<mailto:ing-wher_chen@jabil.com> <mailto:ingwherchen@mitre.org>
Author: Greg Hankins Author: Greg Hankins
<mailto:greg.hankins@alcatel-lucent.com>"; <mailto:greg.hankins@alcatel-lucent.com>";
description description
"This YANG module defines the generic configuration "This YANG module defines the generic configuration
and operational state for OSPF Segment Routing, which is and operational state for OSPF Segment Routing, which is
common across all of the vendor implementations. It is common across all of the vendor implementations. It is
intended that the module will be extended by vendors to intended that the module will be extended by vendors to
define vendor-specific OSPF Segment Routing configuration define vendor-specific OSPF Segment Routing configuration
and operational parameters and policies. and operational parameters and policies.
skipping to change at page 8, line 33 skipping to change at page 8, line 45
to the license terms contained in, the Simplified BSD License to the license terms contained in, the Simplified BSD License
set forth in Section 4.c of the IETF Trust's Legal Provisions set forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents Relating to IETF Documents
(http://trustee.ietf.org/license-info). (http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; This version of this YANG module is part of RFC XXXX;
see the RFC itself for full legal notices."; see the RFC itself for full legal notices.";
reference "RFC XXXX"; reference "RFC XXXX";
revision 2019-03-05 {
description
"";
reference
"RFC XXXX: A YANG Data Model for OSPF Segment Routing.";
}
revision 2018-06-25 { revision 2018-06-25 {
description description
""; "";
reference reference
"RFC XXXX: A YANG Data Model for OSPF Segment Routing."; "RFC XXXX: A YANG Data Model for OSPF Segment Routing.";
} }
revision 2018-03-03 { revision 2018-03-03 {
description description
"* Remove OSPF instance."; "* Remove OSPF instance.";
skipping to change at page 10, line 23 skipping to change at page 10, line 43
reference reference
"RFC XXXX: A YANG Data Model for OSPF Segment Routing."; "RFC XXXX: A YANG Data Model for OSPF Segment Routing.";
} }
feature ti-lfa { feature ti-lfa {
description description
"Topology-Independent Loop-Free Alternate (TI-LFA) "Topology-Independent Loop-Free Alternate (TI-LFA)
computation using segment routing."; computation using segment routing.";
} }
typedef uint24 {
type uint32 {
range "0 .. 16777215";
}
description
"24-bit unsigned integer.";
}
/* Groupings */ /* Groupings */
grouping sid-sub-tlv { grouping sid-sub-tlv {
description "SID/Label sub-TLV grouping."; description "SID/Label sub-TLV grouping.";
container sid-sub-tlv { container sid-sub-tlv {
description description
"Used to advertise the SID/Label associated with a "Used to advertise the SID/Label associated with a
prefix or adjacency."; prefix or adjacency.";
leaf sid { leaf sid {
type uint32; type uint32;
description description
skipping to change at page 11, line 50 skipping to change at page 12, line 32
} }
} }
grouping extended-prefix-range-tlvs { grouping extended-prefix-range-tlvs {
description "Extended prefix range TLV grouping."; description "Extended prefix range TLV grouping.";
container extended-prefix-range-tlvs { container extended-prefix-range-tlvs {
description "The list of range of prefixes."; description "The list of range of prefixes.";
list extended-prefix-range-tlv { //type=2? list extended-prefix-range-tlv { //type=2?
description "The range of prefixes."; description "The range of prefixes.";
leaf prefix-length {
type uint8;
description "Length of prefix in bits.";
}
leaf af {
type uint8;
description "Address family for the prefix.";
}
leaf range-size { leaf range-size {
type uint16; type uint16;
description "The number of prefixes covered by the description "The number of prefixes covered by the
advertisement."; advertisement.";
} }
leaf flags { leaf flags {
type bits { type bits {
bit IA { bit IA {
position 0; position 0;
description description
skipping to change at page 12, line 47 skipping to change at page 13, line 36
} }
} }
grouping sid-range-tlvs { grouping sid-range-tlvs {
description "SID Range TLV grouping."; description "SID Range TLV grouping.";
container sid-range-tlvs { container sid-range-tlvs {
description "List of SID range TLVs."; description "List of SID range TLVs.";
list sid-range-tlv { list sid-range-tlv {
description "SID range TLV."; description "SID range TLV.";
leaf range-size { leaf range-size {
type ospf:uint24; type uint24;
description "The SID range."; description "The SID range.";
} }
uses sid-sub-tlv; uses sid-sub-tlv;
} }
} }
} }
grouping local-block-tlvs { grouping local-block-tlvs {
description "The SR local block TLV contains the description "The SR local block TLV contains the
range of labels reserved for local SIDs."; range of labels reserved for local SIDs.";
container local-block-tlvs { container local-block-tlvs {
description "List of SRLB TLVs."; description "List of SRLB TLVs.";
list local-block-tlv { list local-block-tlv {
description "SRLB TLV."; description "SRLB TLV.";
skipping to change at page 13, line 16 skipping to change at page 14, line 4
} }
grouping local-block-tlvs { grouping local-block-tlvs {
description "The SR local block TLV contains the description "The SR local block TLV contains the
range of labels reserved for local SIDs."; range of labels reserved for local SIDs.";
container local-block-tlvs { container local-block-tlvs {
description "List of SRLB TLVs."; description "List of SRLB TLVs.";
list local-block-tlv { list local-block-tlv {
description "SRLB TLV."; description "SRLB TLV.";
leaf range-size { leaf range-size {
type ospf:uint24; type uint24;
description "The SID range."; description "The SID range.";
} }
uses sid-sub-tlv; uses sid-sub-tlv;
} }
} }
} }
grouping srms-preference-tlv { grouping srms-preference-tlv {
description "The SRMS preference TLV is used to advertise description "The SRMS preference TLV is used to advertise
a preference associated with the node that acts a preference associated with the node that acts
skipping to change at page 13, line 50 skipping to change at page 14, line 38
augment "/rt:routing/rt:control-plane-protocols" augment "/rt:routing/rt:control-plane-protocols"
+ "/rt:control-plane-protocol/ospf:ospf" { + "/rt:control-plane-protocol/ospf:ospf" {
when "../rt:type = 'ospf:ospfv2' or " when "../rt:type = 'ospf:ospfv2' or "
+ "../rt:type = 'ospf:ospfv3'" { + "../rt:type = 'ospf:ospfv3'" {
description description
"This augments the OSPF routing protocol when used."; "This augments the OSPF routing protocol when used.";
} }
description description
"This augments the OSPF protocol configuration "This augments the OSPF protocol configuration
with segment routing."; with segment routing.";
uses sr:controlplane-cfg; uses sr:sr-controlplane;
container protocol-srgb { container protocol-srgb {
if-feature sr:protocol-srgb; if-feature sr:protocol-srgb;
uses sr-cmn:srgb-cfg; uses sr-cmn:srgb;
description description
"Per-protocol SRGB."; "Per-protocol SRGB.";
} }
} }
augment "/rt:routing/rt:control-plane-protocols/" augment "/rt:routing/rt:control-plane-protocols/"
+ "rt:control-plane-protocol/ospf:ospf/" + "rt:control-plane-protocol/ospf:ospf/"
+ "ospf:areas/ospf:area/ospf:interfaces/ospf:interface" { + "ospf:areas/ospf:area/ospf:interfaces/ospf:interface" {
when "../../../../../rt:type = 'ospf:ospfv2' or " when "../../../../../rt:type = 'ospf:ospfv2' or "
+ "../../../../../rt:type = 'ospf:ospfv3'" { + "../../../../../rt:type = 'ospf:ospfv3'" {
skipping to change at page 14, line 15 skipping to change at page 15, line 4
description description
"Per-protocol SRGB."; "Per-protocol SRGB.";
} }
} }
augment "/rt:routing/rt:control-plane-protocols/" augment "/rt:routing/rt:control-plane-protocols/"
+ "rt:control-plane-protocol/ospf:ospf/" + "rt:control-plane-protocol/ospf:ospf/"
+ "ospf:areas/ospf:area/ospf:interfaces/ospf:interface" { + "ospf:areas/ospf:area/ospf:interfaces/ospf:interface" {
when "../../../../../rt:type = 'ospf:ospfv2' or " when "../../../../../rt:type = 'ospf:ospfv2' or "
+ "../../../../../rt:type = 'ospf:ospfv3'" { + "../../../../../rt:type = 'ospf:ospfv3'" {
description description
"This augments the OSPF interface configuration "This augments the OSPF interface configuration
when used."; when used.";
} }
description description
"This augments the OSPF protocol interface "This augments the OSPF protocol interface
configuration with segment routing."; configuration with segment routing.";
uses sr:igp-interface-cfg; uses sr:igp-interface;
} }
augment "/rt:routing/rt:control-plane-protocols/" augment "/rt:routing/rt:control-plane-protocols/"
+ "rt:control-plane-protocol/ospf:ospf/" + "rt:control-plane-protocol/ospf:ospf/"
+ "ospf:areas/ospf:area/ospf:interfaces/ospf:interface/" + "ospf:areas/ospf:area/ospf:interfaces/ospf:interface/"
+ "ospf:fast-reroute" { + "ospf:fast-reroute" {
when "../../../../../../rt:type = 'ospf:ospfv2' or " when "../../../../../../rt:type = 'ospf:ospfv2' or "
+ "../../../../../../rt:type = 'ospf:ospfv3'" { + "../../../../../../rt:type = 'ospf:ospfv3'" {
description description
"This augments the OSPF routing protocol when used."; "This augments the OSPF routing protocol when used.";
skipping to change at page 20, line 9 skipping to change at page 20, line 46
uses extended-prefix-range-tlvs; uses extended-prefix-range-tlvs;
uses sr-algorithm-tlv; uses sr-algorithm-tlv;
uses sid-range-tlvs; uses sid-range-tlvs;
uses local-block-tlvs; uses local-block-tlvs;
uses srms-preference-tlv; uses srms-preference-tlv;
} }
} }
<CODE ENDS> <CODE ENDS>
4. Security Considerations 5. Security Considerations
The data model defined does not create any security implications. The data model defined does not create any security implications.
This draft does not change any underlying security issues inherent in This draft does not change any underlying security issues inherent in
[I-D.ietf-netmod-routing-cfg]. [I-D.ietf-netmod-routing-cfg].
5. Acknowledgements 6. Acknowledgements
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 and Ladislav Lhotka, Stephane Litkowski, Greg Hankins, Manish Gupta and
Alan Davey for their thorough reviews and helpful comments. Alan Davey for their thorough reviews and helpful comments.
This document was produced using Marshall Rose's xml2rfc tool. This document was produced using Marshall Rose's xml2rfc tool.
6. References Author affiliation with The MITRE Corporation is provided for
identification purposes only, and is not intended to convey or imply
MITRE's concurrence with, or support for, the positions, opinions or
viewpoints expressed. MITRE has approved this document for Public
Release, Distribution Unlimited, with Public Release Case Number
18-3281.
6.1. Normative References 7. References
7.1. Normative References
[I-D.ietf-ospf-ospfv3-segment-routing-extensions] [I-D.ietf-ospf-ospfv3-segment-routing-extensions]
Psenak, P., Filsfils, C., Previdi, S., Gredler, H., Psenak, P. and S. Previdi, "OSPFv3 Extensions for Segment
Shakir, R., Henderickx, W., and J. Tantsura, "OSPFv3 Routing", draft-ietf-ospf-ospfv3-segment-routing-
Extensions for Segment Routing", draft-ietf-ospf-ospfv3- extensions-23 (work in progress), January 2019.
segment-routing-extensions-13 (work in progress), May
2018.
[I-D.ietf-ospf-segment-routing-extensions] [I-D.ietf-ospf-segment-routing-extensions]
Psenak, P., Previdi, S., Filsfils, C., Gredler, H., Psenak, P., Previdi, S., Filsfils, C., Gredler, H.,
Shakir, R., Henderickx, W., and J. Tantsura, "OSPF Shakir, R., Henderickx, W., and J. Tantsura, "OSPF
Extensions for Segment Routing", draft-ietf-ospf-segment- Extensions for Segment Routing", draft-ietf-ospf-segment-
routing-extensions-25 (work in progress), April 2018. routing-extensions-27 (work in progress), December 2018.
[I-D.ietf-ospf-yang] [I-D.ietf-ospf-yang]
Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem,
"Yang Data Model for OSPF Protocol", draft-ietf-ospf- "YANG Data Model for OSPF Protocol", draft-ietf-ospf-
yang-11 (work in progress), April 2018. yang-21 (work in progress), January 2019.
[I-D.ietf-spring-sr-yang] [I-D.ietf-spring-sr-yang]
Litkowski, S., Qu, Y., Sarkar, P., and J. Tantsura, "YANG Litkowski, S., Qu, Y., Lindem, A., Sarkar, P., and J.
Data Model for Segment Routing", draft-ietf-spring-sr- Tantsura, "YANG Data Model for Segment Routing", draft-
yang-09 (work in progress), June 2018. ietf-spring-sr-yang-12 (work in progress), February 2019.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, [RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998, DOI 10.17487/RFC2328, April 1998,
<https://www.rfc-editor.org/info/rfc2328>. <https://www.rfc-editor.org/info/rfc2328>.
skipping to change at page 22, line 5 skipping to change at page 22, line 41
<https://www.rfc-editor.org/info/rfc6241>. <https://www.rfc-editor.org/info/rfc6241>.
[RFC7223] Bjorklund, M., "A YANG Data Model for Interface [RFC7223] Bjorklund, M., "A YANG Data Model for Interface
Management", RFC 7223, DOI 10.17487/RFC7223, May 2014, Management", RFC 7223, DOI 10.17487/RFC7223, May 2014,
<https://www.rfc-editor.org/info/rfc7223>. <https://www.rfc-editor.org/info/rfc7223>.
[RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
RFC 7950, DOI 10.17487/RFC7950, August 2016, RFC 7950, DOI 10.17487/RFC7950, August 2016,
<https://www.rfc-editor.org/info/rfc7950>. <https://www.rfc-editor.org/info/rfc7950>.
6.2. Informative References 7.2. Informative References
[RFC8022] Lhotka, L. and A. Lindem, "A YANG Data Model for Routing [RFC8022] Lhotka, L. and A. Lindem, "A YANG Data Model for Routing
Management", RFC 8022, DOI 10.17487/RFC8022, November Management", RFC 8022, DOI 10.17487/RFC8022, November
2016, <https://www.rfc-editor.org/info/rfc8022>. 2016, <https://www.rfc-editor.org/info/rfc8022>.
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams",
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018,
<https://www.rfc-editor.org/info/rfc8340>.
[RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
and R. Wilton, "Network Management Datastore Architecture
(NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018,
<https://www.rfc-editor.org/info/rfc8342>.
Appendix A. Contributors' Addreses Appendix A. Contributors' Addreses
Dean Bogdanovic Dean Bogdanovic
Volta Networks, Inc. Volta Networks, Inc.
EMail: dean@voltanet.io EMail: dean@voltanet.io
Kiran Koushik Agrahara Sreenivasa Kiran Koushik Agrahara Sreenivasa
Cisco Systems Cisco Systems
12515 Research Blvd, Bldg 4 12515 Research Blvd, Bldg 4
skipping to change at page 23, line 44 skipping to change at page 24, line 44
Jeffrey Zhang Jeffrey Zhang
Juniper Networks Juniper Networks
10 Technology Park Drive 10 Technology Park Drive
Westford, MA 01886 Westford, MA 01886
USA USA
EMail: zzhang@juniper.net EMail: zzhang@juniper.net
Ing-Wher Chen Ing-Wher Chen
Jabil Circuit The MITRE Corporation
EMail: Ing-Wher_chen@jabil.com EMail: ingwherchen@mitre.org
Acee Lindem Acee Lindem
Cisco Systems Cisco Systems
301 Midenhall Way 301 Midenhall Way
Cary, NC 27513 Cary, NC 27513
EMail: acee@cisco.com EMail: acee@cisco.com
 End of changes. 43 change blocks. 
58 lines changed or deleted 104 lines changed or added

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