--- 1/draft-ietf-mpls-base-yang-12.txt 2020-03-03 13:13:14.783208444 -0800 +++ 2/draft-ietf-mpls-base-yang-13.txt 2020-03-03 13:13:14.823209457 -0800 @@ -1,49 +1,50 @@ MPLS Working Group T. Saad Internet-Draft Juniper Networks Intended status: Standards Track K. Raza -Expires: August 22, 2020 R. Gandhi +Expires: September 4, 2020 R. Gandhi Cisco Systems Inc X. Liu Volta Networks V. Beeram Juniper Networks - February 19, 2020 + March 03, 2020 A YANG Data Model for MPLS Base - draft-ietf-mpls-base-yang-12 + draft-ietf-mpls-base-yang-13 Abstract This document contains a specification of the MPLS base YANG model. The MPLS base YANG model serves as a base framework for configuring and managing an MPLS switching subsystem on an MPLS-enabled router. - It is expected that other MPLS YANG models (e.g. MPLS LSP Static, - LDP or RSVP-TE YANG models) will augment the MPLS base YANG model. + It is expected that other MPLS YANG models (e.g. MPLS Label Switched + Path (LSP) Static, LDP or RSVP-TE YANG models) will augment the MPLS + base YANG model. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. 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 August 22, 2020. + This Internet-Draft will expire on September 4, 2020. Copyright Notice Copyright (c) 2020 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 @@ -58,21 +59,21 @@ 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Acronyms and Abbreviations . . . . . . . . . . . . . . . 3 2. MPLS Base Model . . . . . . . . . . . . . . . . . . . . . . . 3 2.1. Model Overview . . . . . . . . . . . . . . . . . . . . . 3 2.2. Model Organization . . . . . . . . . . . . . . . . . . . 4 2.3. Model Tree Diagram . . . . . . . . . . . . . . . . . . . 5 2.4. Model YANG Module . . . . . . . . . . . . . . . . . . . . 7 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 4. Security Considerations . . . . . . . . . . . . . . . . . . . 16 - 5. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 16 + 5. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 17 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 17 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 7.1. Normative References . . . . . . . . . . . . . . . . . . 17 7.2. Informative References . . . . . . . . . . . . . . . . . 18 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 1. Introduction A core routing data model is defined in [RFC8349], and it provides a basis for the development of data models for routing protocols. The @@ -120,22 +121,22 @@ NHLFE: Next Hop Label Forwarding Entry ILM: Incoming Label Map 2. MPLS Base Model This document describes the ietf-mpls YANG module that provides base components of the MPLS data model. It is expected that other MPLS YANG modules will augment the ietf-mpls base module for other MPLS - extension to provision LSP(s) (e.g. MPLS Static, MPLS LDP or MPLS - RSVP-TE LSP(s)). + extension to provision Label Switched Paths (LSPs) (e.g. MPLS + Static, MPLS LDP or MPLS RSVP-TE LSP(s)). 2.1. Model Overview This document defines a mechanism to model MPLS labeled routes as an augmentation of the routing RIB data model defined in [RFC8349] for IP prefix routes that are MPLS labeled. The other MPLS route(s) that are non-IP prefix routes are modelled by introducing a new "mpls" address-family RIB as per recommendation . @@ -223,21 +224,21 @@ | +--rw label-block* [index] | +--rw index string | +--rw start-label? rt-types:mpls-label | +--rw end-label? rt-types:mpls-label | +--rw block-allocation-mode? identityref | +--ro free-labels-count? yang:counter32 | +--ro inuse-labels-count? yang:counter32 +--rw interface* [name] +--rw name if:interface-ref +--rw enabled? boolean - +--rw mtu? uint32 + +--rw maximum-labeled-packet? uint32 augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route: +--ro mpls-enabled? boolean {mpls}? +--ro local-label? rt-types:mpls-label {mpls}? augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route/rt:next-hop /rt:next-hop-options/rt:simple-next-hop: +--ro mpls-label-stack +--ro entry* [id] +--ro id uint8 +--ro label? rt-types:mpls-label @@ -292,21 +293,21 @@ o ietf-routing defined in [RFC8349] o ietf-routing-types defined in [RFC8294] o ietf-interfaces defined in [RFC8343] This model also references the following RFCs in defining the types and YANG grouping of the YANG module: [RFC3031], and [RFC3032]. - file "ietf-mpls@2020-02-19.yang" + file "ietf-mpls@2020-03-03.yang" module ietf-mpls { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-mpls"; /* Replace with IANA when assigned */ prefix "mpls"; import ietf-routing { prefix "rt"; @@ -365,21 +366,21 @@ (https://trustee.ietf.org/license-info). This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; // RFC Ed.: replace XXXX with actual RFC number and remove this // note. // RFC Ed.: update the date below with the date of RFC publication // and remove this note. - revision "2020-02-19" { + revision "2020-03-03" { description "Latest revision: - Addressed review comments"; reference "RFC XXXX: A YANG Data Model for base MPLS"; } feature mpls { description "Indicates support for MPLS switching."; @@ -491,46 +492,46 @@ other than for referencing the entry."; } leaf loadshare { type uint16; description "This value is used to compute a loadshare to perform un-equal load balancing when multiple outgoing next-hop(s) are specified. A share is computed as a ratio of this number to the total under all next-hops(s)."; - reference "RFC3031, section 3.11 and 3.12."; + reference + "RFC7424, section 5.4, + RFC3031, section 3.11 and 3.12."; } leaf role { type nhlfe-role; description "NHLFE role"; } uses nhlfe-single-contents; } grouping interface-mpls-properties { description "MPLS interface contents grouping"; leaf enabled { type boolean; description - "'true' if mpls encapsulation is enabled on the - interface. 'false' if mpls encapsulation is enabled - on the interface."; + "'true' if mpls encapsulation is enabled on the interface. + 'false' if mpls encapsulation is disabled on the interface."; } - leaf mtu { + leaf maximum-labeled-packet { type uint32; - description - "MPLS Maximum Transmission Unit (MTU) in bytes"; + units octets; + description "Maximum labeled packet size."; reference "RFC3032, section 3.2."; - } } grouping interfaces-mpls { description "List of MPLS interfaces"; list interface { key "name"; description "List of MPLS interfaces"; leaf name { type if:interface-ref;