CCAMP Working Group H. Zheng Internet-Draft I. Busi Intended status: Standards Track Huawei Technologies Expires: September 10, 2020 X. Liu Volta Networks S. Belotti Nokia O. Gonzalez de Dios Telefonica March 9, 2020 A YANG Data Model for Optical Transport Network Topology draft-ietf-ccamp-otn-topo-yang-10 Abstract This document describes a YANG data model to describe the topologies of an Optical Transport Network (OTN). It is independent of control plane protocols and captures topological and resource related information pertaining to OTN. This model enables clients, which interact with a transport domain controller, for OTN topology related operations such as obtaining the relevant topology resource information. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 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." Zheng, et al. Expires September 10, 2020 [Page 1] Internet-Draft OTN Topology YANG Model March 2020 This Internet-Draft will expire on September 10, 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 carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Terminology and Notations . . . . . . . . . . . . . . . . . . 3 3. YANG Data Model for OTN Topology . . . . . . . . . . . . . . 4 3.1. OTN Topology Data Model Overview . . . . . . . . . . . . 4 3.2. YANG Tree for OTN topology . . . . . . . . . . . . . . . 5 4. The YANG Code . . . . . . . . . . . . . . . . . . . . . . . . 27 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 65 6. Security Considerations . . . . . . . . . . . . . . . . . . . 66 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 67 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 67 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 68 9.1. Normative References . . . . . . . . . . . . . . . . . . 68 9.2. Informative References . . . . . . . . . . . . . . . . . 69 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 70 1. Introduction A transport network is a server-layer network designed to provide connectivity services for a client-layer network to carry the client traffic transparently across the server-layer network resources. A transport network can be constructed of equipments utilizing any of a number of different transport technologies such as the Optical Transport Networks (OTN) or packet transport such as provided by the MPLS-Transport Profile (MPLS-TP). This document defines a data model of an OTN network topology, using YANG [RFC7950]. The model can be used by an application exposing to a transport controller. Furthermore, it can be used by an application for the following purposes (but not limited to): Zheng, et al. Expires September 10, 2020 [Page 2] Internet-Draft OTN Topology YANG Model March 2020 o To obtain a whole view of the network topology information of its interest; o To receive notifications with regard to the information change of the OTN topology; o To enforce the establishment and update of a network topology with the characteristic specified in the data model; The YANG model defined in this document is independent of control plane protocols and captures topology related information pertaining to an Optical Transport Networks (OTN) electrical layer, as the scope specified by [RFC7062] . Furthermore, it is not a stand-alone model, but augmenting from the TE topology YANG model defined in [I-D.ietf-teas-yang-te-topo], and importing from the generic Layer 1 types defined in [I-D.ietf-ccamp-layer1-types]. Following TE topology YANG model, the YANG model defined in this document is interface independent. The model is included in [I-D.ietf-teas-actn-yang], which indicates the typical usage of IETF YANG models in ACTN architecture specified by [RFC8453]. More specifically, the usage of this model between controllers is described in [I-D.ietf-ccamp-transport-nbi-app-statement]. Other topology models for Optical network technologies, including fixed Dense Wavelength Switched Optical Network (WSON) and flexible optical networks (a.k.a., flexi-grid networks), are covered in [I-D.ietf-ccamp-wson-yang] and [I-D.ietf-ccamp-flexigrid-yang], respectively. 2. Terminology and Notations A simplified graphical representation of the data model is used in this document. The meaning of the symbols in the YANG data tree presented later in this document is defined in [RFC8340]. They are provided below for reference. o Brackets "[" and "]" enclose list keys. o Abbreviations before data node names: "rw" means configuration (read-write) and "ro" state data (read-only). o Symbols after data node names: "?" means an optional node, "!" means a presence container, and "*" denotes a list and leaf-list. o Parentheses enclose choice and case nodes, and case nodes are also marked with a colon (":"). Zheng, et al. Expires September 10, 2020 [Page 3] Internet-Draft OTN Topology YANG Model March 2020 o Ellipsis ("...") stands for contents of subtrees that are not shown. o Some of the key terms used in this document are listed as follow. o TS: Tributary Slot. o TSG: Tributary Slot Granularity. o TPN: Tributary Port Number. 3. YANG Data Model for OTN Topology 3.1. OTN Topology Data Model Overview This document aims to describe the data model for OTN topology. As a classic Traffic-engineering (TE) technology, OTN provide TDM switching in transport network [ITU-Tg709]. Therefore the YANG module presented in this document augments from a more generic Traffic Engineered (TE) network topology data model, i.e., the ietf- te-topology, as specified in [I-D.ietf-teas-yang-te-topo]. In section 6 of [I-D.ietf-teas-yang-te-topo], the guideline for augmenting TE topology model was provided, and in this draft we respectively augment the OTN attributes, TE bandwidth and TE label. Generic groupings defined in [I-D.ietf-ccamp-layer1-types] is reused as well in this document. [RFC8345] describes a network topology model and provide the fundamental model for [I-D.ietf-teas-yang-te-topo]. However, this work is not directly augmenting [RFC8345]. The entities and TE attributes, such as node, termination points and links, are still applicable for describing an OTN topology and the model presented in this document only specifies with technology- specific attributes/information. The OTN-specific attributes in [RFC7139], including the TPN, TS and TSG, can be used to represent the bandwidth and label information. These attributes have been specified in [I-D.ietf-ccamp-layer1-types], and used in this document for augmentation of the generic TE topology model. For different order of ODU in OTN technology, the te-bandwidth is augmented to allow specifying the type of ODU container and the number a link can support per priority level. For example, for a ODU3 link, it may advertise 32*ODU0, 16*ODU1, 4*ODU2 available, or multiple ODUflex, assuming only a single priority level is supported. If one of ODU2 resource is taken to establish a ODU path, then the availability of this ODU link is updated as 24*ODU0, 12*ODU1, 3*ODU2, or multiple ODUflex available. If there are equipment hardware Zheng, et al. Expires September 10, 2020 [Page 4] Internet-Draft OTN Topology YANG Model March 2020 limitations, then a subset of potential ODU type SHALL be advertised. For instance, an ODU3 link may only support 4*ODU2. Note the model in this document re-uses some typedefs, identities and groupings defined in ietf-layer1-types, which is specified in [I-D.ietf-ccamp-layer1-types]. The YANG module ietf-otn-topology defined in this document conforms to the Network Management Datastore Architecture (NMDA) defined in [RFC8342]. 3.2. YANG Tree for OTN topology module: ietf-otn-topology augment /nw:networks/nw:network/nw:network-types /tet:te-topology: +--rw otn-topology! augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes: +--rw tsg? identityref +--rw distance? uint32 augment /nw:networks/nw:network/nw:node /nt:termination-point/tet:te: +--rw client-svc! +--rw client-facing? boolean +--rw supported-client-signal* identityref augment /nw:networks/nw:network/nw:node /nt:termination-point/tet:te /tet:interface-switching-capability /tet:max-lsp-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odu-type? identityref +--rw (oduflex-type)? +--:(generic) | +--rw nominal-bit-rate uint64 +--:(cbr) | +--rw client-type identityref +--:(gfp-n-k) | +--rw gfp-n uint8 | +--rw gfp-k? l1-types:gfp-k +--:(flexe-client) | +--rw flexe-client | l1-types:flexe-client-rate +--:(flexe-aware) | +--rw flexe-aware-n uint16 +--:(packet) Zheng, et al. Expires September 10, 2020 [Page 5] Internet-Draft OTN Topology YANG Model March 2020 +--rw opuflex-payload-rate uint64 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices/tet:path-constraints /tet:te-bandwidth/tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:path-constraints /tet:te-bandwidth/tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices/tet:path-constraints /tet:te-bandwidth/tet:technology: +--:(otn) +--ro odulist* [odu-type] +--ro odu-type identityref +--ro number? uint16 augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:path-constraints /tet:te-bandwidth/tet:technology: +--:(otn) +--ro odulist* [odu-type] +--ro odu-type identityref +--ro number? uint16 augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:client-layer-adaptation /tet:switching-capability/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:path-constraints/tet:te-bandwidth Zheng, et al. Expires September 10, 2020 [Page 6] Internet-Draft OTN Topology YANG Model March 2020 /tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity /tet:path-constraints/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes /tet:interface-switching-capability /tet:max-lsp-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odu-type? identityref +--rw (oduflex-type)? +--:(generic) | +--rw nominal-bit-rate uint64 +--:(cbr) | +--rw client-type identityref +--:(gfp-n-k) | +--rw gfp-n uint8 | +--rw gfp-k? l1-types:gfp-k +--:(flexe-client) | +--rw flexe-client | l1-types:flexe-client-rate +--:(flexe-aware) | +--rw flexe-aware-n uint16 +--:(packet) +--rw opuflex-payload-rate uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:max-link-bandwidth /tet:te-bandwidth/tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes /tet:max-resv-link-bandwidth/tet:te-bandwidth /tet:technology: Zheng, et al. Expires September 10, 2020 [Page 7] Internet-Draft OTN Topology YANG Model March 2020 +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:unreserved-bandwidth /tet:te-bandwidth/tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:interface-switching-capability /tet:max-lsp-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--ro odu-type? identityref +--ro (oduflex-type)? +--:(generic) | +--ro nominal-bit-rate uint64 +--:(cbr) | +--ro client-type identityref +--:(gfp-n-k) | +--ro gfp-n uint8 | +--ro gfp-k? l1-types:gfp-k +--:(flexe-client) | +--ro flexe-client | l1-types:flexe-client-rate +--:(flexe-aware) | +--ro flexe-aware-n uint16 +--:(packet) +--ro opuflex-payload-rate uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:max-link-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--ro odulist* [odu-type] +--ro odu-type identityref +--ro number? uint16 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:max-resv-link-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--ro odulist* [odu-type] +--ro odu-type identityref Zheng, et al. Expires September 10, 2020 [Page 8] Internet-Draft OTN Topology YANG Model March 2020 +--ro number? uint16 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:unreserved-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--ro odulist* [odu-type] +--ro odu-type identityref +--ro number? uint16 augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:interface-switching-capability /tet:max-lsp-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odu-type? identityref +--rw (oduflex-type)? +--:(generic) | +--rw nominal-bit-rate uint64 +--:(cbr) | +--rw client-type identityref +--:(gfp-n-k) | +--rw gfp-n uint8 | +--rw gfp-k? l1-types:gfp-k +--:(flexe-client) | +--rw flexe-client | l1-types:flexe-client-rate +--:(flexe-aware) | +--rw flexe-aware-n uint16 +--:(packet) +--rw opuflex-payload-rate uint64 augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:max-link-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:max-resv-link-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/tet:te/tet:templates Zheng, et al. Expires September 10, 2020 [Page 9] Internet-Draft OTN Topology YANG Model March 2020 /tet:link-template/tet:te-link-attributes /tet:unreserved-bandwidth/tet:te-bandwidth /tet:technology: +--:(otn) +--rw odulist* [odu-type] +--rw odu-type identityref +--rw number? uint16 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction: +--rw range-type? l1-types:otn-label-range-type +--rw tsg? identityref +--rw odu-type-list* identityref +--rw priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts Zheng, et al. Expires September 10, 2020 [Page 10] Internet-Draft OTN Topology YANG Model March 2020 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices/tet:underlay /tet:primary-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices/tet:underlay /tet:backup-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-exclude-objects /tet:route-object-exclude-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-include-objects /tet:route-object-include-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes Zheng, et al. Expires September 10, 2020 [Page 11] Internet-Draft OTN Topology YANG Model March 2020 /tet:connectivity-matrices/tet:path-properties /tet:path-route-objects/tet:path-route-object /tet:type/tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction: +--rw range-type? l1-types:otn-label-range-type +--rw tsg? identityref +--rw odu-type-list* identityref +--rw priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) Zheng, et al. Expires September 10, 2020 [Page 12] Internet-Draft OTN Topology YANG Model March 2020 +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction: +--rw range-type? l1-types:otn-label-range-type +--rw tsg? identityref +--rw odu-type-list* identityref +--rw priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn Zheng, et al. Expires September 10, 2020 [Page 13] Internet-Draft OTN Topology YANG Model March 2020 +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:underlay /tet:primary-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:underlay /tet:backup-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-exclude-objects /tet:route-object-exclude-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-include-objects /tet:route-object-include-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: Zheng, et al. Expires September 10, 2020 [Page 14] Internet-Draft OTN Topology YANG Model March 2020 +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes /tet:connectivity-matrices /tet:connectivity-matrix/tet:path-properties /tet:path-route-objects/tet:path-route-object /tet:type/tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction: +--ro range-type? l1-types:otn-label-range-type +--ro tsg? identityref +--ro odu-type-list* identityref +--ro priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices Zheng, et al. Expires September 10, 2020 [Page 15] Internet-Draft OTN Topology YANG Model March 2020 /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices/tet:underlay /tet:primary-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices/tet:underlay /tet:backup-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-exclude-objects /tet:route-object-exclude-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-include-objects /tet:route-object-include-object/tet:type Zheng, et al. Expires September 10, 2020 [Page 16] Internet-Draft OTN Topology YANG Model March 2020 /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices/tet:path-properties /tet:path-route-objects/tet:path-route-object /tet:type/tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction: +--ro range-type? l1-types:otn-label-range-type +--ro tsg? identityref +--ro odu-type-list* identityref +--ro priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) Zheng, et al. Expires September 10, 2020 [Page 17] Internet-Draft OTN Topology YANG Model March 2020 +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:from /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction: +--ro range-type? l1-types:otn-label-range-type +--ro tsg? identityref +--ro odu-type-list* identityref +--ro priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry Zheng, et al. Expires September 10, 2020 [Page 18] Internet-Draft OTN Topology YANG Model March 2020 /tet:connectivity-matrices /tet:connectivity-matrix/tet:to /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:underlay /tet:primary-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:underlay /tet:backup-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-exclude-objects /tet:route-object-exclude-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry Zheng, et al. Expires September 10, 2020 [Page 19] Internet-Draft OTN Topology YANG Model March 2020 /tet:connectivity-matrices /tet:connectivity-matrix/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-include-objects /tet:route-object-include-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry /tet:connectivity-matrices /tet:connectivity-matrix/tet:path-properties /tet:path-route-objects/tet:path-route-object /tet:type/tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:label-restrictions/tet:label-restriction: +--rw range-type? l1-types:otn-label-range-type +--rw tsg? identityref +--rw odu-type-list* identityref +--rw priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) Zheng, et al. Expires September 10, 2020 [Page 20] Internet-Draft OTN Topology YANG Model March 2020 +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities/tet:underlay /tet:primary-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities/tet:underlay /tet:backup-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-exclude-objects /tet:route-object-exclude-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref Zheng, et al. Expires September 10, 2020 [Page 21] Internet-Draft OTN Topology YANG Model March 2020 +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-include-objects /tet:route-object-include-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:path-properties/tet:path-route-objects /tet:path-route-object/tet:type/tet:label /tet:label-hop/tet:te-label/tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity /tet:label-restrictions/tet:label-restriction: +--rw range-type? l1-types:otn-label-range-type +--rw tsg? identityref +--rw odu-type-list* identityref +--rw priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities Zheng, et al. Expires September 10, 2020 [Page 22] Internet-Draft OTN Topology YANG Model March 2020 /tet:local-link-connectivity /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity/tet:underlay /tet:primary-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity/tet:underlay /tet:backup-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity/tet:optimizations /tet:algorithm/tet:metric Zheng, et al. Expires September 10, 2020 [Page 23] Internet-Draft OTN Topology YANG Model March 2020 /tet:optimization-metric /tet:explicit-route-exclude-objects /tet:route-object-exclude-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity/tet:optimizations /tet:algorithm/tet:metric /tet:optimization-metric /tet:explicit-route-include-objects /tet:route-object-include-object/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nw:node/tet:te /tet:tunnel-termination-point /tet:local-link-connectivities /tet:local-link-connectivity/tet:path-properties /tet:path-route-objects/tet:path-route-object /tet:type/tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--ro otn-tpn? l1-types:otn-tpn +--ro tsg? identityref +--ro ts-list? string augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:underlay /tet:primary-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:underlay /tet:backup-path/tet:path-element/tet:type /tet:label/tet:label-hop/tet:te-label /tet:technology: Zheng, et al. Expires September 10, 2020 [Page 24] Internet-Draft OTN Topology YANG Model March 2020 +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:label-restrictions /tet:label-restriction: +--rw range-type? l1-types:otn-label-range-type +--rw tsg? identityref +--rw odu-type-list* identityref +--rw priority? uint8 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:label-restrictions /tet:label-restriction/tet:label-start /tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:label-restrictions /tet:label-restriction/tet:label-end /tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:label-restrictions /tet:label-restriction/tet:label-step /tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:label-restrictions/tet:label-restriction: +--ro range-type? l1-types:otn-label-range-type +--ro tsg? identityref +--ro odu-type-list* identityref +--ro priority? uint8 Zheng, et al. Expires September 10, 2020 [Page 25] Internet-Draft OTN Topology YANG Model March 2020 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--ro (range-type)? +--:(trib-port) | +--ro otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--ro otn-ts? l1-types:otn-ts augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:underlay/tet:primary-path/tet:path-element /tet:type/tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:underlay/tet:backup-path/tet:path-element /tet:type/tet:label/tet:label-hop/tet:te-label /tet:technology: +--:(otn) +--rw otn-tpn? l1-types:otn-tpn +--rw tsg? identityref +--rw ts-list? string Zheng, et al. Expires September 10, 2020 [Page 26] Internet-Draft OTN Topology YANG Model March 2020 augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:label-restrictions/tet:label-restriction: +--rw range-type? l1-types:otn-label-range-type +--rw tsg? identityref +--rw odu-type-list* identityref +--rw priority? uint8 augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:label-restrictions/tet:label-restriction /tet:label-start/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:label-restrictions/tet:label-restriction /tet:label-end/tet:te-label/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts augment /nw:networks/tet:te/tet:templates /tet:link-template/tet:te-link-attributes /tet:label-restrictions/tet:label-restriction /tet:label-step/tet:technology: +--:(otn) +--rw (range-type)? +--:(trib-port) | +--rw otn-tpn? l1-types:otn-tpn +--:(trib-slot) +--rw otn-ts? l1-types:otn-ts 4. The YANG Code file "ietf-otn-topology@2020-03-09.yang" module ietf-otn-topology { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-otn-topology"; Zheng, et al. Expires September 10, 2020 [Page 27] Internet-Draft OTN Topology YANG Model March 2020 prefix "otntopo"; import ietf-network { prefix "nw"; reference "RFC 8345: A YANG Data Model for Network Topologies"; } import ietf-network-topology { prefix "nt"; reference "RFC 8345: A YANG Data Model for Network Topologies"; } import ietf-te-topology { prefix "tet"; reference "I-D.ietf-teas-yang-te-topo: YANG Data Model for Traffic Engineering (TE) Topologies"; } import ietf-layer1-types { prefix "l1-types"; reference "I-D.ietf-ccamp-layer1-types: A YANG Data Model for Layer 1 Types"; } organization "IETF CCAMP Working Group"; contact "WG Web: WG List: Editor: Haomian Zheng Editor: Italo Busi Editor: Xufeng Liu Editor: Sergio Belotti Editor: Oscar Gonzalez de Dios "; description Zheng, et al. Expires September 10, 2020 [Page 28] Internet-Draft OTN Topology YANG Model March 2020 "This module defines a protocol independent Layer 1/ODU topology data model. The model fully conforms to the Network Management Datastore Architecture (NMDA). Copyright (c) 2020 IETF Trust and the persons identified as authors of the code. All rights reserved. Redistribution and use in source and binary forms, with or without modification, is permitted pursuant to, and subject to the license terms contained in, the Simplified BSD License set forth in Section 4.c of the IETF Trust's Legal Provisions Relating to IETF Documents (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."; revision 2020-03-09 { description "Initial Revision"; reference "RFC XXXX: A YANG Data Model for Optical Transport Network Topology"; // RFC Ed.: replace XXXX with actual RFC number, update date // information and remove this note } /* * Groupings */ grouping otn-link-attributes { description "link attributes for OTN"; leaf tsg { type identityref { base l1-types:tributary-slot-granularity; } description "Tributary slot granularity."; reference "G.709/Y.1331, February 2016: Interfaces for the Optical Transport Network (OTN)"; } leaf distance { type uint32; description "distance in the unit of kilometers"; } } Zheng, et al. Expires September 10, 2020 [Page 29] Internet-Draft OTN Topology YANG Model March 2020 grouping otn-tp-attributes { description "tp attributes for OTN"; container client-svc { presence "client-facing LTP."; description "OTN LTP Service attributes."; leaf client-facing { type boolean; default 'false'; description "Indicates whether this LTP is a client-facing LTP."; } leaf-list supported-client-signal { type identityref { base l1-types:client-signal; } description "List of client signal types supported by the LTP."; } } } /* * Data nodes */ augment "/nw:networks/nw:network/nw:network-types/" + "tet:te-topology" { container otn-topology { presence "indicates a topology type of Optical Transport Network (OTN)-electrical layer."; description "otn topology type"; } description "augment network types to include otn newtork"; } augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes" { when "../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment only for otn network."; } description "Augment link configuration"; uses otn-link-attributes; } augment "/nw:networks/nw:network/nw:node/nt:termination-point/" Zheng, et al. Expires September 10, 2020 [Page 30] Internet-Draft OTN Topology YANG Model March 2020 + "tet:te" { when "../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment only for otn network"; } description "OTN TP attributes config in ODU topology."; uses otn-tp-attributes; } /* * Augment TE bandwidth */ /* Augment maximum LSP bandwidth of link terminationpoint (LTP) */ augment "/nw:networks/nw:network/nw:node/nt:termination-point/" + "tet:te/" + "tet:interface-switching-capability/tet:max-lsp-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE bandwidth"; } description "OTN bandwidth."; case otn { uses l1-types:otn-path-bandwidth; } } /* Augment bandwidth path constraints of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:path-constraints/tet:te-bandwidth/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE bandwidth"; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment bandwidth path constraints of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:path-constraints/tet:te-bandwidth/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { Zheng, et al. Expires September 10, 2020 [Page 31] Internet-Draft OTN Topology YANG Model March 2020 description "Augment OTN TE bandwidth"; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment bandwidth path constraints of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:path-constraints/tet:te-bandwidth/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE bandwidth"; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment bandwidth path constraints of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:path-constraints/tet:te-bandwidth/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE bandwidth"; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment client bandwidth of tunnel termination point (TTP) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:client-layer-adaptation/tet:switching-capability/" + "tet:te-bandwidth/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE bandwidth"; } Zheng, et al. Expires September 10, 2020 [Page 32] Internet-Draft OTN Topology YANG Model March 2020 description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment bandwidth path constraints of * local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/tet:path-constraints/" + "tet:te-bandwidth/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE bandwidth"; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment bandwidth path constraints of * local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/tet:path-constraints/" + "tet:te-bandwidth/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE bandwidth"; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment maximum LSP bandwidth of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:interface-switching-capability/tet:max-lsp-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } Zheng, et al. Expires September 10, 2020 [Page 33] Internet-Draft OTN Topology YANG Model March 2020 description "OTN bandwidth."; case otn { uses l1-types:otn-path-bandwidth; } } /* Augment maximum bandwidth of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:max-link-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment maximum reservable bandwidth of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:max-resv-link-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment unreserved bandwidth of TE Link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:unreserved-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; Zheng, et al. Expires September 10, 2020 [Page 34] Internet-Draft OTN Topology YANG Model March 2020 } } /* Augment maximum LSP bandwidth of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:interface-switching-capability/" + "tet:max-lsp-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } description "OTN bandwidth."; case otn { uses l1-types:otn-path-bandwidth; } } /* Augment maximum bandwidth of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:max-link-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment max reservable bandwidth of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:max-resv-link-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } Zheng, et al. Expires September 10, 2020 [Page 35] Internet-Draft OTN Topology YANG Model March 2020 /* Augment unreserved bandwidth of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:unreserved-bandwidth/" + "tet:te-bandwidth/tet:technology" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment maximum LSP bandwidth of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:interface-switching-capability/" + "tet:max-lsp-bandwidth/" + "tet:te-bandwidth/tet:technology" { /* when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } */ description "OTN bandwidth."; case otn { uses l1-types:otn-path-bandwidth; } } /* Augment maximum bandwidth of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:max-link-bandwidth/" + "tet:te-bandwidth/tet:technology" { /* when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } */ description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } Zheng, et al. Expires September 10, 2020 [Page 36] Internet-Draft OTN Topology YANG Model March 2020 } /* Augment maximum reservable bandwidth of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:max-resv-link-bandwidth/" + "tet:te-bandwidth/tet:technology" { /* when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } */ description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* Augment unreserved bandwidth of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:unreserved-bandwidth/" + "tet:te-bandwidth/tet:technology" { /* when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "OTN TE bandwidth."; } */ description "OTN bandwidth."; case otn { uses l1-types:otn-link-bandwidth; } } /* * Augment TE label. */ /* Augment label restrictions of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:label-restrictions/tet:label-restriction" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } Zheng, et al. Expires September 10, 2020 [Page 37] Internet-Draft OTN Topology YANG Model March 2020 description "OTN label restriction, represented by otn-label-range-info."; uses l1-types:otn-label-range-info; } /* Augment label restrictions start of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions end of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions step of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } Zheng, et al. Expires September 10, 2020 [Page 38] Internet-Draft OTN Topology YANG Model March 2020 } /* Augment label hop of underlay primary path * of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:underlay/tet:primary-path/tet:path-element/" + "tet:type/tet:label/tet:label-hop/" + "tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay backup path * of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:underlay/tet:backup-path/tet:path-element/" + "tet:type/tet:label/tet:label-hop/" + "tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-exclude of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-exclude-objects/" + "tet:route-object-exclude-object/" + "tet:type/tet:label/tet:label-hop/" + "tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" Zheng, et al. Expires September 10, 2020 [Page 39] Internet-Draft OTN Topology YANG Model March 2020 + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-include of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-include-objects/" + "tet:route-object-include-object/" + "tet:type/tet:label/tet:label-hop/" + "tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of path-route of connectivity-matrices */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:path-properties/tet:path-route-objects/" + "tet:path-route-object/tet:type/tet:label/tet:label-hop/" + "tet:te-label/tet:technology"{ when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment ingress label restrictions of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" Zheng, et al. Expires September 10, 2020 [Page 40] Internet-Draft OTN Topology YANG Model March 2020 + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:from/" + "tet:label-restrictions/tet:label-restriction" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment ingress label restrictions start of * connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:from/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment ingress label restrictions end of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:from/" + "tet:label-restrictions/tet:label-restriction/tet:label-end/" + "tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment ingress label restrictions step of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" Zheng, et al. Expires September 10, 2020 [Page 41] Internet-Draft OTN Topology YANG Model March 2020 + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:from/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } /* Augment egress label restrictions of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:to/" + "tet:label-restrictions/tet:label-restriction" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment egress label restrictions start of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:to/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment egress label restrictions end of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" Zheng, et al. Expires September 10, 2020 [Page 42] Internet-Draft OTN Topology YANG Model March 2020 + "tet:connectivity-matrix/tet:to/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment egress label restrictions step of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:to/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } /* Augment label hop of underlay primary path of * connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:underlay/tet:primary-path/tet:path-element/" + "tet:type/tet:label/tet:label-hop/" + "tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } Zheng, et al. Expires September 10, 2020 [Page 43] Internet-Draft OTN Topology YANG Model March 2020 } /* Augment label hop of underlay backup path of * connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:underlay/tet:backup-path/tet:path-element/" + "tet:type/tet:label/tet:label-hop/" + "tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-exclude of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:optimizations/" + "tet:algorithm/tet:metric/tet:optimization-metric/" + "tet:explicit-route-exclude-objects/" + "tet:route-object-exclude-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-include of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/tet:optimizations/" + "tet:algorithm/tet:metric/tet:optimization-metric/" + "tet:explicit-route-include-objects/" + "tet:route-object-include-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { Zheng, et al. Expires September 10, 2020 [Page 44] Internet-Draft OTN Topology YANG Model March 2020 when "../../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of path-route of connectivity-matrix */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:path-properties/tet:path-route-objects/" + "tet:path-route-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label range information of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/" + "tet:connectivity-matrices/tet:label-restrictions/" + "tet:label-restriction" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment label restrictions start of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/" + "tet:connectivity-matrices/tet:label-restrictions/" Zheng, et al. Expires September 10, 2020 [Page 45] Internet-Draft OTN Topology YANG Model March 2020 + "tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions end of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/" + "tet:connectivity-matrices/tet:label-restrictions/" + "tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions step of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/" + "tet:connectivity-matrices/tet:label-restrictions/" + "tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } Zheng, et al. Expires September 10, 2020 [Page 46] Internet-Draft OTN Topology YANG Model March 2020 /* Augment label hop of underlay primary path of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay backup path of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-exclude of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-exclude-objects/" + "tet:route-object-exclude-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } Zheng, et al. Expires September 10, 2020 [Page 47] Internet-Draft OTN Topology YANG Model March 2020 description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-include of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-include-objects/" + "tet:route-object-include-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of path-route of * connectivity-matrices information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:path-properties/tet:path-route-objects/" + "tet:path-route-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment ingress label restrictions of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" Zheng, et al. Expires September 10, 2020 [Page 48] Internet-Draft OTN Topology YANG Model March 2020 + "tet:connectivity-matrix/" + "tet:from/tet:label-restrictions/tet:label-restriction" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment ingress label restrictions start of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:from/tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment ingress label restrictions end of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:from/tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment ingress label restrictions step of * connectivity-matrix information-source */ Zheng, et al. Expires September 10, 2020 [Page 49] Internet-Draft OTN Topology YANG Model March 2020 augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:from/tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } /* Augment egress label restrictions of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:to/tet:label-restrictions/tet:label-restriction" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment egress label restrictions start of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:to/tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } Zheng, et al. Expires September 10, 2020 [Page 50] Internet-Draft OTN Topology YANG Model March 2020 /* Augment egress label restrictions end of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:to/tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment egress label restrictions step of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:to/tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } /* Augment label hop of underlay primary path of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } Zheng, et al. Expires September 10, 2020 [Page 51] Internet-Draft OTN Topology YANG Model March 2020 description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay backup path of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-exclude of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-exclude-objects/" + "tet:route-object-exclude-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-include of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" Zheng, et al. Expires September 10, 2020 [Page 52] Internet-Draft OTN Topology YANG Model March 2020 + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-include-objects/" + "tet:route-object-include-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of path-route of * connectivity-matrix information-source */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:information-source-entry/tet:connectivity-matrices/" + "tet:connectivity-matrix/" + "tet:path-properties/tet:path-route-objects/" + "tet:path-route-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label restrictions of local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:label-restrictions/tet:label-restriction" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } Zheng, et al. Expires September 10, 2020 [Page 53] Internet-Draft OTN Topology YANG Model March 2020 /* Augment label restrictions start of local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions end of local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology"{ when "../../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions step of local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology"{ when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } Zheng, et al. Expires September 10, 2020 [Page 54] Internet-Draft OTN Topology YANG Model March 2020 /* Augment label hop of underlay primary path * of local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay backup path * of local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-exclude of * local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-exclude-objects/" + "tet:route-object-exclude-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" Zheng, et al. Expires September 10, 2020 [Page 55] Internet-Draft OTN Topology YANG Model March 2020 + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-include of * local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-include-objects/" + "tet:route-object-include-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of path-route of local-link-connectivities */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:path-properties/tet:path-route-objects/" + "tet:path-route-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } Zheng, et al. Expires September 10, 2020 [Page 56] Internet-Draft OTN Topology YANG Model March 2020 /* Augment label restrictions of local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:label-restrictions/tet:label-restriction" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment label start of local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label end of local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } Zheng, et al. Expires September 10, 2020 [Page 57] Internet-Draft OTN Topology YANG Model March 2020 } /* Augment label step of local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } /* Augment label hop of underlay primary path * of local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay backup path of * local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" Zheng, et al. Expires September 10, 2020 [Page 58] Internet-Draft OTN Topology YANG Model March 2020 + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-exclude of * local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-exclude-objects/" + "tet:route-object-exclude-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of route-include of * local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:optimizations/tet:algorithm/tet:metric/" + "tet:optimization-metric/" + "tet:explicit-route-include-objects/" + "tet:route-object-include-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } Zheng, et al. Expires September 10, 2020 [Page 59] Internet-Draft OTN Topology YANG Model March 2020 description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of path-route of * local-link-connectivity (LLC) */ augment "/nw:networks/nw:network/nw:node/tet:te/" + "tet:tunnel-termination-point/" + "tet:local-link-connectivities/" + "tet:local-link-connectivity/" + "tet:path-properties/tet:path-route-objects/" + "tet:path-route-object/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay primary path of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay backup path of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { when "../../../../../../../../" Zheng, et al. Expires September 10, 2020 [Page 60] Internet-Draft OTN Topology YANG Model March 2020 + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label restrictions of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment label restrictions start of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions end of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { Zheng, et al. Expires September 10, 2020 [Page 61] Internet-Draft OTN Topology YANG Model March 2020 uses l1-types:otn-label-start-end; } } /* Augment label restrictions step of TE link */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } /* Augment label restrictions of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:label-restrictions/tet:label-restriction" { when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment label restrictions start of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions end of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" Zheng, et al. Expires September 10, 2020 [Page 62] Internet-Draft OTN Topology YANG Model March 2020 + "tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions step of TE link information-source */ augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } description "OTN label."; case otn { uses l1-types:otn-label-step; } } /* Augment label hop of underlay primary path of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { /* when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } */ description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label hop of underlay backup path of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" Zheng, et al. Expires September 10, 2020 [Page 63] Internet-Draft OTN Topology YANG Model March 2020 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" + "tet:label/tet:label-hop/tet:te-label/tet:technology" { /* when "../../../../../../../../../../nw:network-types/" + "tet:te-topology/otntopo:otn-topology" { description "Augment OTN TE label"; } */ description "OTN label."; case otn { uses l1-types:otn-label-hop; } } /* Augment label restrictions of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction" { /* when "../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } */ description "OTN label."; uses l1-types:otn-label-range-info; } /* Augment label restrictions start of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-start/tet:te-label/tet:technology" { /* when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } */ description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions end of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" Zheng, et al. Expires September 10, 2020 [Page 64] Internet-Draft OTN Topology YANG Model March 2020 + "tet:label-restrictions/tet:label-restriction/" + "tet:label-end/tet:te-label/tet:technology" { /* when "../../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } */ description "OTN label."; case otn { uses l1-types:otn-label-start-end; } } /* Augment label restrictions step of TE link template */ augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction/" + "tet:label-step/tet:technology" { /* when "../../../../../../nw:network-types/tet:te-topology/" + "otntopo:otn-topology" { description "Augment OTN TE label"; } */ description "OTN label."; case otn { uses l1-types:otn-label-step; } } } 5. IANA Considerations It is proposed that IANA should assign new URIs from the "IETF XML Registry" [RFC3688] as follows: URI: urn:ietf:params:xml:ns:yang:ietf-otn-topology Registrant Contact: The IESG XML: N/A; the requested URI is an XML namespace. This document registers a YANG module in the YANG Module Names registry [RFC7950]. Zheng, et al. Expires September 10, 2020 [Page 65] Internet-Draft OTN Topology YANG Model March 2020 name: ietf-otn-topology namespace: urn:ietf:params:xml:ns:yang:ietf-otn-topology prefix: otntopo reference: RFC XXXX 6. Security Considerations The YANG module specified in this document defines a schema for data that is designed to be accessed via network management protocols such as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer is the secure transport layer, and the mandatory-to-implement secure transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer is HTTPS, and the mandatory-to-implement secure transport is TLS [RFC8446]. The NETCONF access control model [RFC8341] provides the means to restrict access for particular NETCONF or RESTCONF users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content. There are a number of data nodes defined in this YANG module that are writable/creatable/deletable (i.e., config true, which is the default). These data nodes may be considered sensitive or vulnerable in some network environments. Write operations (e.g., edit-config) to these data nodes without proper protection can have a negative effect on network operations. These are the subtrees and data nodes and their sensitivity/vulnerability: /nw:networks/nw:network/nw:network-types/tet:te-topology /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes /nw:networks/nw:network/nw:node/nt:termination-point/tet:te /nw:networks/nw:network/.../tet:te-bandwidth/tet:technology /nw:networks/nw:network/nw:node/tet:te/.../tet:label-restriction /nw:networks/nw:network/nw:node/.../tet:te-label/tet:technology Editors note: we are using simplified description by folding similar branches to avoid repetation. Some of the readable data nodes in this YANG module may be considered sensitive or vulnerable in some network environments. It is thus important to control read access (e.g., via get, get-config, or notification) to these data nodes. These are the subtrees and data nodes and their sensitivity/vulnerability: Editors note: Currently there is no such data nodes, temporarily kept for review. Zheng, et al. Expires September 10, 2020 [Page 66] Internet-Draft OTN Topology YANG Model March 2020 7. Acknowledgements We would like to thank Igor Bryskin, Zhe Liu, Zheyu Fan and Daniele Ceccarelli for their comments and discussions. 8. Contributors Aihua Guo Individual Email: aihuaguo.ietf@gmail.com Anurag Sharma Google Email: ansha@google.com Yunbin Xu CAICT Email: xuyunbin@caict.ac.cn Lei Wang China Mobile Email: wangleiyj@chinamobile.com Baoquan Rao Huawei Technologies Email: raobaoquan@huawei.com Xian Zhang Huawei Technologies Email: zhang.xian@huawei.com Huub van Helvoort Hai Gaoming BV the Netherlands Email: huubatwork@gmail.com Victor Lopez Telefonica Email: victor.lopezalvarez@telefonica.com Yunbo Li China Mobile Email: liyunbo@chinamobile.com Dieter Beller Nokia Email: dieter.beller@nokia.com Zheng, et al. Expires September 10, 2020 [Page 67] Internet-Draft OTN Topology YANG Model March 2020 Yanlei Zheng China Unicom Email: zhengyanlei@chinaunicom.cn 9. References 9.1. Normative References [I-D.ietf-ccamp-layer1-types] Zheng, H. and I. Busi, "A YANG Data Model for Layer 1 Types", draft-ietf-ccamp-layer1-types-04 (work in progress), December 2019. [I-D.ietf-ccamp-otn-tunnel-model] Zheng, H., Busi, I., Belotti, S., Lopezalvarez, V., and Y. Xu, "OTN Tunnel YANG Model", draft-ietf-ccamp-otn-tunnel- model-09 (work in progress), November 2019. [I-D.ietf-teas-yang-te-topo] Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and O. Dios, "YANG Data Model for Traffic Engineering (TE) Topologies", draft-ietf-teas-yang-te-topo-22 (work in progress), June 2019. [ITU-Tg709] ITU-, T., "SERIES G: TRANSMISSION SYSTEMS AND MEDIA, DIGITAL SYSTEMS AND NETWORKS; Digital networks; Interfaces for the optical transport network", ITU-T Rec. G.709 , March 2020. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, DOI 10.17487/RFC3688, January 2004, . [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., and A. Bierman, Ed., "Network Configuration Protocol (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, . [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, . Zheng, et al. Expires September 10, 2020 [Page 68] Internet-Draft OTN Topology YANG Model March 2020 [RFC7138] Ceccarelli, D., Ed., Zhang, F., Belotti, S., Rao, R., and J. Drake, "Traffic Engineering Extensions to OSPF for GMPLS Control of Evolving G.709 Optical Transport Networks", RFC 7138, DOI 10.17487/RFC7138, March 2014, . [RFC7139] Zhang, F., Ed., Zhang, G., Belotti, S., Ceccarelli, D., and K. Pithewan, "GMPLS Signaling Extensions for Control of Evolving G.709 Optical Transport Networks", RFC 7139, DOI 10.17487/RFC7139, March 2014, . [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", RFC 7950, DOI 10.17487/RFC7950, August 2016, . [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration Access Control Model", STD 91, RFC 8341, DOI 10.17487/RFC8341, March 2018, . [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, . [RFC8345] Clemm, A., Medved, J., Varga, R., Bahadur, N., Ananthakrishnan, H., and X. Liu, "A YANG Data Model for Network Topologies", RFC 8345, DOI 10.17487/RFC8345, March 2018, . [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, . 9.2. Informative References Zheng, et al. Expires September 10, 2020 [Page 69] Internet-Draft OTN Topology YANG Model March 2020 [I-D.ietf-ccamp-flexigrid-yang] Madrid, U., Perdices, D., Lopezalvarez, V., King, D., Lee, Y., and H. Zheng, "YANG data model for Flexi-Grid Optical Networks", draft-ietf-ccamp-flexigrid-yang-05 (work in progress), January 2020. [I-D.ietf-ccamp-transport-nbi-app-statement] Busi, I., King, D., Zheng, H., and Y. Xu, "Transport Northbound Interface Applicability Statement", draft-ietf- ccamp-transport-nbi-app-statement-10 (work in progress), November 2019. [I-D.ietf-ccamp-wson-yang] Zheng, H., Lee, Y., Guo, A., Lopezalvarez, V., and D. King, "A YANG Data Model for WSON (Wavelength Switched Optical Networks)", draft-ietf-ccamp-wson-yang-23 (work in progress), November 2019. [I-D.ietf-teas-actn-yang] Lee, Y., Zheng, H., Ceccarelli, D., Yoon, B., Dios, O., Shin, J., and S. Belotti, "Applicability of YANG models for Abstraction and Control of Traffic Engineered Networks", draft-ietf-teas-actn-yang-05 (work in progress), February 2020. [RFC7062] Zhang, F., Ed., Li, D., Li, H., Belotti, S., and D. Ceccarelli, "Framework for GMPLS and PCE Control of G.709 Optical Transport Networks", RFC 7062, DOI 10.17487/RFC7062, November 2013, . [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, . [RFC8453] Ceccarelli, D., Ed. and Y. Lee, Ed., "Framework for Abstraction and Control of TE Networks (ACTN)", RFC 8453, DOI 10.17487/RFC8453, August 2018, . Authors' Addresses Zheng, et al. Expires September 10, 2020 [Page 70] Internet-Draft OTN Topology YANG Model March 2020 Haomian Zheng Huawei Technologies H1, Huawei Industrial Base, Songshan Lake Dongguan, Guangdong 523808 China Email: zhenghaomian@huawei.com Italo Busi Huawei Technologies HUAWEI TECHNOLOGIES ITALIA Srl Centro Direzionale Milano 2 Milan, Milan 20090 Italy Email: Italo.Busi@huawei.com Xufeng Liu Volta Networks Email: xufeng.liu.ietf@gmail.com Sergio Belotti Nokia Email: sergio.belotti@nokia.com Oscar Gonzalez de Dios Telefonica Email: oscar.gonzalezdedios@telefonica.com Zheng, et al. Expires September 10, 2020 [Page 71]