<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-teas-ns-ip-mpls-10" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="IP/MPLS Network Slicing">Realizing Network Slices in IP/MPLS Networks</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-teas-ns-ip-mpls-10"/>
    <author initials="T." surname="Saad" fullname="Tarek Saad">
      <organization>Cisco Systems Inc.</organization>
      <address>
        <email>tsaad.net@gmail.com</email>
      </address>
    </author>
    <author initials="V." surname="Beeram" fullname="Vishnu Pavan Beeram">
      <organization>HPE</organization>
      <address>
        <email>vishnupavan.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="J." surname="Dong" fullname="Jie Dong">
      <organization>Huawei Technologies</organization>
      <address>
        <email>jie.dong@huawei.com</email>
      </address>
    </author>
    <author initials="J." surname="Halpern" fullname="Joel Halpern">
      <organization>HPE</organization>
      <address>
        <email>joel.halpern@hpe.com</email>
      </address>
    </author>
    <author initials="S." surname="Peng" fullname="Shaofu Peng">
      <organization>ZTE Corporation</organization>
      <address>
        <email>peng.shaofu@zte.com.cn</email>
      </address>
    </author>
    <date year="2026" month="September" day="29"/>
    <workgroup>TEAS Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 50?>

<t>Realizing network slices may require the Service Provider to have the ability to
partition a physical network into multiple logical networks of varying sizes,
structures, and functions so that each slice can be dedicated to specific
services or customers. Multiple network slices can be realized on the same
network while ensuring slice elasticity in terms of network resource
allocation. This document describes a scalable solution to realize network
slicing in IP/MPLS networks by supporting multiple services on top of a single
physical network by requiring compliant domains and nodes to provide
forwarding treatment (scheduling, drop policy, resource usage) based on
slice identifiers.</t>
    </abstract>
  </front>
  <middle>
    <?line 63?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Network slicing allows a Service Provider to create independent and logical
networks on top of a shared physical network infrastructure. Such network
slices can be offered to customers or used internally by the Service Provider
to enhance the delivery of their service offerings. A Service Provider can also
use network slicing to structure and organize the elements of its
infrastructure. The solution discussed in this document works with any path
control technology (such as RSVP-TE, or SR) that can be used by a Service Provider
to realize network slicing in IP/MPLS networks.</t>
      <t><xref target="RFC9543"/> provides the definition of a network
slice for use within the IETF and discusses the general framework for
requesting and operating IETF Network Slices, their characteristics, and the
necessary system components and interfaces. It also  discusses the function of
an IETF Network Slice Controller and the requirements on its northbound and
southbound interfaces.</t>
      <t>This document introduces the notion of a Slice-Flow Aggregate which comprises
of one or more IETF network slice traffic streams. It also describes the
Network Resource Partition (NRP) and the NRP Policy that can be used to
instantiate control and data plane behaviors on select topological elements
associated with the NRP that supports a Slice-Flow
Aggregate - refer <xref target="SliceDefinition"/> for further details.</t>
      <t>The IETF Network Slice Controller is responsible for the aggregation of
multiple IETF network traffic streams into a Slice-Flow Aggregate, and for
maintaining the mapping required between them. The mechanisms used by the
controller to determine the mapping of one or more IETF network slice to a
Slice-Flow Aggregate are outside the scope of this document. The focus of this
document is on the mechanisms required at the device level to address the
requirements of network slicing in packet networks.</t>
      <t>In a Diffserv (DS) domain <xref target="RFC2475"/>, packets requiring the same forwarding
treatment (scheduling and drop policy) are classified and marked with the
respective Class Selector (CS) Codepoint (or the Traffic Class (TC) field for
MPLS packets <xref target="RFC5462"/>) at the DS domain ingress nodes.  Such packets are
said to belong to a Behavior Aggregate (BA) that has a common set of behavioral
characteristics or a common set of delivery requirements.  At transit nodes,
the CS is inspected to determine the specific forwarding treatment to be
applied before the packet is forwarded.  A similar approach is adopted in this
document to realize network slicing. The solution proposed in this document
does not mandate Diffserv to be enabled in the network to provide a specific
forwarding treatment. If Diffserv is enabled within the network, the Slice-Flow
Aggregate traffic can further carry a Diffserv CS to enable differentiation of
forwarding treatments for packets within a Slice-Flow Aggregate.</t>
      <t>When logical networks associated with an NRP are realized on top of a shared
physical network infrastructure, it is important to steer traffic on the
specific network resources partition that is allocated for a given Slice-Flow
Aggregate.  In packet networks, the packets of a specific Slice-Flow Aggregate
may be identified by one or more specific fields carried within the packet. An
NRP ingress boundary node (where Slice-Flow Aggregate traffic enters the NRP)
populates the respective field(s) in packets that are
mapped to a Slice-Flow Aggregate in order to allow interior NRP nodes to
identify and apply the specific Per NRP Hop Behavior (NRP-PHB) associated with the
Slice-Flow Aggregate. The NRP-PHB defines the scheduling treatment and, in some
cases, the packet drop probability.</t>
      <t>This document covers different modes of NRPs and discusses how
each mode can ensure proper placement of Slice-Flow Aggregate paths
and respective treatment of Slice-Flow Aggregate traffic.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>In this document, the key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <t>The reader is expected to be familiar with the terminology specified in
<xref target="RFC9543"/>.</t>
        <t>The following terminology is used in the document:</t>
        <dl newline="true">
          <dt>IETF Network Slice:</dt>
          <dd>
            <t>refer to the definition of 'IETF network slice' in 
<xref target="RFC9543"/>.</t>
          </dd>
          <dt>IETF Network Slice Controller (NSC):</dt>
          <dd>
            <t>refer to the definition in <xref target="RFC9543"/>.</t>
          </dd>
          <dt>Network Resource Partition:</dt>
          <dd>
            <t>refer to the definition in <xref target="RFC9543"/>.</t>
          </dd>
          <dt>Slice-Flow Aggregate:</dt>
          <dd>
            <t>a collection of packets that are mapped to an NRP and are given the same
forwarding treatment; a Slice-Flow Aggregate comprises one or more IETF
network slice traffic streams from one or more connectivity constructs
(belonging to one or more IETF network slices); the mapping of one or more IETF
network slice streams to a Slice-Flow Aggregate is maintained by the IETF Network
Slice Controller.  The boundary nodes MAY also maintain a mapping of specific
IETF network slice service(s) to a Slice-Flow Aggregate.</t>
          </dd>
          <dt>Network Resource Partition Policy (NRP):</dt>
          <dd>
            <t>a policy construct that enables instantiation of mechanisms in support 
of IETF network slice specific control and data plane behaviors 
on select topological elements; the enforcement of an NRP Policy 
results in the creation of an NRP.</t>
          </dd>
          <dt>NRP Domain:</dt>
          <dd>
            <t>a network region under common administrative control within
which NRP Identifiers (NRP-IDs) are uniquely allocated and
managed, and within which NRP Policies are instantiated on
network elements to govern the partitioning of network
resources. An NRP domain has boundary nodes that are
responsible for NRP Selector handling (e.g., addition,
removal, stacking, or remapping) at the edges of the domain.
A network slice may span one or more NRP domains, each of
which independently manages its own NRP-ID space and resource
allocations.</t>
          </dd>
          <dt>NRP Identifier (NRP-ID):</dt>
          <dd>
            <t>an identifier that is globally unique within an NRP domain and that can be used in the control or management plane to identify the resources associated with the NRP. The NRP-ID is represented as a 32-bit unsigned integer, with a value of 0 reserved for future use.</t>
          </dd>
          <dt>NRP Selector:</dt>
          <dd>
            <t>one or more fields (markings) in a packet's network layer header
that are used to map the packet to an NRP.</t>
          </dd>
          <dt>NRP Selector Identifier (NRP Selector ID):</dt>
          <dd>
            <t>a dedicated identifier that acts as an NRP Selector.</t>
          </dd>
          <dt>NRP Capable Node:</dt>
          <dd>
            <t>a node that supports one of the NRP modes described in this document.</t>
          </dd>
          <dt>NRP Incapable Node:</dt>
          <dd>
            <t>a node that does not support any of the NRP modes described in this document.</t>
          </dd>
          <dt>Slice-Flow Aggregate Path:</dt>
          <dd>
            <t>a path that is set up over the NRP that is associated with a specific Slice-Flow Aggregate.</t>
          </dd>
          <dt>Slice-Flow Aggregate Packet:</dt>
          <dd>
            <t>a packet that traverses over the NRP that is associated with a specific Slice-Flow Aggregate.</t>
          </dd>
          <dt>Filtered Topology:</dt>
          <dd>
            <t>a topology derived from the physical network by applying topology filtering
policies that select specific nodes and links based on their capabilities and
attributes (e.g., Resource Affinities or Flexible Algorithm membership).  The
same Filtered Topology may be shared by multiple NRPs.</t>
          </dd>
          <dt>NRP Topology:</dt>
          <dd>
            <t>the topology resulting from instantiating an NRP on a Filtered Topology by
associating NRP-specific resource reservations and Per Hop Behavior (NRP-PHB)
with the topological elements of the Filtered Topology.  Two NRPs may share
the same Filtered Topology while having different resource reservations and
forwarding treatments.</t>
          </dd>
          <dt>NRP state aware TE (NRP-TE):</dt>
          <dd>
            <t>a mechanism for TE path selection that takes into account the available network resources associated with a specific NRP.</t>
          </dd>
        </dl>
      </section>
      <section anchor="acronyms-and-abbreviations">
        <name>Acronyms and Abbreviations</name>
        <ul empty="true">
          <li>
            <t>BA: Behavior Aggregate</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>CS: Class Selector</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>NRP-PHB: NRP Per Hop Behavior as described in <xref target="SlicePHB"/></t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>SLA: Service Level Agreements</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>SLO: Service Level Objectives</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>SLE: Service Level Expectations</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>Diffserv: Differentiated Services</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>MPLS: Multiprotocol Label Switching</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>LSP: Label Switched Path</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>RSVP: Resource Reservation Protocol</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>TE: Traffic Engineering</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>SR: Segment Routing</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>VRF: VPN Routing and Forwarding</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>AC: Attachment Circuit</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>CE: Customer Edge</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>PE: Provider Edge</t>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>PCEP: Path Computation Element (PCE) Communication Protocol (PCEP)</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="network-resource-slicing-membership">
      <name>Network Resource Slicing Membership</name>
      <t>An NRP that supports a Slice-Flow Aggregate can be
instantiated over parts of an IP/MPLS network (e.g., all or specific network
resources in the access, aggregation, or core network), and can stretch across
multiple domains administered by a provider.  The NRP topology may
be comprised of dedicated and/or shared network resources (e.g., in
terms of processing power, storage, and bandwidth).</t>
      <t>The physical network resources may be fully dedicated to a specific Slice-Flow
Aggregate.  For example, traffic belonging to a Slice-Flow Aggregate can traverse
dedicated network resources without being subjected to contention from traffic of
other Slice-Flow Aggregates.  Dedicated physical network resource slicing allows for simple
partitioning of the physical network resources amongst Slice-Flow Aggregates without
the need to distinguish packets traversing the dedicated network resources
since only one Slice-Flow Aggregate traffic stream can traverse the dedicated
resource at any time.</t>
      <t>To optimize network utilization, sharing of the physical network resources may
be desirable. In such case, the same physical network resource capacity is
divided among multiple NRPs that support multiple Slice-Flow
Aggregates. The shared physical network resources can be
partitioned in the data plane (for example by applying hardware policers and
shapers) and/or partitioned in the control plane by providing a logical
representation of the physical link that has a subset of the network resources
available to it.</t>
    </section>
    <section anchor="NSRealization">
      <name>IETF Network Slice Realization</name>
      <t><xref target="ns-workflow"/> describes the steps required to realize an IETF network slice
service in a provider network  using the solution proposed in this document.
While Figure 4 of <xref target="RFC9543"/> provides an abstract
architecture of an IETF Network Slice, this section intends to offer a
realization of that architecture specific for IP/MPLS packet networks.</t>
      <t>Each of the steps is further elaborated on in a subsequent section.</t>
      <figure anchor="ns-workflow">
        <name>IETF network slice realization steps.</name>
        <artwork><![CDATA[
                        --      --      --
                       |CE|    |CE|    |CE|
                        --      --      --
                      AC :    AC :    AC :
                      ----------------------       -------
                     ( |PE|....|PE|....|PE| )     ( IETF  )
    IETF Network    (   --:     --     :--   )   ( Network )
    Slice Service   (     :............:     )   (  Slice  )
    Request          (  IETF Network Slice  )     (       )  Customer
      v               ----------------------       -------     View
      v        ............................\........./...............
      v                                     \       /        Provider
      v    >>>>>>>>>>>>>>>  Slice-Flow       \     /           View
      v   ^                 Aggregate Mapping v   v
      v   ^             -----------------------------------------
      v   ^            ( |PE|.......|PE|........|PE|.......|PE|  )
     ---------        (   --:        --         :--         --    )
    |         |       (     :...................:                 )
    |   NSC   |        (        Network Resource Partition       )
    |         |         -----------------------------------------
    |         |                             ^
    |         |>>>>>  Resource Partitioning |
     ---------          of Filtered Topology|
      v   v                                 |
      v   v            -----------------------------      --------
      v   v           (|PE|..-..|PE|... ..|PE|..|PE|)    (        )
      v   v          ( :--  |P|  --   :-:  --   :--  )  (  Filter  )
      v   v          ( :.-   -:.......|P|       :-   )  ( Topology )
      v   v          (  |P|...........:-:.......|P|  )   (        )
      v   v           (  -    Filtered Topology      )     --------
      v   v            -----------------------------       ^
      v    >>>>>>>>>>>>  Topology Filter ^                /
      v        ...........................\............../...........
      v                                    \            /  Underlay
     ----------                             \          /  (Physical)
    |          |                             \        /    Network
    | Network  |    ----------------------------------------------
    |Controller|   ( |PE|.....-.....|PE|......    |PE|.......|PE| )
    |          |  (   --     |P|     --      :-...:--     -..:--   )
     ----------  (    :       -:.............|P|.........|P|        )
         v       (    -......................:-:..-       -         )
          >>>>>>> (  |P|.........................|P|......:        )
      Program the  (  -                           -               )
        Network     ----------------------------------------------
                             (NRP Policies and Paths)*

 * : NRP Policy installation and path placement can be centralized
     or distributed.
]]></artwork>
      </figure>
      <section anchor="network-topology-filters">
        <name>Network Topology Filters</name>
        <t>The Physical Network may be filtered into a number of Filter
Topologies.  Filter actions may include selection of specific nodes
and links according to their capabilities and are based on network-
wide policies.  The resulting topologies can be used to host IETF
Network Slices and provide a useful way for the network operator to
know that all of the resources they are using to plan a network
slice meet specific SLOs.  This step can be done offline during
planning activity, or could be performed dynamically
as new demands arise.</t>
        <t><xref target="SlicePolicyTopology"/> describes how topology filters can be
associated with the NRP instantiated by the NRP Policy.</t>
      </section>
      <section anchor="NetworkSliceServiceRequest">
        <name>IETF Network Slice Service Request</name>
        <t>The customer requests an IETF Network Slice Service specifying the
CE-AC-PE points of attachment, the connectivity matrix, and the
SLOs/SLEs as described in <xref target="RFC9543"/>.
These capabilities are always provided based on a Service Level Agreement (SLA)
between the network slice customer and the provider.</t>
        <t>This defines the traffic flows that need to be supported
when the slice is realized.  Depending on the mechanism and
encoding of the Attachment Circuit (AC), the IETF Network Slice Service may also include
information that will allow the operator's controllers to configure
the PEs to determine what customer traffic is intended
for this IETF Network Slice.</t>
        <t>IETF Network Slice Service Requests are likely to arrive at various
times in the life of the network, and may also be modified.</t>
      </section>
      <section anchor="SliceAggregateMapping">
        <name>Slice-Flow Aggregation</name>
        <t>A network may be called upon to support very many IETF Network
Slices, and this could present scaling challenges in the operation
of the network.  In order to overcome this, the IETF Network Slice
streams may be aggregated into groups according to similar characteristics.</t>
        <t>A Slice-Flow Aggregate is a construct that comprises the traffic flows of one or
more IETF Network Slices. The mapping of IETF Network Slices into a Slice-Flow
Aggregate is a matter of local operator policy and is a function executed by the
Controller.  The Slice-Flow Aggregate may be preconfigured, created on demand, or
modified dynamically.</t>
      </section>
      <section anchor="PathPlacement">
        <name>Path Placement over NRP Filtered Topology</name>
        <t>Depending on the underlying network technology, the paths are selected in the
network in order to best deliver the SLOs for the different services carried by
the Slice-Flow Aggregate.  The path placement function (carried on ingress node
or by a controller) is performed on the Filtered Topology that is
selected to support the Slice-Flow Aggregate.</t>
        <t>Note that this step may indicate the need to increase the capacity of the
underlying Filtered Topology or to create a new Filtered Topology.</t>
      </section>
      <section anchor="nrp-policy">
        <name>NRP Policy</name>
        <t>An NRP policy is a policy construct that enables instantiation of mechanisms in support of service
specific control and data plane behaviors on select topological
elements associated with the NRP.</t>
        <t>The NRP Policy is a construct that enables the instantiation of control and
data plane behaviors on select topological elements in support of the IETF
network slice service. The NRP Policy encompasses policy actions (see <xref target="SliceDefinition"/>) that
manage the specific resources in the network associated with the NRP.</t>
      </section>
      <section anchor="nrp-policy-installation">
        <name>NRP Policy Installation</name>
        <t>A Controller function programs the physical network with the NRP policies to define specific handling
for traffic flows belonging to the Slice-Flow Aggregate.  These NRP policies may
be consumed on select topological elements in the network and as a result
define how routers handle traffic for the Slice-Flow Aggregate associated with
the NRP.</t>
        <t>For example, the routers that instantiate the NRP Policy can correlate markers
that are present in packets that belong to the Slice-Flow Aggregate and apply
specific treatments to them.</t>
        <t>The way in which the NRP Policy is installed in the routers and the way that
the traffic is marked is implementation specific.  The NRP Policy instantiation
in the network is further described in <xref target="SlicePolicyInstantiation"/>.</t>
      </section>
      <section anchor="path-instantiation">
        <name>Path Instantiation</name>
        <t>Depending on the underlying network technology, a Controller function may
install the forwarding state specific to the Slice-Flow Aggregate so that traffic is
routed along paths derived in the Path Placement step described in
<xref target="PathPlacement"/>.  The way in which the paths are instantiated is
implementation specific.</t>
      </section>
      <section anchor="service-mapping">
        <name>Service Mapping</name>
        <t>The edge points can be configured to support the network slice service by
mapping the customer traffic to Slice-Flow Aggregates, possibly using
information supplied when the IETF network slice service was requested.  The
edge points may also be instructed to mark the packets so that the network
routers will know which policies and routing instructions to apply.
The steering of traffic onto Slice-Flow Aggregate paths is further described in <xref target="TrafficToSFAPath"/>.</t>
      </section>
    </section>
    <section anchor="SliceModes">
      <name>Network Resource Partition Modes</name>
      <t>An NRP Policy can be used to dictate if the network resource partitioning
of the shared network resources among multiple Slice-Flow Aggregates can be achieved:</t>
      <ol group="bar" spacing="normal" type="%c)"><li>
          <t>in data plane only,</t>
        </li>
        <li>
          <t>in control plane only, or</t>
        </li>
        <li>
          <t>in both control and data planes.</t>
        </li>
      </ol>
      <section anchor="DataplaneSlicing">
        <name>Data plane Network Resource Partition Mode</name>
        <t>The physical network resources can be partitioned on network devices
by applying a Per Hop forwarding Behavior (PHB) onto packets that traverse the
network devices.</t>
        <t>When data plane NRP mode is applied, packets need to be forwarded on the
specific NRP that supports the Slice-Flow Aggregate to ensure the proper
forwarding treatment dictated in the NRP Policy is applied (refer to
<xref target="SliceDefinition"/> below).  In this case, an NRP Selector
must be carried in each packet to identify the Slice-Flow Aggregate that
it belongs to.</t>
        <t>The ingress node of an NRP domain adds an NRP Selector field (if not already
present) in each Slice-Flow Aggregate packet. In the data plane NRP mode, the
transit nodes within an NRP domain use the NRP Selector to associate packets with a
Slice-Flow Aggregate and to determine the Network Resource Partition Per Hop
Behavior (NRP-PHB) that is applied to the packet (refer to <xref target="SlicePHB"/> for
further details). The CS MAY be used to apply a Diffserv PHB on to the packet to
allow differentiation of traffic treatment within the same Slice-Flow
Aggregate.</t>
        <t>When data plane only NRP mode is used, routers may rely on a
network state independent view of the topology to determine the best paths.
In this case, the best path selection dictates the
forwarding path of packets to the destination. The NRP Selector field carried in each
packet determines the specific NRP-PHB treatment along the
selected path.</t>
        <t>The data plane NRP mode can provide two levels of isolation between
NRPs:</t>
        <ul spacing="normal">
          <li>
            <t>Strict isolation: Each NRP is assigned dedicated hardware
resources (e.g., queues, schedulers, and policers) that are not
shared with other NRPs.  This ensures that traffic of one NRP
cannot contend with or impact traffic of another NRP.</t>
          </li>
          <li>
            <t>Shared hardware isolation: Multiple NRPs may share the same
underlying hardware resources, but are differentiated by the NRP
Selector and the NRP-PHB applied to their traffic.  In this case,
isolation is statistical and depends on the configured scheduling
and policing policies.</t>
          </li>
        </ul>
      </section>
      <section anchor="ControlplaneSlicing">
        <name>Control Plane Network Resource Partition Mode</name>
        <t>Multiple NRPs can be realized over the same set of physical resources.  Each
NRP is identified by an identifier (NRP-ID) that is globally unique within the
NRP domain. The NRP state reservations for each NRP can be maintained on the
network element or on a controller.</t>
        <t>The network reservation states for a specific partition can be represented
in a topology that contains all or a subset of the physical network
elements (nodes and links) and reflect the network state reservations in
that NRP. The logical network resources that appear in the NRP topology can
reflect a part, whole, or in-excess of the physical network resource capacity
(e.g., when oversubscription is desirable).</t>
        <t>For example, the physical link bandwidth can be
divided into fractions, each dedicated to an NRP that supports a Slice-Flow Aggregate.
The topology associated with the NRP supporting a Slice-Flow Aggregate
can be used by routing protocols, or by the ingress/PCE when computing NRP state
aware TE paths.</t>
        <t>To perform NRP state aware Traffic Engineering (NRP-TE), the resource reservation
on each link needs to be NRP aware. The NRP reservations state can be managed
locally on the device or off device (e.g. on a controller).</t>
        <t>The same physical link may be a member of multiple slice policies that
instantiate different NRPs. The NRP
reservable or utilized bandwidth on such a link is updated (and may be
advertised) whenever new paths are placed in the network. The NRP
reservation state, in this case, is maintained on each device or off the
device on a resource reservation manager that holds reservation states for
those links in the network.</t>
        <t>Multiple NRPs that support Slice-Flow Aggregates can form a group and share the available network
resources allocated to each. In this case, a node can update
the reservable bandwidth for each NRP to take into consideration
the available bandwidth from other NRPs in the same group.</t>
        <t>For illustration purposes, <xref target="resource-sharing"/> describes bandwidth partitioning
or sharing amongst a group of NRPs. In Figure 2a, the NRPs identified by the following NRP-IDs:
NRP1, NRP2, NRP3 and NRP4 are not sharing any bandwidths between each
other. In Figure 2b, the NRPs: NRP1 and NRP2 can share the
available bandwidth portion allocated to each amongst them.
Similarly, NRP3 and NRP4 can share amongst themselves any available bandwidth
allocated to them, but they cannot share available bandwidth allocated to
NRP1 or NRP2.  In both cases, the Max Reservable Bandwidth may exceed the
actual physical link resource capacity to allow for oversubscription.</t>
        <figure anchor="resource-sharing">
          <name>Bandwidth isolation/sharing among NRPs.</name>
          <artwork><![CDATA[
  I-----------------------------I     I-----------------------------I 
  <--NRP1->                     I     I-----------------I           I
  I---------I                   I     I <-NRP1->        I           I
  I         I                   I     I I-------I       I           I
  I---------I                   I     I I       I       I           I
  I                             I     I I-------I       I           I
  <-----NRP2------>             I     I                 I           I
  I-----------------I           I     I <-NRP2->        I           I
  I                 I           I     I I---------I     I           I
  I-----------------I           I     I I         I     I           I
  I                             I     I I---------I     I           I
  <---NRP3---->                 I     I                 I           I
  I-------------I               I     I NRP1 + NRP2     I           I
  I             I               I     I-----------------I           I
  I-------------I               I     I                             I
  I                             I     I                             I
  <---NRP4---->                 I     I-----------------I           I
  I-------------I               I     I <-NRP3->        I           I
  I             I               I     I I-------I       I           I
  I-------------I               I     I I       I       I           I
  I                             I     I I-------I       I           I
  I NRP1+NRP2+NRP3+NRP4         I     I                 I           I
  I                             I     I <-NRP4->        I           I
  I-----------------------------I     I I---------I     I           I
  <--Max Reservable Bandwidth-->      I I         I     I           I
                                      I I---------I     I           I
                                      I                 I           I
                                      I NRP3 + NRP4     I           I
                                      I-----------------I           I
                                      I NRP1+NRP2+NRP3+NRP4         I
                                      I                             I
                                      I-----------------------------I
                                      <--Max Reservable Bandwidth-->

  (a) No bandwidth sharing            (b) Sharing bandwidth between
      between NRPs.                       NRPs of the same group.

]]></artwork>
        </figure>
        <t>The control plane NRP mode provides isolation at admission time by
ensuring that the total bandwidth reserved across NRPs does not
exceed the available physical link capacity (subject to any
configured oversubscription).  However, since no per-packet
forwarding enforcement is applied in this mode, traffic from
different NRPs may contend for the same physical resources at
runtime, and isolation guarantees are soft.  To compensate, the
control plane MAY monitor link utilization and detect congestion,
and react by reoptimizing the placement of affected traffic flows
onto less loaded paths within the NRP topology.</t>
      </section>
      <section anchor="DataControlplaneSlicing">
        <name>Data and Control Plane Network Resource Partition Mode</name>
        <t>In order to support strict guarantees for Slice-Flow
Aggregates, the network resources can be partitioned in both the control plane
and data plane.</t>
        <t>The control plane partitioning allows the creation of customized topologies per
NRP that each supports a Slice-Flow Aggregate. The ingress routers or a Path
Computation Engine (PCE) may use the customized topologies and the NRP state
to determine optimal path placement for specific demand flows using NRP-TE.</t>
        <t>The data plane partitioning provides isolation for Slice-Flow Aggregate traffic, and
protection when resource contention occurs due to bursts of traffic from other Slice-Flow
Aggregate traffic that traverses the same shared network resource.</t>
        <t>The combination of control and data plane partitioning provides the
strongest form of NRP isolation.  The control plane ensures that
admitted traffic across NRPs does not exceed the available network
resources, while the data plane enforces per-packet forwarding
treatment at runtime, preventing traffic bursts from one NRP from
impacting the resources available to other NRPs.</t>
      </section>
    </section>
    <section anchor="SlicePolicyInstantiation">
      <name>Network Resource Partition Instantiation</name>
      <t>A network slice can span multiple technologies and multiple administrative
domains.  Depending on the network slice customer requirements, a network
slice can be differentiated from other network slices in terms of data, control,
and management planes.</t>
      <t>The customer of a network slice service expresses their intent
by specifying requirements rather than mechanisms to realize the slice as described
in <xref target="NetworkSliceServiceRequest"/>.</t>
      <t>The network slice controller is fed with the network slice service
intent and realizes it with an appropriate Network Resource Partition Policy (NRP Policy).
Multiple IETF network slices are mapped to the same Slice-Flow Aggregate as described in <xref target="SliceAggregateMapping"/>.</t>
      <t>The network wide consistent NRP Policy definition is distributed to the
devices in the network as shown in <xref target="ns-workflow"/>. The specification of
the network slice intent on the northbound interface of the controller and the
mechanism used to map the network slice to a Slice-Flow Aggregate are outside the scope
of this document and will be addressed in separate documents.</t>
      <section anchor="SliceDefinition">
        <name>NRP Policy Definition</name>
        <t>The NRP Policy is a network-wide construct that is supplied to network devices,
and may include rules that control the following:</t>
        <ul spacing="normal">
          <li>
            <t>Data plane specific policies: This includes the NRP Selector, any firewall rules or
flow-spec filters, and QoS profiles associated with the NRP Policy and any
classes within it.</t>
          </li>
          <li>
            <t>Control plane specific policies: This includes bandwidth reservations, any
network resource sharing amongst slice policies, and reservation preference to
prioritize reservations of a specific NRP over others.</t>
          </li>
          <li>
            <t>Topology membership policies: This defines the topology filter policies that dictate
node/link/function membership to a specific NRP.</t>
          </li>
        </ul>
        <t>There is a desire for flexibility in realizing network slices to support the
services across networks consisting of implementations from multiple vendors.  These
networks may also be grouped into disparate domains and deploy various path
control technologies and tunnel techniques to carry traffic across the network.
It is expected that a standardized data model for NRP
Policy will facilitate the instantiation and management of the NRP
on the topological elements selected by the NRP
Policy topology filter.</t>
        <t>It is also possible to distribute the NRP Policy to
network devices using several mechanisms, including protocols such as NETCONF
or RESTCONF, or exchanging it using a suitable routing protocol that network
devices participate in (such as IGP(s) or BGP). The extensions to enable
specific protocols to carry an NRP Policy definition will
be described in separate documents.</t>
        <section anchor="SliceSelector">
          <name>Network Resource Partition Selector</name>
          <t>A router needs to be able to identify a packet belonging to a Slice-
Flow Aggregate before it can apply the associated data plane
forwarding treatment or NRP-PHB.  One or more fields within the
packet are used as an NRP Selector to do this. There are several
possible approaches as follows.</t>
          <t>The NRP Selector can be defined for and carried in different forwarding
data planes.  For example:</t>
          <ul spacing="normal">
            <li>
              <t>In MPLS networks, the NRP Selector may be encoded within the MPLS
label stack or post stack.</t>
            </li>
            <li>
              <t>In IPv6 networks, the NRP Selector may be carried within fields of
the IPv6 header (e.g., source or destination address), or within an
IPv6 extension header.</t>
            </li>
            <li>
              <t>In SRv6 networks, the NRP Selector may be encoded as a SRv6 SID or
carried within the Segment Routing Header (SRH) (e.g., as a TLV).</t>
            </li>
          </ul>
          <t>The specific encoding depends on the data plane technology deployed in
the NRP domain and is outside the scope of this document.</t>
          <t>Overloaded forwarding identifier as NRP Selector:</t>
          <ul empty="true">
            <li>
              <t>It is possible to assign a different forwarding address or MPLS forwarding
 label for each Slice-Flow Aggregate on a specific node
 in the network. This allows Slice-Flow Aggregate packets
 destined to a node to be distinguished by the destination address
 or the MPLS forwarding label that is carried in the packet.</t>
              <t>This approach requires maintaining per Slice-Flow Aggregate state
 for each destination in the network in both the control and data
 plane and on each router in the network. Hence this approach
 scales as a multiple of the number of Slice-Flow Aggregates
 and the number of adjacencies each node has which is a
 scalability challenge in both the control and data planes.</t>
            </li>
          </ul>
          <t>Overloaded service identifier as NRP Selector:</t>
          <ul empty="true">
            <li>
              <t>VPN identifiers can be carried in the IP/MPLS forwarding plane
 using a variety of techniques (including MPLS VPN service labels).
 These identifiers can be overloaded to act as NRP Selectors
 to allow VPN packets to be mapped to the Slice-Flow Aggregate.  In
 this case, a single VPN identifier acting as an NRP Selector needs
 to be allocated by all Egress PEs of a VPN.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>In other cases, a range of VPN identifiers can map to a single NRP
 Selector to map traffic from multiple VPNs to a Slice-Flow Aggregate.</t>
            </li>
          </ul>
          <t>The following figure illustrates this overloading approach using a VPN
identifier and an MPLS data plane as an example. Other service identifiers
and data plane technologies may be used in a similar manner.</t>
          <figure anchor="bottom-stack">
            <name>NRP Selector as VPN label at bottom of label stack.</name>
            <artwork><![CDATA[
  SR Adj-SID:          NRP Selector (VPN service label) on PE2: 1001
     9012: P1-P2
     9023: P2-PE2

         /-----\        /-----\        /-----\       /-----\
         | PE1 | -----  | P1  | ------ | P2  |------ | PE2 |
         \-----/        \-----/        \-----/       \-----/

In 
packet: 
+------+       +------+         +------+        +------+
| IP   |       | 9012 |         | 9023 |        | 1001 |
+------+       +------+         +------+        +------+
| Pay- |       | 9023 |         | 1001 |        | IP   | 
| Load |       +------+         +------+        +------+
+------+       | 1001 |         | IP   |        | Pay- |
               +------+         +------+        | Load |
               | IP   |         | Pay- |        +------+
               +------+         | Load |
               | Pay- |         +------+
               | Load |
               +------+
]]></artwork>
          </figure>
          <t>Dedicated identifier as NRP Selector:</t>
          <ul empty="true">
            <li>
              <t>A dedicated identifier may be defined to act as the NRP Selector
ID to be carried in packets of Slice-Flow Aggregate, independent of
the forwarding address or MPLS forwarding label bound to the
destination and independent of any VPN identifiers.  Routers within
the NRP domain can use the forwarding address or MPLS forwarding
label to determine the forwarding next-hops, and use the NRP
Selector in the packet to infer the specific forwarding treatment
that needs to be applied on the packet.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>The NRP Selector, in this case, can be carried in one of multiple
fields in the packet, depending on the data plane in use. All packets
that belong to the same Slice-Flow Aggregate may carry the same
NRP Selector, but it is also possible to have multiple NRP Selectors
map to the same Slice-Flow Aggregate.</t>
            </li>
          </ul>
          <t>Fallback treatment for unclassified packets:</t>
          <ul empty="true">
            <li>
              <t>A packet carrying an NRP Selector may arrive at an NRP-capable
node on which no NRP matching that NRP Selector value is
instantiated.  In such cases, the node is unable to associate the
packet with any NRP and therefore cannot apply the corresponding
NRP-PHB forwarding treatment.</t>
              <t>The following fallback treatments MAY be applied in this case:</t>
              <ul spacing="normal">
                <li>
                  <t>Drop: The packet is discarded.  This is the RECOMMENDED default
behavior, as it prevents packets with unrecognized NRP Selectors
from consuming resources of other NRPs on the node.</t>
                </li>
                <li>
                  <t>Best-effort forwarding: The packet is forwarded using the
node's default best-effort forwarding treatment, without any
NRP-specific resource guarantees.</t>
                </li>
                <li>
                  <t>Default NRP forwarding: The packet is mapped to a pre-configured
default NRP on the node, which provides a baseline forwarding
treatment for unmatched traffic.</t>
                </li>
              </ul>
              <t>The choice of fallback treatment SHOULD be configurable via local
policy. A field in the data plane MAY be used to signal the
desired fallback treatment for the NRP, allowing the ingress node
to influence the behavior at downstream nodes.</t>
            </li>
          </ul>
        </section>
        <section anchor="SliceResourceReservation">
          <name>Network Resource Partition Resource Reservation</name>
          <t>Bandwidth and network resource allocation strategies for slice policies are
essential to achieve optimal placement of paths within the
network while still meeting the target SLOs.</t>
          <t>Resource reservation allows for the management of available bandwidth and the
prioritization of existing allocations to enable preference-based preemption
when contention on a specific network resource arises. Sharing of a network
resource's available bandwidth amongst a group of NRPs
may also be desirable.  For example, a Slice-Flow Aggregate may not be using all of
the NRP reservable bandwidth; this allows other NRPs in
the same group to use the available bandwidth resources for other Slice-Flow
Aggregates.</t>
          <t>Congestion on shared network resources may result from sub-optimal placement
of paths in different slice policies. When this occurs, preemption
of some Slice-Flow Aggregate paths may be desirable to alleviate congestion.
A preference-based allocation scheme enables prioritization of Slice-Flow Aggregate paths
that can be preempted.</t>
          <t>Since network characteristics and its state can change over time, the NRP
topology and its network state need to be propagated in the network to enable
ingress TE routers or Path Computation Engine (PCEs) to perform accurate path placement
based on the current state of the NRP network resources.</t>
        </section>
        <section anchor="SlicePHB">
          <name>Network Resource Partition Per Hop Behavior</name>
          <t>The NRP Per Hop Behavior (NRP-PHB) is the externally
observable forwarding behavior applied to a specific packet belonging to a
Slice-Flow Aggregate. The goal of an NRP-PHB is to provide a specified amount
of network resources for traffic belonging to a specific Slice-Flow Aggregate.
A single NRP may also support multiple forwarding
treatments or services that can be carried over the same logical network.</t>
          <t>The Slice-Flow Aggregate traffic may be identified at NRP ingress boundary
nodes by carrying a NRP Selector to allow routers to apply a specific forwarding
treatment that guarantees the SLA(s).</t>
          <t>To support multiple forwarding treatments over the same Slice-Flow Aggregate, a
Slice-Flow Aggregate packet may also carry a Diffserv CS to identify the
specific Diffserv forwarding treatment to be applied on the traffic belonging
to the same NRP.</t>
          <t>At transit nodes, the CS field carried inside the packets are used to determine the
specific PHB that determines the forwarding and scheduling
treatment before packets are forwarded, and in some cases, drop probability for
each packet.</t>
        </section>
        <section anchor="SlicePolicyTopology">
          <name>Network Resource Partition Topology</name>
          <t>The relationship between the physical network, the Filtered Topology,
and the NRP topology can be described as follows:</t>
          <ol spacing="normal" type="1"><li>
              <t>The Physical Network comprises the underlying nodes and links
with their actual hardware resources (e.g., bandwidth,
processing capacity).</t>
            </li>
            <li>
              <t>A Filtered Topology is derived from the Physical Network by
applying topology filtering policies that select specific nodes
and links based on their capabilities and attributes (as
described in <xref target="SliceDefinition"/>).  The same Filtered Topology may
be shared by multiple NRPs.</t>
            </li>
            <li>
              <t>An NRP is instantiated on a Filtered Topology by associating
NRP-specific resource reservations (<xref target="SliceResourceReservation"/>)
and Per Hop Behavior (<xref target="SlicePHB"/>) with the topological elements
of the Filtered Topology.  The resulting topology, comprising the
filtered nodes and links together with their NRP-specific
resource attributes, is referred to as the NRP Topology.</t>
            </li>
          </ol>
          <t>Since the same Filtered Topology may underlie multiple NRPs, two NRPs
may share the same set of nodes and links while having different
resource reservations and forwarding treatments applied to them.</t>
          <t>A key element of the NRP Policy is a customized topology that may include the
full or a subset of the physical network topology. The NRP topology
could also span multiple administrative domains and/or multiple dataplane
technologies.</t>
          <t>An NRP topology can overlap or share a subset of links
with another NRP topology. A number of topology
filtering policies can be defined as part of the NRP
Policy to limit the specific topology elements that belong to the NRP.
For example, a topology filtering policy can leverage Resource
Affinities as defined in <xref target="RFC2702"/> to include or exclude certain links that
the NRP is instantiated on in support of the Slice-Flow
Aggregate.</t>
          <t>The NRP Policy may also include a reference to a
predefined topology (e.g., derived from a Flexible Algorithm Definition (FAD)
as defined in <xref target="I-D.ietf-lsr-flex-algo"/>, or Multi-Topology ID as defined in
<xref target="RFC4915"/>.</t>
        </section>
      </section>
      <section anchor="NRPBoundary">
        <name>Network Resource Partition Boundary</name>
        <t>A network slice originates at the edge nodes of a network slice provider.
Traffic that is steered over the corresponding NRP supporting a Slice-Flow
Aggregate may traverse NRP capable as well as NRP incapable interior nodes.</t>
        <t>The network slice may encompass one or more domains administered by a provider.
For example, an organization's intranet or an ISP.  The network provider
is responsible for ensuring that adequate network resources are
provisioned and/or reserved to support the SLAs offered by the network
end-to-end.</t>
        <section anchor="network-resource-partition-edge-nodes">
          <name>Network Resource Partition Edge Nodes</name>
          <t>NRP edge nodes sit at the boundary of a network slice provider network
and receive traffic that requires steering over network resources specific to a
NRP that supports a Slice-Flow Aggregate. These edge nodes are responsible for identifying Slice-Flow
Aggregate specific traffic flows by possibly inspecting multiple fields from
inbound packets (e.g., implementations may inspect IP traffic's network 5-tuple
in the IP and transport protocol headers) to decide on which NRP it
can be steered.</t>
          <t>Network slice ingress nodes may condition the inbound traffic at network boundaries in
accordance with the requirements or rules of each service's SLAs.  The
requirements and rules for network slice services are set using
mechanisms which are outside the scope of this document.</t>
          <t>When data plane NRP mode is employed, the NRP ingress nodes are responsible for
setting a suitable NRP Selector on packets that belong to the Slice-Flow
Aggregate, and optionally the desired Diffserv CS.</t>
          <t><xref target="RFC9543"/> describes different IETF Network Slice Service Demarcation
Point (SDP) locations that determine where the NRP edge function
is performed.  The following describes how the solution described
in this document caters to each SDP location:</t>
          <dl>
            <dt>SDP within the CE:</dt>
            <dd>
              <t>When the CE is operated by the IETF Network Slice Service provider,
the CE itself acts as the NRP ingress node.  The CE may classify
inbound traffic, set the NRP Selector, and enforce the NRP-PHB on
the outgoing interface.  In this case, slicing resources may include
buffers and queues on the CE outgoing interfaces.</t>
            </dd>
            <dt>SDP at the CE/AC boundary:</dt>
            <dd>
              <t>When the IETF Network Slice extends to include the Attachment Circuit
(AC), traffic conditioning and policing are applied at the AC ends.
The CE or PE may use traffic tagging (e.g., Ethernet VLAN tags) to
identify the IETF Network Slice.  The NRP Selector may be set by the
CE or by the PE upon receiving the tagged traffic from the AC.</t>
            </dd>
            <dt>SDP at the PE customer-facing port:</dt>
            <dd>
              <t>The PE's customer-facing port acts as the NRP ingress node.  In this
case, the port or VLAN tag on the incoming traffic identifies the
IETF Network Slice and the corresponding Slice-Flow Aggregate.  The
PE sets the NRP Selector on the inbound packets before forwarding
them into the NRP domain.</t>
            </dd>
            <dt>SDP within the PE:</dt>
            <dd>
              <t>The PE classifies inbound traffic from the AC by inspecting multiple
packet fields (e.g., the IP 5-tuple) to identify the IETF Network
Slice and the corresponding Slice-Flow Aggregate.  The PE then sets
the NRP Selector on the classified packets before forwarding them
into the NRP domain.</t>
            </dd>
          </dl>
        </section>
        <section anchor="network-resource-partition-interior-nodes">
          <name>Network Resource Partition Interior Nodes</name>
          <t>An NRP interior node receives slice traffic and may be able to identify the
packets belonging to a specific Slice-Flow Aggregate by inspecting the NRP Selector
field carried inside each packet, or by inspecting other fields
within the packet that may identify the traffic streams that belong to a specific
Slice-Flow Aggregate. For example, when data plane NRP mode is applied, interior
nodes can use the NRP Selector carried within the packet to apply the corresponding NRP-PHB
forwarding behavior.</t>
        </section>
        <section anchor="NRPIncapbale">
          <name>Network Resource Partition Incapable Nodes</name>
          <t>Packets that belong to a Slice-Flow Aggregate may need to traverse nodes that
are NRP incapable. In this case, several options are possible to allow the
slice traffic to continue to be forwarded over such devices and be able to
resume the NRP forwarding treatment once the traffic reaches devices that are
NRP-capable.</t>
          <t>When data plane NRP mode is employed, packets carry a NRP Selector to allow
slice interior nodes to identify them. To support end-to-end network slicing,
the NRP Selector is maintained in the packets as they traverse devices within
the network -- including NRP capable and incapable devices.</t>
          <t>For example, when the NRP Selector is an MPLS label at the bottom of the MPLS
label stack, packets can traverse over devices that are NRP incapable without
any further considerations. On the other hand, when the NRP Selector label is at
the top of the MPLS label stack, packets can be bypassed (or tunneled) over the
NRP incapable devices towards the next device that supports NRP as shown in
<xref target="sl-interworking"/>.</t>
          <figure anchor="sl-interworking">
            <name>Extending network slice over NRP incapable device(s).</name>
            <artwork><![CDATA[
  SR Node-SID:           NRP Selector: 1001     @@@: NRP Policy
     1601: P1            Label                       enforced
     1602: P2                                   ...: NRP Policy
     1603: P3                                        not enforced
     1604: P4
     1605: P5

            @@@@@@@@@@@@@@ ........................
                                                  .
           /-----\        /-----\        /-----\  .
           | P1  | -----  | P2  | ----- | P3  |   .
           \-----/        \-----/        \-----/  .
                                            |     @@@@@@@@@@
                                            |
                                         /-----\        /-----\ 
                                         | P4  | ------ | P5  |
                                         \-----/        \-----/


            +------+       +------+        +------+
            | 1001 |       | 1604 |        | 1001 |
            +------+       +------+        +------+
            | 1605 |       | 1001 |        | IP   |
            +------+       +------+        +------+
            | IP   |       | 1605 |        | Pay- |
            +------+       +------+        | Load |
            | Pay- |       | IP   |        +------+
            | Load |       +------+
            +------+       | Pay- |
                           | Load |
                           +------+
]]></artwork>
          </figure>
          <t>An NRP-capable node needs to identify which of its downstream
neighbors are NRP incapable in order to apply the appropriate
bypass or tunnel treatment described above.  The following
mechanisms MAY be used for this purpose:</t>
          <dl>
            <dt>Controller-based discovery:</dt>
            <dd>
              <t>In controller-based deployments, NRP node capabilities MAY be
distributed to a controller using mechanisms such as
NETCONF <xref target="RFC6241"/>, BGP-LS <xref target="RFC7752"/>, or PCEP <xref target="RFC5440"/>.
The controller or PCE can then use this information when computing
paths to steer traffic around NRP incapable nodes or to select
appropriate bypass tunnels.</t>
            </dd>
            <dt>Static configuration:</dt>
            <dd>
              <t>As a fallback, operators MAY statically configure on each node which
of its downstream neighbors are NRP incapable.  This approach is
simple but does not adapt automatically to topology or capability
changes.</t>
            </dd>
          </dl>
        </section>
        <section anchor="combining-network-resource-partition-modes">
          <name>Combining Network Resource Partition Modes</name>
          <t>It is possible to employ a combination of the NRP modes that were
discussed in <xref target="SliceModes"/> to realize a network slice. For example, data and
control plane NRP modes can be employed in parts of a network, while
control plane NRP mode can be employed in the other parts of the
network. The path selection, in such case, can take into
account the NRP available network resources.  The NRP Selector carried within
packets allow transit nodes to enforce the corresponding NRP-PHB on the parts of the
network that apply the data plane NRP mode. The NRP Selector can be
maintained while traffic traverses nodes that do not enforce data plane NRP
mode, and so slice PHB enforcement can resume once traffic traverses
capable nodes.</t>
        </section>
        <section anchor="MultiDomainNRP">
          <name>Multi-domain Network Resource Partition Considerations</name>
          <t>A network slice may span multiple NRP domains, each administered
by the same or different providers.  In such deployments, the
NRP boundary nodes at the edges of each domain are responsible
for ensuring that the appropriate NRP treatment is applied within
their domain and that end-to-end SLAs are maintained across
domain boundaries.</t>
          <t>When a network slice traverses multiple NRP domains, the NRP
Selector carried in packets may be handled at domain boundaries
in one of the following ways:</t>
          <dl>
            <dt>NRP Selector Stacking:</dt>
            <dd>
              <t>The original NRP Selector (e.g., for NRP1) is preserved in the
packet end-to-end.  When entering an intermediate NRP domain
(e.g., NRP2), the ingress boundary node of that domain adds the
intermediate domain's NRP Selector to the packet.  Interior nodes
within the intermediate domain use the added NRP Selector to apply
the corresponding NRP-PHB treatment.  Upon exiting the intermediate
domain, the egress boundary node removes the intermediate domain's
NRP Selector, re-exposing the original NRP Selector.  The original
NRP treatment resumes in the next NRP domain.  The specific
mechanism for adding and removing the NRP Selector is data-plane
dependent (e.g., pushing and popping a label in MPLS, or encoding
in a packet header field in other data planes).  This approach does
not require NRP-ID coordination across domain boundaries.</t>
            </dd>
            <dt>NRP Selector Remapping:</dt>
            <dd>
              <t>At the boundary between two NRP domains, the boundary node replaces
the incoming NRP Selector with the appropriate NRP Selector for the
downstream domain.  This requires coordination of NRP-ID mappings at
inter-domain boundaries, which may be achieved via static
configuration or via a controller (e.g., using NETCONF <xref target="RFC6241"/>,
BGP-LS <xref target="RFC7752"/>, or PCEP <xref target="RFC5440"/>).  The boundary node is
also responsible for conditioning traffic to conform to the
downstream domain's SLA allocation before forwarding.</t>
            </dd>
          </dl>
          <t>In both approaches, each NRP domain is responsible for provisioning
sufficient resources within its domain to meet its portion of the
end-to-end SLA.  The overall end-to-end SLA is satisfied when the
combined resource allocations across all NRP domains collectively meet
the SLOs and SLEs agreed upon in the IETF Network Slice Service
request.</t>
          <t>Inter-domain path computation for network slices spanning multiple NRP
domains may be performed using a hierarchical PCE (H-PCE)
architecture, per-domain PCEs coordinating via PCEP <xref target="RFC5440"/>, or
a centralized controller with visibility across all domains.</t>
        </section>
      </section>
    </section>
    <section anchor="TrafficToSFAPath">
      <name>Mapping Traffic on Slice-Flow Aggregates</name>
      <t>The usual techniques to steer traffic onto paths can be applicable when
steering traffic over paths established for a specific Slice-Flow Aggregate.</t>
      <t>For example, one or more (layer-2 or layer-3) VPN services can be directly
mapped to paths established for a Slice-Flow Aggregate. In this case, the per
Virtual Routing and Forwarding (VRF) instance traffic that arrives on the
Provider Edge (PE) router over external interfaces can be directly mapped to a
specific Slice-Flow Aggregate path. External interfaces can be further
partitioned (e.g., using VLANs) to allow mapping one or more VLANs to specific
Slice-Flow Aggregate paths.</t>
      <t>Another option is steer traffic to specific destinations directly over multiple
slice policies. This allows traffic arriving on any external interface and
targeted to such destinations to be directly steered over the slice paths.</t>
      <t>A third option that can also be used is to utilize a data plane firewall filter
or classifier to enable matching of several fields in the incoming packets to
decide whether the packet belongs to a specific Slice-Flow Aggregate. This option
allows for applying a rich set of rules to identify specific packets to be
mapped to a Slice-Flow Aggregate. However, it requires data plane network resources to
be able to perform the additional checks in hardware.</t>
      <section anchor="network-slice-flow-aggregate-relationships">
        <name>Network Slice-Flow Aggregate Relationships</name>
        <t>The following describes the generalization relationships between
the IETF network slice and different parts of the solution
as described in <xref target="ns-workflow"/>.</t>
        <t>o A customer may request one or more IETF Network Slices.</t>
        <t>o Any given Attachment Circuit (AC) may support the traffic for one or more IETF Network
  Slices. If there is more than one IETF Network Slice using a
  single AC, the IETF Network Slice Service request must include
  enough information to allow the edge nodes to demultiplex the
  traffic for the different IETF Network Slices.</t>
        <t>o By definition, multiple IETF Network Slices may be mapped to a
  single Slice-Flow Aggregate.  However, it is possible for an
  Slice-Flow Aggregate to contain just a single IETF Network Slice.</t>
        <t>o The physical network may be filtered to multiple Filter
  Topologies.  Each such Filtered Topology facilitates
  planning the placement of paths for the Slice-Flow Aggregate by
  presenting only the subset of links and nodes that meet specific
  criteria.  Note, however, in absence of 
  any Filtered Topology, Slice-Flow Aggregate are free to
  operate over the full physical network.</t>
        <t>o It is anticipated that there may be very many IETF Network Slices supported
  by a network operator over a single physical network.  A network may support a
  limited number of Slice-Flow Aggregates, with each of the Slice-Flow Aggregates
  grouping any number of the IETF Network Slices streams.</t>
      </section>
    </section>
    <section anchor="path-selection-and-instantiation">
      <name>Path Selection and Instantiation</name>
      <section anchor="applicability-of-path-selection-to-slice-flow-aggregates">
        <name>Applicability of Path Selection to Slice-Flow Aggregates</name>
        <t>In State-dependent TE <xref target="I-D.ietf-teas-rfc3272bis"/>, the path selection adapts
based on the current state of the network. The state of the network can be
based on parameters flooded by the routers as described in <xref target="RFC2702"/>.  The
link state is advertised with current reservations, thereby reflecting the
available bandwidth on each link.  Such link reservations may be maintained
centrally on a network wide network resource manager, or distributed on devices
(as usually done with RSVP-TE). TE extensions exist today to allow IGPs (e.g.,
<xref target="RFC3630"/> and <xref target="RFC5305"/>), and BGP-LS <xref target="RFC7752"/> to advertise such link
state reservations.</t>
        <t>When the network resource reservations are maintained for NRPs,
the link state can carry per NRP state (e.g.,
reservable bandwidth).  This allows path computation to take into account the
specific network resources available for an NRP.  In this
case, we refer to the process of path placement and path provisioning as NRP
aware TE (NRP-TE).</t>
      </section>
      <section anchor="applicability-of-path-control-technologies-to-slice-flow-aggregates">
        <name>Applicability of Path Control Technologies to Slice-Flow Aggregates</name>
        <t>The NRP modes described in this document are agnostic to the
technology used to set up paths that carry Slice-Flow Aggregate traffic.
One or more paths connecting the endpoints of the mapped IETF network
slices may be selected to steer the corresponding traffic streams
over the resources allocated for the NRP that
supports a Slice-Flow Aggregate.</t>
        <t>The feasible paths can be computed using the NRP topology and network state
subject the optimization metrics and constraints.</t>
        <section anchor="rsvp-te-based-slice-flow-aggregate-paths">
          <name>RSVP-TE Based Slice-Flow Aggregate Paths</name>
          <t>RSVP-TE <xref target="RFC3209"/> can be used to signal LSPs over the computed feasible paths
in order to carry the Slice-Flow Aggregate traffic. The specific extensions to the RSVP-TE
protocol required to enable signaling of NRP aware RSVP-TE LSPs are
outside the scope of this document.</t>
        </section>
        <section anchor="sr-based-slice-flow-aggregate-paths">
          <name>SR Based Slice-Flow Aggregate Paths</name>
          <t>Segment Routing (SR) <xref target="RFC8402"/> can be used to set up and steer traffic over
the computed Slice-Flow Aggregate feasible paths.</t>
          <t>The SR architecture defines a number of building blocks that can be leveraged to support
the realization of NRPs that support Slice-Flow Aggregates in an SR network.</t>
          <t>Such building blocks include:</t>
          <ul spacing="normal">
            <li>
              <t>SR Policy with or without Flexible Algorithm.</t>
            </li>
            <li>
              <t>Steering of services (e.g. VPN) traffic over SR paths</t>
            </li>
            <li>
              <t>SR Operation, Administration and Management (OAM) and Performance Management (PM)</t>
            </li>
          </ul>
          <t>SR allows a headend node to steer packets onto specific SR paths using
a Segment Routing Policy (SR Policy). The SR policy supports various
optimization objectives and constraints and can be used to steer Slice-Flow Aggregate
traffic in the SR network.</t>
          <t>The SR policy can be instantiated with or without the IGP Flexible Algorithm
(Flex-Algorithm) feature.  It may be possible to dedicate a single SR
Flex-Algorithm to compute and instantiate SR paths for one Slice-Flow Aggregate
traffic. In this case, the SR Flex-Algorithm computed paths and Flex-Algorithm
SR SIDs are not shared by other Slice-Flow Aggregates traffic. However, to allow for better
scale, it may be desirable for multiple Slice-Flow Aggregates traffic to share the
same SR Flex-Algorithm computed paths and SIDs.</t>
        </section>
      </section>
    </section>
    <section anchor="network-resource-partition-protocol-extensions">
      <name>Network Resource Partition Protocol Extensions</name>
      <t>Some protocols may need to be extended to carry additional NRP state.</t>
      <t>It is essential, however, that routing protocols, like IGPs or BGP, remain uninvolved in
these areas to ensure they are isolated and maintain their scalability and
stability. Furthermore, the complexity of routing protocols path selection
should not be impacted by the increasing number of network slices and/or NRPs.</t>
      <t>The instantiation of an NRP Policy may need to be automated. Multiple options
are possible to facilitate automation of distribution of an NRP Policy to
capable devices.</t>
      <t>For example, a YANG data model for the NRP Policy may be
supported on network devices and controllers. A suitable transport (e.g.,
NETCONF <xref target="RFC6241"/>, RESTCONF <xref target="RFC8040"/>, or gRPC) may be used to enable
configuration and retrieval of state information for slice policies on network
devices. The NRP Policy YANG data model is outside the scope of this
document.</t>
    </section>
    <section anchor="outstanding-issues">
      <name>Outstanding Issues</name>
      <t>Note to RFC Editor: Please remove this section prior to publication.</t>
      <t>This section records non-blocking issues that were raised during the Working
Group Adoption Poll for the document. The below list of issues needs to be fully
addressed before progressing the document to publication in IESG.</t>
      <ol spacing="normal" type="1"><li>
          <t>[DONE] Add new Appendix section with examples for the NRP modes
described in <xref target="SliceModes"/>.  Addressed by adding Appendix A with
three sub-sections (A.1, A.2, A.3) providing concrete examples for
the data plane, control plane, and combined NRP modes respectively,
using a common 4-node topology.</t>
        </li>
        <li>
          <t>[DONE] Elaborate on the Slice-Flow Aggregate packet treatment when
no rules to associate the packet to an NRP are defined in the NRP
Policy.  Addressed in <xref target="SliceSelector"/> by adding fallback treatment
options for packets carrying an NRP Selector that does not match any
NRP instantiated on the node.</t>
        </li>
        <li>
          <t>[DONE] Clarify how the solution caters to the different IETF Network
Slice Service Demarcation Point locations described in Section 4.2 of
<xref target="RFC9543"/>.  Addressed by adding explicit descriptions of how the
NRP ingress classification and NRP Selector setting applies to each
of the four SDP location options: SDP within the CE, SDP at the
CE/AC boundary, SDP at the PE customer-facing port, and SDP within
the PE.</t>
        </li>
        <li>
          <t>[DONE] Clarify the relationship the underlay physical network, the
Filtered Topology and the NRP resources.  Addressed in
<xref target="SlicePolicyTopology"/> by adding a three-step description of the
layering: Physical Network -&gt; Filtered Topology -&gt; NRP Topology, and
clarifying that the same Filtered Topology may be shared by multiple
NRPs, each with its own resource reservations and forwarding
treatments.</t>
        </li>
        <li>
          <t>[DONE] Expand on how isolation between NRPs can be realized
depending on the deployed NRP mode.  Addressed in
<xref target="DataplaneSlicing"/>, <xref target="ControlplaneSlicing"/>, and
<xref target="DataControlplaneSlicing"/> by adding explicit isolation
characterization for each mode.</t>
        </li>
        <li>
          <t>[DONE] Revise <xref target="NRPIncapbale"/> to describe how nodes can discover
NRP incapable downstream neighbors.  Addressed by adding three
discovery mechanisms: IGP-based capability advertisement (IS-IS/OSPF
extensions), controller-based discovery (NETCONF <xref target="RFC6241"/>,
BGP-LS <xref target="RFC7752"/>, or PCEP <xref target="RFC5440"/>), and static configuration
as a fallback.  Also clarified that dynamic NRP state SHOULD NOT be
advertised via routing protocols to avoid convergence impact.</t>
        </li>
        <li>
          <t>[DONE] Expand <xref target="SecurityConsiderations"/> on additional security
threats introduced with the solution.  Added four new threat
descriptions: NRP Policy Manipulation, NRP State Disclosure, Fallback
NRP Abuse, and Inter-domain NRP Selector Spoofing, with corresponding
mitigation guidance for each.</t>
        </li>
        <li>
          <t>[DONE] Expand <xref target="NRPBoundary"/> on NRP domain boundary and multi-domain
aspects.  Addressed by adding <xref target="MultiDomainNRP"/> describing two
approaches for handling NRP Selectors at inter-domain boundaries: NRP
Selector Stacking (original NRP Selector preserved end-to-end,
intermediate domain adds/removes its own NRP Selector) and NRP
Selector Remapping (boundary node replaces NRP Selector with
downstream domain equivalent).  Also covers end-to-end SLA stitching
and inter-domain path computation options.</t>
        </li>
      </ol>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="SecurityConsiderations">
      <name>Security Considerations</name>
      <t>The main goal of network slicing is to allow for varying treatment of
traffic from multiple different network slices that are utilizing a common
network infrastructure and to allow for different levels of services to be
provided for traffic traversing a given network resource.</t>
      <t>A variety of techniques may be used to achieve this, but the end result will be
that some packets may be mapped to specific resources and may receive
different (e.g., better) service treatment than others.  The mapping of network
traffic to a specific NRP is indicated primarily by the NRP Selector, and hence an
adversary may be able to utilize resources allocated to a specific 
NRP by injecting packets carrying the same NRP Selector field in their packets.</t>
      <t>Such theft-of-service may become a denial-of-service attack when the modified
or injected traffic depletes the resources available to forward legitimate
traffic belonging to a specific NRP.</t>
      <t>The defense against this type of theft and denial-of-service attacks consists
of a combination of traffic conditioning at NRP domain boundaries
with security and integrity of the network infrastructure within an NRP
domain.</t>
      <dl>
        <dt>NRP Policy Manipulation:</dt>
        <dd>
          <t>The NRP Policy controls resource allocation, topology membership, and
forwarding treatment for each NRP.  An adversary that gains access to
the management plane (e.g., via a compromised controller or network
device) may modify NRP Policies to reroute traffic, alter resource
reservations, or deprive legitimate NRPs of network resources.
Securing the management plane through authentication, authorization,
and integrity protection of NRP Policy distribution mechanisms (e.g.,
NETCONF/RESTCONF) is therefore essential.</t>
        </dd>
        <dt>NRP State Disclosure:</dt>
        <dd>
          <t>Extensions that advertise NRP topology and resource
reservation states may expose sensitive information about the
network's internal resource allocations to any adversary participating
in the routing protocol.  Operators SHOULD apply appropriate route
filtering and authentication mechanisms on routing protocol sessions
to limit the propagation of NRP state information to trusted
participants only.</t>
        </dd>
        <dt>Fallback NRP Abuse:</dt>
        <dd>
          <t>When a fallback NRP or best-effort treatment is configured for packets
carrying unrecognized NRP Selectors, an adversary may deliberately
inject packets with invalid or unrecognized NRP Selector values to
consume the resources of the fallback NRP.  Operators SHOULD apply
traffic conditioning and rate limiting at NRP domain boundaries to
mitigate this threat.</t>
        </dd>
        <dt>Inter-domain NRP Selector Spoofing:</dt>
        <dd>
          <t>In deployments where NRP Selectors traverse administrative domain
boundaries, an adversary at a peering point may inject or modify NRP
Selector values to gain access to resources of a specific NRP in the
downstream domain.  Operators SHOULD validate and condition NRP
Selector values at inter-domain boundaries, and SHOULD NOT trust NRP
Selectors received from untrusted domains without appropriate
verification.</t>
        </dd>
      </dl>
    </section>
    <section anchor="acknowledgement">
      <name>Acknowledgement</name>
      <t>The authors would like to thank Krzysztof Szarkowicz, Swamy SRK, Navaneetha
Krishnan, Prabhu Raj Villadathu Karunakaran, and Mohamed Boucadair
for their review of this document and for providing valuable feedback on it.
The authors would also like to thank Adrian Farrel for detailed discussions
that resulted in <xref target="NSRealization"/>.</t>
    </section>
    <section anchor="contributors">
      <name>Contributors</name>
      <t>The following individuals contributed to this document:</t>
      <artwork><![CDATA[
   Colby Barth
   Juniper Networks
   Email: cbarth@juniper.net

   Srihari R.  Sangli
   Juniper Networks
   Email: ssangli@juniper.net

   Chandra Ramachandran
   Juniper Networks
   Email: csekar@juniper.net

   Adrian Farrel
   Old Dog Consulting
   United Kingdom
   Email: adrian@olddog.co.uk

   Bin Wen
   Comcast
   Email: Bin_Wen@cable.comcast.com

   Daniele Ceccarelli
   Cisco Systems Inc.
   Email: daniele.ietf@gmail.com

   Xufeng Liu
   IBM Corporation
   Email: xufeng.liu.ietf@gmail.com

   Luis M. Contreras
   Telefonica
   Email: luismiguel.contrerasmurillo@telefonica.com

   Reza Rokui
   Ciena
   Email: rrokui@ciena.com

   Ran Chen
   ZTE Corporation
   Email: chen.ran@zte.com.cn

   Luay Jalil
   Verizon
   Email: luay.jalil@verizon.com

]]></artwork>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC7752">
          <front>
            <title>North-Bound Distribution of Link-State and Traffic Engineering (TE) Information Using BGP</title>
            <author fullname="H. Gredler" initials="H." role="editor" surname="Gredler"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="S. Ray" initials="S." surname="Ray"/>
            <date month="March" year="2016"/>
            <abstract>
              <t>In a number of environments, a component external to a network is called upon to perform computations based on the network topology and current state of the connections within the network, including Traffic Engineering (TE) information. This is information typically distributed by IGP routing protocols within the network.</t>
              <t>This document describes a mechanism by which link-state and TE information can be collected from networks and shared with external components using the BGP routing protocol. This is achieved using a new BGP Network Layer Reachability Information (NLRI) encoding format. The mechanism is applicable to physical and virtual IGP links. The mechanism described is subject to policy control.</t>
              <t>Applications of this technique include Application-Layer Traffic Optimization (ALTO) servers and Path Computation Elements (PCEs).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7752"/>
          <seriesInfo name="DOI" value="10.17487/RFC7752"/>
        </reference>
        <reference anchor="RFC3630">
          <front>
            <title>Traffic Engineering (TE) Extensions to OSPF Version 2</title>
            <author fullname="D. Katz" initials="D." surname="Katz"/>
            <author fullname="K. Kompella" initials="K." surname="Kompella"/>
            <author fullname="D. Yeung" initials="D." surname="Yeung"/>
            <date month="October" year="2003"/>
            <abstract>
              <t>This document describes extensions to the OSPF protocol version 2 to support intra-area Traffic Engineering (TE), using Opaque Link State Advertisements.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3630"/>
          <seriesInfo name="DOI" value="10.17487/RFC3630"/>
        </reference>
        <reference anchor="RFC5305">
          <front>
            <title>IS-IS Extensions for Traffic Engineering</title>
            <author fullname="T. Li" initials="T." surname="Li"/>
            <author fullname="H. Smit" initials="H." surname="Smit"/>
            <date month="October" year="2008"/>
            <abstract>
              <t>This document describes extensions to the Intermediate System to Intermediate System (IS-IS) protocol to support Traffic Engineering (TE). This document extends the IS-IS protocol by specifying new information that an Intermediate System (router) can place in Link State Protocol Data Units (LSP). This information describes additional details regarding the state of the network that are useful for traffic engineering computations. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5305"/>
          <seriesInfo name="DOI" value="10.17487/RFC5305"/>
        </reference>
        <reference anchor="RFC3209">
          <front>
            <title>RSVP-TE: Extensions to RSVP for LSP Tunnels</title>
            <author fullname="D. Awduche" initials="D." surname="Awduche"/>
            <author fullname="L. Berger" initials="L." surname="Berger"/>
            <author fullname="D. Gan" initials="D." surname="Gan"/>
            <author fullname="T. Li" initials="T." surname="Li"/>
            <author fullname="V. Srinivasan" initials="V." surname="Srinivasan"/>
            <author fullname="G. Swallow" initials="G." surname="Swallow"/>
            <date month="December" year="2001"/>
            <abstract>
              <t>This document describes the use of RSVP (Resource Reservation Protocol), including all the necessary extensions, to establish label-switched paths (LSPs) in MPLS (Multi-Protocol Label Switching). Since the flow along an LSP is completely identified by the label applied at the ingress node of the path, these paths may be treated as tunnels. A key application of LSP tunnels is traffic engineering with MPLS as specified in RFC 2702. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3209"/>
          <seriesInfo name="DOI" value="10.17487/RFC3209"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC9543">
          <front>
            <title>A Framework for Network Slices in Networks Built from IETF Technologies</title>
            <author fullname="A. Farrel" initials="A." role="editor" surname="Farrel"/>
            <author fullname="J. Drake" initials="J." role="editor" surname="Drake"/>
            <author fullname="R. Rokui" initials="R." surname="Rokui"/>
            <author fullname="S. Homma" initials="S." surname="Homma"/>
            <author fullname="K. Makhijani" initials="K." surname="Makhijani"/>
            <author fullname="L. Contreras" initials="L." surname="Contreras"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="March" year="2024"/>
            <abstract>
              <t>This document describes network slicing in the context of networks built from IETF technologies. It defines the term "IETF Network Slice" to describe this type of network slice and establishes the general principles of network slicing in the IETF context.</t>
              <t>The document discusses the general framework for requesting and operating IETF Network Slices, the characteristics of an IETF Network Slice, the necessary system components and interfaces, and the mapping of abstract requests to more specific technologies. The document also discusses related considerations with monitoring and security.</t>
              <t>This document also provides definitions of related terms to enable consistent usage in other IETF documents that describe or use aspects of IETF Network Slices.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9543"/>
          <seriesInfo name="DOI" value="10.17487/RFC9543"/>
        </reference>
        <reference anchor="RFC2475">
          <front>
            <title>An Architecture for Differentiated Services</title>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <author fullname="M. Carlson" initials="M." surname="Carlson"/>
            <author fullname="E. Davies" initials="E." surname="Davies"/>
            <author fullname="Z. Wang" initials="Z." surname="Wang"/>
            <author fullname="W. Weiss" initials="W." surname="Weiss"/>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines an architecture for implementing scalable service differentiation in the Internet. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2475"/>
          <seriesInfo name="DOI" value="10.17487/RFC2475"/>
        </reference>
        <reference anchor="RFC5462">
          <front>
            <title>Multiprotocol Label Switching (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic Class" Field</title>
            <author fullname="L. Andersson" initials="L." surname="Andersson"/>
            <author fullname="R. Asati" initials="R." surname="Asati"/>
            <date month="February" year="2009"/>
            <abstract>
              <t>The early Multiprotocol Label Switching (MPLS) documents defined the form of the MPLS label stack entry. This includes a three-bit field called the "EXP field". The exact use of this field was not defined by these documents, except to state that it was to be "reserved for experimental use".</t>
              <t>Although the intended use of the EXP field was as a "Class of Service" (CoS) field, it was not named a CoS field by these early documents because the use of such a CoS field was not considered to be sufficiently defined. Today a number of standards documents define its usage as a CoS field.</t>
              <t>To avoid misunderstanding about how this field may be used, it has become increasingly necessary to rename this field. This document changes the name of the field to the "Traffic Class field" ("TC field"). In doing so, it also updates documents that define the current use of the EXP field. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5462"/>
          <seriesInfo name="DOI" value="10.17487/RFC5462"/>
        </reference>
        <reference anchor="RFC2702">
          <front>
            <title>Requirements for Traffic Engineering Over MPLS</title>
            <author fullname="D. Awduche" initials="D." surname="Awduche"/>
            <author fullname="J. Malcolm" initials="J." surname="Malcolm"/>
            <author fullname="J. Agogbua" initials="J." surname="Agogbua"/>
            <author fullname="M. O'Dell" initials="M." surname="O'Dell"/>
            <author fullname="J. McManus" initials="J." surname="McManus"/>
            <date month="September" year="1999"/>
            <abstract>
              <t>This document presents a set of requirements for Traffic Engineering over Multiprotocol Label Switching (MPLS). It identifies the functional capabilities required to implement policies that facilitate efficient and reliable network operations in an MPLS domain. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2702"/>
          <seriesInfo name="DOI" value="10.17487/RFC2702"/>
        </reference>
        <reference anchor="I-D.ietf-lsr-flex-algo">
          <front>
            <title>IGP Flexible Algorithm</title>
            <author fullname="Peter Psenak" initials="P." surname="Psenak">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Shraddha Hegde" initials="S." surname="Hegde">
              <organization>Juniper Networks, Inc.</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Ketan Talaulikar" initials="K." surname="Talaulikar">
              <organization>Cisco Systems, Inc</organization>
            </author>
            <author fullname="Arkadiy Gulko" initials="A." surname="Gulko">
              <organization>Edward Jones</organization>
            </author>
            <date day="17" month="October" year="2022"/>
            <abstract>
              <t>IGP protocols historically compute the best paths over the network based on the IGP metric assigned to the links.  Many network deployments use RSVP-TE or Segment Routing - Traffic Engineering (SR-TE) to steer traffic over a path that is computed using different metrics or constraints than the shortest IGP path.  This document specifies a solution that allows IGPs themselves to compute constraint-based paths over the network.  This document also specifies a way of using Segment Routing (SR) Prefix-SIDs and SRv6 locators to steer packets along the constraint-based paths.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-lsr-flex-algo-26"/>
        </reference>
        <reference anchor="RFC4915">
          <front>
            <title>Multi-Topology (MT) Routing in OSPF</title>
            <author fullname="P. Psenak" initials="P." surname="Psenak"/>
            <author fullname="S. Mirtorabi" initials="S." surname="Mirtorabi"/>
            <author fullname="A. Roy" initials="A." surname="Roy"/>
            <author fullname="L. Nguyen" initials="L." surname="Nguyen"/>
            <author fullname="P. Pillay-Esnault" initials="P." surname="Pillay-Esnault"/>
            <date month="June" year="2007"/>
            <abstract>
              <t>This document describes an extension to Open Shortest Path First (OSPF) in order to define independent IP topologies called Multi- Topologies (MTs). The Multi-Topologies extension can be used for computing different paths for unicast traffic, multicast traffic, different classes of service based on flexible criteria, or an in- band network management topology.</t>
              <t>An optional extension to exclude selected links from the default topology is also described. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4915"/>
          <seriesInfo name="DOI" value="10.17487/RFC4915"/>
        </reference>
        <reference anchor="RFC6241">
          <front>
            <title>Network Configuration Protocol (NETCONF)</title>
            <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6241"/>
          <seriesInfo name="DOI" value="10.17487/RFC6241"/>
        </reference>
        <reference anchor="RFC5440">
          <front>
            <title>Path Computation Element (PCE) Communication Protocol (PCEP)</title>
            <author fullname="JP. Vasseur" initials="JP." role="editor" surname="Vasseur"/>
            <author fullname="JL. Le Roux" initials="JL." role="editor" surname="Le Roux"/>
            <date month="March" year="2009"/>
            <abstract>
              <t>This document specifies the Path Computation Element (PCE) Communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a PCE, or between two PCEs. Such interactions include path computation requests and path computation replies as well as notifications of specific states related to the use of a PCE in the context of Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) Traffic Engineering. PCEP is designed to be flexible and extensible so as to easily allow for the addition of further messages and objects, should further requirements be expressed in the future. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5440"/>
          <seriesInfo name="DOI" value="10.17487/RFC5440"/>
        </reference>
        <reference anchor="I-D.ietf-teas-rfc3272bis">
          <front>
            <title>Overview and Principles of Internet Traffic Engineering</title>
            <author fullname="Adrian Farrel" initials="A." surname="Farrel">
              <organization>Old Dog Consulting</organization>
            </author>
            <date day="12" month="August" year="2023"/>
            <abstract>
              <t>   This document describes the principles of traffic engineering (TE) in
   the Internet.  The document is intended to promote better
   understanding of the issues surrounding traffic engineering in IP
   networks and the networks that support IP networking, and to provide
   a common basis for the development of traffic engineering
   capabilities for the Internet.  The principles, architectures, and
   methodologies for performance evaluation and performance optimization
   of operational networks are also discussed.

   This work was first published as RFC 3272 in May 2002.  This document
   obsoletes RFC 3272 by making a complete update to bring the text in
   line with best current practices for Internet traffic engineering and
   to include references to the latest relevant work in the IETF.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-teas-rfc3272bis-27"/>
        </reference>
        <reference anchor="RFC8402">
          <front>
            <title>Segment Routing Architecture</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>Segment Routing (SR) leverages the source routing paradigm. A node steers a packet through an ordered list of instructions, called "segments". A segment can represent any instruction, topological or service based. A segment can have a semantic local to an SR node or global within an SR domain. SR provides a mechanism that allows a flow to be restricted to a specific topological path, while maintaining per-flow state only at the ingress node(s) to the SR domain.</t>
              <t>SR can be directly applied to the MPLS architecture with no change to the forwarding plane. A segment is encoded as an MPLS label. An ordered list of segments is encoded as a stack of labels. The segment to process is on the top of the stack. Upon completion of a segment, the related label is popped from the stack.</t>
              <t>SR can be applied to the IPv6 architecture, with a new type of routing header. A segment is encoded as an IPv6 address. An ordered list of segments is encoded as an ordered list of IPv6 addresses in the routing header. The active segment is indicated by the Destination Address (DA) of the packet. The next active segment is indicated by a pointer in the new routing header.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8402"/>
          <seriesInfo name="DOI" value="10.17487/RFC8402"/>
        </reference>
        <reference anchor="RFC8040">
          <front>
            <title>RESTCONF Protocol</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8040"/>
          <seriesInfo name="DOI" value="10.17487/RFC8040"/>
        </reference>
      </references>
    </references>
    <?line 1446?>

<section anchor="NRPModeExamples">
      <name>NRP Mode Examples</name>
      <t>This appendix provides examples to illustrate the NRP modes described
in <xref target="SliceModes"/>.  All examples use the following common network
topology:</t>
      <figure anchor="fig-common-topology">
        <name>Common topology for NRP mode examples.</name>
        <artwork><![CDATA[
   /-----\  10G   /----\  10G   /----\  10G   /-----\
   | PE1 |--------| P1 |--------| P2 |--------| PE2 |
   \-----/        \----/        \----/        \-----/
     |                                           |
   [CE1]                                       [CE2]
]]></artwork>
      </figure>
      <t>Two NRPs are instantiated over this network:</t>
      <ul spacing="normal">
        <li>
          <t>NRP1: supports low-latency Slice-Flow Aggregate (SFA1), with a
minimum bandwidth guarantee of 4 Gbps per link.</t>
        </li>
        <li>
          <t>NRP2: supports best-effort Slice-Flow Aggregate (SFA2), with up to
6 Gbps per link.</t>
        </li>
      </ul>
      <section anchor="A.1">
        <name>Data Plane NRP Mode Example</name>
        <t>In this example, network resource partitioning is performed in the
data plane only.  PE1 acts as the NRP ingress node and classifies
inbound CE1 traffic into two Slice-Flow Aggregates based on the IP
5-tuple, and pushes a dedicated NRP Selector label onto each packet:</t>
        <ul spacing="normal">
          <li>
            <t>SFA1 (NRP1): NRP Selector label = 1001</t>
          </li>
          <li>
            <t>SFA2 (NRP2): NRP Selector label = 1002</t>
          </li>
        </ul>
        <t>Transit nodes P1 and P2 use the NRP Selector label to apply the
corresponding NRP-PHB.  PE2 pops the NRP Selector label before
forwarding traffic to CE2.</t>
        <artwork><![CDATA[
   NRP Selectors:                NRP-PHB at P1 and P2:
     1001: NRP1 (SFA1)          +-----------------------------+
     1002: NRP2 (SFA2)          | NRP1: strict-priority queue |
                                |        (4 Gbps guaranteed)  |
                                | NRP2: weighted fair queue   |
                                |        (up to 6 Gbps)       |
                                +-----------------------------+

   /-----\ 10G  /----\ 10G  /----\ 10G  /-----\
   | PE1 |------| P1 |------| P2 |------| PE2 |
   \-----/ @@@@ \----/ @@@@ \----/ @@@@ \-----/
     |                                     |
   [CE1]       @@@@: NRP-PHB enforced    [CE2]
]]></artwork>
        <t>The packet label stack at each node for an SFA1 (NRP1) packet:</t>
        <artwork><![CDATA[
   At PE1 (ingress):  At P1 and P2:    At PE2 (egress):
   +-----------+      +--------+       +-----------+
   | IP Header |      |  1001  |       | IP Header |
   +-----------+      +--------+       +-----------+
   | Payload   |      | IP Hdr |       | Payload   |
   +-----------+      +--------+       +-----------+
                      | Payload|
                      +--------+
]]></artwork>
        <t>Since data plane only NRP mode is used, P1 and P2 do not maintain
per-NRP routing state.  The forwarding path is determined by standard
best-path selection; the NRP Selector solely determines the NRP-PHB
applied at each hop.</t>
      </section>
      <section anchor="A.2">
        <name>Control Plane NRP Mode Example</name>
        <t>In this example, network resource partitioning is performed in the
control plane only.  No NRP Selector is carried in packets.  Instead,
per-NRP bandwidth is reserved on each link, and NRP-aware TE paths are
computed using these reservations.</t>
        <t>The 10 Gbps physical link bandwidth is divided between the two NRPs:</t>
        <ul spacing="normal">
          <li>
            <t>NRP1: 4 Gbps reserved bandwidth per link</t>
          </li>
          <li>
            <t>NRP2: 6 Gbps reserved bandwidth per link</t>
          </li>
        </ul>
        <t>The per-NRP reservations are maintained on each network element (or on
a controller) and may be advertised via a routing protocol for
NRP-state-aware path computation.</t>
        <artwork><![CDATA[
   /-----\ 10G  /----\ 10G  /----\ 10G  /-----\
   | PE1 |------| P1 |------| P2 |------| PE2 |
   \-----/      \----/      \----/      \-----/

   Per-link NRP reservations:
     NRP1: 4 Gbps
     NRP2: 6 Gbps
     Total: 10 Gbps (= physical capacity)
]]></artwork>
        <t>The ingress node PE1 (or a PCE) uses the NRP-specific topology and
available bandwidth to compute TE paths for each SFA:</t>
        <ul spacing="normal">
          <li>
            <t>SFA1 path: PE1-&gt;P1-&gt;P2-&gt;PE2 (using NRP1's 4 Gbps pool)</t>
          </li>
          <li>
            <t>SFA2 path: PE1-&gt;P1-&gt;P2-&gt;PE2 (using NRP2's 6 Gbps pool)</t>
          </li>
        </ul>
        <t>Since no NRP Selector is carried in packets, transit nodes P1 and P2
apply no per-packet NRP-specific forwarding treatment.  Isolation
between NRP1 and NRP2 is enforced at admission time only; traffic from
both NRPs shares the same physical queues at runtime, and isolation
guarantees are soft.</t>
      </section>
      <section anchor="A.3">
        <name>Data and Control Plane NRP Mode Example</name>
        <t>In this example, network resource partitioning is performed in both
the control plane and the data plane, combining the mechanisms of
<xref target="A.1"/> and <xref target="A.2"/>.</t>
        <t>As in A.2, per-NRP bandwidth is reserved per link (NRP1: 4 Gbps,
NRP2: 6 Gbps), and NRP-aware TE paths are computed for each SFA.
Additionally, as in A.1, PE1 pushes an NRP Selector label onto each
packet, and P1/P2 apply dedicated per-NRP queues based on the NRP
Selector.</t>
        <artwork><![CDATA[
   /-----\ 10G  /----\ 10G  /----\ 10G  /-----\
   | PE1 |------| P1 |------| P2 |------| PE2 |
   \-----/ @@@@ \----/ @@@@ \----/ @@@@ \-----/
     |                                     |
   [CE1]   @@@@: NRP-PHB enforced        [CE2]

   Per-link NRP reservations (control plane):
     NRP1: 4 Gbps, NRP2: 6 Gbps

   NRP-PHB at P1 and P2 (data plane):
     NRP1 (label 1001): strict-priority queue (4 Gbps)
     NRP2 (label 1002): weighted fair queue   (6 Gbps)
]]></artwork>
        <t>The combined mode provides the strongest isolation:</t>
        <ul spacing="normal">
          <li>
            <t>The control plane ensures the total admitted traffic across NRP1
and NRP2 does not exceed the physical link capacity.</t>
          </li>
          <li>
            <t>The data plane enforces per-packet forwarding treatment at runtime,
preventing traffic bursts from NRP2 from consuming resources
reserved for NRP1.</t>
          </li>
        </ul>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA8V9e3Mjx5Hn//UpeqW4ELkCMBpqJK9pWyeKw5G4ngePpOW7
Xe1eNIEG2RoADXc3yKFm5j775bMqq7oAUrL3biJsEUB3PbOy8vHLzPF47Pq6
X1SHxXlVLupf6tV18brq75r2bXGxqKdVV9Sr4vTsyauzlxf6S+fKq6u2uj1M
f6BXoAk3a6arcgmtztpy3o/rqp+P+6rsxqtuXK/Hy/WiGz/9wk3Lvrpu2vtD
6GTeuHrdHhZ9u+n6gy+++P0XBw7bvG6bzfqwuDw5uij+Cp9xhN/jd+5tdQ8P
zGAUq75qV1U/fo69uW5ztay7rm5W/f0axnB6cvnCua4vV7P/XS6aFXx1X3Vu
XR8W/94301HRNW3fVvMO/rpf4h//4Vy56W+a9tC5YuwK+FevOhjEpLgoyxl9
wfO7LNvqbfiyaa/LVf1L2UPnh8Vx3U2b4uK+66tlB6OcTuihalnWC5hoB29N
YNjfXuMXk2mzjHv7cVJ8V1VtuTT9/Vh3N6tNcVbeliv7a9zxD2cntqdbemmN
70xwK7Z1+K+T4nkDuxe6+9e6Cl8lfWzKu6ouLqvpzapZNNc1LKnp8+e6mszg
zW9v6Dnbmfb1Q7lYw7650FtTLey32Ulp+/Ds5Iaf/fZmXQ06uJgUZxWPnFu/
uCmb+cZ/GTf+b5cnxXHTrpuWvjAdreH5SUfvfvtLT/1MpivnVk27hGdvK6AR
pN7waTweF+VV17fltHcunKuVHJKOz9WyvC/a6m+buq2K/qYqLqr2Fn4oztrm
tp5VbdE3xU15yz+WV/Wi7u/hO7cuWziyMMiiLNY39109LRe+7XoFby03i75e
L6oCt8X82hXNvLgt23scTVf/UnUjOBbtZtpvWvi7gANSzDerKTbewamAnsu+
qMrpDY+5mALRXVXFrJrVeHRnOMRuXU3reT11HY8fOmmLKZzhZlm13aR4pYNJ
pi9ttbQ80BTMByfawV45ffTupoYXq1W3aWnINIhqUXY9sBlYDWBNcPKXNC99
B2bSbNpp5crFopnSbk6Ky5u6K4ApbZbVqofxd9O2voJBlEUH61NeQS9ds9jQ
qsKcZFDapuuYrVlW6Jf06r7oNmsgnB6f8EsfVgNbXOMIoTN4ZFG5wa5dKSVg
E0Bg60Vd4jgbIEHYCdyXVQOjxrGtmTwcUNxd2c7wDWBeZU8z2+umN9Vss4Bv
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

-->

</rfc>
