[Docs] [txt|pdf] [Tracker] [WG] [Email] [Diff1] [Diff2] [Nits]

Versions: (draft-lee-ccamp-wson-tunnel-model) 00 01 02 03

CCAMP Working Group                                              Y. Lee
Internet Draft                                                 D. Dhody
Intended status: Standard Track                                  A. Guo
Expires: February 22, 2019                                       Huawei

                                                               V. Lopez
                                                             Telefonica

                                                                D. King
                                                        U. of Lancaster

                                                                B. Yoon
                                                                    ETRI

                                                              R. Vilalta
                                                                    CTTC

                                                        August 22, 2018

                     A Yang Data Model for WSON Tunnel


                   draft-ietf-ccamp-wson-tunnel-model-01


Abstract

   This document provides a YANG data model for WSON TE tunnel.



Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with
   the provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six
   months and may be updated, replaced, or obsoleted by other documents
   at any time.  It is inappropriate to use Internet-Drafts as
   reference material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html

   This Internet-Draft will expire on February 22, 2019.
Lee, et al.             Expires February 2019                  [Page 1]


Internet-Draft            WSON Tunnel Model                 August 2018


Copyright Notice



   Copyright (c) 2018 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document. Please review these documents
   carefully, as they describe your rights and restrictions with
   respect to this document.  Code Components extracted from this
   document must include Simplified BSD License text as described in
   Section 4.e of the Trust Legal Provisions and are provided without
   warranty as described in the Simplified BSD License.

Table of Contents


   1. Introduction...................................................2
   2. YANG Model (Tree Structure)....................................2
   3. TE Tunnel Model for WSON......................................17
   4. Security Considerations.......................................41
   5. IANA Considerations...........................................41
   6. Acknowledgments...............................................42
   7. References....................................................43
      7.1. Normative References.....................................43
      7.2. Informative References...................................43
   8. Contributors..................................................43
   Authors' Addresses...............................................43

1. Introduction

   This document provides a YANG data model for WSON tunnel model. The
   YANG model described in this document is a WSON technology-specific
   Yang Tunnel model based on the information model developed in
   [RFC7446] and the two encoding documents [RFC7581] and [RFC7579]
   that developed protocol independent encodings based on [RFC7446].

   This document augments the generic TE tunnel model [TE-Tunnel].


2. YANG Model (Tree Structure)





Lee, et al.             Expires February 2019                  [Page 2]


Internet-Draft            WSON Tunnel Model                 August 2018


module: ietf-wson-tunnel
  augment /te:te/te:tunnels/te:tunnel:
    +--rw src-client-signal?   identityref
    +--rw dst-client-signal?   identityref
    +--rw fec-type?            identityref
    +--rw termination-type?    identityref
    +--rw bit-stuffing?        boolean
  augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:te-bandwidth/te:technology:
    +--:(wson)
       +--rw bandwidth-type?   identityref
  augment /te:te/te:tunnels/te:tunnel/te:te-bandwidth/te:technology:
    +--:(wson)
       +--rw bandwidth-type?   identityref
  augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:te-bandwidth/te:technology:
    +--:(wson)
       +--rw bandwidth-type?   identityref
  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:
    +--:(wson)
       +--rw bandwidth-type?   identityref
  augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:te-bandwidth/te:technology:
    +--:(wson)
       +--rw bandwidth-type?   identityref
  augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/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 channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/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 channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32



Lee, et al.             Expires February 2019                  [Page 3]


Internet-Draft            WSON Tunnel Model                 August 2018


  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?         decimal64
          +--:(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?         decimal64
          +--:(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?         decimal64
          +--:(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?         decimal64
          +--:(cwdm)


Lee, et al.             Expires February 2019                  [Page 4]


Internet-Draft            WSON Tunnel Model                 August 2018


             +--rw channel-wavelength?   uint32
  augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-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-out-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?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:globals/te:named-path-constraints/te:named-path-
constraint/te:path-out-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?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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:
    +--rw grid-type?   identityref
    +--rw priority?    uint8
  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:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64


Lee, et al.             Expires February 2019                  [Page 5]


Internet-Draft            WSON Tunnel Model                 August 2018


          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-exclude-objects/te:route-object-exclude-
object/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-include-objects/te:route-object-include-
object/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-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 channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-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 channel-freq?         decimal64
          +--:(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:
    +--rw grid-type?   identityref
    +--rw priority?    uint8



Lee, et al.             Expires February 2019                  [Page 6]


Internet-Draft            WSON Tunnel Model                 August 2018


  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?         decimal64
          +--:(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?         decimal64
          +--:(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?         decimal64
          +--:(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?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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:
    +--rw grid-type?   identityref
    +--rw priority?    uint8


Lee, et al.             Expires February 2019                  [Page 7]


Internet-Draft            WSON Tunnel Model                 August 2018


  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-start/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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:
    +--rw grid-type?   identityref
    +--rw priority?    uint8
  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:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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-end/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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-
object/te:state/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)


Lee, et al.             Expires February 2019                  [Page 8]


Internet-Draft            WSON Tunnel Model                 August 2018


       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  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-
subobject/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  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-
computed-route-object/te:state/te:type/te:label/te:label-hop/te:te-
label/te:technology:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-
path/te:p2p-reverse-primary-
path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-exclude-objects/te:route-object-exclude-
object/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(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:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-include-objects/te:route-object-include-
object/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)


Lee, et al.             Expires February 2019                  [Page 9]


Internet-Draft            WSON Tunnel Model                 August 2018


             +--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-
exclude-always/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(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 channel-freq?         decimal64
          +--:(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-
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:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(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/te:label-end/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(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:reverse/te:label-
restrictions/te:label-restriction:


Lee, et al.             Expires February 2019                 [Page 10]


Internet-Draft            WSON Tunnel Model                 August 2018


    +--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-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?         decimal64
          +--:(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:reverse/te:label-
restrictions/te:label-restriction/te:label-end/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(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-out-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:p2p-reverse-primary-path/te:path-out-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?         decimal64
          +--:(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-out-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?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32




Lee, et al.             Expires February 2019                 [Page 11]


Internet-Draft            WSON Tunnel Model                 August 2018


  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?         decimal64
          +--:(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-out-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?         decimal64
          +--:(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:state/te:path-properties/te:path-route-
objects/te:path-computed-route-object/te:state/te:type/te:label/te:label-
hop/te:te-label/te:technology:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  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 channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  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-


Lee, et al.             Expires February 2019                 [Page 12]


Internet-Draft            WSON Tunnel Model                 August 2018


properties/te:path-route-objects/te:path-computed-route-
object/te:state/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-exclude-objects/te:route-object-exclude-
object/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
path/te:optimizations/te:algorithm/te:metric/te:optimization-
metric/te:explicit-route-include-objects/te:route-object-include-
object/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
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 channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  augment /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/te:p2p-secondary-
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 channel-freq?         decimal64
          +--:(cwdm)


Lee, et al.             Expires February 2019                 [Page 13]


Internet-Draft            WSON Tunnel Model                 August 2018


             +--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:
    +--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?         decimal64
          +--:(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?         decimal64
          +--:(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?         decimal64
          +--:(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?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32


Lee, et al.             Expires February 2019                 [Page 14]


Internet-Draft            WSON Tunnel Model                 August 2018


  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-
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-out-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?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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-
restriction/te:label-end/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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-
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-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?         decimal64
          +--:(cwdm)
             +--rw channel-wavelength?   uint32
  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-
restriction/te:label-end/te:te-label/te:technology:
    +--:(wson)
       +--rw (grid-type)?
          +--:(dwdm)
          |  +--rw channel-freq?         decimal64
          +--:(cwdm)


Lee, et al.             Expires February 2019                 [Page 15]


Internet-Draft            WSON Tunnel Model                 August 2018


             +--rw channel-wavelength?   uint32
  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-
object/te:state/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  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-
subobject/te:type/te:label/te:label-hop/te:te-label/te:technology:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  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-
computed-route-object/te:state/te:type/te:label/te:label-hop/te:te-
label/te:technology:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  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:
    +--:(wson)
       +--ro (grid-type)?
          +--:(dwdm)
          |  +--ro channel-freq?         decimal64
          +--:(cwdm)
             +--ro channel-wavelength?   uint32
  augment /te:tunnels-rpc/te:input/te:tunnel-info/tepc:path-request:
    +---- src-client-signal?       identityref
    +---- dst-client-signal?       identityref
    +---- fec-type?                identityref
    +---- termination-type?        identityref
    +---- bit-stuffing?            boolean
    +---- wavelength-assignment?   identityref


Lee, et al.             Expires February 2019                 [Page 16]


Internet-Draft            WSON Tunnel Model                 August 2018






3. TE Tunnel Model for WSON


<CODE BEGINS> file "ietf-wson-tunnel@2018-08-15.yang"

module ietf-wson-tunnel {
  yang-version 1.1;

  namespace "urn:ietf:params:xml:ns:yang:ietf-wson-tunnel";
  prefix "wson-tunnel";

  import ietf-te { prefix "te"; }
  import ietf-te-wson-types{ prefix "wson-types"; }
  import ietf-te-path-computation { prefix "tepc"; }
  import ietf-otn-types { prefix "otn-types";}

  organization
    "IETF CCAMP Working Group";

  contact
    "WG Web:   <http://tools.ietf.org/wg/ccamp/>
     WG List:  <mailto:ccamp@ietf.org>

     WG Chair: Daniele Ceccarelli
               <mailto:daniele.ceccarelli@ericsson.com>

     WG Chair: Fatai Zhang
               <mailto:zhangfatai@huawei.com>

     Editor: Young Lee <leeyoung@huawei.com>
     Editor: Aihua Guo <aihuaguo@huawei.com>
     Editor: Dhruv Dhody <dhruv.ietf@gmail.com>
     Editor: Ricard Vilalta <ricard.vilalta@cttc.es>";
     description
       "This module defines a model for WSON Tunnel Services.";


  revision "2018-08-15" {
    description
      "Updates to version 1";
    reference "version 1";


Lee, et al.             Expires February 2019                 [Page 17]


Internet-Draft            WSON Tunnel Model                 August 2018


  }

  /* Groupings. */
  grouping wson-tunnel-attributes {
    description "Parameters for WSON tunnel.";

    leaf src-client-signal {
      type identityref {
        base otn-types:client-signal;
      }
      description
        "Client signal at the source endpoint of
         the tunnel.";
    }

    leaf dst-client-signal {
      type identityref {
        base otn-types:client-signal;
      }
      description
        "Client signal at the destination endpoint of
         the tunnel.";
    }

    leaf fec-type {
      type identityref {
        base wson-types:fec-type;
      }
      description
        "FEC type.";
    }

    leaf termination-type {
      type identityref {
        base wson-types:term-type;
      }
      description
        "Termination type.";
    }

    leaf bit-stuffing {
      type boolean;
      description
        "Bit stuffing enabled/disabled.";
    }


Lee, et al.             Expires February 2019                 [Page 18]


Internet-Draft            WSON Tunnel Model                 August 2018


  }

  grouping wson-path-constraints {
    description
      "Global named path constraints configuration
       grouping for WSON tunnel";

    leaf wavelength-assignment {
      type identityref {
        base wson-types:wavelength-assignment;
      }
      description "Wavelength Allocation Method";
    }
  }

 /*
  * Data nodes
  */

  augment "/te:te/te:tunnels/te:tunnel" {
    description
      "Augment with additional parameters required for WSON tunnel.";
    uses wson-tunnel-attributes;
  }

  /*
   * Augment TE bandwidth
   */

  /* Augment bandwidth of named-path-constraints */
  augment "/te:te/te:globals/te:named-path-constraints/"
        + "te:named-path-constraint/"
        + "te:te-bandwidth/te:technology" {
    description "WSON bandwidth.";
    case wson {
      uses wson-types:wson-path-bandwidth;
    }
  }

  /* Augment bandwdith of tunnel */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:te-bandwidth/te:technology" {
    description "WSON bandwidth.";
    case wson {
      uses wson-types:wson-path-bandwidth;


Lee, et al.             Expires February 2019                 [Page 19]


Internet-Draft            WSON Tunnel Model                 August 2018


    }
  }

  /* Augment bandwidth of primary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "te:te-bandwidth/te:technology" {
    description "WSON bandwidth.";
    case wson {
      uses wson-types:wson-path-bandwidth;
    }
  }

  /* Augment bandwidth 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:te-bandwidth/te:technology" {
    description "WSON bandwidth.";
    case wson {
      uses wson-types:wson-path-bandwidth;
    }
  }

  /* Augment bandwidht of secondary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-secondary-paths/te:p2p-secondary-path/"
        + "te:te-bandwidth/te:technology" {
    description "WSON bandwidth.";
    case wson {
      uses wson-types:wson-path-bandwidth;
    }
  }

  /*
   * Augment TE label.
   */

  /* Augment label hop of route-object-exclude-always of named-path-
constraints */
  augment "/te:te/te:globals/te:named-path-constraints/"
        + "te:named-path-constraint/te:explicit-route-objects/"
        + "te:route-object-exclude-always/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";


Lee, et al.             Expires February 2019                 [Page 20]


Internet-Draft            WSON Tunnel Model                 August 2018


    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-object-include-exclude of named-path-
constraints */
  augment "/te:te/te:globals/te:named-path-constraints/"
        + "te:named-path-constraint/te:explicit-route-objects/"
        + "te:route-object-include-exclude/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label restrictions 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" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }

  /* Augment label restrictions start 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-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-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/"


Lee, et al.             Expires February 2019                 [Page 21]


Internet-Draft            WSON Tunnel Model                 August 2018


        + "te:label-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-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 wson-types:wson-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 wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions end 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-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }




Lee, et al.             Expires February 2019                 [Page 22]


Internet-Draft            WSON Tunnel Model                 August 2018


  /* Augment label restrictions for the forwarding 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:forward/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }
  /* Augment label restrictions start for the forwarding 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:forward/te:label-restrictions/"
        + "te:label-restriction/te:label-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions end for the forwarding 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:forward/te:label-restrictions/"
        + "te:label-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-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 wson-types:wson-label-restriction;
  }



Lee, et al.             Expires February 2019                 [Page 23]


Internet-Draft            WSON Tunnel Model                 August 2018


  /* 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 wson-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 wson-types:wson-link-label;
    }
  }

  /* Augment label hop of route-exclude of primary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "te:optimizations/te:algorithm/te:metric/"
        + "te:optimization-metric/te:explicit-route-exclude-objects/"
        + "te:route-object-exclude-object/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-include of primary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "te:optimizations/te:algorithm/te:metric/"
        + "te:optimization-metric/te:explicit-route-include-objects/"
        + "te:route-object-include-object/te:type/te:label/"


Lee, et al.             Expires February 2019                 [Page 24]


Internet-Draft            WSON Tunnel Model                 August 2018


        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-object-exclude-always of primary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "te:explicit-route-objects/"
        + "te:route-object-exclude-always/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-object-include-exclude of primary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "te:explicit-route-objects/"
        + "te:route-object-include-exclude/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label restrictions 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" {
    description "WSON label.";
    uses wson-types:wson-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/"


Lee, et al.             Expires February 2019                 [Page 25]


Internet-Draft            WSON Tunnel Model                 August 2018


        + "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 wson-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 wson-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/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "te:path-in-segment/te:reverse/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }

  /* Augment label restrictions start for the reverse 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:reverse/te:label-restrictions/"
        + "te:label-restriction/te:label-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }



Lee, et al.             Expires February 2019                 [Page 26]


Internet-Draft            WSON Tunnel Model                 August 2018


  /* Augment label restrictions end for the reverse 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:reverse/te:label-restrictions/"
        + "te:label-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions for the forwarding 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:forward/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }

  /* Augment label restrictions start for the forwarding 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:forward/te:label-restrictions/"
        + "te:label-restriction/te:label-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions end for the forwarding 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:forward/te:label-restrictions/"
        + "te:label-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {


Lee, et al.             Expires February 2019                 [Page 27]


Internet-Draft            WSON Tunnel Model                 August 2018


      uses wson-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 wson-types:wson-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 wson-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/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "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 wson-types:wson-link-label;
    }
  }

  /* Augment label hop of path-route of primary path */
  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-object/"


Lee, et al.             Expires February 2019                 [Page 28]


Internet-Draft            WSON Tunnel Model                 August 2018


        + "te:state/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of record-route of primary LSP */
  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-subobject/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of path-route of primary LSP */
  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-computed-route-object/"
        + "te:state/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-exclude 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:optimizations/te:algorithm/te:metric/"
        + "te:optimization-metric/te:explicit-route-exclude-objects/"
        + "te:route-object-exclude-object/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }


Lee, et al.             Expires February 2019                 [Page 29]


Internet-Draft            WSON Tunnel Model                 August 2018


  }

  /* Augment label hop of route-include 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:optimizations/te:algorithm/te:metric/"
        + "te:optimization-metric/te:explicit-route-include-objects/"
        + "te:route-object-include-object/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-object-exclude-always 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:explicit-route-objects/"
        + "te:route-object-exclude-always/"
        + "te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-object-include-exclude 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:explicit-route-objects/"
        + "te:route-object-include-exclude/"
        + "te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }


Lee, et al.             Expires February 2019                 [Page 30]


Internet-Draft            WSON Tunnel Model                 August 2018



  /* Augment label restrictions 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" {
    description "WSON label.";
    uses wson-types:wson-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 wson-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 wson-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/"


Lee, et al.             Expires February 2019                 [Page 31]


Internet-Draft            WSON Tunnel Model                 August 2018


        + "te:path-in-segment/te:reverse/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-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 wson-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 wson-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/"
        + "te:p2p-primary-paths/te:p2p-primary-path/"
        + "te:p2p-reverse-primary-path/"
        + "te:path-out-segment/te:forward/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }



Lee, et al.             Expires February 2019                 [Page 32]


Internet-Draft            WSON Tunnel Model                 August 2018


  /* Augment label restrictions start for the forwarding direction of path-
out-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-out-segment/te:forward/te:label-restrictions/"
        + "te:label-restriction/te:label-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions end for the forwarding direction of path-out-
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-out-segment/te:forward/te:label-restrictions/"
        + "te:label-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions for the reverse direction of path-out-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-out-segment/te:reverse/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }

  /* Augment label restrictions start for the reverse direction of path-out-
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-out-segment/te:reverse/te:label-restrictions/"


Lee, et al.             Expires February 2019                 [Page 33]


Internet-Draft            WSON Tunnel Model                 August 2018


        + "te:label-restriction/te:label-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions end for the reverse direction of path-out-
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-out-segment/te:reverse/te:label-restrictions/"
        + "te:label-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label hop of path-route 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:state/te:path-properties/"
        + "te:path-route-objects/te:path-computed-route-object/"
        + "te:state/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of record-route of reverse primary LSP */
  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" {
    description "WSON label.";
    case wson {


Lee, et al.             Expires February 2019                 [Page 34]


Internet-Draft            WSON Tunnel Model                 August 2018


      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of path-route of reverse primary LSP */
  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-properties/"
        + "te:path-route-objects/te:path-computed-route-object/"
        + "te:state/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-exclude of secondary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-secondary-paths/te:p2p-secondary-path/"
        + "te:optimizations/te:algorithm/te:metric/"
        + "te:optimization-metric/te:explicit-route-exclude-objects/"
        + "te:route-object-exclude-object/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-include of secondary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-secondary-paths/te:p2p-secondary-path/"
        + "te:optimizations/te:algorithm/te:metric/"
        + "te:optimization-metric/te:explicit-route-include-objects/"
        + "te:route-object-include-object/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-object-exclude-always of secondary path */


Lee, et al.             Expires February 2019                 [Page 35]


Internet-Draft            WSON Tunnel Model                 August 2018


  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-secondary-paths/te:p2p-secondary-path/"
        + "te:explicit-route-objects/"
        + "te:route-object-exclude-always/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of route-object-include-exclude of secondary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-secondary-paths/te:p2p-secondary-path/"
        + "te:explicit-route-objects/"
        + "te:route-object-include-exclude/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label restrictions 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" {
    description "WSON label.";
    uses wson-types:wson-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 wson-types:wson-link-label;
    }
  }


Lee, et al.             Expires February 2019                 [Page 36]


Internet-Draft            WSON Tunnel Model                 August 2018



  /* 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 wson-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 wson-types:wson-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 wson-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.";


Lee, et al.             Expires February 2019                 [Page 37]


Internet-Draft            WSON Tunnel Model                 August 2018


    case wson {
      uses wson-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/"
        + "te:p2p-secondary-paths/te:p2p-secondary-path/"
        + "te:path-out-segment/te:forward/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }

  /* Augment label restrictions start for the forwarding direction of path-
out-segment of secondary path */
  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-restriction/te:label-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions end for the forwarding direction of path-out-
segment of secondary path */
  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-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions for the reverse direction of path-out-segment
of secondary path */
  augment "/te:te/te:tunnels/te:tunnel/"
        + "te:p2p-secondary-paths/te:p2p-secondary-path/"


Lee, et al.             Expires February 2019                 [Page 38]


Internet-Draft            WSON Tunnel Model                 August 2018


        + "te:path-out-segment/te:reverse/te:label-restrictions/"
        + "te:label-restriction" {
    description "WSON label.";
    uses wson-types:wson-label-restriction;
  }

  /* Augment label restrictions start for the reverse direction of path-out-
segment of secondary path */
  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-restriction/te:label-start/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label restrictions end for the reverse direction of path-out-
segment of secondary path */
  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-restriction/te:label-end/"
        + "te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-link-label;
    }
  }

  /* Augment label hop of path-route of secondary path */
  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-object/te:state/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of record-route of secondary LSP */


Lee, et al.             Expires February 2019                 [Page 39]


Internet-Draft            WSON Tunnel Model                 August 2018


  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-subobject/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of path-route of secondary LSP */
  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-computed-route-object/te:state/te:type/te:label/"
        + "te:label-hop/te:te-label/te:technology" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  /* Augment label hop of record-route of LSP */
  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" {
    description "WSON label.";
    case wson {
      uses wson-types:wson-path-label;
    }
  }

  augment "/te:tunnels-rpc/te:input/te:tunnel-info/"
        + "tepc:path-request" {
    description
       "Augment with additional constraints WSON
        tunnel.";
    uses wson-tunnel-attributes;
    uses wson-path-constraints;
  }
}



Lee, et al.             Expires February 2019                 [Page 40]


Internet-Draft            WSON Tunnel Model                 August 2018





<CODE ENDS>



4. Security Considerations

   The configuration, state, and action data defined in this document
   are designed to be accessed via a management protocol with a secure
   transport layer, such as NETCONF [RFC6241].  The NETCONF access
   control model [RFC6536] provides the means to restrict access for
   particular NETCONF users to a preconfigured subset of all available
   NETCONF protocol operations and content.

   A number of configuration data nodes defined in this document are
   writable/deletable (i.e., "config true") These data nodes may be
   considered sensitive or vulnerable in some network environments.


5. IANA Considerations

   This document registers the following namespace URIs in the IETF XML
   registry [RFC3688]:

   --------------------------------------------------------------------
   URI: urn:ietf:params:xml:ns:yang:ietf-wson-tunnel
   Registrant Contact: The IESG.
   XML: N/A, the requested URI is an XML namespace.
   --------------------------------------------------------------------

   This document registers the following YANG modules in the YANG
   Module

   Names registry [RFC7950]:

   --------------------------------------------------------------------
   name:         ietf-wson-tunnel
   namespace:    urn:ietf:params:xml:ns:yang:ietf-wson-tunnel
   reference:    RFC XXXX (TDB)
   --------------------------------------------------------------------



Lee, et al.             Expires February 2019                 [Page 41]


Internet-Draft            WSON Tunnel Model                 August 2018


6. Acknowledgments

   This document was prepared using 2-Word-v2.0.template.dot.














































Lee, et al.             Expires February 2019                 [Page 42]


Internet-Draft            WSON Tunnel Model                 August 2018




7. References

   7.1. Normative References

   [TE-TOPO] X. Liu, et al., "YANG Data Model for TE Topologies", work
             in progress: draft-ietf-teas-yang-te-topo.



   7.2. Informative References

   [RFC7446]  Y. Lee, G. Bernstein, D. Li, W. Imajuku, "Routing and
             Wavelength Assignment Information Model for Wavelength
             Switched Optical Networks", RFC 7446, Feburary 2015.

   [RFC7579]   G. Bernstein, Y. Lee, D. Li, W. Imajuku, "General
             Network Element Constraint Encoding for GMPLS Controlled
             Networks", RFC 7579, June 2015.

   [RFC7581]  G. Bernstein, Y. Lee, D. Li, W. Imajuku, "Routing and
             Wavelength Assignment Information Encoding for Wavelength
             Switched Optical Networks", RFC 7581, June 2015.



8. Contributors

   Italo Busi
   Huawei
   Email: Italo.Busi@huawei.com



Authors' Addresses

   Young Lee (ed.)
   Huawei Technologies
   5340 Legacy Drive, Building 3
   Plano, TX 75023
   USA

   Phone: (469) 277-5838
   Email: leeyoung@huawei.com




Lee, et al.             Expires February 2019                 [Page 43]


Internet-Draft            WSON Tunnel Model                 August 2018


   Dhruv Dhody
   Huawei Technologies India Pvt. Ltd,
   Near EPIP Industrial Area,  Kundalahalli Village,  Whitefield,
   Bangalore -  560 037 [H1-2A-245]

   Email: dhruv.dhody@huawei.com

   Aihua Guo
   Huawei
   Email: aihuaguo@huawei.com

   Victor Lopez
   Telefonica
   Email: victor.lopezalvarez@telefonica.com

   Daniel King
   University of Lancaster
   Email: d.king@lancaster.ac.uk

   Bin Yeong Yoon
   ETRI
   218 Gaijeongro, Yuseong-gu
   Daejeon, Korea
   Email: byyun@etri.re.kr

   Ricard Vilalta
   CTTC
   Email: ricard.vilalta@cttc.es

















Lee, et al.             Expires February 2019                 [Page 44]


Html markup produced by rfcmarkup 1.129b, available from https://tools.ietf.org/tools/rfcmarkup/