<?xml version="1.0" encoding="US-ASCII"?>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.31 (Ruby 3.2.3) -->
<rfc category="std" consensus="true"
     docName="draft-many-pce-srv6-inter-layer-network-programing-01"
     ipr="trust200902" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->

  <front>
    <title abbrev="PCEP SRv6 Inter-Layer Network Programing">Path Computation
    Element Communication Protocol(PCEP) IPv6 Segment Routing Extensions for
    Inter-Layer Network Programing</title>

    <seriesInfo name="Internet-Draft"
                value="draft-many-pce-srv6-inter-layer-network-programing-01"/>

    <author fullname="Liuyan Han" initials="L." surname="Han">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>No.32 XuanWuMen West Street</street>

          <city>Beijing, 100053</city>

          <country>China</country>
        </postal>

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

    <author fullname="Li Zhang" initials="L." surname="Zhang">
      <organization>Huawei</organization>

      <address>
        <postal>
          <street>Beiqing Road</street>

          <city>Beijing</city>

          <country>China</country>
        </postal>

        <email>zhangli344@huawei.com</email>
      </address>
    </author>

    <author fullname="Minxue Wang" initials="M." surname="Wang">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>No.32 XuanWuMen West Street</street>

          <city>Beijing, 100053</city>

          <country>China</country>
        </postal>

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

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

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

    <author fullname="Ran Chen" initials="R." surname="Chen">
      <organization>ZTE Corporation</organization>

      <address>
        <postal>
          <street/>

          <!-- Reorder these if your country does things differently -->

          <city>Nanjing</city>

          <region/>

          <code/>

          <country>China</country>
        </postal>

        <email>chen.ran@zte.com.cn</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <date day="2" month="March" year="2026"/>

    <area>General</area>

    <workgroup>PCE</workgroup>

    <keyword>Internet-Draft</keyword>

    <abstract>
      <?line 38?>

      <t>In some networks, the cross-layer planning and optimization is
      considered more efficient than independent planning and operation of the
      layer-3 and the underlying networks in terms of resource utilization and
      SLA assurance.</t>

      <t>This document extends the PCEP SRv6 for inter-layer network, which
      enable the PCE to instantiate candidate paths comprising both the
      layer-3 network segments and underlay network segments.</t>
    </abstract>
  </front>

  <middle>
    <?line 44?>

    <section anchor="intro">
      <name>Introduction</name>

      <t><xref target="RFC5440"/> describes Path Computation Element
      Communication Protocol (PCEP) for communication between a Path
      Computation Client (PCC) and a PCE or between a pair of PCEs.</t>

      <t><xref target="RFC8231"/> specifies extensions to PCEP that allow a
      stateful PCE to compute and recommend network paths in compliance with
      <xref target="RFC4657"/> and defines objects and TLVs for MPLS-TE LSPs.
      Stateful PCEP extensions provide synchronization of LSP state between a
      PCC and a PCE or between a pair of PCEs, delegation of LSP control,
      reporting of LSP state from a PCC to a PCE, and controlling the setup
      and path routing of an LSP from a PCE to a PCC.</t>

      <t><xref target="RFC8281"/> further extends PCEP, providing a mechanism
      to dynamically initiate LSPs on a PCC based on the requests from a
      stateful PCE or a controller using stateful PCE.</t>

      <t><xref target="RFC8664"/> specifies PCEP extensions for supporting an
      SR-TE LSP for the MPLS data plane. <xref target="RFC9603"/> extends
      <xref target="RFC8664"/> to support SR for the IPv6 data plane.</t>

      <t>As defined in <xref target="RFC8402"/>, Segment Routing (SR)
      architecture allows the source node to steer a packet through a path
      indicated by an ordered list of instructions, called "segments". A
      segment can represent any instruction, topological or service based, and
      it can have a semantic local to an SR node or global within an SR
      domain.</t>

      <t>Segment Routing over IPv6 (SRv6) <xref target="RFC8986"/> 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>Based on <xref target="RFC8986"/>, <xref
      target="I-D.ietf-spring-srv6-inter-layer-programming"/> defines a new
      SRv6 behavior, which can be used for steering packets to underlay
      network connections, so that the packet network layer can be integrated
      with the underlying layers efficiently to provide better SLA
      assurance.</t>

      <t>This document extends the PCEP SRv6 for inter-layer network, which
      enable the PCE to instantiate candidate paths comprising both the
      layer-3 network segments and underlay network segments.</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>

    <section anchor="object-extensions">
      <name>Object Extensions</name>

      <section anchor="the-ero-object">
        <name>The ERO Object</name>

        <t>As specified in <xref target="RFC8664"/>, an SR-TE path consists of
        one or more SIDs where each SID <bcp14>MAY</bcp14> be associated with
        the identifier that represents the node or adjacency corresponding to
        the SID. This identifier is referred to as the NAI. An NAI can be
        represented in various formats (e.g., IPv4 address, IPv6 address,
        etc).</t>

        <t>However, when an SRv6-TE path includes the END.IL SID defined in
        <xref target="I-D.ietf-spring-srv6-inter-layer-programming"/>, the
        existing layer-3 NAIs are not applicable to the END.IL SID. Therefore,
        a new kind of NAI is needed for the END.IL SID.</t>

        <t><xref target="RFC9603"/> defines the "SRv6-ERO" subobject in the
        ERO to carry the SRv6 SID, the format of it is shown as follows:</t>

        <figure anchor="ref-to-fig1">
          <name>SRv6-ERO Subobject Format</name>
   <artwork> <![CDATA[
0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|L|   Type=40   |     Length    | NT    |     Flags     |V|T|F|S|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              Reserved         |      Endpoint Behavior        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
|                   SRv6 SID (conditional)                      |
|                        (128-bit)                              |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//                 NAI (variable, conditional)                 //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
|                  SID Structure (conditional)                  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
         ]]> </artwork>
        </figure>

        <t>The NT field in this subobject indicates the type and format of the
        NAI contained in the object body. The value 2, 4 and 6 have been
        allocated for indicating different kind of NAI.</t>

        <t>This document request to allocate a new NT value for indicating the
        underlay network connection.</t>

        <t>Value TBD1: the NAI consists of a local IPv6 address, a Remote IPv6
        address, and a underlay tunnel ID. This is used to identify the
        underlay network tunnel and used with the SRv6 inter-layer SID.</t>

        <t>The NAI associated with the new NT value is shown in the following
        figure:</t>

        <figure anchor="ref-to-fig2">
          <name>NAI for Underlay Interface Identifier</name>

          <artwork><![CDATA[ 
  0                   1                   2                   3
  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 //                Local IPv6 address(16 octets)                //
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 //               Remote IPv6 address(16 octets)                //
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 |                  Underlay tunnel ID                           |
 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
           ]]> </artwork>
        </figure>

        <t>This NAI is specified as a pair of global IPv6 address and an
        Underlay tunnel ID. It is used to describe an underaly network tunnel
        between two nodes identified by global IPv6 address. Each global IPv6
        address is configured on a specific router, so together they identify
        a pair of routers at the end of the tunnel. The underlay tunnel ID is
        configured by the management system and uniquely identifies a underlay
        network tunnel within the source node.</t>
      </section>

      <section anchor="the-rro-object">
        <name>The RRO Object</name>

        <t>A PCC reports an SRv6 path to a PCE by sending a PCRpt message, per
        <xref target="RFC8231"/>. The RRO on this message represents the SID
        list that was applied by the PCC, that is, the actual path taken. The
        procedures of <xref target="RFC8664"/> with respect to the RRO apply
        equally to this specification without change.</t>

        <t><xref target="RFC9603"/> defines the SRv6-RRO subobject to carry
        the SRv6 SID applied by the PCC. The format of the SRv6-RRO subobject
        is the same as that of the SRv6-ERO subobject but without the L
        flag.</t>

        <t>The extension to the NT field of SRv6-ERO subobject is also
        applicable to the SRv6-RRO subobject.</t>
      </section>
    </section>

    <section anchor="procedures">
      <name>Procedures</name>

      <t>TBD</t>
    </section>

    <section anchor="security-considerations">
      <name>Security Considerations</name>

      <t>TBD</t>
    </section>

    <section anchor="iana-considerations">
      <name>IANA Considerations</name>

      <t>This document requests IANA to make the following allocations from
      the PCEP SRv6-ERO NAI Types sub-registry.</t>

      <table>
        <thead>
          <tr>
            <th align="left">Value</th>

            <th align="left">Description</th>

            <th align="left">Reference</th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td align="left">TBD1</td>

            <td align="left">NAI is an underlay interface identifier</td>

            <td align="left">This document</td>
          </tr>
        </tbody>
      </table>
    </section>
  </middle>

  <back>
    <references anchor="sec-combined-references">
      <name>References</name>

      <references anchor="sec-normative-references">
        <name>Normative References</name>

        <reference anchor="RFC8664"
                   target="https://www.rfc-editor.org/info/rfc8664"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8664.xml">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP)
            Extensions for Segment Routing</title>

            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>

            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>

            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>

            <author fullname="W. Henderickx" initials="W."
                    surname="Henderickx"/>

            <author fullname="J. Hardwick" initials="J." surname="Hardwick"/>

            <date month="December" year="2019"/>

            <abstract>
              <t>Segment Routing (SR) enables any head-end node to select any
              path without relying on a hop-by-hop signaling technique (e.g.,
              LDP or RSVP-TE). It depends only on "segments" that are
              advertised by link-state Interior Gateway Protocols (IGPs). An
              SR path can be derived from a variety of mechanisms, including
              an IGP Shortest Path Tree (SPT), an explicit configuration, or a
              Path Computation Element (PCE). This document specifies
              extensions to the Path Computation Element Communication
              Protocol (PCEP) that allow a stateful PCE to compute and
              initiate Traffic-Engineering (TE) paths, as well as a Path
              Computation Client (PCC) to request a path subject to certain
              constraints and optimization criteria in SR networks.</t>

              <t>This document updates RFC 8408.</t>
            </abstract>
          </front>

          <seriesInfo name="RFC" value="8664"/>

          <seriesInfo name="DOI" value="10.17487/RFC8664"/>
        </reference>

        <reference anchor="RFC9603"
                   target="https://www.rfc-editor.org/info/rfc9603"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9603.xml">
          <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="I-D.ietf-spring-srv6-inter-layer-programming"
                   target="https://datatracker.ietf.org/doc/html/draft-ietf-spring-srv6-inter-layer-programming-01"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-spring-srv6-inter-layer-programming.xml">
          <front>
            <title>SRv6 for Inter-Layer Network Programming</title>

            <author fullname="Liuyan Han" initials="L." surname="Han">
              <organization>China Mobile</organization>
            </author>

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

            <author fullname="Minxue Wang" initials="M." surname="Wang">
              <organization>China Mobile</organization>
            </author>

            <author fullname="Ran Chen" initials="R." surname="Chen">
              <organization>ZTE Corporation</organization>
            </author>

            <author fullname="Zongpeng Du" initials="Z." surname="Du">
              <organization>China Mobile</organization>
            </author>

            <date day="27" month="November" year="2025"/>

            <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. Following the SRv6
              Network Programming concept, this document defines SRv6 based
              mechanisms for inter-layer network programming, which can help
              to integrate the packet network layer with its underlying layers
              efficiently. For inter-layer path programming, a new SRv6
              behavior is defined for steering packets to underlay network
              connections. The applicability of this new SRv6 behavior in
              typical scenarios is illustrated.</t>
            </abstract>
          </front>

          <seriesInfo name="Internet-Draft"
                      value="draft-ietf-spring-srv6-inter-layer-programming-01"/>
        </reference>

        <reference anchor="RFC2119"
                   target="https://www.rfc-editor.org/info/rfc2119"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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"
                   target="https://www.rfc-editor.org/info/rfc8174"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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="RFC5440"
                   target="https://www.rfc-editor.org/info/rfc5440"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5440.xml">
          <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="RFC8231"
                   target="https://www.rfc-editor.org/info/rfc8231"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8231.xml">
          <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="RFC4657"
                   target="https://www.rfc-editor.org/info/rfc4657"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4657.xml">
          <front>
            <title>Path Computation Element (PCE) Communication Protocol
            Generic Requirements</title>

            <author fullname="J. Ash" initials="J." role="editor"
                    surname="Ash"/>

            <author fullname="J.L. Le Roux" initials="J.L." role="editor"
                    surname="Le Roux"/>

            <date month="September" year="2006"/>

            <abstract>
              <t>The PCE model is described in the "PCE Architecture" document
              and facilitates path computation requests from Path Computation
              Clients (PCCs) to Path Computation Elements (PCEs). This
              document specifies generic requirements for a communication
              protocol between PCCs and PCEs, and also between PCEs where
              cooperation between PCEs is desirable. Subsequent documents will
              specify application-specific requirements for the PCE
              communication protocol. This memo provides information for the
              Internet community.</t>
            </abstract>
          </front>

          <seriesInfo name="RFC" value="4657"/>

          <seriesInfo name="DOI" value="10.17487/RFC4657"/>
        </reference>

        <reference anchor="RFC8281"
                   target="https://www.rfc-editor.org/info/rfc8281"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8281.xml">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP)
            Extensions for PCE-Initiated LSP Setup in a Stateful PCE
            Model</title>

            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>

            <author fullname="I. Minei" initials="I." surname="Minei"/>

            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>

            <author fullname="R. Varga" initials="R." surname="Varga"/>

            <date month="December" 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>The extensions for stateful PCE provide active control of
              Multiprotocol Label Switching (MPLS) Traffic Engineering Label
              Switched Paths (TE LSPs) via PCEP, for a model where the PCC
              delegates control over one or more locally configured LSPs to
              the PCE. This document describes the creation and deletion of
              PCE-initiated LSPs under the stateful PCE model.</t>
            </abstract>
          </front>

          <seriesInfo name="RFC" value="8281"/>

          <seriesInfo name="DOI" value="10.17487/RFC8281"/>
        </reference>

        <reference anchor="RFC8402"
                   target="https://www.rfc-editor.org/info/rfc8402"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8402.xml">
          <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="RFC8986"
                   target="https://www.rfc-editor.org/info/rfc8986"
                   xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8986.xml">
          <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>
      </references>
    </references>

    <?line 164?>
  </back>

  <!-- ##markdown-source:
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
iaayq/KnwbFM3u21mv/+C2jWtbuhIAAA

-->
</rfc>
