draft-ietf-ccamp-wson-tunnel-model-02.txt   draft-ietf-ccamp-wson-tunnel-model-03.txt 
CCAMP Working Group Y. Lee CCAMP Working Group Y. Lee
Internet Draft D. Dhody Internet Draft D. Dhody
Intended status: Standard Track A. Guo Intended status: Standard Track A. Guo
Expires: April 19, 2019 Huawei Expires: September 7, 2019 Huawei
V. Lopez V. Lopez
Telefonica Telefonica
D. King D. King
U. of Lancaster U. of Lancaster
B. Yoon B. Yoon
ETRI ETRI
R. Vilalta R. Vilalta
CTTC CTTC
October 18, 2018 March 7, 2019
A Yang Data Model for WSON Tunnel A Yang Data Model for WSON Tunnel
draft-ietf-ccamp-wson-tunnel-model-02 draft-ietf-ccamp-wson-tunnel-model-03
Abstract Abstract
This document provides a YANG data model for WSON TE tunnel. This document provides a YANG data model for WSON TE tunnel.
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with This Internet-Draft is submitted to IETF in full conformance with
the provisions of BCP 78 and BCP 79. the provisions of BCP 78 and BCP 79.
skipping to change at page 1, line 50 skipping to change at page 1, line 50
months and may be updated, replaced, or obsoleted by other documents months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet-Drafts as at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress." reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html http://www.ietf.org/shadow.html
This Internet-Draft will expire on April 19, 2019. This Internet-Draft will expire on September 7, 2019.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this respect to this document. Code Components extracted from this
document must include Simplified BSD License text as described in document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License. warranty as described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction...................................................2 1. Introduction...................................................2
1.1. Terminology...............................................3 1.1. Terminology...............................................3
1.2. Tree diagram..............................................3 1.2. Tree diagram..............................................3
1.3. Prefixes in Data Node Names...............................3 1.3. Prefixes in Data Node Names...............................3
2. YANG Model (Tree Structure)....................................4 2. YANG Model (Tree Structure)....................................4
3. TE Tunnel Model for WSON......................................20 3. TE Tunnel Model for WSON......................................16
4. Security Considerations.......................................44 4. Security Considerations.......................................33
5. IANA Considerations...........................................44 5. IANA Considerations...........................................34
6. Acknowledgments...............................................45 6. Acknowledgments...............................................34
7. References....................................................46 7. References....................................................35
7.1. Normative References.....................................46 7.1. Normative References.....................................35
7.2. Informative References...................................46 7.2. Informative References...................................35
8. Contributors..................................................47 8. Contributors..................................................36
Authors' Addresses...............................................47 Authors' Addresses...............................................36
1. Introduction 1. Introduction
This document provides a YANG data model for WSON tunnel model. The This document provides a YANG data model for WSON tunnel model. The
YANG model described in this document is a WSON technology-specific YANG model described in this document is a WSON technology-specific
Yang Tunnel model based on the information model developed in Yang Tunnel model based on the information model developed in
[RFC7446] and the two encoding documents [RFC7581] and [RFC7579] [RFC7446] and the two encoding documents [RFC7581] and [RFC7579]
that developed protocol independent encodings based on [RFC7446]. that developed protocol independent encodings based on [RFC7446].
This document augments the generic TE tunnel model [TE-Tunnel]. This document augments the generic TE tunnel model [TE-Tunnel].
skipping to change at page 4, line 16 skipping to change at page 4, line 16
Table 1: Prefixes and corresponding YANG modules Table 1: Prefixes and corresponding YANG modules
Note: The RFC Editor will replace XXXX with the number assigned to Note: The RFC Editor will replace XXXX with the number assigned to
the RFC once this draft becomes an RFC. the RFC once this draft becomes an RFC.
2. YANG Model (Tree Structure) 2. YANG Model (Tree Structure)
module: ietf-wson-tunnel module: ietf-wson-tunnel
augment /te:te/te:tunnels/te:tunnel: augment /te:te/te:tunnels/te:tunnel:
+--rw src-client-signal? identityref +-rw src-client-signal? identityref
+--rw dst-client-signal? identityref +-rw dst-client-signal? identityref
+--rw fec-type? identityref +-rw fec-type? identityref
+--rw termination-type? identityref +-rw termination-type? identityref
+--rw bit-stuffing? boolean +-rw bit-stuffing? boolean
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:te-bandwidth/te:technology: constraint/te:te-bandwidth/te:technology:
+--:(wson) +-:(wson)
+--rw bandwidth-type? identityref +-rw bandwidth-type? identityref
augment /te:te/te:tunnels/te:tunnel/te:te-bandwidth/te:technology: augment /te:te/te:tunnels/te:tunnel/te:te-bandwidth/te:technology:
+--:(wson) +-:(wson)
+--rw bandwidth-type? identityref +-rw bandwidth-type? identityref
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:te-bandwidth/te:technology: path/te:te-bandwidth/te:technology:
+--:(wson) +-:(wson)
+--rw bandwidth-type? identityref +-rw bandwidth-type? identityref
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:te-bandwidth/te:technology: path/te:p2p-primary-reverse-path/te:te-bandwidth/te:technology:
+--:(wson) +-:(wson)
+--rw bandwidth-type? identityref +-rw bandwidth-type? identityref
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:te-bandwidth/te:technology: path/te:te-bandwidth/te:technology:
+--:(wson) +-:(wson)
+--rw bandwidth-type? identityref +-rw bandwidth-type? identityref
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:explicit-route-objects/te:route-object-exclude- constraint/te:explicit-route-objects-always/te:route-object-exclude-
always/te:type/te:label/te:label-hop/te:te-label/te:technology: always/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:explicit-route-objects/te:route-object-include- constraint/te:explicit-route-objects-always/te:route-object-include-
exclude/te:type/te:label/te:label-hop/te:te-label/te:technology: exclude/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-in-segment/te:forward/te:label-restrictions/te:label-
restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-in-segment/te:forward/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-in-segment/te:forward/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-in-segment/te:reverse/te:label-restrictions/te:label-
restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-in-segment/te:reverse/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-in-segment/te:reverse/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-segment/te:forward/te:label-restrictions/te:label- constraint/te:path-in-segment/te:label-restrictions/te:label-restriction:
restriction: +-rw grid-type? identityref
+--rw grid-type? identityref +-rw priority? uint8
+--rw priority? uint8
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-segment/te:forward/te:label-restrictions/te:label- constraint/te:path-in-segment/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology: restriction/te:label-start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-segment/te:forward/te:label-restrictions/te:label- constraint/te:path-in-segment/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology: restriction/te:label-end/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-segment/te:reverse/te:label-restrictions/te:label- constraint/te:path-out-segment/te:label-restrictions/te:label-restriction:
restriction:
+--rw grid-type? identityref +-rw grid-type? identityref
+--rw priority? uint8 +-rw priority? uint8
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-segment/te:reverse/te:label-restrictions/te:label- constraint/te:path-out-segment/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology: restriction/te:label-start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:globals/te:named-path-constraints/te:named-path- augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-segment/te:reverse/te:label-restrictions/te:label- constraint/te:path-out-segment/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology: restriction/te:label-end/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:optimizations/te:algorithm/te:metric/te:optimization- path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-exclude-objects/te:route-object-exclude- metric/te:explicit-route-exclude-objects/te:route-object-exclude-
object/te:type/te:label/te:label-hop/te:te-label/te:technology: object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:optimizations/te:algorithm/te:metric/te:optimization- path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-include-objects/te:route-object-include- metric/te:explicit-route-include-objects/te:route-object-include-
object/te:type/te:label/te:label-hop/te:te-label/te:technology: object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:explicit-route-objects/te:route-object-exclude- path/te:explicit-route-objects-always/te:route-object-exclude-
always/te:type/te:label/te:label-hop/te:te-label/te:technology: always/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:explicit-route-objects/te:route-object-include- path/te:explicit-route-objects-always/te:route-object-include-
exclude/te:type/te:label/te:label-hop/te:te-label/te:technology: exclude/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-in-segment/te:forward/te:label-restrictions/te:label-restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-in-segment/te:forward/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-in-segment/te:forward/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-in-segment/te:reverse/te:label-restrictions/te:label-restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-in-segment/te:reverse/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-in-segment/te:reverse/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-out-segment/te:forward/te:label-restrictions/te:label- path/te:path-in-segment/te:label-restrictions/te:label-restriction:
restriction: +-rw grid-type? identityref
+--rw grid-type? identityref +-rw priority? uint8
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-out-segment/te:forward/te:label-restrictions/te:label- path/te:path-in-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-start/te:te-label/te:technology: start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-out-segment/te:forward/te:label-restrictions/te:label- path/te:path-in-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-end/te:te-label/te:technology: end/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)? +-:(wson)
+--:(dwdm) +-rw (grid-type)?
| +--rw channel-freq? frequency-thz +-:(dwdm)
+--:(cwdm) | +-rw dwdm-n? int16
+--rw channel-wavelength? uint32 +-:(cwdm)
+-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-out-segment/te:reverse/te:label-restrictions/te:label- path/te:path-out-segment/te:label-restrictions/te:label-restriction:
restriction: +-rw grid-type? identityref
+--rw grid-type? identityref +-rw priority? uint8
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-out-segment/te:reverse/te:label-restrictions/te:label- path/te:path-out-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-start/te:te-label/te:technology: start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:path-out-segment/te:reverse/te:label-restrictions/te:label- path/te:path-out-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-end/te:te-label/te:technology: end/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:state/te:path-properties/te:path-route-objects/te:path-computed-route- path/te:computed-paths-properties/te:computed-path-properties/te:path-
object/te:state/te:type/te:label/te:label-hop/te:te-label/te:technology: properties/te:path-route-objects/te:path-computed-route-
+--:(wson) object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--ro (grid-type)? +-:(wson)
+--:(dwdm) +-ro (grid-type)?
| +--ro (single-or-super-channel)? +-:(dwdm)
| +--:(single) | +-ro (single-or-super-channel)?
| | +--ro channel-freq? frequency-thz | +-:(single)
| +--:(super) | | +-ro dwdm-n? int16
| +--ro subcarrier-channels* frequency-thz | +-:(super)
+--:(cwdm) | +-ro subcarrier-dwdm-n* int16
+--ro channel-wavelength? uint32 +-:(cwdm)
+-ro cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:state/te:lsps/te:lsp/te:lsp-record-route-subobjects/te:record-route- path/te:lsps/te:lsp/te:lsp-record-route-information/te:lsp-record-route-
subobject/te:type/te:label/te:label-hop/te:te-label/te:technology: information/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson)
+--ro (grid-type)? +-:(wson)
+--:(dwdm) +-ro (grid-type)?
| +--ro (single-or-super-channel)? +-:(dwdm)
| +--:(single) | +-ro (single-or-super-channel)?
| | +--ro channel-freq? frequency-thz | +-:(single)
| +--:(super) | | +-ro dwdm-n? int16
| +--ro subcarrier-channels* frequency-thz | +-:(super)
+--:(cwdm) | +-ro subcarrier-dwdm-n* int16
+--ro channel-wavelength? uint32 +-:(cwdm)
+-ro cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:state/te:lsps/te:lsp/te:path-properties/te:path-route-objects/te:path- path/te:lsps/te:lsp/te:path-properties/te:path-route-objects/te:path-computed-
computed-route-object/te:state/te:type/te:label/te:label-hop/te:te- route-object/te:type/te:label/te:label-hop/te:te-label/te:technology:
label/te:technology: +-:(wson)
+--:(wson) +-ro (grid-type)?
+--ro (grid-type)? +-:(dwdm)
+--:(dwdm) | +-ro (single-or-super-channel)?
| +--ro (single-or-super-channel)? | +-:(single)
| +--:(single) | | +-ro dwdm-n? int16
| | +--ro channel-freq? frequency-thz | +-:(super)
| +--:(super) | +-ro subcarrier-dwdm-n* int16
| +--ro subcarrier-channels* frequency-thz +-:(cwdm)
+--:(cwdm) +-ro cwdm-n? int16
+--ro channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary- path/te:p2p-primary-reverse-
path/te:optimizations/te:algorithm/te:metric/te:optimization- path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-exclude-objects/te:route-object-exclude- metric/te:explicit-route-exclude-objects/te:route-object-exclude-
object/te:type/te:label/te:label-hop/te:te-label/te:technology: object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary- path/te:p2p-primary-reverse-
path/te:optimizations/te:algorithm/te:metric/te:optimization- path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-include-objects/te:route-object-include- metric/te:explicit-route-include-objects/te:route-object-include-
object/te:type/te:label/te:label-hop/te:te-label/te:technology: object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:explicit-route-objects/te:route-object-
exclude-always/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw (single-or-super-channel)?
| +--:(single)
| | +--rw channel-freq? frequency-thz
| +--:(super)
| +--rw subcarrier-channels* frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:explicit-route-objects/te:route-object-
include-exclude/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw (single-or-super-channel)?
| +--:(single)
| | +--rw channel-freq? frequency-thz
| +--:(super)
| +--rw subcarrier-channels* frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-in-segment/te:forward/te:label-
restrictions/te:label-restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-in-segment/te:forward/te:label- path/te:p2p-primary-reverse-path/te:explicit-route-objects-always/te:route-
restrictions/te:label-restriction/te:label-start/te:te-label/te:technology: object-exclude-always/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw (single-or-super-channel)?
+--:(cwdm) | +-:(single)
+--rw channel-wavelength? uint32 | | +-rw dwdm-n? int16
| +-:(super)
| +-rw subcarrier-dwdm-n* int16
+-:(cwdm)
+-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-in-segment/te:forward/te:label- path/te:p2p-primary-reverse-path/te:explicit-route-objects-always/te:route-
restrictions/te:label-restriction/te:label-end/te:te-label/te:technology: object-include-exclude/te:type/te:label/te:label-hop/te:te-
+--:(wson) label/te:technology:
+--rw (grid-type)? +-:(wson)
+--:(dwdm) +-rw (grid-type)?
| +--rw channel-freq? frequency-thz +-:(dwdm)
+--:(cwdm) | +-rw (single-or-super-channel)?
+--rw channel-wavelength? uint32 | +-:(single)
| | +-rw dwdm-n? int16
| +-:(super)
| +-rw subcarrier-dwdm-n* int16
+-:(cwdm)
+-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-in-segment/te:reverse/te:label- path/te:p2p-primary-reverse-path/te:path-in-segment/te:label-
restrictions/te:label-restriction: restrictions/te:label-restriction:
+--rw grid-type? identityref +-rw grid-type? identityref
+--rw priority? uint8 +-rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-in-segment/te:reverse/te:label- path/te:p2p-primary-reverse-path/te:path-in-segment/te:label-
restrictions/te:label-restriction/te:label-start/te:te-label/te:technology: restrictions/te:label-restriction/te:label-start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-in-segment/te:reverse/te:label- path/te:p2p-primary-reverse-path/te:path-in-segment/te:label-
restrictions/te:label-restriction/te:label-end/te:te-label/te:technology: restrictions/te:label-restriction/te:label-end/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-out-segment/te:forward/te:label- path/te:p2p-primary-reverse-path/te:path-out-segment/te:label-
restrictions/te:label-restriction: restrictions/te:label-restriction:
+--rw grid-type? identityref +-rw grid-type? identityref
+--rw priority? uint8 +-rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-out-segment/te:forward/te:label- path/te:p2p-primary-reverse-path/te:path-out-segment/te:label-
restrictions/te:label-restriction/te:label-start/te:te-label/te:technology: restrictions/te:label-restriction/te:label-start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-out-segment/te:forward/te:label- path/te:p2p-primary-reverse-path/te:path-out-segment/te:label-
restrictions/te:label-restriction/te:label-end/te:te-label/te:technology: restrictions/te:label-restriction/te:label-end/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-out-segment/te:reverse/te:label-
restrictions/te:label-restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-out-segment/te:reverse/te:label-
restrictions/te:label-restriction/te:label-start/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:path-out-segment/te:reverse/te:label- path/te:p2p-primary-reverse-path/te:computed-paths-properties/te:computed-
restrictions/te:label-restriction/te:label-end/te:te-label/te:technology: path-properties/te:path-properties/te:path-route-objects/te:path-computed-
+--:(wson) route-object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--rw (grid-type)? +-:(wson)
+--:(dwdm) +-ro (grid-type)?
| +--rw channel-freq? frequency-thz +-:(dwdm)
+--:(cwdm) | +-ro (single-or-super-channel)?
+--rw channel-wavelength? uint32 | +-:(single)
| | +-ro dwdm-n? int16
| +-:(super)
| +-ro subcarrier-dwdm-n* int16
+-:(cwdm)
+-ro cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:state/te:path-properties/te:path-route- path/te:p2p-primary-reverse-path/te:lsps/te:lsp/te:lsp-record-route-
objects/te:path-computed-route-object/te:state/te:type/te:label/te:label- information/te:lsp-record-route-information/te:type/te:label/te:label-
hop/te:te-label/te:technology: hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--ro (grid-type)? +-ro (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--ro (single-or-super-channel)? | +-ro (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--ro channel-freq? frequency-thz | | +-ro dwdm-n? int16
| +--:(super) | +-:(super)
| +--ro subcarrier-channels* frequency-thz | +-ro subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--ro channel-wavelength? uint32 +-ro cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:state/te:lsps/te:lsp/te:lsp-record-route-
subobjects/te:record-route-subobject/te:type/te:label/te:label-hop/te:te-
label/te:technology:
+--:(wson)
+--ro (grid-type)?
+--:(dwdm)
| +--ro (single-or-super-channel)?
| +--:(single)
| | +--ro channel-freq? frequency-thz
| +--:(super)
| +--ro subcarrier-channels* frequency-thz
+--:(cwdm)
+--ro channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary- augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-path/te:state/te:lsps/te:lsp/te:path- path/te:p2p-primary-reverse-path/te:lsps/te:lsp/te:path-properties/te:path-
properties/te:path-route-objects/te:path-computed-route- route-objects/te:path-computed-route-object/te:type/te:label/te:label-
object/te:state/te:type/te:label/te:label-hop/te:te-label/te:technology: hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--ro (grid-type)? +-ro (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--ro (single-or-super-channel)? | +-ro (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--ro channel-freq? frequency-thz | | +-ro dwdm-n? int16
| +--:(super) | +-:(super)
| +--ro subcarrier-channels* frequency-thz | +-ro subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--ro channel-wavelength? uint32 +-ro cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:optimizations/te:algorithm/te:metric/te:optimization- path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-exclude-objects/te:route-object-exclude- metric/te:explicit-route-exclude-objects/te:route-object-exclude-
object/te:type/te:label/te:label-hop/te:te-label/te:technology: object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:optimizations/te:algorithm/te:metric/te:optimization- path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-include-objects/te:route-object-include- metric/te:explicit-route-include-objects/te:route-object-include-
object/te:type/te:label/te:label-hop/te:te-label/te:technology: object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:explicit-route-objects/te:route-object-exclude- path/te:explicit-route-objects-always/te:route-object-exclude-
always/te:type/te:label/te:label-hop/te:te-label/te:technology: always/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:explicit-route-objects/te:route-object-include- path/te:explicit-route-objects-always/te:route-object-include-
exclude/te:type/te:label/te:label-hop/te:te-label/te:technology: exclude/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw (single-or-super-channel)? | +-rw (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--rw channel-freq? frequency-thz | | +-rw dwdm-n? int16
| +--:(super) | +-:(super)
| +--rw subcarrier-channels* frequency-thz | +-rw subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-in-segment/te:forward/te:label-restrictions/te:label-restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-in-segment/te:forward/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-in-segment/te:forward/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-in-segment/te:reverse/te:label-restrictions/te:label-restriction:
+--rw grid-type? identityref
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-in-segment/te:reverse/te:label-restrictions/te:label-
restriction/te:label-start/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-in-segment/te:reverse/te:label-restrictions/te:label-
restriction/te:label-end/te:te-label/te:technology:
+--:(wson)
+--rw (grid-type)?
+--:(dwdm)
| +--rw channel-freq? frequency-thz
+--:(cwdm)
+--rw channel-wavelength? uint32
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-out-segment/te:forward/te:label-restrictions/te:label- path/te:path-in-segment/te:label-restrictions/te:label-restriction:
restriction: +-rw grid-type? identityref
+--rw grid-type? identityref +-rw priority? uint8
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-out-segment/te:forward/te:label-restrictions/te:label- path/te:path-in-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-start/te:te-label/te:technology: start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-out-segment/te:forward/te:label-restrictions/te:label- path/te:path-in-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-end/te:te-label/te:technology: end/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-out-segment/te:reverse/te:label-restrictions/te:label- path/te:path-out-segment/te:label-restrictions/te:label-restriction:
restriction: +-rw grid-type? identityref
+--rw grid-type? identityref +-rw priority? uint8
+--rw priority? uint8
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-out-segment/te:reverse/te:label-restrictions/te:label- path/te:path-out-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-start/te:te-label/te:technology: start/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:path-out-segment/te:reverse/te:label-restrictions/te:label- path/te:path-out-segment/te:label-restrictions/te:label-restriction/te:label-
restriction/te:label-end/te:te-label/te:technology: end/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--rw (grid-type)? +-rw (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--rw channel-freq? frequency-thz | +-rw dwdm-n? int16
+--:(cwdm) +-:(cwdm)
+--rw channel-wavelength? uint32 +-rw cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:state/te:path-properties/te:path-route-objects/te:path-computed-route- path/te:computed-paths-properties/te:computed-path-properties/te:path-
object/te:state/te:type/te:label/te:label-hop/te:te-label/te:technology: properties/te:path-route-objects/te:path-computed-route-
+--:(wson) object/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--ro (grid-type)?
+--:(dwdm) +-:(wson)
| +--ro (single-or-super-channel)? +-ro (grid-type)?
| +--:(single) +-:(dwdm)
| | +--ro channel-freq? frequency-thz | +-ro (single-or-super-channel)?
| +--:(super) | +-:(single)
| +--ro subcarrier-channels* frequency-thz | | +-ro dwdm-n? int16
+--:(cwdm) | +-:(super)
+--ro channel-wavelength? uint32 | +-ro subcarrier-dwdm-n* int16
+-:(cwdm)
+-ro cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:state/te:lsps/te:lsp/te:lsp-record-route-subobjects/te:record-route- path/te:lsps/te:lsp/te:lsp-record-route-information/te:lsp-record-route-
subobject/te:type/te:label/te:label-hop/te:te-label/te:technology: information/te:type/te:label/te:label-hop/te:te-label/te:technology:
+--:(wson) +-:(wson)
+--ro (grid-type)? +-ro (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--ro (single-or-super-channel)? | +-ro (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--ro channel-freq? frequency-thz | | +-ro dwdm-n? int16
| +--:(super) | +-:(super)
| +--ro subcarrier-channels* frequency-thz | +-ro subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--ro channel-wavelength? uint32 +-ro cwdm-n? int16
augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary- augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:state/te:lsps/te:lsp/te:path-properties/te:path-route-objects/te:path- path/te:lsps/te:lsp/te:path-properties/te:path-route-objects/te:path-computed-
computed-route-object/te:state/te:type/te:label/te:label-hop/te:te- route-object/te:type/te:label/te:label-hop/te:te-label/te:technology:
label/te:technology: +-:(wson)
+--:(wson) +-ro (grid-type)?
+--ro (grid-type)? +-:(dwdm)
+--:(dwdm) | +-ro (single-or-super-channel)?
| +--ro (single-or-super-channel)? | +-:(single)
| +--:(single) | | +-ro dwdm-n? int16
| | +--ro channel-freq? frequency-thz | +-:(super)
| +--:(super) | +-ro subcarrier-dwdm-n* int16
| +--ro subcarrier-channels* frequency-thz +-:(cwdm)
+--:(cwdm) +-ro cwdm-n? int16
+--ro channel-wavelength? uint32 augment /te:te/te:lsps-state/te:lsp/te:lsp-record-route-information/te:lsp-
record-route-information/te:type/te:label/te:label-hop/te:te-
augment /te:te/te:lsps-state/te:lsp/te:lsp-record-route-
subobjects/te:record-route-subobject/te:type/te:label/te:label-hop/te:te-
label/te:technology: label/te:technology:
+--:(wson) +-:(wson)
+--ro (grid-type)? +-ro (grid-type)?
+--:(dwdm) +-:(dwdm)
| +--ro (single-or-super-channel)? | +-ro (single-or-super-channel)?
| +--:(single) | +-:(single)
| | +--ro channel-freq? frequency-thz | | +-ro dwdm-n? int16
| +--:(super) | +-:(super)
| +--ro subcarrier-channels* frequency-thz | +-ro subcarrier-dwdm-n* int16
+--:(cwdm) +-:(cwdm)
+--ro channel-wavelength? uint32 +-ro cwdm-n? int16
augment /te:tunnels-rpc/te:input/te:tunnel-info/tepc:path-request: augment /te:tunnels-rpc/te:input/te:tunnel-info/tepc:path-request:
+---- src-client-signal? identityref +- src-client-signal? identityref
+---- dst-client-signal? identityref +- dst-client-signal? identityref
+---- fec-type? identityref +- fec-type? identityref
+---- termination-type? identityref +- termination-type? identityref
+---- bit-stuffing? boolean +- bit-stuffing? boolean
+---- wavelength-assignment? identityref +- wavelength-assignment? identityref
3. TE Tunnel Model for WSON 3. TE Tunnel Model for WSON
<CODE BEGINS> file "ietf-wson-tunnel@2018-10-15.yang" <CODE BEGINS> file "ietf-wson-tunnel@2019-03-06.yang"
module ietf-wson-tunnel { module ietf-wson-tunnel {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-wson-tunnel"; namespace "urn:ietf:params:xml:ns:yang:ietf-wson-tunnel";
prefix "wson-tunnel"; prefix "wson-tunnel";
import ietf-te { prefix "te"; } import ietf-te { prefix "te"; }
import ietf-layer0-types{ prefix "layer0-types"; } import ietf-layer0-types{ prefix "layer0-types"; }
import ietf-te-path-computation { prefix "tepc"; } import ietf-te-path-computation { prefix "tepc"; }
skipping to change at page 21, line 19 skipping to change at page 17, line 9
WG Chair: Fatai Zhang WG Chair: Fatai Zhang
<mailto:zhangfatai@huawei.com> <mailto:zhangfatai@huawei.com>
Editor: Young Lee <leeyoung@huawei.com> Editor: Young Lee <leeyoung@huawei.com>
Editor: Aihua Guo <aihuaguo@huawei.com> Editor: Aihua Guo <aihuaguo@huawei.com>
Editor: Dhruv Dhody <dhruv.ietf@gmail.com> Editor: Dhruv Dhody <dhruv.ietf@gmail.com>
Editor: Ricard Vilalta <ricard.vilalta@cttc.es>"; Editor: Ricard Vilalta <ricard.vilalta@cttc.es>";
description description
"This module defines a model for WSON Tunnel Services."; "This module defines a model for WSON Tunnel Services.";
revision "2018-10-15" { revision "2019-03-06" {
description description
"Updates to version 2"; "Updates to version 3";
reference "version 2"; reference "version 3";
} }
/* Groupings. */ /* Groupings. */
grouping wson-tunnel-attributes { grouping wson-tunnel-attributes {
description "Parameters for WSON tunnel."; description "Parameters for WSON tunnel.";
leaf src-client-signal { leaf src-client-signal {
type identityref { type identityref {
base otn-types:client-signal; base otn-types:client-signal;
} }
skipping to change at page 23, line 40 skipping to change at page 19, line 29
+ "te:te-bandwidth/te:technology" { + "te:te-bandwidth/te:technology" {
description "WSON bandwidth."; description "WSON bandwidth.";
case wson { case wson {
uses layer0-types:wson-path-bandwidth; uses layer0-types:wson-path-bandwidth;
} }
} }
/* Augment bandwidth of reverse primary path */ /* Augment bandwidth of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:te-bandwidth/te:technology" { + "te:te-bandwidth/te:technology" {
description "WSON bandwidth."; description "WSON bandwidth.";
case wson { case wson {
uses layer0-types:wson-path-bandwidth; uses layer0-types:wson-path-bandwidth;
} }
} }
/* Augment bandwidht of secondary path */ /* Augment bandwidht of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
skipping to change at page 24, line 20 skipping to change at page 20, line 8
} }
} }
/* /*
* Augment TE label. * Augment TE label.
*/ */
/* Augment label hop of route-object-exclude-always of named-path- /* Augment label hop of route-object-exclude-always of named-path-
constraints */ constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:explicit-route-objects/" + "te:named-path-constraint/te:explicit-route-objects-always/"
+ "te:route-object-exclude-always/te:type/te:label/" + "te:route-object-exclude-always/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-object-include-exclude of named-path- /* Augment label hop of route-object-include-exclude of named-path-
constraints */ constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:explicit-route-objects/" + "te:named-path-constraint/te:explicit-route-objects-always/"
+ "te:route-object-include-exclude/te:type/te:label/" + "te:route-object-include-exclude/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label restrictions for the forwarding direction of path-in- /* Augment label restrictions for the path-in-segment of
segment of named-path-constraints */ named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-in-segment/" + "te:named-path-constraint/te:path-in-segment/"
+ "te:forward/te:label-restrictions/" + "te:label-restrictions/te:label-restriction" {
+ "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the forwarding direction of path-in- /* Augment label restrictions start for the path-in-segment
segment of named-path-constraints */ of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-in-segment/" + "te:named-path-constraint/te:path-in-segment/"
+ "te:forward/te:label-restrictions/" + "te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
}
/* Augment label restrictions end for the forwarding direction of path-in-
segment of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-in-segment/"
+ "te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions for the reverse direction of path-in-segment
of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-in-segment/"
+ "te:reverse/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the reverse direction of path-in-
segment of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-in-segment/"
+ "te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
} }
/* Augment label restrictions end for the reverse direction of path-in- /* Augment label restrictions end for the path-in-segment of
segment of named-path-constraints */ named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-in-segment/" + "te:named-path-constraint/te:path-in-segment/"
+ "te:reverse/te:label-restrictions/" + "te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions for the forwarding direction of path-out- /* Augment label restrictions for the path-out-segment of
segment of named-path-constraints */ named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-out-segment/" + "te:named-path-constraint/te:path-out-segment/"
+ "te:forward/te:label-restrictions/" + "te:label-restrictions/"
+ "te:label-restriction" { + "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the forwarding direction of path- /* Augment label restrictions start for the path-out-segment
out-segment of named-path-constraints */ of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-out-segment/" + "te:named-path-constraint/te:path-out-segment/"
+ "te:forward/te:label-restrictions/" + "te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions end for the forwarding direction of path-out- /* Augment label restrictions end for the path-out-segment of
segment of named-path-constraints */ named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/" augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-out-segment/" + "te:named-path-constraint/te:path-out-segment/"
+ "te:forward/te:label-restrictions/" + "te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions for the reverse direction of path-out-segment
of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-out-segment/"
+ "te:reverse/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the reverse direction of path-out-
segment of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-out-segment/"
+ "te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions end for the reverse direction of path-out-
segment of named-path-constraints */
augment "/te:te/te:globals/te:named-path-constraints/"
+ "te:named-path-constraint/te:path-out-segment/"
+ "te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label hop of route-exclude of primary path */ /* Augment label hop of route-exclude of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:optimizations/te:algorithm/te:metric/" + "te:optimizations/te:algorithm/te:metric/"
+ "te:optimization-metric/te:explicit-route-exclude-objects/" + "te:optimization-metric/te:explicit-route-exclude-objects/"
+ "te:route-object-exclude-object/te:type/te:label/" + "te:route-object-exclude-object/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
skipping to change at page 28, line 33 skipping to change at page 22, line 38
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-object-exclude-always of primary path */ /* Augment label hop of route-object-exclude-always of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:explicit-route-objects/" + "te:explicit-route-objects-always/"
+ "te:route-object-exclude-always/te:type/te:label/" + "te:route-object-exclude-always/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-object-include-exclude of primary path */ /* Augment label hop of route-object-include-exclude of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:explicit-route-objects/" + "te:explicit-route-objects-always/"
+ "te:route-object-include-exclude/te:type/te:label/" + "te:route-object-include-exclude/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label restrictions for the forwarding direction of path-in- /* Augment label restrictions for the path-in-segment of primary path */
segment of primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the forwarding direction of path-in-
segment of primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions end for the forwarding direction of path-in-
segment of primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions for the reverse direction of path-in-segment
of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction" { + "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the reverse direction of path-in- /* Augment label restrictions start for the path-in-segment of primary path
segment of primary path */ */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions end for the reverse direction of path-in- /* Augment label restrictions end for the path-in-segment of primary path */
segment of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions for the forwarding direction of path-out- /* Augment label restrictions for the path-out-segment of primary path */
segment of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction" { + "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the forwarding direction of path- /* Augment label restrictions start for the path-out-segment of primary path
out-segment of primary path */ */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions end for the forwarding direction of path-out- /* Augment label restrictions end for the path-out-segment of primary path
segment of primary path */ */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions for the reverse direction of path-out-segment
of primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the reverse direction of path-out-
segment of primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions end for the reverse direction of path-out-
segment of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label hop of path-route of primary path */ /* Augment label hop of path-route of primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:state/te:path-properties/" + "te:computed-paths-properties/"
+ "te:computed-path-properties/te:path-properties/"
+ "te:path-route-objects/te:path-computed-route-object/" + "te:path-route-objects/te:path-computed-route-object/"
+ "te:state/te:type/te:label/" + "te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of record-route of primary LSP */ /* Augment label hop of record-route of primary LSP */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:state/te:lsps/te:lsp/te:lsp-record-route-subobjects/" + "te:lsps/te:lsp/te:lsp-record-route-information/"
+ "te:record-route-subobject/te:type/te:label/" + "te:lsp-record-route-information/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of path-route of primary LSP */ /* Augment label hop of path-route of primary LSP */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:state/te:lsps/te:lsp/te:path-properties/" + "te:lsps/te:lsp/te:path-properties/"
+ "te:path-route-objects/te:path-computed-route-object/" + "te:path-route-objects/te:path-computed-route-object/"
+ "te:state/te:type/te:label/" + "te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-exclude of reverse primary path */ /* Augment label hop of route-exclude of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:optimizations/te:algorithm/te:metric/" + "te:optimizations/te:algorithm/te:metric/"
+ "te:optimization-metric/te:explicit-route-exclude-objects/" + "te:optimization-metric/te:explicit-route-exclude-objects/"
+ "te:route-object-exclude-object/te:type/te:label/" + "te:route-object-exclude-object/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-include of reverse primary path */ /* Augment label hop of route-include of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:optimizations/te:algorithm/te:metric/" + "te:optimizations/te:algorithm/te:metric/"
+ "te:optimization-metric/te:explicit-route-include-objects/" + "te:optimization-metric/te:explicit-route-include-objects/"
+ "te:route-object-include-object/te:type/te:label/" + "te:route-object-include-object/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-object-exclude-always of reverse primary path /* Augment label hop of route-object-exclude-always of reverse primary path
*/ */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:explicit-route-objects/" + "te:explicit-route-objects-always/"
+ "te:route-object-exclude-always/" + "te:route-object-exclude-always/"
+ "te:type/te:label/" + "te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-object-include-exclude of reverse primary path /* Augment label hop of route-object-include-exclude of reverse primary path
*/ */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:explicit-route-objects/" + "te:explicit-route-objects-always/"
+ "te:route-object-include-exclude/" + "te:route-object-include-exclude/"
+ "te:type/te:label/" + "te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label restrictions for the forwarding direction of path-in- /* Augment label restrictions for the path-in-segment of reverse primary
segment of reverse primary path */ path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the forwarding direction of path-in-
segment of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions end for the forwarding direction of path-in-
segment of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions for the reverse direction of path-in-segment
of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the reverse direction of path-in-
segment of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions end for the reverse direction of path-in-
segment of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions for the forwarding direction of path-out-
segment of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction" { + "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the forwarding direction of path- /* Augment label restrictions start for the path-in-segment of reverse
out-segment of reverse primary path */ primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions end for the path-in-segment of reverse primary
/* Augment label restrictions end for the forwarding direction of path-out- path */
segment of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions for the reverse direction of path-out-segment /* Augment label restrictions for the path-out-segment of reverse primary
of reverse primary path */ path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction" { + "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the path-out-segment of reverse
/* Augment label restrictions start for the reverse direction of path-out- primary path */
segment of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions end for the reverse direction of path-out- /* Augment label restrictions end for the path-out-segment of reverse
segment of reverse primary path */ primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label hop of path-route of reverse primary path */ /* Augment label hop of path-route of reverse primary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:state/te:path-properties/" + "te:computed-paths-properties/"
+ "te:computed-path-properties/te:path-properties/"
+ "te:path-route-objects/te:path-computed-route-object/" + "te:path-route-objects/te:path-computed-route-object/"
+ "te:state/te:type/te:label/" + "te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of record-route of reverse primary LSP */ /* Augment label hop of record-route of reverse primary LSP */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:state/te:lsps/te:lsp/te:lsp-record-route-subobjects/" + "te:lsps/te:lsp/te:lsp-record-route-information/"
+ "te:record-route-subobject/te:type/te:label/" + "te:lsp-record-route-information/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of path-route of reverse primary LSP */ /* Augment label hop of path-route of reverse primary LSP */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-primary-paths/te:p2p-primary-path/" + "te:p2p-primary-paths/te:p2p-primary-path/"
+ "te:p2p-reverse-primary-path/" + "te:p2p-primary-reverse-path/"
+ "te:state/te:lsps/te:lsp/te:path-properties/" + "te:lsps/te:lsp/te:path-properties/"
+ "te:path-route-objects/te:path-computed-route-object/" + "te:path-route-objects/te:path-computed-route-object/"
+ "te:state/te:type/te:label/" + "te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-exclude of secondary path */ /* Augment label hop of route-exclude of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
skipping to change at page 39, line 16 skipping to change at page 30, line 4
} }
} }
/* Augment label hop of route-include of secondary path */ /* Augment label hop of route-include of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:optimizations/te:algorithm/te:metric/" + "te:optimizations/te:algorithm/te:metric/"
+ "te:optimization-metric/te:explicit-route-include-objects/" + "te:optimization-metric/te:explicit-route-include-objects/"
+ "te:route-object-include-object/te:type/te:label/" + "te:route-object-include-object/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-object-exclude-always of secondary path */ /* Augment label hop of route-object-exclude-always of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:explicit-route-objects/" + "te:explicit-route-objects-always/"
+ "te:route-object-exclude-always/te:type/te:label/" + "te:route-object-exclude-always/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of route-object-include-exclude of secondary path */ /* Augment label hop of route-object-include-exclude of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:explicit-route-objects/" + "te:explicit-route-objects-always/"
+ "te:route-object-include-exclude/te:type/te:label/" + "te:route-object-include-exclude/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label restrictions for the forwarding direction of path-in- /* Augment label restrictions for the path-in-segment of secondary path */
segment of secondary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the forwarding direction of path-in-
segment of secondary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions end for the forwarding direction of path-in-
segment of secondary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-in-segment/te:forward/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions for the reverse direction of path-in-segment
of secondary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction" {
description "WSON label.";
uses layer0-types:layer0-label-restriction;
}
/* Augment label restrictions start for the reverse direction of path-in-
segment of secondary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions end for the reverse direction of path-in-
segment of secondary path */
augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-in-segment/te:reverse/te:label-restrictions/"
+ "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" {
description "WSON label.";
case wson {
uses layer0-types:wson-link-label;
}
}
/* Augment label restrictions for the forwarding direction of path-out-
segment of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction" { + "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the forwarding direction of path- /* Augment label restrictions start for the path-in-segment of secondary
out-segment of secondary path */ path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions end for the forwarding direction of path-out- /* Augment label restrictions end for the path-in-segment of secondary path
segment of secondary path */ */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-out-segment/te:forward/te:label-restrictions/" + "te:path-in-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions for the reverse direction of path-out-segment /* Augment label restrictions for the path-out-segment of secondary path */
of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction" { + "te:label-restriction" {
description "WSON label."; description "WSON label.";
uses layer0-types:layer0-label-restriction; uses layer0-types:layer0-label-restriction;
} }
/* Augment label restrictions start for the reverse direction of path-out- /* Augment label restrictions start for the path-out-segment of secondary
segment of secondary path */ path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-start/" + "te:label-restriction/te:label-start/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label restrictions end for the reverse direction of path-out- /* Augment label restrictions end for the path-out-segment of secondary path
segment of secondary path */ */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:path-out-segment/te:reverse/te:label-restrictions/" + "te:path-out-segment/te:label-restrictions/"
+ "te:label-restriction/te:label-end/" + "te:label-restriction/te:label-end/"
+ "te:te-label/te:technology" { + "te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-link-label; uses layer0-types:wson-link-label;
} }
} }
/* Augment label hop of path-route of secondary path */ /* Augment label hop of path-route of secondary path */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:state/te:path-properties/te:path-route-objects/" + "te:computed-paths-properties/"
+ "te:path-computed-route-object/te:state/te:type/te:label/" + "te:computed-path-properties/te:path-properties/"
+ "te:path-route-objects/"
+ "te:path-computed-route-object/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of record-route of secondary LSP */ /* Augment label hop of record-route of secondary LSP */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:state/te:lsps/te:lsp/te:lsp-record-route-subobjects/" + "te:lsps/te:lsp/te:lsp-record-route-information/"
+ "te:record-route-subobject/te:type/te:label/" + "te:lsp-record-route-information/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of path-route of secondary LSP */ /* Augment label hop of path-route of secondary LSP */
augment "/te:te/te:tunnels/te:tunnel/" augment "/te:te/te:tunnels/te:tunnel/"
+ "te:p2p-secondary-paths/te:p2p-secondary-path/" + "te:p2p-secondary-paths/te:p2p-secondary-path/"
+ "te:state/te:lsps/te:lsp/te:path-properties/" + "te:lsps/te:lsp/te:path-properties/"
+ "te:path-route-objects/" + "te:path-route-objects/"
+ "te:path-computed-route-object/te:state/te:type/te:label/" + "te:path-computed-route-object/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
/* Augment label hop of record-route of LSP */ /* Augment label hop of record-route of LSP */
augment "/te:te/te:lsps-state/" augment "/te:te/te:lsps-state/"
+ "te:lsp/te:lsp-record-route-subobjects/" + "te:lsp/te:lsp-record-route-information/"
+ "te:record-route-subobject/te:type/te:label/" + "te:lsp-record-route-information/te:type/te:label/"
+ "te:label-hop/te:te-label/te:technology" { + "te:label-hop/te:te-label/te:technology" {
description "WSON label."; description "WSON label.";
case wson { case wson {
uses layer0-types:wson-path-label; uses layer0-types:wson-path-label;
} }
} }
augment "/te:tunnels-rpc/te:input/te:tunnel-info/" augment "/te:tunnels-rpc/te:input/te:tunnel-info/"
+ "tepc:path-request" { + "tepc:path-request" {
description description
skipping to change at page 44, line 30 skipping to change at page 33, line 36
} }
} }
<CODE ENDS> <CODE ENDS>
4. Security Considerations 4. Security Considerations
The configuration, state, and action data defined in this document The configuration, state, and action data defined in this document
are designed to be accessed via a management protocol with a secure are designed to be accessed via a management protocol with a secure
transport layer, such as NETCONF [RFC6241]. The NETCONF access transport layer, such as NETCONF [RFC6241]. The NETCONF access
control model [RFC6536] provides the means to restrict access for control model [RFC8341] provides the means to restrict access for
particular NETCONF users to a preconfigured subset of all available particular NETCONF users to a preconfigured subset of all available
NETCONF protocol operations and content. NETCONF protocol operations and content.
A number of configuration data nodes defined in this document are A number of configuration data nodes defined in this document are
writable/deletable (i.e., "config true") These data nodes may be writable/deletable (i.e., "config true") These data nodes may be
considered sensitive or vulnerable in some network environments. considered sensitive or vulnerable in some network environments.
5. IANA Considerations 5. IANA Considerations
This document registers the following namespace URIs in the IETF XML This document registers the following namespace URIs in the IETF XML
skipping to change at page 46, line 9 skipping to change at page 35, line 9
reference: RFC XXXX (TDB) reference: RFC XXXX (TDB)
-------------------------------------------------------------------- --------------------------------------------------------------------
6. Acknowledgments 6. Acknowledgments
This document was prepared using 2-Word-v2.0.template.dot. This document was prepared using 2-Word-v2.0.template.dot.
7. References 7. References
7.1. Normative References 7.1. Normative References
[TE-TOPO] X. Liu, et al., "YANG Data Model for TE Topologies", work [TE-Tunnel] T. Saad, Ed., X. Liu, V. Beeram, H. Shah, and I.
in progress: draft-ietf-teas-yang-te-topo. Bryskin, "A YANG Data Model for Traffic Engineering
Tunnels and Interfaces", draft-ietf-teas-yang-te, work in
progress.
[WSON-TOPO] Y. Lee, Ed., D. Dhody, A. Guo, V. Lopez, D. King, B.
Yoon, and R. Vilalta, "A Yang Data Model for WSON Optical
Networks", draft-ietf-ccamp-wson-yang, work in progress.
[TE-PC] Italo Busi (Ed.), Sergio Belotti (Ed.), "Yang model for
requesting Path Computation", draft-ietf-teas-yang-path-
computation, work in progress.
[OTN-TOPO] H. Zheng, et al, "A YANG Data Model for Optical Transport
Network Topology", draft-ietf-ccamp-otn-topo-yang, work in
progress.
7.2. Informative References 7.2. Informative References
[RFC3688] M. Mealling, "The IETF XML Registry", RFC 3688, January [RFC3688] M. Mealling, "The IETF XML Registry", RFC 3688, January
2004. 2004.
[RFC6241] R. Enns, Ed., M. Bjorklund, Ed., J. Schoenwaelder, Ed., [RFC6241] R. Enns, Ed., M. Bjorklund, Ed., J. Schoenwaelder, Ed.,
and A. Bierman, Ed., "Network Configuration Protocol and A. Bierman, Ed., "Network Configuration Protocol
(NETCONF)", RFC 6241, June 2011. (NETCONF)", RFC 6241, June 2011.
skipping to change at page 46, line 39 skipping to change at page 36, line 11
[RFC7581] G. Bernstein, Y. Lee, D. Li, W. Imajuku, "Routing and [RFC7581] G. Bernstein, Y. Lee, D. Li, W. Imajuku, "Routing and
Wavelength Assignment Information Encoding for Wavelength Wavelength Assignment Information Encoding for Wavelength
Switched Optical Networks", RFC 7581, June 2015. Switched Optical Networks", RFC 7581, June 2015.
[RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
RFC 7950, August 2016. RFC 7950, August 2016.
[RFC8340] M. Bjorklund and L. Berger, Ed., "YANG Tree Diagrams", RFC [RFC8340] M. Bjorklund and L. Berger, Ed., "YANG Tree Diagrams", RFC
8340, March 2018. 8340, March 2018.
[TE-Tunnel] T. Saad, Ed., X. Liu, V. Beeram, H. Shah, and I. [RFC8341] A. Bierman and M. Bjorklund, "Network Configuration Access
Bryskin, "A YANG Data Model for Traffic Engineering Control Model", March 2018.
Tunnels and Interfaces", draft-ietf-teas-yang-te-16, work
in progress.
[WSON-Topo] Y. Lee, Ed., D. Dhody, A. Guo, V. Lopez, D. King, B.
Yoon, and R. Vilalta, "A Yang Data Model for WSON Optical
Networks", draft-ietf-ccamp-wson-yang-13, work in
progress.
[TE-PC] Italo Busi (Ed.), Sergio Belotti (Ed.), "Yang model for
requesting Path Computation", draft-ietf-teas-yang-path-
computation-02, work in progress.
[OTN-Topo] H. Zheng, et al, "A YANG Data Model for Optical Transport
Network Topology", draft-ietf-ccamp-otn-topo-yang-02, work
in progress.
8. Contributors 8. Contributors
Italo Busi Italo Busi
Huawei Huawei
Email: Italo.Busi@huawei.com Email: Italo.Busi@huawei.com
Authors' Addresses Authors' Addresses
Young Lee (ed.) Young Lee (ed.)
 End of changes. 169 change blocks. 
1081 lines changed or deleted 599 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/