CCAMP Working Group                                            A. Sharma
Internet-Draft                                                    R. Rao
Intended status: Standards Track                           Infinera Corp
Expires: January 7, 2017                                        X. Zhang
                                                     Huawei Technologies
                                                            July 6, 2016


                         OTN Service YANG Model
                draft-sharma-ccamp-otn-service-model-00

Abstract

   This document describes the YANG data model for OTN Services.

Status of this Memo

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

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

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

   This Internet-Draft will expire on January 7, 2017.

Copyright Notice

   Copyright (c) 2016 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.





Sharma, et al.           Expires January 7, 2017                [Page 1]


Internet-Draft           OTN Service YANG Model                July 2016


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Model Overview . . . . . . . . . . . . . . . . . . . . . . . .  3
     2.1.  OTN Mux Service  . . . . . . . . . . . . . . . . . . . . .  3
     2.2.  Model Tree . . . . . . . . . . . . . . . . . . . . . . . .  4
     2.3.  OTN Service YANG Model . . . . . . . . . . . . . . . . . .  4
     2.4.  Transport Types YANG Model . . . . . . . . . . . . . . . .  9
   3.  Security Considerations  . . . . . . . . . . . . . . . . . . . 18
   4.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 18
   5.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 18
   6.  Normative References . . . . . . . . . . . . . . . . . . . . . 18
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 18






































Sharma, et al.           Expires January 7, 2017                [Page 2]


Internet-Draft           OTN Service YANG Model                July 2016


1.  Introduction

   OTN transport networks can carry various types of client services.
   In many cases, the client service is an OTN service across connected
   domains in a multi-domain network.  These OTN services can either be
   transported or switched in the OTN network.  If an OTN service is
   switched then additional parameters need to be provided to create a
   Mux OTN service.

   This document provides YANG model for creating OTN service.  The
   model augments the TE Tunnel model, which is an abstract model to
   create TE Tunnels.


2.  Model Overview

   This section provides an overview of the OTN Service Model.

2.1.  OTN Mux Service

                              OTN Mux Service
                  <--------------------------------->

  XXXXXXXXXXX          XXXXXXXXXXXXXXXXXXXXXXXXX         XXXXXXXXX
 XX         XXX       XX                       XXX      XX        XX
XX   +---+    X      XX +---+           +---+    X     XX  +---+   XX
X    |NE1+--------+-----+NE2+-----------+NE3+--------+-X---+NE4|    X
X    +---+   XX   ^  X  +---+           +---+   XX   ^ XX  +---+    X
 XX         XX    |   XX                       XX    |  XX        XXX
   XXXXXXXXXX     |     XXXXXXXXXXXXXXXXXXXXXXXX     |   XXXXXXXXXX
    Domain-1      |            Domain-2              |    Domain-3
                  +                                  +
         Same OTN Service attributes:      Same OTN Service attributes:
         1. Client Signal                  1. Client Signal
         2. Tributary Port Number          2. Tributary Port Number
         3. Tributary Slot Granularity     3. Tributary Slot Granularity
         4. Timeslots                      4. Timeslots


       Figure 1: OTN Mux Service in a multi-domain network topology

   Figure 1 shows a multi-domain OTN network with three domains.  In
   this example, user wants to setup an end-to-end OTN service that
   passes through Domain-2.  In order to create an OTN mux service in
   Domain-2, user will need to specify the exact details of the client
   side LO-ODU on NE2 and NE3, so that these service endpoints can be
   paired with the LO-ODU endpoints on NE1 and NE4, respectively.




Sharma, et al.           Expires January 7, 2017                [Page 3]


Internet-Draft           OTN Service YANG Model                July 2016


   Let's assume that ODU4 is the client side HO-ODU on NE2 and NE3, and
   the client signal is ODU2.  User will need to specify the OTN client
   signal (ODU2 in this example), the Tributary Port Number (TPN),
   Tributary Slot Granularities (TSG) and timeslots to be used.  As
   shown in the figure above, these service parameters must be the same
   between NE1 and NE2, and NE3 and NE4.

   Once the OTN Mux service is setup in Domain-2, the incoming signal
   from either NE1 and/or NE4 will be switched inside Domain-2, and
   delivered to NE at the other end.

2.2.  Model Tree

   module: ietf-otn-service
   augment /te:te/te:tunnels/te:tunnel/te:config:
      +--rw payload-treatment?    enumeration
      +--rw src-client-signal?    identityref
      +--rw src-tpn?              uint16
      +--rw src-tsg?              identityref
      +--rw src-timeslot-count?   uint16
      +--rw src-timeslots
      |  +--rw values*   uint8
      +--rw dst-client-signal?    identityref
      +--rw dst-tpn?              uint16
      +--rw dst-tsg?              identityref
      +--rw dst-timeslot-count?   uint16
      +--rw dst-timeslots
         +--rw values*   uint8
   augment /te:te/te:tunnels/te:tunnel/te:state:
      +--ro payload-treatment?    enumeration
      +--ro src-client-signal?    identityref
      +--ro src-tpn?              uint16
      +--ro src-tsg?              identityref
      +--ro src-timeslot-count?   uint16
      +--ro src-timeslots
      |  +--ro values*   uint8
      +--ro dst-client-signal?    identityref
      +--ro dst-tpn?              uint16
      +--ro dst-tsg?              identityref
      +--ro dst-timeslot-count?   uint16
      +--ro dst-timeslots
         +--ro values*   uint8

2.3.  OTN Service YANG Model

  <CODE BEGINS> file "ietf-otn-service@2016-06-24.yang"

  module ietf-otn-service {



Sharma, et al.           Expires January 7, 2017                [Page 4]


Internet-Draft           OTN Service YANG Model                July 2016


      yang-version 1;
      namespace "urn:ietf:params:xml:ns:yang:ietf-otn-service";
      prefix "otn-svc";

      import ietf-te { prefix "te"; }
      import ietf-transport-types { prefix "tran-types"; }
      import yang-ext { prefix ext; revision-date 2013-07-09; }

      organization
          "IETF CCAMP Working Group";

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

          Editor: Anurag Sharma
                  <mailto:AnSharma@infinera.com>

          Editor: Rajan Rao
                  <mailto:rrao@infinera.com>

          Editor: Xian Zhang
                  <mailto:zhang.xian@huawei.com>";

      description
          "This module defines a model for OTN Services.";

      revision "2016-06-24" {
          description "Initial revision";
          reference "TBD";
      }

      grouping otn-tunnel-endpoint {
          description "Parameters for OTN service.";

                  leaf payload-treatment {
              type enumeration {
                  enum switching;
                  enum transport;
              }
              default switching;
              description
                  "Treatment of the incoming payload. Payload can
                  either be switched, or transported as is.";
          }

          leaf src-client-signal {
                  type identityref {



Sharma, et al.           Expires January 7, 2017                [Page 5]


Internet-Draft           OTN Service YANG Model                July 2016


                          base tran-types:client-signal;
                  }
                  description
                          "Client signal at the source endpoint of
                          the tunnel.";
          }

          leaf src-tpn {
              type uint16 {
                  range "0..4095";
              }
              description
                  "Tributary Port Number. Applicable in case of mux
                  services.";
              reference
                  "RFC7139: GMPLS Signaling Extensions for Control of
                  Evolving G.709 Optical Transport Networks.";
          }

          leaf src-tsg {
              type identityref {
                  base tran-types:tributary-slot-granularity;
              }
              description
                  "Tributary slot granularity. Applicable in case of mux
                  services.";
              reference
                  "G.709/Y.1331, February 2012: Interfaces for the
                  Optical Transport Network (OTN)";
          }

          leaf src-timeslot-count {
               type uint16;
               description
                   "Number of timeslots used at the source.";
          }

          container src-timeslots {
              description
                   "A list of tributary timeslots used by the
                   client service. Applicable in case of mux
                   services.";
              leaf-list values {
                  type uint8;
                  description
                          "Tributary timeslot value.";
                  reference
                      "G.709/Y.1331, February 2012: Interfaces for the



Sharma, et al.           Expires January 7, 2017                [Page 6]


Internet-Draft           OTN Service YANG Model                July 2016


                          Optical Transport Network (OTN)";
              }
          }

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

          leaf dst-tpn {
              type uint16 {
                  range "0..4095";
              }
              description
                  "Tributary Port Number. Applicable in case of mux
                  services.";
              reference
                  "RFC7139: GMPLS Signaling Extensions for Control of
                  Evolving G.709 Optical Transport Networks.";
          }

          leaf dst-tsg {
              type identityref {
                  base tran-types:tributary-slot-granularity;
              }
              description
                  "Tributary slot granularity. Applicable in case of mux
                  services.";
              reference
                  "G.709/Y.1331, February 2012: Interfaces for the
                  Optical Transport Network (OTN)";
          }

          leaf dst-timeslot-count {
               type uint16;
               description
                   "Number of timeslots used at the destination.";
          }

          container dst-timeslots {
               description
                  "A list of tributary timeslots used by the
                  client service. Applicable in case of mux
                  services.";



Sharma, et al.           Expires January 7, 2017                [Page 7]


Internet-Draft           OTN Service YANG Model                July 2016


              leaf-list values {
                  type uint8;
                  description
                          "Tributary timeslot value.";
                  reference
                      "G.709/Y.1331, February 2012: Interfaces for the
                          Optical Transport Network (OTN)";
              }
          }
      }

      /*
      Note: Comment has been given to authors of TE Tunnel model to add
      tunnel-types to the model in order to identify the technology
      type of the service.

      grouping otn-service-type {
          description
            "Identifies the OTN Service type.";
          container otn-service {
            presence "Indicates OTN Service.";
            description
              "Its presence identifies the OTN Service type.";
          }
        } // otn-service-type

      augment "/te:te/te:tunnels/te:tunnel/te:tunnel-types" {
          description
                  "Introduce OTN service type for tunnel.";
          ext:augment-identifier otn-service-type-augment;
          uses otn-service-type;
      }
      */

      /*
      Note: Comment has been given to authors of TE Tunnel model to add
      list of endpoints under config to support P2MP tunnel.
      */
      augment "/te:te/te:tunnels/te:tunnel/te:config" {
          description
                  "Augment with additional parameters required for OTN
                  service.";
          ext:augment-identifier otn-tunnel-endpoint-config-augment;
          uses otn-tunnel-endpoint;
      }

      augment "/te:te/te:tunnels/te:tunnel/te:state" {
          description



Sharma, et al.           Expires January 7, 2017                [Page 8]


Internet-Draft           OTN Service YANG Model                July 2016


                  "Augment with additional parameters required for OTN
                  service.";
          ext:augment-identifier otn-tunnel-endpoint-state-augment;
          uses otn-tunnel-endpoint;
      }

      /*
      Note: Comment has been given to authors of TE Tunnel model to add
      tunnel-lifecycle-event to the model. This notification is reported
      for all lifecycle changes (create, delete, and update) to the
      tunnel or lsp.
      augment "/te:tunnel-lifecycle-event" {
          description
            "OTN service event";
          uses otn-service-type;
          uses otn-tunnel-params;
          list endpoint {
            key
              "endpoint-address tp-id";
            description
              "List of Tunnel Endpoints.";
            uses te:tunnel-endpoint;
            uses otn-tunnel-params;
          }
        }
      */
  }

  <CODE ENDS>

2.4.  Transport Types YANG Model

   <CODE BEGINS> file "ietf-transport-types@2016-06-24.yang"

    module ietf-transport-types {
       yang-version 1;
       namespace "urn:ietf:params:xml:ns:yang:ietf-transport-types";
       prefix "tran-types";

       organization
           "IETF CCAMP Working Group";
       contact
           "WG Web: <http://tools.ietf.org/wg/ccamp/>
           WG List: <mailto:ccamp@ietf.org>

           Editor: Anurag Sharma
                   <mailto:AnSharma@infinera.com>




Sharma, et al.           Expires January 7, 2017                [Page 9]


Internet-Draft           OTN Service YANG Model                July 2016


           Editor: Rajan Rao
                   <mailto:rrao@infinera.com>

           Editor: Xian Zhang
                   <mailto:zhang.xian@huawei.com>";

       description
           "This module defines transport types.";

       revision "2016-06-24" {
           description "Initial revision";
           reference "TBD";
       }

       identity tributary-slot-granularity {
           description
                   "Tributary slot granularity.";
           reference
                   "G.709/Y.1331, February 2012: Interfaces for the
                           Optical Transport Network (OTN)";
       }

       identity tsg-1.25G {
           base tributary-slot-granularity;
           description
                   "1.25G tributary slot granularity.";
       }

       identity tsg-2.5G {
           base tributary-slot-granularity;
           description
                   "2.5G tributary slot granularity.";
       }

       identity tributary-protocol-type {
           description
                   "Base identity for protocol framing used by
                   tributary signals.";
       }

       identity prot-OTU1 {
           base tributary-protocol-type;
           description
                   "OTU1 protocol (2.66G)";
       }

       identity prot-OTU1e {
           base tributary-protocol-type;



Sharma, et al.           Expires January 7, 2017               [Page 10]


Internet-Draft           OTN Service YANG Model                July 2016


           description
                   "OTU1e protocol (11.04G)";
       }


       identity prot-OTU2 {
           base tributary-protocol-type;
           description
                   "OTU2 protocol (10.70G)";
       }

       identity prot-OTU2e {
           base tributary-protocol-type;
           description
                   "OTU2e protocol (11.09G) for 10G LAN PHY";
       }

       identity prot-OTU2f {
           base tributary-protocol-type;
           description
                   "OTU2f protocol (11.32G) for transporting a 10
                   fiber channel.";
       }

       identity prot-OTU3 {
           base tributary-protocol-type;
           description
                   "OTU3 protocol (43.01G)";
       }

       identity prot-OTU3e {
           base tributary-protocol-type;
           description
                   "OTU3e protocol (44.57G) for transporting four OTU2e
                   signals.";
       }

       identity prot-OTU3e2 {
           base tributary-protocol-type;
           description
                   "OTU3e2 protocol (44.58G).";
       }


       identity prot-OTU4 {
           base tributary-protocol-type;
           description
                   "OTU4 protocol (112G) for transporting 100GE



Sharma, et al.           Expires January 7, 2017               [Page 11]


Internet-Draft           OTN Service YANG Model                July 2016


                   signal.";
       }

       identity prot-OTUCn {
           base tributary-protocol-type;
           description
                   "OTUCn protocol (beyond 100G) for transporting
                   more than 100G signals.";
       }

       identity prot-ODU0 {
           base tributary-protocol-type;
           description
                   "ODU0 protocol (1.24G).";
       }

       identity prot-ODU1 {
           base tributary-protocol-type;
           description
                   "ODU1 protocol (2.49G).";
       }

       identity prot-ODU1e {
           base tributary-protocol-type;
           description
                   "ODU1e protocol (10.35G).";
       }

       identity prot-ODU2 {
           base tributary-protocol-type;
           description
                   "ODU2 protocol (10.03G).";
       }

       identity prot-ODU2e {
           base tributary-protocol-type;
           description
                    "ODU2e protocol (10.39G).";
       }

       identity prot-ODU3 {
           base tributary-protocol-type;
           description
                   "ODU 3 protocol (40.31G).";
       }

       identity prot-ODU3e2 {
           base tributary-protocol-type;



Sharma, et al.           Expires January 7, 2017               [Page 12]


Internet-Draft           OTN Service YANG Model                July 2016


           description
                   "ODU3e2 protocol (41.78G).";
       }

       identity prot-ODU4 {
           base tributary-protocol-type;
           description
                   "ODU4 protocol (104.79G).";
       }

       identity prot-ODUFlex-cbr {
           base tributary-protocol-type;
           description
                   "ODU Flex CBR protocol for transporting constant bit
                   rate signal.";
       }

       identity prot-ODUFlex-gfp {
           base tributary-protocol-type;
           description
                   "ODU Flex GFP protocol for transporting stream
                   of packets using Generic Framing Procedure.";
       }

       identity prot-ODUCn {
           base tributary-protocol-type;
           description
                   "ODUCn protocol (beyond 100G).";
       }

       identity prot-1GbE {
           base tributary-protocol-type;
           description
                   "1G Ethernet protocol";
       }

       identity prot-10GbE-LAN {
           base tributary-protocol-type;
           description
                   "10G Ethernet LAN protocol";
       }

       identity prot-40GbE {
           base tributary-protocol-type;
           description
                   "40G Ethernet protocol";
       }




Sharma, et al.           Expires January 7, 2017               [Page 13]


Internet-Draft           OTN Service YANG Model                July 2016


       identity prot-100GbE {
           base tributary-protocol-type;
           description
                   "100G Ethernet protocol";
       }

       identity client-signal {
           description
                   "Base identity from which specific client signals
                   for the tunnel are derived.";
         }

       identity client-signal-1GbE {
           base client-signal;
           description
                   "Client signal type of 1GbE";
         }

       identity client-signal-10GbE-LAN {
           base client-signal;
           description
                   "Client signal type of 10GbE LAN";
         }

       identity client-signal-10GbE-WAN {
           base client-signal;
           description
                   "Client signal type of 10GbE WAN";
         }

       identity client-signal-40GbE {
           base client-signal;
           description
                   "Client signal type of 40GbE";
         }

       identity client-signal-100GbE {
           base client-signal;
           description
                   "Client signal type of 100GbE";
         }

       identity client-signal-OC3_STM1 {
           base client-signal;
           description
                   "Client signal type of OC3 and STM1";
         }




Sharma, et al.           Expires January 7, 2017               [Page 14]


Internet-Draft           OTN Service YANG Model                July 2016


       identity client-signal-OC12_STM4 {
           base client-signal;
           description
                   "Client signal type of OC12 and STM4";
         }

       identity client-signal-OC48_STM16 {
           base client-signal;
           description
                   "Client signal type of OC48 and STM16";
         }

       identity client-signal-OC192_STM64 {
           base client-signal;
           description
                   "Client signal type of OC192 and STM64";
         }

       identity client-signal-OC768_STM256 {
           base client-signal;
           description
                   "Client signal type of OC768 and STM256";
         }

       identity client-signal-OTU1 {
           base client-signal;
           description
                   "Client signal type of OTU1 (2.66G)";
       }

       identity client-signal-OTU2 {
           base client-signal;
           description
                   "Client signal type of OTU2 (10.70G)";
       }

       identity client-signal-OTU2e {
           base client-signal;
           description
                   "Client signal type of OTU2e (11.09G)";
       }

       identity client-signal-OTU2f {
           base client-signal;
           description
                   "Client signal type of OTU2f (11.32G)";
       }




Sharma, et al.           Expires January 7, 2017               [Page 15]


Internet-Draft           OTN Service YANG Model                July 2016


       identity client-signal-OTU3 {
           base client-signal;
           description
                   "Client signal type of OTU3 (43.01G)";
       }

       identity client-signal-OTU3e {
           base client-signal;
           description
                   "Client signal type of OTU3e (44.58G)";
       }

       identity client-signal-OTU4 {
           base client-signal;
           description
                   "Client signal type of OTU4 (112G)";
       }

       identity client-signal-OTUCn {
           base client-signal;
           description
                   "Client signal type of OTUCn (beyond 100G)";
       }

       identity client-signal-ODU0 {
           base client-signal;
           description
                   "Client signal type of ODU0 (1.24G)";
       }

       identity client-signal-ODU1 {
           base client-signal;
           description
                   "ODU1 protocol (2.49G)";
       }

       identity client-signal-ODU2 {
           base client-signal;
           description
                   "Client signal type of ODU2 (10.03G)";
       }

       identity client-signal-ODU2e {
           base client-signal;
           description
                   "Client signal type of ODU2e (10.39G)";
       }




Sharma, et al.           Expires January 7, 2017               [Page 16]


Internet-Draft           OTN Service YANG Model                July 2016


       identity client-signal-ODU3 {
           base client-signal;
           description
                   "Client signal type of ODU 3 (40.31G)";
       }

       identity client-signal-ODU3e2 {
           base client-signal;
           description
                   "Client signal type of ODU3e2 (41.78G)";
       }

       identity client-signal-ODU4 {
           base client-signal;
           description
                   "Client signal type of ODU4 (104.79G)";
       }

       identity client-signal-ODUFlex-cbr {
           base client-signal;
           description
                   "Client signal type of ODU Flex CBR";
       }

       identity client-signal-ODUFlex-gfp {
           base client-signal;
           description
                   "Client signal type of ODU Flex GFP";
       }

       identity client-signal-ODUCn {
           base client-signal;
           description
                   "Client signal type of ODUCn (beyond 100G).";
       }

       identity client-signal-FC400 {
           base client-signal;
           description
                   "Client signal type of Fibre Channel FC400.";
       }

       identity client-signal-FC800 {
           base client-signal;
           description
                   "Client signal type of Fibre Channel FC800.";
       }




Sharma, et al.           Expires January 7, 2017               [Page 17]


Internet-Draft           OTN Service YANG Model                July 2016


       identity client-signal-FICON-4G {
           base client-signal;
           description
                   "Client signal type of Fibre Connection 4G.";
       }

       identity client-signal-FICON-8G {
           base client-signal;
           description
                   "Client signal type of Fibre Connection 8G.";
       }
   }

   <CODE ENDS>


3.  Security Considerations

   TBD


4.  IANA Considerations

   TBD


5.  Acknowledgements


6.  Normative References

   [G.709]    ITU-T, "Interfaces for the Optical Transport Network
              (OTN), G.709/Y.1331 Recommendation", February 2012.

   [RFC6020]  Bjorklund, M., Ed., "YANG - A Data Modeling Language for
              the Network Configuration Protocol (NETCONF)", RFC 6020,
              DOI 10.17487/RFC6020, October 2010,
              <http://www.rfc-editor.org/info/rfc6020>.

   [RFC7139]  Zhang, F., Ed., Zhang, G., Belotti, S., Ceccarelli, D.,
              and K. Pithewan, "GMPLS Signaling Extensions for Control
              of Evolving G.709 Optical Transport Networks", RFC 7139,
              DOI 10.17487/RFC7139, March 2014,
              <http://www.rfc-editor.org/info/rfc7139>.







Sharma, et al.           Expires January 7, 2017               [Page 18]


Internet-Draft           OTN Service YANG Model                July 2016


Authors' Addresses

   Anurag Sharma
   Infinera Corp
   169 Java Drive
   Sunnyvale, CA  94089
   USA

   Phone: +1-408-572-5365
   Email: AnSharma@infinera.com


   Rajan Rao
   Infinera Corp
   169 Java Drive
   Sunnyvale, CA  94089
   USA

   Phone: +1-408-543-7755
   Email: rrao@infinera.com


   Xian Zhang
   Huawei Technologies
   F3-5-B R&D Center, Huawei Industrial Base, Bantian, Longgang District
   Shenzhen, Guangdong  518129
   P.R.China

   Email: zhang.xian@huawei.com






















Sharma, et al.           Expires January 7, 2017               [Page 19]