<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.4.19 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc comments="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-ccamp-yang-otn-slicing-00" category="std">

  <front>
    <title abbrev="Framework and YANG of OTN Slices">Framework and Data Model for OTN Network Slicing</title>

    <author initials="H." surname="Zheng" fullname="Haomian Zheng">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <street>H1, Xiliu Beipo Village, Songshan Lake</street>
          <city>Dongguan</city>
          <country>China</country>
        </postal>
        <email>zhenghaomian@huawei.com</email>
      </address>
    </author>
    <author initials="I." surname="Busi" fullname="Italo Busi">
      <organization>Huawei Technologies</organization>
      <address>
        <email>italo.busi@huawei.com</email>
      </address>
    </author>
    <author initials="A." surname="Guo" fullname="Aihua Guo">
      <organization>Futurewei Technologies</organization>
      <address>
        <email>aihuaguo.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="L.M." surname="Contreras" fullname="Luis M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <author initials="O.G.d." surname="Dios" fullname="Oscar Gonzalez de Dios">
      <organization>Telefonica</organization>
      <address>
        <email>oscar.gonzalezdedios@telefonica.com</email>
      </address>
    </author>
    <author initials="V." surname="Lopez" fullname="Victor Lopez">
      <organization>Nokia</organization>
      <address>
        <email>victor.lopez@nokia.com</email>
      </address>
    </author>
    <author initials="S." surname="Belotti" fullname="Sergio Belotti">
      <organization>Nokia</organization>
      <address>
        <email>Sergio.belotti@nokia.com</email>
      </address>
    </author>
    <author initials="D." surname="Beller" fullname="Dieter Beller">
      <organization>Nokia</organization>
      <address>
        <email>Dieter.Beller@nokia.com</email>
      </address>
    </author>
    <author initials="R." surname="Rokui" fullname="Reza Rokui">
      <organization>Nokia</organization>
      <address>
        <email>reza.rokui@nokia.com</email>
      </address>
    </author>
    <author initials="Y." surname="Xu" fullname="Yunbin Xu">
      <organization>CAICT</organization>
      <address>
        <email>xuyunbin@caict.ca.cn</email>
      </address>
    </author>
    <author initials="Y." surname="Zhao" fullname="Yang Zhao">
      <organization>China Mobile</organization>
      <address>
        <email>zhaoyangyjy@chinamobile.com</email>
      </address>
    </author>
    <author initials="X." surname="Liu" fullname="Xufeng Liu">
      <organization>Volta Networks</organization>
      <address>
        <email>xufeng.liu.ietf@gmail.com</email>
      </address>
    </author>

    <date year="2022" month="January" day="26"/>

    
    <workgroup>CCAMP Working Group</workgroup>
    

    <abstract>


<t>The requirement of slicing network resources with desired quality of
   service is emerging at every network technology, including the
   Optical Transport Networks (OTN). As a part of the transport network,
   OTN can provide hard pipes with guaranteed data isolation and
   deterministic low latency, which are highly demanded in the Service
   Level Agreement (SLA).</t>

<t>This document describes a framework for OTN network slicing and a
   YANG data model augmentation of the OTN topology model. Additional
   YANG data model augmentations will be defined in a future version of
   this draft.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>The requirement of slicing network resources with desired quality of
   service is emerging at every network technology, including the
   Optical Transport Networks (OTN). As a part of the transport network,
   OTN can provide hard pipes with guaranteed data isolation and
   deterministic low latency, which are highly demanded in the Service
   Level Agreement (SLA).
   This document describes a framework for OTN network slicing and a
   YANG data model augmentation of the OTN topology model. Additional
   YANG data model augmentations will be defined in a future version of
   this draft.</t>

<section anchor="definition-of-otn-slice"><name>Definition of OTN Slice</name>
<t>An OTN slice is an OTN virtual network topology connecting a number
   of OTN endpoints using a set of shared or dedicated OTN network resources to
   satisfy specific service level objectives (SLOs).</t>

<t>An OTN slice is a technology-specific realization of an IETF network slice 
   <xref target="I-D.ietf-teas-ietf-network-slices"/> in the OTN domain, with the
   capability of configuring slice resources in the term of OTN technologies. 
   Therefore, all the terms and definitions concerning network slicing as 
   defined in <xref target="I-D.ietf-teas-ietf-network-slices"/> apply to OTN slicing.</t>

<t>An OTN slice can span multiple OTN administrative domains, encompassing 
   access links, intra-domain paths, and inter-domain links. 
   An OTN slice may include multiple endpoints, each associated with a set of physical
   or logical resources, e.g. optical port or time slots, at the termination point (TP) of 
   an access link or inter-domain link at an OTN provider edge (PE) equipment.</t>

<t>An end-to-end OTN slice may be composed of multiple OTN segment slices in
   a hierarchical or sequential (or stitched) combination.</t>

<t><xref target="fig-otn-slice"/> illustrates the scope of OTN slices in multi-domain 
   environment.</t>

<figure title="OTN Slice" anchor="fig-otn-slice"><artwork><![CDATA[
      <------------------End-to-end OTN Slice---------------->

      <- OTN Segment Slice 1 --->  <-- OTN Segment Slice 2 -->


       +-------------------------+  +-----------------------+
       | +-----+      +-------+  |  | +-------+      +-----+|
+----+ | | OTN |      | OTN   |  |  | | OTN   |      | OTN ||  +----+
| CE +-+-o PE  +-...--+ Borde o--+--+-o Borde +-...--+ PE  o+--+ CE |
+----+ |/|     |      | Node  |\ |  | | Node  |      |     ||  +----+
      |||+-----+      +-------+ ||| | +-------+      +-----+| |
      |||    OTN Domain 1       ||| |      OTN Domain 2     | |
      |++-----------------------++| +-----------------------+ |
      | |                       | |                           |
      | +-----+    +------------+ |                           |
      |       |    |              |                           |
      V       V    V              V                           V
   Access    OTN Slice        Inter-domain                  Access
   Link      Endpoint         Link                          Link

]]></artwork></figure>

<t>OTN slices may be pre-configured by the management plane and presented to 
   the customer via the northbound interface (NBI), or be dynamically 
   provisioned by a higher layer slice controller, e.g. an IETF network slice 
   controller (IETF NSC) through the NBI. The OTN slice is 
   provided by a service provider to a customer to be used as though it was part
   of the customer's own networks.</t>

</section>
</section>
<section anchor="use-cases-for-otn-network-slicing"><name>Use Cases for OTN Network Slicing</name>

<section anchor="leased-line-services-with-otn"><name>Leased Line Services with OTN</name>

<t>For end business customers (like OTT or enterprises), leased lines
   have the advantage of providing high-speed connections with low
   costs. On the other hand, the traffic control of leased lines is very
   challenging due to rapid changes in service demands. Carriers are
   recommended to provide network-level slicing capabilities to meet
   this demand. Based on such capabilities, private network users have
   full control over the sliced resources which have been allocated to them
   and which could be used to support their leased lines, when needed.
   Users may formulate policies based on the demand for services and
   time to schedule the resources from the entire network's perspective
   flexibly. For example, the bandwidth between any two points may be
   established or released based on the time or monitored traffic
   characteristics. The routing and bandwidth may be adjusted at a
   specific time interval to maximize network resource utilization
   efficiency.</t>

</section>
<section anchor="co-construction-and-sharing"><name>Co-construction and Sharing</name>

<t>Co-construction and sharing of a network are becoming a popular means
   among service providers to reduce networking building CAPEX. For Co-
   construction and sharing case, there are typically multiple co-
   founders for the same network. For example, one founder may provide
   optical fibres and another founder may provide OTN equipment, while
   each occupies a certain percentage of the usage rights of the network
   resources. In this scenario, the network O&amp;M is performed by a
   certain founder in each region, where the same founder usually
   deploys an independent management and control system. The other
   founders of the network use each other's management and control
   system to provision services remotely. In this scenario, different
   founders' network resources need to be automatically (associated)
   divided, isolated, and visualized. All founders may share or have
   independent O&amp;M capabilities, and should be able to perform service-
   level provisioning in their respective slices.</t>

</section>
<section anchor="wholesale-of-optical-resources"><name>Wholesale of optical resources</name>

<t>In the optical resource wholesale market, smaller, local carriers and
   wireless carriers may rent resources from larger carriers, or
   infrastructure carriers instead of building their networks. Likewise,
   international carriers may rent resources from respective local
   carriers and local carriers may lease their owned networks to each
   other to achieve better network utilization efficiency.
   From the perspective of a resource provider, it is crucial that a
   network slice is timely configured to meet traffic matrix
   requirements requested by its tenants. The support for multi-tenancy
   within the resource provider's network demands that the network
   slices are qualitatively isolated from each other to meet the
   requirements for transparency, non-interference, and security.
   Typically, a resource purchaser expects to use the leased network
   resources flexibly, just like they are self-constructed. Therefore,
   the purchaser is not only provided with a network slice, but also the
   full set of functionalities for operating and maintaining the network
   slice.  The purchaser also expects to, flexibly and independently, 
   schedule and maintain physical resources to support their own
   end-to-end automation using both leased and self-constructed network
   resources.</t>

</section>
<section anchor="vertical-dedicated-network-with-otn"><name>Vertical dedicated network with OTN</name>

<t>Vertical industry slicing is an emerging category of network slicing
   due to the high demand for private high-speed network interconnects
   for industrial applications.
   In this scenario, the biggest challenge is to implement
   differentiated optical network slices based on the requirements from
   different industries. For example, in the financial industry, to
   support high-frequency transactions, the slice must ensure to provide
   the minimum latency along with the mechanism for latency management.
   For the healthcare industry, online diagnosis network and software
   capabilities to ensure the delivery of HD video without frame loss.
   For bulk data migration in data centers, the network needs to support
   on-demand, large-bandwidth allocation. In each of the aforementioned
   vertical industry scenarios, the bandwidth shall be adjusted as
   required to ensure flexible and efficient network resource usage.</t>

</section>
<section anchor="end-to-end-network-slicing"><name>End-to-end network slicing</name>

<t>In an end-to-end network slicing scenario such as 5G network slicing
   <xref target="TS.28.530-3GPP"/>, an IETF network slice <xref target="I-D.ietf-teas-ietf-network-slices"/>
   provides the required connectivity between other different segments 
   of an end-to-end network slice, such as the Radio Access Network 
   (RAN) and the Core Network (CN) segments, with a specific 
   performance commitment. An IETF network slice could be composed of 
   network slices from multiple technological and administrative 
   domains. An IETF network slice can be realized by using or combining
   multiple underlying OTN slices with OTN resources, e.g. ODU time 
   slots or ODU containers, to achieve end-to-end slicing across the transport
   domain.</t>

</section>
</section>
<section anchor="framework-for-otn-slicing"><name>Framework for OTN slicing</name>

<t>OTN slices may be abstracted differently depending on the requirement contained
   in the configuration provided by the slice customer. Whereas the customer requests
   an OTN slice to provide connectivities between specified endpoints, an OTN slice 
   can be abstracted as a set of endpoint-to-endpoint links, with each link formed 
   by an end-to-end tunnel across the underlying OTN networks. The resources
   associated with each link of the slice is reserved and commissioned in the underlying
   physical network upon the completion of configuring the OTN slice and all the 
   links are active.</t>

<t>An OTN slice can also be abstracted as an abstract topology when the customer requests
   the slice to share resources between multiple endpoints and to use the resources on demand.
   The abstract topology may consist of virtual nodes and virtual links, whose associated
   resources are reserved but not commissioned across the underlying OTN networks. The 
   customer can later commission resources within the slice dynamically using the NBI provided
   by the service provider. An OTN slice could use abstract topology to connect endpoints with 
   shared resources to optimize the resource utilization, and connections can be activated 
   within the slice as needed.</t>

<t>It is worth noting that those means to abstract an OTN slice are similar to the Virtual 
   Network (VN) abstraction defined for higher-level interfaces in <xref target="RFC8453"/>, in which context
   a connectivity-based slice corresponds to Type 1 VN and a resource-based slice corresponds to 
   Type 2 VN, respectively.</t>

<t>A particular resource in an OTN network, such as a port or link, may be
   sliced with one of the two granularity levels:</t>

<t><list style="symbols">
  <t>Link-based slicing, in which a link and its associated link
termination points (LTPs) are dedicatedly allocated to a
particular OTN slice.</t>
  <t>Tributary-slot based slicing, in which multiple OTN slices
share the same link by allocating different OTN tributary slots in
different granularities.</t>
</list></t>

<t>Furthermore, an OTN switch is typically fully non-blockable switching 
   at the lowest ODU container granularity, it is
desirable to specify just the total number of ODU containers in the
lowest granularity (e.g. ODU0), when configuring tributary-slot based
slicing on links and ports internal to an OTN network. In multi-domain
OTN network scenarios where separate OTN slices are created on
each of the OTN networks and are stitched at inter-domain OTN links, it
is necessary to specify matching tributary slots at the endpoints of the
inter-domain links. In some real network scenarios, OTN network resources
including tributary slots are managed explicitly by network operators for
network maintenance considerations. Therefore an OTN slice controller
shall support configuring an OTN slice with both options.</t>

<t>An OTN slice controller (OTN-SC) is a logical function responsible for
   the life-cycle management of OTN slices instantiated within the 
   corresponding OTN network domains. The OTN-SC provides technology-specific 
   interfaces at its northbound (OTN-SC NBI) to allow a higher-layer slice 
   controller, such as an IETF network slice controller (NSC), or an orchestrator, 
   to request OTN slices with OTN-specific 
   requirements. The OTN-SC interfaces at the southbound using the MDSC-to-PNC 
   interface (MPI) with a Physical Network Controller (PNC) or Multi-Domain Service Orchestrator (MDSC),
   as defined in the ACTN control framework <xref target="RFC8453"/>. The logical function 
   within the OTN-SC is responsible for translating the OTN slice requests 
   into concrete slice realization which can be understood and 
   provisioned at the southbound by the PNC or MDSC.</t>

<t>When realizing OTN slices, the OTN-SC may translate a connectivity-based OTN slice 
   into a set of end-to-end tunnels using the Traffic-engineering(TE) tunnel interface defined in 
   <xref target="I-D.ietf-teas-yang-te"/>. For a resource-based OTN slice, the 
   OTN-SC may translate the abstract topology representing the slice into a colored graph on an 
   abstract TE topology using the TE topology interface defined in <xref target="RFC8795"/>.</t>

<t>The OTN-SC NBI is technology-specific, while the IETF NSC-NBI is technology-
   agnostic. An IETF NSC may translate its customer's technology-agnostic slice
   request into an OTN slice request and utilize the OTN-SC NBI to realize 
   the IETF network slice. Alternatively, the IETF NSC may translate the slicing
   request into tunnel or topology configuration commands and communicate directly
   with the underlying PNC or MDSC to provision the IETF network slice.</t>

<t><xref target="fig-slice-interfaces"/> illustrates the OTN slicing control hierarchy 
   and the positioning of the OTN slicing interfaces.</t>

<figure title="Positioning of OTN Slicing Interfaces" anchor="fig-slice-interfaces"><artwork><![CDATA[
                      +--------------------+
                      | Provider's User    |
                      +--------|-----------+
                               | CMI
       +-----------------------+----------------------------+
       |          Orchestrator / E2E Slice Controller       | 
       +------------+-----------------------------+---------+
                    |                             | NSC-NBI
                    |       +---------------------+---------+
                    |       | IETF Network Slice Controller |
                    |       +-----+---------------+---------+
                    |             |               |
                    | OTN-SC NBI  |OTN-SC NBI     |               
       +------------+-------------+--------+      |
       |               OTN-SC              |      |
       +--------------------------+--------+      |      
                                  | MPI           | MPI                           
       +--------------------------+---------------+---------+ 
       |                         PNC                        | 
       +--------------------------+-------------------------+ 
                                  | SBI
                      +-----------+----------+
                      |OTN Physical Network  |
                      +----------------------+

]]></artwork></figure>

<t>OTN-SC functionalities may be recursive such that a higher-level
   OTN-SC may designate the creation of OTN slices to a lower-level
   OTN-SC in a recursive manner. This scenario may apply to the
   creation of OTN slices in multi-domain OTN networks, where 
   multiple domain-wide OTN slices provisioned by lower-layer
   OTN-SCs are stitched to support a multi-domain OTN slice
   provisioned by the higher-level OTN-SC.  Alternatively, the OTN-SC
   may interface with an MDSC, which in turn interfaces with multiple 
   PNCs through the MPI to realize OTN slices in multi-domain OTN networks 
   without OTN-SC recursion. 
   <xref target="fig-otn-sc-recursion"/> illustrates both options for OTN slicing
   in multi-domain.</t>

<figure title="OTN-SC for multi-domain" anchor="fig-otn-sc-recursion"><artwork><![CDATA[
    +-------------------+                    +-------------------+
    |      OTN-SC       |                    |      OTN-SC       |
    +--------|----------+                    +---|----------|----+
             |MPI                                |OTN-SC NBI|
    +--------|----------+                    +---|----+ +---|----+
    |      MDSC         |                    | OTN-SC | | OTN-SC |
    +---|----------|----+                    +---|----+ +---|----+
        |MPI       |MPI                          |MPI       |MPI
    +---|----+ +---|----+                    +---|----+ +---|----+
    |   PNC  | |   PNC  |                    |   PNC  | |   PNC  |
    +--------+ +--------+                    +--------+ +--------+
    Multi-domain Option 1                    Multi-domain Option 2
]]></artwork></figure>

<t>OTN-SC functionalities are logically independent and may be deployed in 
   different combinations to cater to the realization needs. In reference with the 
   ACTN control framework <xref target="RFC8453"/>, an OTN-SC may be deployed
    - as an independent network function;
    - together with a Physical Network Controller (PNC) for single-domain
      or with a Multi-Domain Service Orchestrator (MDSC)for multi-domain;
    - together with a higher-level network slice controller to support 
      end-to-end network slicing;</t>

</section>
<section anchor="yang-data-model-for-otn-slicing-configuration"><name>YANG Data Model for OTN Slicing Configuration</name>

<section anchor="otn-slicing-yang-model-for-mpi"><name>OTN Slicing YANG Model for MPI</name>

<section anchor="mpi-yang-model-overview"><name>MPI YANG Model Overview</name>

<t>For the configuration of connectivity-based OTN slices, existing models such as 
   the TE tunnel interface <xref target="I-D.ietf-teas-yang-te"/> may be used and no addition is 
   needed. This model is addressing the case for configuring resource-based OTN slices,
   where the model permits to reserve resources exploiting the common knowledge of an underlying 
   virtual topology between the OTN-SC and the subtended network controller (MDSC or PNC). The slice
   is configured by marking corresponding link resources on the TE topology received from the 
   underlying MDSC or PNC with a slice identifier and OTN-specific resource requirements, 
   e.g. the number of ODU time slots or the type/number of ODU containers. The MDSC or PNC, based on the 
   marked resources by the OTN-SC, will update the underlying TE topology with new TE link for each of 
   the colored links to keep booked the reserved OTN resources e.g. time slots or ODU containers.</t>

</section>
<section anchor="mpi-yang-model-tree"><name>MPI YANG Model Tree</name>

<figure title="OTN slicing tree diagram" anchor="fig-otn-slice-tree"><artwork><![CDATA[
module: ietf-otn-slice

  augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes:
    +--rw (otn-slice-granularity)?
       +--:(link)
       |  +--rw slice-id?   uint32
       +--:(link-resource)
          +--rw slices* [slice-id]
             +--rw slice-id                  uint32
             +--rw (technology)?
             |  +--:(otn)
             |     +--rw (slice-bandwidth)?
             |        +--:(containers)
             |        |  +--rw odulist* [odu-type]
             |        |     +--rw odu-type    identityref
             |        |     +--rw number?     uint16
             |        +--:(time-slots)
             |           +--rw otn-ts-num?   uint32
             +--ro sliced-link-ref?          -> ../../../../../nt:link/link-id
]]></artwork></figure>

</section>
<section anchor="mpi-yang-code"><name>MPI YANG Code</name>

<figure title="OTN slicing YANG model" anchor="fig-otn-slice-yang"><artwork><![CDATA[
   <CODE BEGINS> file "ietf-otn-slice@2021-10-22.yang"
   module ietf-otn-slice {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-otn-slice";
     prefix "otnslice";

     import ietf-network {
       prefix "nw";
       reference "RFC 8345: A YANG Data Model for Network Topologies";
     }

     import ietf-network-topology {
       prefix "nt";
       reference "RFC 8345: A YANG Data Model for Network Topologies";
     }

     import ietf-te-topology {
       prefix "tet";
       reference
         "RFC8795: YANG Data Model for Traffic Engineering
         (TE) Topologies";
     }

     import ietf-otn-topology {
       prefix "otntopo";
       reference
         "I-D.ietf-ccamp-otn-topo-yang: A YANG Data Model
          for Optical Transport Network Topology";
     }

     import ietf-layer1-types {
       prefix "l1-types";
       reference
         "I-D.ietf-ccamp-layer1-types: A YANG Data Model
          for Layer 1 Types";
     }

     organization
       "IETF CCAMP Working Group";
     contact
       "WG Web: <http://tools.ietf.org/wg/ccamp/>
        WG List: <mailto:ccamp@ietf.org>

        Editor: Haomian Zheng
                <mailto:zhenghaomian@huawei.com>

        Editor: Italo Busi
                <mailto:italo.busi@huawei.com>

        Editor: Aihua Guo
                <mailto:aihuaguo.ietf@gmail.com>

        Editor: Victor Lopez
                <mailto:victor.lopezalvarez@telefonica.com>";

     description
       "This module defines a YANG data model to configure an OTN
        network slice realization.

        The model fully conforms to the Network Management Datastore
        Architecture (NMDA).

        Copyright (c) 2021 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
        (https://trustee.ietf.org/license-info).
        This version of this YANG module is part of RFC XXXX; see
        the RFC itself for full legal notices.";

     revision "2021-10-22" {
       description
         "Latest revision of MPI YANG model for OTN slicing.";
       reference
         "draft-zheng-ccamp-yang-otn-slicing-03: Framework and Data
          Model for OTN Network Slicing";
     }

     /*
      * Groupings
      */

     grouping otn-link-slice-profile {
       description
         "Profile of an OTN link slice.";
       choice otn-slice-granularity {
         default "link";
         description
           "Link slice granularity.";
         case link {
           leaf slice-id {
             type uint32;
              description
                "Slice identifier";
           }
         }
         case link-resource {
           list slices {
             key slice-id;
             description
               "List of slices.";
             leaf slice-id {
               type uint32;
               description
                 "Slice identifier";
             }
             choice technology {
               description
                 "Data plane technology types.";
               case otn {
                 choice slice-bandwidth {
                   description
                     "Bandwidth specification for OTN slices.";
                   case containers {
                     uses l1-types:otn-link-bandwidth;
                   }
                   case time-slots {
                     leaf otn-ts-num {
                       type uint32;
                       description
                         "Number of OTN tributary slots allocated for the
                          slice.";
                     }
                   }
                 }
               }
             }
             leaf sliced-link-ref {
               type leafref {
                 path "../../../../../nt:link/nt:link-id";
               }
               config false;
               description
                 "Relative reference to virtual links generated from
                  this TE link.";
             }
           }
         }
       }
     }

     /*
      * Augments
      */
     augment "/nw:networks/nw:network/nt:link/tet:te/"
           + "tet:te-link-attributes" {
       when "../../../nw:network-types/tet:te-topology/"
          + "otntopo:otn-topology" {
         description
           "Augmentation parameters apply only for networks with
            OTN topology type.";
       }
       description
         "Augment OTN TE link attributes with slicing profile.";
       uses otn-link-slice-profile;
     }
   }
   <CODE ENDS>
]]></artwork></figure>

</section>
</section>
<section anchor="otn-slicing-yang-model-for-otn-sc-nbi"><name>OTN Slicing YANG Model for OTN-SC NBI</name>

<section anchor="nbi-yang-model-overview"><name>NBI YANG Model Overview</name>
<t>The YANG model for OTN-SC NBI is OTN-technology specific, but shares many
   common constructs and attributes with generic network slicing YANG models.
   Furthermore, the OTN-SC NBI YANG is expected to support both connectivity-based
   and resource-based slice configuration, which is likely a common requirement for
   supporting slicing at other transport network layers, e.g. WDM or MPLS-TP.
   Therefore, the OTN-SC NBI YANG model is designed into two models, a common base 
   model for transport network slicing, and an OTN slicing model which augments the 
   base model with OTN technology-specific constructs.</t>

<t>The base model defines a transport network slice (TNS) with the following
   constructs and attributes:
   - Common attributes, which include a set of common attributes like slice identifier,
     name, description and names of customers who use the slice.
   - Endpoints, which represent conceptual points of connection from a customer
     device to the TNS. An endpoint is mapped to specific physical or virtual resources
     of the customer and provider, and such mapping is pre-negotiated and known to 
     both the customer and provider prior to the slice configuration. The mechanism 
     for endpoint negotiation is outside the scope of this draft.
   - Network topology, which represent set of shared, reserved resources organized as a virtual 
     topology between all of the endpoints. A customer could use such network topology
     to define detailed connecvitiy path traversing the topology, and allow sharing of 
     resources between its multiple endpoint pairs.
   - Connectivity matrix, which represent the intended virtual connections between the endpoints
     within a TNS. A connctivity matrix entry could be associated with an explicit path 
     over the above network topology. 
   - Service-level objectives (SLOs) associated with different objects, including the TNS, 
     node, link, termination point, and explicit path, within a TNS.</t>

</section>
<section anchor="nbi-yang-model-tree-for-transport-network-slice"><name>NBI YANG Model Tree for Transport Network Slice</name>

<figure title="Tree diagram for transport network slice" anchor="fig-ietf-transport-network-slice"><artwork><![CDATA[
module: ietf-transport-network-slice
  +--rw network-slices
     +--rw network-slice* [ns-id]
        +--rw ns-id                    string
        +--rw ns-name?                 string
        +--rw ns-description?          string
        +--rw customer-name*           string
        +--rw slo
        |  +--rw optimization-criterion?   identityref
        |  +--rw delay-tolerance?          boolean
        |  +--rw periodicity*              uint64
        |  +--rw isolation-level?          identityref
        +--rw endpoints
        |  +--rw endpoint* [endpoint-id]
        |     +--rw endpoint-id    string
        +--rw network-topologies
        |  +--rw network-topology* [topology-id]
        |     +--rw topology-id    string
        |     +--rw node* [node-id]
        |     |  +--rw node-id              inet:uri
        |     |  +--rw slo
        |     |  |  +--rw isolation-level?   identityref
        |     |  +--rw termination-point* [tp-id]
        |     |     +--rw tp-id          inet:uri
        |     |     +--rw endpoint-id?   leafref
        |     +--rw link* [link-id]
        |        +--rw link-id        inet:uri
        |        +--rw slo
        |        |  +--rw delay-tolerance?   boolean
        |        |  +--rw periodicity*       uint64
        |        |  +--rw isolation-level?   identityref
        |        +--rw source
        |        |  +--rw source-node?   -> ../../../node/node-id
        |        |  +--rw source-tp?     leafref
        |        +--rw destination
        |           +--rw dest-node?   -> ../../../node/node-id
        |           +--rw dest-tp?     leafref
        +--rw connectivity-matrices
           +--rw connectivity-matrix* [connectivity-matrix-id]
              +--rw connectivity-matrix-id    uint32
              +--rw topology-id?              leafref
              +--rw src-endpoint?
              |       -> ../../../endpoints/endpoint/endpoint-id
              +--rw dst-endpoint?
              |       -> ../../../endpoints/endpoint/endpoint-id
              +--rw slo
              +--rw explicit-path* [tp-id]
                 +--rw tp-id    leafref
]]></artwork></figure>

</section>
<section anchor="nbi-yang-code-for-transport-network-slice"><name>NBI YANG Code for Transport Network Slice</name>

<figure title="YANG model for transport network slice" anchor="fig-ietf-transport-network-yang"><artwork><![CDATA[
   <CODE BEGINS> file "ietf-transport-network-slice@2021-10-22.yang"
   module ietf-transport-network-slice {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-transport-network-slice";
     prefix "tns";

     import ietf-inet-types {
       prefix inet;
       reference "RFC 6991";
     }

     import ietf-te-types {
       prefix "te-types";
       reference
         "RFC 8776: Traffic Engineering Common YANG Types";
     }

     organization
       "IETF CCAMP Working Group";
     contact
       "WG Web: <http://tools.ietf.org/wg/ccamp/>
        WG List: <mailto:ccamp@ietf.org>

        Editor: Haomian Zheng
                <mailto:zhenghaomian@huawei.com>

        Editor: Italo Busi
                <mailto:italo.busi@huawei.com>

        Editor: Aihua Guo
                <mailto:aihuaguo.ietf@gmail.com>

        Editor: Victor Lopez
                <mailto:victor.lopezalvarez@telefonica.com>";

     description
       "This module defines a YANG data model to configure an OTN
        network slice realization.

        The model fully conforms to the Network Management Datastore
        Architecture (NMDA).

        Copyright (c) 2021 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
        (https://trustee.ietf.org/license-info).
        This version of this YANG module is part of RFC XXXX; see
        the RFC itself for full legal notices.";

     revision "2021-10-22" {
       description
         "Latest revision of NBI YANG model for OTN slicing.";
       reference
         "draft-zheng-ccamp-yang-otn-slicing-03: Framework and Data
          Model for OTN Network Slicing";
     }

     /*
      * Identities
      */
     identity isolation-level {
       description
         "Base identity for the isolation-level.";
       reference
         "GSMA-NS-Template: Generic Network Slice Template,
          Version 3.0.";
     }
     identity no-isolation {
       base isolation-level;
       description
         "Network slices are not separated.";
     }
     identity physical-isolation {
       base isolation-level;
       description
         "Network slices are physically separated (e.g. different rack,
          different hardware, different location, etc.).";
     }
     identity logical-isolation {
       base isolation-level;
       description
         "Network slices are logically separated.";
     }
     identity process-isolation {
       base physical-isolation;
       description
         "Process and threads isolation.";
     }
     identity physical-memory-isolation {
       base physical-isolation;
       description
         "Process and threads isolation.";
     }
     identity physical-network-isolation {
       base physical-isolation;
       description
         "Process and threads isolation.";
     }
     identity virtual-resource-isolation {
       base logical-isolation;
       description
         "A network slice has access to specific range of resources
          that do not overlap with other network slices
          (e.g. VM isolation).";
     }
     identity network-functions-isolation {
       base logical-isolation;
       description
         "NF (Network Function) is dedicated to the network slice, but
          virtual resources are shared.";
     }
     identity service-isolation {
       base logical-isolation;
       description
         "NSC data are isolated from other NSCs, but virtual
          resources and NFs are shared.";
     }

     /*
      * Groupings
      */

     grouping ns-generic-info {
       description
         "Generic configuration of a network slice";
         leaf ns-name {
           type string;
           description
             "Name of the specific network slice";
         }
         leaf ns-description {
           type string;
           description
             "Description regarding the specific network slice";
         }
         leaf-list customer-name {
           type string;
           description
             "List of customers using the slice";
         }
     }

     grouping ns-slo {
       description
         "SLO configuration of a network slice";

       container slo {
         description
           "SLO configuration of a network slice";
   
       leaf optimization-criterion {
           type identityref {
             base te-types:objective-function-type;
           }
           description
             "Optimization criterion applied to this topology.";
         }
         leaf delay-tolerance {
           type boolean;
           description
             "'true' if is not too critical how long it takes to deliver
              the amount of data.";
           reference
             "GSMA-NS-Template: Generic Network Slice Template,
              Version 3.0.";
         }
         leaf-list periodicity {
           type uint64;
           units seconds;
           description
             "A list of periodicities supported by the network slice.";
           reference
             "GSMA-NS-Template: Generic Network Slice Template,
              Version 3.0.";
         }
         leaf isolation-level {
           type identityref {
             base isolation-level;
           }
           description
             "A network slice instance may be fully or partly, logically
              and/or physically, isolated from another network slice
              instance. This attribute describes different types of
              isolation:";
         }
       }
     }

     grouping node-slo {
       description
         "Node SLO";
       container slo {
         description
           "SLO configuration of a node";
         leaf isolation-level {
           type identityref {
             base isolation-level;
           }
           description
             "A network slice instance may be fully or partly, logically
              and/or physically, isolated from another network slice
              instance. This attribute describes different types of
              isolation:";
         }
       }
     }

     grouping link-slo {
       description
         "Link SLO";
       container slo {
         description
           "SLO configuration of a link";
         leaf delay-tolerance {
           type boolean;
           description
             "'true' if is not too critical how long it takes to deliver
              the amount of data.";
           reference
             "GSMA-NS-Template: Generic Network Slice Template,
              Version 3.0.";
         }
         leaf-list periodicity {
           type uint64;
           units seconds;
           description
             "A list of periodicities supported by the network slice.";
           reference
             "GSMA-NS-Template: Generic Network Slice Template,
              Version 3.0.";
         }
         leaf isolation-level {
           type identityref {
             base isolation-level;
           }
           description
             "A network slice instance may be fully or partly, logically
              and/or physically, isolated from another network slice
              instance. This attribute describes different types of
              isolation:";
         }
       }
     }

     grouping connectivity-matrix-slo {
       description
         "SLO configuration of a path within a network slice";

       container slo {
         description
           "Path SLO configuration";
       }
       leaf delay-tolerance {
         type boolean;
         description
           "'true' if is not too critical how long it takes to deliver
            the amount of data.";
         reference
           "GSMA-NS-Template: Generic Network Slice Template,
            Version 3.0.";
       }
       leaf-list periodicity {
         type uint64;
         units seconds;
         description
           "A list of periodicities supported by the network slice.";
         reference
           "GSMA-NS-Template: Generic Network Slice Template,
            Version 3.0.";
       }
       leaf isolation-level {
         type identityref {
           base isolation-level;
         }
         description
           "A network slice instance may be fully or partly, logically
            and/or physically, isolated from another network slice
            instance. This attribute describes different types of
            isolation:";
       }
     }

     grouping connectivity-matrix-entry-slo {
       description
         "SLO configuration of a connectivity matrix entry within a
          network slice";

       container slo {
         description
           "SLO configuration of a connectivity matrix entry";
       }
     }

     grouping explicit-path {
       description
         "Explicit path for a connectivity matrix entry";

       list explicit-path {
         key "tp-id";
         description
           "List of TPs within a network topology that form a path.";
         leaf tp-id {
           type leafref {
             path "/network-slices/network-slice[ns-id=current()"+
                  "/../../../../ns-id]/network-topologies"+
                  "/network-topology[topology-id=current()"+
                  "/../../topology-id]/node/termination-point/tp-id";
           }
           description
             "Relative reference to TP id.";
         }
       }
     }

     grouping network-topology-def {
       description
         "Network topology definition";
       list node {
         key "node-id";
         description
         "The inventory of nodes of this topology.";
         leaf node-id {
           type inet:uri;
           description
             "Node identifier.";
         }
         uses node-slo;
         list termination-point {
           key "tp-id";
           description
             "TP identifier";
           leaf tp-id {
             type inet:uri;
             description
               "Termination point identifier.";
           }
           leaf endpoint-id {
             type leafref {
               path "/network-slices/network-slice[ns-id=current()"+
                    "/../../../../../ns-id]/endpoints/endpoint/"+
                    "endpoint-id";
             }
             description
               "Relative reference to TP id.";
           }
         }
       }
       list link {
         key "link-id";
         description
           "Link identifier.";
         leaf link-id {
           type inet:uri;
           description
             "Link identifier.";
         }
         uses link-slo;
         container source {
           description
             "Link source node";
           leaf source-node {
             type leafref {
               path "../../../node/node-id";
             }
             description
               "Source node identifier, must be in same topology.";
           }
           leaf source-tp {
             type leafref {
               path "../../../node[node-id=current()/../"+
                    "source-node]/termination-point/tp-id";
             }
             description
               "Termination point within source node that terminates
                the link.";
           }
         }
         container destination {
           description
             "Link destination node";
           leaf dest-node {
             type leafref {
               path "../../../node/node-id";
             }
             description
               "Destination node identifier, must be in same topology.";
           }
           leaf dest-tp {
             type leafref {
               path "../../../node[node-id=current()/../"+
                    "dest-node]/termination-point/tp-id";
             }
             description
               "Termination point within destination node that terminates
                the link.";
           }
         }
       }
     }

     /*
      * Configuration data nodes
      */
     container network-slices {
       description
         "Generic network slice configurations";
       list network-slice {
         key "ns-id";
         description
           "Network slice identifier";
         leaf ns-id {
           type string;
           description
             "A unique network slice identifier across a slice controller";
         }
         uses ns-generic-info;
         uses ns-slo;

         container endpoints {
           description
             "Endpoints of a network slice";
 
           list endpoint {
             key "endpoint-id";
             description
               "List of endpoints";
             leaf endpoint-id {
               type string;
               description
                 "Endpoint identifier";
             }
           }
         }
         container network-topologies {
           description
             "A network slice is described as a network topology";
 
           list network-topology {
             key "topology-id";
             description
               "List of network topologies";
             leaf topology-id {
               type string;
               description
                 "Topology identifier";
             }
             uses network-topology-def;
           }
         } 
         container connectivity-matrices {
           description
             "Connectivity matrices";
 
           list connectivity-matrix {
             key "connectivity-matrix-id";
             description
               "List of connectivity matrix entities";
             leaf connectivity-matrix-id {
               type uint32;
               description
                 "Connectivity matrix identifier";
             }
             leaf topology-id {
               type leafref {
                 path "../../../network-topologies/network-topology/topology-id";
               }
               description
                 "Relative reference to network topology id.";
             }
             leaf src-endpoint {
               type leafref {
                 path "../../../endpoints/endpoint/endpoint-id";
               }
               description
                 "Relative reference to endpoint id.";
             }
             leaf dst-endpoint {
               type leafref {
                 path "../../../endpoints/endpoint/endpoint-id";
               }
               description
                 "Relative reference to endpoint id.";
             }
             uses connectivity-matrix-entry-slo;
             uses explicit-path;
           } //connectivity-matrix
         } //connectivity-matrices
       } //network-slice
     } //network slices
   }
   <CODE ENDS>
]]></artwork></figure>

</section>
<section anchor="nbi-yang-model-tree-for-otn-slice"><name>NBI YANG Model Tree for OTN slice</name>

<t>TBD.</t>

</section>
<section anchor="nbi-yang-code-for-otn-slice"><name>NBI YANG Code for OTN Slice</name>

<t>TBD.</t>

</section>
</section>
</section>
<section anchor="manageability-considerations"><name>Manageability Considerations</name>

<t>To ensure the security and controllability of physical resource
   isolation, slice-based independent operation and management are
   required to achieve management isolation.
   Each optical slice typically requires dedicated accounts,
   permissions, and resources for independent access and O&amp;M. This
   mechanism is to guarantee the information isolation among slice
   tenants and to avoid resource conflicts. The access to slice
   management functions will only be permitted after successful security
   checks.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>&lt;Add any security considerations&gt;</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>&lt;Add any IANA considerations&gt;</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>

<reference anchor="TS.28.530-3GPP" target="http://ftp.3gpp.org//Specs/archive/28_series/28.530/28530-f10.zip">
  <front>
    <title>3GPP TS 28.530 V15.1.0 Technical Specification Group Services and System Aspects; Management and orchestration; Concepts, use cases and requirements (Release 15)</title>
    <author >
      <organization>3rd Generation Partnership Project (3GPP)</organization>
    </author>
    <date year="2018" month="December"/>
  </front>
  <seriesInfo name="3GPP TS 28.530" value=""/>
</reference>



<reference anchor='I-D.ietf-teas-yang-te'>
   <front>
      <title>A YANG Data Model for Traffic Engineering Tunnels, Label Switched Paths and Interfaces</title>
      <author fullname='Tarek Saad'>
	 <organization>Juniper Networks</organization>
      </author>
      <author fullname='Rakesh Gandhi'>
	 <organization>Cisco Systems Inc</organization>
      </author>
      <author fullname='Xufeng Liu'>
	 <organization>Volta Networks</organization>
      </author>
      <author fullname='Vishnu Pavan Beeram'>
	 <organization>Juniper Networks</organization>
      </author>
      <author fullname='Igor Bryskin'>
	 <organization>Individual</organization>
      </author>
      <author fullname='Oscar Gonzalez de Dios'>
	 <organization>Telefonica</organization>
      </author>
      <date day='25' month='October' year='2021'/>
      <abstract>
	 <t>   This document defines a YANG data model for the provisioning and
   management of Traffic Engineering (TE) tunnels, Label Switched Paths
   (LSPs), and interfaces.  The model is divided into YANG modules that
   classify data into generic, device-specific, technology agnostic, and
   technology-specific elements.

   This model covers data for configuration, operational state, remote
   procedural calls, and event notifications.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-teas-yang-te-28'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-teas-yang-te-28.txt' type='TXT'/>
</reference>



<reference anchor='RFC8795' target='https://www.rfc-editor.org/info/rfc8795'>
<front>
<title>YANG Data Model for Traffic Engineering (TE) Topologies</title>
<author fullname='X. Liu' initials='X.' surname='Liu'><organization/></author>
<author fullname='I. Bryskin' initials='I.' surname='Bryskin'><organization/></author>
<author fullname='V. Beeram' initials='V.' surname='Beeram'><organization/></author>
<author fullname='T. Saad' initials='T.' surname='Saad'><organization/></author>
<author fullname='H. Shah' initials='H.' surname='Shah'><organization/></author>
<author fullname='O. Gonzalez de Dios' initials='O.' surname='Gonzalez de Dios'><organization/></author>
<date month='August' year='2020'/>
<abstract><t>This document defines a YANG data model for representing, retrieving, and manipulating Traffic Engineering (TE) Topologies. The model serves as a base model that other technology-specific TE topology models can augment.</t></abstract>
</front>
<seriesInfo name='RFC' value='8795'/>
<seriesInfo name='DOI' value='10.17487/RFC8795'/>
</reference>




    </references>

    <references title='Informative References'>




<reference anchor='I-D.ietf-teas-ietf-network-slices'>
   <front>
      <title>Framework for IETF Network Slices</title>
      <author fullname='Adrian Farrel'>
	 <organization>Old Dog Consulting</organization>
      </author>
      <author fullname='Eric Gray'>
	 <organization>Independent</organization>
      </author>
      <author fullname='John Drake'>
	 <organization>Juniper Networks</organization>
      </author>
      <author fullname='Reza Rokui'>
	 <organization>Nokia</organization>
      </author>
      <author fullname='Shunsuke Homma'>
	 <organization>NTT</organization>
      </author>
      <author fullname='Kiran Makhijani'>
	 <organization>Futurewei</organization>
      </author>
      <author fullname='Luis M. Contreras'>
	 <organization>Telefonica</organization>
      </author>
      <author fullname='Jeff Tantsura'>
	 <organization>Microsoft Inc.</organization>
      </author>
      <date day='25' month='October' year='2021'/>
      <abstract>
	 <t>   This document describes network slicing in the context of networks
   built from IETF technologies.  It defines the term &quot;IETF Network
   Slice&quot; and establishes the general principles of network slicing in
   the IETF context.

   The document discusses the general framework for requesting and
   operating IETF Network Slices, the characteristics of an IETF Network
   Slice, the necessary system components and interfaces, and how
   abstract requests can be mapped to more specific technologies.  The
   document also discusses related considerations with monitoring and
   security.

   This document also provides definitions of related terms to enable
   consistent usage in other IETF documents that describe or use aspects
   of IETF Network Slices.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-teas-ietf-network-slices-05'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-teas-ietf-network-slices-05.txt' type='TXT'/>
</reference>



<reference anchor='RFC8453' target='https://www.rfc-editor.org/info/rfc8453'>
<front>
<title>Framework for Abstraction and Control of TE Networks (ACTN)</title>
<author fullname='D. Ceccarelli' initials='D.' role='editor' surname='Ceccarelli'><organization/></author>
<author fullname='Y. Lee' initials='Y.' role='editor' surname='Lee'><organization/></author>
<date month='August' year='2018'/>
<abstract><t>Traffic Engineered (TE) networks have a variety of mechanisms to facilitate the separation of the data plane and control plane.  They also have a range of management and provisioning protocols to configure and activate network resources.  These mechanisms represent key technologies for enabling flexible and dynamic networking.  The term &quot;Traffic Engineered network&quot; refers to a network that uses any connection-oriented technology under the control of a distributed or centralized control plane to support dynamic provisioning of end-to- end connectivity.</t><t>Abstraction of network resources is a technique that can be applied to a single network domain or across multiple domains to create a single virtualized network that is under the control of a network operator or the customer of the operator that actually owns the network resources.</t><t>This document provides a framework for Abstraction and Control of TE Networks (ACTN) to support virtual network services and connectivity services.</t></abstract>
</front>
<seriesInfo name='RFC' value='8453'/>
<seriesInfo name='DOI' value='10.17487/RFC8453'/>
</reference>




    </references>


<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>This document was prepared using kramdown.</t>

<t>Previous versions of this document were prepared using 2-Word-v2.0.template.dot.</t>

</section>
<section numbered="false" anchor="contributors-addresses"><name>Contributors' Addresses</name>

<figure><artwork><![CDATA[
Henry Yu
Huawei Technologies Canada

Email: henry.yu@huawei.com

Jiang Sun
China Mobile

Email: sunjiang@chinamobile.com
]]></artwork></figure>

</section>


  </back>

<!-- ##markdown-source:
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
O9L0hNOj8ZWmdjisMyGZRK5eTljo7t+KXP32lKXWtq3Upz+3RttMydYLx6gw
rXv7Ojtw8CVGYG1jcSGrcrdmDUfpETaz1sawdS6bNzUG47WAmNGlNILNJZIJ
TGCJnRXCztOiHVawRDmOEr9XOGOAZgfxTG8FBxnq3XL4UBIYIHdO+o9M8u/E
JJKgupVJ6H7Kr8Ik7RsyH4+sj0fWxyPrf6Y0ikXpf7mBQal8Nh/ug5kblwi2
M2TkZsE2SdYjx/rG/UAybIsEi27I99yO8c0Y0Gmj3IpLrT6Z1Xud5P3l1b+I
OJuk1GYZtUVCvd2Fah9ENn0AyfT+cikmld5FFFEa8XsIpGk3FVpSk42U8tD9
td0jvchsp02QA7SNFudBZvWc3iWwaWzL+LhZe0biG8N7lF202+1q3vjXl1X3
QHA3xNAZTi8857Nj3FFLOZ2pqyP0XGvkK41HYXJ0+JXzof84bUpk2/2DvVhV
5b3wTiRlUFswLle2p287YdZPl91xYD/BlrP/OnmnR53F2Fn9iV+6vL4EsRbX
3Xot3tZMRzN/TTbH4CwXUBJJGh7pxIs47w4LShbkVibcu6YbDndAa/PGZXo1
n8kEiDry2CktqcYRzVRyZnf1jSP+7tpSn1pMdxeN78BHBmnQWfYQrfiu3IQU
rXL8Hn3fjts0+831Aq7bNyj6yNFiXcLEz1+P4dN7tflDSYG2HHCiIJLe2QfB
m8XGm8mbCbnrjt14w1lYql3Rgngoctl7Y+WMnnWkhTOZ5u+9gTaN1N5Axq/i
NfEO7kh1jC3DSpe2R81cvnf547+EN6OJ3e/BHlcOWf+eJL/0fMK5ZRjCigq9
2N6z2e3vPTtzs8PtNXzSt1s8uv5ttyPvnejUlUeinHirLS/7lJZhcjyTYKFj
lQZ6arRYHvSuALwTI/r9erjR3hv4d+DFsxa+H4Yh5WrDP5kdLWH/qczYXvEP
yZH9xS6CatqcGUEak2kguXyOocPzdddEhU55cDeol6zO+l8slx8/rAhWO55X
F6E5HVV+TDZC9NR6pzD/CbpJ/tHothXvVYPmNzknjgRS0XqjfhimhXzVfUxn
X0zwuHd47ih2zv2XfkbC+sHmJKPRXENu7UBapw0K0C6lpiz27c7bdMT+xdsy
tEeBXUtObZP9XdNx17XoeIMq632R++1tqzq6Qv21ZfnDdoQzOn/JSrUQSXV8
yfyroR9wyUzh1d2rhPHGiViwvUJUxdY2eqNu1+Xt3tWfMtk6Kxhxj0UXMX7v
7pesZ4/PiHy40ZXtufIXX+RfVAcuUtpg9/Xekft2r5jV3dUd18/Rhj0VKaT1
S2pldbxqHZOwp36Yd2vyvUmx+b7jrzRzV1lltxn7lzj/v58xSbeNPvWvIh0C
928oB9XRUQTcYEsDL4sZG7SLWYQ/e2nPmyt19VzJ9Mt2tW7Q9F5iVZykuLFu
h3ul2uD6u7N2kQ9779UUA5NmCt9hw/fTkkmaocg6Dd5KzqWYcFWrRl66UuG7
krAlv7CVNUPTGwNpplqQSUBGEDbKMrR1Jiu6weXeLsQvTE/lupn3TvGktO+8
TUvOc0ymi1TfBW8ed0n32PicXu4hJdDl7vB6JbcoBJKfEp5Mpxj95BfM0A21
iq5/DYNSYPwOtuDFTlOb/f/yP15wFApBuLJD5MdVN00Cq1trLVVtMKJg6g6Z
XPFkWUhtMJovvSZeClbhlO+K1GFCVgm0NC8I93L8TX+PNjbLnl+YQlXyJtq7
iZfM8VVTVUNQ5k1mFxkBTRd6ektvMcHbc7z2ES75rz+czLCO09pxSPiG+68R
wrOTi5PNvalFp+doNFKTZHo7wA3GL7rQsz/uUT1HuuatTqbmrT58K484l4o3
yUU9dZ9Q2akVZsBLZvNtmSxnxb1c67zEO25FY+/kOVe8g4HvHmoBeTL6sShn
o7sn40fjWuK541lRj/uRpTdiYaSyKKtP1Qm/E0kz0upPOi/X6i8Nf6Gbuera
lExDxfwUlnbGcUH6zznemz1WC+w3XjfebV4G+J8pSp2rhqX4KRjwWHQftqwe
+P2rJv87tvx2ii2W1ICA/F+DAbrvy7YAAA==

-->

</rfc>

