Internet-Draft | ETH Topology Transport YANG Model | October 2024 |
Yu, et al. | Expires 17 April 2025 | [Page] |
This document describes a YANG data model for Ethernet networks when used either as a client-layer network of an underlay transport network (e.g., an Optical Transport Network (OTN)) or as a transport network itself.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 17 April 2025.¶
Copyright (c) 2024 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 Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
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 typically utilizes several different transport technologies such as the Optical Transport Networks (OTN) or packet transport such as provided by the MPLS-Transport Profile (MPLS-TP).¶
An Ethernet network can be either a client-layer network of an underlay transport network or a transport network itself.¶
This document describes a YANG data model for Ethernet networks when used as a client-layer network of an underlay transport network (e.g., an Optical Transport Network (OTN)) or as a transport network technology.¶
The YANG model defined in this document augments from the TE topology YANG model defined in [RFC8795], and imports from the generic Ethernet types defined in [I-D.ietf-ccamp-client-signal-yang].¶
The YANG data model in this document conforms to the Network Management Datastore Architecture defined in [RFC8342].¶
The following terms are defined in [RFC7950] and are not redefined here:¶
The following terms are defined in [RFC6241] and are not redefined here:¶
The terminology for describing YANG data models is found in [RFC7950].¶
A simplified graphical representation of the data model is used in Section 3 of this document. The meaning of the symbols in these diagrams is defined in [RFC8340].¶
In this document, the names of data nodes and other data model objects are prefixed using the standard prefix associated with the corresponding YANG imported modules, as shown in Table 1.¶
In this document, names of data nodes and other data model objects are prefixed using the standard prefix associated with the corresponding YANG imported modules, as shown in Table 1.¶
Prefix | YANG module | Reference |
---|---|---|
yang | ietf-yang-types | [RFC6991] |
etht-types | ietf-eth-tran-types | [RFCYYYY] |
nw | ietf-network | [RFC8345] |
nt | ietf-network-topology | [RFC8345] |
tet | ietf-te-topology | [RFC8795] |
etht | ietf-eth-te-topology | RFCXXXX |
RFC Editor Note: Please replace YYYY and XXXX with the number assigned to the RFC once this draft becomes an RFC.¶
This document aims to describe the data model for Ethernet topology.¶
As a classic Traffic-engineering (TE) technology, Ethernet can provide packet switching in transport network [ITU_G.8021].¶
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 [RFC8795]. In section 6 of [RFC8795], the guideline for augmenting TE topology model was provided, and in this draft, we augment the TE topology model to describe the topology in Ethernet network. Common types, identities and groupings defined in [I-D.ietf-ccamp-client-signal-yang] is reused in this document. [RFC8345] describes a network topology model and provides the fundamental model for [RFC8795]. However, this work is not directly augmenting [RFC8345]. Figure 1 shows the augmentation relationship.¶
+-------------------------+ TE generic | ietf-te-topology | +------------+------------+ ^ | | Augments | +------------+------------+ Ethernet | ietf-eth-te-topology | +-------------------------+
The entities and TE attributes, such as node, termination points and links, are still applicable for describing an Ethernet topology and the model presented in this document only specifies technology-specific attributes/information.¶
Given the guidance for augmentation in [RFC8795], the following technology-specific augmentations need to be provided:¶
A network-type to indicate that the TE topology is an Ethernet Topology, as follow:¶
augment /nw:networks/nw:network/nw:network-types/tet:te-topology: +--rw eth-tran-topology!¶
TE Bandwidth Augmentations as described in Section 2.2.¶
TE Label Augmentations as described in Section 2.3.¶
Following the guidelines in [RFC8795], the model augments all the occurrences of the te-bandwidth container with the Ethernet technology specific attributes using the eth-bandwidth grouping defined in [I-D.ietf-ccamp-client-signal-yang].¶
The model augments all the occurrences of the label-restriction list with Ethernet technology specific attributes using the eth-label-restriction grouping defined in [I-D.ietf-ccamp-client-signal-yang].¶
Moreover, following the guidelines in [RFC8795], the model augments all the occurrences of the te-label container with the Ethernet technology specific attributes using the eth-label and eth-label-step groupings defined in [I-D.ietf-ccamp-client-signal-yang].¶
module: ietf-eth-te-topology augment /nw:networks/nw:network/nw:network-types/tet:te-topology: +--rw eth-tran-topology! augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes: +--rw eth-node! augment /nw:networks/nw:network/nt:link: +--rw eth-svc! augment /nw:networks/nw:network/nw:node/nt:termination-point: +--rw eth-svc! | +--rw supported-classification | | +--rw port-classification? boolean | | +--rw vlan-classification | | +--rw vlan-tag-classification? boolean | | +--rw outer-tag | | | +--rw supported-tag-types* | | | | etht-types:eth-tag-classify | | | +--rw vlan-bundling? boolean | | | +--rw vlan-range? | | | etht-types:vid-range-type | | +--rw second-tag | | +--rw second-tag-classification? boolean | | +--rw supported-tag-types* | | | etht-types:eth-tag-classify | | +--rw vlan-bundling? boolean | | +--rw vlan-range? | | etht-types:vid-range-type | +--rw supported-vlan-operations | +--rw asymmetrical-operations? boolean | +--rw transparent-vlan-operations? boolean | +--rw vlan-pop | | +--rw vlan-pop-operations? boolean | | +--rw max-pop-tags? uint8 | +--rw vlan-push | +--rw vlan-push-operation? boolean | +--rw outer-tag | | +--rw supported-tag-types* etht-types:eth-tag-type | | +--rw vlan-range? | | etht-types:vid-range-type | +--rw second-tag | +--rw push-second-tag? boolean | +--rw supported-tag-types* etht-types:eth-tag-type | +--rw vlan-range? | etht-types:vid-range-type +--rw eth-link-tp +--rw ltp-mac-address? | yang:mac-address +--rw port-vlan-id? | etht-types:vlanid +--rw maximum-frame-size? uint16 +--rw (direction)? +--:(symmetrical) | +--rw ingress-egress-bandwidth-profile | +--rw bandwidth-profile-type? | | etht-types:bandwidth-profile-type | +--rw CIR? uint64 | +--rw CBS? uint64 | +--rw EIR? uint64 | +--rw EBS? uint64 | +--rw color-aware? boolean | +--rw coupling-flag? boolean +--:(asymmetrical) +--rw ingress-bandwidth-profile | +--rw bandwidth-profile-type? | | etht-types:bandwidth-profile-type | +--rw CIR? uint64 | +--rw CBS? uint64 | +--rw EIR? uint64 | +--rw EBS? uint64 | +--rw color-aware? boolean | +--rw coupling-flag? boolean +--rw egress-bandwidth-profile +--rw bandwidth-profile-type? | etht-types:bandwidth-profile-type +--rw CIR? uint64 +--rw CBS? uint64 +--rw EIR? uint64 +--rw EBS? uint64 +--rw color-aware? boolean +--rw coupling-flag? boolean 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: +--:(eth) +--rw eth-bandwidth? 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: +--:(eth) +--rw eth-bandwidth? uint64 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: +--:(eth) +--rw eth-bandwidth? uint64 augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry/tet:connectivity-matrices /tet:path-constraints/tet:te-bandwidth/tet:technology: +--:(eth) +--ro eth-bandwidth? uint64 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: +--:(eth) +--ro eth-bandwidth? uint64 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: +--:(eth) +--rw eth-bandwidth? uint64 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: +--:(eth) +--rw eth-bandwidth? uint64 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: +--:(eth) +--rw eth-bandwidth? uint64 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: +--:(eth) +--rw eth-bandwidth? uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:max-link-bandwidth /tet:te-bandwidth: +--rw eth-bandwidth? uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:max-resv-link-bandwidth /tet:te-bandwidth: +--rw eth-bandwidth? uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:unreserved-bandwidth /tet:te-bandwidth: +--rw eth-bandwidth? uint64 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: +--:(eth) +--ro eth-bandwidth? uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry/tet:max-link-bandwidth /tet:te-bandwidth: +--ro eth-bandwidth? uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry/tet:max-resv-link-bandwidth /tet:te-bandwidth: +--ro eth-bandwidth? uint64 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry/tet:unreserved-bandwidth /tet:te-bandwidth: +--ro eth-bandwidth? uint64 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: +--:(eth) +--rw eth-bandwidth? uint64 augment /nw:networks/tet:te/tet:templates/tet:link-template /tet:te-link-attributes/tet:max-link-bandwidth /tet:te-bandwidth: +--rw eth-bandwidth? uint64 augment /nw:networks/tet:te/tet:templates/tet:link-template /tet:te-link-attributes/tet:max-resv-link-bandwidth /tet:te-bandwidth: +--rw eth-bandwidth? uint64 augment /nw:networks/tet:te/tet:templates/tet:link-template /tet:te-link-attributes/tet:unreserved-bandwidth /tet:te-bandwidth: +--rw eth-bandwidth? uint64 augment /nw:networks/nw:network/nw:node/tet:te /tet:te-node-attributes/tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction: +--rw ethernet-label-range! +--rw tag-type? etht-types:eth-tag-type +--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: +--rw ethernet-label-range! +--rw tag-type? etht-types:eth-tag-type +--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: +--rw ethernet-label-range! +--rw tag-type? etht-types:eth-tag-type +--rw priority? uint8 augment /nw:networks/nw:network/nw:node/tet:te /tet:information-source-entry/tet:connectivity-matrices /tet:label-restrictions/tet:label-restriction: +--ro ethernet-label-range! +--ro tag-type? etht-types:eth-tag-type +--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: +--ro ethernet-label-range! +--ro tag-type? etht-types:eth-tag-type +--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: +--ro ethernet-label-range! +--ro tag-type? etht-types:eth-tag-type +--ro 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: +--rw ethernet-label-range! +--rw tag-type? etht-types:eth-tag-type +--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: +--rw ethernet-label-range! +--rw tag-type? etht-types:eth-tag-type +--rw priority? uint8 augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:label-restrictions /tet:label-restriction: +--rw ethernet-label-range! +--rw tag-type? etht-types:eth-tag-type +--rw priority? uint8 augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry/tet:label-restrictions /tet:label-restriction: +--ro ethernet-label-range! +--ro tag-type? etht-types:eth-tag-type +--ro priority? uint8 augment /nw:networks/tet:te/tet:templates/tet:link-template /tet:te-link-attributes/tet:label-restrictions /tet:label-restriction: +--rw ethernet-label-range! +--rw tag-type? etht-types:eth-tag-type +--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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw eth-step? uint16 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw eth-step? uint16 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw eth-step? uint16 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro eth-step? uint16 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro eth-step? uint16 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro eth-step? uint16 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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-include-objects /tet:route-object-include-object/tet:type/tet:label /tet:label-hop/tet:te-label/tet:technology: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw eth-step? uint16 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw eth-step? uint16 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid augment /nw:networks/nw:network/nt:link/tet:te /tet:te-link-attributes/tet:label-restrictions /tet:label-restriction/tet:label-step/tet:technology: +--:(eth) +--rw eth-step? uint16 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: +--:(eth) +--ro vlanid? etht-types:vlanid 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: +--:(eth) +--ro vlanid? etht-types:vlanid augment /nw:networks/nw:network/nt:link/tet:te /tet:information-source-entry/tet:label-restrictions /tet:label-restriction/tet:label-step/tet:technology: +--:(eth) +--ro eth-step? uint16 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw vlanid? etht-types:vlanid 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: +--:(eth) +--rw eth-step? uint16
<CODE BEGINS> file "ietf-eth-te-topology@2023-09-08.yang" module ietf-eth-te-topology { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-eth-te-topology"; prefix "etht"; 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 "RFC 8795: YANG Data Model for Traffic Engineering (TE) Topologies"; } import ietf-yang-types { prefix "yang"; reference "RFC 6991: Common YANG Data Types"; } import ietf-eth-tran-types { prefix "etht-types"; reference "RFC YYYY: A YANG Data Model for Transport Network Client Signals"; } // RFC Ed.: replace YYYY with actual RFC number, update date // information and remove this note organization "IETF CCAMP Working Group"; contact "WG Web: <https://datatracker.ietf.org/wg/ccamp/> WG List: <mailto:ccamp@ietf.org> Editor: Haomian Zheng <mailto:zhenghaomian@huawei.com> Editor: Italo Busi <mailto:italo.busi@huawei.com> Editor: Aihua Guo <mailto:aihuaguo.ietf@gmail.com> Editor: Yunbin Xu <mailto:xuyunbin@caict.ac.cn> Editor: Yang Zhao <mailto:zhaoyangyjy@chinamobile.com> Editor: Xufeng Liu <mailto:xufeng.liu.ietf@gmail.com>"; description "This module defines a YANG data model for describing layer-2 Ethernet transport topologies. The model fully conforms to the Network Management Datastore Architecture (NMDA). Copyright (c) 2023 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 Revised 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. The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document are to be interpreted as described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, they appear in all capitals, as shown here."; revision 2023-09-28 { description "Initial Revision"; reference "RFC XXXX: A YANG Data Model for Ethernet TE Topology"; // RFC Ed.: replace XXXX with actual RFC number, update date // information and remove this note } /* * Groupings */ grouping label-range-info { description "Ethernet technology-specific label range related information with a presence container indicating that the label range is an Ethernet technology-specific label range. This grouping SHOULD be used together with the eth-label and eth-label-step groupings to provide Ethernet technology-specific label information to the models which use the label-restriction-info grouping defined in the module ietf-te-types."; container ethernet-label-range { presence "Indicates the label range is an Ethernet label range. This container must not be present if there are other presence containers or attributes indicating another type of label range."; description "Ethernet-specific label range related information."; uses etht-types:eth-label-restriction; } } grouping eth-tran-topology-type { description "Identifies the Ethernet Transport topology type"; container eth-tran-topology { presence "indicates a topology type of Ethernet Transport Network."; description "Eth transport topology type"; } } grouping ltp-bandwidth-profiles { description "A grouping which represents the bandwidth profile(s) for the ETH LTP."; choice direction { description "Whether the bandwidth profiles are symmetrical or asymmetrical"; case symmetrical { description "The same bandwidth profile is used to describe the ingress and the egress bandwidth profile."; container ingress-egress-bandwidth-profile { description "The bandwith profile used in the ingress and egress direction."; uses etht-types:etht-bandwidth-profiles; } } case asymmetrical { description "Different ingress and egress bandwidth profiles can be specified."; container ingress-bandwidth-profile { description "The bandwidth profile used in the ingress direction."; uses etht-types:etht-bandwidth-profiles; } container egress-bandwidth-profile { description "The bandwidth profile used in the egress direction."; uses etht-types:etht-bandwidth-profiles; } } } } grouping eth-ltp-attributes { description "Ethernet transport Link Termination Point (LTP) attributes"; leaf ltp-mac-address { type yang:mac-address; description "The MAC address of the Ethernet LTP."; } leaf port-vlan-id { type etht-types:vlanid; description "The Port VLAN ID of the Ethernet LTP."; reference "IEEE 802.1Q: Virtual Bridged Local Area Networks"; } leaf maximum-frame-size { type uint16 { range "64 .. 65535"; } description "Maximum frame size"; reference "IEEE 802.1Q: Virtual Bridged Local Area Networks"; } uses ltp-bandwidth-profiles; } grouping svc-vlan-classification { description "Grouping defining the capabilities for VLAN classification."; leaf-list supported-tag-types { type etht-types:eth-tag-classify; description "List of VLAN tag types that can be used for the VLAN classification. In case VLAN classification is not supported, the list is empty."; } leaf vlan-bundling { type boolean; description "In case VLAN classification is supported, indicates whether VLAN bundling classification is also supported."; reference "MEF 10.3: Ethernet Services Attributes Phase 3"; } leaf vlan-range { type etht-types:vid-range-type; description "In case VLAN classification is supported, indicates the of available VLAN ID values."; } } grouping svc-vlan-push { description "Grouping defining the capabilities for VLAN push or swap operations."; leaf-list supported-tag-types { type etht-types:eth-tag-type; description "List of VLAN tag types that can be used to push or swap a VLAN tag. In case VLAN push/swap is not supported, the list is empty."; reference "IEEE 802.1Q: Virtual Bridged Local Area Networks"; } leaf vlan-range { type etht-types:vid-range-type; description "In case VLAN push/swap operation is supported, the range of available VLAN ID values."; } } grouping eth-svc-attributes { description "Ethernet Link Termination Point (LTP) service attributes."; container supported-classification { description "Service classification capability supported by the Ethernet Link Termination Point (LTP)."; leaf port-classification { type boolean; description "Indicates that the ETH LTP support port-based service classification."; } container vlan-classification { description "Service classification capabilities based on the VLAN tag(s) supported by the ETH LTP."; leaf vlan-tag-classification { type boolean; description "Indicates that the ETH LTP supports VLAN service classification."; } container outer-tag { description "Service classification capabilities based on the outer VLAN tag, supported by the ETH LTP."; uses svc-vlan-classification; } container second-tag { description "Service classification capabilities based on the second VLAN tag, supported by the ETH LTP."; leaf second-tag-classification { type boolean; must ". = 'false' or " + "../../vlan-tag-classification = 'true'" { description "VLAN service classification based on the second VLAN tag can be supported only when VLAN service classification"; } description "Indicates that the ETH LTP support VLAN service classification based on the second VLAN tag."; } uses svc-vlan-classification; } } } container supported-vlan-operations { description "Reports the VLAN operations supported by the ETH LTP."; leaf asymmetrical-operations { type boolean; description "Indicates whether the ETH LTP supports also asymmetrical VLAN operations.It is assumed that symmetrical VLAN operations are alwyas supported."; } leaf transparent-vlan-operations { type boolean; description "Indicates that the ETH LTP supports transparent operations."; } container vlan-pop { description "Indicates VLAN pop or swap operations capabilities."; leaf vlan-pop-operations { type boolean; description "Indicates that the ETH LTP supports VLAN pop or swap operations."; } leaf max-pop-tags { type uint8 { range "1..2"; } description "Indicates the maximum number of tags that can be popped/swapped."; } } container vlan-push { description "Indicates VLAN push or swap operations capabilities."; leaf vlan-push-operation { type boolean; description "Indicates that the ETH LTP supports VLAN push or swap operations."; } container outer-tag { description "Indicates the supported VLAN operation capabilities on the outer VLAN tag."; uses svc-vlan-push; } container second-tag { description "Indicates the supported VLAN operation capabilities on the second VLAN tag."; leaf push-second-tag { type boolean; description "Indicates that the ETH LTP supports VLAN push or swap operations for the second VLAN tag."; } uses svc-vlan-push; } } } } /* * Data nodes */ augment "/nw:networks/nw:network/nw:network-types/" + "tet:te-topology" { description "Augment network types to include ETH transport newtork"; uses eth-tran-topology-type; } augment "/nw:networks/nw:network/nw:node/tet:te" + "/tet:te-node-attributes" { when "../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augment only for Ethernet transport network."; } description "Augment TE node attributes."; container eth-node { presence "The TE node is an Ethernet node."; description "Presence container used only to indicate that the TE node is an Ethernet node."; } } augment "/nw:networks/nw:network/nt:link" { when "../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augment only for Ethernet transport network."; } description "Augment link configuration"; container eth-svc { presence "When present, indicates that the Link supports Ethernet client signals."; description "Presence container used only to indicate that the link supports Ethernet client signals."; } } augment "/nw:networks/nw:network/nw:node/nt:termination-point" { when "../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augment only for Ethernet transport network."; } description "Augment ETH LTP attributes"; container eth-svc { presence "When present, indicates that the Link Termination Point (LTP) supports Ethernet client signals."; description "ETH LTP Service attributes."; uses eth-svc-attributes; } container eth-link-tp { description "Attributes of the Ethernet Link Termination Point (LTP)."; uses eth-ltp-attributes; } } /* * Augment TE bandwidth */ 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment maximum LSP TE bandwidth for the link termination point (LTP)."; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE bandwidth path constraints of the TE node connectivity matrices."; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE bandwidth path constraints of the connectivity matrix entry."; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE bandwidth path constraints of the TE node connectivity matrices information source."; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE bandwidth path constraints of the connectivity matrix entry information source"; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment client TE bandwidth of the tunnel termination point (TTP)"; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE bandwidth path constraints for the TTP Local Link Connectivities."; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE bandwidth path constraints for the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-bandwidth; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment maximum LSP TE bandwidth for the TE link."; case eth { uses etht-types:eth-bandwidth; } } augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:max-link-bandwidth/" + "tet:te-bandwidth" { when "../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment maximum TE bandwidth for the TE link"; uses etht-types:eth-bandwidth; } augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:max-resv-link-bandwidth/" + "tet:te-bandwidth" { when "../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment maximum reservable TE bandwidth for the TE link"; uses etht-types:eth-bandwidth; } augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:te-link-attributes/" + "tet:unreserved-bandwidth/" + "tet:te-bandwidth" { when "../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment unreserved TE bandwidth for the TE Link"; uses etht-types:eth-bandwidth; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment maximum LSP TE bandwidth for the TE link information source"; case eth { uses etht-types:eth-bandwidth; } } augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:max-link-bandwidth/" + "tet:te-bandwidth" { when "../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment maximum TE bandwidth for the TE link information source"; uses etht-types:eth-bandwidth; } augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:max-resv-link-bandwidth/" + "tet:te-bandwidth" { when "../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment maximum reservable TE bandwidth for the TE link information-source"; uses etht-types:eth-bandwidth; } augment "/nw:networks/nw:network/nt:link/tet:te/" + "tet:information-source-entry/" + "tet:unreserved-bandwidth/" + "tet:te-bandwidth" { when "../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment unreserved TE bandwidth of the TE link information source"; uses etht-types:eth-bandwidth; } 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" { description "Augment maximum LSP TE bandwidth of the TE link template"; case eth { uses etht-types:eth-bandwidth; } } augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:max-link-bandwidth/" + "tet:te-bandwidth" { description "Augment maximum TE bandwidth the TE link template"; uses etht-types:eth-bandwidth; } augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:max-resv-link-bandwidth/" + "tet:te-bandwidth" { description "Augment maximum reservable TE bandwidth for the TE link template."; uses etht-types:eth-bandwidth; } augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:unreserved-bandwidth/" + "tet:te-bandwidth" { description "Augment unreserved TE bandwidth the TE link template"; uses etht-types:eth-bandwidth; } /* * Augment TE label range information */ 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the TE node connectivity matrices."; uses label-range-info; } 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" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the source LTP of the connectivity matrix entry."; uses label-range-info; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the destination LTP of the connectivity matrix entry."; uses label-range-info; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the TE node connectivity matrices information source."; uses label-range-info; } 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" { when "../../../../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the source LTP of the connectivity matrix entry information source."; uses label-range-info; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the destination LTP of the connectivity matrix entry information source."; uses label-range-info; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the TTP Local Link Connectivities."; uses label-range-info; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the TTP Local Link Connectivity entry."; uses label-range-info; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the TE link."; uses label-range-info; } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range information for the TE link information source."; uses label-range-info; } augment "/nw:networks/tet:te/tet:templates/" + "tet:link-template/tet:te-link-attributes/" + "tet:label-restrictions/tet:label-restriction" { description "Augment TE label range information for the TE link template."; uses label-range-info; } /* * Augment TE label. */ 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the TE node connectivity matrices"; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the TE node connectivity matrices"; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the TE node connectivity matrices"; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay primary path of the TE node connectivity matrices"; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay backup path of the TE node connectivity matrices"; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects excluded by the path computation of the TE node connectivity matrices"; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects included by the path computation of the TE node connectivity matrices"; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the computed path route objects of the TE node connectivity matrices"; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the source LTP of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the source LTP of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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" { when "../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the source LTP of the connectivity matrix entry."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the destination LTP of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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" { when "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the destination LTP of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the destination LTP of the connectivity matrix entry."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay primary path of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay backup path of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects excluded by the path computation of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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" { when "../../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects included by the path computation of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the computed path route objects of the connectivity matrix entry."; case eth { uses etht-types:eth-label; } } 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" { when "../../../../../../../../" + "nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the TE node connectivity matrices information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the TE node connectivity matrices information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the TE node connectivity matrices information source."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay primary path of the TE node connectivity matrices of the information source entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay backup path of the TE node connectivity matrices of the information source entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects excluded by the path computation of the TE node connectivity matrices information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects included by the path computation of the TE node connectivity matrices information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the computed path route objects of the TE node connectivity matrices information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the source LTP of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the source LTP of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the source LTP of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the destination LTP of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the destination LTP of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the destination LTP of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay primary path of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay backup path of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects excluded by the path computation of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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-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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects included by the path computation of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the computed path route objects of the connectivity matrix entry information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay primary path of the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay backup path of the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects excluded by the path computation of the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects included by the path computation of the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the computed path route objects of the TTP Local Link Connectivities."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay primary path of the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label; } } 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 "../../../../../../../../../../" + "nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay backup path of the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects excluded by the path computation of the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the explicit route objects included by the path computation of the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the computed path route objects of the TTP Local Link Connectivity entry."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay primary path of the TE link."; case eth { uses etht-types:eth-label; } } 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 "../../../../../../../../" + "nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label hop for the underlay backup path of the TE link."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the TE link."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the TE link."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the TE link."; case eth { uses etht-types:eth-label-step; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range start for the TE link information source."; case eth { uses etht-types:eth-label; } } 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" { when "../../../../../../../nw:network-types/tet:te-topology/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range end for the TE link information source."; case eth { uses etht-types:eth-label; } } 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/" + "etht:eth-tran-topology" { description "Augmentation parameters apply only for networks with Ethernet topology type."; } description "Augment TE label range step for the TE link information source."; case eth { uses etht-types:eth-label-step; } } 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" { description "Augment TE label hop for the underlay primary path of the TE link template."; case eth { uses etht-types:eth-label; } } 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" { description "Augment TE label hop for the underlay backup path of the TE link template."; case eth { uses etht-types:eth-label; } } 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" { description "Augment TE label range start for the TE link template."; case eth { uses etht-types:eth-label; } } 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" { description "Augment TE label range end for the TE link template."; case eth { uses etht-types:eth-label; } } 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" { description "Augment TE label range step for the TE link template."; case eth { uses etht-types:eth-label-step; } } } <CODE ENDS>
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-eth-te-topology Registrant Contact: The IESG. XML: N/A, the requested URI is an XML namespace.¶
This document registers following YANG modules in the YANG Module Names registry [RFC7950].¶
name: ietf-eth-te-topology namespace: urn:ietf:params:xml:ns:yang:ietf-eth-te-topology prefix: etht reference: RFC XXXX¶
RFC Editor: Please replace XXXX with the RFC number assigned to this document.¶
The data following the model defined in this document is exchanged via, for example, the interface between an orchestrator and a transport network controller. The security concerns mentioned in [RFC8795] for using ietf-te-topology.yang model also applies to this document.¶
The YANG module defined in this document can be accessed via the RESTCONF protocol defined in [RFC8040], or maybe via the NETCONF protocol [RFC6241].¶
There are a number of data nodes defined in the YANG module which 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., POST) to these data nodes without proper protection can have a negative effect on network operations.¶
Editors note: to list specific subtrees and data nodes and their sensitivity/vulnerability.¶
We would like to thank Igor Bryskin and Daniel King for their comments and discussions.¶