draft-ietf-ospf-sr-yang-08.txt   draft-ietf-ospf-sr-yang-09.txt 
Internet D. Yeung Internet D. Yeung
Internet-Draft Arrcus Internet-Draft Arrcus
Intended status: Standards Track Y. Qu Intended status: Standards Track Y. Qu
Expires: January 8, 2020 Futurewei Expires: February 8, 2020 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
July 7, 2019 August 7, 2019
YANG Data Model for OSPF SR (Segment Routing) Protocol YANG Data Model for OSPF SR (Segment Routing) Protocol
draft-ietf-ospf-sr-yang-08 draft-ietf-ospf-sr-yang-09
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. The model is based on YANG 1.1 as 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 defined in RFC 7950 and conforms to the Network Management Datastore
Architecture (NDMA) as described in RFC 8342. Architecture (NDMA) as described in RFC 8342.
Status of This Memo Status of This Memo
skipping to change at page 1, line 40 skipping to change at page 1, line 40
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 8, 2020. This Internet-Draft will expire on February 8, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2019 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
skipping to change at page 3, line 23 skipping to change at page 3, line 23
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.
module: ietf-ospf-sr module: ietf-ospf-sr
module: ietf-ospf-sr
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:
+--rw segment-routing +--rw segment-routing
| +--rw enabled? boolean | +--rw enabled? boolean
| +--rw bindings | +--rw bindings
| +--rw advertise | +--rw advertise
| | +--rw policies* string | | +--rw policies* string
| +--rw receive? boolean | +--rw receive? boolean
+--rw protocol-srgb {sr:protocol-srgb}? +--rw protocol-srgb {sr:protocol-srgb}?
+--rw srgb* [lower-bound upper-bound] +--rw srgb* [lower-bound upper-bound]
+--rw lower-bound uint32 +--rw lower-bound uint32
+--rw upper-bound uint32 +--rw upper-bound uint32
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:areas/ospf:area/ospf:interface: /ospf:area/ospf:interfaces/ospf:interface:
+--rw segment-routing +--rw segment-routing
+--rw adjacency-sid +--rw adjacency-sid
+--rw adj-sids* [value] +--rw adj-sids* [value]
| +--rw value-type? enumeration | +--rw value-type? enumeration
| +--rw value uint32 | +--rw value uint32
| +--rw protected? boolean | +--rw protected? boolean
+--rw advertise-adj-group-sid* [group-id] +--rw advertise-adj-group-sid* [group-id]
| +--rw group-id uint32 | +--rw group-id uint32
+--rw advertise-protection? enumeration +--rw advertise-protection? enumeration
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:areas/ospf:area/ospf:interfaces/ospf:interface /ospf:area/ospf:interfaces/ospf:interface/ospf:fast-reroute:
/ospf:fast-reroute:
+--rw ti-lfa {ti-lfa}? +--rw ti-lfa {ti-lfa}?
+--rw enable? boolean +--rw enable? boolean
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:areas/ospf:area/ospf:interfaces/ospf:interface /ospf:area/ospf:interfaces/ospf:interface/ospf:database
/ospf:database/ospf:link-scope-lsa-type/ospf:link-scope-lsas /ospf:link-scope-lsa-type/ospf:link-scope-lsas
/ospf:link-scope-lsa/ospf:version/ospf:ospfv2/ospf:ospfv2 /ospf:link-scope-lsa/ospf:version/ospf:ospfv2/ospf:ospfv2
/ospf:body/ospf:opaque/ospf:extended-prefix-tlvs /ospf:body/ospf:opaque/ospf:extended-prefix-opaque
/ospf:extended-prefix-tlv: /ospf:extended-prefix-tlv:
+--ro perfix-sid-sub-tlvs +--ro perfix-sid-sub-tlvs
+--ro prefix-sid-sub-tlv* +--ro prefix-sid-sub-tlv*
+--ro flags? bits +--ro flags? bits
+--ro mt-id? uint8 +--ro mt-id? uint8
+--ro algorithm? uint8 +--ro algorithm? uint8
+--ro sid? uint32 +--ro sid? uint32
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:areas/ospf:area/ospf:database/ospf:area-scope-lsa-type /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
/ospf:extended-prefix-tlvs/ospf:extended-prefix-tlv: /ospf:extended-prefix-opaque/ospf:extended-prefix-tlv:
+--ro perfix-sid-sub-tlvs +--ro perfix-sid-sub-tlvs
+--ro prefix-sid-sub-tlv* +--ro prefix-sid-sub-tlv*
+--ro flags? bits +--ro flags? bits
+--ro mt-id? uint8 +--ro mt-id? uint8
+--ro algorithm? uint8 +--ro algorithm? uint8
+--ro sid? uint32 +--ro sid? uint32
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:database/ospf:as-scope-lsa-type/ospf:as-scope-lsas /ospf:as-scope-lsa-type/ospf:as-scope-lsas/ospf:as-scope-lsa
/ospf:as-scope-lsa/ospf:version/ospf:ospfv2/ospf:ospfv2 /ospf:version/ospf:ospfv2/ospf:ospfv2/ospf:body/ospf:opaque
/ospf:body/ospf:opaque/ospf:extended-prefix-tlvs /ospf:extended-prefix-opaque/ospf:extended-prefix-tlv:
/ospf:extended-prefix-tlv:
+--ro perfix-sid-sub-tlvs +--ro perfix-sid-sub-tlvs
+--ro prefix-sid-sub-tlv* +--ro prefix-sid-sub-tlv*
+--ro flags? bits +--ro flags? bits
+--ro mt-id? uint8 +--ro mt-id? uint8
+--ro algorithm? uint8 +--ro algorithm? uint8
+--ro sid? uint32 +--ro sid? uint32
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:areas/ospf:area/ospf:database/ospf:area-scope-lsa-type /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
/ospf:extended-link-tlvs/ospf:extended-link-tlv: /ospf:extended-link-opaque/ospf:extended-link-tlv:
+--ro adj-sid-sub-tlvs +--ro adj-sid-sub-tlvs
| +--ro adj-sid-sub-tlv* | +--ro adj-sid-sub-tlv*
| +--ro flags? bits | +--ro flags? bits
| +--ro mt-id? uint8 | +--ro mt-id? uint8
| +--ro weight? uint8 | +--ro weight? uint8
| +--ro sid? uint32 | +--ro sid? uint32
+--ro lan-adj-sid-sub-tlvs +--ro lan-adj-sid-sub-tlvs
+--ro lan-adj-sid-sub-tlv* +--ro lan-adj-sid-sub-tlv*
+--ro flags? bits +--ro flags? bits
+--ro mt-id? uint8 +--ro mt-id? uint8
+--ro weight? uint8 +--ro weight? uint8
+--ro neighbor-router-id? yang:dotted-quad +--ro neighbor-router-id? yang:dotted-quad
+--ro sid? uint32 +--ro sid? uint32
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:areas/ospf:area/ospf:interfaces/ospf:interface /ospf:area/ospf:interfaces/ospf:interface/ospf:database
/ospf:database/ospf:link-scope-lsa-type/ospf:link-scope-lsas /ospf:link-scope-lsa-type/ospf:link-scope-lsas
/ospf:link-scope-lsa/ospf:version/ospf:ospfv2/ospf:ospfv2 /ospf:link-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
| +--ro extended-prefix-range-tlv* | +--ro extended-prefix-range-tlv*
| +--ro prefix-length? uint8
| +--ro af? uint8
| +--ro range-size? uint16 | +--ro range-size? uint16
| +--ro flags? bits | +--ro flags? bits
| +--ro prefix? inet:ip-prefix | +--ro prefix? inet:ip-prefix
| +--ro perfix-sid-sub-tlvs | +--ro perfix-sid-sub-tlvs
| | +--ro prefix-sid-sub-tlv* | | +--ro prefix-sid-sub-tlv*
| | +--ro flags? bits | | +--ro flags? bits
| | +--ro mt-id? uint8 | | +--ro mt-id? uint8
| | +--ro algorithm? uint8 | | +--ro algorithm? uint8
| | +--ro sid? uint32 | | +--ro sid? uint32
| +--ro unknown-tlvs | +--ro unknown-tlvs
skipping to change at page 5, line 49 skipping to change at page 5, line 50
| +--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? 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:areas/ospf:area/ospf:database/ospf:area-scope-lsa-type /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
| +--ro extended-prefix-range-tlv* | +--ro extended-prefix-range-tlv*
| +--ro prefix-length? uint8
| +--ro af? uint8
| +--ro range-size? uint16 | +--ro range-size? uint16
| +--ro flags? bits | +--ro flags? bits
| +--ro prefix? inet:ip-prefix | +--ro prefix? inet:ip-prefix
| +--ro perfix-sid-sub-tlvs | +--ro perfix-sid-sub-tlvs
| | +--ro prefix-sid-sub-tlv* | | +--ro prefix-sid-sub-tlv*
| | +--ro flags? bits | | +--ro flags? bits
| | +--ro mt-id? uint8 | | +--ro mt-id? uint8
| | +--ro algorithm? uint8 | | +--ro algorithm? uint8
| | +--ro sid? uint32 | | +--ro sid? uint32
| +--ro unknown-tlvs | +--ro unknown-tlvs
skipping to change at page 6, line 36 skipping to change at page 6, line 39
| +--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? 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:database/ospf:as-scope-lsa-type/ospf:as-scope-lsas /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
| +--ro extended-prefix-range-tlv* | +--ro extended-prefix-range-tlv*
| +--ro prefix-length? uint8
| +--ro af? uint8
| +--ro range-size? uint16 | +--ro range-size? uint16
| +--ro flags? bits | +--ro flags? bits
| +--ro prefix? inet:ip-prefix | +--ro prefix? inet:ip-prefix
| +--ro perfix-sid-sub-tlvs | +--ro perfix-sid-sub-tlvs
| | +--ro prefix-sid-sub-tlv* | | +--ro prefix-sid-sub-tlv*
| | +--ro flags? bits | | +--ro flags? bits
| | +--ro mt-id? uint8 | | +--ro mt-id? uint8
| | +--ro algorithm? uint8 | | +--ro algorithm? uint8
| | +--ro sid? uint32 | | +--ro sid? uint32
| +--ro unknown-tlvs | +--ro unknown-tlvs
skipping to change at page 7, line 25 skipping to change at page 7, line 30
+--ro local-block-tlvs +--ro local-block-tlvs
| +--ro local-block-tlv* | +--ro local-block-tlv*
| +--ro range-size? 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
4. OSPF Segment Routing YANG Module 4. OSPF Segment Routing YANG Module
<CODE BEGINS> file "ietf-ospf-sr@2019-07-07.yang" <CODE BEGINS> file "ietf-ospf-sr@2019-08-07.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 7, line 47 skipping to change at page 8, line 4
} }
import ietf-routing { import ietf-routing {
prefix "rt"; prefix "rt";
} }
import ietf-segment-routing-common { import ietf-segment-routing-common {
prefix "sr-cmn"; prefix "sr-cmn";
} }
import ietf-segment-routing { import ietf-segment-routing {
prefix "sr"; prefix "sr";
} }
import ietf-ospf { import ietf-ospf {
prefix "ospf"; prefix "ospf";
} }
organization organization
"IETF OSPF - OSPF Working Group"; "IETF LSR - Link State Routing Working Group";
contact contact
"WG Web: <http://tools.ietf.org/wg/ospf/> "WG Web: <http://tools.ietf.org/wg/lsr/>
WG List: <mailto:ospf@ietf.org> WG List: <mailto:lsr@ietf.org>
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@futurewei.com> <mailto:yingzhen.qu@futurewei.com>
Author: Acee Lindem Author: Acee Lindem
<mailto:acee@cisco.com> <mailto:acee@cisco.com>
Author: Jeffrey Zhang Author: Jeffrey Zhang
skipping to change at page 8, line 49 skipping to change at page 9, line 7
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-07-07 { revision 2019-08-07 {
description description
""; "";
reference
"RFC XXXX: A YANG Data Model for OSPF Segment Routing.";
}
revision 2019-07-07 {
description
"";
reference reference
"RFC XXXX: A YANG Data Model for OSPF Segment Routing."; "RFC XXXX: A YANG Data Model for OSPF Segment Routing.";
} }
revision 2019-03-05 { revision 2019-03-05 {
description description
""; "";
reference reference
"RFC XXXX: A YANG Data Model for OSPF Segment Routing."; "RFC XXXX: A YANG Data Model for OSPF Segment Routing.";
} }
skipping to change at page 16, line 11 skipping to change at page 16, line 22
} }
/* Database */ /* Database */
augment "/rt:routing/" augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/" + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:areas/ospf:area/" + "ospf:ospf/ospf:areas/ospf:area/"
+ "ospf:interfaces/ospf:interface/ospf:database/" + "ospf:interfaces/ospf:interface/ospf:database/"
+ "ospf:link-scope-lsa-type/ospf:link-scope-lsas/" + "ospf:link-scope-lsa-type/ospf:link-scope-lsas/"
+ "ospf:link-scope-lsa/ospf:version/ospf:ospfv2/" + "ospf:link-scope-lsa/ospf:version/ospf:ospfv2/"
+ "ospf:ospfv2/ospf:body/ospf:opaque/" + "ospf:ospfv2/ospf:body/ospf:opaque/"
+ "ospf:extended-prefix-tlvs/ospf:extended-prefix-tlv" { + "ospf:extended-prefix-opaque/ospf:extended-prefix-tlv" {
when "../../../../../../../../../../../../../../" when "../../../../../../../../../../../../../../"
+ "rt:type = 'ospf:ospfv2'" { + "rt:type = 'ospf:ospfv2'" {
description description
"This augmentation is only valid for OSPFv2."; "This augmentation is only valid for OSPFv2.";
} }
description description
"SR specific TLVs for OSPFv2 extended prefix TLV "SR specific TLVs for OSPFv2 extended prefix TLV
in type 9 opaque LSA."; in type 9 opaque LSA.";
uses prefix-sid-sub-tlvs; uses prefix-sid-sub-tlvs;
} }
augment "/rt:routing/" augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/" + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:areas/" + "ospf:ospf/ospf:areas/"
+ "ospf:area/ospf:database/" + "ospf:area/ospf:database/"
+ "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ "ospf:area-scope-lsa/ospf:version/ospf:ospfv2/" + "ospf:area-scope-lsa/ospf:version/ospf:ospfv2/"
+ "ospf:ospfv2/ospf:body/ospf:opaque/" + "ospf:ospfv2/ospf:body/ospf:opaque/"
+ "ospf:extended-prefix-tlvs/ospf:extended-prefix-tlv" { + "ospf:extended-prefix-opaque/ospf:extended-prefix-tlv" {
when "../../../../../../../../../../../../" when "../../../../../../../../../../../../"
+ "rt:type = 'ospf:ospfv2'" { + "rt:type = 'ospf:ospfv2'" {
description description
"This augmentation is only valid for OSPFv2."; "This augmentation is only valid for OSPFv2.";
} }
description description
"SR specific TLVs for OSPFv2 extended prefix TLV "SR specific TLVs for OSPFv2 extended prefix TLV
in type 10 opaque LSA."; in type 10 opaque LSA.";
uses prefix-sid-sub-tlvs; uses prefix-sid-sub-tlvs;
} }
skipping to change at page 16, line 41 skipping to change at page 17, line 4
when "../../../../../../../../../../../../" when "../../../../../../../../../../../../"
+ "rt:type = 'ospf:ospfv2'" { + "rt:type = 'ospf:ospfv2'" {
description description
"This augmentation is only valid for OSPFv2."; "This augmentation is only valid for OSPFv2.";
} }
description description
"SR specific TLVs for OSPFv2 extended prefix TLV "SR specific TLVs for OSPFv2 extended prefix TLV
in type 10 opaque LSA."; in type 10 opaque LSA.";
uses prefix-sid-sub-tlvs; uses prefix-sid-sub-tlvs;
} }
augment "/rt:routing/" augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/" + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:database/" + "ospf:ospf/ospf:database/"
+ "ospf:as-scope-lsa-type/ospf:as-scope-lsas/" + "ospf:as-scope-lsa-type/ospf:as-scope-lsas/"
+ "ospf:as-scope-lsa/ospf:version/ospf:ospfv2/" + "ospf:as-scope-lsa/ospf:version/ospf:ospfv2/"
+ "ospf:ospfv2/ospf:body/ospf:opaque/" + "ospf:ospfv2/ospf:body/ospf:opaque/"
+ "ospf:extended-prefix-tlvs/ospf:extended-prefix-tlv" { + "ospf:extended-prefix-opaque/ospf:extended-prefix-tlv" {
when "../../../../../../../../../../" when "../../../../../../../../../../"
+ "rt:type = 'ospf:ospfv2'" { + "rt:type = 'ospf:ospfv2'" {
description description
"This augmentation is only valid for OSPFv2."; "This augmentation is only valid for OSPFv2.";
} }
description description
"SR specific TLVs for OSPFv2 extended prefix TLV "SR specific TLVs for OSPFv2 extended prefix TLV
in type 11 opaque LSA."; in type 11 opaque LSA.";
uses prefix-sid-sub-tlvs; uses prefix-sid-sub-tlvs;
} }
augment "/rt:routing/" augment "/rt:routing/"
+ "rt:control-plane-protocols/rt:control-plane-protocol/" + "rt:control-plane-protocols/rt:control-plane-protocol/"
+ "ospf:ospf/ospf:areas/" + "ospf:ospf/ospf:areas/"
+ "ospf:area/ospf:database/" + "ospf:area/ospf:database/"
+ "ospf:area-scope-lsa-type/ospf:area-scope-lsas/" + "ospf:area-scope-lsa-type/ospf:area-scope-lsas/"
+ "ospf:area-scope-lsa/ospf:version/ospf:ospfv2/" + "ospf:area-scope-lsa/ospf:version/ospf:ospfv2/"
+ "ospf:ospfv2/ospf:body/ospf:opaque/" + "ospf:ospfv2/ospf:body/ospf:opaque/"
+ "ospf:extended-link-tlvs/ospf:extended-link-tlv" { + "ospf:extended-link-opaque/ospf:extended-link-tlv" {
when "../../../../../../../../../../../../" when "../../../../../../../../../../../../"
+ "rt:type = 'ospf:ospfv2'" { + "rt:type = 'ospf:ospfv2'" {
description description
"This augmentation is only valid for OSPFv2."; "This augmentation is only valid for OSPFv2.";
} }
description description
"SR specific TLVs for OSPFv2 extended link TLV "SR specific TLVs for OSPFv2 extended link TLV
in type 10 opaque LSA."; in type 10 opaque LSA.";
container adj-sid-sub-tlvs { container adj-sid-sub-tlvs {
skipping to change at page 21, line 49 skipping to change at page 22, line 14
[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-27 (work in progress), December 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-23 (work in progress), July 2019. yang-25 (work in progress), August 2019.
[I-D.ietf-spring-sr-yang] [I-D.ietf-spring-sr-yang]
Litkowski, S., Qu, Y., Lindem, A., Sarkar, P., and J. Litkowski, S., Qu, Y., Lindem, A., Sarkar, P., and J.
Tantsura, "YANG Data Model for Segment Routing", draft- Tantsura, "YANG Data Model for Segment Routing", draft-
ietf-spring-sr-yang-12 (work in progress), February 2019. ietf-spring-sr-yang-13 (work in progress), July 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>.
 End of changes. 35 change blocks. 
43 lines changed or deleted 55 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/