<?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.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-watal-spring-srv6-sfc-sr-aware-functions-06" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="SRv6 SFC with SR-aware Functions">SRv6 SFC Architecture with SR-aware Functions</title>
    <seriesInfo name="Internet-Draft" value="draft-watal-spring-srv6-sfc-sr-aware-functions-06"/>
    <author initials="W." surname="Mishima" fullname="Wataru Mishima">
      <organization abbrev="NTT docomo Business / KAIT">NTT docomo Business / Kanagawa Institute of Technology</organization>
      <address>
        <postal>
          <country>Japan</country>
        </postal>
        <email>w.mishima@ntt.com</email>
      </address>
    </author>
    <author initials="Y." surname="Fukagawa" fullname="Yuta Fukagawa">
      <organization abbrev="NTT docomo Business / KAIT">NTT docomo Business / Kanagawa Institute of Technology</organization>
      <address>
        <postal>
          <country>Japan</country>
        </postal>
        <email>y.fukagawa@ntt.com</email>
      </address>
    </author>
    <date year="2026" month="November" day="02"/>
    <area>Routing</area>
    <workgroup>SPRING</workgroup>
    <keyword>SRv6</keyword>
    <keyword>SFC</keyword>
    <abstract>
      <?line 88?>

<t>This document describes the architecture of Segment Routing over IPv6 (SRv6) Service Function Chaining (SFC) with SR-aware functions.
This architecture provides the following benefits:</t>
      <ul spacing="normal">
        <li>
          <t>Comprehensive management: centralized control and management of SR Policies, network topology, service functions, and network metrics.</t>
        </li>
        <li>
          <t>Simplicity: no SFC proxies, which reduces the number of nodes and address resource consumption.</t>
        </li>
      </ul>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-watal-spring-srv6-sfc-sr-aware-functions/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        SPRING Working Group mailing list (<eref target="mailto:spring@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/spring/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/spring/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/watal/draft-watal-spring-srv6-sfc-sr-aware-functions"/>.</t>
    </note>
  </front>
  <middle>
    <?line 96?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Segment Routing over IPv6 (SRv6) <xref target="RFC8986"/> enables packet steering through an ordered list of instructions called a segment list.
SRv6 supports various types of segments, including Prefix Segments, Adjacency Segments, Anycast Segments, and Binding Segments.</t>
      <t>Service Function Chaining (SFC) <xref target="RFC7665"/> can be used in various scenarios (e.g., FW, IPS, IDS, NAT, and DPI).
SFC based on Segment Routing (SR) is described in <xref target="I-D.draft-ietf-spring-srv6-service-programming"/>.
It defines SRv6 Endpoint Behaviors, such as End.AS, End.AD, and End.AM, that enable the use of SR-unaware functions.</t>
      <t>This document describes an architecture for SRv6 SFC with SR-aware functions, which provides comprehensive management of SRv6 network resources and services.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <section anchor="terminology-defined-in-related-rfcs-and-internet-drafts">
        <name>Terminology Defined in Related RFCs and Internet-Drafts</name>
        <t>The following terms are used in this document as defined in the related RFCs and Internet-Drafts:</t>
        <ul spacing="normal">
          <li>
            <t>SR, SR Domain, Segment ID (SID), SRv6, SR Policy, Prefix Segment, Adjacency Segment, Anycast Segment, Active Segment, and Distributed/Centralized/Hybrid Control Plane defined in <xref target="RFC8402"/>.</t>
          </li>
          <li>
            <t>SR Source Node and Transit Node defined in <xref target="RFC8754"/>.</t>
          </li>
          <li>
            <t>SRv6 Endpoint Behavior, and SR Segment Endpoint Node defined in <xref target="RFC8986"/>.</t>
          </li>
          <li>
            <t>SFC, SFC Proxy, and Service Classification Function defined in <xref target="RFC7665"/>.</t>
          </li>
          <li>
            <t>Service Segment, SR-Aware Service, SR-Unaware Service, End.AS, End.AD, End.AM, and End.AN defined in <xref target="I-D.draft-ietf-spring-srv6-service-programming"/>.</t>
          </li>
          <li>
            <t>Headend, Color, and Endpoint defined in <xref target="RFC9256"/>.</t>
          </li>
          <li>
            <t>Quality of Service (QoS), Service Level Agreement (SLA), and Service Level Objective (SLO) defined in <xref target="RFC9522"/>.</t>
          </li>
          <li>
            <t>Forwarding Plane, Control Plane, Management Plane, Application Plane defined in <xref target="RFC7426"/>.</t>
          </li>
          <li>
            <t>Path Computation Client (PCC), Path Computation Element (PCE), and Traffic Engineering Database (TED) defined in <xref target="RFC4655"/>.</t>
          </li>
          <li>
            <t>The Path Computation Element Communication Protocol (PCEP) is defined in <xref target="RFC5440"/>.</t>
          </li>
          <li>
            <t>BGP Link-State (BGP-LS) defined in <xref target="RFC9552"/>.</t>
          </li>
          <li>
            <t>BGP Flow Specification defined in <xref target="RFC8955"/> and <xref target="RFC8956"/>.</t>
          </li>
        </ul>
      </section>
      <section anchor="newly-defined-terminology">
        <name>Newly Defined Terminology</name>
        <t>The following terms are used in this document as defined below:</t>
        <ul spacing="normal">
          <li>
            <t>Service Function Node: an SRv6 Segment Endpoint Node that hosts SR-aware functions associated with service segments.</t>
          </li>
          <li>
            <t>SRv6 Controller: a controller consisting of a PCE and a Classification Rule Controller.</t>
          </li>
          <li>
            <t>Classification Rule Controller: a controller that distributes flow classification rules to SR source nodes.</t>
          </li>
          <li>
            <t>Service Function Manager: a manager that configures network function instances and enables SR-aware functions as service segments.</t>
          </li>
        </ul>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</t>
      </section>
    </section>
    <section anchor="design-objectives-and-assumptions">
      <name>Design Objectives and Assumptions</name>
      <section anchor="goals-and-objectives">
        <name>Goals and Objectives</name>
        <t>The SRv6 SFC architecture is designed with two main objectives:</t>
        <ul spacing="normal">
          <li>
            <t>Comprehensive Management: centralized coordination of SR Policies, network topology, service functions, and network metrics.  </t>
            <t>
Operators need to satisfy customer service requirements, including SFC requirements (e.g., required service functions and their order) and QoS objectives (e.g., availability, latency, and bandwidth). These requirements collectively define the service intent.
Realizing this service intent requires coordinated service segment provisioning, network state collection, and SR Policy computation.  </t>
            <t><xref target="RFC8402"/> describes a hybrid control plane that combines distributed and centralized control.
In this model, forwarding information, such as Node and Adjacency SIDs, is distributed among SR nodes through IGPs such as IS-IS and OSPF, while SR Policies and flow classification rules are managed by centralized controllers.
Service segment information is configured by the management plane and can be advertised by service function nodes using BGP-LS.  </t>
            <t>
The SDN framework <xref target="RFC7426"/> enables network abstraction and automation.
An SRv6 controller can translate service intents into SR Policies and flow classification rules, coordinate service segment provisioning, monitor network and service function states, and apply protection mechanisms to meet service requirements.</t>
          </li>
          <li>
            <t>Simplicity: SR-aware functions do not require dedicated SFC proxies, reducing the number of nodes and address resource consumption.
Network complexity increases operational costs, particularly when multiple protocols and additional network components are required.
Using an SFC proxy may also increase forwarding overhead due to additional header manipulations.</t>
          </li>
        </ul>
      </section>
      <section anchor="assumptions">
        <name>Assumptions</name>
        <t>To achieve these objectives, this architecture is based on two main assumptions:</t>
        <ul spacing="normal">
          <li>
            <t>Straightforward extension of the SRv6 network programming model  </t>
            <t>
This architecture follows the SRv6 network programming model and uses standardized protocols and mechanisms, such as BGP, PCEP, IS-IS, OSPF, TI-LFA, and Anycast SIDs, to support traffic steering, SFC, redundancy, and local protection.  </t>
            <t>
It can also support SR-unaware functions using appropriate SRv6 endpoint behaviors. However, it is primarily designed for SR-aware functions.</t>
          </li>
          <li>
            <t>SDN framework compliance and comprehensive management of SRv6 SFC by controllers  </t>
            <t>
The architecture uses standardized protocols and abstract service interfaces to support automated and intent-based management of SRv6 SFC.
This also provides programmability by controlling policies that meet a user's intent, including SFC and QoS.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="overview-of-architecture">
      <name>Overview of Architecture</name>
      <t>Figure 1 illustrates an overview of this architecture.</t>
      <figure anchor="overview">
        <name>Overview of SRv6 SFC Architecture with SR-aware Functions</name>
        <sourcecode type="drawing"><![CDATA[
 +----------------------- Application Plane ----------------------+
 |                        User Application                        |
 +-----------------------------------|----------------------------+
                                     |
 +- Control Plane (SRv6 Controller) -v-----+ +- Management Plane -+
 | +--------------+ +--------------------+ | | +----------------+ |
 | |Classification| |        Path        | | | |    Service     | |
 | |     Rule     | |     Computation    | | | |    Function    | |
 | |  Controller  | |    Element (PCE)   | | | |    Manager     | |
 | +------|-------+ +-^-------|--------^-+ | | +----------------+ |
 +--------|-----------|-------|--------|---+ +---------|----------+
          |           |       |        |               |
 +--------|-----------|-------|--------|---------------|---+
 | +------v-----------|-------v-+    +-|---------------v-+ |
 | |                            |    |      Service      | |
 | |       SR Source Node       |----|      Function     | |
 | |                            |    |        Node       | |
 | +----------------------------+    +-------------------+ |
 +------------------- Forwarding Plane --------------------+
]]></sourcecode>
      </figure>
      <t>This architecture is based on <xref target="RFC7426"/> and consists of the forwarding plane, control plane, management plane, and application plane.</t>
      <ul spacing="normal">
        <li>
          <t>Forwarding Plane: classifies packets, encapsulates them with an IPv6 header and Segment Routing Header (SRH), and forwards them through SRv6 Endpoint Behaviors.
          </t>
          <ul spacing="normal">
            <li>
              <t>Provides SR-aware functions using End.AN.</t>
            </li>
            <li>
              <t>Classifies and steers traffic flows into corresponding SR Policies using policy-based routing (PBR).</t>
            </li>
            <li>
              <t>Provides redundancy using Anycast SIDs and local protection using Fast Reroute (FRR).</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Control Plane: makes decisions about packet forwarding and provides rules for a forwarding plane.
          </t>
          <ul spacing="normal">
            <li>
              <t>Collects link-state information, including SRv6 locators, prefixes, behaviors, and delays.</t>
            </li>
            <li>
              <t>Calculates and provisions SR Policies.</t>
            </li>
            <li>
              <t>Applies SR Policies to each flow by provisioning flow classification rules.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Management Plane: deploys and monitors network functions and devices.
          </t>
          <ul spacing="normal">
            <li>
              <t>Sets up network functions.</t>
            </li>
            <li>
              <t>Collects metrics of devices, network functions, and SFC services.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Application Plane: provides user APIs for the control and management planes.
          </t>
          <ul spacing="normal">
            <li>
              <t>Offers an interface for operators or customers.</t>
            </li>
            <li>
              <t>Supports intent-based networking as described in <xref target="RFC9315"/>.</t>
            </li>
          </ul>
        </li>
      </ul>
      <t>The components are loosely coupled and communicate using standardized protocols and abstraction layers.</t>
      <t>The detailed design of the application plane is outside the scope of this document, as its components and abstraction layers depend on network requirements and operator intent.
The following sections describe the forwarding plane, control plane, and management plane in detail.</t>
    </section>
    <section anchor="forwarding-plane">
      <name>Forwarding Plane</name>
      <t>The forwarding plane realizes SFC through packet classification, SRv6 encapsulation, and service function processing within the SR domain.
In this architecture, all forwarding plane components are located within the SR domain.</t>
      <figure anchor="fp">
        <name>Forwarding Plane</name>
        <sourcecode type="drawing"><![CDATA[
 +-----------------------------------------------------------------+
 | +-----------+             +----------+             +----------+ |
 | |           | SRv6 Packet | Service  | SRv6 Packet | Service  | |
 | | SR Source |(S2,S1; SL:1)| Function |(S2,S1; SL:0)| Function | |
-->|    Node   |------------>|   Node   |------------>|   Node   |-->
 | |           |             |   (S1)   |             |   (S2)   | |
 | +-----------+             +----------+             +----------+ |
 +--------------------------- SR domain ---------------------------+
]]></sourcecode>
      </figure>
      <t>Figure 2 shows an example of SFC with two network functions.
First, the SR source node classifies the flow and encapsulates it with an SRH containing the segment list &lt;S1, S2&gt;.
Next, the service function node (S1) receives the packet and applies the network function associated with the End.AN SID S1.
Finally, the service function node (S2) receives the packet and applies the network function associated with the End.AN SID S2, thus completing the SFC.</t>
      <section anchor="endan-based-service-segment-provisioning">
        <name>End.AN-based Service Segment Provisioning</name>
        <t>End.AN is an SRv6 Endpoint Behavior for SR-aware service functions.
An implementation MAY support optional arguments to provide additional programmability for network functions.</t>
        <t>By using virtualized environments within routers or on generic servers, network functions can be provided at any node in an SR domain.
This allows for scaling and flexible redundancy of network functions.</t>
        <section anchor="when-a-network-function-becomes-unavailable">
          <name>When a Network Function Becomes Unavailable</name>
          <t>When a network function becomes unavailable, the affected node MUST stop processing packets using the corresponding SID.</t>
          <t>For an Anycast SID, the affected node SHOULD withdraw its SID advertisement, allowing routing convergence to direct traffic to another available service function node.</t>
          <t>If no other service function nodes are available, packets MUST be dropped.
The node MAY send an ICMPv6 message (Type 1: Destination Unreachable, Code 0: no route to destination).</t>
        </section>
        <section anchor="anycast-segment">
          <name>Anycast Segment</name>
          <t>The concept of the Anycast Segment is introduced in <xref target="RFC8402"/>.
An Anycast SID allows multiple service function nodes providing the same network function to share a common SID, enabling redundancy and traffic distribution.</t>
          <t>An Anycast SID does not guarantee session continuity or state consistency across service function nodes.</t>
          <t>For stateful Service Functions, the deployment MUST provide mechanisms to maintain session affinity and ensure service state consistency across instances.
When traffic is forwarded to another instance, the deployment MUST ensure that the required service state is available before packet processing.</t>
          <t>The specific mechanisms for session affinity, state synchronization, and failover are outside the scope of this document.</t>
        </section>
        <section anchor="fast-reroute">
          <name>Fast Reroute</name>
          <t>The segment list specifies the order of service functions in an SRv6 SFC.
FRR MUST preserve the order of service functions specified by the SR Policy when providing local protection for the path to an active segment.</t>
          <t>If the Active Segment is an Anycast SID, the packet MAY be forwarded to another service function node.</t>
          <t>The failure recovery mechanisms described in this section are intended to maintain network connectivity and service function node reachability.
For stateful service functions, the requirements described in the Anycast Segment section also apply when FRR forwards packets to another service function node.</t>
        </section>
      </section>
      <section anchor="service-function-chains">
        <name>Service Function Chains</name>
        <t>In this architecture, each SFC is represented by an SR Policy, whose Color indicates its purpose or intent.</t>
        <t>An SFC can be realized using either strict or loose source routing.
When QoS requirements are also considered, the PCE computes paths that satisfy the specified constraints.
Flex-Algo SIDs MAY be used to steer traffic over paths that meet specific constraints.</t>
      </section>
      <section anchor="per-flow-classification-and-steering">
        <name>Per-Flow Classification and Steering</name>
        <t>In an SR source node, which serves as the Service Classification Function, packets are classified on a per-flow basis using PBR and steered into the corresponding SR Policy.
The SR source node MUST support packet classification based on the criteria specified in the flow classification rules, which may include a 5-tuple or more detailed packet information.</t>
        <t>To support comprehensive management, the Service Classification Function exposes an API for communicating with the controller.</t>
      </section>
    </section>
    <section anchor="control-plane">
      <name>Control Plane</name>
      <t>The control plane sets up a forwarding plane by creating SR Policies for SFC and provisioning flow classification rules to associate them with traffic flows.</t>
      <figure anchor="cp">
        <name>Control Plane</name>
        <sourcecode type="drawing"><![CDATA[
 +- Control Plane (SRv6 Controller) -------+
 | +--------------+ +--------------------+ |
 | |Classification| |        Path        | |
 | |     Rule     <->     Computation    | |
 | |  Controller  | |    Element (PCE)   | |
 | +------|-------+ +-^-------|--------^-+ |
 +--------|-----------|-------|--------|---+
  Classification link-state SR Policy Service Segment
        Rule      (BGP-LS)  (PCEP)    (BGP-LS)
  (BGP FlowSpec)      |       |        |
 +--------|-----------|-------|--------|-------------------+
 | +------v-----------|-------v-+    +-|-----------------+ |
 | |                            |    |      Service      | |
 | |       SR Source Node       |----|      Function     | |
 | |                            |    |        Node       | |
 | +----------------------------+    +-------------------+ |
 +------------------- Forwarding Plane --------------------+
]]></sourcecode>
      </figure>
      <t>The SRv6 Controller consists of the following two components:</t>
      <ul spacing="normal">
        <li>
          <t>PCE: computes SR Policies that fulfill SFC and QoS requirements from the headend to the endpoint, and provisions them to the SR source node.</t>
        </li>
        <li>
          <t>Classification Rule Controller: distributes flow classification rules that associate traffic flows with SR Policies to SR source nodes.</t>
        </li>
      </ul>
      <section anchor="path-computation-element-pce">
        <name>Path Computation Element (PCE)</name>
        <t>A PCE computes and provisions SR Policies.
As an active stateful PCE <xref target="RFC8231"/>, it establishes PCEP sessions with PCCs in an SR domain and manages SFC-related SR Policies under its stateful control.
The PCE MUST support the computation and provisioning of SR Policies with both explicit and dynamic paths.</t>
        <t>For dynamic path computation, the PCE uses the Constrained Shortest Path First (CSPF) algorithm to compute paths that satisfy the specified service function and QoS constraints.</t>
        <t>The PCE builds a Traffic Engineering Database (TED) of the SR domain using BGP-LS and installs SR Policies via PCEP <xref target="RFC9603"/> <xref target="RFC9862"/>.</t>
        <t>The BGP-LS Service Segment extension <xref target="I-D.draft-ietf-idr-bgp-ls-sr-service-segments"/> can be used to advertise service segment information.
The PCE uses this information, together with network topology and traffic engineering metrics, to compute SR Policies that include the required service functions.</t>
      </section>
      <section anchor="classification-rule-controller">
        <name>Classification Rule Controller</name>
        <t>A Classification Rule Controller determines which SFC to apply to each traffic flow.</t>
        <t>The resulting classification rules are distributed to each SR source node using the BGP Flow Specification extension defined in <xref target="I-D.draft-ietf-idr-ts-flowspec-srv6-policy"/>.
The rules associate traffic flows with SR Policies identified by their Color and Endpoint.</t>
        <t>A Color value MAY be reused with different Endpoints or in multiple FlowSpec rules that reference the same SR Policy.</t>
        <t>The SRv6 Controller is responsible for maintaining the association between traffic classification rules and SR Policies.
The PCE computes and provisions SR Policies, whereas the Classification Rule Controller distributes the corresponding FlowSpec rules to SR source nodes.
This separation allows traffic classification and path computation to be managed independently within the SRv6 Controller.</t>
      </section>
      <section anchor="handling-sr-policy-unavailability">
        <name>Handling SR Policy Unavailability</name>
        <t>The Stateful PCE monitors the state of SR Policies under its stateful control through PCEP state reporting.
When an SR Policy becomes unavailable or is removed from a PCC, the PCE may take appropriate actions, such as recomputing and reprovisioning the SR Policy.</t>
        <t>FlowSpec rules may be distributed independently of the operational state of their associated SR Policies.
A PCC may receive a FlowSpec route before the corresponding SR Policy becomes available.
In such a case, the PCC does not activate the associated traffic-steering state until the SR Policy becomes available.
The PCC MAY log this condition for operational visibility.
This behavior does not require extensions to the BGP Flow Specification encoding or distribution procedures.</t>
        <t>The SRv6 Controller coordinates the PCE and the Classification Rule Controller as necessary to maintain the association between traffic classification rules and SR Policies.
If the existing FlowSpec rule remains applicable to the reprovisioned SR Policy, no change to the rule is necessary.
Otherwise, the Classification Rule Controller withdraws the obsolete rule before distributing an updated rule.</t>
        <t>Once the SR Policy and the corresponding FlowSpec rule are both available at the PCC, the PCC associates the traffic flows with the SR Policy using the Color and Endpoint specified in the FlowSpec rule.</t>
      </section>
    </section>
    <section anchor="management-plane">
      <name>Management Plane</name>
      <t>The management plane configures network function instances, enables SR-aware functions as service segments, monitors resources, and collects network metrics.
The details of each manager are outside the scope of this document, as the southbound interface of the management plane may be different for each service and hardware architecture.</t>
      <figure anchor="mp">
        <name>Management Plane</name>
        <sourcecode type="drawing"><![CDATA[
 +-------------------- Function Managers ---------------------+
 | +-----------+ +--------------+ +-----------+ +-----------+ |
 | |  Service  | | Virtualized  | |    VNF    | |  Network  | |
 | |  Function | |Infrastructure| |  Manager  | |  Metric   | |
 | |  Manager  | |   Manager    | |           | |  Manager  | |
 | +-----|-----+ +------^-------+ +-----|-----+ +-----^-----+ |
 +-------|--------------|---------------|-------------|-------+
         |              |               |             |
             Management Plane Southbound Interfaces
         |              |               |             |
 +-------|--------------|---------------|-------------|--------+
 | +-----v--------------v---------------v-------------|------+ |
 | |                  Service Function Node                  | |
 | +---------------------------------------------------------+ |
 +------------------------- SR domain -------------------------+
]]></sourcecode>
      </figure>
      <t>Figure 4 shows examples of managers that MAY be deployed in the management plane:</t>
      <ul spacing="normal">
        <li>
          <t>Service Function Manager: assigns SIDs to network functions and manages their service segment configuration.</t>
        </li>
        <li>
          <t>Virtualized Network Function Manager (VNFM): manages the lifecycle of network functions.
          </t>
          <ul spacing="normal">
            <li>
              <t>It instantiates, configures, scales, heals, updates, and terminates network functions.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Virtualized Infrastructure Manager (VIM): manages virtualized compute, storage, and network resources.
          </t>
          <ul spacing="normal">
            <li>
              <t>In SRv6 SFC, a VIM MAY manage virtualized environments hosted on generic servers or within routers.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Network Metrics Manager: collects metrics for SR Policy calculation and evaluation.
          </t>
          <ul spacing="normal">
            <li>
              <t>Metrics are collected from multiple data sources, including IPFIX, TCP statistics, and SRv6 path tracing <xref target="I-D.draft-filsfils-ippm-path-tracing"/>.</t>
            </li>
            <li>
              <t>Metrics can be used as input for PCE path computation.</t>
            </li>
          </ul>
        </li>
      </ul>
      <section anchor="service-function-manager">
        <name>Service Function Manager</name>
        <t>The Service Function Manager configures service function nodes to enable or disable their service segments using the following parameters:</t>
        <ul spacing="normal">
          <li>
            <t>Behavior: End.AN</t>
          </li>
          <li>
            <t>SID: The End.AN SID in IPv6 address format.</t>
          </li>
          <li>
            <t>Function Name: The type of network function.</t>
          </li>
          <li>
            <t>Action: Enable or disable.</t>
          </li>
          <li>
            <t>Management Parameters (OPTIONAL):
            </t>
            <ul spacing="normal">
              <li>
                <t>Function-specific parameters: Parameters and context associated with a particular network function.</t>
              </li>
              <li>
                <t>Anycast Group: Identifies the group of service function nodes sharing an Anycast SID. This parameter MUST be configured when multiple nodes provide the same service function using an Anycast SID.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="security-considerations">
        <name>Security Considerations</name>
        <t>This document describes an SRv6 SFC architecture using SR-aware functions.
The security considerations for SRv6 and its associated control-plane protocols also apply to this architecture.</t>
        <t>Service Function Nodes MUST validate and filter incoming SRv6 packets to prevent unauthorized access to service functions.</t>
        <t>Service function information advertised through BGP-LS SHOULD be protected against unauthorized modification or injection, as incorrect information may cause the PCE to compute inappropriate SR Policies.</t>
        <t>PCEP sessions between the PCE and PCCs SHOULD be protected against unauthorized access and modification.</t>
        <t>Flow classification rules distributed by the Classification Rule Controller SHOULD be protected against unauthorized modification or injection to prevent unintended traffic steering.</t>
        <t>Management interfaces used to configure service function instances SHOULD be protected against unauthorized access and modification.</t>
        <t>For service functions using Anycast SIDs, operators SHOULD consider the security implications of forwarding traffic to different service function instances and synchronizing service state across instances.
State synchronization mechanisms SHOULD be protected against unauthorized access and modification.</t>
        <t>The security mechanisms for the underlying protocols and management interfaces are outside the scope of this document.
Implementations and deployments SHOULD follow the relevant security recommendations in the corresponding specifications.</t>
      </section>
      <section anchor="iana-considerations">
        <name>IANA Considerations</name>
        <t>This document has no IANA actions.</t>
      </section>
    </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="RFC4655">
          <front>
            <title>A Path Computation Element (PCE)-Based Architecture</title>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="J.-P. Vasseur" initials="J.-P." surname="Vasseur"/>
            <author fullname="J. Ash" initials="J." surname="Ash"/>
            <date month="August" year="2006"/>
            <abstract>
              <t>Constraint-based path computation is a fundamental building block for traffic engineering systems such as Multiprotocol Label Switching (MPLS) and Generalized Multiprotocol Label Switching (GMPLS) networks. Path computation in large, multi-domain, multi-region, or multi-layer networks is complex and may require special computational components and cooperation between the different network domains.</t>
              <t>This document specifies the architecture for a Path Computation Element (PCE)-based model to address this problem space. This document does not attempt to provide a detailed description of all the architectural components, but rather it describes a set of building blocks for the PCE architecture from which solutions may be constructed. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4655"/>
          <seriesInfo name="DOI" value="10.17487/RFC4655"/>
        </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="RFC7426">
          <front>
            <title>Software-Defined Networking (SDN): Layers and Architecture Terminology</title>
            <author fullname="E. Haleplidis" initials="E." role="editor" surname="Haleplidis"/>
            <author fullname="K. Pentikousis" initials="K." role="editor" surname="Pentikousis"/>
            <author fullname="S. Denazis" initials="S." surname="Denazis"/>
            <author fullname="J. Hadi Salim" initials="J." surname="Hadi Salim"/>
            <author fullname="D. Meyer" initials="D." surname="Meyer"/>
            <author fullname="O. Koufopavlou" initials="O." surname="Koufopavlou"/>
            <date month="January" year="2015"/>
            <abstract>
              <t>Software-Defined Networking (SDN) refers to a new approach for network programmability, that is, the capacity to initialize, control, change, and manage network behavior dynamically via open interfaces. SDN emphasizes the role of software in running networks through the introduction of an abstraction for the data forwarding plane and, by doing so, separates it from the control plane. This separation allows faster innovation cycles at both planes as experience has already shown. However, there is increasing confusion as to what exactly SDN is, what the layer structure is in an SDN architecture, and how layers interface with each other. This document, a product of the IRTF Software-Defined Networking Research Group (SDNRG), addresses these questions and provides a concise reference for the SDN research community based on relevant peer-reviewed literature, the RFC series, and relevant documents by other standards organizations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7426"/>
          <seriesInfo name="DOI" value="10.17487/RFC7426"/>
        </reference>
        <reference anchor="RFC7665">
          <front>
            <title>Service Function Chaining (SFC) Architecture</title>
            <author fullname="J. Halpern" initials="J." role="editor" surname="Halpern"/>
            <author fullname="C. Pignataro" initials="C." role="editor" surname="Pignataro"/>
            <date month="October" year="2015"/>
            <abstract>
              <t>This document describes an architecture for the specification, creation, and ongoing maintenance of Service Function Chains (SFCs) in a network. It includes architectural concepts, principles, and components used in the construction of composite services through deployment of SFCs, with a focus on those to be standardized in the IETF. This document does not propose solutions, protocols, or extensions to existing protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7665"/>
          <seriesInfo name="DOI" value="10.17487/RFC7665"/>
        </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="RFC8231">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE</title>
            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <date month="September" year="2017"/>
            <abstract>
              <t>The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Client (PCC) requests.</t>
              <t>Although PCEP explicitly makes no assumptions regarding the information available to the PCE, it also makes no provisions for PCE control of timing and sequence of path computations within and across PCEP sessions. This document describes a set of extensions to PCEP to enable stateful control of MPLS-TE and GMPLS Label Switched Paths (LSPs) via PCEP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8231"/>
          <seriesInfo name="DOI" value="10.17487/RFC8231"/>
        </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="RFC8754">
          <front>
            <title>IPv6 Segment Routing Header (SRH)</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="D. Dukes" initials="D." role="editor" surname="Dukes"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="J. Leddy" initials="J." surname="Leddy"/>
            <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <date month="March" year="2020"/>
            <abstract>
              <t>Segment Routing can be applied to the IPv6 data plane using a new type of Routing Extension Header called the Segment Routing Header (SRH). This document describes the SRH and how it is used by nodes that are Segment Routing (SR) capable.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8754"/>
          <seriesInfo name="DOI" value="10.17487/RFC8754"/>
        </reference>
        <reference anchor="RFC8955">
          <front>
            <title>Dissemination of Flow Specification Rules</title>
            <author fullname="C. Loibl" initials="C." surname="Loibl"/>
            <author fullname="S. Hares" initials="S." surname="Hares"/>
            <author fullname="R. Raszuk" initials="R." surname="Raszuk"/>
            <author fullname="D. McPherson" initials="D." surname="McPherson"/>
            <author fullname="M. Bacher" initials="M." surname="Bacher"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>This document defines a Border Gateway Protocol Network Layer Reachability Information (BGP NLRI) encoding format that can be used to distribute (intra-domain and inter-domain) traffic Flow Specifications for IPv4 unicast and IPv4 BGP/MPLS VPN services. This allows the routing system to propagate information regarding more specific components of the traffic aggregate defined by an IP destination prefix.</t>
              <t>It also specifies BGP Extended Community encoding formats, which can be used to propagate Traffic Filtering Actions along with the Flow Specification NLRI. Those Traffic Filtering Actions encode actions a routing system can take if the packet matches the Flow Specification.</t>
              <t>This document obsoletes both RFC 5575 and RFC 7674.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8955"/>
          <seriesInfo name="DOI" value="10.17487/RFC8955"/>
        </reference>
        <reference anchor="RFC8956">
          <front>
            <title>Dissemination of Flow Specification Rules for IPv6</title>
            <author fullname="C. Loibl" initials="C." role="editor" surname="Loibl"/>
            <author fullname="R. Raszuk" initials="R." role="editor" surname="Raszuk"/>
            <author fullname="S. Hares" initials="S." role="editor" surname="Hares"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>"Dissemination of Flow Specification Rules" (RFC 8955) provides a Border Gateway Protocol (BGP) extension for the propagation of traffic flow information for the purpose of rate limiting or filtering IPv4 protocol data packets.</t>
              <t>This document extends RFC 8955 with IPv6 functionality. It also updates RFC 8955 by changing the IANA Flow Spec Component Types registry.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8956"/>
          <seriesInfo name="DOI" value="10.17487/RFC8956"/>
        </reference>
        <reference anchor="RFC8986">
          <front>
            <title>Segment Routing over IPv6 (SRv6) Network Programming</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="P. Camarillo" initials="P." role="editor" surname="Camarillo"/>
            <author fullname="J. Leddy" initials="J." surname="Leddy"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
            <author fullname="Z. Li" initials="Z." surname="Li"/>
            <date month="February" year="2021"/>
            <abstract>
              <t>The Segment Routing over IPv6 (SRv6) Network Programming framework enables a network operator or an application to specify a packet processing program by encoding a sequence of instructions in the IPv6 packet header.</t>
              <t>Each instruction is implemented on one or several nodes in the network and identified by an SRv6 Segment Identifier in the packet.</t>
              <t>This document defines the SRv6 Network Programming concept and specifies the base set of SRv6 behaviors that enables the creation of interoperable overlays with underlay optimization.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8986"/>
          <seriesInfo name="DOI" value="10.17487/RFC8986"/>
        </reference>
        <reference anchor="RFC9603">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for IPv6 Segment Routing</title>
            <author fullname="C. Li" initials="C." role="editor" surname="Li"/>
            <author fullname="P. Kaladharan" initials="P." surname="Kaladharan"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="M. Koldychev" initials="M." surname="Koldychev"/>
            <author fullname="Y. Zhu" initials="Y." surname="Zhu"/>
            <date month="July" year="2024"/>
            <abstract>
              <t>Segment Routing (SR) can be used to steer packets through a network using the IPv6 or MPLS data plane, employing the source routing paradigm.</t>
              <t>An SR Path can be derived from a variety of mechanisms, including an IGP Shortest Path Tree (SPT), explicit configuration, or a Path Computation Element (PCE).</t>
              <t>Since SR can be applied to both MPLS and IPv6 data planes, a PCE should be able to compute an SR Path for both MPLS and IPv6 data planes. The Path Computation Element Communication Protocol (PCEP) extension and mechanisms to support SR-MPLS have been defined. This document outlines the necessary extensions to support SR for the IPv6 data plane within PCEP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9603"/>
          <seriesInfo name="DOI" value="10.17487/RFC9603"/>
        </reference>
        <reference anchor="RFC9256">
          <front>
            <title>Segment Routing Policy Architecture</title>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="A. Bogdanov" initials="A." surname="Bogdanov"/>
            <author fullname="P. Mattes" initials="P." surname="Mattes"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>Segment Routing (SR) allows a node to steer a packet flow along any path. Intermediate per-path states are eliminated thanks to source routing. SR Policy is an ordered list of segments (i.e., instructions) that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated called a headend node. The packets steered into an SR Policy carry an ordered list of segments associated with that SR Policy.</t>
              <t>This document updates RFC 8402 as it details the concepts of SR Policy and steering into an SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9256"/>
          <seriesInfo name="DOI" value="10.17487/RFC9256"/>
        </reference>
        <reference anchor="RFC9315">
          <front>
            <title>Intent-Based Networking - Concepts and Definitions</title>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="L. Ciavaglia" initials="L." surname="Ciavaglia"/>
            <author fullname="L. Z. Granville" initials="L. Z." surname="Granville"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="October" year="2022"/>
            <abstract>
              <t>Intent and Intent-Based Networking are taking the industry by storm. At the same time, terms related to Intent-Based Networking are often used loosely and inconsistently, in many cases overlapping and confused with other concepts such as "policy." This document clarifies the concept of "intent" and provides an overview of the functionality that is associated with it. The goal is to contribute towards a common and shared understanding of terms, concepts, and functionality that can be used as the foundation to guide further definition of associated research and engineering problems and their solutions.</t>
              <t>This document is a product of the IRTF Network Management Research Group (NMRG). It reflects the consensus of the research group, having received many detailed and positive reviews by research group participants. It is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9315"/>
          <seriesInfo name="DOI" value="10.17487/RFC9315"/>
        </reference>
        <reference anchor="RFC9552">
          <front>
            <title>Distribution of Link-State and Traffic Engineering Information Using BGP</title>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <date month="December" year="2023"/>
            <abstract>
              <t>In many environments, a component external to a network is called upon to perform computations based on the network topology and the 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 BGP Network Layer Reachability Information (NLRI) encoding format. The mechanism applies to physical and virtual (e.g., tunnel) 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>
              <t>This document obsoletes RFC 7752 by completely replacing that document. It makes some small changes and clarifications to the previous specification. This document also obsoletes RFC 9029 by incorporating the updates that it made to RFC 7752.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9552"/>
          <seriesInfo name="DOI" value="10.17487/RFC9552"/>
        </reference>
        <reference anchor="RFC9862">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing (SR) Policy Candidate Paths</title>
            <author fullname="M. Koldychev" initials="M." surname="Koldychev"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="S. Sidor" initials="S." surname="Sidor"/>
            <author fullname="C. Barth" initials="C." surname="Barth"/>
            <author fullname="S. Peng" initials="S." surname="Peng"/>
            <author fullname="H. Bidgoli" initials="H." surname="Bidgoli"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>A Segment Routing (SR) Policy is an ordered list of instructions called "segments" that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated. An SR Policy is made of one or more Candidate Paths.</t>
              <t>This document specifies the Path Computation Element Communication Protocol (PCEP) extension to signal Candidate Paths of an SR Policy. Additionally, this document updates RFC 8231 to allow delegation and setup of an SR Label Switched Path (LSP) without using the path computation request and reply messages. This document is applicable to both Segment Routing over MPLS (SR-MPLS) and Segment Routing over IPv6 (SRv6).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9862"/>
          <seriesInfo name="DOI" value="10.17487/RFC9862"/>
        </reference>
        <reference anchor="I-D.draft-ietf-idr-ts-flowspec-srv6-policy">
          <front>
            <title>Traffic Steering using BGP FlowSpec with SR Policy</title>
            <author fullname="Jiang Wenying" initials="J." surname="Wenying">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Yisong Liu" initials="Y." surname="Liu">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Shunwan Zhuang" initials="S." surname="Zhuang">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Gyan Mishra" initials="G. S." surname="Mishra">
              <organization>Verizon Communications Inc.</organization>
            </author>
            <author fullname="Shuanglong Chen" initials="S." surname="Chen">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="30" month="October" year="2026"/>
            <abstract>
              <t>   BGP Flow Specification (FlowSpec) provides mechanisms to distribute
   traffic filtering and steering rules across BGP networks.  This
   document specifies BGP FlowSpec procedures to steer matching traffic
   flows into Segment Routing (SR) Policies.  It defines two modes of
   operation: transport steering into an SR Policy ("Mode 1"), in SR-
   MPLS and SRv6 networks, using BGP Extended Communities; and, in SRv6
   networks, transport steering combined with an egress service action
   at the egress node ("Mode 2"), signaled with the BGP Prefix-SID
   Attribute.


              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-ts-flowspec-srv6-policy-20"/>
        </reference>
        <reference anchor="I-D.draft-ietf-spring-srv6-service-programming" target="https://datatracker.ietf.org/doc/html/draft-ietf-spring-srv6-service-programming">
          <front>
            <title>SRv6 Service Programming</title>
            <author initials="A." surname="Abdelsalam, Ed" fullname="Ahmed Abdelsalam">
              <organization/>
            </author>
            <author initials="C." surname="Filsfils" fullname="Clarence Filsfils">
              <organization/>
            </author>
            <author initials="D." surname="Bernier" fullname="Daniel Bernier">
              <organization/>
            </author>
            <author initials="C." surname="Li" fullname="Cheng Li">
              <organization/>
            </author>
            <author initials="B." surname="Decraene" fullname="Bruno Decraene">
              <organization/>
            </author>
            <date year="2026" month="July" day="06"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-srv6-service-programming-00"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC9522">
          <front>
            <title>Overview and Principles of Internet Traffic Engineering</title>
            <author fullname="A. Farrel" initials="A." role="editor" surname="Farrel"/>
            <date month="January" year="2024"/>
            <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.</t>
              <t>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="RFC" value="9522"/>
          <seriesInfo name="DOI" value="10.17487/RFC9522"/>
        </reference>
        <reference anchor="I-D.draft-ietf-idr-bgp-ls-sr-service-segments">
          <front>
            <title>BGP-LS Advertisement of Segment Routing Service Segments</title>
            <author fullname="Gaurav Dawra" initials="G." surname="Dawra">
              <organization>LinkedIn</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Ketan Talaulikar" initials="K." surname="Talaulikar">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Francois Clad" initials="F." surname="Clad">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Daniel Bernier" initials="D." surname="Bernier">
              <organization>Bell Canada</organization>
            </author>
            <author fullname="Jim Uttaro" initials="J." surname="Uttaro">
              <organization>AT&amp;T</organization>
            </author>
            <author fullname="Bruno Decraene" initials="B." surname="Decraene">
              <organization>Orange</organization>
            </author>
            <author fullname="Hani Elmalky" initials="H." surname="Elmalky">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Xiaohu Xu" initials="X." surname="Xu">
              <organization>Capitalonline</organization>
            </author>
            <author fullname="Jim Guichard" initials="J." surname="Guichard">
              <organization>Futurewei Technologies</organization>
            </author>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="5" month="November" year="2022"/>
            <abstract>
              <t>   Service functions are deployed as, physical or virtualized elements
   along with network nodes or on servers in data centers.  Segment
   Routing (SR) brings in the concept of segments which can be
   topological or service instructions.  Service segments are SR
   segments that are associated with service functions.  SR Policies are
   used for the setup of paths for steering of traffic through service
   functions using their service segments.

   BGP Link-State (BGP-LS) enables distribution of topology information
   from the network to a controller or an application in general so it
   can learn the network topology.  This document specifies the
   extensions to BGP-LS for the advertisement of service functions along
   their associated service segments.  The BGP-LS advertisement of
   service function information along with the network nodes that they
   are attached to, or associated with, enables controllers compute and
   setup service paths in the network.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-bgp-ls-sr-service-segments-02"/>
        </reference>
        <reference anchor="I-D.draft-filsfils-ippm-path-tracing">
          <front>
            <title>Path Tracing in SRv6 networks</title>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Ahmed Abdelsalam" initials="A." surname="Abdelsalam">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Pablo Camarillo" initials="P." surname="Camarillo">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Mark Yufit" initials="M." surname="Yufit">
              <organization>Broadcom</organization>
            </author>
            <author fullname="Yuanchao Su" initials="Y." surname="Su">
              <organization>Alibaba, Inc</organization>
            </author>
            <author fullname="Satoru Matsushima" initials="S." surname="Matsushima">
              <organization>SoftBank</organization>
            </author>
            <author fullname="Mike Valentine" initials="M." surname="Valentine">
              <organization>Goldman Sachs</organization>
            </author>
            <author fullname="Amit Dhamija" initials="" surname="Dhamija">
              <organization>Arrcus</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   Path Tracing provides a record of the packet path as a sequence of
   interface ids.  In addition, it provides a record of end-to-end
   delay, per-hop delay, and load on each egress interface along the
   packet delivery path.

   Path Tracing allows to trace 14 hops with only a 40-bytes IPv6 Hop-
   by-Hop extension header.

   Path Tracing supports fine grained timestamp.  It has been designed
   for linerate hardware implementation in the base pipeline.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-filsfils-ippm-path-tracing-06"/>
        </reference>
      </references>
    </references>
    <?line 447?>

<section numbered="false" anchor="appendix-a-implementation-experience">
      <name>Appendix A. Implementation Experience</name>
      <t>Note to the RFC Editor: Please remove this appendix before publication as an RFC.</t>
      <t>This appendix is informative and non-normative.</t>
      <t>Several components of the architecture have been implemented and validated in IETF Hackathons.</t>
      <t>A.1. Flow-based Service Classification</t>
      <t>The following functionality has been implemented in GoBGP:</t>
      <ul spacing="normal">
        <li>
          <t>Advertisement of classification rules using BGP FlowSpec extensions for SRv6 Policy.</t>
        </li>
      </ul>
      <t>A.2. SR Policy Computation and Provisioning</t>
      <t>The following functionality has been implemented in Pola PCE:</t>
      <ul spacing="normal">
        <li>
          <t>Centralized SR Policy computation for SFC using a stateful PCE.</t>
        </li>
        <li>
          <t>Support for explicit and dynamic SRv6 Policies with loose source routing.</t>
        </li>
      </ul>
      <t>A.3. Service Segment Advertisement</t>
      <t>The following functionality has been implemented in GoBGP and ExaBGP:</t>
      <ul spacing="normal">
        <li>
          <t>Advertisement of VNF and End.AN information using BGP-LS Service Segment extensions.</t>
        </li>
      </ul>
      <t>A.4. Service and Infrastructure Management</t>
      <t>The following functionality has been implemented using OpenStack and Ansible:</t>
      <ul spacing="normal">
        <li>
          <t>Deployment of VNFs.</t>
        </li>
        <li>
          <t>Provisioning of SRv6 End.AN behaviors.</t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank Mitsuru Maruyama, Katsuhiro Sebayashi, Yuma Ito, and Taisei Tanabe for their valuable reviews.</t>
      <t>This work was partially supported by NICT commissioned research (No. JPJ012368C03101) and JST CRONOS (No. JPMJCS24N9).</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1d63PbyJH/zr9iyvvhrDJJS/JjY12yFZqybG5siRHl7G1d
3aZAcEgiBgEGA0hmVs7fnn7NYAYAJdnZu0+nrZVIYDCP7p7uXz8GHgwGvTIp
U32iHs0ur1+q2dlYjYp4nZQ6LqtCq5ukXKvZ5SC6ieDbWZXFZZJn5lEvms8L
fe0/t7fpIo+zaANjLIpoWQ5uojJKB2ZbJNlqYIrrlwOzjOEDPzhY2gcHhy97
cVTqVV7sTlSSLfOeqeabxBi4e7XbQoeTN1dnvV6yLU5UWVSmPD48fHV43INu
ohN1mVclDNG7yYtPqyKvtidqNr2cnL/tfdI7uLg46Sk1UDh//nA27pkyyhZ/
jdI8g9532vTMJirKv/69ykttTlSW97bJifrvMo/7yuRFWeilgU+7DX74n17v
WmeVxn7DAZUqab4/wVRgSuot3oWrmyhJTxST4o+JLpfDvFjB9QhYcKLWZbk1
J0+fYiu8klzroW30FC88nRf5jdFPuYOnOCzwoJqfKKLx06+jd68XVeU6L2D6
A+hKAclhyT8N1YfErJNNRNeYkT9Bl0UV3IA5najzqysF3M43uXpdmSTTxqin
6k9RFq1gMDXJDEhbVWqVL9WVjtdZnuarHT1v5WlPF6PJFTXTTLKb4YbH/mNW
lkNoTTfjvMpKFJYfo22UBcv4eQgS+Ymm4a3j56qMwuv/t8vYDZcy+F3r6GV5
sYlKYD9K1uXZ+Pjo6JV8fP7yxQv5+OL580P5+P3z45f248uXtsHvjr5/bj8e
PzuyH58fHtuP379wDV65fuHjS/fxd/bjq5eHz+zHY9fg1bMj+xh0YPuFp+jj
ZHA6ZJlEMR4ki2JQmsEyBSHe6phlc5unSbzraB0IsC6uk1gPtkW+KqLNBm6c
EOVALFe6rLfOAgS1LKL4ky7qrQN8ebouN3Z/PKR37pw1JSs8bqOmjTZuC9HP
QP6KEI6GajRf6NREabTpqzeLobvP8jhab/TCa9PdzRhkOUnNEv5vPD8GPaEz
mFbjfqOD06F6rYss0UXj+dMILqaNm+3R3yfNcdcatJq73Hji9VCd6riIdKYb
z70uqiwPbwLH4Mbx4fHLweH3aALwInAk0QZNgKXsJCthkrocnCIPrWl5CCsH
h4dgMqCrcE+9enG8T0bnq+0gNagxbXdGrzY6K034wFKIPki2281gG5XrAcoe
CWdvMBiAcjB4oez1rtaJQf1QYTdqoU1cJHNtVLnWpPyd/QUNM+PBrD1T+bUu
1GQKQvgYRfHAyaI1ucCOKMmw6WOwaQcNw+z0/ZBnEQwHdLpOFjKRZZ7C1sR+
5sCdZYLr7Q3UON9sCw0cN0A9MGGgFTVO8ETF8LuI0uQfIMRxDp/zVIE99drQ
ei7VFDc5cLSvgIVon1WZb0mJ9pXQuJ5nn/qwDTe6LJIYJg8GO9lssZ9yh5aZ
MAjM/zP1e7NO4rUq9KKKZTVZtZkD4WACWY4rxE6jxaJAzQy/8qqAQWHWptps
cdwh82yTLBap7vW+Q5ErcugPb/Z693Ll119FYX75onQWzVMYc4uaqFSm1Bpl
FOYFQGC1hrmA4VlomK5KE0NUgp0DkIYpoOIoTeFepETwqNWwR5rIVNstIBGj
rqMiyStDUMNgF1ZK+9BZnFYLHHEKQCX5bGUKbo0Wf4uAb/HOv5bt4gimUV9B
Yr1OMurCXh0iEe6WPKIBWiCgQQyLnGtVGVhIkrnZGhgcPxr1WA9Xw746+6kP
dJzBr1P4dT664tFPp5MDWDHweB5hFzBYkwVA+AOF+0q2E43z669fZ0e+fBn2
Jrgll2i0Wdm/yRbbPIGRXut1dJ3kBWK+CuQrMnhvOIKJ0t9Tnit9/tAH9kal
8J5EENbOG2BQZa3NuFcnAN2CPQqaS+0B3d6e4Q3g9nO8Z9PyfKAzu7/sVuAN
IgTC6X0HUKcACjHW6X0XfAcdjvQiil/qFHT4ApUqdxLqaoMr9ZUL3NygGqpl
owwoERnhhtzTMMe7RyA1Nbvso6o5zQFqZX0nLJNTkJPJ6UGflt132gg0T7g3
OrZGa2fAhRhtSP2dRBU2J7AOAOLi6bhWiU/f7eZFsgD9yZpxmkaZ9pfGGgPg
GMogLkDNWCudg8Kinq+KCBhY8oXWk4De7JNdQsuTw16FFK5Fd3ekuqi7s3Gf
hA3AzueddCM7HxAH+GPLBBw13P9OETR7YyVAvcmTjmQgvSOSXrlDVz7KBnHX
mvvM7jG3387DMb9+1w/UOx0tdLboA4tSSy9HpOaKEPXyY3+ugMHljm01L+7x
n/MZiph8fa+vAVaNVoXmTfd49n50EBKSm1zM/6ZZoqDJxUF7UEApPOhZXgCB
WKejIPVDueqrD/UelyujLZpLZlS38KHfwN1PAb2QpQcPiTV7mtDMp+MxzLx1
+00qK5uO38jKQFiXIBhAwRUMwgbvFPA46m/1+OrNaXt56M3w+Kgi9g4C1zZV
5pZS5OCPw8Jx7KlYgLBfdI2439dvp4BTs0+DGfQJ04Dvg/ezLkK/OK6fOANV
pWbgo9SS3t4uOHVauP1OpERFea5v0lpFBmr0m1XhXMMzrOiaRhi38wmaDfFU
unY7maZ1bkrTYT1gHJPHCelYMjAWkxln+kXJiMyluoABLeaDbwSkQA0SMlrC
LWANI66mxriswDjW3WDPd7doDEQLWTiNaxS6kyoOuygqRF9ljtpPkB6BwGEX
+Xjj0DhsJ2UQGHSZrMACG2csLcUIrUWZtZoW7nVStoOYKCOX+u9VUpB8G/U+
ylYVjMzy8UnvFMarjHr04ePs6lGf/6rzC/p8+ebPHyeXb07x8+zd6P1798G2
mL27+Pj+tP5UPzm++PDhzfkpPwxXVePSh9HPj3g3P7qYXk0uzkfvH3WIJSwR
iAvoLkFDDEADJSdqILHX46k6es67AyMYsFt4pxx9D3YLAIvOeKg8g93CX8Ha
71S03eqowC4ABgOO3CZllCIoBVqu85tMrQE5E0I5BSdxldValNkxMhbTGyL1
2xwepzt1Q6a0g1UB4GJICR3b7QDMx9AdgHb3fIdn9GGvZ5Sj3mbJ/O38IXBF
L7a6iEqAp3AXBgKWGBjFLHcqrkyZb0CSbW+FJ26+f4CL9+9ZVC7XFu3p0GyA
T0nBPswBXQD751HH9hJdYyhznqC57CsEcVksgGIOv26SRbk+GKLyN+EUgWiw
26kzkA3WgQQF7XRQ8LIS4ymXGunM3lViGg1sp6bmgrcm610RasYoM/RSs8SQ
xbATyTOHpxg/EsQWS0Xc8OCcj+bVmmGgdZC3ZIlFw2zm5HXU+mxBg3Q41rjU
iWzEDeiytI+OgYUELr6B07SuioORHrCdnCL7GyNucpSES3GUrZM6eTs1rq/J
bDCZ8R6aTc/I3Ui1L8p0b78uRpXB2hVYv+taICh3g4ucNZjjLQ0n7rQy9YMi
4Tk3TFuiIHuf0QLcdNgS3Lopy7JgjNeuFCMD4iSphtNztQS0qEkWPLTktL2V
ExvlwQ7J5FWw9UQsFHgQrGV8WwlzKxHZ44ZoCKzBv/nDCdv3BPseuQYuJ6As
6nln7d3NQi8qB/QwbD7opOQNALonXkdZYjZkWzcaQxsd+mXYawRrOuziIgfi
u+0J+2WBywI2BVEdiufw1v6WgI4CJMZrxb2a6s+I2kH3FRogqVE5qU9oGYGV
QWjUV9sIpCWu0qgQk6Q2VVom8CzRAWGnGziRRzNvjDwjHuJarQbFaXwkCUOE
JqvbgdSCoUtN7ubjb2cMLq3BOVGLiiytNxpeBiqA0CdbmKcNJoCZ883eFTwD
Fg18DCQdhiGcbu6zDmlaPBdlccYuqvtj3Akym6zWpcxT6c8lWj42aqW1ppYa
nrPF+oo3VnNkxsLmAc8T2SvkGyXtkFKoPUK21BJaq0HY2H3Eo/CbtFhfVNjV
ZPD+bMSi7vx80o9oSDnKhvuUnBobwuuzd4yCCXNw1izNY+BNvVVIjUxK2urE
ZdtfVyxIFBBstyIHtxV3MpFCWwQ/t2GooXqX3wBTwVdNSuQaNN9ERUI2UhAL
h4vawV/kYKDTaE8kiGJZY94XMaJY3M5X11ZXBhy9j0VWXQaKr1hGMSN2SyjR
omIQWTkOWEi75zZ08oX0doEwK0eCQvwVING3VsuSQSaVFuESiv8wMmgTLQna
IfypLq5xEfoGJ+Ln0Xu9MzJS6kglaVrhiksO7eXeE62NCJ3+85//xOTGDSWY
ngy6fzpc++6GT3rqVu35+QirDDra83O7fx7+z+1dN5/09vXeHqoRMHvccDwP
1OCa+8S2zaiH4iU3JvykewVPoGWrLV3GPm5Dv/S2piQFKuyU5T9VIxe53LPX
2aO1jfHHD3KEfTivNOijXr3rIwjAhH2IQ+vP40nII6THL02+/XInPdxVn8+3
zWu3DWJ7jX0R8GXytnmtKbBfNfig0cCXhuuOh69huvDzpPXwtRODOwXWm7DP
/pD/qhnblTY0Ef7s87358L0jq6DXgOPdP7Lmrht7dnsr/tipcJ6g+ur9eqK+
c2qOkuh/eOQryq+rPPrS68hb+oDFx+ZsyCgUZSws8XDVlgOjgSvWbzkQNfq1
mpEukwltkuHEoXKX7gMAAb5WtDUIzzgZueHVgfqnjKFgOA4Hhzmtd3wLlN47
CavK9KUf65ztyVMNqbJpao1fB/BmrMERdG49rhdALgEiHeOAD1VrsFMS5wXg
bMC4bAs9F4U75VIOMdKFTdJNX18eNKZVoyd50odfnXhK2p1ho0uNfYNhOLvE
nhv24gTY+Qldah2T6wP9zaG5TcV6woDjOJjAXipip6glMEImDgQYlWI4mYMD
gdvtwQRkDi6hpNThlvJMiLzndT4RRwdUG+2EZ+MojUVg3MR4/h6huSnZbB3c
QOSkAfGzozjfBa7ffu8Rqde0oCcwrW2a7wRQs9PYDoEaWYGkC6mgDmRfVdt2
0wYBJYSF+1Oe77efkWgLaIk6J9mBe05qFlaEZ6YTZiPu/D01CcRUmdTFconS
HmU1DKXHcxdagy82mmbXaTPwASqVFZBktXLSUipFCYIrmlngK6Z5bjDQFefV
NrUxIJf00CL9DwDVSBeQKZoqDbTQZZRgl+wfWJ3YUm6oUWGbmGQhcbYYKOAw
qo38Ugw2KU0w/87hUYg0xXa9TLMX36O4r9DYBfPC5IjRNlYgtHyYNu9iNjKB
KUGwvanEbVom7BkmTBEqQ1JoFa/okXA39a3DZtW+Cxe2AizAN5Bl4ifaBMlw
w1ZeUOJ62LNBPt/e9SkS3ppgS4pil8Jp9/swz+LhPy2c/STAJ08edKOFc26Z
klOm8m0Nqu64IZ3UGOv28ey4Pzv6TzV7f3J0cFuDK//GYXADOhkMfrj1sFQA
COnOA2780F5PE7Q9nh0d7LlxfNCN376RsnfxuJaMPZ6j8NjiueXWIrnm5kGA
Js7uMeVnSJvqzxFG3Aju2bIVjCx12IazpDBl34qrl67zoRVtfTRjnG/z4FVS
OnAFoIm0gdQkcb6gLqBSv58dwU49/mHYO9efZcjOmDAzqdCxpmwGtpN975Ch
rTJrZgabqVRsJPUKgG7U7AgXnMF23t09/vH/0vjHOGxlJCJaWjpRAAWjiNxW
bFqjdoMRnKCKXk+6TYzLPbcAaRiNauWShr0RGF6cCHbP5ujD6GcXBMq3EvWM
ilXFhqN0sR0/KtqM8iy9OLcfA3ttEed1UpSVJCB0Bt/yjPsX5UkQk60/zGml
M11gFBAWoIsuuGITDjI3YBLyasfcxGBq5utiiVMRtMapGkC7FpIuMU6NFWQe
SsaYd8dqvgN+/YRB6sgFup1Ge62BwyAkHzNJwmFRozRuCc1cGld1Y5ZO8AHA
AiG6wXVQFhqg0Na3YuL0CF0ZdgV+wuQUpnqGyDrzgX7XAJKuRh6gpSKogVLr
0jgCQixEsE4GbHposKJSaBCQBcCMuI7dYgA9y2G0Qrnlde87mOgE0wuKW+/J
F6Eoe3SyBCDqgAgsiny7xbg/ggqmG4o0oiF0AMcf0AUEahuAKOoxHmxRRyeY
yi5tkvhjViCY5+7H2MMhVbyy34MLrBsfiBw0KtUszASKbEuL+hptcOcmUuTa
UZE2CthlxdXlQ/YQhzeAU7/RpkNHYZh3TVQklIulnSgPlFgjttaST8lm4aPL
WXKAvTG/RY45ubxUqyoqIkCUOEU6O0Q2IckqqtkqXF6XogSUFY3iIjdmz4pE
eOmpZZW26kcMCzI7TURWEgSrpBo5M9j+aJ7c1HBlGU6M7ZqpPDW5d6Ku+mTI
O9oSKDEWI3I1gJV62757pjIqBcC52rKR+hdf13i7Z65hIGeUam0gXoeR0il/
9aTnGqvuS99ml8WAr7PkHx50XsJgVGWNknK/byL7wA8RyGR8CCAzE+tJBQxc
Ot2scrA62yYXzi4vLWM1mYH7OrAjuTx1XTlAicV6o7SCHdZ/xSMFzEcVcZWg
rIX1FG3poB5VbHFLywqfUA/NdbeM7NOH5BkBJypKacbIkJ3P1sDRlQoMQSKF
JLVlJCf7dcI0yygpaeW/GwuJLiTDPgz3YketjCfBbNAbE2xrQTdfzBtxzpsY
hBx3wTer5B9AMRDC7jp509vj3FHkBmFygrExErCsZMFh3GArlm/WudFcraqw
Oj8WBAzzq4ot3vO8aVSQ2KkgE/FmF2KodcKLwFBMiY9RDMLCbzGsol+wuCf0
3lF3I7lIOdFBBqY8lv1xXQyFQ8u1JNZsXVJZKweu/MC4QUI1A2eAewajdJVz
FFBkleoi0V5gVNIpOlILXvdcimCVTtAtsmOqiwGVdDYqDSnCJIld4g1T23NB
bF097Xiq5qOdfHcxdA0JkE7OiaFgSKS2MBmO0kWg14Ub09eXdfCVRBXW3IGl
rCgMpXwtcJcYngl07oxTeFl+7LsAESySyOOIbJE7yk2YHli9wPFONOIvBmVF
zl6hNnnhBZ1kEl6YFDVKneTdl3PuP4TM4GOiyLPGm05Ia9ZBMxtg8QOBVG/a
+y4MGDuk5FVnGYlktmPBlD+GrVQ2Q+Dk6Eh6+GHBV9Il1lvzsgRB5L0dt7k/
PbonPjO4Kw/6VQnPjszm7wc/0N92ZvOrUphflav8qqRkTzXlyIvj16a54fG6
nKVbaF1CbuvPvWs9/kj141g+fhAGgeoU57emNJuM/aqUZmfArfXz/ynNBrVt
CCx2IbBgB3KCUjfr4zvSkK7q/yb3QrdUWwWSdFIbziCxg/YNsM4ySVO//iQ0
yMsi39Aoaz7SosR82BKifjOpxMnEvCPq9pCK/AfW3+PUPQ0XZBQl3RtksFrV
+mS87zx6AignBB13Jc9GxofSFkTi4+z4Hj87+vKFSqvAv0Zf1KyhR9zl1nOR
eU/HY9OM6niJB8oYDOyptSBRmqG/gIDNDe/qe68EPwVmvJRkkV18y7yEBeU8
vTkAVLSOVH/JebpdFm2A9oSZxKP1r/lj1EiOSrnwy9giKlzOGuYF9GHGUPBW
PR7PpmcHAAlXOWCKNUmWcOR+FNjC0VbCQxxnyTOvknSBddUPOG/kChMtj/xS
XyksA0akabjnrpOIuc6Ju5eHz+zZBXyzgUviSTfNIGldF9k6lXb36fLGoVmq
+5S4V6u0N4BUVyG/KKzjJabLfKUJ7JNwNE8cBCEW7dFS0rR9n5ktzWRBYGfg
IIxV3qNVcCff3QJxJZ2lQjknGEqJOeu02RS4r2eEUwChMWyFkcJ9xel+Qbzt
qYGv6wjnnjNiNefvOpp4x2swULRovjyth6pO8MCy0o81JIU4if6JxiFRmC5f
R2mlrYtVaBI36nWRYD7cPz5m2KWs434W2/hKvtD0VKzroJ/nqnSaR3J10bEx
FOxG+GwDBJbKdv0coS5vtBfq6uZjtggV/lXTJd1vHdCz0ViIzQrvHkH07F/b
S2tSqMOwXXGgZBsVotalCrp7dTTrhpaWA1j2TEWSccIdWIfxCz8DHNCdd+I7
6DENHMo6T0BxFuGZbyJdJQixmGBzw/bsN24ue862lB4uNBq4OsjgRzq6EhIk
hyg0G/D+F4x4UE2Pa3uFXmkZfdJBKXVkI0O2HhyjWEhGm3DBiItnUINQHZrK
kJs4xjxUFyHtxeb4hwsctXhreim6EJ7gamgAyfzB+urRKfYvcdc7IgOOdI5w
VFLAiwf7YrSl17gOmRMkEi/Un57I48C9wIJXUoG2SRsxzY5hr2QY1DNgadgy
xThhF+X0qYQssFE+2h+2Wqqepz0u4hStsRh2n0bO4pxPVBRB+oBD1gs83LlH
P9XHaoyTLzn5dp92iLBaCgPiUbELAp+/jVKTyK/+LOdtAwHF/YGhRlvhQ6+i
yMU8Ozn3JG/Xx8wShnNXdUvsKPFWMexdIIC4Saz03EMBm8CTKPvc5KkupV8R
4ZobfDKm2i5I5LANsOTCGpNawiz171C2ZMkJ/dZqQ7IanqIY1yLOE+wwr+HQ
teVvm9V29CyYEgWcmjV2LHKtKqUHnTjuf+Vx436tud27PvpSYSYFea2zpXXl
GLmvBIbs2eiHZWP6NlYKI5breV7JIQ6usBMd2SKAU64WhaCOoNHtqnDea3Da
ad1ffXSidejbdFe/dNQ23RlJa36zsQ6/SEn9xSs5sKGQv5yfSYCjPqvmxUr8
+qRJtiwifkcQLJduu0J//kbcC2ItYQP/YECzSqnRuF7/bbjAXxorDm//Uq/f
EqQRhOqq0W9/884KNCJGrcMB4bfwmEnrcMisFsaJO3X07WP9W2v0hew6fKDx
tfFdOtgfy+t8QUS72UOianf+3FNk9pASszq6tnHRtSbXvAKz51JgJtVlpJw2
dieTJyI+Dee4a5Xc1DTdL9Ko3wRhsFjWcCaq7KhaC4I9jOqaHrpV5uKjD4L9
3yrXsZvvMWiEDwcnft8qTZY63sVcTbenuHpSioUoEz7AW9uSPpUX4d+1pvco
sKkVI8AeNZnCjq7DWYcqyJvzxJ+yX1oljhfm+fMC7obvMnD2SNZQ59uhnYJe
iZ3c7/6KLXyrCSe1GmVaCPrCci5ckCX9B6lCd0yPm/XpXLvmjvtLgb51yDQ6
0e6Y98D1Rzk/7sq6Kc53xtdTKmeD6wMDk+nZ5L/66mrMzhECu9hWwCNFuBCA
3y0YBBT2v4IQQwn+tPzIEhZxZ8AXWiEC26ZzuSeLLaQSwLznro9i9tQIYXwl
sz4dAEH7wrT2LvLLyuoAOrrNG4wFcfDcFhueSPEibu3J6QkdTfVKHxM5fWPP
jHOEjN6t5BQlvaUSn8OX6nVtNzqEQJ9wtMYamscp3DTVY/s2lQN+CbEdceCS
1t6a/AflQFMJHk+rtDPyjqt3TJSOikitw1t+PfHEBopYsdBLi7uqV4RPWKQl
8NwrKRnyMVs3YVf45r2aITw671eGeSGi1qiV6RhNRDGuCiwTGUvBAR98v/Ml
et0vd+Exut+OiVOSceJgnPodfBQzLoM3JkmMY8AQ1juXUdeTkF/VPuvbaail
kBC0S7Kg+AWWQiVpSXVcsEfdASOvJGVb6Gtcf5Xx+2hJSUYxem9UPNERj501
ie+/Z8N7bYaN3NhgN1docqVryTouWqHH2Rh9A3638w8phPg39xoVQyspqEjT
HxbhfxzhWxOtx+2FnsFIBQfkPY+4F6ZonFvtue2UsXnw5IV0fACqXodEg7r9
dD8iJBVf93jJ/z4tQ97XxVaNlxbAvD215J23t3kGt3Pbe7J+09VvQb28XTZl
Os4A9r3zVzKs3ZBSNC/blF8yIpsUFJlXruFV/9b+5B3Lo/IbV4fIB5D8+sd2
7eWsq3bRr437DSgWKKVGNSVSgmKu6Y6sYvgmjE6GP7SUchLU5NuzfrZu1K2M
TbJEl1JARFxOx7OlOCs0X0SuorIdvjF+uE7yRJPR+egeRb/GGFvOLaP6DRfg
dMxBK2LIZbTFkGzyGV/CHa5Gvfm8xfdLAxPB8+C3yujFHx4tQWGTs3Gely4U
dgn2480CwydgllN6TwtHoEWh21FsQWw1d+fqIrJCl3Sw4ipo7CforlnDZ4AF
3GvfST2DBqb30rgjXvbonm/NAPhgRE17pyjk+KC1H+QC4b+boN4BZQDnMalG
w6MhBaoaJz1CldV8X6HdNvz+S2RCa2wY7W0OxoKQ2civ28cFdGpOl5StI2de
gNeZXheRHw2Phx4wHzfS4+EhlW9ZAHRMCWB+yZv3qqrOl3+50i+BL0FlAb1x
UHL5FMzqysrXy3Mp/O5qTFj6s2Er4RxQ+d9gGYc1P0d7uYfRKu/9q77pDhLr
ezPiLHnP6yXwy3w7vMpvXApP4wL2GSjn+JO824dSjLSk07r2nddDLuG0VVDB
Z5lwkfW7d0irxJ+y/CbVC/ZOOvUHTpp1O/Ayr1J8x/cnUShRBo4n4McK/zWN
qKh20Sbqqz9FcGUNHi3QZR7tIrNO+urnahOBW5/Ly1Uj4EMCf8Dn0Fb7J5zJ
jfi0EL5ewb1XmnyBm8iwi4DHzWxJCcOT88n4iqol+Z9XwcC7Nhp1i3p8ng/V
j9MfD4+On7383fjw2dHhEb/k70fApePLi/OLmW304cfx7Pj5+auDYe9f69LC
JVxmAAA=

-->

</rfc>
