<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-li-sidrops-bicone-sav-05" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.1 -->
  <front>
    <title abbrev="Bicone SAV">Bicone Source Address Validation</title>
    <seriesInfo name="Internet-Draft" value="draft-li-sidrops-bicone-sav-05"/>
    <author initials="D." surname="Li" fullname="Dan Li">
      <organization>Tsinghua University</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>tolidan@tsinghua.edu.cn</email>
      </address>
    </author>
    <author initials="L." surname="Qin" fullname="Lancheng Qin">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>qinlc@mail.zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="L." surname="Chen" fullname="Li Chen">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>lichen@zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="L." surname="Liu" fullname="Libin Liu">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>liulb@zgclab.edu.cn</email>
      </address>
    </author>
    <date year="2024" month="September" day="29"/>
    <area>Operations and Management</area>
    <workgroup>SIDROPS</workgroup>
    <keyword>SAV</keyword>
    <abstract>
      <?line 66?>

<t>The primary design goal of source address validation (SAV) is avoiding improper blocks (i.e., blocking legitimate traffic) while maintaining directionality, especially in partial deployment scenarios (see <xref target="I-D.ietf-savnet-inter-domain-problem-statement"/> and <xref target="RFC8704"/>). Existing advanced SAV solutions (e.g., EFP-uRPF <xref target="RFC8704"/>) typically generate ingress SAV allowlist filters on interfaces facing a customer or lateral peer AS. This document analyzes the potential improper block problems when using an allowlist. To avoid improper blocks, this document proposes a new SAV solution by generating an ingress SAV blocklist filter based on BGP updates, ROAs, and ASPAs related to the provider cone. In practice, network operators can flexibly decide to use a blocklist or an allowlist according to their requirements and actual conditions.</t>
    </abstract>
  </front>
  <middle>
    <?line 71?>

<section anchor="sec-intro">
      <name>Introduction</name>
      <t>Source address spoofing is one of the most serious security threats to today's Internet. It serves as a main attack vector for large-scale Distributed Denial of Service (DDoS) attacks and is commonly used in reflective DDoS attacks. To mitigate source address spoofing, many source address validation (SAV) solutions (e.g., BCP38 <xref target="RFC2827"/> and BCP84 <xref target="RFC3704"/> <xref target="RFC8704"/>) have been proposed. The primary design goal of SAV solutions is avoiding improper block (i.e., blocking legitimate traffic) while maintaining directionality, especially in partial deployment scenarios (see <xref target="I-D.ietf-savnet-inter-domain-problem-statement"/> and <xref target="RFC8704"/>).</t>
      <t>Existing advanced SAV solutions (e.g., EFP-uRPF <xref target="RFC8704"/>) typically generate ingress SAV allowlist filters on interfaces facing a customer or lateral peer AS by using information related to the customer cone of that AS. When adopting SAV based on the allowlist, the interface only allows incoming data packets using source addresses that are covered in the allowlist. Therefore, the allowlist must contain all prefixes belonging to the corresponding customer cone. Otherwise, if the allowlist is incomplete, it will improperly block legitimate traffic from the corresponding customer cone.</t>
      <t>This document analyzes the potential improper block problems when using an allowlist. To avoid improper blocks, this document proposes a new SAV solution by generating an ingress SAV blocklist filter based on BGP updates, ROAs, and ASPAs related to the provider cone. The blocklist should contain as many prefixes belonging to the provider cone as possible. When adopting SAV based on the blocklist, the interface blocks incoming data packets using source addresses that are covered in the blocklist. In practice, network operators can flexibly decide to use a blocklist or an allowlist according to their requirements and actual conditions.</t>
      <t>The reader is encouraged to be familiar with <xref target="I-D.ietf-savnet-inter-domain-problem-statement"/>, <xref target="RFC8704"/>, <xref target="I-D.ietf-sidrops-aspa-profile"/>, <xref target="RFC6482"/>, and <xref target="I-D.ietf-sidrops-aspa-verification"/>.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>Improper Block: The validation results that the packets with legitimate source addresses are blocked improperly due to inaccurate SAV filters.</t>
      <t>Provider Cone: The set of ASes an AS can reach by using only Customer-to-Provider (C2P) links.</t>
    </section>
    <section anchor="sec-review">
      <name>Improper Block When the Allowlist is Incomplete</name>
      <t>The basic idea of existing allowlist-based SAV solutions is generating an allowlist by using information related to the customer cone of a customer or lateral peer AS. Specifically, they identify prefixes belonging to the corresponding customer cone and only allows data packets using source addresses in these prefixes on the interface facing that customer or lateral peer AS. This is because data packets received from a customer or lateral peer AS should use source addresses belonging to the customer cone of that AS unless there is a route leak <xref target="RFC7908"/>.</t>
      <t>EFP-uRPF (BCP84 <xref target="RFC8704"/>) generates allowlists by using BGP UPDATE messages related to the corresponding customer cone. However, if a multi-homed AS in customer cone limits propagation of its prefixes, EFP-uRPF may miss these prefixes in the allowlist, resulting in improper blocks. Section 3.3 of <xref target="RFC8704"/> has given such an example of limited propagation of prefixes where a multi-homed customer AS attaches NO_EXPORT to all prefixes announced to one transit provider.</t>
      <figure anchor="fig-example">
        <name>An example of limited propagation of prefixes in the customer cone</name>
        <artwork><![CDATA[
                        P1[AS5 AS3 AS1]
                        P2[AS5 AS3 AS1]
               +---------+ (P2P/P2C) +---------+
               |   AS4   +<----------+   AS5   |
               +---------+           +---------+
                    /\                 /\
      P1 and P2 not /                  / P1[AS3 AS1]
       propagated  /                  /  P2[AS3 AS1]
            (C2P) /                  /   (C2P)
           +---------+       +---------+
           |   AS2   |       |   AS3   |
           +---------+       +---------+
                 /\           /\
P1[AS1] NO_EXPORT \           / P1[AS1]
P2[AS1] NO_EXPORT  \         /  P2[AS1]
            (C2P)   \       /   (C2P)
                   +---------+
                   |   AS1   |
                   +---------+
                      P1, P2 (prefixes originated)
]]></artwork>
      </figure>
      <t><xref target="fig-example"/> illustrates a similar scenario of limited propagation of prefixes in the customer cone of AS4. Arrows in the figure indicate propagation direction of BGP announcements as well as AS relationship (i.e., Provider-to-Customer (P2C), Customer-to-Provider (C2P), or Peer-to-Peer (P2P)) from sending AS to receiving AS. AS1 announces the route for prefixes P1 and P2 to its two provider ASes, i.e., AS2 and AS3. Since AS1 attaches NO_EXPORT in the BGP UPDATE message sent to AS2, AS2 will not propagate the route to AS4. As a result, AS4 only receives the route to prefixes P1 and P2 from its lateral peer or provider AS5. If AS4 uses EFP-uRPF (including Algorithm A and Algorithm B) to generate an allowlist on AS4-AS2 interface, the allowlist will not contain prefixes P1 and P2, and thus will improperly block data packets using source addresses in prefixes P1 or P2.</t>
      <t>More recent SAV solutions (e.g., BAR-SAV <xref target="I-D.ietf-sidrops-bar-sav"/>) additionally use Autonomous System Provider Authorization (ASPA) <xref target="I-D.ietf-sidrops-aspa-profile"/> and Route Origin Authorization (ROA) <xref target="RFC6482"/> related to the customer cone to generate a more robust allowlist. Since registering ASPAs and ROAs is optional for network operators, ASPAs and ROAs would be partially deployed for a long time. When some ASes in the customer cone (e.g., AS1 in <xref target="fig-example"/>) do not register ASPAs or ROAs, this kind of solutions will still fail to discover all prefixes belonging to the customer cone, leading to an incomplete allowlist. If the allowlist is incomplete, it will improperly block data packets using legitimate source addresses.</t>
      <t>Overall, considering the complexity of inter-domain routing, existing SAV solutions which use allowlist filters on interfaces facing a customer or lateral peer AS may fail to identify all prefixes of the corresponding customer cone. In this case, the incomplete allowlist will have improper blocks.</t>
    </section>
    <section anchor="sec-goal">
      <name>Goals of Bicone SAV</name>
      <t>Bicone SAV aims to achieve more robust ingress SAV filtering on interfaces facing a customer or lateral peer AS by flexibly using allowlist or blocklist filters. It has two main goals:</t>
      <ol spacing="normal" type="1"><li>
          <t>Avoiding improper blocks. Bicone SAV aims to avoid blocking legitimate data packets received from a customer or lateral peer AS. As described in <xref target="sec-review"/>, if the allowlist is incomplete, it will improperly block legitimate data packets. In this case, it is recommended to use a blocklist to avoid improper blocks.</t>
        </li>
        <li>
          <t>Maintaining directionality. Unlike Loose uRPF <xref target="RFC3704"/> which completely loses directionality, Bicone SAV aims to identify more source-spoofed data packets by maintaining directionality. In general, the allowlist filter has stricter directionality than the blocklist filter, so using an allowlist will have less improper admits.</t>
        </li>
      </ol>
    </section>
    <section anchor="sec-generate">
      <name>Blocklist Generation</name>
      <t>This section introduces how to generate a blocklist by using BGP updates, ROAs, and ASPAs related to the provider cone.</t>
      <section anchor="key-idea">
        <name>Key Idea</name>
        <t>The provider cone of an AS is defined as the set of ASes an AS can reach by using only Customer-to-Provider (C2P) links. Considering prefixes only associated with ASes in the provider cone should not be used as source addresses in data packets received from any customer or lateral peer AS unless there is a route leak <xref target="RFC7908"/>. The blocklist can contain prefixes only belonging to the provider cone. When using the blocklist on an interface facing a customer or lateral peer AS, it will block data packets received from that interface using any source address in the blocklist.</t>
        <figure anchor="fig-example2">
          <name>An example of the multi-homed prefix</name>
          <artwork><![CDATA[
          P1 (prefix originated)                     
               +---------+                           
               |   AS6   |                           
               +---------+                           
                    |                                
            P1[AS6] |                                
            (P2C)   |   P1[AS5 AS3 AS1]              
                   \/   P2[AS5 AS3 AS1]              
               +---------+ (P2P/P2C) +---------+     
               |   AS4   +<----------+   AS5   |     
               +---------+           +---------+     
                    /\                 /\            
      P1 and P2 not /                  / P1[AS3 AS1] 
       propagated  /                  /  P2[AS3 AS1] 
            (C2P) /                  /   (C2P)       
           +---------+       +---------+             
           |   AS2   |       |   AS3   |             
           +---------+       +---------+             
                 /\           /\                     
P1[AS1] NO_EXPORT \           / P1[AS1]              
P2[AS1] NO_EXPORT  \         /  P2[AS1]              
            (C2P)   \       /   (C2P)                
                   +---------+                       
                   |   AS1   |                       
                   +---------+                       
            P1, P2 (prefixes originated) 
]]></artwork>
        </figure>
        <t>To generate such a blocklist, an AS can first identify ASes in its provider cone by using ASPAs and AS-PATH in BGP UPDATE messages. Then, it can discover prefixes belonging to these ASes by using ROAs and BGP UPDATE messages. Subsequently, it must remove prefixes that also belong to its customer cone. For example, in <xref target="fig-example2"/>, both AS1 and AS6 announce the route for prefix P1. If the blocklist on AS4-AS2 interface contains Prefix P1, it will cause improper blocks. Since an AS may not know if a prefix is belonging to its customer cone (as analyzed in <xref target="sec-review"/>), it should remove all suspicious prefixes. To this end, it can use all BGP UPDATE messages and ROAs to identify prefixes that are belonging to both ASes in the provider cone and ASes not in the provider cone. These prefixes should not be contained in the blocklist to avoid any potential improper block. Finally, it can include the remaining prefixes in the blocklist.</t>
      </section>
      <section anchor="subsec-procedure">
        <name>Generation Procedure</name>
        <t>A detailed description of blocklist generation procedure is as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>Create the set of all directly connected Provider ASNs. Call it AS-set Z(1).</t>
          </li>
          <li>
            <t>Create the set of all unique AS_PATHs in Adj-RIBs-In of all interfaces facing Providers.</t>
          </li>
          <li>
            <t>For each unique AS_PATH with N (N&gt;1) ASNs, i.e., [ASN_{1}, ASN_{2}, ..., ASN_{i}, ASN_{i+1}, ..., ASN_{N}] where ASN_{i} is the ith ASN in AS_PATH and the first ASN (i.e., ASN_{1}) is a directly connected Provider ASN. If all unique AS_PATHs have been processed, go to Step 8.</t>
          </li>
          <li>
            <t>Let i = N</t>
          </li>
          <li>
            <t>Decrement i to i-1.</t>
          </li>
          <li>
            <t>If ASN_{i} authorizes ASN_{i+1} as a Provider in ASN_{i}'s ASPA, ASNs from ASN_{1} to ASN_{i+1} (i.e., ASN_{1}, ASN_{2}, ..., ASN_{i}, and ASN_{i+1}) are included in AS-set Z(1) and go to Step 3.</t>
          </li>
          <li>
            <t>If i == 1, go to Step 3. Else, go to Step 5.</t>
          </li>
          <li>
            <t>Let k = 1.</t>
          </li>
          <li>
            <t>Increment k to k+1.</t>
          </li>
          <li>
            <t>Create AS-set Z(k) of ASNs that are not in AS-set Z(k-1) but are authorized as Providers in ASPAs of any ASN in AS-set Z(k-1).</t>
          </li>
          <li>
            <t>If AS-set Z(k) is null, then set k_max = k-1 and go to Step 12. Else, form the union of AS-set Z(k) and AS-set Z(k-1) as AS-set Z(k) and go to Step 9.</t>
          </li>
          <li>
            <t>Select all ROAs in which the authorized origin ASN is in AS-set Z(k_max). Form the union of the sets of prefixes in the selected ROAs. Call it Prefix-set S1.</t>
          </li>
          <li>
            <t>Using the routes in Adj-RIBs-In of all interfaces facing Providers, create a set of prefixes originated by any ASN in AS-set Z(k_max). Call it Prefix-set S2.</t>
          </li>
          <li>
            <t>Form the union of Prefix-set S1 and Prefix-set S2 as Prefix-set S3.</t>
          </li>
          <li>
            <t>For each unique Prefix P in Prefix-set S3, check origin ASNs of Prefix P and its sub prefixes by using all ROAs and in Adj-RIBs-In of all interfaces. If all unique Prefixes in Prefix-set S3 have been processed, go to Step 17.</t>
          </li>
          <li>
            <t>For each prefix of Prefix P and its sub prefixes, if the prefix has at least one origin ASN not in AS-set Z(k_max), remove the prefix from Prefix-set S3. Go to Step 15.</t>
          </li>
          <li>
            <t>Apply Prefix-set S3 as a blocklist on interfaces facing a customer or lateral peer AS.</t>
          </li>
        </ol>
        <t>By following the above procedure, AS4 in <xref target="fig-example"/> and <xref target="fig-example2"/> can generate a blocklist on AS4-AS2 interface. The blocklist contains prefixes that belong only to the provider cone of AS4 and does not contain prefixes P1 and P2. If AS4 uses this blocklist SAV filter on the interface facing AS2, it will not improperly block data packets using source addresses in prefixes P1 and P2. Meanwhile, it can accurately identify and block source-spoofed data packets using source addresses in the blocklist. Therefore, this blocklist SAV filter can address the improper block problems of existing allowlist SAV filters, while maintaining directionality.</t>
      </section>
      <section anchor="incremental-and-partial-deployment-of-aspas">
        <name>Incremental and Partial Deployment of ASPAs</name>
        <t>Note that it is difficult for an AS to identify all ASes in its provider cone when some ASes in the provider cone do not register ASPAs. Therefore, the generated blocklist may not include all prefixes in the provider cone under incremental and partial deployment of ASPAs. The main advantage of blocklist over allowlist is that, when the blocklist is incomplete, the blocklist will not improperly block legitimate data packets and will still block source-spoofed data packets using source addresses in the blocklist, providing immediate incremental benefits to adopters.</t>
      </section>
    </section>
    <section anchor="a-challenging-scenario">
      <name>A Challenging Scenario</name>
      <t>The Content Delivery Networks (CDN) and Direct Server Return (DSR) scenario is a challenging scenario for both allowlist-based SAV and blocklist-based SAV. In <xref target="fig-example3"/>, AS6 announces the route for anycast prefix P3. However, although AS1 does not announce the route for prefix P3 or register a ROA for prefix P3, it will send data packets using source addresses in prefix P3 due to the DSR technology. If AS4 applies an allowlist on interface AS4-AS2, the allowlist will not contain prefix P3. If AS4 applies a blocklist on interface AS4-AS2, the blocklist will contain prefix P3. Therefore, both allowlist and blocklist on interface AS4-AS2 will improperly block data packets using source addresses in prefix P3. One possible solution is that the network operator manually identifies the special purpose prefixes for anycast and DSR, and either removes them from the blocklist or adds them to the allowlist.</t>
      <figure anchor="fig-example3">
        <name>An example of the CDN and DSR scenario</name>
        <artwork><![CDATA[
    P3 (anycast prefix)                        
        +---------+                            
        |   AS6   |-Anycast Server             
        +---------+                            
             |                                 
     P3[AS6] |                                 
     (P2C)   |                                 
            \/                                 
        +---------+ (P2P/P2C) +---------+      
        |   AS4   +<----------+   AS5   |      
        +---------+           +---------+      
             /\                 /\             
             /                  /              
      (C2P) /                  / (C2P)         
           /                  /                
    +---------+       +---------+              
    |   AS2   |       |   AS3   |              
    +---------+       +---------+              
          /\           /\                      
           \           /                       
      (C2P) \         / (C2P)                  
             \       /                         
            +---------+                        
            |   AS1   |-Edge Server            
            +---------+                        
(AS1 never announces the route for P3)
]]></artwork>
      </figure>
    </section>
    <section anchor="sec-ops">
      <name>Implementation and Operations Considerations</name>
      <t>Network operators are advised to flexibly use either allowlist or blocklist on interfaces facing different customer or lateral peer ASes according to their requirements and actual conditions.</t>
      <section anchor="meeting-the-goals">
        <name>Meeting the Goals</name>
        <t>Avoiding improper blocks is more important because discarding legitimate traffic will cause serious traffic interruption. On the basis of avoiding improper blocks, the less improper admits of SAV, the better.</t>
        <t>If the allowlist on an interface is complete, it will have no improper block and no improper admit. But if the allowlist is incomplete due to hidden prefixes (e.g., prefixes P1 and P2 in <xref target="fig-example"/>) in the customer cone and lack of necessary ASPAs, the allowlist will have improper blocks, thus failing to meet the goal. For a blocklist, it will not improperly block legitimate data packets whether the blocklist is complete or not.</t>
        <t>Therefore, if the allowlist on an interface is complete, network operators are advised to use the allowlist. Otherwise, network operators are advised to use the blocklist. For small ISPs with a smaller customer cone size, it is easier to determine whether an allowlist is complete because there are fewer ASes in the customer cone and the routing should be relative simple. For example, they can ask a customer or lateral peer AS whether all ASes in its customer cone have deployed ASPAs. But for large ISPs with a larger customer cone size, it is more challenging. If network operators cannot determine the integrity of the allowlist, the blocklist is recommended to avoid possible improper blocks.</t>
      </section>
      <section anchor="storage-overhead">
        <name>Storage Overhead</name>
        <t>Additional memory (i.e., ternary content-addressable memory (TCAM)) is required to store the allowlist or blocklist in line cards. Network operators need to take storage overhead into consideration when deploying allowlists or blocklists. Generally, a small ISP will generate a smaller allowlist and a larger blocklist, while a large ISP will generate a larger allowlist and a smaller blocklist. A possible way to save memory is to store the original list in the control plane, with only the aggregated list stored in memory. For example, if the original list contains prefixes P1 and P2 and prefix P1 is a less-specific prefix of prefix P2, then only prefix P1 is stored in memory.</t>
      </section>
      <section anchor="implementation-and-operations-recommendations">
        <name>Implementation and Operations Recommendations</name>
        <t>For an interface facing a customer or lateral peer AS:</t>
        <ol spacing="normal" type="1"><li>
            <t>If the network operator can determine that the allowlist covers all prefixes of the facing customer cone, it is recommended to use an allowlist on the interface because the complete allowlist would have neither improper blocks nor improper admits.</t>
          </li>
          <li>
            <t>If the network operator cannot determine the integrity of the allowlist, it is recommended to use a blocklist filter to avoid improper blocks. It is highly recommended to use Loose uRPF and the blocklist together to block more spoofing data packets than solely using Loose uRPF or the blocklist. Loose uRPF is used to block data packets using unallocated or unrouteable source addresses. The blocklist is used to block data packets using source addresses that only belong to the provider cone.</t>
          </li>
        </ol>
        <t>Network operators are allowed to manually modify or configure the allowlist or the blocklist according to their local knowledge. For example, to improve the use of blocklist, they can add special purpose prefixes that will not be used as source addresses of data packets or remove prefixes that would be used for anycast and DSR. This operation can also be achieved automatically if there is a public prefix list that contains the required prefixes, e.g., IANA IPv4 Special-Purpose Address Registry <xref target="IANA"/>.</t>
      </section>
    </section>
    <section anchor="sec-security">
      <name>Security Considerations</name>
      <t>The security considerations described in <xref target="RFC8704"/>, <xref target="I-D.ietf-sidrops-bar-sav"/>, <xref target="I-D.ietf-sidrops-aspa-profile"/>, <xref target="RFC6482"/>, and <xref target="I-D.ietf-sidrops-aspa-verification"/> also applies to this document.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA requirements.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors would like to thank Ben Maddison, Kotikalapudi Sriram, Nan Geng, Aijun Wang, Shengnan Yue, Siyuan Teng, Igor Lubashev, Job Snijders, and many other members of the SIDROPS and SAVNET working groups for comments and discussion.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8704" target="https://www.rfc-editor.org/info/rfc8704" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8704.xml">
          <front>
            <title>Enhanced Feasible-Path Unicast Reverse Path Forwarding</title>
            <author fullname="K. Sriram" initials="K." surname="Sriram"/>
            <author fullname="D. Montgomery" initials="D." surname="Montgomery"/>
            <author fullname="J. Haas" initials="J." surname="Haas"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document identifies a need for and proposes improvement of the unicast Reverse Path Forwarding (uRPF) techniques (see RFC 3704) for detection and mitigation of source address spoofing (see BCP 38). Strict uRPF is inflexible about directionality, the loose uRPF is oblivious to directionality, and the current feasible-path uRPF attempts to strike a balance between the two (see RFC 3704). However, as shown in this document, the existing feasible-path uRPF still has shortcomings. This document describes enhanced feasible-path uRPF (EFP-uRPF) techniques that are more flexible (in a meaningful way) about directionality than the feasible-path uRPF (RFC 3704). The proposed EFP-uRPF methods aim to significantly reduce false positives regarding invalid detection in source address validation (SAV). Hence, they can potentially alleviate ISPs' concerns about the possibility of disrupting service for their customers and encourage greater deployment of uRPF techniques. This document updates RFC 3704.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="84"/>
          <seriesInfo name="RFC" value="8704"/>
          <seriesInfo name="DOI" value="10.17487/RFC8704"/>
        </reference>
        <reference anchor="I-D.ietf-sidrops-aspa-profile" target="https://datatracker.ietf.org/doc/html/draft-ietf-sidrops-aspa-profile-18" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-sidrops-aspa-profile.xml">
          <front>
            <title>A Profile for Autonomous System Provider Authorization</title>
            <author fullname="Alexander Azimov" initials="A." surname="Azimov">
              <organization>Yandex</organization>
            </author>
            <author fullname="Eugene Uskov" initials="E." surname="Uskov">
              <organization>JetLend</organization>
            </author>
            <author fullname="Randy Bush" initials="R." surname="Bush">
              <organization>Internet Initiative Japan</organization>
            </author>
            <author fullname="Job Snijders" initials="J." surname="Snijders">
              <organization>Fastly</organization>
            </author>
            <author fullname="Russ Housley" initials="R." surname="Housley">
              <organization>Vigil Security, LLC</organization>
            </author>
            <author fullname="Ben Maddison" initials="B." surname="Maddison">
              <organization>Workonline</organization>
            </author>
            <date day="25" month="June" year="2024"/>
            <abstract>
              <t>This document defines a Cryptographic Message Syntax (CMS) protected content type for Autonomous System Provider Authorization (ASPA) objects for use with the Resource Public Key Infrastructure (RPKI). An ASPA is a digitally signed object through which the issuer (the holder of an Autonomous System identifier), can authorize one or more other Autonomous Systems (ASes) as its upstream providers. When validated, an ASPA's eContent can be used for detection and mitigation of route leaks.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-sidrops-aspa-profile-18"/>
        </reference>
        <reference anchor="RFC6482" target="https://www.rfc-editor.org/info/rfc6482" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6482.xml">
          <front>
            <title>A Profile for Route Origin Authorizations (ROAs)</title>
            <author fullname="M. Lepinski" initials="M." surname="Lepinski"/>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <author fullname="D. Kong" initials="D." surname="Kong"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>This document defines a standard profile for Route Origin Authorizations (ROAs). A ROA is a digitally signed object that provides a means of verifying that an IP address block holder has authorized an Autonomous System (AS) to originate routes to one or more prefixes within the address block. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6482"/>
          <seriesInfo name="DOI" value="10.17487/RFC6482"/>
        </reference>
        <reference anchor="I-D.ietf-sidrops-aspa-verification" target="https://datatracker.ietf.org/doc/html/draft-ietf-sidrops-aspa-verification-19" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-sidrops-aspa-verification.xml">
          <front>
            <title>BGP AS_PATH Verification Based on Autonomous System Provider Authorization (ASPA) Objects</title>
            <author fullname="Alexander Azimov" initials="A." surname="Azimov">
              <organization>Yandex</organization>
            </author>
            <author fullname="Eugene Bogomazov" initials="E." surname="Bogomazov">
              <organization>Qrator Labs</organization>
            </author>
            <author fullname="Randy Bush" initials="R." surname="Bush">
              <organization>Internet Initiative Japan &amp; Arrcus, Inc.</organization>
            </author>
            <author fullname="Keyur Patel" initials="K." surname="Patel">
              <organization>Arrcus</organization>
            </author>
            <author fullname="Job Snijders" initials="J." surname="Snijders">
              <organization>Fastly</organization>
            </author>
            <author fullname="Kotikalapudi Sriram" initials="K." surname="Sriram">
              <organization>USA National Institute of Standards and Technology</organization>
            </author>
            <date day="27" month="September" year="2024"/>
            <abstract>
              <t>This document describes procedures that make use of Autonomous System Provider Authorization (ASPA) objects in the Resource Public Key Infrastructure (RPKI) to verify the Border Gateway Protocol (BGP) AS_PATH attribute of advertised routes. This type of AS_PATH verification provides detection and mitigation of route leaks and some forms of AS path manipulation. It also provides protection, to some degree, against prefix hijacks with forged-origin or forged- path-segment.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-sidrops-aspa-verification-19"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC2827" target="https://www.rfc-editor.org/info/rfc2827" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2827.xml">
          <front>
            <title>Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing</title>
            <author fullname="P. Ferguson" initials="P." surname="Ferguson"/>
            <author fullname="D. Senie" initials="D." surname="Senie"/>
            <date month="May" year="2000"/>
            <abstract>
              <t>This paper discusses a simple, effective, and straightforward method for using ingress traffic filtering to prohibit DoS (Denial of Service) attacks which use forged IP addresses to be propagated from 'behind' an Internet Service Provider's (ISP) aggregation point. 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="38"/>
          <seriesInfo name="RFC" value="2827"/>
          <seriesInfo name="DOI" value="10.17487/RFC2827"/>
        </reference>
        <reference anchor="RFC3704" target="https://www.rfc-editor.org/info/rfc3704" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3704.xml">
          <front>
            <title>Ingress Filtering for Multihomed Networks</title>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="P. Savola" initials="P." surname="Savola"/>
            <date month="March" year="2004"/>
            <abstract>
              <t>BCP 38, RFC 2827, is designed to limit the impact of distributed denial of service attacks, by denying traffic with spoofed addresses access to the network, and to help ensure that traffic is traceable to its correct source network. As a side effect of protecting the Internet against such attacks, the network implementing the solution also protects itself from this and other attacks, such as spoofed management access to networking equipment. There are cases when this may create problems, e.g., with multihoming. This document describes the current ingress filtering operational mechanisms, examines generic issues related to ingress filtering, and delves into the effects on multihoming in particular. This memo updates RFC 2827. 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="84"/>
          <seriesInfo name="RFC" value="3704"/>
          <seriesInfo name="DOI" value="10.17487/RFC3704"/>
        </reference>
        <reference anchor="I-D.ietf-savnet-inter-domain-problem-statement" target="https://datatracker.ietf.org/doc/html/draft-ietf-savnet-inter-domain-problem-statement-05" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-savnet-inter-domain-problem-statement.xml">
          <front>
            <title>Source Address Validation in Inter-domain Networks Gap Analysis, Problem Statement, and Requirements</title>
            <author fullname="Dan Li" initials="D." surname="Li">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Jianping Wu" initials="J." surname="Wu">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Libin Liu" initials="L." surname="Liu">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Mingqing(Michael) Huang" initials="M." surname="Huang">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Kotikalapudi Sriram" initials="K." surname="Sriram">
              <organization>USA National Institute of Standards and Technology</organization>
            </author>
            <date day="8" month="September" year="2024"/>
            <abstract>
              <t>This document provides the gap analysis of existing inter-domain source address validation mechanisms, describes the fundamental problems, and defines the requirements for technical improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-savnet-inter-domain-problem-statement-05"/>
        </reference>
        <reference anchor="I-D.ietf-sidrops-bar-sav" target="https://datatracker.ietf.org/doc/html/draft-ietf-sidrops-bar-sav-04" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-sidrops-bar-sav.xml">
          <front>
            <title>Source Address Validation Using BGP UPDATEs, ASPA, and ROA (BAR-SAV)</title>
            <author fullname="Kotikalapudi Sriram" initials="K." surname="Sriram">
              <organization>USA National Institute of Standards and Technology</organization>
            </author>
            <author fullname="Igor Lubashev" initials="I." surname="Lubashev">
              <organization>Akamai Technologies</organization>
            </author>
            <author fullname="Doug Montgomery" initials="D." surname="Montgomery">
              <organization>USA National Institute of Standards and Technology</organization>
            </author>
            <date day="1" month="September" year="2024"/>
            <abstract>
              <t>Designing an efficient source address validation (SAV) filter requires minimizing false positives (i.e., avoiding blocking legitimate traffic) while maintaining directionality (see RFC8704). This document advances the technology for SAV filter design through a method that makes use of BGP UPDATE messages, Autonomous System Provider Authorization (ASPA), and Route Origin Authorization (ROA). The proposed method's name is abbreviated as BAR-SAV. BAR-SAV can be used by network operators to derive more robust SAV filters and thus improve network resilience. This document updates RFC8704.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-sidrops-bar-sav-04"/>
        </reference>
        <reference anchor="RFC7908" target="https://www.rfc-editor.org/info/rfc7908" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7908.xml">
          <front>
            <title>Problem Definition and Classification of BGP Route Leaks</title>
            <author fullname="K. Sriram" initials="K." surname="Sriram"/>
            <author fullname="D. Montgomery" initials="D." surname="Montgomery"/>
            <author fullname="D. McPherson" initials="D." surname="McPherson"/>
            <author fullname="E. Osterweil" initials="E." surname="Osterweil"/>
            <author fullname="B. Dickson" initials="B." surname="Dickson"/>
            <date month="June" year="2016"/>
            <abstract>
              <t>A systemic vulnerability of the Border Gateway Protocol routing system, known as "route leaks", has received significant attention in recent years. Frequent incidents that result in significant disruptions to Internet routing are labeled route leaks, but to date a common definition of the term has been lacking. This document provides a working definition of route leaks while keeping in mind the real occurrences that have received significant attention. Further, this document attempts to enumerate (though not exhaustively) different types of route leaks based on observed events on the Internet. The aim is to provide a taxonomy that covers several forms of route leaks that have been observed and are of concern to the Internet user community as well as the network operator community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7908"/>
          <seriesInfo name="DOI" value="10.17487/RFC7908"/>
        </reference>
        <reference anchor="IANA" target="https://www.iana.org/assignments/iana-ipv4-special-registry/iana-ipv4-special-registry.xhtml">
          <front>
            <title>IANA IPv4 Special-Purpose Address Registry</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 314?>



  </back>
  <!-- ##markdown-source:
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
tIFxM2RR8CGXVhNls+2DP/vQ6B2j7EiaNcM3pKZ7l1YeiMOy2NCVZn20uYpj
6cS0pkm1ozu7q2e1s88Vxyf4HQzAP5WYycFvPlB40+nNdbU19riFGvsrDSst
gDk4MgPO4CSQV8xcG9mvCmkgaCJBaMVNFZmwVTgr+LSz9QJblF27g+1z2g3J
RF70XSX32wJbv+4kBpA4eoHh6clkbA6XhnwHN8nbLa1+q1oMJTA7UiPDkhId
a5UViTxP3aWQlTvun0LgLuWN1QYrGcSqUHJ957bVmk9jXCNUOHujIkunLimf
oa82NKBWUDfSBT4gxHlVU7cJwFF2qk+3eASkO+voRxrJCRUpJOk8p49cWtPY
5qtmuelrbpz5a7FnoxeUy5JVeNDRIvxYTGBpTCZgZ/VchjHo1uocAAgXgH5r
Czb4iRsU2Ygj6L6JSUKc2468OBq9291lWEi7EyBAmFw2hcM1LbANdHwaNTTQ
um21Umn6GsMrSdNRAsTAjETKqpZwNpGU9+A99FJX2lsY1uKKKlVmw1o6WGk4
qU8rJX6UV22+o3E4HRbWjNKay7zTnMou4UjsqN69m5DSpRp501BbaZ+4pu6Q
CEtTbjPHFlMQgSTEfn7iWc694nbMZhDwUz6LP5KBc1H2npdo9j5cdqzTTvPW
xoHSWrZzgVMmaBL562hoXOtcvR22Z2pYBKP3bgs4TiuudY3OrUTwdRC84fTh
/bopuQpuLHQroKYGFkdoTeBdby+1tujOQwBm9cahi9Wd3Y28iJ/RdlSu6Dos
QOqUPQbj6TXdpzTLW53NXLBfg/z9lNZWXesmSb2yeR3PBcAsczWb80my5mRO
17o1K27HxszY98w4AtyKbj8C5vkC1CiOXwmtziw4c2d508Y6D5Xm1uRqlY70
TolNIVlEEgiTlSnFDyFncxrHXxrllW2m7/6ajNOOvKpXfEXcgNvIS1ZZpEUW
YwI+o1fN+cuWpvfp3xELIA0SalNKJIRoTQtvXFlTasMNdpPfrgsQx6sTWYR8
5Q2u6xyH2T1qZnl371h1GIxm6kiUme8pZFYjMZDccWbP2sRYE8/wexT8OS/W
srbpfFlOk1pRMv/SRxys2uUGImNs6+ImO+zbfygTj+/BYPr2DUScE/u1u87g
0n4Lz3ypo/o0XuQP9o7HrP9sT3UQ8V/3UR+mu00DF6YpzX4xh79aguTyMW5+
UwvLxBBa0Ug3guXCQ1SxMN1k8nDLgz06SKdqaPUwvRKHYOre4dFLnaU98Zes
UFdhEi7LWIlJrvJw0ROnwDLgpcx6YqR+KVPx9xB/T/ALvCk8+qEECZmo2xJ+
X9Cwkxkw4tsSYtS5vO6JP2dTMUnVL9y1gPSiL19lpALBlE7ppBsravNZYhoF
Qerp6wv8zBGdmaIPF3M2mNWtidoxsC7p28j2C4xTkBr4GfwPOwU018VZAAA=

-->

</rfc>
