<?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-03" category="std">

  <front>
    <title abbrev="Framework and YANG of OTN Slices">Framework and Data Model for OTN Network Slicing</title>

    <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="S." surname="Belotti" fullname="Sergio Belotti">
      <organization>Nokia</organization>
      <address>
        <email>Sergio.belotti@nokia.com</email>
      </address>
    </author>
    <author initials="R." surname="Rokui" fullname="Reza Rokui">
      <organization>Ciena</organization>
      <address>
        <email>rrokui@ciena.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>IBM Corporation</organization>
      <address>
        <email>xufeng.liu.ietf@gmail.com</email>
      </address>
    </author>

    <date year="2022" month="October" day="22"/>

    
    <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="terminology"><name>Terminology</name>

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in
   BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all
   capitals, as shown here.</t>

<t>The terminology for describing YANG data models is found in
   <xref target="RFC7950"/>.</t>

</section>
<section anchor="prefixes-in-data-node-names"><name>Prefixes in Data Node Names</name>

<t>In this document, names of data nodes and other data model objects
   are prefixed using the standard prefix associated with the
   corresponding YANG imported modules, as shown in <xref target="tab-prefixes"/>.</t>

<texttable title="Prefixes and Corresponding YANG Modules" anchor="tab-prefixes">
      <ttcol align='left'>Prefix</ttcol>
      <ttcol align='left'>YANG Module</ttcol>
      <ttcol align='left'>Reference</ttcol>
      <c>yang</c>
      <c>ietf-yang-types</c>
      <c><xref target="RFC6991"/></c>
      <c>inet</c>
      <c>ietf-inet-types</c>
      <c><xref target="RFC6991"/></c>
      <c>nt</c>
      <c>ietf-network-topology</c>
      <c><xref target="RFC8345"/></c>
      <c>nw</c>
      <c>ietf-network-topology</c>
      <c><xref target="RFC8345"/></c>
      <c>tet</c>
      <c>ietf-te-topology</c>
      <c><xref target="RFC8795"/></c>
      <c>te-types</c>
      <c>ietf-te-types</c>
      <c><xref target="RFC8776"/></c>
      <c>otnt</c>
      <c>ietf-otn-topology</c>
      <c>[RFCYYYY]</c>
      <c>l1-types</c>
      <c>ietf-layer1-types</c>
      <c>[RFCZZZZ]</c>
      <c>tns</c>
      <c>ietf-transport-network-slice</c>
      <c>RFCXXXX</c>
      <c>otns</c>
      <c>ietf-otn-slice</c>
      <c>RFCXXXX</c>
      <c>otns-mpi</c>
      <c>ietf-otn-slice-mpi</c>
      <c>RFCXXXX</c>
</texttable>

<t>RFC Editor Note:
Please replace XXXX with the RFC number assigned to this document.
Please replace YYYY with the RFC number assigned to <xref target="I-D.ietf-ccamp-otn-topo-yang"/>.
Please replace ZZZZ with the RFC number assigned to <xref target="I-D.ietf-ccamp-layer1-types"/>.
Please remove this note.</t>

</section>
<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 connectivity 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, and their 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-blocking 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>The presence of OTN-SC provides multiple options for a high-level slice controller 
   or an orchestrator to configure and realize slicing in OTN networks, depending on
   whether a customer's slice request is technology agnostic or technology specific:</t>

<t>Option 1[opt.1]: An IETF NSC receives a technology-agnostic slice request from the IETF NSC NBI and
   realizes full or part of the slice in OTN networks directly through MPI provided by
   the PNC or MDSC. The IETF NSC is responsible for mapping a technology-agnostic slicing request 
   into an OTN technology-specific realization. In this option, the OTN-SC is not used.</t>

<t>Option 2[opt.2]: An IETF NSC receives a technology-agnostic slice request from the IETF NSC NBI and delegates the
   request to the OTN-SC through the OTN-SC NBI, which is OTN technology specific. The OTN-SC in turn realizes the slice in single or multi domain OTN networks by working with the underlying PNC or MDSC. In this option, the OTN-SC is considered as a realization of IETF NSC, i.e.,
   an NS realizer as per <xref target="I-D.draft-contreras-teas-slice-controller-models"/>,
   when the underlying network is OTN. The OTN-SC is also a subordinate slice controller of the IETF NSC, which 
   is consistent with the hierarchical control of slices defined by the IETF network slice framework.</t>

<t>Option 3[opt.3]: An OTN-aware orchestrator may request an OTN technology-specific slice with OTN-specific SLOs through the 
   OTN-SC NBI to the OTN-SC. The OTN-SC in turn realizes the slice in single or multi domain OTN networks by working with the underlying PNC or MDSC</t>

<t>An OTN slice may be realized by using standard MPI interfaces, control plane, network management system (NMS) or any other proprietary interfaces as needed. Examples of such interfaces include the abstract TE topology <xref target="RFC8795"/>, TE tunnel <xref target="I-D.ietf-teas-yang-te"/>,L1VPN<xref target="RFC4847"/>, or Netconf/YANG based interfaces such as OpenConfig. Some of these interfaces, such as the TE tunnel model, are suitable for creating connectivity-based OTN slices which represent a slice as a set of TE tunnels, while other interfaces such as the TE topology model are more suitable for creating resource-based OTN slices which represent a slice as a topology.</t>

<t>The OTN-SC NBI is a technology-specific interface that augments the IETF NSC NBI, which is technology-
   agnostic.</t>

<t><xref target="fig-slice-interfaces"/> illustrates the OTN slicing control hierarchy 
   , the positioning of the OTN slicing interfaces as well as the options for OTN slice configuration.</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 |
                    |       +-----+---------------+---------+
                    | opt.3       | opt.2         | opt.1
                    | 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 to the 
   ACTN control framework <xref target="RFC8453"/>, an OTN-SC may be deployed</t>

<t><list style="symbols">
  <t>as an independent network function;</t>
  <t>together with a Physical Network Controller (PNC) for single-domain
 or with a Multi-Domain Service Orchestrator (MDSC)for multi-domain;</t>
  <t>together with a higher-level network slice controller to support 
 end-to-end network slicing;</t>
</list></t>

</section>
<section anchor="realizing-otn-slices"><name>Realizing OTN Slices</name>

<t><xref target="I-D.ietf-teas-ietf-network-slices"/> introduces a mechanism for an IETF network slice controller to realize network slices by constructing Network Resource Partitions (NRP). A NRP is a collection of resources identified in the underlay network to facilitate the mapping of network slices onto available network resources. An NRP is a scope view of a topology and may be considered as a topology in its own right. Thus, in traffic-engineered (TE) networks including OTN, an NRP may be simply represented as an abstract TE topology defined by <xref target="RFC8795"/>. For OTN networks, An NRP may be represented as an abstract OTN topology defined by <xref target="I-D.ietf-ccamp-otn-topo-yang"/>.</t>

<t>The NRP may be used to address the scalability issues where there may be considerable numbers of control and data plane states required to be stored and programmed if network slices are mapped directly to the underlay topology. NRP is internal to a network slice controller, and use of NRPs is optional yet could benefit a network slice realization in large-scale networks, including OTN networks.</t>

<t>For connectivity-based OTN slices, a connection within an OTN slice is typically realized by an OTN tunnel in the underlay topology and resources are reserved by the tunnel, thus use of NRP is optional in this case.</t>

<t>For resource-based OTN slices, the OTN-SC may map an OTN slice directly onto the underlay TE topology presented by the subtended network controller (MDSC or PNC) without creating NRP topologies. Due to the need for reserving resources, the OTN-SC needs to color corresponding link resources of the underlay topology with a slice identifier and maintain the coloring to keep track of the mapping of OTN slices. The OTN-SC may push the colored topology to the subtended MDSC or PNC using the MPI model defined in this draft.</t>

<t>Alternatively, an OTN slice may be mapped to a NRP as an overlay abstract OTN TE topology on top of the underlay topology. The corresponding link resources allocated to the slice is encapsulated in and tracked by the abstract topology, and a given link or port in the NRP topology represents resources that are reserved in the underlay topology. Multiple OTN slices may be mapped to the same NRP, and a single connectivity construct of the slice may be mapped to only one NRP, as per <xref target="I-D.ietf-teas-ietf-network-slices"/>. The resources of an NRP topology are reserved and shared by all the OTN slices mapped to this NRP, and the NRP topology may be pushed directly to the subtended MDSC or PNC, thus eliminating the need for link coloring if using the underlay topology.</t>

<t><xref target="fig-otn-sc-nrp"/> illustrates the relationship between OTN slices and NRP.</t>

<figure title="Mapping OTN Slices to NRP" anchor="fig-otn-sc-nrp"><artwork><![CDATA[
        /---------------/      |            /---------------/
       /  --     --    /       |           /  --     --    /
      /  |N1|---|N3|  /---/    |          /  |N2|   |N3|  /
     /    --\    --  /   /     |         /    --     --  /
    /        \--    /   /      |        /       \ --/   /
   /         |N2|  /   /       |       /         |N4|  /
  / Slice 1   --  /   /        |      / Slice 2   --  /
 /------------<--/   /         |     /-----------<---/
    / Slice 3 <     /          |                 <
   /--------- <-<--/           |                 <
+-------------<-<--------------V-----------------<------------+
|          /--<-<------------/             /-----<-----------/|
|         / /--\     /--\   /             /          /--\   / |
|        / |NE1 |---|NE2 | /             /          |NE2 | /  |
|       /   \--/\  . \--/ /             /            \--/ /   |
|      /       ..\ ........            /              /. /    |
|     /        . /--\   / .           / /--\     /--\/ ./     |
|    /         .|NE4 | /  .          / |NE3 |---|NE4 | .      |
|   /          . \--/ /   .         /   \--/  .  \--/ /.      |
|  /  NRP Topology 1 /    .        /  NRP Topology 2 / .      |
| /------------.----/     .       /-----------.-----/  .      |
|              .......    .                   .        .      |
|             /------.----.-----------------/ .        .      |
|            / /--\  .    .     /--\       /  .        .      |
|           / |NE1 |-.----v----|NE2 |     /   .        .      |
|          /   ---/\ .         /\--/     /    .        .      |
|         /   /     \v        /<........................      |
|        / /-/\      \ /--\  /         /      .               |
|       / |NE3 |------|NE4 |/         /       .               |
|      /   \--/  ^     \--/          /        .               |
|     /  Underlay.OTN TE Topology   /         .               |
|    /-----------.-----------------/          .               |
|                ..............................     OTN-SC    |
+-------------------------------------------------------------+
                 |                         ^
                 |MPI                      |MPI
+----------------V--------------------------------------------+
|                                                             |
|                       OTN MDSC/PNC                          |
+-------------------------------------------------------------+
]]></artwork></figure>

</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 MPI tree diagram" anchor="fig-otn-slice-mpi-tree"><artwork><![CDATA[
module: ietf-otn-slice-mpi

  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 MPI YANG model" anchor="fig-otn-slice-mpi-yang"><artwork><![CDATA[
   <CODE BEGINS> file "ietf-otn-slice-mpi@2022-10-12.yang"
   module ietf-otn-slice-mpi {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-otn-slice-mpi";
     prefix "otns-mpi";

     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 "otnt";
       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: Sergio Belotti
                <mailto:sergio.belotti@nokia.com>";

     description
       "This module defines a YANG data model for network slice
        realization in Optical Transport Networks (OTN).

        The model fully conforms to the Network Management Datastore
        Architecture (NMDA).

        Copyright (c) 2022 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 Revised 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 "2022-10-12" {
       description
         "Latest revision of MPI YANG model for OTN slicing.";
       reference
         "draft-ietf-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/"
          + "otnt: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:</t>

<t><list style="symbols">
  <t>Common attributes, which include a set of common attributes like slice identifier,
name, description, and names of customers who use the slice.</t>
  <t>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.</t>
  <t>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 connectivity path traversing the topology, and allow sharing of 
 resources between its multiple endpoint pairs.</t>
  <t>Connectivity matrix, which represent the intended virtual connections between the endpoints
 within a TNS. A connectivity matrix entry could be associated with an explicit path 
 over the above network topology.</t>
  <t>Service-level objectives (SLOs) associated with different objects, including the TNS, 
 node, link, termination point, and explicit path, within a TNS.</t>
</list></t>

<t>The OTN slicing model further augments the common TNS model with OTN technology-specific
   SLO/SLE attributes upon requesting slice services by an OTN-aware customer. These attributes
   allows the customer to specify desired signal quality and bandwidth in terms of OTN signal
   structure. These attributes include:</t>

<t><list style="symbols">
  <t>The performance objective for Optical Data Unit (ODU) containers as defined in
ITU-T-G.8201-Amd.1.</t>
  <t>Bandwidth specification in the type and number of ODU containers.</t>
</list></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

  augment /ietf-nss:network-slice-services/ietf-nss:slice-service:
    +--rw network-topologies
       +--rw network-topology* [topology-id]
          +--rw topology-id                     string
          +--rw (slo-sle-policy)?
          |  +--:(standard)
          |  |  +--rw slo-sle-template?         leafref
          |  +--:(custom)
          |     +--rw service-slo-sle-policy
          |        +--rw policy-description?       string
          |        +--rw metric-bounds
          |        |  +--rw metric-bound* [metric-type]
          |        |     +--rw metric-type          identityref
          |        |     +--rw metric-unit          string
          |        |     +--rw value-description?   string
          |        |     +--rw bound?               uint64
          |        +--rw security*                 identityref
          |        +--rw isolation?                identityref
          |        +--rw max-occupancy-level?      uint8
          |        +--rw mtu?                      uint16
          |        +--rw steering-constraints
          |        |  +--rw path-constraints
          |        |  +--rw service-function
          |        |  +--rw disjointness?
          |        |  |       te-types:te-path-disjointness
          |        |  +--rw service-info?       string
          |        +--rw optimization-criterion?   identityref
          |        +--rw delay-tolerance?          boolean
          |        +--rw periodicity*              uint64
          |        +--rw resize-requirement?       identityref
          |        +--rw service-info?             string
          +--rw node* [node-id]
          |  +--rw node-id                         inet:uri
          |  +--rw (slo-sle-policy)?
          |  |  +--:(standard)
          |  |  |  +--rw slo-sle-template?         leafref
          |  |  +--:(custom)
          |  |     +--rw service-slo-sle-policy
          |  |        +--rw policy-description?       string
          |  |        +--rw metric-bounds
          |  |        |  +--rw metric-bound* [metric-type]
          |  |        |     +--rw metric-type          identityref
          |  |        |     +--rw metric-unit          string
          |  |        |     +--rw value-description?   string
          |  |        |     +--rw bound?               uint64
          |  |        +--rw security*                 identityref
          |  |        +--rw isolation?                identityref
          |  |        +--rw max-occupancy-level?      uint8
          |  |        +--rw mtu?                      uint16
          |  |        +--rw steering-constraints
          |  |        |  +--rw path-constraints
          |  |        |  +--rw service-function
          |  |        +--rw optimization-criterion?   identityref
          |  |        +--rw delay-tolerance?          boolean
          |  |        +--rw periodicity*              uint64
          |  |        +--rw resize-requirement?       identityref
          |  |        +--rw service-info?             string
          |  +--rw termination-point* [tp-id]
          |     +--rw tp-id                           inet:uri
          |     +--rw sdp-id?                         leafref
          |     +--rw (slo-sle-policy)?
          |        +--:(standard)
          |        |  +--rw slo-sle-template?         leafref
          |        +--:(custom)
          |           +--rw service-slo-sle-policy
          |              +--rw policy-description?       string
          |              +--rw metric-bounds
          |              |  +--rw metric-bound* [metric-type]
          |              |     +--rw metric-type          identityref
          |              |     +--rw metric-unit          string
          |              |     +--rw value-description?   string
          |              |     +--rw bound?               uint64
          |              +--rw security*                 identityref
          |              +--rw isolation?                identityref
          |              +--rw max-occupancy-level?      uint8
          |              +--rw mtu?                      uint16
          |              +--rw steering-constraints
          |              |  +--rw path-constraints
          |              |  +--rw service-function
          |              +--rw optimization-criterion?   identityref
          |              +--rw delay-tolerance?          boolean
          |              +--rw periodicity*              uint64
          |              +--rw resize-requirement?       identityref
          |              +--rw service-info?             string
          +--rw link* [link-id]
             +--rw link-id                         inet:uri
             +--rw (slo-sle-policy)?
             |  +--:(standard)
             |  |  +--rw slo-sle-template?         leafref
             |  +--:(custom)
             |     +--rw service-slo-sle-policy
             |        +--rw policy-description?       string
             |        +--rw metric-bounds
             |        |  +--rw metric-bound* [metric-type]
             |        |     +--rw metric-type          identityref
             |        |     +--rw metric-unit          string
             |        |     +--rw value-description?   string
             |        |     +--rw bound?               uint64
             |        +--rw security*                 identityref
             |        +--rw isolation?                identityref
             |        +--rw max-occupancy-level?      uint8
             |        +--rw mtu?                      uint16
             |        +--rw steering-constraints
             |        |  +--rw path-constraints
             |        |  +--rw service-function
             |        |  +--rw disjointness?
             |        |  |       te-types:te-path-disjointness
             |        |  +--rw service-info?       string
             |        +--rw optimization-criterion?   identityref
             |        +--rw delay-tolerance?          boolean
             |        +--rw periodicity*              uint64
             |        +--rw resize-requirement?       identityref
             |        +--rw service-info?             string
             +--rw source
             |  +--rw source-node?   -> ../../../node/node-id
             |  +--rw source-tp?     leafref
             +--rw destination
                +--rw dest-node?   -> ../../../node/node-id
                +--rw dest-tp?     leafref
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:connectivity-construct:
    +--rw topology-id?     leafref
    +--rw explicit-path* [tp-id]
       +--rw tp-id    leafref
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy:
    +--rw optimization-criterion?   identityref
    +--rw delay-tolerance?          boolean
    +--rw periodicity*              uint64
    +--rw resize-requirement?       identityref
    +--rw service-info?             string
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy
            /ietf-nss:steering-constraints:
    +--rw disjointness?   te-types:te-path-disjointness
    +--rw service-info?   string
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy:
    +--rw optimization-criterion?   identityref
    +--rw delay-tolerance?          boolean
    +--rw periodicity*              uint64
    +--rw resize-requirement?       identityref
    +--rw service-info?             string
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy
            /ietf-nss:steering-constraints:
    +--rw disjointness?   te-types:te-path-disjointness
    +--rw service-info?   string
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:connectivity-construct/ietf-nss:slo-sle-policy
            /ietf-nss:custom/ietf-nss:service-slo-sle-policy:
    +--rw optimization-criterion?   identityref
    +--rw delay-tolerance?          boolean
    +--rw periodicity*              uint64
    +--rw resize-requirement?       identityref
    +--rw service-info?             string
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:connectivity-construct/ietf-nss:slo-sle-policy
            /ietf-nss:custom/ietf-nss:service-slo-sle-policy
            /ietf-nss:steering-constraints:
    +--rw disjointness?   te-types:te-path-disjointness
    +--rw service-info?   string
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:connectivity-construct
            /ietf-nss:connectivity-construct-type/ietf-nss:a2a
            /ietf-nss:a2a-sdp/ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy:
    +--rw optimization-criterion?   identityref
    +--rw delay-tolerance?          boolean
    +--rw periodicity*              uint64
    +--rw resize-requirement?       identityref
    +--rw service-info?             string
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:connectivity-construct
            /ietf-nss:connectivity-construct-type/ietf-nss:a2a
            /ietf-nss:a2a-sdp/ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy
            /ietf-nss:steering-constraints:
    +--rw disjointness?   te-types:te-path-disjointness
    +--rw service-info?   string
]]></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@2022-10-12.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: Common YANG Data Types";
     }

     import ietf-te-types {
       prefix "te-types";
       reference
         "RFC 8776: Traffic Engineering Common YANG Types";
     }

     import ietf-network-slice-service {
       prefix "ietf-nss";
       reference
         "draft-ietf-teas-ietf-network-slice-nbi-yang-00:
          IETF Network Slice Service YANG Model";
     }
 
     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: Sergio Belotti
                <mailto:sergio.belotti@nokia.com>";

     description
       "This module defines a base YANG data model for configuring
        generic network slices in optical transport networks, e.g.,
        Optical Transport Network (OTN).

        The model fully conforms to the Network Management Datastore
        Architecture (NMDA).

        Copyright (c) 2022 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 Revised 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 "2022-10-12" {
       description
         "Latest revision of NBI YANG model for OTN slicing.";
       reference
         "draft-ietf-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.";
     }

     identity resize-option {
       description
         "Base identity for link or connectivity resizing options";
     }
 
     identity resize-none {
       base resize-option;
       description
         "Not resizable";
     }
 
     identity resize-with-hit {
       base resize-option;
       description
         "Resizable with traffic hits";
     }

     identity resize-hitless {
       base resize-option;
       description
         "Hitless resizable";
     }
 
     /*
      * Groupings
      */

     grouping tns-slo-sle-policy {
       description
         "Policy grouping for Transport Network Slices.";

       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 resize-requirement {
         type identityref {
           base resize-option;
         }
         description
           "Indicates resizing requirments";
       }
       leaf service-info {
         type string;
         description
           "Describe type of services running on the slice. It may be
            useful information to help the slice controller to 
            optimize resource allocation";
       }
     }

     grouping tns-steering-constraints {
       description
         "Policy grouping for specifying steering constraints for
          Transport Network Slices.";

       leaf disjointness {
         type te-types:te-path-disjointness;
         description
           "Indicate the level of disjointness for slice
            resources.";
       }
       leaf service-info {
         type string;
         description
           "Describe type of services running on the slice. It may be
            useful information to help the slice controller to 
            optimize resource allocation";
       }
     }

     grouping network-topology-def {
       description
         "Network topology definition";
       uses ietf-nss:service-slo-sle-policy;
       list node {
         key "node-id";
         description
         "The inventory of nodes of this topology.";
         leaf node-id {
           type inet:uri;
           description
             "Node identifier.";
         }
         uses ietf-nss:service-slo-sle-policy;
         list termination-point {
           key "tp-id";
           description
             "TP identifier";
           leaf tp-id {
             type inet:uri;
             description
               "Termination point identifier.";
           }
           leaf sdp-id {
             type leafref {
               path "/ietf-nss:network-slice-services"+
                    "/ietf-nss:slice-service"+
                    "[ietf-nss:service-id=current()"+
                    "/../../../../../ietf-nss:service-id]"+
                    "/ietf-nss:sdps/ietf-nss:sdp/ietf-nss:sdp-id";
             }
             description
               "Relative reference to SDP id.";
           }
           uses ietf-nss:service-slo-sle-policy;
         }
       }
       list link {
         key "link-id";
         description
           "Link identifier.";
         leaf link-id {
           type inet:uri;
           description
             "Link identifier.";
         }
         uses ietf-nss:service-slo-sle-policy;
         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.";
           }
         }
       }
     }

     grouping topology-ref {
       description
         "Grouping for network topology reference.";
       leaf topology-id {
         type leafref {
           path "../../../../network-topologies/network-topology"+
                "/topology-id";
         }
         description
           "Relative reference to network topology id.";
       }
       uses explicit-path;
     }

     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 "/ietf-nss:network-slice-services"+
                  "/ietf-nss:slice-service"+
                  "[ietf-nss:service-id=current()"+
                  "/../../../../../ietf-nss:service-id]"+
                  "/network-topologies"+
                  "/network-topology[topology-id=current()"+
                  "/../../topology-id]/node/termination-point"+
                  "/tp-id";
           }
           description
             "Relative reference to TP id.";
         }
       }
     }

     /*
      * Augmented data nodes
      */
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" {
       description
         "Augment IETF network slice services to include network
          topologies.";
       container network-topologies {
         description
           "Set of network topologies referenced by network slices";

         list network-topology {
           key "topology-id";
           description
             "List of network topologies";
           leaf topology-id {
             type string;
             description
               "Topology identifier";
           }
           uses network-topology-def;
         }
       }
     }
     
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:connectivity-construct"{
       description
         "Add toplogy id and explicit path to a connectivity
          construct";
       uses topology-ref;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
          "Augment IETF network slice services to include technology-
           specific SLO/SLE policy for connectivity-based transport 
          network slices.";
  
       uses tns-slo-sle-policy;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" + 
             "/ietf-nss:steering-constraints" {
       description
         "Augment IETF network slice services to include steering
         constraints for connectivity-based transport network
         slices.";
          
       uses tns-steering-constraints;
     }

     /* network topology augments */
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for the network topology of a
          resource-based transport network slice.";
          
       uses tns-slo-sle-policy;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" + 
             "/tns:steering-constraints" {
       description
         "Augment IETF network slice services to include steering
          constraints for links within a resource-based transport
          network slice.";
          
       uses tns-steering-constraints;
     }     

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:node" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for nodes within a resource-based
          transport network slice.";
          
       uses tns-slo-sle-policy;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:node" + 
             "/tns:termination-point" +
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for termination points within a
          resource-based transport network slice.";
          
       uses tns-slo-sle-policy;
     }
     
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:link" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for links within a resource-based
          transport network slice.";
          
       uses tns-slo-sle-policy;
     }
     
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:link" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" + 
             "/tns:steering-constraints" {
       description
         "Augment IETF network slice services to include steering
          constraints for links within a resource-based transport
          network slice.";
          
       uses tns-steering-constraints;
     }     

     /* connectivity construct augments */
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for connectivity-constructs within
          a connectivity-based transport network slice.";
       uses tns-slo-sle-policy;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" + 
             "/ietf-nss:steering-constraints" {
       description
         "Augment IETF network slice services to include steering
         constraints for connectivity-constructs within a
         connectivity-based transport network slice.";
       uses tns-steering-constraints;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:connectivity-construct" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for connectivity-constructs within
          a connectivity-based transport network slice.";
       uses tns-slo-sle-policy;
     }
     
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:connectivity-construct" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" + 
             "/ietf-nss:steering-constraints" {
       description
         "Augment IETF network slice services to include steering
         constraints for connectivity-constructs within a
         connectivity-based transport network slice.";
       uses tns-steering-constraints;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:connectivity-construct" +
             "/ietf-nss:connectivity-construct-type" +
             "/ietf-nss:a2a" +
             "/ietf-nss:a2a-sdp" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for a2a connectivity-constructs
          within a connectivity-based transport network slice.";
       uses tns-slo-sle-policy;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:connectivity-construct" +
             "/ietf-nss:connectivity-construct-type" +
             "/ietf-nss:a2a" +
             "/ietf-nss:a2a-sdp" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" + 
             "/ietf-nss:steering-constraints" {
       description
         "Augment IETF network slice services to include steering
         constraints for a2a connectivity-constructs within a
         connectivity-based transport network slice.";
       uses tns-steering-constraints;
     }
   }
   <CODE ENDS>
]]></artwork></figure>

</section>
<section anchor="nbi-yang-model-tree-for-otn-slice"><name>NBI YANG Model Tree for OTN slice</name>

<figure title="Tree diagram for OTN slice" anchor="fig-ietf-otn-slice"><artwork><![CDATA[
module: ietf-otn-slice

  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /tns:network-topologies/tns:network-topology
            /tns:slo-sle-policy/tns:custom
            /tns:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /tns:network-topologies/tns:network-topology/tns:node
            /tns:slo-sle-policy/tns:custom
            /tns:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /tns:network-topologies/tns:network-topology/tns:node
            /tns:termination-point/tns:slo-sle-policy/tns:custom
            /tns:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /tns:network-topologies/tns:network-topology/tns:link
            /tns:slo-sle-policy/tns:custom
            /tns:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:connectivity-construct/ietf-nss:slo-sle-policy
            /ietf-nss:custom/ietf-nss:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
  augment /ietf-nss:network-slice-services/ietf-nss:slice-service
            /ietf-nss:connection-groups/ietf-nss:connection-group
            /ietf-nss:connectivity-construct
            /ietf-nss:connectivity-construct-type/ietf-nss:a2a
            /ietf-nss:a2a-sdp/ietf-nss:slo-sle-policy/ietf-nss:custom
            /ietf-nss:service-slo-sle-policy:
    +--rw otn
       +--rw odu-signal-quality
       |  +--rw odu-pm-objective* [duration pm-type]
       |     +--rw duration        identityref
       |     +--rw pm-type         identityref
       |     +--rw pm-threshold?   union
       +--rw odulist* [odu-type]
          +--rw odu-type    identityref
          +--rw number?     uint16
]]></artwork></figure>

</section>
<section anchor="nbi-yang-code-for-otn-slice"><name>NBI YANG Code for OTN Slice</name>

<figure title="YANG model for transport network slice" anchor="fig-ietf-otn-slice-yang"><artwork><![CDATA[
   <CODE BEGINS> file "ietf-otn-slice@2022-10-12.yang"
   module ietf-otn-slice {
     yang-version 1.1;
     namespace
       "urn:ietf:params:xml:ns:yang:ietf-otn-slice";
     prefix "otns";

     import ietf-te-types {
       prefix "te-types";
       reference
         "RFC 8776: Traffic Engineering Common YANG Types";
     }

     import ietf-layer1-types {
       prefix "l1-types";
       reference
         "draft-ietf-ccamp-layer1-types-14: 
          A YANG Data Model for Layer 1 Types";
     }

     import ietf-network-slice-service {
       prefix "ietf-nss";
       reference
         "draft-ietf-teas-ietf-network-slice-nbi-yang-00:
          IETF Network Slice Service YANG Model";
     }
     
     import ietf-transport-network-slice {
       prefix "tns";
       reference
         "draft-ietf-ccamp-yang-otn-slicing-02:
          Framework and Data Model for OTN Network Slicing";
     }
     
     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: Sergio Belotti
                <mailto:sergio.belotti@nokia.com>";

     description
       "This module defines a YANG data model for configuring 
        technology-specific network slices in optical transport
        networks, e.g., Optical Transport Network (OTN).

        The model fully conforms to the Network Management Datastore
        Architecture (NMDA).

        Copyright (c) 2022 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 Revised 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 "2022-10-12" {
       description
         "Latest revision of NBI YANG model for OTN slicing.";
       reference
         "draft-ietf-ccamp-yang-otn-slicing-03: Framework and Data
          Model for OTN Network Slicing";
     }


     /*
      * Identities
      */
     identity bit-error-rate {
       base ietf-nss:service-slo-metric-type;
       description
         "ODU bit error rate";
     }

     identity odu-tca-threshold-type {
       description
         "Base identity for ODU performance counter";
     }
     
     identity odu-bbe {
       base odu-tca-threshold-type;
       description
         "ODU Background Block Error (BBE) threshold";
     }
     
     identity odu-es {
       base odu-tca-threshold-type;
       description
         "ODU Errored Seconds (ES) threshold";
     }
     
     identity odu-ses {
       base odu-tca-threshold-type;
       description
         "ODU Severely Errored Seconds (SES) threshold";
     }

     identity odu-uas {
       base odu-tca-threshold-type;
       description
         "ODU Unavailable Seconds (UAS) threshold";
     }

     identity odu-ber {
       base odu-tca-threshold-type;
       description
         "ODU Bit Error Rate (BER) threshold";
     }

     identity pm-duration {
       description
         "Base identity for ODU performance monitoring interval";
     }
     
     identity pm-15m {
       base pm-duration;
       description
         "15 minuites pm duration";
     }

     identity pm-24h {
       base pm-duration;
       description
         "24 hours pm duration";
     }

     /*
      * Groupings
      */
     grouping odu-signal-quality {
       description
         "Grouping for ODU signal quality.";
 
       container odu-signal-quality {
         description
           "Contianer for ODU signal quality attributes.";
   
         list odu-pm-objective {
           key "duration pm-type";
           description
             "List of ODU performance requirements.";
           leaf duration {
             type identityref {
               base pm-duration;
             }
             description
               "Time duration.";
           }
           leaf pm-type {
             type identityref {
               base odu-tca-threshold-type;
             }
             description
               "ODU PM metric type.";
           }
           
           leaf pm-threshold {
             type union {
               type te-types:bandwidth-scientific-notation;
               type uint64;
             }
             description
               "ODU PM metric threshold.";
           }
         }
       }
     }

     grouping otn-slice-slo-sle-policy {
       description
         "Policy grouping for OTN network slices.";

       container otn {
         description
           "OTN technology-specific SLO/SLE policy container";
   
         uses odu-signal-quality;
         uses l1-types:otn-link-bandwidth;
       }
     }

     /*
      * Augmented data nodes
      */
     /* slice augments */
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for connectivity-based OTN
          slices.";
          
       uses otn-slice-slo-sle-policy;
     }

     /* network topology augments */
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for the network topology of a
          resource-based OTN slice.";
          
       uses otn-slice-slo-sle-policy;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:node" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for nodes within a resource-based
          OTN slice.";
          
       uses otn-slice-slo-sle-policy;
     }
     
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:node" + 
             "/tns:termination-point" +
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for termination points within a
          resource-based OTN slice.";
          
       uses otn-slice-slo-sle-policy;
     }
     
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/tns:network-topologies" + 
             "/tns:network-topology" + 
             "/tns:link" + 
             "/tns:slo-sle-policy" + 
             "/tns:custom" + 
             "/tns:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for links within a resource-based
          OTN slice.";
          
       uses otn-slice-slo-sle-policy;
     }
     
     /* connectivity construct augments */
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for connectivity-constructs within
          a connectivity-based transport network slice.";
       uses otn-slice-slo-sle-policy;
     }

     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:connectivity-construct" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for connectivity-constructs within
          a connectivity-based transport network slice.";
       uses otn-slice-slo-sle-policy;
     }
     
     augment "/ietf-nss:network-slice-services" +
             "/ietf-nss:slice-service" +
             "/ietf-nss:connection-groups" +
             "/ietf-nss:connection-group" +
             "/ietf-nss:connectivity-construct" +
             "/ietf-nss:connectivity-construct-type" +
             "/ietf-nss:a2a" +
             "/ietf-nss:a2a-sdp" +
             "/ietf-nss:slo-sle-policy" + 
             "/ietf-nss:custom" + 
             "/ietf-nss:service-slo-sle-policy" {
       description
         "Augment IETF network slice services to include technology-
          specific SLO/SLE policy for a2a connectivity-constructs
          within a connectivity-based transport network slice.";
       uses otn-slice-slo-sle-policy;
     }
   }

   <CODE ENDS>
]]></artwork></figure>

</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>The YANG module specified in this document defines a schema for data
   that is designed to be accessed via network management protocols such
   as NETCONF <xref target="RFC6241"/> or RESTCONF <xref target="RFC8040"/>.  The lowest NETCONF layer
   is the secure transport layer, and the mandatory-to-implement secure
   transport is Secure Shell (SSH) <xref target="RFC6242"/>.  The lowest RESTCONF layer
   is HTTPS, and the mandatory-to-implement secure transport is TLS
   <xref target="RFC8446"/>.</t>

<t>The NETCONF access control model <xref target="RFC8341"/> provides the means to
   restrict access for particular NETCONF or RESTCONF users to a
   preconfigured subset of all available NETCONF or RESTCONF protocol
   operations and content.</t>

<t>There are a number of data nodes defined in this YANG module that are
   writable/creatable/deletable (i.e., config true, which is the
   default).  These data nodes may be considered sensitive or vulnerable
   in some network environments.  Write operations (e.g., edit-config)
   to these data nodes without proper protection can have a negative
   effect on network operations.  Considerations in Section 8 of
   <xref target="RFC8795"/> are also applicable to their subtrees in the module defined
   in this document.</t>

<t>Some of the readable data nodes in this YANG module may be considered
   sensitive or vulnerable in some network environments.  It is thus
   important to control read access (e.g., via get, get-config, or
   notification) to these data nodes.  Considerations in Section 8 of
   <xref target="RFC8795"/> are also applicable to their subtrees in the module defined
   in this document.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>It is proposed to IANA to assign new URIs from the "IETF XML
   Registry" <xref target="RFC3688"/> as follows:</t>

<figure><artwork><![CDATA[
   URI: urn:ietf:params:xml:ns:yang:ietf-transport-network-slice
   Registrant Contact: The IESG
   XML: N/A; the requested URI is an XML namespace.

   URI: urn:ietf:params:xml:ns:yang:ietf-otn-slice
   Registrant Contact: The IESG
   XML: N/A; the requested URI is an XML namespace.
]]></artwork></figure>

<t>This document registers a YANG module in the YANG Module Names
   registry <xref target="RFC6020"/>.</t>

<figure><artwork><![CDATA[
   name: ietf-transport-network-slice
   namespace: urn:ietf:params:xml:ns:yang:ietf-transport-network-slice
   prefix: tns
   reference: RFC XXXX

   name: ietf-otn-slice
   namespace: urn:ietf:params:xml:ns:yang:ietf-otn-slice
   prefix: otns
   reference: RFC XXXX

   name: ietf-otn-slice-mpi
   namespace: urn:ietf:params:xml:ns:yang:ietf-otn-slice-mpi
   prefix: otns-mpi
   reference: RFC XXXX
]]></artwork></figure>

</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="GSMA-NS-Template" target="https://www.gsma.com/newsroom/wp-content/uploads//NG.116-v5.0-7.pdf">
  <front>
    <title>Generic Network Slice Template, Version 5.0</title>
    <author >
      <organization>GSMA Association</organization>
    </author>
    <date year="2021" month="June"/>
  </front>
  <seriesInfo name="NG.116" value=""/>
</reference>
<reference anchor="ITU-T-G.8201-Amd.1" target="https://www.itu.int/rec/T-REC-G.8201">
  <front>
    <title>Error performance parameters and objectives for multi-operator international paths within optical transport networks (Amendment 1)</title>
    <author >
      <organization>ITU Telecommunication Standardization Sector (ITU-T)</organization>
    </author>
    <date year="2021" month="December"/>
  </front>
  <seriesInfo name="ITU-T G.8201 (2011) Amd. 1" value=""/>
</reference>




<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author fullname='S. Bradner' initials='S.' surname='Bradner'><organization/></author>
<date month='March' year='1997'/>
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference anchor='RFC8174' target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author fullname='B. Leiba' initials='B.' surname='Leiba'><organization/></author>
<date month='May' year='2017'/>
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>



<reference anchor='RFC7950' target='https://www.rfc-editor.org/info/rfc7950'>
<front>
<title>The YANG 1.1 Data Modeling Language</title>
<author fullname='M. Bjorklund' initials='M.' role='editor' surname='Bjorklund'><organization/></author>
<date month='August' year='2016'/>
<abstract><t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols.  This document describes the syntax and semantics of version 1.1 of the YANG language.  YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification.  There are a small number of backward incompatibilities from YANG version 1.  This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t></abstract>
</front>
<seriesInfo name='RFC' value='7950'/>
<seriesInfo name='DOI' value='10.17487/RFC7950'/>
</reference>



<reference anchor='RFC6991' target='https://www.rfc-editor.org/info/rfc6991'>
<front>
<title>Common YANG Data Types</title>
<author fullname='J. Schoenwaelder' initials='J.' role='editor' surname='Schoenwaelder'><organization/></author>
<date month='July' year='2013'/>
<abstract><t>This document introduces a collection of common data types to be used with the YANG data modeling language.  This document obsoletes RFC 6021.</t></abstract>
</front>
<seriesInfo name='RFC' value='6991'/>
<seriesInfo name='DOI' value='10.17487/RFC6991'/>
</reference>



<reference anchor='RFC8345' target='https://www.rfc-editor.org/info/rfc8345'>
<front>
<title>A YANG Data Model for Network Topologies</title>
<author fullname='A. Clemm' initials='A.' surname='Clemm'><organization/></author>
<author fullname='J. Medved' initials='J.' surname='Medved'><organization/></author>
<author fullname='R. Varga' initials='R.' surname='Varga'><organization/></author>
<author fullname='N. Bahadur' initials='N.' surname='Bahadur'><organization/></author>
<author fullname='H. Ananthakrishnan' initials='H.' surname='Ananthakrishnan'><organization/></author>
<author fullname='X. Liu' initials='X.' surname='Liu'><organization/></author>
<date month='March' year='2018'/>
<abstract><t>This document defines an abstract (generic, or base) YANG data model for network/service topologies and inventories.  The data model serves as a base model that is augmented with technology-specific details in other, more specific topology and inventory data models.</t></abstract>
</front>
<seriesInfo name='RFC' value='8345'/>
<seriesInfo name='DOI' value='10.17487/RFC8345'/>
</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>



<reference anchor='RFC8776' target='https://www.rfc-editor.org/info/rfc8776'>
<front>
<title>Common YANG Data Types for Traffic Engineering</title>
<author fullname='T. Saad' initials='T.' surname='Saad'><organization/></author>
<author fullname='R. Gandhi' initials='R.' surname='Gandhi'><organization/></author>
<author fullname='X. Liu' initials='X.' surname='Liu'><organization/></author>
<author fullname='V. Beeram' initials='V.' surname='Beeram'><organization/></author>
<author fullname='I. Bryskin' initials='I.' surname='Bryskin'><organization/></author>
<date month='June' year='2020'/>
<abstract><t>This document defines a collection of common data types and groupings in YANG data modeling language. These derived common types and groupings are intended to be imported by modules that model Traffic Engineering (TE) configuration and state capabilities.</t></abstract>
</front>
<seriesInfo name='RFC' value='8776'/>
<seriesInfo name='DOI' value='10.17487/RFC8776'/>
</reference>


<reference anchor='I-D.ietf-ccamp-otn-topo-yang'>
   <front>
      <title>A YANG Data Model for Optical Transport Network Topology</title>
      <author fullname='Haomian Zheng' initials='H.' surname='Zheng'>
         <organization>Huawei Technologies</organization>
      </author>
      <author fullname='Italo Busi' initials='I.' surname='Busi'>
         <organization>Huawei Technologies</organization>
      </author>
      <author fullname='Xufeng Liu' initials='X.' surname='Liu'>
         <organization>IBM Corporation</organization>
      </author>
      <author fullname='Sergio Belotti' initials='S.' surname='Belotti'>
         <organization>Nokia</organization>
      </author>
      <author fullname='Oscar Gonzalez de Dios' initials='O. G.' surname='de Dios'>
         <organization>Telefonica</organization>
      </author>
      <date day='11' month='July' year='2022'/>
      <abstract>
	 <t>   This document describes a YANG data model to describe the topologies
   of an Optical Transport Network (OTN).  It is independent of control
   plane protocols and captures topological and resource related
   information pertaining to OTN.  This model enables clients, which
   interact with a transport domain controller, for OTN topology related
   operations such as obtaining the relevant topology resource
   information.


	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-ccamp-otn-topo-yang-15'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-ccamp-otn-topo-yang-15.txt' type='TXT'/>
</reference>


<reference anchor='I-D.ietf-ccamp-layer1-types'>
   <front>
      <title>A YANG Data Model for Layer 1 Types</title>
      <author fullname='Haomian Zheng' initials='H.' surname='Zheng'>
         <organization>Huawei Technologies</organization>
      </author>
      <author fullname='Italo Busi' initials='I.' surname='Busi'>
         <organization>Huawei Technologies</organization>
      </author>
      <date day='11' month='July' year='2022'/>
      <abstract>
	 <t>   This document defines a collection of common data types and groupings
   in the YANG data modeling language for use with layer 1 networks.
   These derived common types and groupings are intended to be imported
   by modules that specify OTN networks, such as topology, tunnel,
   client signal adaptation and service.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-ccamp-layer1-types-14'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-ccamp-layer1-types-14.txt' type='TXT'/>
</reference>


<reference anchor='I-D.ietf-teas-ietf-network-slices'>
   <front>
      <title>Framework for IETF Network Slices</title>
      <author fullname='Adrian Farrel' initials='A.' surname='Farrel'>
         <organization>Old Dog Consulting</organization>
      </author>
      <author fullname='John Drake' initials='J.' surname='Drake'>
         <organization>Juniper Networks</organization>
      </author>
      <author fullname='Reza Rokui' initials='R.' surname='Rokui'>
         <organization>Ciena</organization>
      </author>
      <author fullname='Shunsuke Homma' initials='S.' surname='Homma'>
         <organization>NTT</organization>
      </author>
      <author fullname='Kiran Makhijani' initials='K.' surname='Makhijani'>
         <organization>Futurewei</organization>
      </author>
      <author fullname='Luis M. Contreras' initials='L. M.' surname='Contreras'>
         <organization>Telefonica</organization>
      </author>
      <author fullname='Jeff Tantsura' initials='J.' surname='Tantsura'>
         <organization>Microsoft Inc.</organization>
      </author>
      <date day='21' month='October' year='2022'/>
      <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-15'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-teas-ietf-network-slices-15.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>


<reference anchor='I-D.draft-contreras-teas-slice-controller-models'>
   <front>
      <title>IETF Network Slice Controller and its associated data models</title>
      <author fullname='Luis M. Contreras' initials='L. M.' surname='Contreras'>
         <organization>Telefonica</organization>
      </author>
      <author fullname='Reza Rokui' initials='R.' surname='Rokui'>
         <organization>Ciena</organization>
      </author>
      <author fullname='Jeff Tantsura' initials='J.' surname='Tantsura'>
         <organization>Microsoft</organization>
      </author>
      <author fullname='Bo Wu' initials='B.' surname='Wu'>
         <organization>Huawei</organization>
      </author>
      <author fullname='Xufeng Liu' initials='X.' surname='Liu'>
         <organization>IBM Corporation</organization>
      </author>
      <author fullname='Dhruv Dhody' initials='D.' surname='Dhody'>
         <organization>Huawei</organization>
      </author>
      <author fullname='Sergio Belotti' initials='S.' surname='Belotti'>
         <organization>Nokia</organization>
      </author>
      <date day='11' month='July' year='2022'/>
      <abstract>
	 <t>   This document describes the major functional components of an IETF
   Network Slice Controller (NSC) as well as references the data models
   required for supporting the requests of IETF network slices and their
   realization.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-contreras-teas-slice-controller-models-03'/>
   <format target='https://www.ietf.org/archive/id/draft-contreras-teas-slice-controller-models-03.txt' type='TXT'/>
</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' initials='T.' surname='Saad'>
         <organization>Juniper Networks</organization>
      </author>
      <author fullname='Rakesh Gandhi' initials='R.' surname='Gandhi'>
         <organization>Cisco Systems Inc</organization>
      </author>
      <author fullname='Xufeng Liu' initials='X.' surname='Liu'>
         <organization>IBM Corporation</organization>
      </author>
      <author fullname='Vishnu Pavan Beeram' initials='V. P.' surname='Beeram'>
         <organization>Juniper Networks</organization>
      </author>
      <author fullname='Igor Bryskin' initials='I.' surname='Bryskin'>
         <organization>Individual</organization>
      </author>
      <author fullname='Oscar Gonzalez de Dios' initials='O. G.' surname='de Dios'>
         <organization>Telefonica</organization>
      </author>
      <date day='11' month='July' year='2022'/>
      <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 covers data that is independent of
   any technology or dataplane encapsulation and is divided into two
   YANG modules that cover device-specific, and device independent data.

   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-30'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-teas-yang-te-30.txt' type='TXT'/>
</reference>



<reference anchor='RFC4847' target='https://www.rfc-editor.org/info/rfc4847'>
<front>
<title>Framework and Requirements for Layer 1 Virtual Private Networks</title>
<author fullname='T. Takeda' initials='T.' role='editor' surname='Takeda'><organization/></author>
<date month='April' year='2007'/>
<abstract><t>This document provides a framework and service level requirements for Layer 1 Virtual Private Networks (L1VPNs).  This framework is intended to aid in developing and standardizing protocols and mechanisms to support interoperable L1VPNs.</t><t>The document examines motivations for L1VPNs, high level (service level) requirements, and outlines some of the architectural models that might be used to build L1VPNs.  This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='4847'/>
<seriesInfo name='DOI' value='10.17487/RFC4847'/>
</reference>



<reference anchor='RFC6241' target='https://www.rfc-editor.org/info/rfc6241'>
<front>
<title>Network Configuration Protocol (NETCONF)</title>
<author fullname='R. Enns' initials='R.' role='editor' surname='Enns'><organization/></author>
<author fullname='M. Bjorklund' initials='M.' role='editor' surname='Bjorklund'><organization/></author>
<author fullname='J. Schoenwaelder' initials='J.' role='editor' surname='Schoenwaelder'><organization/></author>
<author fullname='A. Bierman' initials='A.' role='editor' surname='Bierman'><organization/></author>
<date month='June' year='2011'/>
<abstract><t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices.  It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages.  The NETCONF protocol operations are realized as remote procedure calls (RPCs).  This document obsoletes RFC 4741.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6241'/>
<seriesInfo name='DOI' value='10.17487/RFC6241'/>
</reference>



<reference anchor='RFC8040' target='https://www.rfc-editor.org/info/rfc8040'>
<front>
<title>RESTCONF Protocol</title>
<author fullname='A. Bierman' initials='A.' surname='Bierman'><organization/></author>
<author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'><organization/></author>
<author fullname='K. Watsen' initials='K.' surname='Watsen'><organization/></author>
<date month='January' year='2017'/>
<abstract><t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t></abstract>
</front>
<seriesInfo name='RFC' value='8040'/>
<seriesInfo name='DOI' value='10.17487/RFC8040'/>
</reference>



<reference anchor='RFC6242' target='https://www.rfc-editor.org/info/rfc6242'>
<front>
<title>Using the NETCONF Protocol over Secure Shell (SSH)</title>
<author fullname='M. Wasserman' initials='M.' surname='Wasserman'><organization/></author>
<date month='June' year='2011'/>
<abstract><t>This document describes a method for invoking and running the Network Configuration Protocol (NETCONF) within a Secure Shell (SSH) session as an SSH subsystem.  This document obsoletes RFC 4742.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6242'/>
<seriesInfo name='DOI' value='10.17487/RFC6242'/>
</reference>



<reference anchor='RFC8446' target='https://www.rfc-editor.org/info/rfc8446'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
<author fullname='E. Rescorla' initials='E.' surname='Rescorla'><organization/></author>
<date month='August' year='2018'/>
<abstract><t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t><t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t></abstract>
</front>
<seriesInfo name='RFC' value='8446'/>
<seriesInfo name='DOI' value='10.17487/RFC8446'/>
</reference>



<reference anchor='RFC8341' target='https://www.rfc-editor.org/info/rfc8341'>
<front>
<title>Network Configuration Access Control Model</title>
<author fullname='A. Bierman' initials='A.' surname='Bierman'><organization/></author>
<author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'><organization/></author>
<date month='March' year='2018'/>
<abstract><t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) or the RESTCONF protocol requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability.  There is a need for standard mechanisms to restrict NETCONF or RESTCONF protocol access for particular users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content.  This document defines such an access control model.</t><t>This document obsoletes RFC 6536.</t></abstract>
</front>
<seriesInfo name='STD' value='91'/>
<seriesInfo name='RFC' value='8341'/>
<seriesInfo name='DOI' value='10.17487/RFC8341'/>
</reference>



<reference anchor='RFC3688' target='https://www.rfc-editor.org/info/rfc3688'>
<front>
<title>The IETF XML Registry</title>
<author fullname='M. Mealling' initials='M.' surname='Mealling'><organization/></author>
<date month='January' year='2004'/>
<abstract><t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t></abstract>
</front>
<seriesInfo name='BCP' value='81'/>
<seriesInfo name='RFC' value='3688'/>
<seriesInfo name='DOI' value='10.17487/RFC3688'/>
</reference>



<reference anchor='RFC6020' target='https://www.rfc-editor.org/info/rfc6020'>
<front>
<title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
<author fullname='M. Bjorklund' initials='M.' role='editor' surname='Bjorklund'><organization/></author>
<date month='October' year='2010'/>
<abstract><t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6020'/>
<seriesInfo name='DOI' value='10.17487/RFC6020'/>
</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>

<t>The authors would like to thank Adrian Farrel, Danielle Ceccarelli,
   Igor Bryskin, Bo Wu, Gyan Mishra, Joel M. Halpen, Dhruv Dhoddy and Loa Andersson
   for providing valuable insights.</t>

</section>

    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
        <name>Contributors</name>
    <contact 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>
    </contact>
    <contact initials="I." surname="Busi" fullname="Italo Busi">
      <organization>Huawei Technologies</organization>
      <address>
        <email>italo.busi@huawei.com</email>
      </address>
    </contact>
    <contact initials="O." surname="Gonzalez de Dios" fullname="Oscar Gonzalez de Dios">
      <organization>Telefonica</organization>
      <address>
        <email>oscar.gonzalezdedios@telefonica.com</email>
      </address>
    </contact>
    <contact initials="V." surname="Lopez" fullname="Victor Lopez">
      <organization>Nokia</organization>
      <address>
        <email>victor.lopez@nokia.com</email>
      </address>
    </contact>
    <contact initials="D." surname="Beller" fullname="Dieter Beller">
      <organization>Nokia</organization>
      <address>
        <email>Dieter.Beller@nokia.com</email>
      </address>
    </contact>
    <contact initials="H." surname="Yu" fullname="Henry Yu">
      <organization>Huawei Technologies Canada</organization>
      <address>
        <email>henry.yu@huawei.com</email>
      </address>
    </contact>
    <contact initials="J." surname="Sun" fullname="Jiang Sun">
      <organization>China Mobile</organization>
      <address>
        <email>sunjiang@chinamobile.com</email>
      </address>
    </contact>
    </section>

  </back>

<!-- ##markdown-source:
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
/wP9IJfNNFUBAA==

-->

</rfc>

