<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" consensus="true" docName="draft-ietf-lsr-isis-srv6-extensions-18" indexInclude="true" ipr="trust200902" number="9352" prepTime="2023-02-22T10:42:43" scripts="Common,Latin" sortRefs="true" submissionType="IETF" symRefs="true" tocDepth="3" tocInclude="true" updates="7370" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-lsr-isis-srv6-extensions-18" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9352" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="IS-IS SRv6 Extensions">IS-IS Extensions to Support Segment Routing over the IPv6 Data Plane</title>
    <seriesInfo name="RFC" value="9352" stream="IETF"/>
    <author fullname="Peter Psenak" initials="P" role="editor" surname="Psenak">
      <organization showOnFrontPage="true">Cisco Systems</organization>
      <address>
        <postal>
          <street>Pribinova Street 10</street>
          <city>Bratislava</city>
          <code>81109</code>
          <region/>
          <country>Slovakia</country>
        </postal>
        <phone/>
        <email>ppsenak@cisco.com</email>
        <uri/>
      </address>
    </author>
    <author fullname="Clarence Filsfils" initials="C" surname="Filsfils">
      <organization showOnFrontPage="true">Cisco Systems</organization>
      <address>
        <postal>
          <street/>
          <city>Brussels</city>
          <code/>
          <region/>
          <country>Belgium</country>
        </postal>
        <email>cfilsfil@cisco.com</email>
      </address>
    </author>
    <author fullname="Ahmed Bashandy" initials="A" surname="Bashandy">
      <organization showOnFrontPage="true">Cisco Systems</organization>
      <address>
        <postal>
          <street/>
          <city>Milpitas</city>
          <country>United States of America</country>
        </postal>
        <email>bashandy@cisco.com</email>
      </address>
    </author>
    <author fullname="Bruno Decraene" initials="B" surname="Decraene">
      <organization showOnFrontPage="true">Orange</organization>
      <address>
        <postal>
          <street/>
          <city>Chatillon</city>
          <code/>
          <region/>
          <country>France</country>
        </postal>
        <email>bruno.decraene@orange.com</email>
      </address>
    </author>
    <author fullname="Zhibo Hu" initials="Z" surname="Hu">
      <organization showOnFrontPage="true">Huawei Technologies</organization>
      <address>
        <postal>
          <street/>
          <city/>
          <code/>
          <region/>
          <country/>
        </postal>
        <email>huzhibo@huawei.com</email>
      </address>
    </author>
    <date month="02" year="2023"/>
    <area>Routing Area</area>
    <workgroup>Networking Working Group</workgroup>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">The Segment Routing (SR) architecture allows a flexible definition of the end-to-end
      path by encoding it as a sequence of topological elements called
      "segments". It can be implemented over the MPLS or the IPv6 data plane. 
      This document describes the IS-IS extensions required to support SR 
      over the IPv6 data plane.</t>
      <t indent="0" pn="section-abstract-2">This document updates RFC 7370 by modifying an existing registry.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9352" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2023 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.1.2">
              <li pn="section-toc.1-1.1.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.2.1.1"><xref derivedContent="1.1" format="counter" sectionFormat="of" target="section-1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requirements-language">Requirements Language</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-capabilities-sub-tlv">SRv6 Capabilities Sub-TLV</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-supported-algor">Advertising Supported Algorithms</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-maximum-srv6-si">Advertising Maximum SRv6 SID Depths</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t indent="0" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-maximum-segments-left-msd-t">Maximum Segments Left MSD Type</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t indent="0" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-maximum-end-pop-msd-type">Maximum End Pop MSD Type</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.3">
                <t indent="0" pn="section-toc.1-1.4.2.3.1"><xref derivedContent="4.3" format="counter" sectionFormat="of" target="section-4.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-maximum-hencaps-msd-type">Maximum H.Encaps MSD Type</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.4">
                <t indent="0" pn="section-toc.1-1.4.2.4.1"><xref derivedContent="4.4" format="counter" sectionFormat="of" target="section-4.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-maximum-end-d-msd-type">Maximum End D MSD Type</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-sids-and-reachability">SRv6 SIDs and Reachability</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-anycast-propert">Advertising Anycast Property</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-locators-and-en">Advertising Locators and End SIDs</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.7.2">
              <li pn="section-toc.1-1.7.2.1">
                <t indent="0" pn="section-toc.1-1.7.2.1.1"><xref derivedContent="7.1" format="counter" sectionFormat="of" target="section-7.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-locator-tlv-format">SRv6 Locator TLV Format</xref></t>
              </li>
              <li pn="section-toc.1-1.7.2.2">
                <t indent="0" pn="section-toc.1-1.7.2.2.1"><xref derivedContent="7.2" format="counter" sectionFormat="of" target="section-7.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-end-sid-sub-tlv">SRv6 End SID Sub-TLV</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-srv6-adjacency-">Advertising SRv6 Adjacency SIDs</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.8.2">
              <li pn="section-toc.1-1.8.2.1">
                <t indent="0" pn="section-toc.1-1.8.2.1.1"><xref derivedContent="8.1" format="counter" sectionFormat="of" target="section-8.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-endx-sid-sub-tlv">SRv6 End.X SID Sub-TLV</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.2">
                <t indent="0" pn="section-toc.1-1.8.2.2.1"><xref derivedContent="8.2" format="counter" sectionFormat="of" target="section-8.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-lan-endx-sid-sub-tlv">SRv6 LAN End.X SID Sub-TLV</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-sid-structure-sub-sub-">SRv6 SID Structure Sub-Sub-TLV</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="10" format="counter" sectionFormat="of" target="section-10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-advertising-endpoint-behavi">Advertising Endpoint Behaviors</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="11" format="counter" sectionFormat="of" target="section-11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.11.2">
              <li pn="section-toc.1-1.11.2.1">
                <t indent="0" pn="section-toc.1-1.11.2.1.1"><xref derivedContent="11.1" format="counter" sectionFormat="of" target="section-11.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-locator-tlv">SRv6 Locator TLV</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.11.2.1.2">
                  <li pn="section-toc.1-1.11.2.1.2.1">
                    <t indent="0" pn="section-toc.1-1.11.2.1.2.1.1"><xref derivedContent="11.1.1" format="counter" sectionFormat="of" target="section-11.1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-end-sid-sub-tlv-2">SRv6 End SID Sub-TLV</xref></t>
                  </li>
                  <li pn="section-toc.1-1.11.2.1.2.2">
                    <t indent="0" pn="section-toc.1-1.11.2.1.2.2.1"><xref derivedContent="11.1.2" format="counter" sectionFormat="of" target="section-11.1.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-is-is-sub-tlvs-for-tlvs-adve">IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability Registry</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.11.2.2">
                <t indent="0" pn="section-toc.1-1.11.2.2.1"><xref derivedContent="11.2" format="counter" sectionFormat="of" target="section-11.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-capabilities-sub-tlv-2">SRv6 Capabilities Sub-TLV</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.3">
                <t indent="0" pn="section-toc.1-1.11.2.3.1"><xref derivedContent="11.3" format="counter" sectionFormat="of" target="section-11.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-is-is-sub-sub-tlvs-for-the-">IS-IS Sub-Sub-TLVs for the SRv6 Capabilities Sub-TLV Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.4">
                <t indent="0" pn="section-toc.1-1.11.2.4.1"><xref derivedContent="11.4" format="counter" sectionFormat="of" target="section-11.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-srv6-endx-sid-and-srv6-lan-">SRv6 End.X SID and SRv6 LAN End.X SID Sub-TLVs</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.5">
                <t indent="0" pn="section-toc.1-1.11.2.5.1"><xref derivedContent="11.5" format="counter" sectionFormat="of" target="section-11.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-msd-types">MSD Types</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.6">
                <t indent="0" pn="section-toc.1-1.11.2.6.1"><xref derivedContent="11.6" format="counter" sectionFormat="of" target="section-11.6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-is-is-sub-sub-tlvs-for-srv6-">IS-IS Sub-Sub-TLVs for SRv6 SID Sub-TLVs Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.7">
                <t indent="0" pn="section-toc.1-1.11.2.7.1"><xref derivedContent="11.7" format="counter" sectionFormat="of" target="section-11.7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-prefix-attribute-flags-sub-">Prefix Attribute Flags Sub-TLV</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.8">
                <t indent="0" pn="section-toc.1-1.11.2.8.1"><xref derivedContent="11.8" format="counter" sectionFormat="of" target="section-11.8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-is-is-srv6-capabilities-sub">IS-IS SRv6 Capabilities Sub-TLV Flags Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.9">
                <t indent="0" pn="section-toc.1-1.11.2.9.1"><xref derivedContent="11.9" format="counter" sectionFormat="of" target="section-11.9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-is-is-srv6-locator-tlv-flag">IS-IS SRv6 Locator TLV Flags Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.10">
                <t indent="0" pn="section-toc.1-1.11.2.10.1"><xref derivedContent="11.10" format="counter" sectionFormat="of" target="section-11.10"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-is-is-srv6-end-sid-sub-tlv-">IS-IS SRv6 End SID Sub-TLV Flags Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.11.2.11">
                <t indent="0" pn="section-toc.1-1.11.2.11.1"><xref derivedContent="11.11" format="counter" sectionFormat="of" target="section-11.11"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-is-is-srv6-adjacency-sid-su">IS-IS SRv6 Adjacency SID Sub-TLVs Flags Registry</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.12">
            <t indent="0" pn="section-toc.1-1.12.1"><xref derivedContent="12" format="counter" sectionFormat="of" target="section-12"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.13">
            <t indent="0" pn="section-toc.1-1.13.1"><xref derivedContent="13" format="counter" sectionFormat="of" target="section-13"/>. <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.13.2">
              <li pn="section-toc.1-1.13.2.1">
                <t indent="0" pn="section-toc.1-1.13.2.1.1"><xref derivedContent="13.1" format="counter" sectionFormat="of" target="section-13.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.13.2.2">
                <t indent="0" pn="section-toc.1-1.13.2.2.1"><xref derivedContent="13.2" format="counter" sectionFormat="of" target="section-13.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.14">
            <t indent="0" pn="section-toc.1-1.14.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.15">
            <t indent="0" pn="section-toc.1-1.15.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-contributors">Contributors</xref></t>
          </li>
          <li pn="section-toc.1-1.16">
            <t indent="0" pn="section-toc.1-1.16.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.c"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">With Segment Routing (SR) <xref target="RFC8402" format="default" sectionFormat="of" derivedContent="RFC8402"/>, a node steers a packet
      through an ordered list of instructions, which are called segments.</t>
      <t indent="0" pn="section-1-2">Segments are identified through Segment Identifiers (SIDs).</t>
      <t indent="0" pn="section-1-3">SR can be directly instantiated on the IPv6 data plane
      through the use of the Segment Routing Header (SRH) defined in <xref target="RFC8754" format="default" sectionFormat="of" derivedContent="RFC8754"/>. 
      SRv6 refers to this SR instantiation on the IPv6 data plane.</t>
      <t indent="0" pn="section-1-4">The network programming paradigm <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/> is central to
      SRv6. It describes how any behavior can be bound to a SID and how any
      network program can be expressed as a combination of SIDs.</t>
      <t indent="0" pn="section-1-5">This document specifies IS-IS extensions that allow the IS-IS
      protocol to encode some of these SIDs and their behaviors.</t>
      <t indent="0" pn="section-1-6">Familiarity with the network programming paradigm <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/> is necessary to
      understand the extensions specified in this document.</t>
      <t indent="0" pn="section-1-7">The new SRv6 Locator top-level TLV announces SRv6 Locators -- a form of
      summary address for the set of topology-/algorithm-specific SIDs
      instantiated at the node.</t>
      <t indent="0" pn="section-1-8">The SRv6 Capabilities sub-TLV announces the ability to support SRv6.</t>
      <t indent="0" pn="section-1-9">Several new sub-TLVs are defined to advertise various SRv6 Maximum SID Depths (MSDs).</t>
      <t indent="0" pn="section-1-10">The SRv6 End SID sub-TLV, the SRv6 End.X SID sub-TLV, and the SRv6
      LAN End.X SID sub-TLV are used to advertise which SIDs are instantiated
      at a node and what Endpoint behavior is bound to each instantiated
      SID.</t>
      <t indent="0" pn="section-1-11">This document updates <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/> by modifying an existing registry
      (<xref target="REVISEDREG" format="default" sectionFormat="of" derivedContent="Section 11.1.2"/>).</t>
      <section anchor="req-lang" numbered="true" toc="include" removeInRFC="false" pn="section-1.1">
        <name slugifiedName="name-requirements-language">Requirements Language</name>
        <t indent="0" pn="section-1.1-1">
    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" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> 
    when, and only when, they appear in all capitals, as shown here.
        </t>
      </section>
    </section>
    <section anchor="SRV6CAP" numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-srv6-capabilities-sub-tlv">SRv6 Capabilities Sub-TLV</name>
      <t indent="0" pn="section-2-1">A node indicates that it supports the SR Segment Endpoint Node functionality
       as specified in <xref target="RFC8754" format="default" sectionFormat="of" derivedContent="RFC8754"/> by advertising a new SRv6 Capabilities 
       sub-TLV of the Router Capability TLV <xref target="RFC7981" format="default" sectionFormat="of" derivedContent="RFC7981"/>.</t>
      <t indent="0" pn="section-2-2">The SRv6 Capabilities sub-TLV may contain optional sub-sub-TLVs. No
      sub-sub-TLVs are currently defined.</t>
      <t indent="0" pn="section-2-3">The SRv6 Capabilities sub-TLV has the following format:</t>
      <artwork name="" type="" align="left" alt="" pn="section-2-4">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Type        |     Length    |            Flags              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   optional sub-sub-TLVs...
</artwork>
      <dl newline="false" spacing="normal" indent="3" pn="section-2-5">
        <dt pn="section-2-5.1">Type:</dt>
        <dd pn="section-2-5.2">25. Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.</dd>
        <dt pn="section-2-5.3">Length:</dt>
        <dd pn="section-2-5.4">Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>. The
   length value is 2 + length of sub-sub-TLVs.</dd>
        <dt pn="section-2-5.5">Flags:</dt>
        <dd pn="section-2-5.6">
          <t indent="0" pn="section-2-5.6.1">2 octets. The following flags are defined:</t>
          <artwork name="" type="" align="left" alt="" pn="section-2-5.6.2">
 0                   1
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |O|       Reserved            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
          <dl newline="true" spacing="normal" indent="3" pn="section-2-5.6.3">
            <dt pn="section-2-5.6.3.1">where:</dt>
            <dd pn="section-2-5.6.3.2">
              <dl newline="false" spacing="normal" indent="3" pn="section-2-5.6.3.2.1">
                <dt pn="section-2-5.6.3.2.1.1">O-flag:</dt>
                <dd pn="section-2-5.6.3.2.1.2">
                  <t indent="0" pn="section-2-5.6.3.2.1.2.1">If set, the router supports use of the O-bit 
     in the SRH, as defined in <xref target="RFC9259" format="default" sectionFormat="of" derivedContent="RFC9259"/>.</t>
                  <t indent="0" pn="section-2-5.6.3.2.1.2.2">The remaining bits, including bit 0, are reserved for future use. They <bcp14>MUST</bcp14>
     be set to zero on transmission and <bcp14>MUST</bcp14> be ignored on receipt.</t>
                </dd>
              </dl>
            </dd>
          </dl>
        </dd>
      </dl>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-advertising-supported-algor">Advertising Supported Algorithms</name>
      <t indent="0" pn="section-3-1">An SRv6-capable router indicates one or more supported algorithms by advertising the
       Segment Routing Algorithm sub-TLV, as defined in <xref target="RFC8667" format="default" sectionFormat="of" derivedContent="RFC8667"/>.</t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-advertising-maximum-srv6-si">Advertising Maximum SRv6 SID Depths</name>
      <t indent="0" pn="section-4-1"><xref target="RFC8491" format="default" sectionFormat="of" derivedContent="RFC8491"/> defines the means
      to advertise node-/link-specific values for MSDs of
      various types. 
      Node MSDs are advertised in a sub-TLV of the Router
      Capability TLV <xref target="RFC7981" format="default" sectionFormat="of" derivedContent="RFC7981"/>. Link MSDs are advertised in a
      sub-TLV of TLVs 22, 23, 25, 141, 222, and 223.</t>
      <t indent="0" pn="section-4-2">This document defines the relevant SRv6 MSDs and requests MSD type
      assignments in the "IGP MSD-Types" registry created by <xref target="RFC8491" format="default" sectionFormat="of" derivedContent="RFC8491"/>.</t>
      <section anchor="MAXSEGLEFT" numbered="true" toc="include" removeInRFC="false" pn="section-4.1">
        <name slugifiedName="name-maximum-segments-left-msd-t">Maximum Segments Left MSD Type</name>
        <t indent="0" pn="section-4.1-1">The Maximum Segments Left MSD Type signals the maximum value of
        the "Segments Left" field <xref target="RFC8754" format="default" sectionFormat="of" derivedContent="RFC8754"/>
        in the SRH of a received packet before applying the Endpoint behavior
        associated with a SID.</t>
        <t indent="3" pn="section-4.1-2">SRH Max Segments Left Type: 41</t>
        <t indent="3" pn="section-4.1-3">If no value is advertised, the supported value is 0.</t>
      </section>
      <section anchor="MAXSENDPOP" numbered="true" toc="include" removeInRFC="false" pn="section-4.2">
        <name slugifiedName="name-maximum-end-pop-msd-type">Maximum End Pop MSD Type</name>
        <t indent="0" pn="section-4.2-1">The Maximum End Pop MSD Type signals the maximum number of SIDs
        in the SRH to which the router can apply "Penultimate Segment Pop (PSP) of the SRH" or
        "Ultimate Segment Pop (USP) of the SRH" behavior, as defined in "Flavors" (<xref target="RFC8986" sectionFormat="of" section="4.16" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8986#section-4.16" derivedContent="RFC8986"/>).</t>
        <t indent="3" pn="section-4.2-2">SRH Max End Pop Type: 42</t>
        <t indent="3" pn="section-4.2-3">If the advertised value is zero or no value is advertised, 
	then the router cannot apply PSP or USP flavors.</t>
      </section>
      <section anchor="MAXHENCAP" numbered="true" toc="include" removeInRFC="false" pn="section-4.3">
        <name slugifiedName="name-maximum-hencaps-msd-type">Maximum H.Encaps MSD Type</name>
        <t indent="0" pn="section-4.3-1">The Maximum H.Encaps MSD Type signals the maximum number of SIDs that
        can be added to the segment list of an SRH as part of the "H.Encaps" 
        behavior, as defined in <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>.</t>
        <t indent="3" pn="section-4.3-2">SRH Max H.encaps Type: 44</t>
        <t indent="3" pn="section-4.3-3">If the advertised value is zero or no value is advertised, then the
	headend can apply an SR Policy that only contains one segment without 
	inserting any SRH header.</t>
        <t indent="3" pn="section-4.3-4">A non-zero SRH Max H.encaps MSD indicates that the headend can insert
	an SRH up to the advertised number of SIDs.</t>
      </section>
      <section anchor="MAXENDD" numbered="true" toc="include" removeInRFC="false" pn="section-4.4">
        <name slugifiedName="name-maximum-end-d-msd-type">Maximum End D MSD Type</name>
        <t indent="0" pn="section-4.4-1">The Maximum End D MSD Type specifies the maximum number of SIDs present 
        in an SRH when performing decapsulation. As specified in <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>,
        the permitted SID types include, but are not limited to, End.DX6, End.DT4, 
        End.DT46, End with USD, and End.X with USD.</t>
        <t indent="3" pn="section-4.4-2">SRH Max End D Type: 45</t>
        <t indent="3" pn="section-4.4-3">If the advertised value is zero or no value is advertised,
	then the router cannot apply any behavior that results in 
	decapsulation and forwarding of the inner packet if the 
	outer IPv6 header contains an SRH.</t>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-srv6-sids-and-reachability">SRv6 SIDs and Reachability</name>
      <t indent="0" pn="section-5-1">As discussed in <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>, an SRv6 Segment
      Identifier (SID) is 128 bits and consists of locator, function, and argument parts.</t>
      <t indent="0" pn="section-5-2">A node is provisioned with topology-/algorithm-specific locators for
      each of the topology/algorithm pairs supported by that node. Each
      locator is a covering prefix for all SIDs provisioned on that node that
      have the matching topology/algorithm.</t>
      <t indent="0" pn="section-5-3">Locators <bcp14>MUST</bcp14> be advertised in the SRv6 Locator TLV (see <xref target="LOCTLV" format="default" sectionFormat="of" derivedContent="Section 7.1"/>). 
      Forwarding entries for the locators advertised in the SRv6 Locator
      TLV <bcp14>MUST</bcp14> be installed in the forwarding plane of receiving SRv6-capable
      routers when the associated topology/algorithm is supported by the
      receiving node. The processing of the prefix advertised in the SRv6 Locator TLV,
      the calculation of its reachability, and the installation in the forwarding plane
      follows the process defined for the Prefix Reachability TLV 236 
      <xref target="RFC5308" format="default" sectionFormat="of" derivedContent="RFC5308"/> or TLV 237 <xref target="RFC5120" format="default" sectionFormat="of" derivedContent="RFC5120"/>.</t>
      <t indent="0" pn="section-5-4">Locators associated with algorithms 0 and 1 (for all supported topologies)
      <bcp14>SHOULD</bcp14> also be advertised in a Prefix Reachability TLV (236 or 237) so that
      legacy routers (i.e., routers that do not support SRv6) will install a
      forwarding entry for algorithms 0 and 1 SRv6 traffic.</t>
      <t indent="0" pn="section-5-5">In cases where the same prefix with the same prefix length, Multi-Topology Identifier
      (MTID),  and algorithm is received in both a Prefix Reachability TLV and an SRv6
      Locator TLV, the Prefix Reachability advertisement <bcp14>MUST</bcp14> be preferred when installing 
      entries in the forwarding plane. This is to prevent inconsistent forwarding entries 
      between SRv6-capable and SRv6-incapable routers. Such preference of Prefix Reachability 
      advertisement does not have any impact on the rest of the data advertised in the 
      SRv6 Locator TLV.</t>
      <t indent="0" pn="section-5-6">Locators associated with Flexible Algorithms (see <xref target="RFC9350" section="4" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc9350#section-4" derivedContent="RFC9350"/>) <bcp14>SHOULD NOT</bcp14> be advertised 
      in Prefix Reachability TLVs (236 or 237). Advertising the Flexible 
      Algorithm locator in a regular Prefix Reachability TLV (236 or 237) would make 
      the forwarding for it follow the algorithm 0 path.</t>
      <t indent="0" pn="section-5-7">SRv6 SIDs are advertised as sub-TLVs in the SRv6 Locator TLV, except
      for SRv6 SIDs that are associated with a specific
      neighbor/link and are therefore advertised as sub-TLVs in TLVs 22, 23,
      25, 141, 222, and 223.</t>
      <t indent="0" pn="section-5-8">SRv6 SIDs received from other nodes are not directly routable and <bcp14>MUST NOT</bcp14> 
      be installed in the forwarding plane. Reachability to SRv6 SIDs depends upon the existence
      of a covering locator.</t>
      <t indent="0" pn="section-5-9">Adherence to the rules defined in this section will ensure that SRv6
      SIDs associated with a supported topology/algorithm pair will be
      forwarded correctly, while SRv6 SIDs associated with an unsupported
      topology/algorithm pair will be dropped. NOTE: The drop behavior depends
      on the absence of a default/summary route covering a given locator.</t>
      <t indent="0" pn="section-5-10">In order for forwarding to work correctly, the locator associated
      with SRv6 SID advertisements must be the longest match prefix installed
      in the forwarding plane for those SIDs. In order to ensure correct forwarding, 
      network operators should take steps to make sure that this requirement is not 
      compromised. For example, the following situations should be avoided:</t>
      <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-5-11">
        <li pn="section-5-11.1">Another locator associated with a different topology/algorithm is
          the longest match.</li>
        <li pn="section-5-11.2">Another prefix advertisement (i.e., from TLV 236 or 237) is the longest
          match.</li>
      </ul>
    </section>
    <section anchor="ANYCASTFLAG" numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-advertising-anycast-propert">Advertising Anycast Property</name>
      <t indent="0" pn="section-6-1">Both prefixes and SRv6 Locators may be configured as anycast; as such, the 
      same value can be advertised by multiple routers.  It is useful for other routers 
      to know that the	advertisement is for an anycast identifier.</t>
      <t indent="0" pn="section-6-2">A new flag in the Prefix Attribute Flags sub-TLV <xref target="RFC7794" format="default" sectionFormat="of" derivedContent="RFC7794"/> is
      defined to advertise the anycast property:</t>
      <dl newline="false" spacing="compact" indent="3" pn="section-6-3">
        <dt pn="section-6-3.1">Bit #:</dt>
        <dd pn="section-6-3.2">4</dd>
        <dt pn="section-6-3.3">Name:</dt>
        <dd pn="section-6-3.4">Anycast Flag (A-flag)</dd>
      </dl>
      <t indent="0" pn="section-6-4">When the prefix/SRv6 Locator is configured as anycast, the A-flag
	<bcp14>SHOULD</bcp14> be set. Otherwise, this flag <bcp14>MUST</bcp14> be clear.</t>
      <t indent="0" pn="section-6-5">The A-flag <bcp14>MUST</bcp14> be preserved when the advertisement is leaked between levels.</t>
      <t indent="0" pn="section-6-6">The A-flag and the N-flag <bcp14>MUST NOT</bcp14> both be set. If both the N-flag and the A-flag are 
      set in the prefix/SRv6 Locator advertisement, the receiving routers <bcp14>MUST</bcp14> ignore 
      the N-flag.</t>
      <t indent="0" pn="section-6-7">The same prefix/SRv6 Locator can be advertised by multiple routers. If at least 
      one of them sets the A-flag in its advertisement, the prefix/SRv6 Locator <bcp14>SHOULD</bcp14> be 
      considered as anycast.</t>
      <t indent="0" pn="section-6-8">A prefix/SRv6 Locator that is advertised by a single node and without
      an A-flag <bcp14>MUST</bcp14> be considered node specific.</t>
      <t indent="0" pn="section-6-9">All the nodes advertising the same anycast locator <bcp14>MUST</bcp14> instantiate the 
      exact same set of SIDs under that anycast locator. Failure to do so may result in 
      traffic being dropped or misrouted.</t>
      <t indent="0" pn="section-6-10">The Prefix Attribute Flags sub-TLV can be carried in the SRv6 
      Locator TLV as well as the Prefix Reachability TLVs. When a router originates
      both the Prefix Reachability TLV and the SRv6 Locator TLV for a given
      prefix, it <bcp14>SHOULD</bcp14> advertise the Prefix Attribute Flags sub-TLV, if used, in both TLVs and use the same flags. However, unlike TLVs 236 
      <xref target="RFC5308" format="default" sectionFormat="of" derivedContent="RFC5308"/> and 237 <xref target="RFC5120" format="default" sectionFormat="of" derivedContent="RFC5120"/>,
      the X-flag in the Prefix Attributes Flags sub-TLV is valid when sent in the SRv6 
      Locator TLV. When included in the Locator TLV, the state of the X-flag in the Prefix Attributes
      Flags sub-TLV <bcp14>MUST</bcp14> match the setting of the embedded "X-bit" in any 
      advertisement for the same prefix in TLVs 236 <xref target="RFC5308" format="default" sectionFormat="of" derivedContent="RFC5308"/> and 237 
      <xref target="RFC5120" format="default" sectionFormat="of" derivedContent="RFC5120"/>. In case of any inconsistency between the Prefix Attribute 
      Flags advertised in the Locator TLV and in the Prefix Reachability TLV, the ones 
      advertised in the Prefix Reachability TLV <bcp14>MUST</bcp14> be preferred.</t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-advertising-locators-and-en">Advertising Locators and End SIDs</name>
      <t indent="0" pn="section-7-1">The SRv6 Locator TLV is introduced to advertise SRv6 Locators and End
      SIDs associated with each locator.</t>
      <t indent="0" pn="section-7-2">This new TLV shares the sub-TLV space defined for TLVs 135, 235, 236,
      and 237.</t>
      <section anchor="LOCTLV" numbered="true" toc="include" removeInRFC="false" pn="section-7.1">
        <name slugifiedName="name-srv6-locator-tlv-format">SRv6 Locator TLV Format</name>
        <t indent="0" pn="section-7.1-1">The SRv6 Locator TLV has the following format:

        </t>
        <artwork name="" type="" align="left" alt="" pn="section-7.1-2">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Type        |     Length    |R|R|R|R|    MTID               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                   Locator Entries . . .                       |
   </artwork>
        <dl newline="false" spacing="normal" indent="3" pn="section-7.1-3">
          <dt pn="section-7.1-3.1">Type:</dt>
          <dd pn="section-7.1-3.2">27. Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.</dd>
          <dt pn="section-7.1-3.3">Length:</dt>
          <dd pn="section-7.1-3.4">Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.
	  The length value is variable.</dd>
          <dt pn="section-7.1-3.5">R Bits:</dt>
          <dd pn="section-7.1-3.6">Reserved for future use. They <bcp14>MUST</bcp14> be
	  set to zero on transmission and <bcp14>MUST</bcp14> be ignored on receipt.</dd>
          <dt pn="section-7.1-3.7">MTID:</dt>
          <dd pn="section-7.1-3.8">Multi-Topology Identifier, as defined in <xref target="RFC5120" format="default" sectionFormat="of" derivedContent="RFC5120"/>.
	  Note that the value 0 is legal.</dd>
        </dl>
        <t indent="0" pn="section-7.1-4">The SRv6 Locator TLV is followed by one or more locator entries of the form:</t>
        <artwork name="" type="" align="left" alt="" pn="section-7.1-5">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          Metric                               | 
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Flags       |  Algorithm    |  Loc Size     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//              Locator (continued, variable)                  //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Sub-TLV-len  |         Sub-TLVs (variable) . . .             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
        <dl newline="false" spacing="normal" indent="3" pn="section-7.1-6">
          <dt pn="section-7.1-6.1">Metric:</dt>
          <dd pn="section-7.1-6.2">4 octets, as described in <xref target="RFC5305" section="4" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5305#section-4" derivedContent="RFC5305"/>.</dd>
          <dt pn="section-7.1-6.3">Flags:</dt>
          <dd pn="section-7.1-6.4">
            <t indent="0" pn="section-7.1-6.4.1">1 octet. The following flags are defined:</t>
            <artwork name="" type="" align="left" alt="" pn="section-7.1-6.4.2">
 0
 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|D|    Reserved |
+-+-+-+-+-+-+-+-+
</artwork>
            <dl newline="false" spacing="normal" indent="3" pn="section-7.1-6.4.3">
              <dt pn="section-7.1-6.4.3.1"/>
              <dd pn="section-7.1-6.4.3.2">D-flag: "up/down bit" as described in
	      <xref target="RFC5305" sectionFormat="of" section="4.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5305#section-4.1" derivedContent="RFC5305"/>.</dd>
              <dt pn="section-7.1-6.4.3.3"/>
              <dd pn="section-7.1-6.4.3.4">The remaining bits are reserved for future use. They <bcp14>MUST</bcp14> be
             set to zero on transmission and <bcp14>MUST</bcp14> be ignored on receipt.</dd>
            </dl>
          </dd>
          <dt pn="section-7.1-6.5">Algorithm:</dt>
          <dd pn="section-7.1-6.6">1 octet, as defined in the "IGP Algorithm Types" registry <xref target="RFC8665" format="default" sectionFormat="of" derivedContent="RFC8665"/>.</dd>
          <dt pn="section-7.1-6.7">Loc-Size:</dt>
          <dd pn="section-7.1-6.8">1 octet. Number of bits in the SRv6 Locator field, which 
	  <bcp14>MUST</bcp14> be from the range (1-128). The entire TLV <bcp14>MUST</bcp14> be ignored
	  if the Loc-Size is outside this range.</dd>
          <dt pn="section-7.1-6.9">Locator:</dt>
          <dd pn="section-7.1-6.10">1-16 octets. This field encodes the advertised SRv6
	  Locator. The SRv6 Locator is encoded in the minimal number of
	  octets for the given number of bits. Trailing bits <bcp14>MUST</bcp14> be set
	  to zero and ignored when received.</dd>
          <dt pn="section-7.1-6.11">Sub-TLV-length:</dt>
          <dd pn="section-7.1-6.12">1 octet. Number of octets used by sub-TLVs.</dd>
          <dt pn="section-7.1-6.13">Optional Sub-TLVs:</dt>
          <dd pn="section-7.1-6.14">Supported sub-TLVs are specified in <xref target="REVISEDREG" format="default" sectionFormat="of" derivedContent="Section 11.1.2"/>. 
	  Any sub-TLV that is not allowed in the SRv6 Locator TLV <bcp14>MUST</bcp14> be
	  ignored.</dd>
        </dl>
        <t indent="0" pn="section-7.1-7">The Prefix Attribute Flags sub-TLV <xref target="RFC7794" format="default" sectionFormat="of" derivedContent="RFC7794"/>
          <bcp14>SHOULD</bcp14> be included in  the Locator TLV.</t>
        <t indent="0" pn="section-7.1-8">The Prefix Attribute Flags sub-TLV <bcp14>MUST</bcp14> be included in the Locator
	TLV when it is leaked upwards in the hierarchy or originated as a result of the
	redistribution from another protocol or another IS-IS instance. If the Prefix Attribute
	Flags sub-TLV is not included in these cases, receivers will be unable to determine the
	correct source of the advertisement. The receivers will be unable to detect the
	violation.</t>
      </section>
      <section anchor="ENDTLV" numbered="true" toc="include" removeInRFC="false" pn="section-7.2">
        <name slugifiedName="name-srv6-end-sid-sub-tlv">SRv6 End SID Sub-TLV</name>
        <t indent="0" pn="section-7.2-1">The SRv6 End SID sub-TLV is introduced to advertise SRv6 SIDs with Endpoint behaviors that do not require a
        particular neighbor in order to be correctly applied. 
        SRv6 SIDs associated with a neighbor are advertised using the sub-TLVs defined
        in <xref target="ADJSID" format="default" sectionFormat="of" derivedContent="Section 8"/>.</t>
        <t indent="0" pn="section-7.2-2">Supported behavior values, together with parent TLVs in which they are 
        advertised, are specified in <xref target="ENDBEH" format="default" sectionFormat="of" derivedContent="Section 10"/> of this document. Please note
	that not all behaviors defined in <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/> 
        are defined in this document, e.g., End.T is not.</t>
        <t indent="0" pn="section-7.2-3">This new sub-TLV is advertised in the SRv6 Locator TLV defined in
        the previous section. SRv6 End SIDs inherit the topology/algorithm
        from the parent locator.</t>
        <t indent="0" pn="section-7.2-4">The SRv6 End SID sub-TLV has the following format:</t>
        <artwork name="" type="" align="left" alt="" pn="section-7.2-5">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Type       |     Length    |    Flags      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Endpoint Behavior       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (128 bits) . . .                                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Sub-sub-TLV-len|         Sub-sub-TLVs (variable) . . .         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       </artwork>
        <dl newline="false" spacing="normal" indent="3" pn="section-7.2-6">
          <dt pn="section-7.2-6.1">Type:</dt>
          <dd pn="section-7.2-6.2">5. Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.</dd>
          <dt pn="section-7.2-6.3">Length:</dt>
          <dd pn="section-7.2-6.4">Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.
	  The length value is variable.</dd>
          <dt pn="section-7.2-6.5">Flags:</dt>
          <dd pn="section-7.2-6.6">1 octet. No flags are currently defined. All bits are reserved for future 
	  use. They <bcp14>MUST</bcp14> be  set to zero on transmission and <bcp14>MUST</bcp14> be
	  ignored on receipt.</dd>
          <dt pn="section-7.2-6.7">Endpoint Behavior:</dt>
          <dd pn="section-7.2-6.8">2 octets, as defined in <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>.      
          Supported behavior values for this sub-TLV are defined in <xref target="ENDBEH" format="default" sectionFormat="of" derivedContent="Section 10"/> of this document. Unsupported or unrecognized behavior values are
	  ignored by the receiver.</dd>
          <dt pn="section-7.2-6.9">SID:</dt>
          <dd pn="section-7.2-6.10">16 octets. This field encodes the advertised SRv6 SID.</dd>
          <dt pn="section-7.2-6.11">Sub-sub-TLV-length:</dt>
          <dd pn="section-7.2-6.12">1 octet. Number of octets used by sub-sub-TLVs.</dd>
          <dt pn="section-7.2-6.13">Optional Sub-sub-TLVs:</dt>
          <dd pn="section-7.2-6.14">Supported sub-sub-TLVs are specified in 
	  <xref target="SUBTLVREGISTRY" format="default" sectionFormat="of" derivedContent="Section 11.6"/>. Any sub-sub-TLV that is not allowed in the
	  SRv6 End SID sub-TLV <bcp14>MUST</bcp14> be ignored.</dd>
        </dl>
        <t indent="0" pn="section-7.2-7">The SRv6 End SID <bcp14>MUST</bcp14> be allocated from its associated locator. 
        SRv6 End SIDs that are not allocated from the associated 
        locator <bcp14>MUST</bcp14> be ignored.</t>
        <t indent="0" pn="section-7.2-8">Multiple SRv6 End SIDs <bcp14>MAY</bcp14> be associated with the same locator. In
        cases where the number of SRv6 End SID sub-TLVs exceeds the capacity
        of a single TLV, multiple Locator TLVs for the same locator <bcp14>MAY</bcp14> be
        advertised. For a given MTID/Locator, the algorithm <bcp14>MUST</bcp14> be the same in
        all TLVs. If this restriction is not met, all TLVs for that
        MTID/Locator <bcp14>MUST</bcp14> be ignored.</t>
      </section>
    </section>
    <section anchor="ADJSID" numbered="true" toc="include" removeInRFC="false" pn="section-8">
      <name slugifiedName="name-advertising-srv6-adjacency-">Advertising SRv6 Adjacency SIDs</name>
      <t indent="0" pn="section-8-1">Certain SRv6 Endpoint behaviors <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/> are
      associated with a particular adjacency.</t>
      <t indent="0" pn="section-8-2">This document defines two new sub-TLVs of TLVs 22, 23, 25, 141, 222, and 223
       -- namely "SRv6 End.X SID sub-TLVs" and "SRv6 LAN End.X SID sub-TLVs".</t>
      <t indent="0" pn="section-8-3">IS-IS neighbor advertisements are topology specific but not
      algorithm specific. SIDs advertised in SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs 
      therefore inherit the topology from the associated neighbor advertisement, but 
      the algorithm is specified in the individual SID.</t>
      <t indent="0" pn="section-8-4">All SIDs advertised in SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs <bcp14>MUST</bcp14> 
      be a subnet of a Locator with  matching topology and algorithm that are advertised 
      by the same node in an SRv6 Locator TLV. SIDs that do not meet this 
      requirement <bcp14>MUST</bcp14> be ignored. This ensures that the node advertising
      these SIDs is also advertising its corresponding Locator with the algorithm 
      that will be used for computing paths destined to the SID.</t>
      <section anchor="ENDXTLV" numbered="true" toc="include" removeInRFC="false" pn="section-8.1">
        <name slugifiedName="name-srv6-endx-sid-sub-tlv">SRv6 End.X SID Sub-TLV</name>
        <t indent="0" pn="section-8.1-1">This sub-TLV is used to advertise an SRv6 SID associated with a
        point-to-point adjacency. Multiple SRv6 End.X SID sub-TLVs <bcp14>MAY</bcp14> be
        associated with the same adjacency.</t>
        <t indent="0" pn="section-8.1-2">The SRv6 End.X SID sub-TLV has the following format:

        </t>
        <artwork name="" type="" align="left" alt="" pn="section-8.1-3">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Type        |     Length    |   Flags       |   Algorithm   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Weight      |        Endpoint Behavior      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (128 bits) . . .                                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Sub-sub-tlv-len|         Sub-sub-TLVs (variable) . . .         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      </artwork>
        <dl newline="false" spacing="normal" indent="3" pn="section-8.1-4">
          <dt pn="section-8.1-4.1">Type: 43.</dt>
          <dd pn="section-8.1-4.2">Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.</dd>
          <dt pn="section-8.1-4.3">Length:</dt>
          <dd pn="section-8.1-4.4">Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.
	  The length value is variable.</dd>
          <dt pn="section-8.1-4.5">Flags:</dt>
          <dd pn="section-8.1-4.6">
            <t indent="0" pn="section-8.1-4.6.1">1 octet.</t>
            <artwork name="" type="" align="left" alt="" pn="section-8.1-4.6.2">
 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|B|S|P|Reserved |
+-+-+-+-+-+-+-+-+
</artwork>
            <dl newline="true" spacing="normal" indent="3" pn="section-8.1-4.6.3">
              <dt pn="section-8.1-4.6.3.1">where:</dt>
              <dd pn="section-8.1-4.6.3.2">
                <dl newline="false" spacing="normal" indent="3" pn="section-8.1-4.6.3.2.1">
                  <dt pn="section-8.1-4.6.3.2.1.1">B-Flag:</dt>
                  <dd pn="section-8.1-4.6.3.2.1.2">Backup flag.  If set, the SID is eligible
              for protection, e.g., using IP Fast Reroute (IPFRR) <xref target="RFC5286" format="default" sectionFormat="of" derivedContent="RFC5286"/>, as described in <xref target="RFC8355" format="default" sectionFormat="of" derivedContent="RFC8355"/>.</dd>
                  <dt pn="section-8.1-4.6.3.2.1.3">S-Flag:</dt>
                  <dd pn="section-8.1-4.6.3.2.1.4">Set flag.  When set, the S-flag indicates that the
              SID refers to a set of adjacencies (and therefore 
              <bcp14>MAY</bcp14> be assigned to other adjacencies as well).</dd>
                  <dt pn="section-8.1-4.6.3.2.1.5">P-Flag:</dt>
                  <dd pn="section-8.1-4.6.3.2.1.6">Persistent flag.  When set, the P-flag indicates that
              the SID is persistently allocated, i.e., the 
              SID value remains consistent across router restart 
              and/or interface flap.</dd>
                  <dt pn="section-8.1-4.6.3.2.1.7">Reserved bits:</dt>
                  <dd pn="section-8.1-4.6.3.2.1.8">Reserved bits <bcp14>MUST</bcp14> be zero when originated and
	      <bcp14>MUST</bcp14> be ignored when received.</dd>
                </dl>
              </dd>
            </dl>
          </dd>
          <dt pn="section-8.1-4.7">Algorithm:</dt>
          <dd pn="section-8.1-4.8">1 octet, as defined in the "IGP Algorithm Types" registry <xref target="RFC8665" format="default" sectionFormat="of" derivedContent="RFC8665"/>.</dd>
          <dt pn="section-8.1-4.9">Weight:</dt>
          <dd pn="section-8.1-4.10">1 octet.  The value represents the weight of the
	  SID for the purpose of load balancing.  The use 
	  of the weight is defined in [RFC8402].</dd>
          <dt pn="section-8.1-4.11">Endpoint Behavior:</dt>
          <dd pn="section-8.1-4.12">2 octets, as defined in  <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>.
	  Supported behavior values for this sub-TLV are defined in <xref target="ENDBEH" format="default" sectionFormat="of" derivedContent="Section 10"/> 
          of this document. Unsupported or unrecognized behavior values are ignored 
          by the receiver.</dd>
          <dt pn="section-8.1-4.13">SID:</dt>
          <dd pn="section-8.1-4.14">16 octets. This field encodes the advertised SRv6 SID.</dd>
          <dt pn="section-8.1-4.15">Sub-sub-TLV-length:</dt>
          <dd pn="section-8.1-4.16">1 octet. Number of octets used by sub-sub- TLVs.</dd>
          <dt pn="section-8.1-4.17">Optional Sub-sub-TLVs:</dt>
          <dd pn="section-8.1-4.18">Supported sub-sub-TLVs are specified in 
	  <xref target="SUBTLVREGISTRY" format="default" sectionFormat="of" derivedContent="Section 11.6"/>. Any sub-sub-TLV that is not allowed in
	  SRv6 End.X SID sub-TLV <bcp14>MUST</bcp14> be ignored.</dd>
        </dl>
        <t indent="0" pn="section-8.1-5">Note that multiple TLVs for the same neighbor may be
    required in order to advertise all the SRv6 SIDs associated
     with that neighbor.</t>
      </section>
      <section anchor="LANENDXTLV" numbered="true" toc="include" removeInRFC="false" pn="section-8.2">
        <name slugifiedName="name-srv6-lan-endx-sid-sub-tlv">SRv6 LAN End.X SID Sub-TLV</name>
        <t indent="0" pn="section-8.2-1">This sub-TLV is used to advertise an SRv6 SID associated with a LAN
        adjacency. Since the parent TLV is advertising an adjacency to the
        Designated Intermediate System (DIS) for the LAN, it is necessary to
        include the System-ID of the physical neighbor on the LAN with which
        the SRv6 SID is associated. Given that many neighbors may
        exist on a given LAN, multiple SRv6 LAN END.X SID sub-TLVs may
        be associated with the same LAN. Note that multiple TLVs for the same
        DIS neighbor may be required in order to advertise all the SRv6
        SIDs associated with that neighbor.</t>
        <t indent="0" pn="section-8.2-2">The SRv6 LAN End.X SID sub-TLV has the following format:</t>
        <artwork name="" type="" align="left" alt="" pn="section-8.2-3">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Type        |     Length    |                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
|             Neighbor System-ID (ID length octets)             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Flags       |   Algorithm   |   Weight      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Endpoint Behavior       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (128 bits) . . .                                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SID (cont . . .)                                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Sub-sub-TLV-len|      Sub-sub-TLVs (variable) . . .            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      </artwork>
        <dl newline="false" spacing="normal" indent="3" pn="section-8.2-4">
          <dt pn="section-8.2-4.1">Type:</dt>
          <dd pn="section-8.2-4.2">44. Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.</dd>
          <dt pn="section-8.2-4.3">Length:</dt>
          <dd pn="section-8.2-4.4">Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.
	  The length value is variable.</dd>
          <dt pn="section-8.2-4.5">Neighbor System-ID:</dt>
          <dd pn="section-8.2-4.6">IS-IS System-ID of length "ID Length", as defined in <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.</dd>
          <dt pn="section-8.2-4.7">Flags:</dt>
          <dd pn="section-8.2-4.8">
            <t indent="0" pn="section-8.2-4.8.1">1 octet.</t>
            <artwork name="" type="" align="left" alt="" pn="section-8.2-4.8.2">
 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|B|S|P|Reserved |
+-+-+-+-+-+-+-+-+
</artwork>
            <t indent="0" pn="section-8.2-4.8.3">The B-, S-, and P-flags are as described in <xref target="ENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.1"/>. Reserved bits <bcp14>MUST</bcp14> be zero when originated and
	    <bcp14>MUST</bcp14> be ignored when received.</t>
          </dd>
          <dt pn="section-8.2-4.9">Algorithm:</dt>
          <dd pn="section-8.2-4.10">1 octet, as defined in the "IGP Algorithm Types" registry <xref target="RFC8665" format="default" sectionFormat="of" derivedContent="RFC8665"/>.</dd>
          <dt pn="section-8.2-4.11">Weight:</dt>
          <dd pn="section-8.2-4.12">1 octet.  The value represents the weight of the
	  SID for the purpose of load balancing.  The use 
	  of the weight is defined in [RFC8402].</dd>
          <dt pn="section-8.2-4.13">Endpoint Behavior:</dt>
          <dd pn="section-8.2-4.14">2 octets, as defined in <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>.
	  Supported behavior values for this sub-TLV are defined in <xref target="ENDBEH" format="default" sectionFormat="of" derivedContent="Section 10"/> of this document. Unsupported or unrecognized behavior values are
	  ignored by the receiver.</dd>
          <dt pn="section-8.2-4.15">SID:</dt>
          <dd pn="section-8.2-4.16">16 octets. This field encodes the advertised SRv6 SID.</dd>
          <dt pn="section-8.2-4.17">Sub-sub-TLV-length:</dt>
          <dd pn="section-8.2-4.18">1 octet. Number of octets used by sub-sub- TLVs.</dd>
          <dt pn="section-8.2-4.19">Optional Sub-sub-TLVs:</dt>
          <dd pn="section-8.2-4.20">Supported sub-sub-TLVs are specified in 
	  <xref target="SUBTLVREGISTRY" format="default" sectionFormat="of" derivedContent="Section 11.6"/>. Any sub-sub-TLV that is not allowed in
	  SRv6 LAN End.X SID sub-TLV <bcp14>MUST</bcp14> be ignored.</dd>
        </dl>
        <t indent="0" pn="section-8.2-5">Note that multiple TLVs for the same neighbor, on the same LAN, may be
    required in order to advertise all the SRv6 SIDs associated
     with that neighbor.</t>
      </section>
    </section>
    <section anchor="STRUCTTLV" numbered="true" toc="include" removeInRFC="false" pn="section-9">
      <name slugifiedName="name-srv6-sid-structure-sub-sub-">SRv6 SID Structure Sub-Sub-TLV</name>
      <t indent="0" pn="section-9-1">The SRv6 SID Structure sub-sub-TLV is an optional sub-sub-TLV of:</t>
      <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-9-2">
        <li pn="section-9-2.1">SRv6 End SID sub-TLV (<xref target="ENDTLV" format="default" sectionFormat="of" derivedContent="Section 7.2"/>)</li>
        <li pn="section-9-2.2">SRv6 End.X SID sub-TLV (<xref target="ENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.1"/>)</li>
        <li pn="section-9-2.3">SRv6 LAN End.X SID sub-TLV (<xref target="LANENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.2"/>)</li>
      </ul>
      <t indent="0" pn="section-9-3">The SRv6 SID Structure sub-sub-TLV is used to advertise the structure of the SRv6 SID,
      as defined in <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>. It has the following format:</t>
      <artwork name="" type="" align="left" alt="" pn="section-9-4">
 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      Type     |    Length     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    LB Length  |  LN Length    | Fun. Length   |  Arg. Length  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
      <dl newline="true" spacing="normal" indent="3" pn="section-9-5">
        <dt pn="section-9-5.1">where:</dt>
        <dd pn="section-9-5.2">
          <dl newline="false" spacing="normal" indent="3" pn="section-9-5.2.1">
            <dt pn="section-9-5.2.1.1">Type:</dt>
            <dd pn="section-9-5.2.1.2">1. Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.</dd>
            <dt pn="section-9-5.2.1.3">Length:</dt>
            <dd pn="section-9-5.2.1.4">Single octet, as defined in Section 9 of <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>.
	The length value is 4 octets.</dd>
            <dt pn="section-9-5.2.1.5">LB Length:</dt>
            <dd pn="section-9-5.2.1.6">1 octet. SRv6 SID Locator Block length in bits.</dd>
            <dt pn="section-9-5.2.1.7">LN Length:</dt>
            <dd pn="section-9-5.2.1.8">1 octet. SRv6 SID Locator Node length in bits.</dd>
            <dt pn="section-9-5.2.1.9">Fun. Length:</dt>
            <dd pn="section-9-5.2.1.10">1 octet. SRv6 SID Function length in bits.</dd>
            <dt pn="section-9-5.2.1.11">Arg. Length:</dt>
            <dd pn="section-9-5.2.1.12">1 octet. SRv6 SID Arguments length in bits.</dd>
          </dl>
        </dd>
      </dl>
      <t indent="0" pn="section-9-6">The IS-IS SRv6 SID Structure sub-sub-TLV <bcp14>MUST NOT</bcp14> appear more than once in its parent
      sub-TLV. If it appears more than once in its parent sub-TLV, the parent sub-TLV <bcp14>MUST</bcp14> be
      ignored by the receiver.</t>
      <t indent="0" pn="section-9-7">The sum of all four sizes advertised in the IS-IS SRv6 SID Structure sub-sub-TLV <bcp14>MUST</bcp14>
      be less than or equal to 128 bits. If the sum of all four sizes advertised in the IS-IS SRv6 
      SID Structure sub-sub-TLV is larger than 128 bits, the parent sub-TLV <bcp14>MUST</bcp14> be ignored
      by the receiver.</t>
      <t indent="0" pn="section-9-8">The SRv6 SID Structure sub-sub-TLV is intended for informational use by the control and
      management planes. It <bcp14>MUST NOT</bcp14> be used at a transit node (as defined in 
      <xref target="RFC8754" format="default" sectionFormat="of" derivedContent="RFC8754"/>) for forwarding packets. As an example, this information
      could be used for the following:</t>
      <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-9-9">
        <li pn="section-9-9.1">validation of SRv6 SIDs being instantiated in the network and
	advertised via IS-IS. These can be learned by controllers via Border Gateway Protocol - Link
	State (BGP-LS) and then be 
	monitored for conformance to the SRv6 SID allocation scheme chosen by the operator,
	as described in <xref target="RFC8986" section="3.2" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8986#section-3.2" derivedContent="RFC8986"/>.</li>
        <li pn="section-9-9.2">verification and automation for securing the SRv6 domain by
	  provisioning filtering rules at SR domain boundaries, as described
	  in <xref target="RFC8754" section="5" sectionFormat="of" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8754#section-5" derivedContent="RFC8754"/>.</li>
      </ul>
      <t indent="0" pn="section-9-10">The details of these potential applications are outside the scope of
    this document.</t>
    </section>
    <section anchor="ENDBEH" numbered="true" toc="include" removeInRFC="false" pn="section-10">
      <name slugifiedName="name-advertising-endpoint-behavi">Advertising Endpoint Behaviors</name>
      <t indent="0" pn="section-10-1">Endpoint behaviors are defined in 
      <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>. The codepoints for the 
      Endpoint behaviors are defined in the "SRv6 Endpoint Behaviors" registry defined in
      <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>. If a behavior is advertised, it
      <bcp14>MUST</bcp14> only be advertised in the 
      TLV(s) marked with "Y" in the table below and <bcp14>MUST NOT</bcp14> be advertised in the 
      TLV(s) marked with "N" in the table below.</t>
      <table align="center" pn="table-1">
        <name slugifiedName="name-endpoint-behaviors">Endpoint Behaviors</name>
        <thead>
          <tr>
            <th align="left" colspan="1" rowspan="1">Endpoint Behavior</th>
            <th align="left" colspan="1" rowspan="1">Endpoint Behavior Codepoint</th>
            <th align="left" colspan="1" rowspan="1">End SID</th>
            <th align="left" colspan="1" rowspan="1">End.X SID</th>
            <th align="left" colspan="1" rowspan="1">Lan End.X SID</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left" colspan="1" rowspan="1">End   (PSP, USP, USD)</td>
            <td align="left" colspan="1" rowspan="1">1-4, 28-31</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
            <td align="left" colspan="1" rowspan="1">N</td>
            <td align="left" colspan="1" rowspan="1">N</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">End.X (PSP, USP, USD)</td>
            <td align="left" colspan="1" rowspan="1">5-8, 32-35</td>
            <td align="left" colspan="1" rowspan="1">N</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">End.DX6</td>
            <td align="left" colspan="1" rowspan="1">16</td>
            <td align="left" colspan="1" rowspan="1">N</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">End.DX4</td>
            <td align="left" colspan="1" rowspan="1">17</td>
            <td align="left" colspan="1" rowspan="1">N</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">End.DT6</td>
            <td align="left" colspan="1" rowspan="1">18</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
            <td align="left" colspan="1" rowspan="1">N</td>
            <td align="left" colspan="1" rowspan="1">N</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">End.DT4</td>
            <td align="left" colspan="1" rowspan="1">19</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
            <td align="left" colspan="1" rowspan="1">N</td>
            <td align="left" colspan="1" rowspan="1">N</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">End.DT46</td>
            <td align="left" colspan="1" rowspan="1">20</td>
            <td align="left" colspan="1" rowspan="1">Y</td>
            <td align="left" colspan="1" rowspan="1">N</td>
            <td align="left" colspan="1" rowspan="1">N</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="IANA" numbered="true" toc="include" removeInRFC="false" pn="section-11">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-11-1">This document requests allocation for the following TLVs, sub-TLVs,
      and sub-sub-TLVs by updating the existing registries and defining
      new registries under the "IS-IS TLV Codepoints" grouping.</t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-11.1">
        <name slugifiedName="name-srv6-locator-tlv">SRv6 Locator TLV</name>
        <t indent="0" pn="section-11.1-1">The SRv6 Locator TLV shares sub-TLV space with TLVs advertising prefix
        reachability. IANA has updated the "IS-IS Sub-TLVs for TLVs Advertising
        Prefix Reachability" registry initially defined in <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/> by adding this document as a reference and updating the description of that registry to include the SRv6 Locator TLV (27).</t>
        <t indent="0" pn="section-11.1-2">This document makes the following registration in the "IS-IS Top-Level TLV Codepoints"
        registry:</t>
        <table align="center" pn="table-2">
          <name slugifiedName="name-is-is-top-level-tlv-codepoi">IS-IS Top-Level TLV Codepoints Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Name</th>
              <th align="left" colspan="1" rowspan="1">IIH</th>
              <th align="left" colspan="1" rowspan="1">LSP</th>
              <th align="left" colspan="1" rowspan="1">SNP</th>
              <th align="left" colspan="1" rowspan="1">Purge</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">27</td>
              <td align="left" colspan="1" rowspan="1">SRv6 Locator</td>
              <td align="left" colspan="1" rowspan="1">n</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">n</td>
              <td align="left" colspan="1" rowspan="1">n</td>
            </tr>
          </tbody>
        </table>
        <section numbered="true" toc="include" removeInRFC="false" pn="section-11.1.1">
          <name slugifiedName="name-srv6-end-sid-sub-tlv-2">SRv6 End SID Sub-TLV</name>
          <t indent="0" pn="section-11.1.1-1">This document makes the following registration:</t>
          <table align="center" pn="table-3">
            <name slugifiedName="name-is-is-sub-tlvs-for-tlvs-adv">IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability Registry</name>
            <thead>
              <tr>
                <th align="left" colspan="1" rowspan="1">Type</th>
                <th align="left" colspan="1" rowspan="1">Description</th>
                <th align="left" colspan="1" rowspan="1">27</th>
                <th align="left" colspan="1" rowspan="1">135</th>
                <th align="left" colspan="1" rowspan="1">235</th>
                <th align="left" colspan="1" rowspan="1">236</th>
                <th align="left" colspan="1" rowspan="1">237</th>
                <th align="left" colspan="1" rowspan="1">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" colspan="1" rowspan="1">5</td>
                <td align="left" colspan="1" rowspan="1">SRv6 End SID</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">n</td>
                <td align="left" colspan="1" rowspan="1">n</td>
                <td align="left" colspan="1" rowspan="1">n</td>
                <td align="left" colspan="1" rowspan="1">n</td>
                <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="ENDTLV" format="default" sectionFormat="of" derivedContent="Section 7.2"/></td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="REVISEDREG" numbered="true" toc="include" removeInRFC="false" pn="section-11.1.2">
          <name slugifiedName="name-is-is-sub-tlvs-for-tlvs-adve">IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability Registry</name>
          <t indent="0" pn="section-11.1.2-1">IANA has updated the "IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability" registry to include a column for the SRv6 Locator TLV (27) as shown below:</t>
          <table anchor="revised_sub-TLVs" align="center" pn="table-4">
            <name slugifiedName="name-is-is-sub-tlvs-for-tlvs-adver">IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability Registry</name>
            <thead>
              <tr>
                <th align="left" colspan="1" rowspan="1">Type</th>
                <th align="left" colspan="1" rowspan="1">Description</th>
                <th align="left" colspan="1" rowspan="1">27</th>
                <th align="left" colspan="1" rowspan="1">135</th>
                <th align="left" colspan="1" rowspan="1">235</th>
                <th align="left" colspan="1" rowspan="1">236</th>
                <th align="left" colspan="1" rowspan="1">237</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" colspan="1" rowspan="1">1</td>
                <td align="left" colspan="1" rowspan="1">32-bit Administrative Tag Sub-TLV</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
              <tr>
                <td align="left" colspan="1" rowspan="1">2</td>
                <td align="left" colspan="1" rowspan="1">64-bit Administrative Tag Sub-TLV</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
              <tr>
                <td align="left" colspan="1" rowspan="1">3</td>
                <td align="left" colspan="1" rowspan="1">Prefix Segment Identifier</td>
                <td align="left" colspan="1" rowspan="1">n</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
              <tr>
                <td align="left" colspan="1" rowspan="1">4</td>
                <td align="left" colspan="1" rowspan="1">Prefix Attribute Flags</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
              <tr>
                <td align="left" colspan="1" rowspan="1">6</td>
                <td align="left" colspan="1" rowspan="1">Flexible Algorithm Prefix Metric (FAPM)</td>
                <td align="left" colspan="1" rowspan="1">n</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
              <tr>
                <td align="left" colspan="1" rowspan="1">11</td>
                <td align="left" colspan="1" rowspan="1">IPv4 Source Router ID</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
              <tr>
                <td align="left" colspan="1" rowspan="1">12</td>
                <td align="left" colspan="1" rowspan="1">IPv6 Source Router ID</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
              <tr>
                <td align="left" colspan="1" rowspan="1">32</td>
                <td align="left" colspan="1" rowspan="1">BIER Info</td>
                <td align="left" colspan="1" rowspan="1">n</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
                <td align="left" colspan="1" rowspan="1">y</td>
              </tr>
            </tbody>
          </table>
        </section>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-11.2">
        <name slugifiedName="name-srv6-capabilities-sub-tlv-2">SRv6 Capabilities Sub-TLV</name>
        <t indent="0" pn="section-11.2-1">This document makes the following registration in the "IS-IS Sub-TLVs for IS-IS
        Router CAPABILITY TLV" registry:</t>
        <table align="center" pn="table-5">
          <name slugifiedName="name-is-is-sub-tlvs-for-is-is-ro">IS-IS Sub-TLVs for IS-IS Router CAPABILITY TLV Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">25</td>
              <td align="left" colspan="1" rowspan="1">SRv6 Capabilities</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="SRV6CAP" format="default" sectionFormat="of" derivedContent="Section 2"/></td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-11.3">
        <name slugifiedName="name-is-is-sub-sub-tlvs-for-the-">IS-IS Sub-Sub-TLVs for the SRv6 Capabilities Sub-TLV Registry</name>
        <t indent="0" pn="section-11.3-1">IANA has created the "IS-IS Sub-Sub-TLVs for SRv6 Capabilities Sub-TLV" registry under the
        "IS-IS TLV Codepoints" grouping for the assignment of sub-TLV
        types for the SRv6 Capabilities sub-TLV specified in this document (<xref target="SRV6CAP" format="default" sectionFormat="of" derivedContent="Section 2"/>). This registry defines sub-sub-TLVs for the SRv6	
	  Capabilities sub-TLV (25) advertised in the IS-IS Router	
	  CAPABILITY TLV (242).</t>
        <t indent="0" pn="section-11.3-2"> The registration procedure is "Expert Review", as defined in <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>. Guidance for the designated
	experts is provided in <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/>.
	No sub-sub-TLVs are defined by this document, except for	
	the reserved type 0.</t>
        <table align="center" pn="table-6">
          <name slugifiedName="name-is-is-sub-sub-tlvs-for-srv6">IS-IS Sub-Sub-TLVs for SRv6 Capabilities Sub-TLV Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0</td>
              <td align="left" colspan="1" rowspan="1">Reserved</td>
              <td align="left" colspan="1" rowspan="1">RFC 9532</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1-255</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
              <td align="left" colspan="1" rowspan="1"/>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-11.4">
        <name slugifiedName="name-srv6-endx-sid-and-srv6-lan-">SRv6 End.X SID and SRv6 LAN End.X SID Sub-TLVs</name>
        <t indent="0" pn="section-11.4-1">This document makes the following registrations in the
        "IS-IS Sub-TLVs for TLVs Advertising Neighbor Information" registry:</t>
        <table align="center" pn="table-7">
          <name slugifiedName="name-is-is-sub-tlvs-for-tlvs-advert">IS-IS Sub-TLVs for TLVs Advertising Neighbor Information Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Type</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">22</th>
              <th align="left" colspan="1" rowspan="1">23</th>
              <th align="left" colspan="1" rowspan="1">25</th>
              <th align="left" colspan="1" rowspan="1">141</th>
              <th align="left" colspan="1" rowspan="1">222</th>
              <th align="left" colspan="1" rowspan="1">223</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">43</td>
              <td align="left" colspan="1" rowspan="1">SRv6 End.X SID</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="ENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.1"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">44</td>
              <td align="left" colspan="1" rowspan="1">SRv6 LAN End.X SID</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="LANENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.2"/></td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-11.5">
        <name slugifiedName="name-msd-types">MSD Types</name>
        <t indent="0" pn="section-11.5-1">This document makes the following registrations in the "IGP MSD-Types" 
        registry:</t>
        <table align="center" pn="table-8">
          <name slugifiedName="name-igp-msd-types">IGP MSD-Types</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Name</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">41</td>
              <td align="left" colspan="1" rowspan="1">SRH Max SL</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">42</td>
              <td align="left" colspan="1" rowspan="1">SRH Max End Pop</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">44</td>
              <td align="left" colspan="1" rowspan="1">SRH Max H.encaps</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">45</td>
              <td align="left" colspan="1" rowspan="1">SRH Max End D</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="SUBTLVREGISTRY" numbered="true" toc="include" removeInRFC="false" pn="section-11.6">
        <name slugifiedName="name-is-is-sub-sub-tlvs-for-srv6-">IS-IS Sub-Sub-TLVs for SRv6 SID Sub-TLVs Registry</name>
        <t indent="0" pn="section-11.6-1">IANA has created the "IS-IS Sub-Sub-TLVs for SRv6 SID Sub-TLVs" registry under the
	"IS-IS TLV Codepoints" grouping to assign sub-TLV
	types for the SID sub-TLVs specified in this document (Sections
	<xref target="ENDTLV" format="counter" sectionFormat="of" derivedContent="7.2"/>, <xref target="ENDXTLV" format="counter" sectionFormat="of" derivedContent="8.1"/>, and <xref target="LANENDXTLV" format="counter" sectionFormat="of" derivedContent="8.2"/>). </t>
        <t indent="0" pn="section-11.6-2">
          This registry defines sub-sub-TLVs for SRv6 SID sub-TLVs. This includes the following sub-TLVs:</t>
        <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-11.6-3">
          <li pn="section-11.6-3.1">SRv6 End SID (5) (Advertised in SRv6 Locator TLV (27))</li>
          <li pn="section-11.6-3.2">SRv6 End.X SID (43) (Advertised in TLVs advertising neighbor	
	    information)</li>
          <li pn="section-11.6-3.3">SRv6 LAN End.X SID (44) (Advertised in TLVs advertising	
	    neighbor information)</li>
        </ul>
        <t indent="0" pn="section-11.6-4">The registration procedure is "Expert Review", as defined in <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>. Guidance for the designated experts is provided in <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/>. The following
	assignments are made by this document:</t>
        <table align="center" pn="table-9">
          <name slugifiedName="name-is-is-sub-sub-tlvs-for-srv6-s">IS-IS Sub-Sub-TLVs for SRv6 SID Sub-TLVs Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Type</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">5</th>
              <th align="left" colspan="1" rowspan="1">43</th>
              <th align="left" colspan="1" rowspan="1">44</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0</td>
              <td align="left" colspan="1" rowspan="1">Reserved</td>
              <td align="left" colspan="1" rowspan="1"/>
              <td align="left" colspan="1" rowspan="1"/>
              <td align="left" colspan="1" rowspan="1"/>
              <td align="left" colspan="1" rowspan="1">RFC 9352</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1</td>
              <td align="left" colspan="1" rowspan="1">SRv6 SID Structure</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">y</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">2-255</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
              <td align="left" colspan="1" rowspan="1"/>
              <td align="left" colspan="1" rowspan="1"/>
              <td align="left" colspan="1" rowspan="1"/>
              <td align="left" colspan="1" rowspan="1"/>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="ANYCASTBIT" numbered="true" toc="include" removeInRFC="false" pn="section-11.7">
        <name slugifiedName="name-prefix-attribute-flags-sub-">Prefix Attribute Flags Sub-TLV</name>
        <t indent="0" pn="section-11.7-1">This document adds a new bit in the "IS-IS Bit Values for Prefix Attribute Flags
	Sub-TLV" registry:</t>
        <table align="center" pn="table-10">
          <name slugifiedName="name-is-is-bit-values-for-prefix">IS-IS Bit Values for Prefix Attribute Flags Sub-TLV Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Bit #</th>
              <th align="left" colspan="1" rowspan="1">Name</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">4</td>
              <td align="left" colspan="1" rowspan="1">Anycast Flag (A-flag)</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="ANYCASTFLAG" format="default" sectionFormat="of" derivedContent="Section 6"/></td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="FLAGREGCAP" numbered="true" toc="include" removeInRFC="false" pn="section-11.8">
        <name slugifiedName="name-is-is-srv6-capabilities-sub">IS-IS SRv6 Capabilities Sub-TLV Flags Registry</name>
        <t indent="0" pn="section-11.8-1">IANA has created the "IS-IS SRv6 Capabilities Sub-TLV Flags" registry under the "IS-IS TLV 
	Codepoints" grouping to assign bits 0 to 15 in the Flags field of the 
	IS-IS SRv6 Capabilities sub-TLV specified in this document (<xref target="SRV6CAP" format="default" sectionFormat="of" derivedContent="Section 2"/>). This registry defines bit values advertised in the	
	  Flags field of the SRv6 Capabilities sub-TLV (25).  This sub-TLV	
	  is advertised in the IS-IS Router CAPABILITY TLV (242).
</t>
        <t indent="0" pn="section-11.8-2">The registration procedure is "Expert Review", as defined in	
	<xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>.  Guidance for the designated
	experts is provided in <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/>.
	The following assignments are made by this document:</t>
        <table align="center" pn="table-11">
          <name slugifiedName="name-is-is-srv6-capabilities-sub-">IS-IS SRv6 Capabilities Sub-TLV Flags Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Type</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
              <td align="left" colspan="1" rowspan="1"/>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1</td>
              <td align="left" colspan="1" rowspan="1">O-flag</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="SRV6CAP" format="default" sectionFormat="of" derivedContent="Section 2"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">2-15</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
              <td align="left" colspan="1" rowspan="1"/>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="FLAGREGLOC" numbered="true" toc="include" removeInRFC="false" pn="section-11.9">
        <name slugifiedName="name-is-is-srv6-locator-tlv-flag">IS-IS SRv6 Locator TLV Flags Registry</name>
        <t indent="0" pn="section-11.9-1">IANA has created the "IS-IS SRv6 Locator TLV Flags" registry under the "IS-IS TLV 
	Codepoints" grouping to assign bits 0 to 7 in the Flags field of the 
	SRv6 Locator TLV specified in this document (<xref target="LOCTLV" format="default" sectionFormat="of" derivedContent="Section 7.1"/>). This registry defines bit values advertised in the	
	  Flags field of the SRv6 Locator TLV (27).  </t>
        <t indent="0" pn="section-11.9-2">The registration procedure is "Expert Review", as defined in	
	<xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>. Guidance for the designated
	experts is provided in <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/>.  The following
	assignments are made by this document:</t>
        <table align="center" pn="table-12">
          <name slugifiedName="name-is-is-srv6-locator-tlv-flags">IS-IS SRv6 Locator TLV Flags Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0</td>
              <td align="left" colspan="1" rowspan="1">D-flag</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="LOCTLV" format="default" sectionFormat="of" derivedContent="Section 7.1"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1-7</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
              <td align="left" colspan="1" rowspan="1"/>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="FLAGREGEND" numbered="true" toc="include" removeInRFC="false" pn="section-11.10">
        <name slugifiedName="name-is-is-srv6-end-sid-sub-tlv-">IS-IS SRv6 End SID Sub-TLV Flags Registry</name>
        <t indent="0" pn="section-11.10-1">IANA has created the "IS-IS SRv6 End SID Sub-TLV Flags" registry under the "IS-IS TLV
	Codepoints" grouping to assign bits 0 to 7 in the Flags field of the 
	IS-IS SRv6 End SID sub-TLV specified in this document (<xref target="ENDTLV" format="default" sectionFormat="of" derivedContent="Section 7.2"/>). This registry defines bit values advertised in the	
	  Flags field of the SRv6 End SID sub-TLV (5), which is advertised in	
	  the SRv6 Locator TLV (27). </t>
        <t indent="0" pn="section-11.10-2">The registration procedure is "Expert Review", as defined in	
	<xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>.  Guidance for the designated
	experts is provided in <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/>.
	No assignments are made by this document.</t>
        <table align="center" pn="table-13">
          <name slugifiedName="name-is-is-srv6-end-sid-sub-tlv-f">IS-IS SRv6 End SID Sub-TLV Flags Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0-7</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="FLAGENDX" numbered="true" toc="include" removeInRFC="false" pn="section-11.11">
        <name slugifiedName="name-is-is-srv6-adjacency-sid-su">IS-IS SRv6 Adjacency SID Sub-TLVs Flags Registry</name>
        <t indent="0" pn="section-11.11-1">IANA has created the "IS-IS SRv6 Adjacency SID Sub-TLVs Flags" registry under the "IS-IS TLV 
	Codepoints" grouping to assign bits 0 to 7 in the Flags field of the 
	IS-IS SRv6 End.X SID and LAN End.X SID sub-TLVs (Sections <xref target="ENDXTLV" format="counter" sectionFormat="of" derivedContent="8.1"/> and <xref target="LANENDXTLV" format="counter" sectionFormat="of" derivedContent="8.2"/>).</t>
        <t indent="0" pn="section-11.11-2">This registry defines bit values advertised in the	
	  Flags field of SRv6 SID sub-TLVs associated with adjacencies.	
	  These sub-TLVs are advertised in TLVs advertising neighbor	
	  information.  The list of sub-TLVs includes:</t>
        <ul bare="false" empty="false" indent="3" spacing="normal" pn="section-11.11-3">
          <li pn="section-11.11-3.1">SRv6 End.X SID (43)</li>
          <li pn="section-11.11-3.2">SRv6 LAN End.X SID (44)</li>
        </ul>
        <t indent="0" pn="section-11.11-4">The registration procedure is "Expert Review", as defined in <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>. Guidance for the designated experts is provided in <xref target="RFC7370" format="default" sectionFormat="of" derivedContent="RFC7370"/>. The
	following assignments are made by this document:</t>
        <table align="center" pn="table-14">
          <name slugifiedName="name-is-is-srv6-adjacency-sid-sub">IS-IS SRv6 Adjacency SID Sub-TLVs Flags Registry</name>
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Value</th>
              <th align="left" colspan="1" rowspan="1">Description</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0</td>
              <td align="left" colspan="1" rowspan="1">B-flag</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="ENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.1"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">1</td>
              <td align="left" colspan="1" rowspan="1">S-flag</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="ENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.1"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">2</td>
              <td align="left" colspan="1" rowspan="1">P-flag</td>
              <td align="left" colspan="1" rowspan="1">RFC 9352, <xref target="ENDXTLV" format="default" sectionFormat="of" derivedContent="Section 8.1"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">3-7</td>
              <td align="left" colspan="1" rowspan="1">Unassigned</td>
              <td align="left" colspan="1" rowspan="1"/>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="Security" numbered="true" toc="include" removeInRFC="false" pn="section-12">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-12-1">Security concerns for IS-IS are addressed in <xref target="ISO10589" format="default" sectionFormat="of" derivedContent="ISO10589"/>, 
      <xref target="RFC5304" format="default" sectionFormat="of" derivedContent="RFC5304"/>, and <xref target="RFC5310" format="default" sectionFormat="of" derivedContent="RFC5310"/>. While IS-IS is deployed 
      under a single administrative domain, there can be deployments where potential 
      attackers have access to one or more networks in the IS-IS routing domain.  
      In these deployments, the stronger authentication mechanisms defined in the
      aforementioned documents <bcp14>SHOULD</bcp14> be used.</t>
      <t indent="0" pn="section-12-2">This document describes the IS-IS extensions required to support SR over an IPv6 data plane.  The security considerations for SR are discussed in <xref target="RFC8402" format="default" sectionFormat="of" derivedContent="RFC8402"/>.  <xref target="RFC8986" format="default" sectionFormat="of" derivedContent="RFC8986"/>
      defines the SRv6 Network Programming concept and specifies the main 
      SR behaviors to enable the creation of interoperable overlays; 
      the security considerations from that document apply too.</t>
      <t indent="0" pn="section-12-3">The advertisement for an incorrect MSD value may have negative
      consequences; see <xref target="RFC8491" format="default" sectionFormat="of" derivedContent="RFC8491"/> for additional considerations.</t>
      <t indent="0" pn="section-12-4">Security concerns associated with the setting of the O-flag are described in  
      <xref target="RFC9259" format="default" sectionFormat="of" derivedContent="RFC9259"/>.</t>
      <t indent="0" pn="section-12-5">Security concerns associated with the usage of Flexible Algorithms are described in
      <xref target="RFC9350" format="default" sectionFormat="of" derivedContent="RFC9350"/>).</t>
    </section>
  </middle>
  <back>
    <references pn="section-13">
      <name slugifiedName="name-references">References</name>
      <references pn="section-13.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="ISO10589" quoteTitle="true" derivedAnchor="ISO10589">
          <front>
            <title>Information technology - Telecommunications and information exchange between systems - Intermediate System to Intermediate System intra-domain routeing information exchange protocol for use in conjunction with the protocol for providing the connectionless-mode network service (ISO 8473)</title>
            <author>
              <organization abbrev="ISO" showOnFrontPage="true">International Organization for Standardization</organization>
            </author>
            <date month="November" year="2002"/>
          </front>
          <seriesInfo name="ISO/IEC" value="10589:2002"/>
          <refcontent>Second Edition</refcontent>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC5120" target="https://www.rfc-editor.org/info/rfc5120" quoteTitle="true" derivedAnchor="RFC5120">
          <front>
            <title>M-ISIS: Multi Topology (MT) Routing in Intermediate System to Intermediate Systems (IS-ISs)</title>
            <author fullname="T. Przygienda" initials="T." surname="Przygienda"/>
            <author fullname="N. Shen" initials="N." surname="Shen"/>
            <author fullname="N. Sheth" initials="N." surname="Sheth"/>
            <date month="February" year="2008"/>
            <abstract>
              <t indent="0">This document describes an optional mechanism within Intermediate System to Intermediate Systems (IS-ISs) used today by many ISPs for IGP routing within their clouds.  This document describes how to run, within a single IS-IS domain, a set of independent IP topologies that we call Multi-Topologies (MTs).  This MT extension can be used for a variety of purposes, such as an in-band management network "on top" of the original IGP topology, maintaining separate IGP routing domains for isolated multicast or IPv6 islands within the backbone, or forcing a subset of an address space to follow a different topology. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5120"/>
          <seriesInfo name="DOI" value="10.17487/RFC5120"/>
        </reference>
        <reference anchor="RFC5305" target="https://www.rfc-editor.org/info/rfc5305" quoteTitle="true" derivedAnchor="RFC5305">
          <front>
            <title>IS-IS Extensions for Traffic Engineering</title>
            <author fullname="T. Li" initials="T." surname="Li"/>
            <author fullname="H. Smit" initials="H." surname="Smit"/>
            <date month="October" year="2008"/>
            <abstract>
              <t indent="0">This document describes extensions to the Intermediate System to Intermediate System (IS-IS) protocol to support Traffic Engineering (TE).  This document extends the IS-IS protocol by specifying new information that an Intermediate System (router) can place in Link State Protocol Data Units (LSP).  This information describes additional details regarding the state of the network that are useful for traffic engineering computations. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5305"/>
          <seriesInfo name="DOI" value="10.17487/RFC5305"/>
        </reference>
        <reference anchor="RFC5308" target="https://www.rfc-editor.org/info/rfc5308" quoteTitle="true" derivedAnchor="RFC5308">
          <front>
            <title>Routing IPv6 with IS-IS</title>
            <author fullname="C. Hopps" initials="C." surname="Hopps"/>
            <date month="October" year="2008"/>
            <abstract>
              <t indent="0">This document specifies a method for exchanging IPv6 routing information using the IS-IS routing protocol.  The described method utilizes two new TLVs: a reachability TLV and an interface address TLV to distribute the necessary IPv6 information throughout a routing domain.  Using this method, one can route IPv6 along with IPv4 and OSI using a single intra-domain routing protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5308"/>
          <seriesInfo name="DOI" value="10.17487/RFC5308"/>
        </reference>
        <reference anchor="RFC7370" target="https://www.rfc-editor.org/info/rfc7370" quoteTitle="true" derivedAnchor="RFC7370">
          <front>
            <title>Updates to the IS-IS TLV Codepoints Registry</title>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <date month="September" year="2014"/>
            <abstract>
              <t indent="0">This document recommends some editorial changes to the IANA "IS-IS TLV Codepoints" registry to more accurately document the state of the protocol.  It also sets out new guidelines for Designated Experts to apply when reviewing allocations from the registry.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7370"/>
          <seriesInfo name="DOI" value="10.17487/RFC7370"/>
        </reference>
        <reference anchor="RFC7794" target="https://www.rfc-editor.org/info/rfc7794" quoteTitle="true" derivedAnchor="RFC7794">
          <front>
            <title>IS-IS Prefix Attributes for Extended IPv4 and IPv6 Reachability</title>
            <author fullname="L. Ginsberg" initials="L." role="editor" surname="Ginsberg"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="X. Xu" initials="X." surname="Xu"/>
            <author fullname="U. Chunduri" initials="U." surname="Chunduri"/>
            <date month="March" year="2016"/>
            <abstract>
              <t indent="0">This document introduces new sub-TLVs to support advertisement of IPv4 and IPv6 prefix attribute flags and the source router ID of the router that originated a prefix advertisement.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7794"/>
          <seriesInfo name="DOI" value="10.17487/RFC7794"/>
        </reference>
        <reference anchor="RFC7981" target="https://www.rfc-editor.org/info/rfc7981" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC8126" target="https://www.rfc-editor.org/info/rfc8126" quoteTitle="true" derivedAnchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t indent="0">Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t indent="0">To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t indent="0">This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC8402" target="https://www.rfc-editor.org/info/rfc8402" quoteTitle="true" derivedAnchor="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 indent="0">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 indent="0">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 indent="0">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="RFC8491" target="https://www.rfc-editor.org/info/rfc8491" quoteTitle="true" derivedAnchor="RFC8491">
          <front>
            <title>Signaling Maximum SID Depth (MSD) Using IS-IS</title>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <author fullname="U. Chunduri" initials="U." surname="Chunduri"/>
            <author fullname="S. Aldrin" initials="S." surname="Aldrin"/>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <date month="November" year="2018"/>
            <abstract>
              <t indent="0">This document defines a way for an Intermediate System to Intermediate System (IS-IS) router to advertise multiple types of supported Maximum SID Depths (MSDs) at node and/or link granularity.  Such advertisements allow entities (e.g., centralized controllers) to determine whether a particular Segment ID (SID) stack can be supported in a given network.  This document only defines one type of MSD: Base MPLS Imposition.  However, it defines an encoding that can support other MSD types.  This document focuses on MSD use in a network that is Segment Routing (SR) enabled, but MSD may also be useful when SR is not enabled.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8491"/>
          <seriesInfo name="DOI" value="10.17487/RFC8491"/>
        </reference>
        <reference anchor="RFC8665" target="https://www.rfc-editor.org/info/rfc8665" quoteTitle="true" derivedAnchor="RFC8665">
          <front>
            <title>OSPF Extensions for Segment Routing</title>
            <author fullname="P. Psenak" initials="P." role="editor" surname="Psenak"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="H. Gredler" initials="H." surname="Gredler"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <author fullname="W. Henderickx" initials="W." surname="Henderickx"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="December" year="2019"/>
            <abstract>
              <t indent="0">Segment Routing (SR) allows a flexible definition of end-to-end paths within IGP topologies by encoding paths as sequences of topological subpaths called "segments". These segments are advertised by the link-state routing protocols (IS-IS and OSPF).</t>
              <t indent="0">This document describes the OSPFv2 extensions required for Segment Routing.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8665"/>
          <seriesInfo name="DOI" value="10.17487/RFC8665"/>
        </reference>
        <reference anchor="RFC8667" target="https://www.rfc-editor.org/info/rfc8667" quoteTitle="true" derivedAnchor="RFC8667">
          <front>
            <title>IS-IS Extensions for Segment Routing</title>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="L. Ginsberg" initials="L." role="editor" surname="Ginsberg"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="A. Bashandy" initials="A." surname="Bashandy"/>
            <author fullname="H. Gredler" initials="H." surname="Gredler"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <date month="December" year="2019"/>
            <abstract>
              <t indent="0">Segment Routing (SR) allows for a flexible definition of end-to-end paths within IGP topologies by encoding paths as sequences of topological sub-paths, called "segments". These segments are advertised by the link-state routing protocols (IS-IS and OSPF).</t>
              <t indent="0">This document describes the IS-IS extensions that need to be introduced for Segment Routing operating on an MPLS data plane.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8667"/>
          <seriesInfo name="DOI" value="10.17487/RFC8667"/>
        </reference>
        <reference anchor="RFC8754" target="https://www.rfc-editor.org/info/rfc8754" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC8986" target="https://www.rfc-editor.org/info/rfc8986" quoteTitle="true" derivedAnchor="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 indent="0">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 indent="0">Each instruction is implemented on one or several nodes in the network and identified by an SRv6 Segment Identifier in the packet.</t>
              <t indent="0">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="RFC9259" target="https://www.rfc-editor.org/info/rfc9259" quoteTitle="true" derivedAnchor="RFC9259">
          <front>
            <title>Operations, Administration, and Maintenance (OAM) in Segment Routing over IPv6 (SRv6)</title>
            <author fullname="Z. Ali" initials="Z." surname="Ali"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="M. Chen" initials="M." surname="Chen"/>
            <date month="June" year="2022"/>
            <abstract>
              <t indent="0">This document describes how the existing IPv6 mechanisms for ping and traceroute can be used in a Segment Routing over IPv6 (SRv6) network.  The document also specifies the OAM flag (O-flag) in the Segment Routing Header (SRH) for performing controllable and predictable flow sampling from segment endpoints.  In addition, the document describes how a centralized monitoring system performs a path continuity check between any nodes within an SRv6 domain.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9259"/>
          <seriesInfo name="DOI" value="10.17487/RFC9259"/>
        </reference>
        <reference anchor="RFC9350" quoteTitle="true" target="https://www.rfc-editor.org/rfc/rfc9350" derivedAnchor="RFC9350">
          <front>
            <title>IGP Flexible Algorithm</title>
            <author initials="P" surname="Psenak" fullname="Peter Psenak" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S" surname="Hegde" fullname="Shraddha Hegde">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C" surname="Filsfils" fullname="Clarence Filsfils">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K" surname="Talaulikar" fullname="Ketan Talaulikar">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A" surname="Gulko" fullname="Arkadiy Gulko">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2023" month="February"/>
          </front>
          <seriesInfo name="RFC" value="9350"/>
          <seriesInfo name="DOI" value="10.17487/RFC9350"/>
        </reference>
      </references>
      <references pn="section-13.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="RFC5286" target="https://www.rfc-editor.org/info/rfc5286" quoteTitle="true" derivedAnchor="RFC5286">
          <front>
            <title>Basic Specification for IP Fast Reroute: Loop-Free Alternates</title>
            <author fullname="A. Atlas" initials="A." role="editor" surname="Atlas"/>
            <author fullname="A. Zinin" initials="A." role="editor" surname="Zinin"/>
            <date month="September" year="2008"/>
            <abstract>
              <t indent="0">This document describes the use of loop-free alternates to provide local protection for unicast traffic in pure IP and MPLS/LDP networks in the event of a single failure, whether link, node, or shared risk link group (SRLG).  The goal of this technology is to reduce the packet loss that happens while routers converge after a topology change due to a failure.  Rapid failure repair is achieved through use of precalculated backup next-hops that are loop-free and safe to use until the distributed network convergence process completes.  This simple approach does not require any support from other routers.  The extent to which this goal can be met by this specification is dependent on the topology of the network. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5286"/>
          <seriesInfo name="DOI" value="10.17487/RFC5286"/>
        </reference>
        <reference anchor="RFC5304" target="https://www.rfc-editor.org/info/rfc5304" quoteTitle="true" derivedAnchor="RFC5304">
          <front>
            <title>IS-IS Cryptographic Authentication</title>
            <author fullname="T. Li" initials="T." surname="Li"/>
            <author fullname="R. Atkinson" initials="R." surname="Atkinson"/>
            <date month="October" year="2008"/>
            <abstract>
              <t indent="0">This document describes the authentication of Intermediate System to Intermediate System (IS-IS) Protocol Data Units (PDUs) using the Hashed Message Authentication Codes - Message Digest 5 (HMAC-MD5) algorithm as found in RFC 2104. IS-IS is specified in International Standards Organization (ISO) 10589, with extensions to support Internet Protocol version 4 (IPv4) described in RFC 1195. The base specification includes an authentication mechanism that allows for multiple authentication algorithms. The base specification only specifies the algorithm for cleartext passwords. This document replaces RFC 3567.</t>
              <t indent="0">This document proposes an extension to that specification that allows the use of the HMAC-MD5 authentication algorithm to be used in conjunction with the existing authentication mechanisms. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5304"/>
          <seriesInfo name="DOI" value="10.17487/RFC5304"/>
        </reference>
        <reference anchor="RFC5310" target="https://www.rfc-editor.org/info/rfc5310" quoteTitle="true" derivedAnchor="RFC5310">
          <front>
            <title>IS-IS Generic Cryptographic Authentication</title>
            <author fullname="M. Bhatia" initials="M." surname="Bhatia"/>
            <author fullname="V. Manral" initials="V." surname="Manral"/>
            <author fullname="T. Li" initials="T." surname="Li"/>
            <author fullname="R. Atkinson" initials="R." surname="Atkinson"/>
            <author fullname="R. White" initials="R." surname="White"/>
            <author fullname="M. Fanto" initials="M." surname="Fanto"/>
            <date month="February" year="2009"/>
            <abstract>
              <t indent="0">This document proposes an extension to Intermediate System to Intermediate System (IS-IS) to allow the use of any cryptographic authentication algorithm in addition to the already-documented authentication schemes, described in the base specification and RFC 5304. IS-IS is specified in International Standards Organization (ISO) 10589, with extensions to support Internet Protocol version 4 (IPv4) described in RFC 1195.</t>
              <t indent="0">Although this document has been written specifically for using the Hashed Message Authentication Code (HMAC) construct along with the Secure Hash Algorithm (SHA) family of cryptographic hash functions, the method described in this document is generic and can be used to extend IS-IS to support any cryptographic hash function in the future. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5310"/>
          <seriesInfo name="DOI" value="10.17487/RFC5310"/>
        </reference>
        <reference anchor="RFC8355" target="https://www.rfc-editor.org/info/rfc8355" quoteTitle="true" derivedAnchor="RFC8355">
          <front>
            <title>Resiliency Use Cases in Source Packet Routing in Networking (SPRING) Networks</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="March" year="2018"/>
            <abstract>
              <t indent="0">This document identifies and describes the requirements for a set of use cases related to Segment Routing network resiliency on Source Packet Routing in Networking (SPRING) networks.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8355"/>
          <seriesInfo name="DOI" value="10.17487/RFC8355"/>
        </reference>
      </references>
    </references>
    <section numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">Thanks to <contact fullname="Christian Hopps"/> for his review comments and shepherd
      work.</t>
      <t indent="0" pn="section-appendix.a-2">Thanks to <contact fullname="Alvaro Retana"/> and <contact fullname="John Scudder"/> for
      AD review and comments.</t>
    </section>
    <section anchor="CONTRIB" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.b">
      <name slugifiedName="name-contributors">Contributors</name>
      <t indent="0" pn="section-appendix.b-1">The following people gave a substantial contribution to the content
      of this document and should be considered coauthors:</t>
      <contact fullname="Stefano Previdi">
        <organization showOnFrontPage="true">Huawei Technologies</organization>
        <address>
          <postal/>
          <email>stefano@previdi.net</email>
        </address>
      </contact>
      <contact fullname="Paul Wells">
        <organization showOnFrontPage="true">Cisco Systems</organization>
        <address>
          <postal>
            <street/>
            <city>Saint Paul</city>
            <region>Minnesota</region>
            <country>United States of America</country>
          </postal>
          <email>pauwells@cisco.com</email>
        </address>
      </contact>
      <contact fullname="Daniel Voyer">
        <address>
          <email>daniel.voyer@bell.ca</email>
        </address>
      </contact>
      <contact fullname="Satoru Matsushima">
        <address>
          <postal/>
          <email>satoru.matsushima@g.softbank.co.jp</email>
        </address>
      </contact>
      <contact fullname="Bart Peirens">
        <address>
          <postal/>
          <email>bart.peirens@proximus.com</email>
        </address>
      </contact>
      <contact fullname="Hani Elmalky">
        <address>
          <postal/>
          <email>hani.elmalky@ericsson.com</email>
        </address>
      </contact>
      <contact fullname="Prem Jonnalagadda">
        <address>
          <postal/>
          <email>prem@barefootnetworks.com</email>
        </address>
      </contact>
      <contact fullname="Milad Sharif">
        <address>
          <postal/>
          <email>msharif@barefootnetworks.com</email>
        </address>
      </contact>
      <contact fullname="Robert Hanzl">
        <organization showOnFrontPage="true">Cisco Systems</organization>
        <address>
          <postal>
            <street>Millenium Plaza Building, V Celnici 10, Prague 1</street>
            <city>Prague</city>
            <country>Czech Republic</country>
          </postal>
          <email>rhanzl@cisco.com</email>
        </address>
      </contact>
      <contact fullname="Ketan Talaulikar">
        <organization showOnFrontPage="true">Cisco Systems, Inc.</organization>
        <address>
          <postal/>
          <email>ketant@cisco.com</email>
        </address>
      </contact>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.c">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author fullname="Peter Psenak" initials="P" role="editor" surname="Psenak">
        <organization showOnFrontPage="true">Cisco Systems</organization>
        <address>
          <postal>
            <street>Pribinova Street 10</street>
            <city>Bratislava</city>
            <code>81109</code>
            <region/>
            <country>Slovakia</country>
          </postal>
          <phone/>
          <email>ppsenak@cisco.com</email>
          <uri/>
        </address>
      </author>
      <author fullname="Clarence Filsfils" initials="C" surname="Filsfils">
        <organization showOnFrontPage="true">Cisco Systems</organization>
        <address>
          <postal>
            <street/>
            <city>Brussels</city>
            <code/>
            <region/>
            <country>Belgium</country>
          </postal>
          <email>cfilsfil@cisco.com</email>
        </address>
      </author>
      <author fullname="Ahmed Bashandy" initials="A" surname="Bashandy">
        <organization showOnFrontPage="true">Cisco Systems</organization>
        <address>
          <postal>
            <street/>
            <city>Milpitas</city>
            <country>United States of America</country>
          </postal>
          <email>bashandy@cisco.com</email>
        </address>
      </author>
      <author fullname="Bruno Decraene" initials="B" surname="Decraene">
        <organization showOnFrontPage="true">Orange</organization>
        <address>
          <postal>
            <street/>
            <city>Chatillon</city>
            <code/>
            <region/>
            <country>France</country>
          </postal>
          <email>bruno.decraene@orange.com</email>
        </address>
      </author>
      <author fullname="Zhibo Hu" initials="Z" surname="Hu">
        <organization showOnFrontPage="true">Huawei Technologies</organization>
        <address>
          <postal>
            <street/>
            <city/>
            <code/>
            <region/>
            <country/>
          </postal>
          <email>huzhibo@huawei.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
