Network Working Group                                              B. Wu
Internet-Draft                                                  D. Dhody
Intended status: Standards Track                     Huawei Technologies
Expires: August 25, 2021                                          L. Han
                                                            China Mobile
                                                                R. Rokui
                                                                   Nokia
                                                       February 21, 2021


              A Yang Data Model for IETF Network Slice NBI
              draft-wd-teas-ietf-network-slice-nbi-yang-02

Abstract

   This document provides a YANG data model for the IETF Network Slice
   NBI (Northbound Interface).  The model can be used by a higher level
   system to request configuration, and management IETF Network Slices
   from the IETF Network Slice Controller (NSC).

   The YANG modules in this document conforms to the Network Management
   Datastore Architecture (NMDA) defined in RFC 8342.

Status of This Memo

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

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

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

   This Internet-Draft will expire on August 25, 2021.

Copyright Notice

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

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of



Wu, et al.               Expires August 25, 2021                [Page 1]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Conventions used in this document . . . . . . . . . . . . . .   3
     2.1.  Tree Diagrams . . . . . . . . . . . . . . . . . . . . . .   4
   3.  IETF Network Slice NBI Model Usage  . . . . . . . . . . . . .   4
   4.  IETF Network Slice NBI Model Overview . . . . . . . . . . . .   5
   5.  IETF Network Slice Templates  . . . . . . . . . . . . . . . .   8
   6.  IETF Network Slice Modeling Description . . . . . . . . . . .   9
     6.1.  IETF Network Slice Topology . . . . . . . . . . . . . . .  10
     6.2.  IETF Network Slice SLO Policy . . . . . . . . . . . . . .  10
     6.3.  IETF Network Slice Endpoint (NSE) . . . . . . . . . . . .  12
   7.  IETF Network Slice Monitoring . . . . . . . . . . . . . . . .  15
   8.  IETF Network Slice NBI Module . . . . . . . . . . . . . . . .  16
   9.  Security Considerations . . . . . . . . . . . . . . . . . . .  31
   10. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  31
   11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  32
   12. References  . . . . . . . . . . . . . . . . . . . . . . . . .  32
     12.1.  Normative References . . . . . . . . . . . . . . . . . .  32
     12.2.  Informative References . . . . . . . . . . . . . . . . .  33
   Appendix A.  IETF Network Slice NBI Model Usage Example . . . . .  34
   Appendix B.  Comparison with Other Possible Design choices for
                IETF Network Slice NBI . . . . . . . . . . . . . . .  36
     B.1.  ACTN VN Model Augmentation  . . . . . . . . . . . . . . .  37
     B.2.  RFC8345 Augmentation Model  . . . . . . . . . . . . . . .  37
   Appendix C.  Appendix B IETF Network Slice Match Criteria . . . .  38
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  39

1.  Introduction

   This document provides a YANG [RFC7950] data model for the IETF
   Network Slice NBI.

   The YANG model discussed in this document is defined based on the
   description of the IETF Network Slice in
   [I-D.ietf-teas-ietf-network-slice-definition] and
   [I-D.nsdt-teas-ns-framework], which is used to operate IETF Network
   Slice during the IETF Network Slice instantiation.  This YANG model
   supports various oprations on IETF Network Slices such as creation,
   modification, deletion, and monitoring of IETF Network Slices.




Wu, et al.               Expires August 25, 2021                [Page 2]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   The IETF Network Slice Controller (NSC) provides a Northbound
   Interface (NBI) that allows consumers of network slices to request
   and monitor IETF network slices.  Consumers operate on abstract IETF
   network slices, with details related to their realization hidden.

   The NSC takes requests from a management system or other application
   via an NBI.  This interface carries data objects the IETF network
   slice user provides, describing the needed IETF network slices in
   terms of topology, applicable service level objectives (SLO), and any
   monitoring and reporting requirements that may apply.  The NBI
   conveys the generic IETF network slice requirements.  These may then
   be realized using an SBI within the NSC.

   The YANG model discussed in this document describes the requirements
   of an IETF Network Slice from the point of view of the consumer,
   which is classified as Customer Service Model in [RFC8309].

   It will be up to the management system or NSC (IETF Network Slice
   controller) to take this model as an input and use other management
   system or specific configuration models to configure the different
   network elements to deliver an IETF Network Slice.  The YANG models
   can be used with network management protocols such as NETCONF
   [RFC6241] or RESTCONF [RFC8040].  The details of how the IETF network
   slices are realized by the NSC is out of scope for this document.

   The IETF Network Slice operational state is included in the same tree
   as the configuration consistent with Network Management Datastore
   Architecture [RFC8342].

2.  Conventions used in this document

   The keywords "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
   BCP14, [RFC2119], [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

   The following terms are defined in [RFC6241] and are used in this
   specification:

   o  client

   o  configuration data

   o  state data

   This document makes use of the following terminology introduced in
   the YANG 1.1 Data Modeling Language [RFC7950]:



Wu, et al.               Expires August 25, 2021                [Page 3]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   o  augment

   o  data model

   o  data node

   This document also makes use of the following terminology introduced
   in the IETF Network Slice definition draft
   [I-D.ietf-teas-ietf-network-slice-definition]:

   o  NBI: Northbound Interface

   o  NS: IETF Network Slice

   o  NSC: IETF Network Slice Controller

   o  NSE: Network Slice Endpoint

   o  SLO: Service Level Objective

   This document defines the following new terminology:

   o  IETF Network Slice Member (Network-Slice-Member): In the context
      of an IETF Network Slice, an IETF Network-Slice-Member is an
      abstract entity which represents a particular connection between a
      pair of NSEs.  An IETF Network Slice can has one or multiple
      members.

2.1.  Tree Diagrams

   Tree diagrams used in this document follow the notation defined in
   [RFC8340].

3.  IETF Network Slice NBI Model Usage

   The intention of the IETF Network Slice NBI model is to allow the
   consumer, e.g. a higher level management system, to request and
   monitor IETF Network Slices.  In particular, the model allows
   consumers to operate in an abstract, technology-agnostic manner, with
   realization details hidden.

   According to the [I-D.ietf-teas-ietf-network-slice-definition]
   description, the NBI model is applicable to use case such as (but not
   limited to) Network wholesale services, Network infrastructure
   sharing among operators, NFV connectivity and Data Center
   Interconnect and 5G E2E network slice.





Wu, et al.               Expires August 25, 2021                [Page 4]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   As Figure 1 shows, in all these use-cases, the NBI model is used by
   the higher management system (i.e the consumer of the IETF network
   slice controller ) to communicate with IETF Network Slice controller
   for life cycle manage of IETF Network Slices including both
   enablement and monitoring.  For example, in 5G E2E network slicing
   use-case the E2E network slice orchestrator acts as the higher layer
   system to request the IETF Network Slices.  The interface is used to
   support dynamic IETF Network Slice creation and its lifecycle
   management to facilitate end-to-end network slice services.

             +----------------------------------------+
             |   IETF Network Slice Consumer          |
             |                                        |
             +----------------+-----------------------+
                              |
                              |
                              |IETF Network Slice NBI YANG
                              |
        +---------------------+--------------------------+
        |      IETF Network Slice Controller (NSC)       |
        +------------------------------------------------+

              Figure 1: IETF Network Slice NBI Model Context

4.  IETF Network Slice NBI Model Overview

   As defined in [I-D.ietf-teas-ietf-network-slice-definition], an IETF
   network slice is a logical network connecting a number of endpoints
   with specified SLOs.  The connectivity can be point-to-point,
   multipoint-to-point, point-to-multipoint or multipoint-to-multipoint.
   In addition, a minimum set of SLOs is defined, including but not
   limited to bandwidth, delay, and etc.  An example of an IETF network
   slice is shown in Figure 2 .


















Wu, et al.               Expires August 25, 2021                [Page 5]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


          +----------------------------------------------+
          |                                              |
     NSE1 O------------------+                           |
          .                  +---------------------------O NSE2
          .                  |                           .
          .                  |multipoint-to-multipoint   .
                             |
                             +---------------------------O NSEn
     NSEm O------------------+                           |
          |                                              |
          +----------------------------------------------+

          |                                              |
          |<-----------An IETF Network Slice  ---------->|
          |        between endpoints NSE1 to NSEn        |

    Legend:
         NSE: IETF Network Slice Endpoint
           O: Represents IETF Network Slice Endpoints

                  Figure 2: An IETF Network Slice Example

   Draft [I-D.ietf-teas-ietf-network-slice-definition] introduces the
   IETF network slice endpoints (NSEs) which are conceptual points of
   connection to IETF network slice.  As such, they are ingress/egress
   point where the traffic enters/exits the IETF network slice.  In
   other words, they are the edge of the IETF network slices.

   When IETF network slice controller (NSC) receives a message via its
   NBI for creation/modification of an IETF network slice, it uses the
   provided IETF network slice endpoints to map them to appropriate
   services/tunnels/paths endpoints in the underlay IETF network.  It
   then uses services/tunnels/paths endpoints to realize the IETF
   network slice.

   The IETF Network Slice ("ietf-network-slice") is defined to manage
   network slices in the IETF network.  In particular, the 'ietf-
   network-slice' module can be used to create, modify, and monitor
   network slices of an IETF network.

   The 'ietf-network-slice' module uses two main nodes: list 'ietf-
   network-slice' and container 'ns-templates' (see Figure 3).

   The 'ietf-network-slice' list includes the set of IETF Network slices
   managed within IETF network. 'ietf-network-slice' is the data
   structure that abstracts an IETF Network Slice.  Under the "ietf-
   network-slice", list "ns-endpoint" is used to abstract the NSEs, e.g.
   NSEs in the example above.



Wu, et al.               Expires August 25, 2021                [Page 6]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   The 'ns-templates' container is used by the NSC to maintain a set of
   common network slice templates that apply to one or several IETF
   Network Slices.

   The figure below describes the overall structure of the YANG module:

   module: ietf-network-slice
     +--rw ietf-network-slices
        +--rw ns-templates
        |  +--rw slo-template* [id]
        |     +--rw id                      string
        |     +--rw template-description?   string
        +--rw ietf-network-slice* [ns-id]
           +--rw ns-id                 string
           +--rw ns-description?       string
           +--rw ns-tag*               string
           +--rw ns-topology?          identityref
           +--rw (ns-slo-policy)?
           |  +--:(standard)
           |  |  +--rw slo-template?   leafref
           |  +--:(custom)
           |     +--rw slo-policy
           |        +--rw policy-description?   string
           |        +--rw ns-metric-bounds
           |           +--rw ns-metric-bound* [metric-type]
           |              +--rw metric-type          identityref
           |              +--rw metric-unit          string
           |              +--rw value-description?   string
           |              +--rw boundary?            uint64
           +--rw status
           |  +--rw admin-enabled?   boolean
           |  +--ro oper-status?     operational-type
           +--rw ns-endpoint* [ep-id]
           |  +--rw ep-id                string
           |  +--rw ep-description?      string
           |  +--rw ep-role?             identityref
           |  +--rw location
           |  |  +--rw altitude?    int64
           |  |  +--rw latitude?    decimal64
           |  |  +--rw longitude?   decimal64
           |  +--rw node-id?             string
           |  +--rw ep-ip?               inet:host
           |  +--rw ns-match-criteria
           |  |  +--rw ns-match-criteria* [match-type]
           |  |     +--rw match-type    identityref
           |  |     +--rw value?        string
           |  +--rw ep-network-access* [network-access-id]
           |  |  +--rw network-access-id             string



Wu, et al.               Expires August 25, 2021                [Page 7]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


           |  |  +--rw network-access-description?   string
           |  |  +--rw network-access-node-id?       string
           |  |  +--rw network-access-tp-id?         string
           |  |  +--rw network-access-tp-ip?         inet:host
           |  +--rw ep-rate-limit
           |  |  +--rw incoming-throughput
           |  |  |  +--rw maximum-throughput?   te-types:te-bandwidth
           |  |  +--rw outgoing-throughput
           |  |     +--rw maximum-throughput?   te-types:te-bandwidth
           |  +--rw ep-protocol
           |  +--rw status
           |  |  +--rw admin-enabled?   boolean
           |  |  +--ro oper-status?     operational-type
           |  +--ro ep-monitoring
           |     +--ro incoming-utilized-bandwidth?
           |     |       te-types:te-bandwidth
           |     +--ro incoming-bw-utilization        decimal64
           |     +--ro outgoing-utilized-bandwidth?
           |     |       te-types:te-bandwidth
           |     +--ro outgoing-bw-utilization        decimal64
           +--rw ns-member* [ns-member-id]
              +--rw ns-member-id             uint32
              +--rw ns-member-description?   string
              +--rw src
              |  +--rw src-ep-id?   leafref
              +--rw dest
              |  +--rw dest-ep-id?   leafref
              +--rw monitoring-type?         ns-monitoring-type
              +--ro ns-member-monitoring
                 +--ro latency?      yang:gauge64
                 +--ro jitter?       yang:gauge32
                 +--ro loss-ratio?   decimal64


                                 Figure 3

5.  IETF Network Slice Templates

   The 'ns-templates' container (Figure 3) is used by service provider
   of the NSC to define and maintain a set of common IETF Network Slice
   templates that apply to one or several IETF Network Slices.  The
   exact definition of the templates is deployment specific to each
   network provider.  The model includes only the identifiers of SLO-
   templates.  When creation of IETF Network slice, the SLO policies can
   be easily identified.

   The following shows an example where two network slice templates can
   be retrieved by the upper layer management system:



Wu, et al.               Expires August 25, 2021                [Page 8]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   {
     "ietf-network-slices": {
       "ns-templates": {
         "slo-template": [
          {
            "id":"GOLD-template",
            "template-description": "Bandwidth: 1 Gbps, delay 100ms "
           },
          {
            "id":"PLATINUM-template",
            "template-description": "Bandwidth: 1 Gbps, delay 50ms "
           },
          ],
         }
      }
   }

6.  IETF Network Slice Modeling Description

   The 'ietf-network-slice' is the data structure that abstracts an IETF
   Network Slice of the IETF network.  Each 'ietf-network-slice' is
   uniquely identified by an identifier: 'ns-id'.

   An IETF Network Slice has the following main parameters:

   o  "ns-id": Is an identifier that is used to uniquely identify the
      IETF Network Slice within NSC.

   o  "ns-description": May be provided to help identify an IETF Network
      Slice.

   o  "ns-topology": Indicates the network topology for the IETF Network
      Slice: Hub-Spoke, Any-to-Any, and Custom.

   o  "status": Enable the control of the operative and administrative
      status of the IETF Network Slice, can be used as indicator to
      detect network slice anomalies.

   o  "ns-tag": The list is to show the correlation between higher level
      function and the IETF network slices.  If provided, this parameter
      may be used by IETF Network Slice Controller (NSC) during the
      realization.  It may also be used by NSC for monitoring and
      assurance of the IETF network slices where NSC can notify the
      higher system by issuing the notifications.  It is noted that a
      single higher level consumer might have multiple IETF Network
      Slices for a single application.  This attribute may be used by
      NSC to also correlated multiple IETF network slices for a single
      application.



Wu, et al.               Expires August 25, 2021                [Page 9]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   o  "ns-slo-policy": Defines SLO policy for the "ietf-network-slice".
      More description are provided in Section 6.1

   The "ns-endpoint" is an abstrac entity that represents a set of
   matching rules applied to an IETF network edge device or a customer
   network edge device involved in the IETF Network Slice and each 'ns-
   endpoint' belongs to a single 'ietf-network-slice'.  More description
   are provided in Section 6.3

6.1.  IETF Network Slice Topology

   An IETF Network Slice can be point-to-point (P2P), point-to-
   multipoint (P2MP), multipoint-to-point (MP2P), or multipoint-to-
   multipoint (MP2MP) based on the consumer's traffic pattern
   requirements.

   Therefore, the "ns-topology" under the node "ietf-network-slice" is
   required for configuration.  The model supports any-to-any, Hub and
   Spoke (where Hubs can exchange traffic), and the different
   combinations.  New topologies could be added via augmentation.  By
   default, the any-to-any topology is used.

   In addition, "ep-role" under the node "ns-endpoint" also needs to be
   defined, which specifies the role of the NSE in a particular Network
   Slice topology.  In the any-to-any topology, all NSEs MUST have the
   same role, which will be "any-to-any-role".  In the Hub-and-Spoke
   topology, NSEs MUST have a Hub role or a Spoke role.

6.2.  IETF Network Slice SLO Policy

   As defined in [I-D.ietf-teas-ietf-network-slice-definition], the SLO
   policy of an IETF Network Slice defines the minimum IETF Network
   Slice SLO attributes, and additional attributes can be added as
   needed.

   "ns-slo-policy" is used to represent a specific SLO policy.  During
   the creation of an IETF Network Slice, the policy can be specified
   either by a standard SLO template or a customized SLO policy.

   The model allows multiple SLO attributes to be combined to meet
   different SLO requirements.  For example, some NSs are used for video
   services and require high bandwidth, some NSs are used for key
   business services and request low latency and reliability, and some
   NSs need to provide connections for a large number of NSEs.  That is,
   not all SLO attributes must be specified to meet the particular
   requirements of a slice.





Wu, et al.               Expires August 25, 2021               [Page 10]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   "ns-metric-bounds" contains all these variations, which includes a
   list of "ns-metric-bound" and each "ns-metric-bound" could specify a
   particular "metric-type". "metric-type" is defined with YANG identity
   and the YANG module supports the following options:

      "network-slice-slo-bandwidth": Indicates the guaranteed minimum
      bandwidth between any two NSE.  The unit is data rate per second.
      And the bandwidth is unidirectional.

      "network-slice-slo-one-way-delay": Indicates the maximum one-way
      latency between two NSE.  The unit is micro seconds.

      "network-slice-slo-two-way-delay": Indicates the maximum round
      trip latency between two NSE.  The unit is micro seconds.

      "network-slice-slo-jitter": Indicates the jitter constraint of the
      slice maximum permissible delay variation, and is measured by the
      difference in the one- way delay between sequential packets in a
      flow.

      "network-slice-slo-loss": Indicates maximum permissible packet
      loss rate, which is defined by the ratio of packets dropped to
      packets transmitted between two endpoints.

      "network-slice-slo-availability": Is defined as the ratio of up-
      time to total_time(up-time+down-time), where up-time is the time
      the IETF Network Slice is available in accordance with the SLOs
      associated with it.

   Some other Network Slice objectives, such as MTU and security which
   can be added when needed.  MTU specifies the maximum packet length
   that the network slice guarantee to be able to carry across.

   Note: About the definition of SLO parameters, the author is
   discussing to reuse the TE-Types grouping definition as much as
   possible, to avoid duplication of definitions.

   The following shows an example where a network slice policy can be
   configured:












Wu, et al.               Expires August 25, 2021               [Page 11]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   {
     "ietf-network-slices": {
       "ietf-network-slice": {
         "slo-policy": {
           "policy-description":"video-service-policy",
           "ns-metric-bounds": {
               "ns-metric-bound": [
                {
                   "metric-type": "network-slice-slo-bandwidth",
                   "metric-unit": "mbps"
                   "boundary": "1000"
                },
                {
                   "metric-type": "network-slice-slo-availability",
                   "boundary": "99.9%"
                },
               ],
            }
         }
       }
     }
   }

6.3.  IETF Network Slice Endpoint (NSE)

   An IETF Network Slice Endpoint has several characteristics:

   o  "ep-id": Uniquely identifies the NSE within Network Slice
      Controller (NSC).  The identifier is a string that allows any
      encoding for the local administration of the IETF Network Slice.

   o  "location": is NSE location information that facilities NSC easy
      identification of a NSE.

   o  "ep-role": Is a topology role of a NSE belonging to an IETF
      network slice, as described in Section 6.1.  The "ep-role" leaf
      defines the role of the endpoint in a particular NS topology.  In
      the NS any-to-any topology, all NSEs MUST have the same role,
      which will be "any-to-any-role".

   o  "node-id": is NSE node information that facilities NSC easy
      identification of a NSE.

   o  "ep-ip": is NSE IP information that facilities NSC easy
      identification of a NSE.

   o  "ns-match-criteria": Is used to define matching policies to apply
      on a given NSE.



Wu, et al.               Expires August 25, 2021               [Page 12]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   o  "ep-network-access": Is the list that includes the interfaces
      attached to an edge device of the IETF Network Slice by which the
      customer traffic is received.

   o  "ep-rate-limit": Is to set rate-limiting policies to apply on a
      given NSE, including ingress and egress traffic to ensure access
      security.  When applied in the incoming direction, the rate-limit
      is applicable to the traffic from the NSE to the IETF scope
      Network that passes through the external interface.  When
      Bandwidth is applied to the outgoing direction, it is applied to
      the traffic from the IETF Network to the NSE of that particular
      NS.

   o  "ep-protocol": Specify the protocol for a NSE for exchanging
      control-plane information, e.g.  L1 signaling protocol or L3
      routing protocols,etc.

   o  "status": Enable the control of the operative and administrative
      status of the NSE, can be used as indicator to detect NSE
      anomalies.

   An NSE belong to a single IETF Network Slice.  An IETF Network Slice
   involves two or more NSEs.  An IETF Network Slice can be modified by
   adding new "ns-endpoint" or removing existing "ns-endpoint".

   A NSE is used to define the matching rule on the customer traffic
   that can be injected to an IETF Network Slice.  "network-slice-match-
   criteria" is defined to support different options.  Classification
   can be based on many criteria, such as:

   o  Physical interface: Indicates all the traffic received from the
      interface belongs to the IETF Network Slice.

   o  Logical interface: For example, a given VLAN ID is used to
      identify an IETF Network Slice.

   o  Encapsulation in the traffic header: For example, a source IP
      address is used to identify an IETF Network Slice.

   To illustrate the use of NSE parameters, the below are two examples.
   How the NSC realize the mapping is out of scope for this document.

   o  NSE mapping to PE example: As shown in Figure 4 , consumer of the
      IETF network slice would like to connect two NSEs to satisfy
      specific service, e.g., Network wholesale services.  In this case,
      the IETF network slice endpoints are mapped to physical interfaces
      of PE nodes.  The IETF network slice controller (NSC) uses "node-




Wu, et al.               Expires August 25, 2021               [Page 13]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


      id" (PE device ID), "ep-network-access" (Two PE interfaces ) to
      map the interfaces and corresponding services/tunnels/paths.

              NSE1                                     NSE2
       (With PE1 parameters)                       (with PE2 parameters)
               o<--------- IETF Network Slice 1 ------->o
               +     |                            |     +
               +     |<----------- S1 ----------->|     +
               +     |                            |     +
               +     |    |<------ T1 ------>|    |     +
                 +   v    v                  v    v   +
                   + +----+                  +----+ +
    +-----+    |     | PE1|==================| PE2|          +-----+
    |     |----------X    |                  |    |     |    |     |
    |     |    |     |    |                  |    X----------|     |
    |     |----------X    |                  |    |     |    |     |
    +-----+    |     |    |==================|    |     |    +-----+
               AC    +----+                  +----+     AC
    Customer         Provider                Provider        Customer
    Edge 1           Edge 1                  Edge 2           Edge 2


  Legend:
       O: Representation of the IETF network slice endpoints (NSE)
       +: Mapping of NES to PE or CE nodes on IETF network
       X: Physical interfaces used for realization of IETF network slice
       S1: L0/L1/L2/L3 services used for realization of IETF network slice
       T1: Tunnels used for realization of IETF network slice

                                 Figure 4

   o  NSE mapping to CE example: As shown in Figure 5 , consumer of the
      IETF network slice would like to connect two NSEs to provide
      connectivity between transport portion of 5G RAN to 5G Core
      network functions.  In this scenario, the IETF network slice
      endpoints (NSE) might be mapped to tunnels endpoints on CE nodes
      (see 3GPP TS 28.541 V17.1.0 section 6.3.17 EP_Transport).  The
      IETF network slice controller (NSC) uses "node-id" (CE device ID)
      , "ep-ip" (CE tunnel endpoint IP), "network-slice-match-criteria"
      (VLAN interface), "ep-network-access" (Two nexthop interfaces ) to
      map underlay services/tunnels/paths.










Wu, et al.               Expires August 25, 2021               [Page 14]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


              NSE3                                     NSE4
       (With CE1 parameters)                       (with CE2 parameters)
               o<--------- IETF Network Slice 2 ------->o
               +      |                            |    +
               +      |<----------- S2 ----------->|    +
               +      |                            |    +
             +        |    |<------ T2 ------>|    |      +
           +          v    v                  v    v        +
         +     AC     +----+                  +----+          +
    +-----+    |     | PE1|==================| PE2|          +-----+
    |     |----------X    |                  |    |     |    |     |
    |     |    |     |    |                  |    X----------|     |
    |     |----------X    |                  |    |     |    |     |
    +-----+    |     |    |==================|    |     |    +-----+
               AC    +----+                  +----+     AC
    Customer         Provider                Provider         Customer
    Edge 1           Edge 1                  Edge 2           Edge 2


  Legend:
       O: Representation of the IETF network slice endpoints (NSE)
       +: Mapping of NES to PE or CE nodes on IETF network
       X: Physical interfaces used for realization of IETF network slice
       S2: L0/L1/L2/L3 services used for realization of IETF network slice
       T2: Tunnels used for realization of IETF network slice

                                 Figure 5

7.  IETF Network Slice Monitoring

   An IETF Network Slice is a connectivity with specific SLO
   characteristics, including bandwidth, QoS metric, etc.  The
   connectivity is a combination of logical connections, represented by
   Network-Slice-Members.

   This model also describes performance status of an IETF Network
   Slice.  The statistics are described in the following granularity:

   o  Per NS connection: specified in 'network-slice-member-monitoring'
      under the "network-slice-member"

   o  Per NS Endpoint: specified in 'endpoint-monitoring' under the
      "network-slice-endpoint"

   This model does not define monitoring enabling methods.  The
   mechanism defined in [RFC8640] and [RFC8641] can be used for either
   periodic or on-demand subscription.




Wu, et al.               Expires August 25, 2021               [Page 15]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   By specifying subtree filters or xpath filters to 'ns-member' or 'ns-
   endpoint' ,so that only interested contents will be sent.  These
   mechanisms can be used for monitoring the IETF Network Slice
   performance status so that the client management system could
   initiate modification based on the IETF Network Slice running status.

8.  IETF Network Slice NBI Module

<CODE BEGINS> file "ietf-network-slice@2021-02-19.yang"
module ietf-network-slice {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-network-slice";
  prefix ietf-ns;

  import ietf-inet-types {
    prefix inet;
  }
  import ietf-yang-types {
    prefix yang;
    reference
      "RFC 6991: Common YANG Types.";
  }
  import ietf-te-types {
    prefix te-types;
  }

  organization
    "IETF Traffic Engineering Architecture and Signaling (TEAS)
     Working Group";
  contact
    "WG Web:  <https://tools.ietf.org/wg/teas/>
     WG List:  <mailto:teas@ietf.org>
     Editor: Bo Wu <lana.wubo@huawei.com>
           : Dhruv Dhody <dhruv.ietf@gmail.com>";
  description
    "This module contains a YANG module for the IETF Network Slice.

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

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

     This version of this YANG module is part of RFC XXXX; see the



Wu, et al.               Expires August 25, 2021               [Page 16]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


     RFC itself for full legal notices.";

  revision 2021-02-19 {
    description
      "initial version.";
    reference
      "RFC XXXX: A Yang Data Model for IETF Network Slice Operation";
  }

  /* Features */
  /* Identities */

  identity network-slice-topology {
    description
      "Base identity for IETF Network Slice topology.";
  }

  identity any-to-any {
    base network-slice-topology;
    description
      "Identity for any-to-any IETF Network Slice topology.";
  }

  identity hub-spoke {
    base network-slice-topology;
    description
      "Identity for Hub-and-Spoke IETF Network Slice topology.";
  }

  identity custom {
    base network-slice-topology;
    description
      "Identity of a custom NS topology where Hubs
       can act as Spoke for certain parts of
       the network or Spokes as Hubs.";
  }

  identity endpoint-role {
    description
      "Base identity of a NSE role in an IETF Network Slice topology.";
  }

  identity any-to-any-role {
    base endpoint-role;
    description
      "Identity of any-to-any NS.";
  }




Wu, et al.               Expires August 25, 2021               [Page 17]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


  identity spoke-role {
    base endpoint-role;
    description
      "A NSE is acting as a Spoke.";
  }

  identity hub-role {
    base endpoint-role;
    description
      "A NSE is acting as a Hub.";
  }

  identity custom-role {
    base endpoint-role;
    description
      "A NSE is custom role in the NS.";
  }

  identity network-slice-slo-metric-type {
    description
      "Base identity for Network Slice SLO metric type";
  }

  identity network-slice-slo-two-way-delay {
    base network-slice-slo-metric-type;
    description
      "SLO delay metric.";
  }

  identity network-slice-slo-one-way-delay {
    base network-slice-slo-metric-type;
    description
      "SLO delay metric.";
  }

  identity network-slice-slo-jitter {
    base network-slice-slo-metric-type;
    description
      "SLO jitter metric.";
  }

  identity network-slice-slo-loss {
    base network-slice-slo-metric-type;
    description
      "SLO loss metric .";
  }

  identity network-slice-slo-availability {



Wu, et al.               Expires August 25, 2021               [Page 18]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


    base network-slice-slo-metric-type;
    description
      "SLO availability level.";
  }

  identity network-slice-slo-bandwidth {
    base network-slice-slo-metric-type;
    description
      "SLO bandwidth metric.";
  }

  identity network-slice-match-type {
    description
      "Base identity for Network Slice traffic match type";
  }

  identity network-slice-phy-interface-match {
    base network-slice-match-type;
    description
      "VLAN as Network Slice traffic match criteria.";
  }

  identity network-slice-vlan-match {
    base network-slice-match-type;
    description
      "VLAN as Network Slice traffic match criteria.";
  }

  identity network-slice-label-match {
    base network-slice-match-type;
    description
      "Label as Network Slice traffic match criteria.";
  }

  /*
   * Identity for availability-type
   */

  identity availability-type {
    description
      "Base identity from which specific availability
       types are derived.";
  }

  identity level-1 {
    base availability-type;
    description
      "level 1: 99.9999%";



Wu, et al.               Expires August 25, 2021               [Page 19]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


  }

  identity level-2 {
    base availability-type;
    description
      "level 2: 99.999%";
  }

  identity level-3 {
    base availability-type;
    description
      "level 3: 99.99%";
  }

  identity level-4 {
    base availability-type;
    description
      "level 4: 99.9%";
  }

  identity level-5 {
    base availability-type;
    description
      "level 5: 99%";
  }

  /* typedef */

  typedef operational-type {
    type enumeration {
      enum up {
        value 0;
        description
          "Operational status UP.";
      }
      enum down {
        value 1;
        description
          "Operational status DOWN";
      }
      enum unknown {
        value 2;
        description
          "Operational status UNKNOWN";
      }
    }
    description
      "This is a read-only attribute used to determine the



Wu, et al.               Expires August 25, 2021               [Page 20]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


       status of a particular element";
  }

  typedef ns-monitoring-type {
    type enumeration {
      enum one-way {
        description
          "represents one-way monitoring type";
      }
      enum two-way {
        description
          "represents two-way monitoring type";
      }
    }
    description
      "enumerated type of monitoring on a network-slice-member ";
  }

  /* Groupings */

  grouping status-params {
    description
      "Grouping used to join operational and administrative status";
    container status {
      description
        "Container for status of administration and operational";
      leaf admin-enabled {
        type boolean;
        description
          "Administrative Status UP/DOWN";
      }
      leaf oper-status {
        type operational-type;
        config false;
        description
          "Operations status";
      }
    }
  }

  grouping network-slice-match-criteria {
    description
      "Grouping for Network Slice match definition.";
    container ns-match-criteria {
      description
        "Describes Network Slice match criteria.";
      list ns-match-criteria {
        key "match-type";



Wu, et al.               Expires August 25, 2021               [Page 21]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


        description
          "List of Network Slice traffic criteria";
        leaf match-type {
          type identityref {
            base network-slice-match-type;
          }
          description
            "Identifies an entry in the list of match-type for
             the Network Slice.";
        }
        leaf value {
          type string;
          description
            "Describes Network Slice match criteria,e.g. IP address,
             VLAN, etc.";
        }
      }
    }
  }

  grouping network-slice-metric-bounds {
    description
      "Network Slice metric bounds grouping";
    container ns-metric-bounds {
      description
        "Network Slice metric bounds container";
      list ns-metric-bound {
        key "metric-type";
        description
          "List of Network Slice metric bounds";
        leaf metric-type {
          type identityref {
            base network-slice-slo-metric-type;
          }
          description
            "Identifies an entry in the list of metric-types
             bound for the Network Slice.";
        }
        leaf metric-unit {
          type string;
          mandatory true;
          description
            "The metric unit of the parameter.
             For example, s, ms, ns, and so on.";
        }
        leaf value-description {
          type string;
          description



Wu, et al.               Expires August 25, 2021               [Page 22]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


            "The description of previous value. ";
        }
        leaf boundary {
          type uint64;
          default "0";
          description
            "Boundary on network-slice-member metric. A zero indicate
             an unbounded upper limit for the specific metric-type";
        }
      }
    }
  }

  grouping ep-network-accesses {
    description
      "Grouping for endpoint network access definition.";
    list ep-network-access {
      key "network-access-id";
      description
        "IETF Network Slice endpoint network access related parameters";
      leaf network-access-id {
        type string;
        description
          "unique identifier for the referred endpoint network access";
      }
      leaf network-access-description {
        type string;
        description
          "endpoint network access description";
      }
      leaf network-access-node-id {
        type string;
        description
          "EP network access node ID in the case of multi-homing.";
      }
      leaf network-access-tp-id {
        type string;
        description
          "EP network access termination port ID.";
      }
      leaf network-access-tp-ip {
        type inet:host;
        description
          "The IP address of EP network access.";
      }
    }
  }




Wu, et al.               Expires August 25, 2021               [Page 23]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


  grouping endpoint-monitoring-parameters {
    description
      "Grouping for endpoint-monitoring-parameters.";
    container ep-monitoring {
      config false;
      description
        "Container for endpoint-monitoring-parameters.";
      leaf incoming-utilized-bandwidth {
        type te-types:te-bandwidth;
        description
          "Bandwidth utilization that represents the actual
           utilization of the incoming endpoint.";
      }
      leaf incoming-bw-utilization {
        type decimal64 {
          fraction-digits 5;
          range "0..100";
        }
        units "percent";
        mandatory true;
        description
          "To be used to define the bandwidth utilization
           as a percentage of the available bandwidth.";
      }
      leaf outgoing-utilized-bandwidth {
        type te-types:te-bandwidth;
        description
          "Bandwidth utilization that represents the actual
           utilization of the incoming endpoint.";
      }
      leaf outgoing-bw-utilization {
        type decimal64 {
          fraction-digits 5;
          range "0..100";
        }
        units "percent";
        mandatory true;
        description
          "To be used to define the bandwidth utilization
           as a percentage of the available bandwidth.";
      }
    }
  }

  grouping common-monitoring-parameters {
    description
      "Grouping for link-monitoring-parameters.";
    leaf latency {



Wu, et al.               Expires August 25, 2021               [Page 24]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


      type yang:gauge64;
      units "usec";
      description
        "The latency statistics per Network Slice member.
         [RFC2681] and [RFC7679] discuss round trip times and one-way
         metrics, respectively";
    }
    leaf jitter {
      type yang:gauge32;
      description
        "The jitter statistics per Network Slice member
         as defined by [RFC3393].";
    }
    leaf loss-ratio {
      type decimal64 {
        fraction-digits 6;
        range "0 .. 50.331642";
      }
      description
        "Packet loss as a percentage of the total traffic
         sent over a configurable interval. The finest precision is
         0.000003%. where the maximum 50.331642%.";
      reference
        "RFC 7810, section-4.4";
    }
  }

  grouping geolocation-container {
    description
      "A grouping containing a GPS location.";
    container location {
      description
        "A container containing a GPS location.";
      leaf altitude {
        type int64;
        units "millimeter";
        description
          "Distance above the sea level.";
      }
      leaf latitude {
        type decimal64 {
          fraction-digits 8;
          range "-90..90";
        }
        description
          "Relative position north or south on the Earth's surface.";
      }
      leaf longitude {



Wu, et al.               Expires August 25, 2021               [Page 25]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


        type decimal64 {
          fraction-digits 8;
          range "-180..180";
        }
        description
          "Angular distance east or west on the Earth's surface.";
      }
    }
    // gps-location
  }

  // geolocation-container

  grouping endpoint {
    description
      "IETF Network Slice endpoint related information";
    leaf ep-id {
      type string;
      description
        "unique identifier for the referred IETF Network
         Slice endpoint";
    }
    leaf ep-description {
      type string;
      description
        "endpoint name";
    }
    leaf ep-role {
      type identityref {
        base endpoint-role;
      }
      default "any-to-any-role";
      description
        "Role of the endpoint in the IETF Network Slice.";
    }
    uses geolocation-container;
    leaf node-id {
      type string;
      description
        "Uniquely identifies an edge node within the IETF slice
         network.";
    }
    leaf ep-ip {
      type inet:host;
      description
        "The address of the endpoint IP address.";
    }
    uses network-slice-match-criteria;



Wu, et al.               Expires August 25, 2021               [Page 26]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


    uses ep-network-accesses;
    container ep-rate-limit {
      description
        "Container for the asymmetric traffic control";
      container incoming-throughput {
        description
          "Container for the incoming traffic policy";
        leaf maximum-throughput {
          type te-types:te-bandwidth;
          description
            "If maximum-throughput is 0, it means best effort, no
             minimum throughput is guaranteed.";
        }
      }
      container outgoing-throughput {
        description
          "Container for the bandwidth policy";
        leaf maximum-throughput {
          type te-types:te-bandwidth;
          description
            "If maximum-throughput is 0, it means best effort, no
             minimum throughput is guaranteed.";
        }
      }
    }
    container ep-protocol {
      description
        "Describes protocol for the Network Slice Endpoint.";
    }
    uses status-params;
    uses endpoint-monitoring-parameters;
  }

  //network-slice-endpoint

  grouping network-slice-member {
    description
      "network-slice-member is described by this container";
    leaf ns-member-id {
      type uint32;
      description
        "network-slice-member identifier";
    }
    leaf ns-member-description {
      type string;
      description
        "network-slice-member description";
    }



Wu, et al.               Expires August 25, 2021               [Page 27]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


    container src {
      description
        "the source of Network Slice link";
      leaf src-ep-id {
        type leafref {
          path "/ietf-network-slices/ietf-network-slice/"
             + "ns-endpoint/ep-id";
        }
        description
          "reference to source Network Slice endpoint";
      }
    }
    container dest {
      description
        "the destination of Network Slice link ";
      leaf dest-ep-id {
        type leafref {
          path "/ietf-network-slices/ietf-network-slice"
             + "/ns-endpoint/ep-id";
        }
        description
          "reference to dest Network Slice endpoint";
      }
    }
    leaf monitoring-type {
      type ns-monitoring-type;
      description
        "One way or two way monitoring type.";
    }
    container ns-member-monitoring {
      config false;
      description
        "SLO status Per network-slice endpoint to endpoint ";
      uses common-monitoring-parameters;
    }
  }

  //network-slice-member

  grouping slice-template {
    description
      "Grouping for slice-templates.";
    container ns-templates {
      description
        "Contains a set of network slice templates to
         reference in the IETF network slice.";
      list slo-template {
        key "id";



Wu, et al.               Expires August 25, 2021               [Page 28]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


        leaf id {
          type string;
          description
            "Identification of the SLO Template to be used.
             Local administration meaning.";
        }
        leaf template-description {
          type string;
          description
            "Description of the SLO policy template.";
        }
        description
          "List for SLO template identifiers.";
      }
    }
  }

  /* Configuration data nodes */

  container ietf-network-slices {
    description
      "IETF network-slice configurations";
    uses slice-template;
    list ietf-network-slice {
      key "ns-id";
      description
        "a network-slice is identified by a network-slice-id";
      leaf ns-id {
        type string;
        description
          "A unique network-slice identifier across an IETF NSC ";
      }
      leaf ns-description {
        type string;
        description
          "Give more description of the network slice";
      }
      leaf-list ns-tag {
        type string;
        description
          "Network Slice tag for operational management";
      }
      leaf ns-topology {
        type identityref {
          base network-slice-topology;
        }
        default "any-to-any";
        description



Wu, et al.               Expires August 25, 2021               [Page 29]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


          "Network Slice topology.";
      }
      choice ns-slo-policy {
        description
          "Choice for SLO policy template.
           Can be standard template or customized template.";
        case standard {
          description
            "Standard SLO template.";
          leaf slo-template {
            type leafref {
              path "/ietf-network-slices"
                 + "/ns-templates/slo-template/id";
            }
            description
              "Standard SLO template to be used.";
          }
        }
        case custom {
          description
            "Customized SLO template.";
          container slo-policy {
            description
              "Contains the SLO policy.";
            leaf policy-description {
              type string;
              description
                "Description of the SLO policy.";
            }
            uses network-slice-metric-bounds;
          }
        }
      }
      uses status-params;
      list ns-endpoint {
        key "ep-id";
        uses endpoint;
        description
          "list of endpoints in this slice";
      }
      list ns-member {
        key "ns-member-id";
        description
          "List of network-slice-member in a slice";
        uses network-slice-member;
      }
    }
    //ietf-network-slice list



Wu, et al.               Expires August 25, 2021               [Page 30]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


  }
}
<CODE ENDS>

9.  Security Considerations

   The YANG module defined in this document is designed to be accessed
   via network management protocols such as NETCONF [RFC6241] or
   RESTCONF [RFC8040].  The lowest NETCONF layer is the secure transport
   layer, and the mandatory-to-implement secure transport is Secure
   Shell (SSH) [RFC6242].  The lowest RESTCONF layer is HTTPS, and the
   mandatory-to-implement secure transport is TLS [RFC8446].

   The NETCONF access control model [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.

   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.

   o /ietf-network-slice/ietf-network-slices/ietf-network-slice

   The entries in the list above include the whole network
   configurations corresponding with the slice which the higher
   management system requests, and indirectly create or modify the PE or
   P device configurations.  Unexpected changes to these entries could
   lead to service disruption and/or network misbehavior.

10.  IANA Considerations

   This document registers a URI in the IETF XML registry [RFC3688].
   Following the format in [RFC3688], the following registration is
   requested to be made:

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



   This document requests to register a YANG module in the YANG Module
   Names registry [RFC7950].




Wu, et al.               Expires August 25, 2021               [Page 31]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


              Name: ietf-network-slice
              Namespace: urn:ietf:params:xml:ns:yang:ietf-network-slice
              Prefix: ietf-ns
              Reference: RFC XXXX

11.  Acknowledgments

   The authors wish to thank Sergio Belotti, Qin Wu, Susan Hares, Eric
   Grey, and many other NS DT members for their helpful comments and
   suggestions.

12.  References

12.1.  Normative References

   [I-D.ietf-teas-ietf-network-slice-definition]
              Rokui, R., Homma, S., Makhijani, K., Contreras, L., and J.
              Tantsura, "Definition of IETF Network Slices", draft-ietf-
              teas-ietf-network-slice-definition-00 (work in progress),
              January 2021.

   [I-D.nsdt-teas-ns-framework]
              Gray, E. and J. Drake, "Framework for Transport Network
              Slices", draft-nsdt-teas-ns-framework-04 (work in
              progress), July 2020.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
              DOI 10.17487/RFC3688, January 2004,
              <https://www.rfc-editor.org/info/rfc3688>.

   [RFC6241]  Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
              and A. Bierman, Ed., "Network Configuration Protocol
              (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
              <https://www.rfc-editor.org/info/rfc6241>.

   [RFC6242]  Wasserman, M., "Using the NETCONF Protocol over Secure
              Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011,
              <https://www.rfc-editor.org/info/rfc6242>.

   [RFC6991]  Schoenwaelder, J., Ed., "Common YANG Data Types",
              RFC 6991, DOI 10.17487/RFC6991, July 2013,
              <https://www.rfc-editor.org/info/rfc6991>.




Wu, et al.               Expires August 25, 2021               [Page 32]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   [RFC7950]  Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
              RFC 7950, DOI 10.17487/RFC7950, August 2016,
              <https://www.rfc-editor.org/info/rfc7950>.

   [RFC8040]  Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
              Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
              <https://www.rfc-editor.org/info/rfc8040>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8340]  Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams",
              BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018,
              <https://www.rfc-editor.org/info/rfc8340>.

   [RFC8341]  Bierman, A. and M. Bjorklund, "Network Configuration
              Access Control Model", STD 91, RFC 8341,
              DOI 10.17487/RFC8341, March 2018,
              <https://www.rfc-editor.org/info/rfc8341>.

   [RFC8342]  Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
              and R. Wilton, "Network Management Datastore Architecture
              (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018,
              <https://www.rfc-editor.org/info/rfc8342>.

   [RFC8446]  Rescorla, E., "The Transport Layer Security (TLS) Protocol
              Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
              <https://www.rfc-editor.org/info/rfc8446>.

   [RFC8640]  Voit, E., Clemm, A., Gonzalez Prieto, A., Nilsen-Nygaard,
              E., and A. Tripathy, "Dynamic Subscription to YANG Events
              and Datastores over NETCONF", RFC 8640,
              DOI 10.17487/RFC8640, September 2019,
              <https://www.rfc-editor.org/info/rfc8640>.

   [RFC8641]  Clemm, A. and E. Voit, "Subscription to YANG Notifications
              for Datastore Updates", RFC 8641, DOI 10.17487/RFC8641,
              September 2019, <https://www.rfc-editor.org/info/rfc8641>.

12.2.  Informative References

   [I-D.geng-teas-network-slice-mapping]
              Geng, X., Dong, J., Pang, R., Han, L., Niwa, T., Jin, J.,
              Liu, C., and N. Nageshar, "5G End-to-end Network Slice
              Mapping from the view of Transport Network", draft-geng-
              teas-network-slice-mapping-02 (work in progress), July
              2020.



Wu, et al.               Expires August 25, 2021               [Page 33]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   [I-D.ietf-teas-actn-vn-yang]
              Lee, Y., Dhody, D., Ceccarelli, D., Bryskin, I., and B.
              Yoon, "A YANG Data Model for VN Operation", draft-ietf-
              teas-actn-vn-yang-10 (work in progress), November 2020.

   [I-D.liu-teas-transport-network-slice-yang]
              Liu, X., Tantsura, J., Bryskin, I., Contreras, L., WU, Q.,
              Belotti, S., and R. Rokui, "IETF Network Slice YANG Data
              Model", draft-liu-teas-transport-network-slice-yang-02
              (work in progress), November 2020.

   [RFC8309]  Wu, Q., Liu, W., and A. Farrel, "Service Models
              Explained", RFC 8309, DOI 10.17487/RFC8309, January 2018,
              <https://www.rfc-editor.org/info/rfc8309>.

Appendix A.  IETF Network Slice NBI Model Usage Example

   The following example describes a simplified service configuration of
   two IETF Network slice instances:

   o  IETF Network Slice 1 on Device1, Device3, and Device4, with any-
      to-any connection type

   o  IETF Network Slice 2 on Device2, Device3, with any-to-any
      connection type

     192.0.2.2 VLAN1
+--------+
|Device1 o------/
+--------+      |       +------+
+--------+      +------o|  A   +---------------+
|Device2 o-------/-----o|      |               |
+--------+              +---+--+               |
      198.51.100.2          |                  |
       VLAN2                |              +---+--+      192.0.2.4 VLAN1
                            |              |      |           +--------+
      192.0.2.3 VLAN1       |              |   C  o-----/-----oDevice4 |
+--------+                  |              +---+--+           +--------+
|        o------/           |                  |
|        |      |       +---+--+               |
| Device3|      +------o|  B   +---------------+
|        o-------/-----o|      |
+--------+              +------+
      198.51.100.3
       VLAN2

      POST: /restconf/data/ietf-network-slice:ietf-network-slices
      Host: example.com



Wu, et al.               Expires August 25, 2021               [Page 34]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


      Content-Type: application/yang-data+json

   {
     "ietf-network-slices": {
       "ietf-network-slice": [
         {
           "network-slice-id": 1,
           "network-slice-name": "slice1",
           "network-slice-topology": "any-to-any",
           "network-slice-endpoint": [
             {
              "endpoint-id": 11,
              "endpoint-name": "device1-ep1",
              "endpoint-role": "any-to-any-role",
              "network-slice-match-criteria": [
               {
                 "match-type": "network-slice-vlan-match",
                 "value": "1"
               }
              ]
            },
            {
             "endpoint-id": 12,
             "endpoint-name": "device3-ep1",
             "endpoint-role": "any-to-any-role",
             "network-slice-match-criteria": [
               {
                 "match-type": "network-slice-vlan-match",
                 "value": "1"
               }
              ]
            },
            {
              "endpoint-id": 13,
              "endpoint-name": "device4-ep1",
              "endpoint-role": "any-to-any-role",
              "network-slice-match-criteria": [
                {
                  "match-type": "network-slice-vlan-match",
                  "value": "1"
                }
              ]
            }
          ]
        },
       {
         "network-slice-id": 2,
         "network-slice-name": "slice2",



Wu, et al.               Expires August 25, 2021               [Page 35]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


         "network-slice-topology": "any-to-any",
         "network-slice-endpoint": [
           {
             "endpoint-id": 21,
             "endpoint-name": "device2-ep1",
             "endpoint-role": "any-to-any-role",
             "network-slice-match-criteria": [
               {
                 "match-type": "network-slice-vlan-match",
                 "value": "2"
               }
             ]
           },
          {
            "endpoint-id": 22,
            "endpoint-name": "device3-ep2",
            "endpoint-role": "any-to-any-role",
            "network-slice-match-criteria": [
              {
                "match-type": "network-slice-vlan-match",
                "value": "2"
              }
             ]
           }
         ]
        }
      ]
     }
   }


Appendix B.  Comparison with Other Possible Design choices for IETF
             Network Slice NBI

   According to the 3.3.1.  Northbound Inteface (NBI)
   [I-D.nsdt-teas-ns-framework], the IETF Network Slice NBI is a
   technology-agnostic interface, which is used for a consumer to
   express requirements for a particular IETF Network Slice.  Consumers
   operate on abstract IETF Network Slices, with details related to
   their realization hidden.  As classified by [RFC8309], the IETF
   Network Slice NBI is classified as Customer Service Model.

   This draft analyzes the following existing IETF models to identify
   the gap between the IETF Network Slice NBI requirements.







Wu, et al.               Expires August 25, 2021               [Page 36]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


B.1.  ACTN VN Model Augmentation

   The difference between the ACTN VN model and the IETF Network Slice
   NBI requirements is that the IETF Network Slice NBI is a technology-
   agnostic interface, whereas the VN model is bound to the IETF TE
   Topologies.  The realization of the IETF Network Slice does not
   necessarily require the slice network to support the TE technology.

   The ACTN VN (Virtual Network) model introduced in
   [I-D.ietf-teas-actn-vn-yang] is the abstract consumer view of the TE
   network.  Its YANG structure includes four components:

   o  VN: A Virtual Network (VN) is a network provided by a service
      provider to a customer for use and two types of VN has defined.
      The Type 1 VN can be seen as a set of edge-to-edge abstract links.
      Each link is an abstraction of the underlying network which can
      encompass edge points of the customer's network, access links,
      intra-domain paths, and inter-domain links.

   o  AP: An AP is a logical identifier used to identify the access link
      which is shared between the customer and the IETF scoped Network.

   o  VN-AP: A VN-AP is a logical binding between an AP and a given VN.

   o  VN-member: A VN-member is an abstract edge-to-edge link between
      any two APs or VN-APs.  Each link is formed as an E2E tunnel
      across the underlying networks.

   The Type 1 VN can be used to describe IETF Network Slice connection
   requirements.  However, the Network Slice SLO and Network Slice
   Endpoint are not clearly defined and there's no direct equivalent.
   For example, the SLO requirement of the VN is defined through the
   IETF TE Topologies YANG model, but the TE Topologies model is related
   to a specific implementation technology.  Also, VN-AP does not define
   "network-slice-match-criteria" to specify a specific NSE belonging to
   an IETF Network Slice.

B.2.  RFC8345 Augmentation Model

   The difference between the IETF Network Slice NBI requirements and
   the IETF basic network model is that the IETF Network Slice NBI
   requests abstract consumer IETF Network Slices, with details related
   to the slice Network hidden.  But the IETF network model is used to
   describe the interconnection details of a Network.  The customer
   service model does not need to provide details on the Network.

   For example, IETF Network Topologies YANG data model extension
   introduced in Transport Network Slice YANG Data Model



Wu, et al.               Expires August 25, 2021               [Page 37]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   [I-D.liu-teas-transport-network-slice-yang] includes three major
   parts:

   o  Network: a transport network list and an list of nodes contained
      in the network

   o  Link: "links" list and "termination points" list describe how
      nodes in a network are connected to each other

   o  Support network: vertical layering relationships between IETF
      Network Slice networks and underlay networks

   Based on this structure, the IETF Network Slice-specific SLO
   attributes nodes are augmented on the Network Topologies model,, e.g.
   isolation etc.  However, this modeling design requires the slice
   network to expose a lot of details of the network, such as the actual
   topology including nodes interconnection and different network layers
   interconnection.

Appendix C.  Appendix B IETF Network Slice Match Criteria

   5G is a use case of the IETF Network Slice and 5G End-to-end Network
   Slice Mapping from the view of IETF Network
   [I-D.geng-teas-network-slice-mapping]

   defines two types of Network Slice interconnection and
   differentiation methods: by physical interface or by TNSII (Transport
   Network Slice Interworking Identifier).  TNSII is a field in the
   packet header when different 5G wireless network slices are
   transported through a single physical interfaces of the IETF scoped
   Network.  In the 5G scenario, "network-slice-match-criteria" refers
   to TNSII.



















Wu, et al.               Expires August 25, 2021               [Page 38]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


       +------------------------------------------------------------+
       |          5G E2E network slice orchestrator                 |
       ++-----------------------------------------------------+-----+
        |                        |                            |
        |                IETF Network Slice NBI               |
    +---+-------+                  |                    +-----+-----+
    |           |          +------------------+         |           |
    |RAN Slice  |          |IETF Network Slice|         |Core Slice |
    |controller |          |    controller    |         | controller|
    +----+------+          +-------+----------+         +-----+-----+
         |                         |                          |
         |                         |                          |
     +---+--+         +------------+----------------+        ++-----+
     |      |         |                             |        |      |
     |      |         |                             |        |      |
     |+----+|         |                             |        |      |
     ||    ||NS1-NSE1 |         Network Slice 1     |        |+----+|
     ||gNB1|+---------+-----+-----------------------+--------+|UPF1||
     ||    |+************  /                        |NS1-NSE3|+----+|
     |+----+|NS2-NSE1 |  */                         |        |      |
     |                |  /*                         |        |      |
     |+----+|NS1-NSE2 | /  *                        |        |      |
     ||    |+----------     *   Network Slice 2     |NS2-NSE3|+----+|
     ||gNB2|+************************************************+|UPF2||
     ||    ||NS2-NSE2 |                             |        |+----+|
     |+----+|         |                             |               |
     |      |         |                             |        |      |
     |      |         |                             |        |      |
     +------+         +----------- -----------------+        +------+


   As shown in the figure, gNodeB 1 and gNodeB 2 use IP gNB1 and IP gNB2
   to communicate with the IETF network, respectively.  In addition, the
   traffic of NS1 and NS2 on gNodeB 1 and gNodeB 2 is transmitted
   through the same access links to the IETF slice network.  The IETF
   slice network need to to distinguish different IETF Network Slice
   traffic of same gNB.  Therefore, in addition to using "node-id" and
   "port-id" to identify a Network Slice Endpont, other information is
   needed along with these parameters to uniquely distinguish a NSE.
   For example, VLAN IDs in the user traffic can be used to distinguish
   the NSEs of gNBs and UPFs.

Authors' Addresses








Wu, et al.               Expires August 25, 2021               [Page 39]


Internet-Draft      IETF Network Slice NBI YANG model      February 2021


   Bo Wu
   Huawei Technologies
   101 Software Avenue, Yuhua District
   Nanjing, Jiangsu  210012
   China

   Email: lana.wubo@huawei.com


   Dhruv Dhody
   Huawei Technologies
   Divyashree Techno Park
   Bangalore, Karnataka  560066
   India

   Email: dhruv.ietf@gmail.com


   Liuyan Han
   China Mobile

   Email: hanliuyan@chinamobile.com


   Reza Rokui
   Nokia

   Email: reza.rokui@nokia.com























Wu, et al.               Expires August 25, 2021               [Page 40]