--- 1/draft-ietf-isis-sr-yang-05.txt 2019-07-07 12:13:11.174412915 -0700 +++ 2/draft-ietf-isis-sr-yang-06.txt 2019-07-07 12:13:11.218413953 -0700 @@ -1,25 +1,25 @@ IS-IS Working Group S. Litkowski Internet-Draft Orange Intended status: Standards Track Y. Qu -Expires: September 11, 2019 Huawei +Expires: January 8, 2020 Futurewei P. Sarkar Individual I. Chen The MITRE Corporation J. Tantsura Individual - March 10, 2019 + July 7, 2019 YANG Data Model for IS-IS Segment Routing - draft-ietf-isis-sr-yang-05 + draft-ietf-isis-sr-yang-06 Abstract This document defines a YANG data model that can be used to configure and manage IS-IS Segment Routing. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. @@ -27,21 +27,21 @@ Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on September 11, 2019. + This Internet-Draft will expire on January 8, 2020. Copyright Notice Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents @@ -61,30 +61,30 @@ 5.1. Segment Routing activation . . . . . . . . . . . . . . . 6 5.2. Advertising mapping server policy . . . . . . . . . . . . 6 5.3. IP Fast reroute . . . . . . . . . . . . . . . . . . . . . 6 6. IS-IS Segment Routing YANG Module . . . . . . . . . . . . . . 6 7. Security Considerations . . . . . . . . . . . . . . . . . . . 20 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 21 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 11. Change log for ietf-isis-sr YANG module . . . . . . . . . . . 21 11.1. From version -03 to version -04 . . . . . . . . . . . . 21 - 11.2. From version -02 to version -03 . . . . . . . . . . . . 21 + 11.2. From version -02 to version -03 . . . . . . . . . . . . 22 11.3. From isis-sr document version -01 to version -02 . . . . 22 11.4. From isis-sr document version -00 to version -01 . . . . 22 11.5. From isis document version -12 to isis-sr document version -00 . . . . . . . . . . . . . . . . . . . . . . 22 11.6. From isis document version -12 to version -13 . . . . . 22 11.7. From isis document version -09 to version -11 . . . . . 22 11.8. From isis document version -08 to version -09 . . . . . 22 11.9. From isis document version -07 to version -08 . . . . . 22 - 12. Normative References . . . . . . . . . . . . . . . . . . . . 22 + 12. Normative References . . . . . . . . . . . . . . . . . . . . 23 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24 1. Overview YANG [RFC6020] [RFC7950] is a data definition language used to define the contents of a conceptual data store that allows networked devices to be managed using NETCONF [RFC6241]. YANG is proving relevant beyond its initial confines, as bindings to other interfaces (e.g., ReST) and encodings other than XML (e.g., JSON) are being defined. Furthermore, YANG data models can be used as the basis for @@ -139,20 +139,24 @@ | +--rw receive? boolean +--rw protocol-srgb {sr:protocol-srgb}? +--rw srgb* [lower-bound upper-bound] +--rw lower-bound uint32 +--rw upper-bound uint32 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:interfaces /isis:interface: +--rw segment-routing +--rw adjacency-sid + +--rw adj-sids* [value] + | +--rw value-type? enumeration + | +--rw value uint32 + | +--rw protected? boolean +--rw advertise-adj-group-sid* [group-id] | +--rw group-id uint32 +--rw advertise-protection? enumeration augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:interfaces /isis:interface/isis:fast-reroute: +--rw ti-lfa {ti-lfa}? +--rw enable? boolean augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:interfaces @@ -161,88 +165,88 @@ augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:interfaces /isis:interface/isis:adjacencies/isis:adjacency: +--ro adjacency-sid* [value] +--ro af? iana-rt-types:address-family +--ro value uint32 +--ro weight? uint8 +--ro protection-requested? boolean augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp/isis:router-capabilities: + /isis:levels/isis:lsp/isis:router-capabilities: +--ro sr-capability | +--ro flags? bits | +--ro global-blocks | +--ro global-block* | +--ro range-size? uint32 | +--ro sid-sub-tlv | +--ro sid? uint32 +--ro sr-algorithms | +--ro sr-algorithm* uint8 +--ro local-blocks | +--ro local-block* | +--ro range-size? uint32 | +--ro sid-sub-tlv | +--ro sid? uint32 +--ro srms-preference +--ro preference? uint8 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp/isis:extended-is-neighbor + /isis:levels/isis:lsp/isis:extended-is-neighbor /isis:neighbor: +--ro sid-list* [value] +--ro flags? bits +--ro weight? uint8 +--ro neighbor-id? isis:system-id +--ro value uint32 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp/isis:mt-is-neighbor/isis:neighbor: + /isis:levels/isis:lsp/isis:mt-is-neighbor/isis:neighbor: +--ro sid-list* [value] +--ro flags? bits +--ro weight? uint8 +--ro neighbor-id? isis:system-id +--ro value uint32 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp/isis:extended-ipv4-reachability + /isis:levels/isis:lsp/isis:extended-ipv4-reachability /isis:prefixes: +--ro sid-list* [value] +--ro flags? bits +--ro algorithm? uint8 +--ro value uint32 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp/isis:mt-extended-ipv4-reachability + /isis:levels/isis:lsp/isis:mt-extended-ipv4-reachability /isis:prefixes: +--ro sid-list* [value] +--ro flags? bits +--ro algorithm? uint8 +--ro value uint32 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp/isis:ipv6-reachability/isis:prefixes: + /isis:levels/isis:lsp/isis:ipv6-reachability/isis:prefixes: +--ro sid-list* [value] +--ro flags? bits +--ro algorithm? uint8 +--ro value uint32 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp/isis:mt-ipv6-reachability + /isis:levels/isis:lsp/isis:mt-ipv6-reachability /isis:prefixes: +--ro sid-list* [value] +--ro flags? bits +--ro algorithm? uint8 +--ro value uint32 augment /rt:routing/rt:control-plane-protocols /rt:control-plane-protocol/isis:isis/isis:database - /isis:level-db/isis:lsp: + /isis:levels/isis:lsp: +--ro segment-routing-bindings* [fec range] +--ro fec string +--ro range uint16 +--ro flags? bits +--ro binding +--ro prefix-sid +--ro sid-list* [value] +--ro flags? bits +--ro algorithm? uint8 +--ro value uint32 @@ -267,21 +271,21 @@ 5.3. IP Fast reroute IS-IS SR model augments the fast-reroute container under interface. It brings the ability to activate TI-LFA (topology independent LFA) and also enhances remote LFA to use segment-routing tunneling instead of LDP. 6. IS-IS Segment Routing YANG Module - file "ietf-isis-sr@2019-03-06.yang" + file "ietf-isis-sr@2019-07-07.yang" module ietf-isis-sr { namespace "urn:ietf:params:xml:ns:" + "yang:ietf-isis-sr"; prefix isis-sr; import ietf-routing { prefix "rt"; } import ietf-segment-routing-common { @@ -305,39 +309,40 @@ contact "WG List: Editor: Stephane Litkowski Author: Acee Lindem Author: Yingzhen Qu - + Author: Pushpasis Sarkar Author: Ing-Wher Chen Author: Jeff Tantsura "; description "The YANG module defines a generic configuration model for Segment routing ISIS extensions common across all of the vendor implementations."; - revision 2019-03-06 { + revision 2019-07-07 { description "Initial revision."; reference "RFC XXXX"; } + /* Identities */ /* Features */ feature remote-lfa-sr { description "Enhance rLFA to use SR path."; } feature ti-lfa { @@ -819,96 +823,98 @@ } description "This augments ISIS protocol configuration with segment routing."; uses adjacency-state; } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp"+ + "/isis:isis/isis:database/isis:levels/isis:lsp"+ "/isis:router-capabilities" { when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB router capability."; uses sr-capability; uses sr-algorithm; uses srlb; uses srms-preference; } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp"+ + "/isis:isis/isis:database/isis:levels/isis:lsp"+ "/isis:extended-is-neighbor/isis:neighbor" { when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB neighbor."; uses adjacency-segment-id; + } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp"+ + "/isis:isis/isis:database/isis:levels/isis:lsp"+ "/isis:mt-is-neighbor/isis:neighbor" { when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB neighbor."; uses adjacency-segment-id; } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp"+ + "/isis:isis/isis:database/isis:levels/isis:lsp"+ "/isis:extended-ipv4-reachability/isis:prefixes" { when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB prefix."; uses prefix-segment-id; } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp"+ + "/isis:isis/isis:database/isis:levels/isis:lsp"+ "/isis:mt-extended-ipv4-reachability/isis:prefixes" { when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB prefix."; uses prefix-segment-id; } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp"+ + "/isis:isis/isis:database/isis:levels/isis:lsp"+ "/isis:ipv6-reachability/isis:prefixes" { + when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB prefix."; uses prefix-segment-id; } @@ -907,35 +913,35 @@ description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB prefix."; uses prefix-segment-id; } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp"+ + "/isis:isis/isis:database/isis:levels/isis:lsp"+ "/isis:mt-ipv6-reachability/isis:prefixes" { when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB prefix."; uses prefix-segment-id; } augment "/rt:routing/" + "rt:control-plane-protocols/rt:control-plane-protocol"+ - "/isis:isis/isis:database/isis:level-db/isis:lsp" { + "/isis:isis/isis:database/isis:levels/isis:lsp" { when "/rt:routing/rt:control-plane-protocols/"+ "rt:control-plane-protocol/rt:type = 'isis:isis'" { description "This augment ISIS routing protocol when used"; } description "This augments ISIS protocol LSDB."; uses segment-routing-binding-tlv; } @@ -1099,23 +1105,23 @@ . Authors' Addresses Stephane Litkowski Orange Email: stephane.litkowski@orange.com Yinghzen Qu - Huawei + Futurewei - Email: yingzhen.qu@huawei.com + Email: yingzhen.qu@Futurewei.com Pushpasis Sarkar Individual Email: pushpasis.ietf@gmail.com Ing-Wher Chen The MITRE Corporation Email: ingwherchen@mitre.org