<?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.6 (Ruby 3.0.2) -->
<?rfc tocompact="yes"?>
<?rfc tocindent="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-li-spring-sr-sfc-control-plane-framework-10" category="info" submissionType="IETF" tocDepth="3" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.20.0 -->
  <front>
    <title abbrev="SR based SFC Control Plane">A Framework for Constructing Service Function Chaining Systems Based on Segment Routing</title>
    <seriesInfo name="Internet-Draft" value="draft-li-spring-sr-sfc-control-plane-framework-10"/>
    <author initials="Y." surname="Yin" fullname="Yuanyang Yin">
      <organization>China Telecom</organization>
      <address>
        <postal>
          <city>Guangzhou</city>
          <country>China</country>
        </postal>
        <email>yinyuany@chinatelecom.cn</email>
      </address>
    </author>
    <author initials="C." surname="Li" fullname="Cheng Li">
      <organization>Huawei Technologies</organization>
      <address>
        <email>c.l@huawei.com</email>
      </address>
    </author>
    <author initials="A." surname="Sawaf" fullname="Ahmed El Sawaf">
      <organization>Saudi Telecom Company</organization>
      <address>
        <postal>
          <city>Riyadh</city>
          <country>Saudi Arabia</country>
        </postal>
        <email>aelsawaf.c@stc.com.sa</email>
      </address>
    </author>
    <author initials="H." surname="Huang" fullname="Hongyi Huang">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <street>Huawei Campus, No. 156 Beiqing Rd.</street>
          <city>Beijing</city>
          <code>100095</code>
          <country>China</country>
        </postal>
        <email>hongyi.huang@huawei.com</email>
      </address>
    </author>
    <author initials="Z." surname="Li" fullname="Zhenbin Li">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <street>Huawei Campus, No. 156 Beiqing Rd.</street>
          <city>Beijing</city>
          <code>100095</code>
          <country>China</country>
        </postal>
        <email>lizhenbin@huawei.com</email>
      </address>
    </author>
    <date year="2024" month="March" day="01"/>
    <workgroup>SPRING Working Group</workgroup>
    <abstract>
      <?line 76?>

<t>Segment Routing (SR) introduces a versatile methodology for defining end-to-end network paths by encoding sequences of topological sub-paths, known as "segments". This architecture can be deployed over both MPLS and IPv6 data planes, offering a flexible routing solution.</t>
      <t>Service Function Chaining (SFC) supports the establishment of composite services through an ordered sequence of Service Functions (SFs) that are applied to packets or frames based on initial classification. SFC's implementation can utilize various underlying technologies, including the Network Service Header (NSH) and SR, to facilitate the creation and management of service chains.</t>
      <t>This document presents a comprehensive control framework for developing SFC architectures using Segment Routing. It explores control plane solutions for the distribution of service function instance routes and service function paths, as well as techniques for directing packets into specific service function chains. The discussion encompasses both theoretical foundations and practical considerations for integrating SR into SFC deployments.</t>
    </abstract>
  </front>
  <middle>
    <?line 86?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Segment Routing (SR), as defined in <xref target="RFC8402"/>, introduces a source routing paradigm that assigns a specific forwarding path for packets at the ingress node via an ordered list of directives, known as segments. SR's implementation varies with the underlying data plane: SR-MPLS <xref target="RFC8660"/> for MPLS and SRv6 <xref target="RFC8754"/> for IPv6.</t>
      <t>Service Function Chaining (SFC), outlined in <xref target="RFC7665"/>, facilitates the assembly of composite services through a sequenced application of Service Functions (SF) on packets or frames, triggered by classification processes.</t>
      <t>Network Service Header (NSH) <xref target="RFC8300"/> provides a basis for SFC, enabling a "stateful SFC" by necessitating nodes along the Service Function Path (SFP) to maintain specific SFC states, such as mappings between the Service Path Identifier (SPI) and Service Index (SI) for subsequent forwarding actions. <xref target="RFC9015"/> introduces the use of BGP as a control plane mechanism for SFC architectures utilizing NSH and MPLS. It proposes a new BGP address family, the SFC AFI/SAFI, comprising two route types: Service Function Instance Route (SFIR) and Service Function Path Route (SFPR), facilitating the construction of NSH or MPLS-based SFCs with SFIR and SFPR data.</t>
      <t>Alternatively, SFC can leverage SR for instantiation, where the SR source node explicitly embeds the forwarding path into packets. In SR-based SFC, an SFC is denoted by a SID list from the source SR node, potentially linked with service details (e.g., Deep Packet Inspection, DPI), obviating the need for maintaining per-SFC state along the SFP, hence termed "stateless SFC."</t>
      <t>To deploy SR-based SFC, this document explores several mechanisms, including the distribution of SFIR and SFPR, as well as packet steering into an SFP. The review aims to establish a comprehensive framework for constructing an SFC system utilizing Segment Routing.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" 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>
        <?line -18?>

</section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>MPLS: Multiprotocol Label Switching.</t>
        <t>SID: Segment Identifier.</t>
        <t>SR: Segment Routing.</t>
        <t>SR-MPLS: Segment Routing with MPLS data plane.</t>
        <t>SRH: Segment Routing Header.</t>
        <t>SFIR: Service Function Instance Route</t>
        <t>SFPR: Service Function Path Route</t>
        <t>Further, this document makes use of the terms defined in <xref target="RFC7665"/> and
<xref target="I-D.ietf-spring-sr-service-programming"/>.</t>
      </section>
    </section>
    <section anchor="overview-of-sr-based-sfc-control-plane">
      <name>Overview of SR Based SFC Control Plane</name>
      <t>As per <xref target="RFC7665"/>, the architecture of SFC consists of
classifiers, Service Function Forwarders (SFFs), Service Functions (SFs)
and SFC Proxies. This is illustrated in Figure 1.</t>
      <artwork><![CDATA[
                                      +-----+         +-----+   +-----+
                                      |     |         | SFC |   |     |
                                      | SF1 |         |Proxy|---| SF2 |
                                      +-----+         +-----+   +-----+
                                         |               |
    +--------------+                     |               |
    |   Service    |       SFC        +------+        +------+
    |Classification|  Encapsulation   | SFF1 |        | SFF2 |
--->|   Function   |+---------------->|      |--------|      |------->
    |              |                  |      |        |      |
    +--------------+                  +------+        +------+

         SFC-enabled Domain


                      Figure 1. SFC Architecture

]]></artwork>
      <t>In order to construct an SFC, SFIR and SFPR should be distributed to
classifiers and SFFs. Also, the rules of steering packets into specific
SFPs should be configured at the classifier.
<xref target="RFC9015"/>.</t>
      <t>In SR, a source node can explicitly indicate the forwarding path for
packets by inserting an ordered list of instructions. These packet
steering policies, known as SR policy, can be installed by a central
controller via BGP <xref target="I-D.ietf-idr-sr-policy-safi"/> or other
mechanisms.</t>
      <t>When SFC is constructed based on SR, SFPR and packet steering rules
can be installed by SR policy at the ingress node, which plays the role
of classifier in the SFC architecture. In other words, SFPR does not
need to be distributed to all the nodes along the SFP. The architecture
of SR based SFC is illustrated in Figure 2.</t>
      <artwork><![CDATA[
        +-----+                       +-----+         +-----+   +-----+
        |     |                       |     |         | SR  |   |     |
        |SR-C |                       | SF1 |         |Proxy|---| SF2 |
        +-----+                       +-----+         +-----+   +-----+
           |                             |               |
           |                             |               |
    +--------------+                  +------+        +------+
    |              |   SFC Encap/SR   | SFF1/|        | SFF2/|
--->|CF/SR ingress |+---------------->|  SR  |--------|  SR  |------->
    |              |                  |      |        |      |
    +--------------+                  +------+        +------+

         SFC-enabled Domain

                    Figure 2. SR based SFC architecture.
]]></artwork>
      <ul spacing="normal">
        <li>
          <t>CF/SR ingress: an SR ingress node plays the role of Classifier in
the SFC architecture, and it connects to an SR controller, where the
SR policies originate.</t>
        </li>
        <li>
          <t>SR-C: SR Controller (SR-C) is connected to the SR ingress node,
and may be attached to any node in the network. SR-C is capable of
discovering topology, and calculating constrained paths for
SFCs.</t>
        </li>
        <li>
          <t>SFF/SR nodes: the SFF component in SFC architecture, which
enables SR to steer packets to SFs.</t>
        </li>
        <li>
          <t>SFn: Service Functions, can be SR-aware or SR-unaware. If an SF
is SR-unaware then SR proxy is needed.</t>
        </li>
        <li>
          <t>SR proxy: A proxy between SFF/SR nodes and SR-unaware SF.</t>
        </li>
      </ul>
      <t>There are two solutions to encode SFC in the SR data plane.
<xref target="I-D.ietf-spring-sr-service-programming"/> defines data plane
functionality required to implement service segments and achieve service
programming in SR-enabled MPLS and IP networks. It can be termed
"Stateless SFC" since no per-SFC state is maintained on the SR nodes
along the SFP.</t>
      <t>The second solution can be termed "Stateful SFC"
<xref target="RFC9491"/>, since it still maintains per-SFC
state on nodes. <xref target="RFC9491"/>describes two
modes of operation:</t>
      <ul spacing="normal">
        <li>
          <t>NSH-based SFC with SR-based transport tunnel: SR is used as the
transport tunnel to route packets between classifier and SFF or
SFFs. Service plane routing relies on NSH.</t>
        </li>
        <li>
          <t>SR-based SFC with Integrated NSH Service Plane: The SFP is
encoded within the SR segment-list, while the NSH only maintains the
service plane context information, which will be used at NSH-aware
SFs, and at SFFs as a pointer to cache SR segment-lists.</t>
        </li>
      </ul>
      <t>In order to support these data plane encodings, control plane
mechanisms are required. The existing control plane mechanisms are shown
in <xref target="table1"/>.</t>
      <table anchor="table1">
        <name>SR based SFC Control Plane Solutions</name>
        <thead>
          <tr>
            <th align="left">SR based SFC</th>
            <th align="left">SFIR</th>
            <th align="left">SFPR</th>
            <th align="left">Steering policy</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Stateless</td>
            <td align="left">BGP<br/>BGP-LS<br/>IGP</td>
            <td align="left">BGP<br/>PCEP</td>
            <td align="left">BGP<br/>PCEP</td>
          </tr>
          <tr>
            <td align="left">NSH-based SFC with SR-based transport tunnel</td>
            <td align="left">BGP</td>
            <td align="left">BGP<br/>PCEP</td>
            <td align="left">BGP</td>
          </tr>
          <tr>
            <td align="left">SR-based SFC with Integrated NSH Service Plane</td>
            <td align="left">BGP<br/>BGP-LS<br/>IGP</td>
            <td align="left">BGP<br/>PCEP</td>
            <td align="left">BGP<br/>PCEP</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="stateless-sr-based-sfc">
      <name>Stateless SR Based SFC</name>
      <t>As describe in <xref target="I-D.ietf-spring-sr-service-programming"/>, service
instances are associated with a segment, called a service SID.
These service SIDs are leveraged as part of a SID-list to steer
packets through the corresponding services</t>
      <section anchor="service-function-instance-route-distribution">
        <name>Service Function Instance Route Distribution</name>
        <t>To associate a segment with a service, service information, such as
Service Function Type (SFT), should be included in segment
distribution. <xref target="I-D.dawra-idr-bgp-ls-sr-service-segments"/> specifies the
extensions to BGP-LS for discovery and advertisement of service
segments to enable setup of service programming paths using Segment
Routing. <xref target="I-D.dawra-idr-bgp-ls-sr-service-segments"/> extends SRv6 Node
SID TLV <xref target="RFC9514"/> and SR-MPLS SID/ Label TLV
<xref target="RFC9085"/> to associate the
Service SID Value with Service-related Information using Service
Chaining Sub-TLV. The Service Chaining Sub-TLV contains information of
Service SID value, Function Identifier (Static Proxy, Dynamic Proxy,
Shared Memory Proxy, Masquerading Proxy, SR Aware Service Etc.),
Service Type (DPI, Firewall, Classifier, LB etc.), Traffic Type (IPv4
OR IPv6 OR Ethernet) and Opaque Data (such as brand and version, other
extra information). This extension works for both SR- MPLS and
SRv6.</t>
        <t><xref target="RFC9015"/> proposes a
BGP-based SFC control plane solution, and it works for SR-MPLS as
well. Service function instance route distribution can use SFIR in SFC
AFI/SAFI. SFPR and steering rules for the classifier can be
distributed by SR policy, which is defined in
<xref target="I-D.ietf-idr-sr-policy-safi"/>. BGP control plane
of SRv6-based SFC still needs to be defined.</t>
        <t>IGP extensions are proposed by <xref target="I-D.xu-lsr-isis-service-function-adv"/> and
<xref target="I-D.xu-lsr-ospf-service-function-adv"/>. In IS-IS solution, SFFs
within the SFC domain need to advertise each SF they are offering by
using a new sub-TLV of the IS-IS Router CAPABILITY TLV <xref target="RFC7981"/>.
This new sub-TLV is called Service Function
sub-TLV, and it can appear multiple times within a given IS-IS Router
CAPABILITY TLV or when more than one SF needs to be advertised. OSPF
extensions are similar, and use the OSPF Router Information (RI)
Opaque LSA <xref target="RFC7770"/> to carry Service Function
sub-TLV.</t>
        <t>However, due to IGP flooding issues, IGP extensions are not very
appropriate, and the drafts have expired for a long time.</t>
      </section>
      <section anchor="service-function-path-route-distribution">
        <name>Service Function Path Route Distribution</name>
        <t>With SR, the SFPR does not need to be distributed to nodes along
the SFP but only to the ingress node. SFPR and steering rules for the
classifier can be distributed by SR policy. The BGP extension is
defined in <xref target="I-D.ietf-idr-sr-policy-safi"/>.
The PCEP extension is defined in
<xref target="I-D.ietf-pce-segment-routing-policy-cp"/>.</t>
      </section>
      <section anchor="steer-packets-into-sfc">
        <name>Steer Packets into SFC</name>
        <t>In SR, packet steering rules are learned through SR policy. Thus,
there is no need to install other rules in the classifier, which is
the SR source node.</t>
      </section>
    </section>
    <section anchor="stateful-sr-based-sfc">
      <name>Stateful SR Based SFC</name>
      <t>"Stateful SFC" <xref target="RFC9491"/> proposes two
modes of SR based SFC:</t>
      <ul spacing="normal">
        <li>
          <t>NSH-based SFC with SR-based transport tunnel</t>
        </li>
        <li>
          <t>SR-based SFC with Integrated NSH Service Plane</t>
        </li>
      </ul>
      <section anchor="service-function-route-distribution">
        <name>Service Function Route Distribution</name>
        <t>For NSH-based SFC with SR-based transport tunnel, service
information is maintained by NSH while SR is only used for transport
between SFFs, so <xref target="RFC9015"/> can be used for
this mode.</t>
        <t>To indicate NSH, an SFF label <xref target="RFC8596"/> should
be inserted as the last label in the label stack in SR-MPLS.
The control plane of SFF is
also described in <xref target="RFC9015"/>. For
choosing/configuring SR as the transport tunnel, BGP route of SFF's
BGP Tunnel Encapsulation Attribute Type should be "SR TE Policy Type"
<xref target="I-D.ietf-idr-sr-policy-safi"/>. For SR-based
SFC with Integrated NSH Service Plane, there is no control plane
solution as yet defined.</t>
      </section>
      <section anchor="service-function-path-route-distribution-1">
        <name>Service Function Path Route Distribution</name>
        <t>Same as SFIR distribution, SFPR BGP distribution in NSH-based SFC
with SR-based transport tunnel is identical to the mechanism defined
in <xref target="RFC9015"/>. PCEP
extension for SFPR distribution can reuse the NSH based SFC extension
defined in <xref target="I-D.wu-pce-traffic-steering-sfc"/>. For
SR-based SFC with Integrated NSH Service Plane, control plane solution
is to be added in other documents.</t>
      </section>
      <section anchor="steer-packets-into-sfc-1">
        <name>Steer Packets into SFC</name>
        <t>For NSH-based SFC with SR-based transport tunnel, it is the same
with the NSH based SFC. The Classifier is responsible for determining
to which packet flow a packet belongs (usually by inspecting the
packet header), imposing an NSH, and initializing the NSH with the SPI
of the selected SFP and the SI of its first hop
<xref target="RFC9015"/>. For SR-based SFC with
Integrated NSH Service Plane, control plane solution is to be added in
other document.</t>
      </section>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <t>This document does not require any IANA actions.</t>
    </section>
    <section anchor="Security">
      <name>Security Considerations</name>
      <t>This document does not introduce additional security requirements and
mechanisms.</t>
    </section>
    <section numbered="false" anchor="Acknowledgements">
      <name>Acknowledgements</name>
      <t>Many thanks for Ruizhao Hu's valuable comments and help.</t>
    </section>
  </middle>
  <back>
    <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <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="RFC8660">
          <front>
            <title>Segment Routing with the MPLS Data Plane</title>
            <author fullname="A. Bashandy" initials="A." role="editor" surname="Bashandy"/>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <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="December" year="2019"/>
            <abstract>
              <t>Segment Routing (SR) leverages the source-routing paradigm. A node steers a packet through a controlled set of instructions, called segments, by prepending the packet with an SR header. In the MPLS data plane, the SR header is instantiated through a label stack. This document specifies the forwarding behavior to allow instantiating SR over the MPLS data plane (SR-MPLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8660"/>
          <seriesInfo name="DOI" value="10.17487/RFC8660"/>
        </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="RFC8300">
          <front>
            <title>Network Service Header (NSH)</title>
            <author fullname="P. Quinn" initials="P." role="editor" surname="Quinn"/>
            <author fullname="U. Elzur" initials="U." role="editor" surname="Elzur"/>
            <author fullname="C. Pignataro" initials="C." role="editor" surname="Pignataro"/>
            <date month="January" year="2018"/>
            <abstract>
              <t>This document describes a Network Service Header (NSH) imposed on packets or frames to realize Service Function Paths (SFPs). The NSH also provides a mechanism for metadata exchange along the instantiated service paths. The NSH is the Service Function Chaining (SFC) encapsulation required to support the SFC architecture (defined in RFC 7665).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8300"/>
          <seriesInfo name="DOI" value="10.17487/RFC8300"/>
        </reference>
        <reference anchor="I-D.ietf-spring-sr-service-programming">
          <front>
            <title>Service Programming with Segment Routing</title>
            <author fullname="Francois Clad" initials="F." surname="Clad">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Xiaohu Xu" initials="X." surname="Xu">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Daniel Bernier" initials="D." surname="Bernier">
              <organization>Bell Canada</organization>
            </author>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei</organization>
            </author>
            <author fullname="Bruno Decraene" initials="B." surname="Decraene">
              <organization>Orange</organization>
            </author>
            <author fullname="Shaowen Ma" initials="S." surname="Ma">
              <organization>Mellanox</organization>
            </author>
            <author fullname="Chaitanya Yadlapalli" initials="C." surname="Yadlapalli">
              <organization>AT&amp;T</organization>
            </author>
            <author fullname="Wim Henderickx" initials="W." surname="Henderickx">
              <organization>Nokia</organization>
            </author>
            <author fullname="Stefano Salsano" initials="S." surname="Salsano">
              <organization>Universita di Roma "Tor Vergata"</organization>
            </author>
            <date day="20" month="February" year="2024"/>
            <abstract>
              <t>   This document defines data plane functionality required to implement
   service segments and achieve service programming in SR-enabled MPLS
   and IPv6 networks, as described in the Segment Routing architecture.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-sr-service-programming-09"/>
        </reference>
        <reference anchor="I-D.ietf-idr-sr-policy-safi">
          <front>
            <title>Advertising Segment Routing Policies in BGP</title>
            <author fullname="Stefano Previdi" initials="S." surname="Previdi">
              <organization>Huawei Technologies</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="Paul Mattes" initials="P." surname="Mattes">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Dhanendra Jain" initials="D." surname="Jain">
              <organization>Google</organization>
            </author>
            <date day="4" month="February" year="2024"/>
            <abstract>
              <t>   A Segment Routing (SR) Policy is an ordered list of segments (i.e.,
   instructions) that represent a source-routed policy.  An SR Policy
   consists of one or more candidate paths, each consisting of one or
   more segment lists.  A headend may be provisioned with candidate
   paths for an SR Policy via several different mechanisms, e.g., CLI,
   NETCONF, PCEP, or BGP.

   This document specifies how BGP may be used to distribute SR Policy
   candidate paths.  It introduces a BGP SAFI to advertise a candidate
   path of a Segment Routing (SR) Policy and defines sub-TLVs for the
   Tunnel Encapsulation Attribute for signaling information about these
   candidate paths.

   This documents updates RFC9012 with extensions to the Color Extended
   Community to support additional steering modes over SR Policy.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-sr-policy-safi-00"/>
        </reference>
        <reference anchor="RFC9015">
          <front>
            <title>BGP Control Plane for the Network Service Header in Service Function Chaining</title>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="J. Drake" initials="J." surname="Drake"/>
            <author fullname="E. Rosen" initials="E." surname="Rosen"/>
            <author fullname="J. Uttaro" initials="J." surname="Uttaro"/>
            <author fullname="L. Jalil" initials="L." surname="Jalil"/>
            <date month="June" year="2021"/>
            <abstract>
              <t>This document describes the use of BGP as a control plane for networks that support service function chaining. The document introduces a new BGP address family called the "Service Function Chain (SFC) Address Family Identifier / Subsequent Address Family Identifier" (SFC AFI/SAFI) with two Route Types. One Route Type is originated by a node to advertise that it hosts a particular instance of a specified service function. This Route Type also provides "instructions" on how to send a packet to the hosting node in a way that indicates that the service function has to be applied to the packet. The other Route Type is used by a controller to advertise the paths of "chains" of service functions and give a unique designator to each such path so that they can be used in conjunction with the Network Service Header (NSH) defined in RFC 8300.</t>
              <t>This document adopts the service function chaining architecture described in RFC 7665.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9015"/>
          <seriesInfo name="DOI" value="10.17487/RFC9015"/>
        </reference>
        <reference anchor="RFC9491">
          <front>
            <title>Integration of the Network Service Header (NSH) and Segment Routing for Service Function Chaining (SFC)</title>
            <author fullname="J. Guichard" initials="J." role="editor" surname="Guichard"/>
            <author fullname="J. Tantsura" initials="J." role="editor" surname="Tantsura"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>This document describes the integration of the Network Service Header (NSH) and Segment Routing (SR), as well as encapsulation details, to efficiently support Service Function Chaining (SFC) while maintaining separation of the service and transport planes as originally intended by the SFC architecture.</t>
              <t>Combining these technologies allows SR to be used for steering packets between Service Function Forwarders (SFFs) along a given Service Function Path (SFP), whereas the NSH is responsible for maintaining the integrity of the service plane, the SFC instance context, and any associated metadata.</t>
              <t>This integration demonstrates that the NSH and SR can work cooperatively and provide a network operator with the flexibility to use whichever transport technology makes sense in specific areas of their network infrastructure while still maintaining an end-to-end service plane using the NSH.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9491"/>
          <seriesInfo name="DOI" value="10.17487/RFC9491"/>
        </reference>
        <reference anchor="I-D.dawra-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="17" month="August" year="2021"/>
            <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-dawra-idr-bgp-ls-sr-service-segments-06"/>
        </reference>
        <reference anchor="RFC9514">
          <front>
            <title>Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing over IPv6 (SRv6)</title>
            <author fullname="G. Dawra" initials="G." surname="Dawra"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="M. Chen" initials="M." surname="Chen"/>
            <author fullname="D. Bernier" initials="D." surname="Bernier"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <date month="December" year="2023"/>
            <abstract>
              <t>Segment Routing over IPv6 (SRv6) allows for a flexible definition of end-to-end paths within various topologies by encoding paths as sequences of topological or functional sub-paths called "segments". These segments are advertised by various protocols such as BGP, IS-IS, and OSPFv3.</t>
              <t>This document defines extensions to BGP - Link State (BGP-LS) to advertise SRv6 segments along with their behaviors and other attributes via BGP. The BGP-LS address-family solution for SRv6 described in this document is similar to BGP-LS for SR for the MPLS data plane, which is defined in RFC 9085.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9514"/>
          <seriesInfo name="DOI" value="10.17487/RFC9514"/>
        </reference>
        <reference anchor="RFC9085">
          <front>
            <title>Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing</title>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="H. Gredler" initials="H." surname="Gredler"/>
            <author fullname="M. Chen" initials="M." surname="Chen"/>
            <date month="August" year="2021"/>
            <abstract>
              <t>Segment Routing (SR) allows for a flexible definition of end-to-end paths by encoding paths as sequences of topological subpaths, called "segments". These segments are advertised by routing protocols, e.g., by the link-state routing protocols (IS-IS, OSPFv2, and OSPFv3) within IGP topologies.</t>
              <t>This document defines extensions to the Border Gateway Protocol - Link State (BGP-LS) address family in order to carry SR information via BGP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9085"/>
          <seriesInfo name="DOI" value="10.17487/RFC9085"/>
        </reference>
        <reference anchor="I-D.xu-lsr-isis-service-function-adv">
          <front>
            <title>Advertising Service Functions Using IS-IS</title>
            <author fullname="Xiaohu Xu" initials="X." surname="Xu">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Hongyi Huang" initials="H." surname="Huang">
              <organization>Huawei</organization>
            </author>
            <author fullname="Himanshu C. Shah" initials="H. C." surname="Shah">
              <organization>Ciena</organization>
            </author>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica I+D</organization>
            </author>
            <date day="9" month="March" year="2023"/>
            <abstract>
              <t>   The MPLS source routing mechanism developed by Source Packet Routing
   in Networking (SPRING) WG can be leveraged to realize a unified
   source routing instruction which works across both IPv4 and IPv6
   underlays in addition to the MPLS underlay.  The unified source
   routing instruction can be used to realize a transport-independent
   service function chaining by encoding the service function path
   information or service function chain information as an MPLS label
   stack.  This document describes how to advertise service functions
   and their corresponding attributes (e.g., service function label)
   using IS-IS.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-xu-lsr-isis-service-function-adv-00"/>
        </reference>
        <reference anchor="I-D.xu-lsr-ospf-service-function-adv">
          <front>
            <title>Advertising Service Functions Using OSPF</title>
            <author fullname="Xiaohu Xu" initials="X." surname="Xu">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Hongyi Huang" initials="H." surname="Huang">
              <organization>Huawei</organization>
            </author>
            <author fullname="Himanshu C. Shah" initials="H. C." surname="Shah">
              <organization>Ciena</organization>
            </author>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica I+D</organization>
            </author>
            <date day="9" month="March" year="2023"/>
            <abstract>
              <t>   The Segment Routing mechanism can be leveraged to realize the service
   path layer functionality of the Service Function Chaining (i.e,
   steering traffic through the service function path).  This document
   describes how to advertise service functions and their corresponding
   attributes (e.g., segment ID) using OSPF.  Here the OSPF means both
   OSPFv2 and OSPFv3.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-xu-lsr-ospf-service-function-adv-00"/>
        </reference>
        <reference anchor="RFC7770">
          <front>
            <title>Extensions to OSPF for Advertising Optional Router Capabilities</title>
            <author fullname="A. Lindem" initials="A." role="editor" surname="Lindem"/>
            <author fullname="N. Shen" initials="N." surname="Shen"/>
            <author fullname="JP. Vasseur" initials="JP." surname="Vasseur"/>
            <author fullname="R. Aggarwal" initials="R." surname="Aggarwal"/>
            <author fullname="S. Shaffer" initials="S." surname="Shaffer"/>
            <date month="February" year="2016"/>
            <abstract>
              <t>It is useful for routers in an OSPFv2 or OSPFv3 routing domain to know the capabilities of their neighbors and other routers in the routing domain. This document proposes extensions to OSPFv2 and OSPFv3 for advertising optional router capabilities. The Router Information (RI) Link State Advertisement (LSA) is defined for this purpose. In OSPFv2, the RI LSA will be implemented with an Opaque LSA type ID. In OSPFv3, the RI LSA will be implemented with a unique LSA type function code. In both protocols, the RI LSA can be advertised at any of the defined flooding scopes (link, area, or autonomous system (AS)). This document obsoletes RFC 4970 by providing a revised specification that includes support for advertisement of multiple instances of the RI LSA and a TLV for functional capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7770"/>
          <seriesInfo name="DOI" value="10.17487/RFC7770"/>
        </reference>
        <reference anchor="RFC7981">
          <front>
            <title>IS-IS Extensions for Advertising Router Information</title>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="M. Chen" initials="M." surname="Chen"/>
            <date month="October" year="2016"/>
            <abstract>
              <t>This document defines a new optional Intermediate System to Intermediate System (IS-IS) TLV named CAPABILITY, formed of multiple sub-TLVs, which allows a router to announce its capabilities within an IS-IS level or the entire routing domain. This document obsoletes RFC 4971.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7981"/>
          <seriesInfo name="DOI" value="10.17487/RFC7981"/>
        </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="I-D.ietf-pce-segment-routing-policy-cp">
          <front>
            <title>PCEP Extensions for SR Policy Candidate Paths</title>
            <author fullname="Mike Koldychev" initials="M." surname="Koldychev">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Siva Sivabalan" initials="S." surname="Sivabalan">
              <organization>Ciena Corporation</organization>
            </author>
            <author fullname="Colby Barth" initials="C." surname="Barth">
              <organization>Juniper Networks, Inc.</organization>
            </author>
            <author fullname="Shuping Peng" initials="S." surname="Peng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Hooman Bidgoli" initials="H." surname="Bidgoli">
              <organization>Nokia</organization>
            </author>
            <date day="9" month="February" year="2024"/>
            <abstract>
              <t>   A Segment Routing (SR) Policy is a non-empty set of SR Candidate
   Paths, which share the same &lt;headend, color, endpoint&gt; tuple.  SR
   Policy is modeled in PCEP as an Association of one or more SR
   Candidate Paths.  PCEP extensions are defined to signal additional
   attributes of an SR Policy.  The mechanism is applicable to all SR
   forwarding planes (MPLS, SRv6, etc.).


              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-segment-routing-policy-cp-14"/>
        </reference>
        <reference anchor="RFC8596">
          <front>
            <title>MPLS Transport Encapsulation for the Service Function Chaining (SFC) Network Service Header (NSH)</title>
            <author fullname="A. Malis" initials="A." surname="Malis"/>
            <author fullname="S. Bryant" initials="S." surname="Bryant"/>
            <author fullname="J. Halpern" initials="J." surname="Halpern"/>
            <author fullname="W. Henderickx" initials="W." surname="Henderickx"/>
            <date month="June" year="2019"/>
            <abstract>
              <t>This document describes how to use a Service Function Forwarder (SFF) Label (similar to a pseudowire label or VPN label) to indicate the presence of a Service Function Chaining (SFC) Network Service Header (NSH) between an MPLS label stack and the packet original packet/ frame. This allows SFC packets using the NSH to be forwarded between SFFs over an MPLS network, and to select one of multiple SFFs in the destination MPLS node.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8596"/>
          <seriesInfo name="DOI" value="10.17487/RFC8596"/>
        </reference>
        <reference anchor="I-D.wu-pce-traffic-steering-sfc">
          <front>
            <title>PCEP Extensions for Service Function Chaining (SFC)</title>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Dhruv Dhody" initials="D." surname="Dhody">
              <organization>Huawei</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Christian Jacquenet" initials="C." surname="Jacquenet">
              <organization>Orange</organization>
            </author>
            <author fullname="Jeff Tantsura" initials="J." surname="Tantsura">
         </author>
            <date day="30" month="June" year="2017"/>
            <abstract>
              <t>   This document provides an overview of the usage of Path Computation
   Element (PCE) to dynamically structure service function chains.
   Service Function Chaining (SFC) is a technique that is meant to
   facilitate the dynamic enforcement of differentiated traffic
   forwarding policies within a domain.  Service function chains are
   composed of an ordered set of elementary Service Functions (such as
   firewalls, load balancers) that need to be invoked according to the
   design of a given service.  Corresponding traffic is thus forwarded
   along a Service Function Path (SFP) that can be computed by means of
   PCE.

   This document specifies extensions to the Path Computation Element
   Protocol (PCEP) that allow a stateful PCE to compute and instantiate
   Service Function Paths.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-wu-pce-traffic-steering-sfc-12"/>
        </reference>
      </references>
    </references>
    <?line 415?>



  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA9Vb63LbyHL+zyq+w0T+YWuXoEWvr6qNz9KSuWaVbDOk9mw5
qfwYAkNyYhDAYgDKXMt5ljxLnix9mRkMSEqWsqdSFfqcFTGYS09fvu7pHkZR
1O1sTsVP3U6Sx5lcq1ORlHJRRamOTFHqbBmZMjKLOIrzrCrzNCpSmaloUULf
q7z8HA1Oup1YVqdCZ4u82zFVqeT6VIzfXo66nUKfdjtCVHl8Kh5ulXlon/J1
IeOq3ZaoolpB00+uQWeJysJOZrsu1cKELXlZ7TTB3GsYFjbpLNWZavfZWd/U
86Yxy6Gt26l0lcKo1/h+KEZux2KRl+Isz2CndVwBh8RMlRsdKzGqM2jIM3G2
kjqjN1tTqbURb6RRiYA3M7VE6sQ0r3FotyPn81KBBGZTMadOs9EZzo68FhPk
NZJytYQek+n4w6/idyABp/61zOui23mQyAqIfHLy5KfoZBANnmB3WVervATW
R4Jl+qmW2VbCqE86w+3kJUx4ttKZFJcqVbB1bFVrqdNTsdXZFvv/EmOHit/3
YxoY62p7Kn6F18s/V3nNzKyB2q2dr1nzbKVgwQvt13tXyyulYcF4leVpvtTK
BKvG/fSXFfXoEzkRiA2EOOyLmbySC+zJ8w5Xa2DT27Rpp9lnsk602w1wEISZ
bRuSp3ork1WLXh4xLOVcy4AQqVKDM/fjX0wVIzF9E2zrXZ4ttxo3g+K7fWto
DKryr8/kuqhNT3zI+2Lw7Ll4o/QfKMpp0m8Ihcb/0Dx1nCeotYOTk5NXzx4e
4rUnekVU9VdI1Q4bmex/BWnMdXYHefzfEZ3qP5mqFsXdDiJJuZaV3iiCj+no
7OXTkyf++/PnJ+77i+fPn/n2n064fRyd97WqFiGCsYlGRZkvwZDX0NzuqpMS
+xV5quNtZORCu2lfnQz8Eq+evhr4cYm8KiUNnC+LKDXhOobt3PiBzwZPmwlf
PvOTfKlhZBlpo40fvLA4Eslks9sxN8Xi5o7IkRcvGu68ejnw3Hnx7Gl7y0VD
Z1QyHrn9x4Uf9uzVcz/sqqZBFXiIhY4jwDbFDF7Epyi4KIqEnIMCAY7ic7ez
g3fi0Wx6DIYN6JbUsTJCio0qDYg6VWKtALUS1MQtYWyiFoyiKkuiKo/gj8hU
RRhcyGplxHwL70DhsJNRf9TwAHPmC/AeBWl0LFOE9oi698TnLL/KhDTiyMnn
qC8uVxroKAHsKhVXdalELDMxV7B+keZbxG2gUczzaiXeTy5mQgId48nmuQDo
lYL8IcydLxbEDNjSIlVf9Bx2ZLkKbiqtUU59ZslN3uIRYP8x0FsU4NaMqFZK
KFPJearNirgIO0MvlRsgVVglwH6wznIFdIFdJ6oEih0zcMTuegbXMccwTFaw
byVkUaQaBlU5sDX+rGBp4D55eGOdElAJJFYa2Bmn0hgN4pe0I/RXD43Q6yJV
SCO1Egdhx2DgSmxkqfPaiBrceZlucaNVADk9mDlOa5Ih7viDlbAj+52SME48
+jB7d0ysn017SOpCxjA/rKdoWAxhBy2NXdYyk0vlWGYZJWLksyEZkMwh4qmp
T1Eqg8oAokP2lgpQyQD4CBvziEXL9ydqo9K8IP8OzjpUHdil4YigpfZ9Ma6E
+gLqhF3crKQ5XjcMzY1bSTRYkJ5Ta0i/s3Z0jJVE6aJ+oRFlyX4nq/Kg7Fcq
TfEvcV2DYvBSiS4Vxy9O6mCXuTCFilG8+zNa/oHBEI1xDXoAzWiB4GyNQW1B
I4E9wD4rMr4FYH8ieX9IZoHQQG+AC0aDZGWzeVhfLbEBOThlcpDDbIhkr32G
FQSatU6SlKKjB2JsEQXnuhl4iBuEKqDS4Au/frWe5du3XhuUTF6XcWO/hSxl
opdrazOw72VG3RyvgPorWSbcF1iAu3FchREoVXgHwjciA/8oNlqG5goGTppq
RbJRIVY5qAJTm+5bGloXkHylmfGhlTXwhOFlRNjFWwYH+u0bEekBbTYFQOO3
4CjsW0S5u2AWoF9dpS22omNGtjZmyoCGerKep9vvYZmHsITxieHmRjw7FqTy
O+gFQFHq5ZJ4DL6iDV2gizksCWpLW7wVd5gxEF8AY2DYBhQX5Q/gqFl1gQs9
sATEanIBRwa3vKhTfHOEi2cKF0NOYA/UApghzS3q7TF4gmoEG5scI9hBvAQC
B956jUO7oDVgk6aOV6gpa+AUTA5mCHtRKmvNTBOO8UQF43Fjs8nYAqrtMQbV
+QLt0IxbAr/JMqhC9ZbM8z6zBGMjYElgO6SDhhzPm18nSJXcAbw1wJDMtFk7
xu0iKPkNXAtYTwSikhKEAutBYYj1mbriBZKEzGoh1zrd9njLMOdwNH48g//0
GNI1wTJImDFTVNtCwelij+1jB61T6gYCGE/bXGpLyHebILx4ZXfOLPbHRNZd
3JG1usgf96z14lK8EkxGxkt6OUwrVWYUDOP+cG/oXVNwQiU4OQRKxk4kHDw0
LtUTVytQembG1KEZIQ96IQ1BO1gg2KFKWGK7+EXQa80JOJ8hfnh6ewhdSAf6
UJXlFVuXFLPxOUPZoszXNK9dGWjAxXuigM5IZArLg6V8hpG0d+drEgVanoJF
q/6y3xPnShXAZyQDJVOomHd3DqoLmDPf6IbVmYLJkBPOVmgzqoy8pYTmNpr0
xIoiJOAunifZYFNUJRjQP6IoIbeuZ2f7VSt68H7dkEjSRsH3Yptdz94SectX
M++Fi7BZIMT2CTvgUm00mIDUa4MA4ePEvRimHbvEYd7CitFQkiKwu93ohT3q
gwdiCngALorckbiAo2YNGsjxlBKf1VbAOqBRR+9/m10e9fiv+PCRvk/f/stv
4+nbc/w+eze8uPBfOrbH7N3H3y7Om2/NyLOP79+//XDOg6FVtJo6R++Hn456
xMijj5PL8ccPw4sj9ERtQWGsC6yaKwo0SuARaq40HYDiGMTC3uvN2eS//2vw
FPDtnwDgngwGrwDg+OHl4AV6RrCtjFfLM9BjfgTxbjuAv0qiLYKqQYQjC8CC
lIMws0J3jlbZ73R++DfkzL+fip/ncTF4+to24IZbjY5nrUbi2X7L3mBm4oGm
A8t4brbadzjdpnf4qfXs+B40/vw3DAlENHj5t9cdr0OXYG+agv8ttiAUnor3
dVppQHdMDaagWXMFjhOQATNQrH+ALadeMRs3xu+mpwd11gY9ey8Zcyj0aWIk
O+Ldfm+OBPg9GOx3vQZ3nBzq2PgM7DSqS1CbchdQ1vIzHSTIiSJsIETtB64c
YaEedjtfv94t5/HtmzVmDJo/brADgAgi0dTmKA+mH8kPGUTTdnBHAV14ciZM
O+PY3mAktuh2XNQF5/zePkdG7HngJXpROJfu97EH1m6HkfJMTMr8CwS99uiO
/0vTGrMOFbNnpJdIzMDvFf/9J3wwj3GXz48Rfn488Gy/3XWi6+C//A3pv27e
3H2i2WgQToQ82F4DLfjmyd0n+odtTYT7ss88lifynx8PjLxxLDY7+Qe9kGst
gptZ3bMdf9aK8WH82wxw2NQpx/zMyZCV9EwMhFleY7PXTXi5sxfbA9+4hp3n
180+btlt03S9+3xXHt7Mh0CCwLeITiVgGOc5RkZsDPvT4cfbDUfQgWE3BoT/
xvbkit7UBxQ2mujtxLHg9+o0oXSaC34o1dTCBdt9BCY9TE3OwFLWKSfzfBB0
ME9BWGuCdYCiBW0kcUfvZqU+QqU/t/TtZjCjJFtRMkbYQaSsswQVSh2MleG5
23GkzbEzAK+Lr3ZP+Lo5D3AmBVCex2LpzO0Tk7C6lQQAfObUbM9lJyngT1MX
e8fgOSD4BLYyeKcgHswy4Bkp8A77aW5wIRAX5uiIup0mdCXe/A6hjYv0vaBx
RV/OmvZYzJTb2YlZSYBYHNyn12/nUHYETy8aTrTglrd8PIH9gApixsBLksM7
tXd+pNMK7YaDUUtfkiucHLhM5wQOA9saSTEbnSR2z+Yu5pYti2Cv2RTtbvRD
T/qHfdAuFB+y7zsB9a6XaX8O+KCpOOyDriFiOrtlojv7oH/Y1m7Z1+G31399
7F/B3gPTkksD/SBH9Bh5b33Q4x0f9Nj5oLPRY0p/skkc9kEkw8AHhc//H3zQ
/mSisZe2YbXMO/RD+O8H0eLWKbmhaTvb2gYShOGzEEfousEBKOEznq4Q+jJo
ooM2T9+AbJBqwXkcsGFONi/1kgrofSYUjYsK/WcNRD/CxmOLr7gIQ5FN3LRQ
Eafn4sYWwUtWlYxXFrmyLe/UgqKtkvVpSZpcFigAiscFJe+xpkVpCa6UbXmz
sUxjCpXgDQO+pDMHl9vI05FAjdvSiJhPiHlqmTjivG6GRxmdHeAqoTuVgUkr
yLmhQ0e/4X08pf6bZbL9w5TxrhB2Ka/wdI/5xGlUZ/QEnmDBQQndATHBK6SU
5FggguE79Aoq8YLiF6diaHu4hGq4X5s293PORsF545KUgpa6yoMaD6ZqsGLJ
2uZ82LR9Dr37ac4eCk0wvttxBRuZ6morSs7ZkJ742oFPuLniAm0G9Emrjc/G
Q1TTrEWinHpDDgqhTtsMpWitSDir1u0czcK02pEwOqMYayczp41P23FgYdlC
jIaDX8sXh6c6dMtGgaomnsltEgRT4DLxLv57+mqAB1gmR2PQAr7b02AceRiU
IX0wK5Hi0t403KWNDMoYYidSCgCXvLBVrdOQ0h8w+dtkEW3O1+UVwdAyg2Vf
UdWAAynhhKYsQEK1O4aX3W4oVE5o+wDUamoQKdngWjjrxTDbGROn5F2dq1Qp
AVeGtDaotUP02JbpoA3z2b7AwJWmS5YSEM8mjsrOWd5G292tA4yKCQ9SDq0p
PY45tUYQduOmRS/Cr/pSCX9RhFPeGDReoRznyjKuIqaTffLeDeMcvEA+cHmi
yCkfSKcZhNRdCl3RMTz22CI9kgcRfGN9/j4ColNY9ghja8IFZ5ccWqovsJBF
3UO1Eh5DSUS8HwNqiPleNbCHmOu2x/z+55qPae2GydR9bZ1EthgQXEf3/OxF
LT/e8i66pj14rLjT5xoPNz/Py9fwJ7qY4bcxnHZ88+Ts7e6TG4mr3ccc3WoH
l2/WaZPHYrmP9fy1LX09FQ9YKwRdXfzno5svFYqZc0lH31w+MIDqIBtoc38O
7Dj9eFf/1Gt8ibu0wJoM4JTHmrhAXJHO4tCp0ylRepufjc/7hPRGhW08kauD
JVw1KemUTaUosl0fWDRHdFdi5vpcCQEWBCv2ChFXoW2m+nvFwfOgmmPLRX5b
zYaa/dFsniNt8LIl3AOV9sttQQXGy+NekOTguhIfM+1C3U5YXupbKd3lkhrE
ETaboizgArhi+chGLKyM9tIIh45bhtFkg6kOs3vVBtymiyso4KHY06iqLsL7
LGF0wQFm6/JMt+Nvz9xrK0R7YvhGwwfwPlQ8EJcXf7fO+9ngKefN/a0IeP/Y
Vh2gm88RvcT8ehVKlZgza3RQ/F2mtbLgYUkBJ0p6PW7k6zdmudPcD67nEazI
PsDNu/uWfAI5w0BlKJQPKdkgJb1AWcNSP5akY8qbQ6B/vs3k2j/CLCuJ8eF7
tc5BrrbTe2n+qBVeewFCbBvAwpBDXbvu2yruH/caOlhXzydjoAN82xVYci84
a/XExRuhaIy45DuEdsh4snna7Xyc8r06+PsWMzgQWHLt/WMhgRhxjm72kbvt
MC9JBeH/eIWQrMhmsUADShky69iWCrxaCwpYSaPpyhIogg9psQpkr72Edxya
uwfdDhpEA6yH73P502OzlFM3tHMs9DZh2A1Xu9oFY7pUZxR7bj5ZATTbew79
Jg/XTsD5a2VBRMgRcgAYO1k5F0zpsOrUOpccyiP2yQXuRD2UJds8D9jFoTYe
uIzLw/EanI6FKQL0QW2znCcSmYTvXZptl8W+d3MWKYfYbjyLxrNAfBgggpyC
wBWvolECQ7gkogdAoSByhB5UByaq/X3Q+bbbYfvnWyvGWrUt7vGy5FFKcTac
DN+ML8aXnxq8wku8FOaRCocz0MGenOWu1wAA5j5NDgNEbsvTayq2Ysit1/bq
GFasxVJvVNaiB5CqTRCoEpa7BSAFgiEmuDGWGLXE6ZkCse3H2WTUcicUxuq1
TmXJtKFGIx+wp2NDCJ2PpuNjgAZGgIvZ0DLlxYsTBudYloBaNzKAlOpdfoVh
Qk8kNV0BQCVbpDlfHNbG1JhrP6B5WV4huIAAgXWghSU6ASabrnPgL2WMWMkN
3auhUzZamxR8XgX2Nncnbrs/tBtJ/M7BqLvNFOSvxc3p6yBt3e3YgQLe8onK
JpXCjNJ3ISOs0fhL0TdABruwNyEP6QjYqlrfDh98mqegNpzjJgi69fq6L3Qj
5ymxNAmLRzautbWfg4ULG13KEpd2MWNru7XpEaNLyl9kuZeNLXXYMgTPZjEk
Dpyhw1grrdY9raBM3+QvdqLydmYjzEw0zqqdmQjPA6f3T0r8bxICN+v/YdUf
gerdh6bWCaNBjXZCCRQVCeNEAydWyCgoSUDK7mbtdoJUH16tzFsXHa0RuHEo
OVzJCewyb0qFsKC9KDcSKYWWfIn02avnGG9TJI+r2XqhT/NAZzi28AirNPwA
OhV/tmk4uhHJ9tKOPugCxoiUSqYmF62rTWHpEy9egH2v8hxd02NXNLVXry0p
+8xGA+fQhFd6aCgaEpd8TG4X24eVhQqO8prTCx5ML9+KCWcX8OXRHaKLEYdQ
pAdY9b2D9hGCevvcCU18whB2uwX7D8OQe0P2TK4VFWoxOAvDNluARCa1ojmd
tfWcQ41bUhBYX6SYHm/PWzhv7tJa4m1yKJAz4mngge2l28l0P7YslfPFyMfG
AP3YA2h+yy+CvJLdDzB6N8TTsLMmwLAnXwZYd3HK3AXy748vEDxpNgcDMrZi
2uMS+7+wrmQEpxYM/RSIfzhS0eU3+qUckGTL3Ox9IB65wmQkP4HB53iT+1Ft
arotyxcLCvuLDXLOtuuKrqfBkUrTbXq+d2DRJ3E/2+GLnY5qv4XZZEwhOu0O
fzpZ0W4mPsSZjenWAjBxoUvApVVetK9QtKzS8xNd6/1FLPYkDMS1ROwkLMbD
D0P6EW7wE5KvD7D12/7ve3zwZHOuVC+jGdxtdu9rVQwYWG33p3ZvbpveX4NH
+jWXYLA6wVOW4eVZOp7s3LZAAoYxXvmAkH5pO359sNv0DTN9oJv1eo5XS4ig
97gjjMftSXNa6z9XMhfv6oeGMgOUgXE/jSbprlRa9N1vaeagSk2p4n8A4pQJ
7xY+AAA=

-->

</rfc>
