CCAMP Working Group                                     Y. Lee (Editor)
                                                               D. Dhody
                                                               X. Zhang
Internet Draft                                                   A. Guo
Intended status: Standard Track                                  Huawei

                                                               V. Lopez
                                                             Telefonica

                                                                D. King
                                                        U. of Lancaster

                                                                B. Yoon
                                                                   ETRI

                                                              R.Vilalta
                                                                   CTTC

Expires: August 21, 2017                              February 21, 2017

                A Yang Data Model for WSON Optical Networks


                     draft-ietf-ccamp-wson-yang-05.txt


Abstract

   This document provides a YANG data model for the routing and
   wavelength assignment (RWA) TE topology in wavelength switched
   optical networks (WSONs).



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 August 21, 2017.

Copyright Notice
Lee, et al.              Expires August 2017                   [Page 1]


Internet-Draft             WSON YANG Model                February 2017




   Copyright (c) 2017 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)....................................3
   3. WSON-RWA YANG Model............................................4
   4. Security Considerations.......................................11
   5. IANA Considerations...........................................11
   6. Acknowledgments...............................................11
   7. References....................................................12
      7.1. Normative References.....................................12
      7.2. Informative References...................................12
   8. Contributors..................................................12
   Authors' Addresses...............................................12

1. Introduction

   This document provides a YANG data model for the routing and
   wavelength assignment (RWA) Traffic Engineering (TE) topology in
   wavelength switched optical networks (WSONs). The YANG model
   described in this document is a WSON technology-specific Yang 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
   the generic TE topology draft [TE-TOPO].

   What is not in scope of this document is both impairment-aware WSON
   and flex-grid.




Lee, et al.              Expires August 2017                   [Page 2]


Internet-Draft             WSON YANG Model                February 2017



2. YANG Model (Tree Structure)

module: ietf-wson-topology
  augment /nd:networks/nd:network/nd:network-types:
    +--rw wson-topology!
  augment /nd:networks/nd:network/nd:node/tet:te/tet:config/tet:te-node-
attributes/tet:connectivity-matrix:
    +--rw matrix-interface* [in-port-id]
       +--rw in-port-id     wson-interface-ref
       +--rw out-port-id?   wson-interface-ref
  augment /nd:networks/nd:network/nd:node/tet:te/tet:state/tet:te-node-
attributes/tet:connectivity-matrix:
    +--ro matrix-interface* [in-port-id]
       +--ro in-port-id     wson-interface-ref
       +--ro out-port-id?   wson-interface-ref
  augment /nd:networks/nd:network/lnk:link/tet:te/tet:config/tet:te-link-attributes:
    +--rw channel-max?                   int32
    +--rw default-frequency?             decimal64
    +--rw channel-spacing?               decimal64
    +--rw wavelength-available-bitmap*   binary
  augment /nd:networks/nd:network/lnk:link/tet:te/tet:state/tet:te-link-attributes:
    +--ro channel-max?                   int32
    +--ro default-frequency?             decimal64
    +--ro channel-spacing?               decimal64
    +--ro wavelength-available-bitmap*   binary
  augment /nd:networks/nd:network/nd:node/tet:te/tet:config/tet:te-node-attributes:
    +--rw wson-node
    |  +--rw device-type?   devicetype
    |  +--rw dir?           directionality
    |  +--rw interfaces* [name]
    |     +--rw name           string
    |     +--rw port-number?   uint32
    |     +--rw input-port?    boolean
    |     +--rw output-port?   boolean
    |     +--rw description?   string
    +--rw resource-pool* [resource-pool-id]
       +--rw resource-pool-id    uint32
       +--rw pool-state?         boolean
       +--rw matrix-interface* [in-port-id]
          +--rw in-port-id     wson-interface-ref
          +--rw out-port-id?   wson-interface-ref
  augment /nd:networks/nd:network/nd:node/tet:te/tet:state/tet:te-node-attributes:
    +--ro wson-node
    |  +--ro device-type?   devicetype
    |  +--ro dir?           directionality
    |  +--ro interfaces* [name]
    |     +--ro name           string



Lee, et al.              Expires August 2017                   [Page 3]


Internet-Draft             WSON YANG Model                February 2017


    |     +--ro port-number?   uint32
    |     +--ro input-port?    boolean
    |     +--ro output-port?   boolean
    |     +--ro description?   string
    +--ro resource-pool* [resource-pool-id]
       +--ro resource-pool-id    uint32
       +--ro pool-state?         boolean
       +--ro matrix-interface* [in-port-id]
          +--ro in-port-id     wson-interface-ref
          +--ro out-port-id?   wson-interface-ref












3. WSON-RWA YANG Model


   <CODE BEGINS> file "ietf-wson-topology@2017-02-21.yang"

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

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

      prefix "wson";

       import ietf-network {
          prefix "nd";
       }

      import ietf-network-topology {
        prefix "lnk";
      }

      import ietf-inet-types {
      prefix "inet";
      }


Lee, et al.              Expires August 2017                   [Page 4]


Internet-Draft             WSON YANG Model                February 2017



      import ietf-te-topology {
      prefix "tet";
      }

      organization
            "IETF CCAMP Working Group";

      contact
            "Editor:   Young Lee  <leeyoung@huawei.com>";

      description
            "This module contains a collection of YANG definitions for
            RWA WSON.

            Copyright (c) 2016 IETF Trust and the persons identified as
            authors of the code.  All rights reserved.

            Redistribution and use in source and binary forms, with or
            without modification, is permitted pursuant to, and subject
            to the license terms contained in, the Simplified BSD
            License set forth in Section 4.c of the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (http://trustee.ietf.org/license-info).";

      revision 2017-02-21 {
            description
                  "version 5.";

            reference
                  "RFC XXX: A Yang Data Model for WSON Optical Networks ";
      }

      typedef wson-topology-id {
            type inet:uri;
            description
                  "The WSON Topology ID";
      }

      typedef wson-node-id {
            type inet:ip-address;
            description
                  "The WSON Node ID";
      }

      typedef devicetype {
            type enumeration {
                  enum adm {
                        value 1;



Lee, et al.              Expires August 2017                   [Page 5]


Internet-Draft             WSON YANG Model                February 2017


                        description
                              "Device is ADM";
                  }

                  enum roadm {
                        value 2;
                        description
                              "Device is ROAMD/OXC";
                  }
            }
            description
                  "device type: fixed (ADM) or switched (ROADM/OXC)";
      }

      typedef directionality {
            type enumeration {
                  enum bidir {
                        value 0;
                        description
                              "bi-directional";
                  }
                  enum input {
                        value 1;
                        description
                              "input direction";
                  }
                  enum output {
                        value 2;
                        description
                              "output direction";
                  }
            }
            description
                  "The directionality of link set";
      }



      typedef wson-interface-ref {
            type leafref {
                path "/nd:networks/nd:network/nd:node/tet:te/tet:config"
                  + "/tet:te-node-attributes/wson:wson-node/"
                  + "wson:interfaces/wson:name";
            }
            description
                  "This type is used by data models that need to
                  reference WSON interface.";
      }




Lee, et al.              Expires August 2017                   [Page 6]


Internet-Draft             WSON YANG Model                February 2017


      grouping wson-topology-type {
            description "wson-topology type";
            container wson-topology {
                  presence "indicates a topology of wson";
                  description
                        "Container to identify wson topology type";
                  }
      }

      grouping wson-node-attributes {
            description "wson node attributes";
            container wson-node {
                  description "WSON node attrtibutes.";
                  leaf device-type {
                        type devicetype;
                        description
                              "device type: fixed (ADM) or switched
                              (ROADM/OXC)";
                  }
                  leaf dir {
                        type directionality;
                        description
                              "bi-directionality or input or output
                              of link set";
                  }
                  list interfaces {
                 key "name";
                unique "port-number"; // TODO Puerto y TP ID
                description "List of interfaces contained in the node";
                uses node-interface;
                  }
            }
      }

      grouping node-interface {
          description "node interface definition";
        leaf name {
           type string;
           description "Interface name";
        }
        leaf port-number {
           type uint32;
           description "Number of the port used by the interface";
        }
        leaf input-port {
           type boolean;
           description "Determines if the port is an input port";
        }
        leaf output-port {



Lee, et al.              Expires August 2017                   [Page 7]


Internet-Draft             WSON YANG Model                February 2017


           type boolean;
           description
           "Determines if the port is an output port";
        }
        leaf description {
           type string;
           description "Description of the interface";
        }
      }

      grouping available-wavelength {
            description "describe available wavelengths";
            leaf-list wavelength-available-bitmap {
                  type binary;
                  description
                        "array of bits (i.e., bitmap) that indicates
                        if a wavelength is available or not on each
                        channel.";
            }
      }

      grouping wson-link-attributes {
            description "Set of WSON link attributes";
                  leaf channel-max {
                        type int32;
                        description "Maximum Number of OCh channels available
by the node";
                  }
                  leaf default-frequency {
                        type decimal64 {
                              fraction-digits 5;
                        }
                        units THz;
                        default 193.1;
                        description "Default Central Frequency";
                  }
                  leaf channel-spacing {
                        type decimal64 {
                              fraction-digits 5;
                        }
                        units GHz;
                        description "This is fixed channel spacing for WSON,
e.g, 12.5, 25, 50, 100, ..";
                  }
      }

      grouping wson-connectivity-matrix {
            description "wson connectivity matrix";
            list matrix-interface {



Lee, et al.              Expires August 2017                   [Page 8]


Internet-Draft             WSON YANG Model                February 2017


                        key "in-port-id";

                        description
                              "matrix-interface describes input-ports
                              and out-ports around a connectivity
                              matrix";

                        leaf in-port-id {
                              type wson-interface-ref;
                              description
                                    "The reference to in-port";
                        }

                        leaf out-port-id {
                              type wson-interface-ref;
                              description
                                    "The reference to out-port";
                        }
            }
      }

      grouping resource-pool-attributes {
            description "resource pool describes regeneration or wave converter";
            list resource-pool {
                  key "resource-pool-id";
                  description
                        "The resource pool list";

                  leaf resource-pool-id {
                        type uint32;
                        description
                              "The resource pool ID";
                  }

                  leaf pool-state {
                        type boolean;
                        description
                              "TRUE is state UP; FALSE is state down";
                  }

                  uses wson-connectivity-matrix;
            }
      }

      augment "/nd:networks/nd:network/nd:network-types" {
            description "wson-topology augmented";
            uses wson-topology-type;
      }




Lee, et al.              Expires August 2017                   [Page 9]


Internet-Draft             WSON YANG Model                February 2017



      augment "/nd:networks/nd:network/nd:node/tet:te/tet:config"
                  +"/tet:te-node-attributes/tet:connectivity-matrix" {
            when "/nd:networks/nd:network/nd:network-types"
                  +"/wson-topology" {
                  description
                        "This augment is only valid for WSON connectivity
matrix.";
            }
          description "WSON connectivity matrix config augmentation";
            uses wson-connectivity-matrix;
      }

      augment "/nd:networks/nd:network/nd:node/tet:te/tet:state"
                  +"/tet:te-node-attributes/tet:connectivity-matrix" {
            when "/nd:networks/nd:network/nd:network-types"
                  +"/wson-topology" {
                  description
                        "This augment is only valid for WSON connectivity
matrix.";
          }
          description "WSON connectivity matrix state augmentation";
            uses wson-connectivity-matrix;
      }

      augment "/nd:networks/nd:network/lnk:link/tet:te/tet:config"
                  + "/tet:te-link-attributes"   {
        when "/nd:networks/nd:network/nd:network-types"
                  +"/wson-topology" {
                  description
                        "This augment is only valid for WSON.";
            }
            description "WSON Link augmentation.";

            uses wson-link-attributes;
            uses available-wavelength;
      }

      augment "/nd:networks/nd:network/lnk:link/tet:te/tet:state"
                  + "/tet:te-link-attributes"   {
        when "/nd:networks/nd:network/nd:network-types"
                  +"/wson-topology" {
                  description
                        "This augment is only valid for WSON.";
                  }
            description "WSON Link augmentation.";

            uses wson-link-attributes;
            uses available-wavelength;



Lee, et al.              Expires August 2017                  [Page 10]


Internet-Draft             WSON YANG Model                February 2017


      }

      augment "/nd:networks/nd:network/nd:node/tet:te/tet:config"
              + "/tet:te-node-attributes" {
            when "/nd:networks/nd:network/nd:network-types"
                  +"/wson-topology" {
                  description
                        "This augment is only valid for WSON.";
            }
            description "WSON Node augmentation.";

            uses wson-node-attributes;
            uses resource-pool-attributes;
      }

      augment "/nd:networks/nd:network/nd:node/tet:te/tet:state"
              + "/tet:te-node-attributes" {
        when "/nd:networks/nd:network/nd:network-types"
                  +"/wson-topology" {
                  description
                        "This augment is only valid for WSON.";
            }
            description "WSON Node augmentation.";

            uses wson-node-attributes;
            uses resource-pool-attributes;
      }

}

<CODE ENDS>



4. Security Considerations

   TDB



5. IANA Considerations

   TDB

6. Acknowledgments

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



Lee, et al.              Expires August 2017                  [Page 11]


Internet-Draft             WSON YANG Model                February 2017




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


Authors' Addresses

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

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


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


Lee, et al.              Expires August 2017                  [Page 12]


Internet-Draft             WSON YANG Model                February 2017



   Email: dhruv.dhody@huawei.com

   Xian Zhang
   Huawei Technologies

   Email: zhang.xian@huawei.com

   Aihua Guo
   Huawei Technologies
   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 August 2017                  [Page 13]