<?xml version="1.0" encoding="us-ascii"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.8 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY I-D.filsfilscheng-spring-srv6-srh-comp-sl-enc SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.filsfilscheng-spring-srv6-srh-comp-sl-enc.xml">
<!ENTITY I-D.filsfils-spring-net-pgm-extension-srv6-usid SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.filsfils-spring-net-pgm-extension-srv6-usid.xml">
<!ENTITY I-D.cl-spring-generalized-srv6-for-cmpr SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.cl-spring-generalized-srv6-for-cmpr.xml">
<!ENTITY I-D.bonica-6man-comp-rtg-hdr SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.bonica-6man-comp-rtg-hdr.xml">
<!ENTITY I-D.decraene-spring-srv6-vlsid SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.decraene-spring-srv6-vlsid.xml">
<!ENTITY I-D.mirsky-6man-unified-id-sr SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.mirsky-6man-unified-id-sr.xml">
<!ENTITY I-D.srcompdt-spring-compression-requirement SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.srcompdt-spring-compression-requirement.xml">
<!ENTITY I-D.ietf-lsr-flex-algo SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-lsr-flex-algo.xml">
<!ENTITY RFC8986 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8986.xml">
<!ENTITY I-D.ietf-spring-segment-routing-policy SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-spring-segment-routing-policy.xml">
<!ENTITY I-D.ietf-lsr-isis-srv6-extensions SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-lsr-isis-srv6-extensions.xml">
<!ENTITY I-D.ietf-bess-srv6-services SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-bess-srv6-services.xml">
<!ENTITY I-D.ietf-idr-bgpls-srv6-ext SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-idr-bgpls-srv6-ext.xml">
<!ENTITY I-D.ietf-spring-sr-service-programming SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-spring-sr-service-programming.xml">
<!ENTITY I-D.ietf-6man-spring-srv6-oam SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-6man-spring-srv6-oam.xml">
<!ENTITY I-D.ietf-rtgwg-segment-routing-ti-lfa SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-rtgwg-segment-routing-ti-lfa.xml">
<!ENTITY RFC8402 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8402.xml">
<!ENTITY RFC8754 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8754.xml">
<!ENTITY I-D.ietf-lsr-ip-flexalgo SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-lsr-ip-flexalgo.xml">
<!ENTITY I-D.bonica-lsr-crh-isis-extensions SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.bonica-lsr-crh-isis-extensions.xml">
<!ENTITY I-D.ssangli-bess-bgp-vpn-srm6 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ssangli-bess-bgp-vpn-srm6.xml">
<!ENTITY I-D.bonica-6man-vpn-dest-opt SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.bonica-6man-vpn-dest-opt.xml">
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-spring-compression-analysis-02" category="info">

  <front>
    <title abbrev="SRCOMP Requirements">Compressed SRv6 SID List Analysis</title>

    <author initials="R." surname="Bonica" fullname="Ron Bonica">
      <organization>Juniper</organization>
      <address>
        <email>rbonica@juniper.net</email>
      </address>
    </author>
    <author initials="W." surname="Cheng" fullname="Weiqiang Cheng">
      <organization>China Mobile</organization>
      <address>
        <email>chengweiqiang@chinamobile.com</email>
      </address>
    </author>
    <author initials="D." surname="Dukes" fullname="Darren Dukes" role="editor">
      <organization>Cisco Systems</organization>
      <address>
        <email>ddukes@cisco.com</email>
      </address>
    </author>
    <author initials="W." surname="Henderickx" fullname="Wim Henderickx">
      <organization>Nokia</organization>
      <address>
        <email>wim.henderickx@nokia.com</email>
      </address>
    </author>
    <author initials="C." surname="Li" fullname="Cheng Li">
      <organization>Huawei</organization>
      <address>
        <email>c.l@huawei.com</email>
      </address>
    </author>
    <author initials="P." surname="Shaofu" fullname="Peng Shaofu">
      <organization>ZTE</organization>
      <address>
        <email>peng.shaofu@zte.com.cn</email>
      </address>
    </author>
    <author initials="C." surname="Xie" fullname="Chongfeng Xie">
      <organization>China Telecom</organization>
      <address>
        <email>xiechf@chinatelecom.cn</email>
      </address>
    </author>

    <date year="2022" month="September" day="27"/>

    <area>General</area>
    <workgroup>SPRING</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>Several mechanisms have been proposed to compress the SRv6 SID list. This document analyzes each mechanism with regard to the requirements stated in the companion requirements document.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>The following mechanisms are proposed to compress the SRv6 SID list:</t>

<t><list style="symbols">
  <t>CSID - <xref target="I-D.filsfilscheng-spring-srv6-srh-comp-sl-enc"/> - Describes two new SRv6 SID flavors, a combination of SID flavors from <xref target="I-D.filsfils-spring-net-pgm-extension-srv6-usid"/> and <xref target="I-D.cl-spring-generalized-srv6-for-cmpr"/></t>
  <t>CRH - <xref target="I-D.bonica-6man-comp-rtg-hdr"/> - Requires two new routing header types and a label mapping technique.</t>
  <t>VSID - <xref target="I-D.decraene-spring-srv6-vlsid"/> - Defines a set of SID behaviors to access smaller SIDs within the SR header.</t>
  <t>UIDSR - <xref target="I-D.mirsky-6man-unified-id-sr"/> - Extends the SRH to carry MPLS labels or IPv6 addresses.</t>
</list></t>

<t>This document analyzes each mechanism against the requirements
stated in <xref target="I-D.srcompdt-spring-compression-requirement"/>. Each
section of this document corresponds to a similarly named section in
<xref target="I-D.srcompdt-spring-compression-requirement"/>. Each section
reiterates corresponding requirements and analyzes each proposal against the those requirements.</t>

<t>The terms compression mechanism, compression solution, and compression proposal are used interchangeably within this document.</t>

</section>
<section anchor="srv6-compression-requirements" title="SRv6 Compression Requirements">

<t>An SR domain consisting of 3 sub-domains is shown to illustrate the scenarios associated with encapsulation header size, forwarding efficiency and state efficiency.</t>

<figure title="Sample SR Domain" anchor="use_case"><artwork><![CDATA[
        + * * * * * * * * * * * * * * * * * * * * * * * * * * +
        *                                                     *
        * - - - - - - - - + - - - - - - - - + - - - - - - - - *
        *                 |                 |                 *
        *   [M1_0]      [B5]  [C_0]       [B7]  [M2_0]        *
[H1]--[E3]                |                 |                [E4]---[H2]
        *        [M1_i] [B6]        [C_j] [B8]       [M2_k]   *
        *                 |                 |                 *
        *     Metro 1     |      Core       |     Metro 2     *
        *- - - - - - - - - - - - - - - - - - - - - - - - - - -*
        *                                                     *
        *                      SR domain                      *
        + * * * * * * * * * * * * * * * * * * * * * * * * * * +
]]></artwork></figure>

<t><list style="symbols">
  <t>H1 and H2 are hosts outside the SR domain</t>
  <t>E3 and E4 are SR domain edge routers</t>
  <t>Metro 1, Core and Metro 2 are sub-domains with independent IGP instances</t>
  <t>B5 and B6 are border routers between the Metro 1 and Core</t>
  <t>B7 and B8 are border routers between the Metro 2 and Core</t>
  <t>M1_1..M1_i are routers in Metro 1</t>
  <t>C_1..C_j are routers in Core</t>
  <t>M2_1..M2_k are routers in Metro 2</t>
  <t>If Metro and Core are different AS's the border routers (B5 to B8) may be replaced by pairs of ASBRs</t>
  <t>Flexible algorithms may be deployed within each sub-domain</t>
</list></t>

<section anchor="encapsulation-header-size" title="Encapsulation Header Size">

<t>The compression proposal MUST reduce the size of the SRv6 encapsulation header.</t>

<t>Encapsulation header size is evaluated against a set of reference scenarios.</t>

<section anchor="reference-scenarios" title="Reference Scenarios">

<t>A service provider offers a VPN service with underlay optimization in the SR domain.</t>

<t><list style="symbols">
  <t>Hosts H1 and H2 are located in two different sites of a VPN customer.</t>
  <t>Edge nodes E3 and E4 encapsulate/decapsulate traffic between H1 and H2 to provide the VPN service.</t>
  <t>The encapsulation consists of a VPN SID (V) (eg END.DT etc) and an SR policy with between 0 and 15 transport segments (T) (eg END or END.X)</t>
  <t>The SR domain has a block size (B) of 48 bits</t>
  <t>These independent variables are used to uniquely identify each scenario. For example
  <list style="symbols">
      <t>A scenario with 48bit block size, 3 transport segments and a VPN segment is named 48B.3T.V</t>
    </list></t>
</list></t>

<t>Proposals are evaluated against the set of scenarios to calculate the encapsulation in octets (E) and the encapsulation savings (ES) as a fraction of the SRv6 base encapsulation in octets.</t>

<t>E and ES were evaluated for:</t>

<t><list style="symbols">
  <t>each proposal in two variants
  <list style="symbols">
      <t>16-bit SID</t>
      <t>32-bit SID</t>
    </list></t>
  <t>48-bit SRv6 block, 0 to 15 transport segments and a VPN segment (expressed in short form as 48B.0-15T.V)</t>
</list></t>

<t>The average encapsulation savings for each proposal is shown below. The complete analysis is recorded in Appendix:</t>

<texttable title="Average ES, 16-bit SIDs, 48B.0-15T.V" anchor="avES16">
      <ttcol align='left'>16-bit SIDs</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Average ES</c>
      <c>54.3%</c>
      <c>54.2%</c>
      <c>50.4%</c>
      <c>51.6%</c>
      <c>49.2%</c>
</texttable>

<texttable title="Average ES, 32-bit SIDs, 48B.0-15T.V" anchor="avES32">
      <ttcol align='left'>32-bit SIDs</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Average ES</c>
      <c>42.5%</c>
      <c>45.5%</c>
      <c>43.2%</c>
      <c>45.5%</c>
      <c>42.5%</c>
</texttable>

<t>E and ES are also evaluated for 32bit and 64bit SRv6 block sizes. The CSID 16-bit ES averages 57.4% for 32-bit blocks and 49.9% for 64-bit blocks, other proposals are unchanged.</t>

<t>Conclusion: All proposals meet the requirement to reduce the size of the SRv6 encapsulation header. Variances between proposals are negligible.</t>

</section>
</section>
<section anchor="forwarding-efficiency" title="Forwarding Efficiency">

<t>The compression proposal SHOULD minimize the number of required hardware resources accessed to process a segment.</t>

<section anchor="headers-parsed" title="Headers Parsed">
<t>Forwarding efficiency is calculated against the reference scenarios above, recording and summarizing the differences in header parsing for different segment lists.</t>

<t>The following tables indicate the number of headers parsed for each proposal.</t>

<texttable title="Headers parsed on non-decapsulating SR segment endpoint nodes, 16-bit SIDs, 48B.0-15T.V" anchor="PRS16-nd">
      <ttcol align='left'>16-bit</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>PRS(48B.0T).V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>PRS(48B.1-4T).V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>CRH</c>
      <c>CRH</c>
      <c>SRH</c>
      <c>SRH</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>PRS(48B.5-15T).V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>SRH</c>
      <c>CRH</c>
      <c>CRH</c>
      <c>SRH</c>
      <c>SRH</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
</texttable>

<texttable title="Headers parsed on decapsulating SR segment endpoint nodes, 16-bit SIDs, 48B.0-15T.V" anchor="PRS16-d">
      <ttcol align='left'>16-bit</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>PRS(48B.0T).V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>PRS(48B.1-4T).V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>CRH</c>
      <c>CRH</c>
      <c>SRH</c>
      <c>SRH</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>TPF</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>PRS(48B.5-15T).V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>SRH</c>
      <c>CRH</c>
      <c>CRH</c>
      <c>SRH</c>
      <c>SRH</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>TPF</c>
      <c>&#160;</c>
      <c>&#160;</c>
</texttable>

<texttable title="Headers parsed on non-decapsulating SR segment endpoint nodes, 32-bit SIDs, 48B.0-15T.V" anchor="PRS32-nd">
      <ttcol align='left'>32-bit</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>PRS(48B.0T.V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>PRS(48B.1-15T.V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>SRH</c>
      <c>CRH</c>
      <c>CRH</c>
      <c>SRH</c>
      <c>SRH</c>
</texttable>

<texttable title="Headers parsed on decapsulating SR segment endpoint nodes, 32-bit SIDs, 48B.0-15T.V" anchor="PRS32-d">
      <ttcol align='left'>32-bit</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>PRS(48B.0T.V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>PRS(48B.1-15T.V)</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>IPv6</c>
      <c>&#160;</c>
      <c>SRH</c>
      <c>CRH</c>
      <c>CRH</c>
      <c>SRH</c>
      <c>SRH</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>TPF</c>
      <c>&#160;</c>
      <c>&#160;</c>
</texttable>

<t>Conclusion: Overall, the CSID parses the fewest headers. When per packet state is processed per segment, CSID, VSID and UIDSR proposals may include it in the routing header, CRH may include it in a destination option preceding the CRH.</t>

</section>
<section anchor="lookups-performed-lku" title="Lookups Performed (LKU)">

<t>Some proposals require a different number of lookups per packet, depending on the active segment in a segment list.</t>

<t>An implementation may perform lookups as longest prefix match (LPM) or exact match (EM).  CSID, VSID and UIDSR describe SRv6 SID lookup from the IPv6 destination address as an LPM, however an implementation may use either an LPM or EM lookup for SRv6 SIDs.  CRH implementations must always uses an exact match for CRH SID lookups.</t>

<t>The following table describes the number of lookups per proposal per segment type.</t>

<texttable title="Lookups" anchor="LKUadj">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Adjacency and</c>
      <c>LPM (a)</c>
      <c>LPM (a)</c>
      <c>LPM (a)</c>
      <c>LPM (a)</c>
      <c>VPN Segments</c>
      <c>&#160;</c>
      <c>EM (b)</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>EM (b,c)</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>Prefix Segments</c>
      <c>LPM (a)</c>
      <c>LPM (a)</c>
      <c>LPM (a)</c>
      <c>LPM (a)</c>
      <c>&#160;</c>
      <c>LPM (d)</c>
      <c>EM (b)</c>
      <c>LPM (d)</c>
      <c>LPM (d)</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
</texttable>

<t><list style="symbols">
  <t>[a] On active SID, appearing in the IPv6 Destination address</t>
  <t>[b] On SID in CRH header</t>
  <t>[c] This lookup is required only when the IPv6 next hop node is not non-CRH aware</t>
  <t>[d] On next SID, appearing in the IPv6 destination address</t>
</list></t>

<t>Note: <xref target="I-D.filsfils-spring-net-pgm-extension-srv6-usid"/> Section 5 describes an optional local implementation to reduce
CSID 16-bit lookups, in some cases, by adding local forwarding state.
The analysis of this implementation option is not included in this version of the document.</t>

<t>Conclusion: CSID, VSID, and UIDSR require a single lookup to process an adjacency or VPN segment. CRH always requires 2 lookups for VPN segments, and 2 and sometimes 3 lookups for adjacency segments. All proposals require two lookups to process a prefix segment and the next segment.</t>

</section>
</section>
<section anchor="state-efficiency" title="State Efficiency">

<t>The compression proposal SHOULD minimize the amount of additional forwarding state stored at a node.</t>

<t>State efficiency is analyzed in a sub-domain of the SR domain, with the following parameters:</t>

<t><list style="symbols">
  <t>N: the number of SRv6 nodes in the sub-domain</t>
  <t>I: the number of IGP algorithms <xref target="I-D.ietf-lsr-flex-algo"/> configured</t>
  <t>A: the number of local adjacency SIDs at a node</t>
  <t>D: the number of attached SR sub-domains at a border node</t>
  <t>V: the number of VPN services at edge nodes</t>
</list></t>

<t>For a sub-domain consisting of:</t>

<t><list style="symbols">
  <t>1000 SRv6 nodes (N=1000) with some number of non-SRv6 nodes</t>
  <t>2 IGP algorithms (I=2)</t>
  <t>100 adjacencies per SRv6 node (A=100)</t>
  <t>up to 10 attached sub-domains per border node (D=10)</t>
  <t>1000 VPN service segments per edge (V=1000)</t>
</list></t>

<t>The number of forwarding entries at a node is calculated for any node, a border node, and an edge node.</t>

<t>UIDSR, CSID and VSID require the following entries:</t>

<t><list style="symbols">
  <t>a FIB entry for the node's prefix segment (1), per algorithm (I=2).</t>
  <t>a FIB entry per local adjacency SID (A=100) **Note1</t>
  <t>At border nodes (or any SRv6 nodes) either:
  <list style="symbols">
      <t>A.1) a FIB entry per domain (D=10) to swap the IPv6 destination address prefix.</t>
      <t>A.2) no additional FIB entries, and the SR source places a 128-bit SID in the segment list of a packet if needed.</t>
    </list></t>
  <t>At edge nodes, a FIB entry per VPN segment (V=1000)</t>
</list></t>

<t>CRH requires:</t>

<t><list style="symbols">
  <t>a CFIB entry per CRH node per IGP algorithm for local and remote prefix segments (N*I=2000)</t>
  <t>a CFIB entry per local adjacency segment (A=100) **Note1
  <list style="symbols">
      <t>When non-CRH adjacent nodes are present, additional state is required for CRH as per <xref target="I-D.bonica-6man-comp-rtg-hdr"/> Appendix B (note, only the second option in the appendix is considered feasible due to state explosion)
      <list style="symbols">
          <t>B.1) Up to one CFIB entry per next endpoint and an additional CFIB entry per adjacency to support non-CRH adjacent endpoints, assuming IP flex algo is not implemented on non-CRH nodes (I=1) ((N+A)*I=1200).</t>
        </list></t>
    </list></t>
  <t>At border nodes, assuming two inter-domain links per adjacent domain for redundancy, additional state is required as per <xref target="I-D.bonica-6man-comp-rtg-hdr"/> Appendix B (note, only the second option in the appendix is considered feasible due to state explosion):
  <list style="symbols">
      <t>C.1) In a common CRH network topology, the remote sub-domain borders support CRH: a CFIB entry per CRH node per IGP algorithm for local and remote prefix segments (N*I) plus a CFIB entry per local adjacency segment (A) plus a CFIB entry per connected remote border router (20) (N*I+A+20=2120).</t>
      <t>C.2) In a poorly designed CRH network topology, the remote sub-domain borders do not support CRH: a CFIB entry per unique endpoint (N*D*I), plus a CFIB entry per local adjacency segment (A), assuming IP flex algo is not implemented on non-CRH border domain (I=1), plus inter-domain adjacency (20) (N*D*I+2=10120).</t>
    </list></t>
  <t>At edge nodes, V=1000 entries for SRv6 based VPN SIDs and another V=1000 entries for CFIB and TPF VPN SIDs.</t>
</list></t>

<t>**Note1: there may be additional adjacency SIDs for protected, unprotected, and per algorithm adjacencies, resulting in some multiple of A. This is common for all compression proposals.</t>

<texttable title="Forwarding State Maintained" anchor="fwd_state">
      <ttcol align='left'>16-bit and 32-bit</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>S(N1000,I2,A100,D10)</c>
      <c>102</c>
      <c>2100</c>
      <c>102</c>
      <c>102</c>
      <c>&#160;</c>
      <c>A.1:112</c>
      <c>&#160;</c>
      <c>A.1:112</c>
      <c>A.1:112</c>
      <c>&#160;</c>
      <c>A.2:102</c>
      <c>&#160;</c>
      <c>A.2:102</c>
      <c>A.2:102</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>B.1:3300</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>C.1:2120</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>C.2:10120</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>&#160;</c>
      <c>S(V1000)</c>
      <c>1000</c>
      <c>2000</c>
      <c>1000</c>
      <c>1000</c>
</texttable>

<t>Conclusion: CSID, VSID and UIDSR minimize forwarding state stored at a node. CRH moves per segment state from the packet to the FIB.</t>

</section>
</section>
<section anchor="srv6-specific-requirements" title="SRv6 Specific Requirements">

<section anchor="srv6-based" title="SRv6 Based">

<t>A solution to compress SRv6 SID Lists SHOULD be based on
the SRv6 architecture, control plane and data plane. The compression
solution MAY be based on a different data plane and control plane,
provided that it derives sufficient benefit.</t>

<t>This section records the use of SRv6 standards for compression.</t>

<texttable title="SRv6 Based" anchor="srv6_based">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>U.RFC8402</c>
      <c>Yes</c>
      <c>Yes - update required for SRv6 data plane</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>U.RFC8754</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes - update required for segments left</c>
      <c>Yes - update for flags and segments left</c>
      <c>U.PGM</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes - update required for SID behaviors</c>
      <c>Yes</c>
      <c>U.IGP</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes</c>
      <c>Yes - additional extensions</c>
      <c>U.BGP</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>U.POL</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>U.BLS</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes</c>
      <c>Yes - additional extensions</c>
      <c>U.SVC</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>U.ALG</c>
      <c>Yes</c>
      <c>Yes - Adds IP flex Algo</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>U.OAM</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: CSID is SRv6 based, requiring no updates to existing SRv6 standards, VSID and UIDSR require updates. CRH is not strictly based on SRv6 but is able to provide equivalent functionality.</t>

</section>
<section anchor="functional-requirements" title="Functional Requirements">

<section anchor="srv6-functionality" title="SRv6 Functionality">

<t>A solution to compress an SRv6 SID list MUST support the
functionality of SRv6. This requirement ensures no SRv6
functionality is lost. It is particularly important to understand
how a proposal, as evaluated in section "SRv6 Based", provides this
functionality.</t>

<t>Functional requirements and the drafts defining how a proposal provides the functionality are documented in the table below.</t>

<texttable title="Abbreviations">
      <ttcol align='left'>Draft reference Abbreviations</ttcol>
      <c>RFC8986: <xref target="RFC8986"/></c>
      <c>SRV6POL: <xref target="I-D.ietf-spring-segment-routing-policy"/></c>
      <c>SRV6EXT: <xref target="I-D.ietf-lsr-isis-srv6-extensions"/></c>
      <c>SRV6BGPSVC: <xref target="I-D.ietf-bess-srv6-services"/></c>
      <c>SRV6BGPLS: <xref target="I-D.ietf-idr-bgpls-srv6-ext"/></c>
      <c>SRV6SVCP: <xref target="I-D.ietf-spring-sr-service-programming"/></c>
      <c>SRV6OAM: <xref target="I-D.ietf-6man-spring-srv6-oam"/></c>
      <c>SRV6FLEXALG: <xref target="I-D.ietf-lsr-flex-algo"/></c>
      <c>SRV6TILFA: <xref target="I-D.ietf-rtgwg-segment-routing-ti-lfa"/></c>
      <c>RFC8402: <xref target="RFC8402"/></c>
      <c>RFC8754: <xref target="RFC8754"/></c>
      <c>CRH: <xref target="I-D.bonica-6man-comp-rtg-hdr"/></c>
      <c>VSID: <xref target="I-D.decraene-spring-srv6-vlsid"/></c>
      <c>UIDSR: <xref target="I-D.mirsky-6man-unified-id-sr"/></c>
      <c>IPFLEXALG: <xref target="I-D.ietf-lsr-ip-flexalgo"/></c>
      <c>CRHEXT: <xref target="I-D.bonica-lsr-crh-isis-extensions"/></c>
      <c>SRM6BGPSVC: <xref target="I-D.ssangli-bess-bgp-vpn-srm6"/></c>
      <c>CSID: <xref target="I-D.filsfilscheng-spring-srv6-srh-comp-sl-enc"/></c>
</texttable>

<texttable title="SRv6 Functionality" anchor="srv6_functionality">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>F.SID</c>
      <c>RFC8402</c>
      <c>CRH</c>
      <c>RFC8402</c>
      <c>RFC8402 1</c>
      <c>F.Scope</c>
      <c>RFC8402</c>
      <c>CRH</c>
      <c>RFC8402</c>
      <c>RFC8402 1</c>
      <c>F.PFX</c>
      <c>RFC8402, RFC8986, CSID adds an END SID flavor</c>
      <c>CRH</c>
      <c>RFC8402, RFC8986, VSID updates the End behavior</c>
      <c>RFC8402, RFC8986 with new flavor 1</c>
      <c>F.ADJ</c>
      <c>RFC8402, RFC8986, CSID adds an END.X flavor</c>
      <c>CRH</c>
      <c>RFC8402, RFC8986, VSID updates the End.X behavior</c>
      <c>RFC8402, RFC8986 with new flavor 1</c>
      <c>F.BIND</c>
      <c>RFC8402, RFC8986</c>
      <c>CRH</c>
      <c>RFC8402, RFC8986, VSID updates the End.B behaviors</c>
      <c>RFC8402, RFC8986 with new flavor 1</c>
      <c>F.PEER</c>
      <c>RFC8402, RFC8986, CSID adds an END.X. flavor</c>
      <c>CRH</c>
      <c>RFC8402, RFC8986, VSID updates the End.X behaviors</c>
      <c>RFC8402, RFC8986 with new flavor 1,2</c>
      <c>F.SVC</c>
      <c>RFC8986</c>
      <c>CRH</c>
      <c>RFC8986, VSID updates the service segment behaviors</c>
      <c>RFC8986 1</c>
      <c>F.ALG</c>
      <c>SRV6FLEXALG</c>
      <c>IPFLEXALG</c>
      <c>SRV6FLEXALG</c>
      <c>SRV6FLEXALG</c>
      <c>F.TILFA</c>
      <c>SRV6TILFA</c>
      <c>SRV6TILFA</c>
      <c>SRV6TILFA</c>
      <c>SRV6TILFA 3</c>
      <c>F.SEC</c>
      <c>RFC8754</c>
      <c>CRH</c>
      <c>RFC8754</c>
      <c>RFC8754</c>
      <c>F.IGP</c>
      <c>SRV6EXT</c>
      <c>CRH-EXT</c>
      <c>SRV6EXT</c>
      <c>SRV6EXT 1,4</c>
      <c>F.BGP</c>
      <c>SRV6BGPSVC</c>
      <c>SRM6BGPSVC</c>
      <c>SRV6BGPSVC</c>
      <c>SRV6BGPSVC 1</c>
      <c>F.POL</c>
      <c>SRV6SRPOL</c>
      <c>SRV6SRPOL update required</c>
      <c>SRV6SRPOL</c>
      <c>SRV6SRPOL</c>
      <c>F.BLS</c>
      <c>SRV6BGPLS</c>
      <c>(specification required)</c>
      <c>SRV6BGPLS and addition for VSID Length</c>
      <c>SRV6BGPLS 5</c>
      <c>F.SFC</c>
      <c>SRV6SVCP</c>
      <c>CRH</c>
      <c>SRV6SVC</c>
      <c>SRV6SVCP 1</c>
      <c>F.PING</c>
      <c>SRV6OAM</c>
      <c>CRH</c>
      <c>SRV6OAM</c>
      <c>SRv6OAM</c>
</texttable>

<t><list style="numbers">
  <t>UIDSR with Global Container SID + local index enhancement</t>
  <t>draft-peng-spring-truncates-sid-inter-domain</t>
  <t>For protections described in section 6.1.2.1, 6.1.2.2, and 6.2, to get next-next SID from SRH with the help of draft-pl-spring-compr-path-recover.</t>
  <t>Need more extensions to advertise the capability of U-SID compression (32bits, 16bits, etc.). Note: Global Container SID + local index enhancement.</t>
  <t>IGP extensions</t>
</list></t>

<t>Conclusion: CSID supports SRv6 functionality. CRH VSID and UID support SRv6 functionality or equivalent with some new specifications.</t>

</section>
<section anchor="heterogeneous-sid-lists" title="Heterogeneous SID Lists">

<t>The compression proposal SHOULD support a combination of
compressed and non-compressed segments in a single path. As an
example, a solution may satisfy this requirement without being SRv6
based by using a binding SID to impose an additional SRv6 header
(IPv6 header plus optional SRH) with non-compressed SID.</t>

<texttable title="Heterogeneous SID Lists">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Heterogeneous SID Lists</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>VSID require a binding SID with an additional SRv6 encapsulation to encode non-compressed segments in a single path. VSID changes the interpretation of the SRH Segments Left field, which makes it capable of carrying only compressed segments.</t>

<t>The CRH can include a binding SID that imposes a new IPv6 header with an SRH. This is required when the next segment endpoint in the path can process the SRH, but not the CRH. The next segment endpoint or a subsequent endpoint can execute decapsulation, removing the new IPv6 header and exposing the old one with its CRH. This is required because an IPv6 packet can carry only one routing header.</t>

<t>CSID and UIDSR permit the encoding of, and processing of, any combination of compressed or non-compressed segments in a segment list of an SRH.</t>

<t>CSID makes use of the SRH, without modification, to encode CSIDs as 128 bits, supporting the use of non-compressed segments within the SRH.</t>

<t>UIDSR modifies the interpretation of the SRH Segments Left field at segment endpoint nodes to allow variable segment lengths within a segment list.</t>

<t>Conclusion: All proposals support heterogeneous SID lists. CSID and UIDSR support heterogeneous SID lists in the SRH, while CRH and VSID require installation of binding SIDs at midpoint nodes.</t>

</section>
<section anchor="sid-list-length" title="SID List Length">

<t>The compression proposal MUST be able to represent SR
paths that contain up to 16 segments.</t>

<texttable title="SID List Length">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>16 Segments</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: All proposals support segment lists of at least 16 segments.</t>

</section>
<section anchor="sid-summarization" title="SID Summarization">

<t>The solution MUST be compatible with segment summarization.</t>

<t>In inter sub-domain deployments with summarization:</t>

<t><list style="symbols">
  <t>Any node can reach any other node in another sub-domain via a prefix segment.</t>
  <t>Prefixes are summarized for advertisement between domains.</t>
</list></t>

<t>Without summarization, border router SIDs must be leaked:</t>

<t><list style="symbols">
  <t>An additional global prefix segment is required for each domain border to be traversed.</t>
</list></t>

<texttable title="SID Summarization">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>SID Summarization</c>
      <c>Yes</c>
      <c>No</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: CSID, VSID and UIDSR support segment summarization, CRH does not.</t>

</section>
</section>
<section anchor="operational-requirements" title="Operational Requirements">

<section anchor="lossless-compression" title="Lossless Compression">

<t>A path traversed using a compressed SID list MUST always be the same as the path traversed using the uncompressed SID list if no compression was applied.</t>

<texttable title="Lossless Compression">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Lossless Compression</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: All proposals provide lossless compression.</t>

</section>
<section anchor="preservation-of-non-routing-information" title="Preservation of non-routing information">

<t>The compression mechanism MUST NOT cause the loss of non-routing information when delivering a packet from the SR ingress node to the egress/penultimate SR node</t>

<texttable title="Preservation of non-routing information">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Preserves Non-Routing Information</c>
      <c>Complies</c>
      <c>Complies</c>
      <c>Complies</c>
      <c>Complies</c>
</texttable>

<t>Conclusion: All proposals preserve non-routing information.</t>

</section>
<section anchor="address-planning" title="Address Planning">

<t>Description: Network operators require addressing plan flexibility, The compression mechanism MUST support flexible IPv6 address planning, it MUST support deployment by using GUA from different address blocks.</t>

<texttable title="Address Planning">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Flexible Address Planning</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>All compression mechanisms provide the encapsulation savings described in Tables 1 and 2. CRH provides these encapsulation savings regardless of the IPv6 addressing scheme. CSID adds a CSID container, or one compressed SID (END.X with XPS behavior), for each change in locator block in a segment list. VSID (via XPS behavior) and UIDSR add one compressed SID for each change in locator block in the segment list.</t>

<t>The XPS behavior draws the new address block from the control plane. At the time of publication, this control plane behavior is undefined. Therefore XPS impact on the control plane is not entirely understood. While it may be possible to define these mechanisms without impacting the control plane, specifications are not yet available.</t>

<t>Conclusion: All proposals support flexible IPv6 planning.</t>

</section>
</section>
<section anchor="scalability-requirements" title="Scalability Requirements">

<t>The compression proposal MUST be capable of representing 65000 adjacency segments per node.</t>

<t>The compression proposal MUST be capable of representing 1 million prefix segments per SID numbering space.</t>

<t>The compression proposal MUST be capable of representing 1 million services per node.</t>

<texttable title="Scale Requirements" anchor="scalability">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Adjacency Segment Scale 65000</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Prefix Segment Scale 1000000</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Service Scale 1000000</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>The 32-bit variants of all proposals support this scale of prefix, adjacency and services at a node.</t>

<t>Each proposals 16-bit variant supports a lesser scale. All proposals can encode 2^16 prefix, adjacency and service segments. However, each proposal has various ways of supporting some larger scale per node if required.</t>

<t>CRH 16-bit proposes the encoding of the ultimate segment in a TPF destination option instead of the CRH. This supports 2^32 service segments per node.</t>

<t>VSID proposes the combination of multiple vSIDs, by copying multiple SIDs to a destination address or looking up the next segment in the segment list. This supports more than 2^16 adjacency and service segments per node.</t>

<t>CSID 16-bit variant uses a LIB for adjacency and service segments, the LIB allows local definition of SIDs longer than 16-bits when needed. This supports more than 2^16 adjacency and service segments per node.</t>

<t>UIDSR defines a segment type that modifies the value of SRH segments left field to support variable segment sizes within the segment list. This supports 2^32 adjacency and service segments per node.</t>

<t>Conclusion: All proposals meet scalability requirements.</t>

<section anchor="compression-levels" title="Compression Levels">

<t>The compression proposal SHOULD be able to support multiple levels of compression.</t>

<texttable title="Compression Levels">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Multiple compression Levels</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: All proposals support 16-bit and 32-bit SID variants.</t>

</section>
</section>
</section>
<section anchor="protocol-design-requirements" title="Protocol Design Requirements">

<section anchor="srv6-base-coexistence" title="SRv6 Base Coexistence">

<t>The compression proposal MUST support deployment in SRv6 networks.</t>

<texttable title="SRv6 Base Coexistence">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>SRv6 Base Coexistence</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: All proposals can be deployed simultaneously with the SRv6 base solution.</t>

</section>
</section>
<section anchor="security-requirements" title="Security Requirements">

<section anchor="security-mechanisms" title="Security Mechanisms">

<t>The compression solution SHOULD be able to address security issues that it introduces, using existing security mechanisms.</t>

<texttable title="Security Mechanisms">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>Security Mechanisms</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: All proposals address security issues they may introduce with existing security mechanisms.</t>

</section>
<section anchor="sr-domain-protection" title="SR Domain Protection">

<t>A compression solution must not require nodes outside the SR domain to know SID values within the SR domain, and it must provide the ability to block nodes outside an SR domain from accessing SIDS.</t>

<texttable title="SR Domain Protection">
      <ttcol align='left'>&#160;</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>SR Domain Protection</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
      <c>Yes</c>
</texttable>

<t>Conclusion: All proposals protect SIDs within the SR domain.</t>

</section>
</section>
<section anchor="conclusions" title="Conclusions">

<t>Encapsulation Header Size</t>

<t><list style="symbols">
  <t>All proposals meet the requirement to reduce the size of the SRv6 encapsulation header. Variances between proposals are negligible.</t>
</list></t>

<t>Forwarding Efficiency</t>

<t><list style="symbols">
  <t>Overall, the CSID parses the fewest headers. When per packet state is processed per segment, CSID, VSID and UIDSR proposals may include it in the routing header, CRH may include it in a destination option preceding the CRH.</t>
  <t>CSID, VSID, and UIDSR require a single lookup to process an adjacency or VPN segment. CRH always requires 2 lookups for VPN segments, and 2 and sometimes 3 lookups for adjacency segments. All proposals require two lookups to process a prefix segment and the next segment.</t>
</list></t>

<t>State Efficiency</t>

<t><list style="symbols">
  <t>CSID, VSID and UIDSR minimize forwarding state stored at a node. CRH moves per segment state from the packet to the FIB.</t>
</list></t>

<t>SRv6 Based</t>

<t><list style="symbols">
  <t>CSID is SRv6 based, requiring no updates to existing SRv6 standards, VSID and UIDSR require updates. CRH is not strictly based on SRv6 but is able to provide equivalent functionality.</t>
</list></t>

<t>SRv6 Functionality</t>

<t><list style="symbols">
  <t>CSID supports SRv6 functionality. CRH VSID and UID support SRv6 functionality or equivalent with some new specifications.</t>
</list></t>

<t>Heterogeneous SID lists</t>

<t><list style="symbols">
  <t>All proposals support heterogeneous SID lists. CSID and UIDSR support heterogeneous SID lists in the SRH, while CRH and VSID require installation of binding SIDs at midpoint nodes.</t>
</list></t>

<t>SID List Length</t>

<t><list style="symbols">
  <t>All proposals support segment lists of at least 16 segments.</t>
</list></t>

<t>SID Summarization</t>

<t><list style="symbols">
  <t>VSID, CSID and UIDSR support segment summarization, CRH does not.</t>
</list></t>

<t>Operational Requirements</t>

<t><list style="symbols">
  <t>All proposals provide lossless compression.</t>
  <t>All proposals preserve non-routing information.</t>
  <t>All proposals support flexible IPv6 planning.</t>
</list></t>

<t>Scalability Requirements</t>

<t><list style="symbols">
  <t>All proposals meet scalability requirements.</t>
  <t>All proposals support 16-bit and 32-bit SID variants.</t>
</list></t>

<t>Protocol Design Requirements</t>

<t><list style="symbols">
  <t>All proposals can be deployed simultaneously with the SRv6 base solution.</t>
</list></t>

<t>Security Requirements</t>

<t><list style="symbols">
  <t>All proposals address security issues they may introduce with existing security mechanisms.</t>
  <t>All proposals protect SIDs within the SR domain.</t>
</list></t>

</section>


  </middle>

  <back>

    <references title='Normative References'>

&I-D.filsfilscheng-spring-srv6-srh-comp-sl-enc;
&I-D.filsfils-spring-net-pgm-extension-srv6-usid;
&I-D.cl-spring-generalized-srv6-for-cmpr;
&I-D.bonica-6man-comp-rtg-hdr;
&I-D.decraene-spring-srv6-vlsid;
&I-D.mirsky-6man-unified-id-sr;
&I-D.srcompdt-spring-compression-requirement;
&I-D.ietf-lsr-flex-algo;
&RFC8986;
&I-D.ietf-spring-segment-routing-policy;
&I-D.ietf-lsr-isis-srv6-extensions;
&I-D.ietf-bess-srv6-services;
&I-D.ietf-idr-bgpls-srv6-ext;
&I-D.ietf-spring-sr-service-programming;
&I-D.ietf-6man-spring-srv6-oam;
&I-D.ietf-rtgwg-segment-routing-ti-lfa;
&RFC8402;
&RFC8754;
&I-D.ietf-lsr-ip-flexalgo;
&I-D.bonica-lsr-crh-isis-extensions;
&I-D.ssangli-bess-bgp-vpn-srm6;
&I-D.bonica-6man-vpn-dest-opt;


    </references>



<section anchor="encapsulation-analysis" title="Encapsulation analysis">

<section anchor="crh-note" title="CRH note">

<t>CRH compression efficiency statistics are derived as follows:</t>

<t>If an SR path contains no transport segments and a VPN segment, the SR path is encoded in a single IPv6 header (40 bytes). The destination address in the IPv6 header is a classic SRv6 SID (e.g., END.DT4, END.DT6).</t>

<t>If the SR path contains T transport segments and a VPN segment, and T is greater than 0, the SR path can be encoded:</t>

<t><list style="symbols">
  <t>With an IPv6 Tunnel Payload Function (TPF) Option <xref target="I-D.bonica-6man-vpn-dest-opt"/></t>
  <t>Without a TPF Option</t>
</list></t>

<t>If the SR path is encoded with a TPF Option, the packet includes a single IPv6 Header (40 bytes), a CRH (variable length), and a Destination Options header (8 bytes). The destination address in the IPv6 header represents the IPv6 address of an interface on the first transport segment endpoint. The CRH must be large enough to contain the subsequent T segments.</t>

<t>If the SR path is encoded without a TPF Option, the packet includes a single IPv6 Header (40 bytes) plus a CRH (variable length). The destination address in the IPv6 header represents the IPv6 address of an interface on the first transport segment endpoin . The CRH must be large enough to contain T+1 segments. In the CRH, SID[1] maps to the IPv6 address of the PE router. SID[0] maps to a classic SRv6 SID (e.g., END.DT4) that is instantiated on the PE router.</t>

<t>In some deployment scenarios, each encoding strategy yields better compression.</t>

</section>
<section anchor="analysis-results" title="Analysis results">

<t>The detailed encapsulation and encapsulation savings per proposal with one VPN segment and "T" transport segments:</t>

<texttable title="Encapsulation (E) octets, 16bit SIDS, 48B.0-15T.V" anchor="E16-48B-0-15T-V">
      <ttcol align='left'>T</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>0</c>
      <c>40</c>
      <c>40</c>
      <c>40</c>
      <c>40</c>
      <c>40</c>
      <c>1</c>
      <c>40</c>
      <c>48</c>
      <c>56</c>
      <c>56</c>
      <c>64</c>
      <c>2</c>
      <c>40</c>
      <c>56</c>
      <c>56</c>
      <c>56</c>
      <c>64</c>
      <c>3</c>
      <c>40</c>
      <c>56</c>
      <c>64</c>
      <c>56</c>
      <c>64</c>
      <c>4</c>
      <c>64</c>
      <c>56</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>5</c>
      <c>64</c>
      <c>56</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>6</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>7</c>
      <c>64</c>
      <c>64</c>
      <c>72</c>
      <c>64</c>
      <c>64</c>
      <c>8</c>
      <c>64</c>
      <c>64</c>
      <c>72</c>
      <c>72</c>
      <c>64</c>
      <c>9</c>
      <c>80</c>
      <c>64</c>
      <c>72</c>
      <c>72</c>
      <c>80</c>
      <c>10</c>
      <c>80</c>
      <c>72</c>
      <c>72</c>
      <c>72</c>
      <c>80</c>
      <c>11</c>
      <c>80</c>
      <c>72</c>
      <c>80</c>
      <c>72</c>
      <c>80</c>
      <c>12</c>
      <c>80</c>
      <c>72</c>
      <c>80</c>
      <c>80</c>
      <c>80</c>
      <c>13</c>
      <c>80</c>
      <c>72</c>
      <c>80</c>
      <c>80</c>
      <c>80</c>
      <c>14</c>
      <c>96</c>
      <c>80</c>
      <c>80</c>
      <c>80</c>
      <c>80</c>
      <c>15</c>
      <c>96</c>
      <c>80</c>
      <c>88</c>
      <c>80</c>
      <c>80</c>
</texttable>

<texttable title="Encapsulation Savings (ES), 16bit SIDS, 48B.0-15T.V" anchor="ES16-48B-0-15T-V">
      <ttcol align='left'>T</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>0</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>1</c>
      <c>37.5%</c>
      <c>25.0%</c>
      <c>12.5%</c>
      <c>12.5%</c>
      <c>0.0%</c>
      <c>2</c>
      <c>50.0%</c>
      <c>30.0%</c>
      <c>30.0%</c>
      <c>30.0%</c>
      <c>20.0%</c>
      <c>3</c>
      <c>58.3%</c>
      <c>41.7%</c>
      <c>33.3%</c>
      <c>41.7%</c>
      <c>33.3%</c>
      <c>4</c>
      <c>42.9%</c>
      <c>50.0%</c>
      <c>42.9%</c>
      <c>42.9%</c>
      <c>42.9%</c>
      <c>5</c>
      <c>50.0%</c>
      <c>56.3%</c>
      <c>50.0%</c>
      <c>50.0%</c>
      <c>50.0%</c>
      <c>6</c>
      <c>55.6%</c>
      <c>55.6%</c>
      <c>55.6%</c>
      <c>55.6%</c>
      <c>55.6%</c>
      <c>7</c>
      <c>60.0%</c>
      <c>60.0%</c>
      <c>55.0%</c>
      <c>60.0%</c>
      <c>60.0%</c>
      <c>8</c>
      <c>63.6%</c>
      <c>63.6%</c>
      <c>59.1%</c>
      <c>59.1%</c>
      <c>63.6%</c>
      <c>9</c>
      <c>58.3%</c>
      <c>66.7%</c>
      <c>62.5%</c>
      <c>62.5%</c>
      <c>58.3%</c>
      <c>10</c>
      <c>61.5%</c>
      <c>65.4%</c>
      <c>65.4%</c>
      <c>65.4%</c>
      <c>61.5%</c>
      <c>11</c>
      <c>64.3%</c>
      <c>67.9%</c>
      <c>64.3%</c>
      <c>67.9%</c>
      <c>64.3%</c>
      <c>12</c>
      <c>66.7%</c>
      <c>70.0%</c>
      <c>66.7%</c>
      <c>66.7%</c>
      <c>66.7%</c>
      <c>13</c>
      <c>68.8%</c>
      <c>71.9%</c>
      <c>68.8%</c>
      <c>68.8%</c>
      <c>68.8%</c>
      <c>14</c>
      <c>64.7%</c>
      <c>70.6%</c>
      <c>70.6%</c>
      <c>70.6%</c>
      <c>70.6%</c>
      <c>15</c>
      <c>66.7%</c>
      <c>72.2%</c>
      <c>69.4%</c>
      <c>72.2%</c>
      <c>72.2%</c>
</texttable>

<texttable title="Encapsulation (E) octets, 32bit SIDS, 48B.0-15T.V" anchor="E32-48B-0-15T-V">
      <ttcol align='left'>T</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>0</c>
      <c>40</c>
      <c>40</c>
      <c>40</c>
      <c>40</c>
      <c>40</c>
      <c>1</c>
      <c>64</c>
      <c>56</c>
      <c>56</c>
      <c>56</c>
      <c>64</c>
      <c>2</c>
      <c>64</c>
      <c>56</c>
      <c>64</c>
      <c>56</c>
      <c>64</c>
      <c>3</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>64</c>
      <c>4</c>
      <c>64</c>
      <c>64</c>
      <c>72</c>
      <c>64</c>
      <c>64</c>
      <c>5</c>
      <c>80</c>
      <c>72</c>
      <c>72</c>
      <c>72</c>
      <c>80</c>
      <c>6</c>
      <c>80</c>
      <c>72</c>
      <c>80</c>
      <c>72</c>
      <c>80</c>
      <c>7</c>
      <c>80</c>
      <c>80</c>
      <c>80</c>
      <c>80</c>
      <c>80</c>
      <c>8</c>
      <c>80</c>
      <c>80</c>
      <c>88</c>
      <c>80</c>
      <c>80</c>
      <c>9</c>
      <c>96</c>
      <c>88</c>
      <c>88</c>
      <c>88</c>
      <c>96</c>
      <c>10</c>
      <c>96</c>
      <c>88</c>
      <c>96</c>
      <c>88</c>
      <c>96</c>
      <c>11</c>
      <c>96</c>
      <c>96</c>
      <c>96</c>
      <c>96</c>
      <c>96</c>
      <c>12</c>
      <c>96</c>
      <c>96</c>
      <c>104</c>
      <c>96</c>
      <c>96</c>
      <c>13</c>
      <c>112</c>
      <c>104</c>
      <c>104</c>
      <c>104</c>
      <c>112</c>
      <c>14</c>
      <c>112</c>
      <c>104</c>
      <c>112</c>
      <c>104</c>
      <c>112</c>
      <c>15</c>
      <c>112</c>
      <c>112</c>
      <c>112</c>
      <c>112</c>
      <c>112</c>
</texttable>

<texttable title="Encapsulation Savings (ES), 32bit SIDS, 48B.0-15T.V" anchor="ES32-48B-0-15T-V">
      <ttcol align='left'>T</ttcol>
      <ttcol align='left'>CSID</ttcol>
      <ttcol align='left'>CRH</ttcol>
      <ttcol align='left'>CRH+TPF</ttcol>
      <ttcol align='left'>VSID</ttcol>
      <ttcol align='left'>UIDSR</ttcol>
      <c>0</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>0.0%</c>
      <c>1</c>
      <c>0.0%</c>
      <c>12.5%</c>
      <c>12.5%</c>
      <c>12.5%</c>
      <c>0.0%</c>
      <c>2</c>
      <c>20.0%</c>
      <c>30.0%</c>
      <c>20.0%</c>
      <c>30.0%</c>
      <c>20.0%</c>
      <c>3</c>
      <c>33.3%</c>
      <c>33.3%</c>
      <c>33.3%</c>
      <c>33.3%</c>
      <c>33.3%</c>
      <c>4</c>
      <c>42.9%</c>
      <c>42.9%</c>
      <c>35.7%</c>
      <c>42.9%</c>
      <c>42.9%</c>
      <c>5</c>
      <c>37.5%</c>
      <c>43.8%</c>
      <c>43.8%</c>
      <c>43.8%</c>
      <c>37.5%</c>
      <c>6</c>
      <c>44.4%</c>
      <c>50.0%</c>
      <c>44.4%</c>
      <c>50.0%</c>
      <c>44.4%</c>
      <c>7</c>
      <c>50.0%</c>
      <c>50.0%</c>
      <c>50.0%</c>
      <c>50.0%</c>
      <c>50.0%</c>
      <c>8</c>
      <c>54.5%</c>
      <c>54.5%</c>
      <c>50.0%</c>
      <c>54.5%</c>
      <c>54.5%</c>
      <c>9</c>
      <c>50.0%</c>
      <c>54.2%</c>
      <c>54.2%</c>
      <c>54.2%</c>
      <c>50.0%</c>
      <c>10</c>
      <c>53.8%</c>
      <c>57.7%</c>
      <c>53.8%</c>
      <c>57.7%</c>
      <c>53.8%</c>
      <c>11</c>
      <c>57.1%</c>
      <c>57.1%</c>
      <c>57.1%</c>
      <c>57.1%</c>
      <c>57.1%</c>
      <c>12</c>
      <c>60.0%</c>
      <c>60.0%</c>
      <c>56.7%</c>
      <c>60.0%</c>
      <c>60.0%</c>
      <c>13</c>
      <c>56.3%</c>
      <c>59.4%</c>
      <c>59.4%</c>
      <c>59.4%</c>
      <c>56.3%</c>
      <c>14</c>
      <c>58.8%</c>
      <c>61.8%</c>
      <c>58.8%</c>
      <c>61.8%</c>
      <c>58.8%</c>
      <c>15</c>
      <c>61.1%</c>
      <c>61.1%</c>
      <c>61.1%</c>
      <c>61.1%</c>
      <c>61.1%</c>
</texttable>

</section>
</section>


  </back>

<!-- ##markdown-source:
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
ABtpwHg5jEb8lmv30zwxjwzjylHU52ikRhmrUcZ6FMm9h9y7+hy96A/kKPxN
P9IsrDA2HjPGxpouY0UXWUXz8XjApByP8E3R6tMz33QVzcxj+frv8XNGNv/2
dImpojlaAfRcoYF+myemimbr8XH/mJoM5Cj02zwxVTRvw6hqlLH59Mw3/Ugz
uAZsyK8yH79Q0+cS84i5fNKEzSdSJbcvJ53mjP67ULqO8tqpdDeoug1Kt6mq
O6rW3qLqRrZE3qmOxtXaW9TR87K036oyjmtqb1IZimOVgjku1T42Ty1mdWq/
GG+uPbBqvxi7ta1iz2JRp/bg4GhjbeJOmV8c69m16Zt8ajGmW3sw3Fh7ZNem
VOVWbVPsKXY8HO6ndOnO8a9Tunvr3Bqe3KVyqxpXlbN+rWrcqsIdlhTusKRw
q/pWKtPSZ82TirpVn4cjJdZLTzSfKsvh6JClO396VomsoXn16IgVk1bpR0pC
uyWGX7VGdz5rnmieHR0xVPrTtHCfGE2rejpivcGfnl2ix2DeHcn5jZ6zxhnp
mbslhn+hfPDHymfNE6Nmy1aGUbPuE83H2up5IbGs9Z8uGWtVTtw6knoZrAKe
j9HLTomlYwcMrftZ80Sq2CZM7arYzWz9vxxL2OkQmgAA

-->

</rfc>

