<?xml version="1.0" encoding="US-ASCII"?>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.2.3 -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc comments="yes"?>
<rfc category="info" docName="draft-ietf-teas-enhanced-vpn-15"
     ipr="trust200902">
  <front>
    <title abbrev="VPN+ Framework">A Framework for Enhanced Virtual Private
    Network (VPN+)</title>

    <author fullname="Jie Dong" initials="J." surname="Dong">
      <organization>Huawei</organization>

      <address>
        <email>jie.dong@huawei.com</email>
      </address>
    </author>

    <author fullname="Stewart Bryant" initials="S." surname="Bryant">
      <organization>University of Surrey</organization>

      <address>
        <email>stewart.bryant@gmail.com</email>
      </address>
    </author>

    <author fullname="Zhenqiang Li" initials="Z." surname="Li">
      <organization>China Mobile</organization>

      <address>
        <email>lizhenqiang@chinamobile.com</email>
      </address>
    </author>

    <author fullname="Takuya Miyasaka" initials="T." surname="Miyasaka">
      <organization>KDDI Corporation</organization>

      <address>
        <email>ta-miyasaka@kddi.com</email>
      </address>
    </author>

    <author fullname="Young Lee" initials="Y." surname="Lee">
      <organization>Samsung</organization>

      <address>
        <email>younglee.tx@gmail.com</email>
      </address>
    </author>

    <date day="23" month="October" year="2023"/>

    <workgroup>TEAS Working Group</workgroup>

    <abstract>
      <t>This document describes the framework for Enhanced Virtual Private
      Network (VPN+) to support the needs of applications with specific
      traffic performance requirements (e.g., low latency, bounded jitter).
      VPN+ leverages the VPN and Traffic Engineering (TE) technologies and
      adds characteristics that specific services require beyond those
      provided by conventional VPNs. Typically, VPN+ will be used to underpin
      network slicing, but could also be of use in its own right providing
      enhanced connectivity services between customer sites. This document
      also provides an overview of relevant technologies in different network
      layers, and identifies some areas for potential new work.</t>
    </abstract>
  </front>

  <middle>
    <section anchor="introduction" title="Introduction">
      <t>RFC Editor Note: Please replace "RFC XXXX" in this document with the
      RFC number assigned to <xref
      target="I-D.ietf-teas-ietf-network-slices"/>, and remove this note.</t>

      <t>Virtual Private Networks (VPNs) have served the industry well as a
      means of providing different groups of users with logically isolated
      connectivity over a common network. The common (base) network that is
      used to provide the VPNs is often referred to as the underlay, and the
      VPN is often called an overlay.</t>

      <t>Customers of a network operator may request connectivity services
      with advanced characteristics, such as low latency guarantees, bounded
      jitter, or isolation from other services or customers so that changes in
      some other services (e.g., changes in network load, or events such as
      congestion or outages) have no or only acceptable effect on the observed
      throughput or latency of the services delivered to the customer. These
      services are referred to as "enhanced VPNs" (known as VPN+), as they are
      similar to VPN services providing the customer with the required
      connectivity, but in addition they also provide enhanced
      characteristics.</t>

      <t>This document describes a framework for delivering VPN services with
      enhanced characteristics, such as guaranteed resources, latency, jitter,
      etc. This is not a closed list. It is expected that other enhanced
      features may be added to VPN over time, and it is expected this
      framework will support these additions with necessary changes or
      enhancements in some network layers and network planes.</t>

      <t>The requirements of VPN+ services cannot simply be met by overlay
      networks, as VPN+ services require tighter coordination and integration
      between the overlay and the underlay networks.</t>

      <t>In the overlay network, VPN has been defined as the network construct
      to provide the required connectivity for different services or
      customers. Multiple VPN flavors can be considered to create that
      construct <xref target="RFC4026"/>. In the underlay network, this
      document introduces the concept Virtual Transport Network (VTN). A VTN
      is a virtual underlay network that is associated with a network
      topology, and is allocated with a set of dedicated or shared resources
      from the underlay physical network.</t>

      <t>A VPN+ service is realized by integrating a VPN in the overlay and a
      VTN in the underlay. In doing so, a VPN+ service can provide enhanced
      properties, such as guaranteed resources and assured or predictable
      performance. A VPN+ service may also involve a set of service functions
      (Section 1.4 of <xref target="RFC7665"/>). VPN+ techniques can be used
      to instantiate a network slice service, and they can also be of use in
      general cases to provide enhanced connectivity services between customer
      sites or service endpoints.</t>

      <t>The concept of network slicing has gained traction driven largely by
      needs surfacing from 5G <xref target="NGMN-NS-Concept"/> <xref
      target="TS23501"/> <xref target="TS28530"/>. According to <xref
      target="TS28530"/>, a 5G end-to-end network slice consists of three
      major types of network segments: Radio Access Network (RAN), Transport
      Network (TN), and Mobile Core Network (CN). The transport network
      provides the connectivity between different entities in RAN and CN
      segments of a 5G end-to-end network slice, with specific performance
      commitments.</t>

      <t><xref target="I-D.ietf-teas-ietf-network-slices"/> defines the
      terminologies and the characteristics of Network Slices. It also
      discusses the general framework, the components and interfaces for
      requesting and operating Network Slices. An RFC XXXX Network Slice
      Service enables connectivity between a set of Service Demarcation Points
      (SDPs) with specific Service Level Objectives (SLOs) and Service Level
      Expectations (SLEs) over a common underlay network. An RFC XXXX Network
      Slice can be realized as a logical network connecting a number of
      endpoints and is associated with a set of shared or dedicated network
      resources that are used to satisfy the Service Level Objectives (SLOs)
      and Service Level Expectations (SLEs) requirements. In this document
      (which is solely about IETF technologies) we refer to an "RFC XXXX
      Network Slice" simply as a "network slice": a network slice is
      considered as one target use case of VPN+.</t>

      <t><xref target="I-D.ietf-teas-ietf-network-slices"/> also introduces
      the concept of Network Resource Partition (NRP), which is a subset of
      the buffer/queuing/scheduling resources and associated policies on each
      of a connected set of links in the underlay network. An NRP can be
      associated with a dedicated or shared network topology to select or
      specify the set of links and nodes involved. NRP can be seen as an
      instantiation of VTN in the context of network slicing.</t>

      <t>This document describes a framework for using existing, modified, and
      potential new technologies as components to provide VPN+ services.
      Specifically, this document provides:</t>

      <t><list style="symbols">
          <t>The functional requirements and service characteristics of a VPN+
          service.</t>

          <t>The design of the data plane for VPN+.</t>

          <t>The necessary control and management protocols in both the
          underlay and the overlay of VPN+.</t>

          <t>The mechanisms to achieve integration between the overlay network
          and the underlay network.</t>

          <t>The necessary Operation, Administration, and Management (OAM)
          methods to instrument a VPN+ to make sure that the required SLA
          between the customer and the network operator is met, and to take
          any corrective action (such as switching traffic to an alternate
          path) to avoid SLA violation.</t>
        </list></t>

      <t>The required layered network structure to achieve these objectives is
      shown in <xref target="COMLAY"/>.</t>

      <t>It is not envisaged that VPN+ services will replace conventional VPN
      services. VPN services will continue to be delivered using existing
      mechanisms and can co-exist with VPN+ services. Whether enriched VPN+
      features are added to an active VPN service is deployment specific.</t>
    </section>

    <section title="Terminology">
      <t>In this document, the relationship of the four terms "VPN", "VPN+",
      "VTN", and "Network Slice" are as follows:</t>

      <t><list style="symbols">
          <t>A Virtual Private Network (VPN) refers to the overlay network
          service that provides connectivity between different customer sites,
          and that maintains traffic separation between different customers.
          Examples of technologies to provide VPN services are: IPVPN <xref
          target="RFC2764"/>, L2VPN <xref target="RFC4664"/>, L3VPN <xref
          target="RFC4364"/>, and EVPN <xref target="RFC7432"/>.</t>

          <t>An enhanced VPN (VPN+) service is an evolution of the VPN service
          that makes additional service-specific commitments. An enhanced VPN
          is made by integrating a VPN with a set of network resources
          allocated in the underlay network.</t>

          <t>A Virtual Transport Network (VTN) is a virtual underlay network
          which is associated with a logical network topology, and is
          allocated with a set of dedicated or shared network resources from
          the underlay physical network. A VTN is designed to meet the network
          resources and performance characteristics required by the VPN+
          services.</t>

          <t>A network slice service could be delivered by provisioning one or
          more VPN+ services in the network. Other mechanisms for realizing
          network slices may exist but are not in scope for this document.</t>
        </list></t>

      <t>The term "tenant" is used in this document to refer to the customers
      of the VPN+ services.</t>

      <t>The following terms are also used in this document. Some of them are
      newly defined, some others reference existing definitions. <list
          style="hanging">
          <t hangText="SLA:">Service Level Agreement. See <xref
          target="I-D.ietf-teas-ietf-network-slices"/>.</t>

          <t hangText="SLO:">Service Level Objective. See <xref
          target="I-D.ietf-teas-ietf-network-slices"/>.</t>

          <t hangText="SLE:">Service Level Expectation. See <xref
          target="I-D.ietf-teas-ietf-network-slices"/>.</t>

          <t hangText="ACTN:">Abstraction and Control of Traffic Engineered
          Networks <xref target="RFC8453"/>.</t>

          <t hangText="DetNet:">Deterministic Networking. See <xref
          target="RFC8655"/>.</t>

          <t hangText="FlexE:">Flexible Ethernet <xref target="FLEXE"/>.</t>

          <t hangText="TSN:">Time Sensitive Networking <xref
          target="TSN"/>.</t>

          <t hangText="VN:">Virtual Network. See <xref target="RFC8453"/>.</t>

          <t hangText="VTP:">Virtual Transport Path. A VTP is a path through
          the VTN which provides the required connectivity and performance
          between two or more customer sites.</t>
        </list></t>
    </section>

    <section anchor="overview-of-the-requirements"
             title="Overview of the Requirements">
      <t>This section provides an overview of the requirements of a VPN+
      service.</t>

      <section anchor="diverse-performance-guarantees"
               title="Performance Guarantees">
        <t>Performance guarantees are committed by network operators to their
        customers in relation to the services delivered to the customers. They
        are usually expressed in SLAs as a set of SLOs.</t>

        <t>There are several kinds of performance guarantees, including
        guaranteed maximum packet loss, guaranteed maximum delay, and
        guaranteed delay variation. Note that these guarantees apply to
        conformance traffic; out-of-profile traffic will be handled according
        to a separate agreement with the customer (see, for example, Section
        3.6 of <xref target="RFC7297"/>).</t>

        <t>Guaranteed maximum packet loss is usually addressed by setting
        packet priorities, queues size, and discard policy. However, this
        becomes more difficult when the requirement is combined with latency
        requirements. The limiting case is zero congestion loss, and that is
        the goal of Deterministic Networking (DetNet) <xref target="RFC8655"/>
        and Time-Sensitive Networking (TSN) <xref target="TSN"/>. In modern
        optical networks, loss due to transmission errors already approaches
        zero, but there is the possibility of failure of the interface or the
        fiber itself. This type of fault can be addressed by some form of
        signal duplication and transmission over diverse paths.</t>

        <t>Guaranteed maximum latency is required by a number of applications,
        particularly real-time control applications and some types of
        augumented reality and virtual reality (AR/VR) applications. DetNet
        techniques may be considered <xref target="RFC8655"/>, however
        additional methods of enhancing the underlay to better support the
        delay guarantees may be needed, and these methods will need to be
        integrated with the overall service provisioning mechanisms.</t>

        <t>Guaranteed maximum delay variation is a performance guarantee that
        may also be needed. <xref target="RFC8578"/> calls up a number of
        cases that need this guarantee, for example in electrical utilities.
        Time transfer is an example service that needs a performance
        guarantee, although it is in the nature of time that the service might
        be delivered by the underlay as a shared service and not provided
        through different VPN+s. Alternatively, a dedicated VPN+ might be used
        to provide time transfer as a shared service.</t>

        <t>This suggests that a spectrum of service guarantees need to be
        considered when designing and deploying a VPN+. For illustration
        purposes and without claiming to be exhaustive, four types of services
        are considered:</t>

        <t><list style="symbols">
            <t>Best effort</t>

            <t>Assured bandwidth</t>

            <t>Guaranteed latency</t>

            <t>Enhanced delivery</t>
          </list></t>

        <t>It is noted that some service may have mixed requirements of the
        above, e.g., both assured bandwidth and guaranteed latency can be
        required.</t>

        <t>The best effort service is the basic connectivity service that can
        be provided by current VPNs.</t>

        <t>An assured bandwidth service is a connectivity service in which the
        bandwidth over some period of time is assured. This could be achieved
        either simply based on a best effort service with over-capacity
        provisioning, or it can be based on MPLS traffic engineered label
        switching paths (TE-LSPs) with bandwidth reservations. Depending on
        the technique used, however, the bandwidth is not necessarily assured
        at any instant. Providing assured bandwidth to VPNs, for example by
        using per-VPN TE-LSPs, is not widely deployed at least partially due
        to scalability concerns. The more common approach of aggregating
        multiple VPNs onto common TE-LSPs results in shared bandwidth and so
        may reduce the assurance of bandwidth to any one service. VPN+ aims to
        provide a more scalable approach for such services.</t>

        <t>A guaranteed latency service has an upper bound to edge-to-edge
        latency. Assuring the upper bound is sometimes more important than
        minimizing latency. There are several new technologies that provide
        some assistance with this performance guarantee. Firstly, the IEEE TSN
        project <xref target="TSN"/> introduces the concept of scheduling of
        delay- and loss-sensitive packets. FlexE <xref target="FLEXE"/> is
        also useful to help provide a guaranteed upper bound to latency.
        DetNet is also of relevance in assuring an upper bound of end-to-end
        packet latency in network layer. The use of these technologies to
        deliver VPN+ services needs to be considered when a guaranteed latency
        service is required.</t>

        <t>An enhanced delivery service is a connectivity service in which the
        underlay network (at Layer 3) needs to ensure to eliminate or minimize
        packet loss in the event of equipment or media failures. This may be
        achieved by delivering a copy of the packet through multiple paths.
        Such a mechanism may need to be used for VPN+ services.</t>
      </section>

      <section anchor="interaction-between-vpn-services"
               title="Interaction between VPN+ Services">
        <t>There is a fine distinction between how a customer requests limits
        on interaction between VPN+ services, and how that is delivered by the
        service provider. This section examines the requirements and
        realization of limited interaction between VPN+ services.</t>

        <section anchor="requirements-on-traffic-isolation"
                 title="Requirements on Traffic Isolation">
          <t>Traffic isolation is a generic term that can be used to describe
          the requirements on separating the services of different customers
          or different service types in the network. In the context of network
          slicing, traffic isolation is defined as an SLE of the network slice
          service (Section 8.1 of <xref
          target="I-D.ietf-teas-ietf-network-slices"/>), which is one element
          of the SLA. A customer may care about disruption caused by other
          services, contamination by other traffic, or delivery of their
          traffic to the wrong destinations.</t>

          <t>A customer may want to specify (and thus pay for) the traffic
          isolation provided by the service provider. Some customers (banking,
          for example) may have strict requirements on how their flows are
          handled when delivered over a shared network. Some professional
          services are used to relying on specific certifications and audits
          to ensure the compliancy of a network with traffic isolation
          requirements, and specifically to prevent data leaks.</t>

          <t>With traffic isolation, a customer expects that the service
          traffic cannot be received by other customers in the same network.
          In <xref target="RFC4176"/>, traffic isolation is mentioned as one
          of the requirements of VPN customers. Traffic isolation is also
          described in Section 3.8 of <xref target="RFC7297"/>.</t>

          <t>There can be different expectations on traffic isolation. For
          example, a customer may further request the protection of their
          traffic by requesting specific encryption schemes at the VPN+
          network access and also when transported between PEs.</t>

          <t>A VPN+ service customer may request traffic isolation together
          with other operator defined service characteristics. The exact
          details about the expected behavior need to be specified in the
          service request, so that meaningful service assurance and
          fulfillment feedback can be exposed to the customers. It is out of
          the scope of this document to elaborate the service modeling
          considerations.</t>
        </section>

        <section anchor="limited-interaction-with-other-services"
                 title="Limited Interaction with Other Services">
          <t><xref target="RFC2211"/> describes the Controlled Load Service.
          In that document, the end-to-end behavior provided to an application
          by a series of network elements providing controlled-load service is
          described as closely approximating to the behavior visible to
          applications receiving best-effort service when those network
          elements are not carrying substantial traffic from other
          services.</t>

          <t>Thus, a consumer of a Controlled Load Service may assume
          that:</t>

          <t><list style="symbols">
              <t>A very high percentage of transmitted packets will be
              successfully delivered by the network to the receiving
              end-nodes.</t>

              <t>The transit delay experienced by a very high percentage of
              the delivered packets will not greatly exceed the minimum
              transmit delay experienced by any successfully delivered
              packet.</t>
            </list></t>

          <t>A VPN+ customer may request a Controlled Load Service in one of
          two ways:</t>

          <t><list style="numbers">
              <t>It may configure a set of SLOs (for example, for delay and
              loss) such that the delivered enhanced VPN meets the behavioral
              objectives of the customer.</t>

              <t>As described in <xref target="RFC2211"/>, a customer may
              request the Controlled Load Service without reference to or
              specification of specific target values for control parameters
              such as delay or loss. Instead, acceptance of a request for
              Controlled Load Service is defined to imply a commitment by the
              network element to provide the requestor with service closely
              equivalent to that provided to uncontrolled (best-effort)
              traffic under lightly loaded conditions. This way of requesting
              the service is an SLE.</t>
            </list></t>

          <t>Limited interaction between VPN+ services does not cover service
          degradation due to non-interaction-related causes, such as link
          errors.</t>
        </section>

        <section anchor="realization-of-limited-interaction-between-vpn-services"
                 title="Realization of Limited Interaction Between VPN+ Services">
          <t>A service provider may translate the requirements related to
          limited interaction into distinct engineering rules in its network.
          Honoring the service requirement may involve tweaking a set of QoS,
          TE, security, and planning tools, while traffic isolation will
          involve adequately configuring routing and authorization
          capabilities.</t>

          <t>Concretely, there are many existing techniques which can be used
          to provide traffic isolation, such as IP and MPLS VPNs or other
          multi- tenant virtual network techniques. Controlled Load Services
          may be realized as described in <xref target="RFC2211"/>. Other
          tools may include various forms of resource management and
          reservation techniques, such as network capacity planning,
          allocating dedicated network resources, traffic policing or shaping,
          prioritizing in using shared network resources etc., so that a
          subset of bandwidth, buffers, and queueing resources can be
          available in the underlay network to support the VPN+ services.</t>

          <t>To provide the required traffic isolation, or to reduce the
          interaction with other VPN+ services, network resources may need to
          be reserved in the data plane of the underlay network and dedicated
          to traffic from a specific VPN+ service or a specific group of VPN+
          services. This may introduce scalability concerns both in the
          implementation (as each VPN+ may need to be tracked in the network)
          and in how many resources need to be reserved and how the services
          are mapped to the resources (Section 4.4). Thus, some trade-off
          needs to be considered to provide the traffic isolation and limited
          interaction between VPN+ services.</t>

          <t>A dedicated physical network can be used to meet stricter SLO and
          SLE requests, at the cost of allocating resources on a long-term and
          end- to-end basis. On the other hand, where adequate traffic
          isolation and limited interaction can be achieved at the packet
          layer, this permits the resources to be shared amongst a group of
          services and only dedicated to a service on a temporary basis. By
          combining conventional VPNs with TE/QoS/security techniques, VPN+
          offers a variety of means to honor customer's requirements.</t>
        </section>
      </section>

      <section anchor="integration"
               title="Integration with Network Resources and Service Functions">
        <t>The way to achieve the characteristics demand of a VPN+ service
        (such as guaranteed or predictable performance) is by integrating the
        overlay VPN with a particular set of resources in the underlay network
        which are allocated to meet the service requirements. This needs to be
        done in a flexible and scalable way so that it can be widely deployed
        in operators' networks to support a good number of VPN+ services.</t>

        <t>Taking mobile networks and in particular 5G into consideration, the
        integration of the network with service functions is likely a
        requirement. The IETF's work on service function chaining (SFC) <xref
        target="RFC7665"/> provides a foundation for this. Service functions
        in the underlay network can be considered as part of the VPN+
        services, which means the service functions may need to be an integral
        part of the corresponding VTN. The details of the integration between
        service functions and VPN+ are out of the scope of this document.</t>

        <section title="Abstraction">
          <t>Integration of the overlay VPN and the underlay network resources
          and service functions does not always need to be a direct mapping.
          As described in <xref target="RFC7926"/>, abstraction is the process
          of applying policy to a set of information about a traffic
          engineered (TE) network to produce selective information that
          represents the potential ability to connect across the network. The
          process of abstraction presents the connectivity graph in a way that
          is independent of the underlying network technologies, capabilities,
          and topology so that the graph can be used to plan and deliver
          network services in a uniform way.</t>

          <t>With the approach of abstraction, VPN+ may be built on top of an
          abstracted topology that represents the connectivity capabilities of
          the underlay TE based network as described in the framework for
          Abstraction and Control of TE Networks (ACTN) <xref
          target="RFC8453"/> as discussed further in <xref
          target="management-plane"/>.</t>
        </section>
      </section>

      <section anchor="dynamic-configuration" title="Dynamic Changes">
        <t>VPN+s need to be created, modified, and removed from the network
        according to service demands (including scheduled requests). A VPN+
        that requires limited interaction with other services (<xref
        target="limited-interaction-with-other-services"/>) must not be
        disrupted by the instantiation or modification of another VPN+
        service. As discussed in Section 3.1 of <xref target="RFC4176"/>, the
        assessment of traffic isolation is part of the management of a VPN
        service. Determining whether modification of a VPN+ can be disruptive
        to that VPN+ and whether the traffic in flight will be disrupted can
        be a difficult problem.</t>

        <t>Dynamic changes both to the VPN+ and to the underlay network need
        to be managed to avoid disruption to services that are sensitive to
        changes in network performance.</t>

        <t>In addition to non-disruptively managing the network during changes
        such as the inclusion of a new VPN+ service endpoint or a change to a
        link, VPN+ traffic might need to be moved because of changes to
        traffic patterns and volumes. This means that during the lifetime of a
        VPN+ service, closed-loop optimization is needed so that the delivered
        service always matches the ordered service SLA.</t>

        <t>The data plane aspects of this problem are discussed further in
        <xref target="L2-DP"/>, <xref target="L3-DP"> </xref>, and <xref
        target="Non-Packet-DP"/>.</t>

        <t>The control plane aspects of this problem are discussed further in
        <xref target="control-plane"/>.</t>

        <t>The management plane aspects of this problem are discussed further
        in <xref target="management-plane"/>.</t>
      </section>

      <section anchor="customized-control-plane" title="Customized Control">
        <t>In many cases the customers are delivered with VPN+ services
        without information about the underlying VTNs. However, depending on
        the agreement between the operator and the customer, in some cases the
        customer may also be provided with some information about the
        underlying VTNs. Such information can be filtered or aggregated
        according to the operator's policy. This allows the customer of a VPN+
        service to have some visibility and even control over how the
        underlying topology and resources of the VTN are used. For example,
        the customers may be able to specify the path or path constraints
        within the VTN for specific traffic flows of their VPN+ service.
        Depending on the requirements, a VPN+ customer may have their own
        network controller, which may be provided with an interface to the
        control or management system run by the network operator. Note that
        such a control is within the scope of the customer's VPN+ service; any
        additional changes beyond this would require some intervention by the
        network operator.</t>

        <t>A description of the control plane aspects of this problem are
        discussed further in <xref target="control-plane"/>. A description of
        the management plane aspects of this feature can be found in <xref
        target="management-plane"/>.</t>
      </section>

      <section anchor="applicability"
               title="Applicability to Overlay Technologies">
        <t>The concept of VPN+ can be applied to any existing and future
        multi-tenancy overlay technologies including but not limited to:</t>

        <t><list style="symbols">
            <t>Layer-2 point-to-point services, such as pseudowires <xref
            target="RFC3985"/></t>

            <t>Layer-2 VPNs <xref target="RFC4664"/></t>

            <t>Ethernet VPNs <xref target="RFC7209"/>, <xref
            target="RFC7432"/></t>

            <t>Layer-3 VPNs <xref target="RFC4364"/>, <xref
            target="RFC2764"/></t>
          </list></t>

        <t>Where such VPN service types need enhanced isolation and delivery
        characteristics, the technologies described in <xref target="SDDC"/>
        can be used to tweak the underlay to provide the required enhanced
        performance.</t>
      </section>

      <section title="Inter-Domain and Inter-Layer Network">
        <t>In some scenarios, a VPN+ service may span multiple network
        domains. A domain is considered to be any collection of network
        elements under the responsibility of the same administrative entity,
        for example, an Autonomous System (AS). In some domains the network
        operator may manage a multi-layered network, for example, a packet
        network over an optical network. When VPN+ services are provisioned in
        such network scenarios, the technologies used in different network
        planes (data plane, control plane, and management plane) need to
        provide mechanisms to support multi-domain and multi-layer
        coordination and integration, so as to provide the required service
        characteristics for different VPN+ services, and improve network
        efficiency and operational simplicity. The mechanisms for multi-domain
        VPNs <xref target="RFC4364"/> may be reused, and some enhancement may
        be needed to meet the additional requirements of VPN+ services.</t>
      </section>
    </section>

    <section anchor="architecture-and-components-of-vpn"
             title="The Architecture of VPN+">
      <t>Multiple VPN+ services can be provided by a common network
      infrastructure. Each VPN+ service is provisioned with an overlay VPN and
      mapped to a corresponding VTN, which has a specific set of network
      resources and service functions allocated in the underlay to satisfy the
      needs of the customer. One VTN may support one of more VPN+ services.
      The integration between the overlay connectivity and the underlay
      resources ensures the required isolation between different VPN+
      services, and achieves the guaranteed performance for different
      customers.</t>

      <t>The VPN+ architecture needs to be designed with consideration given
      to:</t>

      <t><list style="symbols">
          <t>An enhanced data plane.</t>

          <t>A control plane to create VPN+ and VTN, making use of the data
          plane isolation and performance guarantee techniques.</t>

          <t>A management plane for VPN+ service life-cycle management.</t>

          <t>The OAM mechanisms for VPN+ and the underlaying VTN.</t>

          <t>Telemetry mechanisms for VPN+ and the underlaying VTN.</t>
        </list> These topics are expanded below.</t>

      <t><list style="symbols">
          <t>The enhanced data plane provides:<list style="symbols">
              <t>The required packet latency and jitter characteristics.</t>

              <t>The required packet loss characteristics.</t>

              <t>The required resource isolation capability, e.g., bandwidth
              guarantee.</t>

              <t>The mechanism to associate a packet with the set of resources
              allocated to a VTN which the VPN+ service packet is mapped
              to.</t>
            </list></t>

          <t>The control plane:<list style="symbols">
              <t>Collects information about the underlying network topology
              and network resources, and exports this to network nodes and/or
              a centralized controller as required.</t>

              <t>Creates VTNs with the network resource and topology
              properties needed by the VPN+ services.</t>

              <t>Distributes the attributes of VTNs to network nodes which
              participate in the VTNs and/or a centralized controller.</t>

              <t>Computes and sets up network paths in each VTN.</t>

              <t>Maps VPN+ services to an appropriate VTN.</t>

              <t>Determines the risk of SLA violation and takes appropriate
              avoiding/correction actions.</t>

              <t>Considers the right balance of per-packet and per-node state
              according to the needs of the VPN+ services to scale to the
              required size.</t>
            </list></t>

          <t>The management plane provides:<list style="symbols">
              <t>An interface between the VPN+ service provider (e.g.,
              operator's network management system) and the VPN+ customer
              (e.g., an organization or a service with VPN+ requirement) such
              that the operation requests and the related parameters can be
              exchanged without the awareness of other VPN+ customers.</t>

              <t>An interface between the VPN+ service provider and the VPN+
              customers to expose the network capability information toward
              the customer.</t>

              <t>The service life-cycle management and operation of VPN+
              services (e.g., creation, modification, assurance/monitoring,
              and decommissioning).</t>
            </list></t>

          <t>Operations, Administration, and Maintenance (OAM) provides:<list
              style="symbols">
              <t>The tools to verify the connectivity and monitor the
              performance of the VPN+ service.</t>

              <t>The tools to verify whether the underlay network resources
              are correctly allocated and operating properly.</t>
            </list></t>

          <t>Telemetry provides: <list style="symbols">
              <t>Provides the mechanisms to collect network information about
              the operation of the data plane, control plane, and management
              plane. More specifically, telemetry provides the mechanisms to
              collect network data: <list style="symbols">
                  <t>from the underlay network for overall performance
                  evaluation and for the planning of the VPN+ services.</t>

                  <t>from each VPN+ service for monitoring and analytics of
                  the characteristics and SLA fulfillment of the VPN+
                  services.</t>
                </list></t>
            </list></t>
        </list></t>

      <section anchor="COMLAY" title="Layered Architecture">
        <t>The layered architecture of VPN+ is shown in <xref
        target="LAFIG"/>.</t>

        <t>Underpinning everything is the physical network infrastructure
        layer which provides the underlying resources used to provision the
        separate VTNs. This layer is responsible for the partitioning of link
        and/or node resources for different VTNs. Each subset of link or node
        resource can be considered as a virtual link or virtual node used to
        build the VTNs.</t>

        <figure anchor="LAFIG" title="The Layered Architecture of VPN+">
          <artwork align="center"><![CDATA[
                           /\
                           ||
                 +-------------------+       Centralized
                 | Network Controller|   Control & Management
                 +-------------------+
                           ||
                           \/
             o---------------------------o      VPN+ #1
                           /-------------o
             o____________/______________o      VPN+ #2
                        _________________o
                  _____/
             o___/     \_________________o      VPN+ #3
                 \_______________________o
                        ......                  ...
             o-----------\ /-------------o
             o____________X______________o      VPN+ #n

                __________________________
               /       o----o-----o      /
              /       /          /      /       VTN-1
             / o-----o-----o----o----o /
            /_________________________/
                __________________________
               /       o----o            /
              /       /    / \          /       VTN-2
             / o-----o----o---o------o /
            /_________________________/
                      ......                     ...
               ___________________________
              /             o----o       /
             /             /    /       /       VTN-m
            /  o-----o----o----o-----o /
           /__________________________/


              ++++   ++++   ++++
              +--+===+--+===+--+
              +--+===+--+===+--+
              ++++   +++\\  ++++
               ||     || \\  ||                Physical
               ||     ||  \\ ||                Network
       ++++   ++++   ++++  \\+++   ++++     Infrastructure
       +--+===+--+===+--+===+--+===+--+
       +--+===+--+===+--+===+--+===+--+
       ++++   ++++   ++++   ++++   ++++

  o    Virtual Node     ++++
                        +--+  Physical Node with resource partition
  --   Virtual Link     +--+
                        ++++
  ==  Physical Link with resource partition
          ]]></artwork>
        </figure>

        <t>Various components and techniques discussed in <xref
        target="SDDC"/> can be used to enable resource partitioning of the
        physical network infrastructure, such as FlexE, TSN, dedicated queues,
        etc. These partitions may be physical or virtual so long as the SLA
        required by the higher layers is met.</t>

        <t>Based on the set of network resource partitions provided by the
        physical network infrastructure, multiple VTNs can be created, each
        with a set of dedicated or shared network resources allocated from the
        physical underlay network, and each can be associated with a
        customized logical network topology, so as to meet the requirements of
        different VPN+ services or different groups of VPN+ services.
        According to the associated logical network topology, each VTN needs
        to be instantiated on a set of network nodes and links which are
        involved in the logical topology. And on each node or link, each VTN
        is associated with a set of local resources which are allocated for
        the processing of traffic in the VTN. The VTN provides the integration
        between the logical network topology and the required underlying
        network resources.</t>

        <t>According to the service requirements of connectivity, performance
        and isolation, etc., VPN+ services can be mapped to the appropriate
        VTNs in the network. Different VPN+ services can be mapped to
        different VTNs, while it is also possible that multiple VPN+ services
        are mapped to the same VTN. Thus, the VTN is an essential scaling
        technique, as it has the potential of eliminating per-service per-path
        state from the network. In addition, when a group of VPN+ services are
        mapped to a single VTN, only the network state of the single VTN needs
        to be maintained in the network (see <xref target="scalable-mapping"/>
        for more information).</t>

        <t>The network controller is responsible for creating a VTN,
        instructing the involved network nodes to allocate network resources
        to the VTN, and provisioning the VPN+ services on the VTN. A
        distributed control plane may be used for distributing the VTN
        resource and topology attributes among nodes in the VTN.</t>

        <t>The process used to create VTNs and to allocate network resources
        for use by the VTNs needs to take a holistic view of the needs of all
        of the service provider's customers and to partition the resources
        accordingly. However, within a VTN these resources can, if required,
        be managed via a dynamic control plane. This provides the required
        scalability and isolation with some flexibility.</t>
      </section>

      <section anchor="multi-point-to-multi-point" title="Connectivity Types">
        <t>At the VPN service level, the required connectivity for an MP2MP
        VPN service is usually full or partial mesh. To support such VPN
        services, the corresponding VTN also needs to provide MP2MP
        connectivity among the end points.</t>

        <t>Other service requirements may be expressed at different
        granularities, some of which can be applicable to the whole service,
        while some others may only be applicable to some pairs of end points.
        For example, when a particular level of performance guarantee is
        required, the point-to-point path through the underlying VTN of the
        VPN+ service may need to be specifically engineered to meet the
        required performance guarantee.</t>
      </section>

      <section anchor="application-specific-network-types"
               title="Application-Specific Data Types">
        <t>Although a lot of the traffic that will be carried over VPN+ will
        likely be IP based, the design must be capable of carrying other
        traffic types, in particular Ethernet traffic. This is easily
        accomplished through the various pseudowire (PW) techniques <xref
        target="RFC3985"/>.</t>

        <t>Where the underlay is MPLS, Ethernet traffic can be carried over
        VPN+ encapsulated according to the method specified in <xref
        target="RFC4448"/>. Where the underlay is IP, Layer Two Tunneling
        Protocol - Version 3 (L2TPv3) <xref target="RFC3931"/> can be used
        with Ethernet traffic carried according to <xref target="RFC4719"/>.
        Encapsulations have been defined for most of the common layer-2 types
        for both PW over MPLS and for L2TPv3.</t>
      </section>

      <section anchor="scalable-mapping" title="Scalable Service Mapping">
        <t>VPNs are instantiated as overlays on top of an operator's network
        and offered as services to the operator's customers. An important
        feature of overlays is that they can deliver services without placing
        per-service state in the core of the underlay network.</t>

        <t>VPN+ may need to install some additional state within the network
        to achieve the features that they require. Solutions must consider
        minimizing and controlling the scale of such state, and deployment
        architectures should constrain the number of VPN+ services so that the
        additional state introduced to the network is acceptable and under
        control. It is expected that the number of VPN+ services will be small
        at the beginning, and even in the future the number of VPN+ services
        will be fewer than conventional VPNs because existing VPN techniques
        are good enough to meet the needs of most existing VPN-type
        services.</t>

        <t>In general, it is not required that the state in the network be
        maintained in a 1:1 relationship with the VPN+ services. It will
        usually be possible to aggregate a set or group of VPN+ services so
        that they share the same VTN and the same set of network resources
        (much in the same way that current VPNs are aggregated over transport
        tunnels) so that collections of VPN+ services that require the same
        behavior from the network in terms of resource reservation, latency
        bounds, resiliency, etc. can be grouped together. This is an important
        feature to assist with the scaling characteristics of VPN+
        deployments.</t>

        <t><xref target="I-D.ietf-teas-nrp-scalability"/> provides more
        details of scalability considerations for the network resource
        partitions used to instantiate VTNs, and <xref
        target="scalability-considerations"/> includes a greater discussion of
        scalability considerations.</t>
      </section>
    </section>

    <section anchor="SDDC" title="Candidate Technologies">
      <t>A VPN is a virtual network created by applying a demultiplexing
      technique to the underlying network (the underlay) to distinguish the
      traffic of one VPN from that of another. The connections of VPN are
      supported by a set of underlay paths. A path that travels by other than
      the shortest path through the underlay normally requires state to
      specify that path. The state of the paths could be applied to the
      underlay through the use of the RSVP-TE signaling protocol, or directly
      through the use of an SDN controller. Based on Segment Routing, state
      could be maintained at the ingress node of the path, and carried in the
      data packet. Other techniques may emerge as this problem is studied.
      This state gets harder to manage as the number of paths increases.
      Furthermore, as we increase the coupling between the underlay and the
      overlay to support the VPN+ service, this state is likely to increase
      further.</t>

      <t>VTN can be used to provide a group of virtual underlay paths (VTP)
      with a common set of network resources. Through the use of VTNs, a
      subset of underlay network resource can be either dedicated for a
      particular VPN+ service or shared among a group of VPN+ services. This
      section describes the candidate technologies in different network planes
      which can be used to build VTNs.</t>

      <section anchor="L2-DP" title="Forwarding Resource Partitioning">
        <t>Several candidate layer-2 packet- or frame-based forwarding plane
        mechanisms which can provide the required traffic isolation and
        performance guarantees are described in the following sections.</t>

        <section anchor="flexe" title="Flexible Ethernet">
          <t>FlexE <xref target="FLEXE"/> provides the ability to multiplex
          channels over an Ethernet link to create point-to-point
          fixed-bandwidth connections in a way that provides separation
          between VPN+ services. FlexE also supports bonding links to create
          larger links out of multiple low- capacity links.</t>

          <t>However, FlexE is only a link level technology. When packets are
          received by the downstream node, they need to be processed in a way
          that preserves that traffic isolation in the downstream node. This
          in turn requires a queuing and forwarding implementation that
          preserves the end-to-end separation of enhanced VPNs.</t>

          <t>If different FlexE channels are used for different services, then
          no sharing is possible between the FlexE channels. This means that
          it may be difficult to dynamically redistribute unused bandwidth to
          lower priority services in another FlexE channel. If one FlexE
          channel is used by one customer, the customer can use some methods
          to manage the relative priority of their own traffic in the FlexE
          channel.</t>
        </section>

        <section anchor="dedicated-queues" title="Dedicated Queues">
          <t>DiffServ based queuing systems are described in <xref
          target="RFC2475"/> and <xref target="RFC4594"/>. This approach is
          not sufficient to provide separation of VPN+ services because
          DiffServ does not provide enough markers to differentiate between
          traffic of a large number of VPN+ services. Nor does DiffServ offer
          the range of service classes that each VPN+ service needs to provide
          to its tenants. This problem is particularly acute with an MPLS
          underlay, because MPLS only provides eight traffic classes.</t>

          <t>In addition, DiffServ, as currently implemented, mainly provides
          per- hop priority-based scheduling, and it is difficult to use it to
          achieve quantitative resource reservation for different VPN+
          services.</t>

          <t>To address these problems and to reduce the potential
          interactions between VPN+ services, it would be necessary to steer
          traffic to dedicated input and output queues per VPN+ service or per
          group of VPN+ services: some routers have a large number of queues
          and sophisticated queuing systems which could support this, while
          some routers may struggle to provide the granularity and level of
          separation required by the applications of VPN+.</t>
        </section>

        <section anchor="time-sensitive-networking"
                 title="Time Sensitive Networking">
          <t>Time Sensitive Networking (TSN) <xref target="TSN"/> is an IEEE
          project to provide a method of carrying time sensitive information
          over Ethernet. It introduces the concept of packet scheduling where
          a packet stream may be given a time slot guaranteeing that it
          experiences no queuing delay or increase in latency beyond the very
          small scheduling delay. The mechanisms defined in TSN can be used to
          meet the requirements of time sensitive traffic flows of VPN+
          service.</t>

          <t>Ethernet can be emulated over a layer-3 network using an IP or
          MPLS pseudowire. However, a TSN Ethernet payload would be opaque to
          the underlay and thus not treated specifically as time sensitive
          data. The preferred method of carrying TSN over a layer-3 network is
          through the use of deterministic networking as explained in <xref
          target="deterministic-networking"/>.</t>
        </section>
      </section>

      <section anchor="L3-DP" title="Data Plane Encapsulation and Forwarding">
        <t>This section considers the problem of VPN+ service differentiation
        and the representation of underlying network resources in the network
        layer. More specifically, it describes the possible data plane
        mechanisms to determine the network resources and the logical network
        topology or paths associated with a VTN.</t>

        <section anchor="deterministic-networking"
                 title="Deterministic Networking">
          <t>Deterministic Networking (DetNet) <xref target="RFC8655"/> is a
          technique being developed in the IETF to enhance the ability of
          layer-3 networks to deliver packets more reliably and with greater
          control over the delay. The design cannot use re-transmission
          techniques such as TCP since that can exceed the delay tolerated by
          the applications. DetNet pre-emptively sends copies of the packet
          over various paths to minimize the chance of all copies of a packet
          being lost. It also seeks to set an upper bound on latency, but the
          goal is not to minimize latency. Detnet can be realized over IP data
          plane <xref target="RFC8939"/> or MPLS data plane <xref
          target="RFC8964"/>, and may be used to provide Virtual Transport
          Paths (VTPs) for VPN+ services.</t>
        </section>

        <section anchor="mpls-traffic-engineering-mpls-te"
                 title="MPLS Traffic Engineering (MPLS-TE)">
          <t>MPLS-TE <xref target="RFC2702"/><xref target="RFC3209"/>
          introduces the concept of reserving end-to-end bandwidth for a
          TE-LSP, which can be used to provide a point-to-point Virtual
          Transport Path (VTP) across the underlay network to support VPN
          services. VPN traffic can be carried over dedicated TE-LSPs to
          provide reserved bandwidth for each specific connection in a VPN,
          and VPNs with similar behavior requirements may be multiplexed onto
          the same TE-LSPs. Some network operators have concerns about the
          scalability and management overhead of MPLS-TE system, especially
          with regard to those systems that use an active control plane, and
          this has lead them to consider other solutions for traffic
          engineering in their networks.</t>
        </section>

        <section anchor="SR" title="Segment Routing">
          <t>Segment Routing (SR) <xref target="RFC8402"/> is a method that
          prepends instructions to packets at the head-end of a path. These
          instructions are used to specify the nodes and links to be
          traversed, and allow the packets to be routed on paths other than
          the shortest path. By encoding the state in the packet, per-path
          state is transitioned out of the network. SR can be instantiated
          using MPLS data plane (SR-MPLS) or IPv6 data plane (SRv6).</t>

          <t>An SR traffic engineered path operates with a granularity of a
          link. Hints about priority are provided using the Traffic Class (TC)
          field in the packet header. However, to achieve the performance and
          isolation characteristics that are sought by VPN+ customers, it will
          be necessary to steer packets through specific virtual links and/or
          queues on the same link and direct them to use specific resources.
          With SR, it is possible to introduce such fine-grained packet
          steering by specifying the queues and the associated resources
          through an SR instruction list.</t>

          <t>Note that the concept of a queue is a useful abstraction for
          different types of underlay mechanism that may be used to provide
          enhanced isolation and performance support. How the queue satisfies
          the requirement is implementation specific and is transparent to the
          layer-3 data plane and control plane mechanisms used.</t>

          <t>With Segment Routing, the SR instruction list could be used to
          build a P2P path, and a group of SR Segment Identifiers (SIDs) could
          also be used to represent an MP2MP network. Thus, the SR based
          mechanism could be used to provide both a Virtual Transport Path
          (VTP) and a Virtual Transport Network (VTN) for VPN+ services.</t>
        </section>

        <section title="New Encapsulation Extensions">
          <t>In contrast to reusing existing data plane for VPN+, another
          possible approach is to introduce new encapsulations or extensions
          to existing data plane to allow dedicated identifiers for the
          underlay network resources of a VTN, and the logical network
          topology or paths associated with a VTN. This may require more
          protocol work, while the potential benefit is it can reduce the
          impact to existing network operation and improve the scalability of
          VPN+. More details about the encapsulation extensions are described
          in <xref target="I-D.ietf-teas-nrp-scalability"/>.</t>
        </section>
      </section>

      <section anchor="Non-Packet-DP" title="Non-Packet Data Plane">
        <t>Non-packet underlay data plane technologies often have TE
        properties and behaviors, and meet many of the key requirements in
        particular for bandwidth guarantees, traffic isolation (with physical
        isolation often being an integral part of the technology), highly
        predictable latency and jitter characteristics, measurable loss
        characteristics, and ease of identification of flows. The cost is that
        the resources are allocated on a long-term and end-to-end basis. Such
        an arrangement means that the full cost of the resources has to be
        borne by the client to which the resources are allocated. When a VTN
        built with this data plane is used to support multiple VPN+ services,
        the cost could be distributed among such group of services.</t>
      </section>

      <section anchor="control-plane" title="Control Plane">
        <t>The control plane of VPN+ would likely be based on a hybrid control
        mechanism that takes advantage of a logically centralized controller
        for on-demand provisioning and global optimization, whilst still
        relying on a distributed control plane to provide scalability, high
        reliability, fast reaction, automatic failure recovery, etc. Extension
        to and optimization of the centralized and distributed control plane
        is needed to support the enhanced properties of VPN+.</t>

        <t>As described in Section 4, the VPN+ control plane needs to provide
        the following functions: <list style="symbols">
            <t>Collect information about the underlying network topology and
            network resources, and exports this to network nodes and/or a
            centralized controller as required.</t>

            <t>Create VTNs with the network resource and topology properties
            needed by the VPN+ services.</t>

            <t>Distribute the attributes of VTNs to network nodes which
            participate in the VTNs and/or the centralized controller.</t>

            <t>Map VPN+ services to an appropriate VTN.</t>

            <t>Compute and set up VTPs in each VTN to meet VPN+ service
            requirements.</t>
          </list></t>

        <t>The collection of underlying network topology and resource
        information can be done using existing the IGP and Border Gateway
        Protocol - Link State (BGP-LS) <xref target="RFC7752"/> based
        mechanisms. The creation of VTN and the distribution of VTN attributes
        may need further control protocol extensions. The computation of VTPs
        based on the attributes and constraints of the VTN can be performed
        either by the headend node of the path or a centralized Path
        Computation Element (PCE) <xref target="RFC4655"/>.</t>

        <t>There are two candidate control plane mechanisms for the setup of
        VTPs in the VTN: RSVP-TE and Segment Routing (SR).</t>

        <t><list style="symbols">
            <t>RSVP-TE <xref target="RFC3209"/> provides the signaling
            mechanism for establishing a TE-LSP in an MPLS network with
            end-to-end resource reservation. This can be seen as an approach
            of providing a Virtual Transport Path (VTP) which could be used to
            bind the VPN to specific network resources allocated within the
            underlay, but there remain scalability concerns as mentioned in
            <xref target="mpls-traffic-engineering-mpls-te"/>.</t>

            <t>The SR control plane <xref target="RFC8665"/> <xref
            target="RFC8667"/> <xref target="RFC9085"/> does not have the
            capability of signaling resource reservations along the path. On
            the other hand, the SR approach provides a potential way of
            binding the underlay network resource and the VTNs without
            requiring per-path state to be maintained in the network. A
            centralized controller can perform resource planning and
            reservation for VTNs, and it needs to instruct the network nodes
            to ensure that resources are correctly allocated for the VTN. The
            controller could provision the SR paths based on the mechanism in
            <xref target="RFC9256"/> to the headend nodes of the paths.</t>
          </list></t>

        <t>According to the service requirements for connectivity, performance
        and isolation, one VPN+ service may be mapped a dedicated VTN, or a
        group of VPN+ services may be mapped to the same VTN. The mapping of
        VPN+ services to VTN can be achieved using existing control mechanisms
        with possible extensions, and it can be based on either the
        characteristics of the data packet or the attributes of the VPN
        service routes.</t>
      </section>

      <section anchor="management-plane" title="Management Plane">
        <t>The management plane provides the interface between the VPN+
        service provider and the customers for life-cycle management of the
        VPN+ service (i.e., creation, modification, assurance/monitoring, and
        decommissioning). It relies on a set of service data models for the
        description of the information and operations needed on the
        interface.</t>

        <t>As an example, in the context of 5G end-to-end network slicing
        <xref target="TS28530"/>, the management of the transport network
        segment of the 5G end-to-end network slice can be realized with the
        management plane of VPN+. The 3GPP management system may provide the
        connectivity and performance related parameters as requirements to the
        management plane of the transport network. It may also require the
        transport network to expose the capabilities and status of the network
        slice. Thus, an interface between the VPN+ management plane and the 5G
        network slice management system, and relevant service data models are
        needed for the coordination of 5G end-to-end network slice
        management.</t>

        <t>The management plane interface and data models for VPN+ services
        can be based on the service models described in <xref
        target="sdm-app"/>.</t>

        <t>It is important that the management life-cycle supports in-place
        modification of VPN+ services. That is, it should be possible to add
        and remove end points, as well as to change the requested
        characteristics of the service that is delivered. The management
        system needs to be able to assess the revised VPN+ requests and
        determine whether they can be provided by the existing VTNs or whether
        changes must be made, and it will additionally need to determine
        whether those changes to the VTN are possible. If not, then the
        customer's modification request may be rejected.</t>

        <t>When the modification of a VPN+ service is possible, the management
        system must make every effort to make the changes in a non-disruptive
        way. That is, the modification of the VPN+ service or the underlying
        VTN must not perturbate traffic on the VPN+ service in a way that
        causes the service level to drop below the agreed levels. Furthermore,
        changes to one VPN+ service should not cause disruption to other VPN+
        services.</t>

        <t>The network operator for the underlay network (i.e., the provider
        of the VPN+ service) may delegate some operational aspects of the
        overlay VPN and the underlying VTN to the customer. In this way, the
        VPN+ is presented to the customer as a virtual network, and the
        customer can choose how to use that network. Some mechanisms in the
        operator's network is needed, so that a customer cannot exceed the
        capabilities of the virtual links and nodes, but can decide how to
        load traffic onto the network, for example, by assigning different
        metrics to the virtual links so that the customer can control how
        traffic is routed through the virtual network. This approach requires
        a management system for the virtual network, but does not necessarily
        require any coordination between the management systems of the virtual
        network and the physical network, except that the virtual network
        management system might notice when the VTN is close to capacity or
        considerably under-used and automatically request changes in the
        service provided by the underlay network.</t>
      </section>

      <section anchor="sdm-app"
               title="Applicability of Service Data Models to VPN+">
        <t>This section describes the applicability of the existing and
        in-progress service data models to VPN+. <xref target="RFC8309"/>
        describes the scope and purpose of service models and shows where a
        service model might fit into an SDN based network management
        architecture. New service models may also be introduced for some of
        the required management functions.</t>

        <t>Service data models are used to represent, monitor, and manage the
        virtual networks and services enabled by VPN+. The VPN customer
        service models (e.g., the Layer 3 VPN Service Model (L3SM) <xref
        target="RFC8299"/>, the Layer 2 VPN Service Model (L2SM) <xref
        target="RFC8466"/>), or the ACTN Virtual Network (VN) model <xref
        target="I-D.ietf-teas-actn-vn-yang"/>) are service models which can
        provide the customer's view of the VPN+ service. The Layer-3 VPN
        Network Model (L3NM) <xref target="RFC9182"/>, the Layer-2 VPN network
        model (L2NM) <xref target="RFC9291"/> provide the operator's view of
        the managed infrastructure as a set of virtual networks and the
        associated resources. The Service Attachment Points (SAPs) model <xref
        target="RFC9408"/> provides an abstract view of the service attachment
        points (SAPs) to various network services in the provider network,
        where VPN+ could be one of the service types. Augmentation to these
        service models may be needed to provide the VPN+ services. The NRP
        model <xref target="I-D.wdbsp-teas-nrp-yang"/> further provides the
        management of the NRP topology and resources both in the controller
        and in the network devices to instantiate the VTNs needed for the VPN+
        services.</t>
      </section>
    </section>

    <section title="Applicability in Network Slice Realization">
      <t>This section describes the applicability of VPN+ for network slice
      realization.</t>

      <t>In order to provide network slices to customers, a
      technology-agnostic network slice service model <xref
      target="I-D.ietf-teas-ietf-network-slice-nbi-yang"/> is needed for the
      customers to communicate the requirements of network slices (end points,
      connectivity, SLOs, and SLEs). These requirements may be realized using
      technology specified in this document to instruct the network to deliver
      a VPN+ service so as to meet the requirements of the network slice
      customers.</t>

      <section title="NRP Planning">
        <t>In the network slicing context, an NRP is considered as the
        instantiation of VTN to support the network slice services. According
        to the network operators' network resource planning policy, or based
        on the requirements of one or a group of customers or services, an NRP
        may need to be created to meet the requirements of network slice
        services. One of the basic requirements for the NRP is to provide a
        set of dedicated network resources to avoid unexpected interference
        from other services in the same network. Other possible requirements
        may include the required topology and connectivity, bandwidth,
        latency, reliability, etc.</t>

        <t>A centralized network controller can be responsible for calculating
        a subset of the underlay network topology (which is called a logical
        topology) to support the NRP requirement. And on the network nodes and
        links within the logical topology, the set of network resources to be
        allocated to the NRP can also be determined by the controller.
        Normally such calculation needs to take the underlay network
        connectivity information and the available network resource
        information of the underlay network into consideration. The network
        controller may also take the status of the existing NRPs into
        consideration in the planning and calculation of a new NRP.</t>
      </section>

      <section title="NRP Creation">
        <t>According to the result of the NRP planning, the network nodes and
        links involved in the logical topology of the NRP are instructed to
        allocated the required set of network resources for the NRP. One or
        multiple mechanisms as specified in section 5.1 can be used to
        partition the forwarding plane network resources and allocate
        different subsets of resources to different NRPs. In addition, the
        data plane identifiers which are used to identify the set of network
        resources allocated to the NRP are also provisioned on the network
        nodes. Depending on the data plane technologies used, the set of
        network resources of an NRP can be identified using e.g. either
        resource aware SR segments as specified in <xref
        target="I-D.ietf-spring-resource-aware-segments"/> <xref
        target="I-D.ietf-spring-sr-for-enhanced-vpn"/>, or a dedicated
        Resource ID as specified in <xref
        target="I-D.ietf-6man-enhanced-vpn-vtn-id"/> can be introduced. The
        network nodes involved in an NRP may distribute the logical topology
        information, the NRP specific network resource information and the
        Resource Identifier of the NRP using the control plane. Such
        information could be used by the controller and the network nodes to
        compute the TE or shortest paths within the NRP, and install the NRP
        specific forwarding entries to network nodes.</t>
      </section>

      <section title="Network Slice Service Provisioning">
        <t>According to the connectivity requirements of an network slice
        service, an overlay VPN can be created using the existing or future
        multi-tenancy overlay technologies as described in <xref
        target="applicability"/>.</t>

        <t>Then according to the SLO and SLE requirements of a network slice
        service, the network slice service is mapped to an appropriate NRP as
        the virtual underlay. The integration of the overlay VPN and the
        underlay NRP together provide a network slice service.</t>
      </section>

      <section title="Network Slice Traffic Steering and Forwarding ">
        <t>At the edge of the operator's network, traffic of network slices
        can be classified based on the rules defined by the operator's policy,
        so that the traffic which matches the rules for specific network slice
        services can be mapped to the corresponding NRP. This way, packets
        belonging to specific network slice service will be processed and
        forwarded by network nodes based either the traffic-engineered paths
        or the shortest paths in the associated network topology, using the
        set of network resources of the corresponding NRP.</t>
      </section>
    </section>

    <section anchor="scalability-considerations"
             title="Scalability Considerations">
      <t>VPN+ provides performance guaranteed services in packet networks, but
      with the potential cost of introducing additional state into the
      network. There are at least three ways that this additional state might
      be brought into the network:</t>

      <t><list style="symbols">
          <t>Introduce the complete state into the packet, as is done in SR.
          This allows the controller to specify the detailed series of
          forwarding and processing instructions for the packet as it transits
          the network. The cost of this is an increase in the packet header
          size. The cost is also that systems will have to provide VTN
          specific segments in case they are called upon by a service. This is
          a type of latent state, and increases as the segments and resources
          that need to be exclusively available to VPN+ service are specified
          more precisely.</t>

          <t>Introduce the state to the network. This is normally done by
          creating a path using signaling such as RSVP-TE. This could be
          extended to include any element that needs to be specified along the
          path, for example explicitly specifying queuing policy. It is also
          possible to use other methods to introduce path state, such as via
          an SDN controller, or possibly by modifying a routing protocol. With
          this approach there is state per path: per-path characteristic that
          needs to be maintained over the life of the path. This is more
          network state than is needed using SR, but the packets are usually
          shorter.</t>

          <t>Provide a hybrid approach. One example is based on using binding
          SIDs <xref target="RFC8402"/> to represent path fragments, and bind
          them together with SR. Dynamic creation of a VPN service path using
          SR requires less state maintenance in the network core at the
          expense of larger packet headers. The packet size can be lower if a
          form of loose source routing is used (using a few nodal SIDs), and
          it will be lower if no specific functions or resources on the
          routers are specified.</t>
        </list></t>

      <t>Reducing the state in the network is important to VPN+, as it
      requires the overlay to be more closely integrated with the underlay
      than with conventional VPNs. This tighter coupling would normally mean
      that more state needs to be created and maintained in the network, as
      the state about fine granularity processing would need to be loaded and
      maintained in the routers. Aggregation is a well-established approach to
      reduce the amount of state and improve scaling, and VTN is considered as
      the network construct to aggregate the states of VPN+ services. In
      addition, an SR approach allows much of the state to be spread amongst
      the network ingress nodes, and transiently carried in the packets as
      SIDs.</t>

      <t>The following subsections describe some of the scalability concerns
      that need to be considered. Further discussion of the scalability
      considerations of the underlaying network construct of VPN+ can be found
      in <xref target="I-D.ietf-teas-nrp-scalability"/>.</t>

      <section anchor="maximum-stack-depth" title="Maximum Stack Depth of SR">
        <t>One of the challenges with SR is the stack depth that nodes are
        able to impose on packets <xref target="RFC8491"/>. This leads to a
        difficult balance between adding state to the network and minimizing
        stack depth, or minimizing state and increasing the stack depth.</t>
      </section>

      <section anchor="rsvp-scalability" title="RSVP-TE Scalability">
        <t>The established method of creating a resource allocated path
        through an MPLS network is to use the RSVP-TE protocol. However, there
        have been concerns that this requires significant continuous state
        maintenance in the network. Work to improve the scalability of RSVP-TE
        LSPs in the control plane can be found in <xref
        target="RFC8370"/>.</t>

        <t>There is also concern at the scalability of the forwarder footprint
        of RSVP-TE as the number of paths through a label switching router
        (LSR) grows. <xref target="RFC8577"/> addresses this by employing SR
        within a tunnel established by RSVP-TE.</t>
      </section>

      <section title="SDN Scaling">
        <t>The centralized approach of SDN requires state to be stored in the
        network, but does not have the overhead of also requiring control
        plane state to be maintained. Each individual network node may need to
        maintain a communication channel with an SDN controller, but that
        compares favorably with the need for a control plane to maintain
        communication with all neighbors.</t>

        <t>However, SDN may transfer some of the scalability concerns from the
        network to a centralized controller. In particular, there may be a
        heavy processing burden at the controller, and a heavy load in the
        network surrounding the controller. A centralized controller may also
        present a single point of failure within the network.</t>
      </section>
    </section>

    <section anchor="oam-and-instrumentation"
             title="Manageability Considerations">
      <t>This section describes the considerations about the OAM and Telemetry
      mechanisms used to support the verification, monitoring and optimization
      of the characteristics and SLA fulfillment of the VPN+ services.</t>

      <section title="OAM Considerations">
        <t>The design of OAM for VPN+ services needs to consider the following
        requirements:</t>

        <t><list style="symbols">
            <t>Instrumentation of the underlay so that the network operator
            can be sure that the resources committed to a customer are
            operating correctly and delivering the required performance.</t>

            <t>Instrumentation of the overlay by the customer. This is likely
            to be transparent to the network operator and to use existing
            methods. Particular consideration needs to be given to the need to
            verify the various committed performance characteristics.</t>

            <t>Instrumentation of the overlay by the service provider to
            proactively demonstrate that the committed performance is being
            delivered. This needs to be done in a non-intrusive manner,
            particularly when the tenant is deploying a performance sensitive
            application.</t>
          </list>A study of OAM in SR networks is documented in <xref
        target="RFC8403"/>.</t>
      </section>

      <section title="Telemetry Considerations">
        <t>Network visibility is essential for network operation. Network
        telemetry has been considered as an ideal means to gain sufficient
        network visibility with better flexibility, scalability, accuracy,
        coverage, and performance than conventional OAM technologies.</t>

        <t>As defined in <xref target="RFC9232"/>, the objective of Network
        Telemetry is to acquire network data remotely for network monitoring
        and operation. It is a general term for a large set of network
        visibility techniques and protocols. Network telemetry addresses the
        current network operation issues and enables smooth evolution toward
        intent-driven autonomous networks. Telemetry can be applied on the
        forwarding plane, the control plane, and the management plane in a
        network.</t>

        <t>How the telemetry mechanisms could be used or extended for the VPN+
        service is out of the scope of this document.</t>
      </section>
    </section>

    <section anchor="enhanced-resiliency" title="Enhanced Resiliency">
      <t>Each VPN+ service has a life cycle, and may need modification during
      deployment as the needs of its tenant change. This is discussed in <xref
      target="management-plane"/>. Additionally, as the network evolves, there
      may need to perform garbage collection to consolidate resources into
      usable quanta.</t>

      <t>Systems in which the path is imposed, such as SR or some form of
      explicit routing, tend to do well in these applications, because it is
      possible to perform an atomic transition from one path to another. That
      is, a single action by the head-end that changes the path without the
      need for coordinated action by the routers along the path. However,
      implementations and the monitoring protocols need to make sure that the
      new path is operational and meets the required SLA before traffic is
      transitioned to it. It is possible for deadlocks to arise as a result of
      the network becoming fragmented over time, such that it is impossible to
      create a new path or to modify an existing path without impacting the
      SLA of other paths. The global concurrent optimization mechanisms as
      described in <xref target="RFC5557"/> and discussed in <xref
      target="RFC7399"/> may be helpful, while complete resolution of this
      situation is as much a commercial issue as it is a technical issue.</t>

      <t>There are, however, two manifestations of the latency problem that
      are for further study in any of these approaches:</t>

      <t><list style="symbols">
          <t>The problem of packets overtaking one another if a path latency
          reduces during a transition.</t>

          <t>The problem of transient variation in latency in either direction
          as a path migrates.</t>
        </list></t>

      <t>There is also the matter of what happens during failure in the
      underlay infrastructure. Fast reroute is one approach, but that still
      produces a transient loss with a normal goal of rectifying this within
      50ms <xref target="RFC5654"/>. An alternative is some form of N+1
      delivery such as has been used for many years to support protection from
      service disruption. This may be taken to a different level using the
      techniques of DetNet with multiple in-network replication and the
      culling of later packets <xref target="RFC8655"/>.</t>

      <t>In addition to the approach used to protect high priority packets,
      consideration should be given to the impact of best effort traffic on
      the high priority packets during a transition. Specifically, if a
      conventional re-convergence process is used there will inevitably be
      micro-loops and whilst some form of explicit routing will protect the
      high priority traffic, lower priority traffic on best effort shortest
      paths will micro-loop without the use of a loop prevention technology.
      To provide the highest quality of service to high priority traffic,
      either this traffic must be shielded from the micro-loops, or
      micro-loops must be prevented completely.</t>
    </section>

    <section title="Operational Considerations">
      <t>It is expected that VPN+ services will be introduced in networks
      which already have conventional VPN services deployed. Depending on
      service requirements, the tenants or the operator may choose to use a
      VPN or a VPN+ to fulfill a service requirement. The information and
      parameters to assist such a decision needs to be supplied on the
      management interface between the tenant and the operator.</t>
    </section>

    <section anchor="security-considerations" title="Security Considerations">
      <t>All types of virtual network require special consideration to be
      given to the isolation of traffic belonging to different tenants. That
      is, traffic belonging to one VPN must not be delivered to end points
      outside that VPN. In this regard VPN+ neither introduces, nor
      experiences greater security risks than other VPNs.</t>

      <t>However, in a VPN+ service the additional service requirements need
      to be considered. For example, if a service requires a specific upper
      bound to latency then it can be damaged by simply delaying the packets
      through the activities of another tenant, i.e., by introducing bursts of
      traffic for other services. In some respects this makes the VPN+ more
      susceptible to attacks since the SLA may be broken. But another view is
      that the operator must, in any case, preform monitoring of the VPN+ to
      ensure that the SLA is met, and this means that the operator may be more
      likely to spot the early onset of a security attack and be able to take
      pre-emptive protective action.</t>

      <t>The measures to address these dynamic security risks must be
      specified as part of the specific solution to the isolation requirements
      of a VPN+ service.</t>

      <t>While a VPN+ service may be sold as offering encryption and other
      security features as part of the service, customers would be well
      advised to take responsibility for their own security requirements
      themselves possibly by encrypting traffic before handing it off to the
      service provider.</t>

      <t>The privacy of VPN+ service customers must be preserved. It should
      not be possible for one customer to discover the existence of another
      customer, nor should the sites that are members of an VPN+ be externally
      visible.</t>

      <t>A VPN+ service (even one with traffic isolation requirements or with
      limited interaction with other enhanced VPNs) does not provide any
      additional guarantees of privacy for customer traffic compared to
      regular VPNs: the traffic within the network may be intercepted and
      errors may lead to mis-delivery. Users who wish to ensure the privacy of
      their traffic must take their own precautions including end-to-end
      encryption.</t>
    </section>

    <section anchor="iana-considerations" title="IANA Considerations">
      <t>There are no requested IANA actions.</t>
    </section>

    <section anchor="contributors" title="Contributors">
      <t><figure>
          <artwork><![CDATA[
   Daniel King
   Email: daniel@olddog.co.uk

   Adrian Farrel
   Email: adrian@olddog.co.uk

   Jeff Tansura
   Email: jefftant.ietf@gmail.com

   Zhenbin Li
   Email: lizhenbin@huawei.com

   Qin Wu
   Email: bill.wu@huawei.com

   Bo Wu
   Email: lana.wubo@huawei.com

   Daniele Ceccarelli
   Email: daniele.ceccarelli@ericsson.com

   Mohamed Boucadair
   Email: mohamed.boucadair@orange.com

   Sergio Belotti
   Email: sergio.belotti@nokia.com

   Haomian Zheng
   Email: zhenghaomian@huawei.com           ]]></artwork>
        </figure></t>
    </section>

    <section title="Acknowledgements">
      <t>The authors would like to thank Charlie Perkins, James N Guichard,
      John E Drake, Shunsuke Homma, Luis M. Contreras, and Joel Halpern for
      their review and valuable comments.</t>

      <t>This work was supported in part by the European Commission funded
      H2020-ICT-2016-2 METRO-HAUL project (G.A. 761727).</t>
    </section>
  </middle>

  <back>
    <references title="Informative References">
      <reference anchor="TS23501"
                 target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3144">
        <front>
          <title>3GPP TS23.501</title>

          <author>
            <organization/>
          </author>

          <date year="2016"/>
        </front>
      </reference>

      <reference anchor="TS28530"
                 target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3273">
        <front>
          <title>3GPP TS28.530</title>

          <author>
            <organization/>
          </author>

          <date year="2016"/>
        </front>
      </reference>

      <reference anchor="NGMN-NS-Concept"
                 target="https://www.ngmn.org/fileadmin/user_upload/161010_NGMN_Network_Slicing_framework_v1.0.8.pdf">
        <front>
          <title>NGMN NS Concept</title>

          <author>
            <organization>hao ,</organization>
          </author>

          <date year="2016"/>
        </front>
      </reference>

      <reference anchor="FLEXE"
                 target="http://www.oiforum.com/wp-content/uploads/OIF-FLEXE-01.0.pdf">
        <front>
          <title>Flex Ethernet Implementation Agreement</title>

          <author>
            <organization/>
          </author>

          <date month="March" year="2016"/>
        </front>
      </reference>

      <reference anchor="TSN" target="https://1.ieee802.org/tsn/">
        <front>
          <title>Time-Sensitive Networking</title>

          <author>
            <organization/>
          </author>

          <date month="March" year=""/>
        </front>
      </reference>

      <?rfc include='reference.I-D.ietf-teas-actn-vn-yang'?>

      <?rfc include='reference.I-D.ietf-teas-ietf-network-slice-nbi-yang'?>

      <?rfc include='reference.I-D.ietf-teas-ietf-network-slices'?>

      <?rfc include='reference.I-D.ietf-teas-nrp-scalability'?>

      <?rfc include='reference.I-D.ietf-spring-resource-aware-segments'?>

      <?rfc include='reference.I-D.ietf-spring-sr-for-enhanced-vpn'?>

      <?rfc include='reference.I-D.ietf-6man-enhanced-vpn-vtn-id'?>

      <?rfc include='reference.I-D.wdbsp-teas-nrp-yang'?>

      <?rfc include='reference.RFC.2211'?>

      <?rfc include='reference.RFC.2764'?>

      <?rfc include='reference.RFC.3985'?>

      <?rfc include='reference.RFC.4664'?>

      <?rfc include='reference.RFC.2475'?>

      <?rfc include='reference.RFC.2702'?>

      <?rfc include='reference.RFC.3209'?>

      <?rfc include='reference.RFC.3931'?>

      <?rfc include='reference.RFC.4026'?>

      <?rfc include='reference.RFC.4176'?>

      <?rfc include='reference.RFC.4364'?>

      <?rfc include='reference.RFC.4448'?>

      <?rfc include='reference.RFC.4594'?>

      <?rfc include='reference.RFC.4655'?>

      <?rfc include='reference.RFC.4719'?>

      <?rfc include='reference.RFC.5557'?>

      <?rfc include='reference.RFC.5654'?>

      <?rfc include='reference.RFC.7149'?>

      <?rfc include='reference.RFC.7209'?>

      <?rfc include='reference.RFC.7297'?>

      <?rfc include='reference.RFC.7399'?>

      <?rfc include='reference.RFC.7432'?>

      <?rfc include='reference.RFC.7665'?>

      <?rfc include='reference.RFC.7752'?>

      <?rfc include='reference.RFC.7926'?>

      <?rfc include='reference.RFC.8172'?>

      <?rfc include='reference.RFC.8299'?>

      <?rfc include='reference.RFC.8309'?>

      <?rfc include='reference.RFC.8370'?>

      <?rfc include='reference.RFC.8402'?>

      <?rfc include='reference.RFC.8403'?>

      <?rfc include='reference.RFC.8453'?>

      <?rfc include='reference.RFC.8466'?>

      <?rfc include='reference.RFC.8491'?>

      <?rfc include='reference.RFC.8568'?>

      <?rfc include='reference.RFC.8577'?>

      <?rfc include='reference.RFC.8578'?>

      <?rfc include='reference.RFC.8655'?>

      <?rfc include='reference.RFC.8665'?>

      <?rfc include='reference.RFC.8667'?>

      <?rfc include='reference.RFC.8939'?>

      <?rfc include='reference.RFC.8964'?>

      <?rfc include='reference.RFC.9085'?>

      <?rfc include='reference.RFC.9182'?>

      <?rfc include='reference.RFC.9256'?>

      <?rfc include='reference.RFC.9291'?>

      <?rfc include='reference.RFC.9232'?>

      <?rfc include='reference.RFC.9408'?>
    </references>
  </back>

  <!---->
</rfc>
