<?xml version='1.0' encoding='utf-8'?>  <!-- -*- indent-with-tabs: 0 -*- -->
<!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.6.31 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" ipr="trust200902" docName="draft-rly-savnet-inter-domain-as-relationships-03" category="std" consensus="true" xml:lang="en" version="3">
   <front>
      <title abbrev="Inter-domain SAV">Inter-domain Source Address Validation based on AS relationships</title>
      <seriesInfo name="Internet-Draft" value="draft-rly-savnet-inter-domain-as-relationships-03"/>
      <author initials="G." surname="Ren" fullname="Gang Ren">
        <organization>Tsinghua University</organization>
        <address>
          <postal>
            <city>Beijing</city>
            <country>China</country>
          </postal>
          <email>rengang@cernet.edu.cn</email>
        </address>
      </author>
      <author initials="S." surname="Liu" fullname="Shuqi Liu">
        <organization>Tsinghua University</organization>
        <address>
          <postal>
            <city>Beijing</city>
            <country>China</country>
          </postal>
          <email>liu-sq23@mails.tsinghua.edu.cn</email>        
        </address>
      </author>
      <author initials="X." surname="Yin" fullname="Xia Yin">
        <organization>Tsinghua University</organization>
        <address>
          <postal>
            <city>Beijing</city>
            <country>China</country>
          </postal>
          <email>yxia@tsinghua.edu.cn</email>
        </address>
      </author>
      <date/>
      <!-- <workgroup>SAVNET</workgroup> -->
      <workgroup>Internet Engineering Task Force</workgroup>
      <abstract>
        <t>This draft introduces a distributed inter-domain source address validation scheme based on AS relationships. It mainly describes this method from five aspects: the research background in related fields, introduction to the AS relationship classification and acquisition methods, the SAV system's architecture, typical use cases, and considerations on deployability.</t>
      </abstract>
   </front>
   
   <middle>
      <section anchor="background">
        <name>Background</name>
        <t>Various attacks continue to pose significant security threats to the Internet, and IP spoofing is critical. Attackers frequently employ IP spoofing to launch DDoS attacks and disguise their actual identities. Source address validation (SAV) can greatly relieve IP spoofing and mitigate DDoS attacks.</t>
        <t>The Source Address Validation Architecture (short for SAVA) proposed by <xref target="RFC5210"/> divides its SAV architecture into three levels: the access network, intra-domain, and inter-domain. In SAV at the access network level, many researchers have made considerable progress and established several standards through discussion and collaboration.</t>
        <t>Researchers also proposed algorithms for inter-domain SAV. <xref target="RFC2827"/>, <xref target="RFC3704"/>, and <xref target="RFC8704"/> proposed uRPF algorithms that reverse routers' forwarding tables as their SAV rules. They further proposed several variants based on this core idea to fit different scenarios. uRPF algorithms exhibit high convergence speed and low cost. The SAVNET working group is devoted to improving the inter-domain SAV mechanism <xref target="inter-domain-sav-ps"/> and designing an SAV architecture using various information <xref target="inter-domain-sav-archt"/>. Their scheme exhibits high accuracy. The SIDRops working group proposed the BAR-SAV algorithm <xref target="sidrops-bar-sav"/>. It generates a permissible prefix list as SAV rules using BGP UPDATE messages, ASPA, and ROA objects in the RPKI. It has medium accuracy.</t>
        <t>Though all existing methods have advantages, they have yet to become an effective and deployable standard. Aiming to fix this gap, we propose a scheme with moderate accuracy, convergence speed, and cost. To implement it, we use AS relationships to abstract the inter-domain routing information.</t>
        <t>At the AS level, each AS owns some address prefixes and advertises them to neighbor ASes. Through its advertisement, neighbor ASes know they can route traffic to these prefixes through it. What's more, neighbor ASes also determine whether to propagate the received routes to their neighbor ASes according to AS relationships. Thus, we can estimate each prefix's propagation, and infer approximate inter-domain routes with AS relationships and address prefixes.</t>
        <t>This scheme's inaccuracy comes from ignoring fine-grained routing information, such as BGP path attributes. Ignoring them may cause routes to propagate beyond the intended scope, allowing more spoofed packets to pass. Even one dropped legitimate packet may lead to serious Internet interruption, but a few passed forged packets cannot cause large-scale attacks. As our scheme does not block more legitimate packets, it does not violate requirements for inter-domain SAV.</t>
        <t>This draft introduces a distributed inter-domain SAV scheme based on AS relationships. Considering suggestions from other researchers, our scheme adopts a distributed SAV architecture without a centralized server in each AS or a newly designed protocol. Instead, we extend the current BGP protocol and directly implement our SAV system on existing AS border routers. Compared to the original scheme in <xref target="RFC5210"/>, our scheme turns to a distributed system based on BGP extension due to considerations about upgrade costs. We modified it to cover more AS relationships and analyze them in different scenarios. We will explain its details in the following sections.</t>
      </section>
  
      <section anchor="sec-as-relationships">
        <name>Introduction to AS Relationships</name>
        <t>AS relationships are essentially business relationships between autonomous systems. Some major relationships occupy the maximal proportion of all AS relationships, while other incidental relationships exist in particular situations.</t>
        <t>To formally describe AS relationships, we define some symbols in <xref target="symbol-table"/>.</t>
        <table anchor="symbol-table">
          <name>Symbol definitions of formal descriptions</name>
          <thead>
            <tr><th align="center">Symbol</th><th align="center">Symbol Meaning</th></tr>
          </thead>
          <tbody>
            <tr><td align="center">Cus(AS<sub>u</sub>)</td><td align="center">Customer AS of AS<sub>u</sub></td></tr>
            <tr><td align="center">Pro(AS<sub>u</sub>)</td><td align="center">Provider AS of AS<sub>u</sub></td></tr>
            <tr><td align="center">Peer(AS<sub>u</sub>)</td><td align="center">Peer AS of AS<sub>u</sub></td></tr>
            <tr><td align="center">Sib(AS<sub>u</sub>)</td><td align="center">Sibling AS of AS<sub>u</sub></td></tr>
            <tr><td align="center">Hybrid(AS<sub>u</sub>)</td><td align="center">AS connected to AS<sub>u</sub> in hybrid relationship</td></tr>
            <tr><td align="center">PartCus(AS<sub>u</sub>)</td><td align="center">Customer AS of AS<sub>u</sub> in Partial Transit relationship</td></tr>
            <tr><td align="center">PartPro(AS<sub>u</sub>)</td><td align="center">Provider AS of AS<sub>u</sub> in Partial Transit relationship</td></tr>
            <tr><td align="center">AS<sub>uA</sub></td><td align="center">Position A of AS<sub>u</sub></td></tr>
            <tr><td align="center">RI(AS<sub>u</sub>)</td><td align="center">Routing Information of AS<sub>u</sub></td></tr>
            <tr><td align="center">EXRI(AS<sub>1</sub>, AS<sub>2</sub>)</td><td align="center">Routing Information exported from AS<sub>1</sub> to AS<sub>2</sub></td></tr>
          </tbody>
        </table>
        
        <section anchor="sec-major-relationships">
          <name>Major AS relationships</name>
          <t>The major AS relationships include three different types: Provider-to-customer, Peer-to-peer, and Sibling-to-sibling relationships. The definitions and descriptions of them are as follows.</t>
          <ol type='%I'>
            <li><t>Provider-to-customer Relationship (Transit Relationship, P2C Relationship)</t>
              <t>The provider AS and the customer AS usually do not belong to the same organization, and a customer AS pays its provider AS for connectivity to the rest of the Internet. Therefore, a provider AS does transit traffic for its customer ASes <xref target="infer-relatsh"/>. The provider AS exports all its routing information to its customer because its customer will pay for all the traffic, while the customer AS only exports the routing information of its customers, its siblings, and itself to its provider. The formal description of the P2C relationship is as follows.</t>
              <t>EXRI(AS, Pro(AS)) = RI(AS) U RI(Cus(AS)) U RI(Sib(AS))</t>
              <t>EXRI(AS, Cus(AS)) = RI(AS) U RI(Cus(AS)) U RI(Sib(AS)) U RI(Peer(AS)) U RI(Pro(AS))</t>
            </li>
            <li><t>Peer-to-peer Relationship (P2P Relationship)</t>
              <t>A pair of peer ASes usually do not belong to the same organization but agree to exchange traffic between their customers free of charge <xref target="infer-relatsh"/>. Each peer AS only exports the routing information of its customer ASes, its sibling ASes, and itself to the other AS. The formal description of the P2P relationship is as follows.</t>
              <t>EXRI(AS, Peer(AS)) = RI(AS) U RI(Cus(AS)) U RI(Sib(AS))</t>
            </li>
            <li><t>Sibling-to-sibling Relationship (S2S Relationship)</t>
              <t>Two sibling ASes are operated by the same institution. The most common anomalies stem from recent acquisitions and mergers, suggesting that some AS pairs may have a sibling relationship. Each AS exports all its routes to its sibling ASes <xref target="charact-inet"/>. The formal description of the S2S relationship is as follows.</t>
              <t>EXRI(AS, Sib(AS)) = RI(AS) U RI(Cus(AS)) U RI(Sib(AS)) U RI(Peer(AS)) U RI(Pro(AS))</t>
            </li>
          </ol>
          <t>Based on the above descriptions of the three major AS relationships, we can summarize their export rules in <xref target="major-exporting-rule-table"/></t>
          <table anchor="major-exporting-rule-table">
            <name>Major Export Rule Table</name>
            <thead>
              <tr><th align="center"></th><th align="center">Peer</th><th align="center">Provider</th><th align="center">Customer</th><th align="center">Sibling</th><th align="center">Self</th></tr>
            </thead>
            <tbody>
              <tr><td align="center">to Peer</td><td align="center"></td><td align="center"></td><td align="center">+</td><td align="center">+</td><td align="center">+</td></tr>
              <tr><td align="center">to Provider</td><td align="center"></td><td align="center"></td><td align="center">+</td><td align="center">+</td><td align="center">+</td></tr>
              <tr><td align="center">to Customer</td><td align="center">+</td><td align="center">+</td><td align="center">+</td><td align="center">+</td><td align="center">+</td></tr>
              <tr><td align="center">to Sibling</td><td align="center">+</td><td align="center">+</td><td align="center">+</td><td align="center">+</td><td align="center">+</td></tr>
            </tbody>
          </table>
        </section>
        
        <section anchor="sec-incidental-relationships">
          <name>Incidental AS Relationships</name>
          <t>The major AS relationships introduced in <xref target="sec-major-relationships"/> cannot cover all practical scenarios, and researchers have discovered other incidental  AS relationships. This draft illustrates only two relatively common incidental AS relationships, hybrid and partial transit relationships, as representatives. However, it is significant to note that more incidental AS relationships may appear with the further development of Internet applications.</t>
          <ol type='%I'>
            <li><t>Hybrid Relationship</t>
              <t>Two ASes with the hybrid relationship have different relationships at different interconnection points (e.g., P2C in one location and P2P elsewhere) <xref target="inferring-complex"/>. According to the definition, the AS relationship at a pair of interconnection points decides their export rules.</t>
              <t>To explain it clearly, we take an example of the hybrid of P2C and P2P. We assume that AS 1 and AS 2 are in a hybrid relationship, and AS 1 is a customer of AS 2 at point A while they are peers at point B, as shown in <xref target="hybrid-connection"/>.</t>
              
              <figure anchor="hybrid-connection" align="center">
                <name>An example of Hybrid Relationships</name>
                <artwork><![CDATA[ 
                        +------------------+
                        |       AS 1       |
                        +--+/A\+----+/B\+--+
                             |        |
                       (P2C) |        | (P2P)
                             |        |
                        +------------------+
                        |       AS 2       |
                        +------------------+
                ]]></artwork>
              </figure>
              
              <t>The formal descriptions of the hybrid relationship at points A and B are as follows.</t>
              <t>EXRI(AS<sub>1A</sub>, Hybrid(AS<sub>1A</sub>)) = RI(AS<sub>1A</sub>) U RI(Cus(AS<sub>1A</sub>)) U RI(Sib(AS<sub>1A</sub>)) U RI(Peer(AS<sub>1A</sub>)) U RI(Pro(AS<sub>1A</sub>))</t>
              <t>EXRI(AS<sub>1B</sub>, Hybrid(AS<sub>1B</sub>)) = RI(AS<sub>1B</sub>) U RI(Cus(AS<sub>1B</sub>)) U RI(Sib(AS<sub>1B</sub>))</t>
              <t>This example describes the route export rules between ASes in a hybrid relationship using the formal description of different AS relationships. The key idea is to discuss and process different interconnection points separately.</t>
            </li>

            <li><t>Partial Transit Relationship</t>
              <t>The Partial Transit relationship restricts the scope of a typical P2C relationship to the provider AS's peer ASes and customer ASes (but not provider ASes) <xref target="inferring-complex"/>. The formal description of the AS that provides partial connection services in the partial transit relationship is as follows.</t>
              <t>EXRI(AS, PartCus(AS)) = RI(AS) U RI(Cus(AS)) U RI(Sib(AS)) U RI(Peer(AS))</t>
              <t>The export rules of this AS to its customer ASes in the partial transit relationship are described in <xref target="partial-customer-exporting-rule"/>.</t>
              
              <table anchor="partial-customer-exporting-rule">
                <name>Exporting Rule of Partial-Customer</name>
                <thead>
                  <tr><th align="center"></th><th align="center">Peer</th><th align="center">Provider</th><th align="center">Customer</th><th align="center">Sibling</th><th align="center">Self</th></tr>
                </thead>
                <tbody>
                  <tr><td align="center">to Partial-Customer</td><td align="center">+</td><td align="center"></td><td align="center">+</td><td align="center">+</td><td align="center">+</td></tr>
                </tbody>
              </table>

              <t>According to the definition, the formal description of the AS that uses partial connection services as a customer in the partial transit relationship is as follows. It is consistent with customer ASes' export rules in a typical P2C relationship.</t>
              <t>EXRI(AS, PartPro(AS)) = RI(AS) U RI(Cus(AS)) U RI(Sib(AS))</t>
              <t>The export rules of this ASto its provider ASes in the partial transit relationship are described in <xref target="partial-provider-exporting-rule"/>.</t>
              
              <table anchor="partial-provider-exporting-rule">
                <name>Exporting Rule of Partial-Provider</name>
                <thead>
                  <tr><th align="center"></th><th align="center">Peer</th><th align="center">Provider</th><th align="center">Customer</th><th align="center">Sibling</th><th align="center">Self</th></tr>
                </thead>
                <tbody>
                  <tr><td align="center">to Partial-Provider</td><td align="center"></td><td align="center"></td><td align="center">+</td><td align="center">+</td><td align="center">+</td></tr>
                </tbody>
              </table>
            </li>
          </ol>
        </section>

        <section anchor="sec-relationship-acquisition">
          <name>AS relationship acquisition methods</name>
          <t>Several methods can obtain AS relationships with existing data, such as BGP route information, IXP information, IRR database, and ASPA objects in RPKI et al. Researchers divide these methods into two categories. One is to infer relationships between ASes using specific network data, and the other is to query data directly to obtain AS relationships.</t>
          
          <section anchor="inference-algorithms">
            <name>Inference Algorithms</name>
            <t>Previous researchers have proposed various AS relationship inference algorithms using different strategies.</t>
            <t>The earliest AS relationship inferring algorithm was proposed by Gao, which speculates on AS relationships based on the Valley Free principle and observation of network phenomena <xref target="infer-relatsh"/>. Gao algorithm believes that the scale of provider AS is usually more immense than that of customer AS. It also supposes that the scale of one AS is generally proportional to its degree in the AS topology graph. Therefore, the Gao algorithm sorts all ASes according to their degrees and assigns each AS connection a relationship based on the sorting results. Overall, the Gao algorithm is easy to implement and has low time complexity, but its accuracy is also low. Threshold parameters used in the algorithm will affect the inference results of AS relationships. Therefore, manual parameter selection requires much experience. Many subsequent AS relationship inferring algorithms are also based on Gao's Valley Free principle.</t>
            <t>The AS Rank algorithm <xref target="as-rank"/> proposed by Luckie et al. does not rely on Gao's Valley Free principle but proposes three hypotheses as the algorithm foundation: firstly, multiple large provider ASes form peer-to-peer networks to provide global connectivity, building a set of ASes at the top of the hierarchy; Secondly, provider ASes will export its client ASes' routes to its provider ASes, and ASes outside the peer-to-peer network composed of large provider ASes need to connect with provider ASes to obtain global connectivity; Thirdly, the topological connections of AS can be represented using directed acyclic graphs. Based on the three assumptions, the AS Rank algorithm can infer P2C and P2P relationships but cannot handle other complex AS relationships. The AS Rank algorithm exhibits high accuracy and recall and can correctly infer 99.6% of P2C relationships and 98.7% of P2P relationships in validation experiments. The AS relationships inferred with the AS Rank algorithm are still continuously updated on CAIDA.</t>
            <t>As the AS Rank algorithm has shown excessively high inferring accuracy on public datasets, the probabilistic algorithm Problink proposed by Jin et al. aims to improve the inferring accuracy in some complex situations <xref target="problink"/>. The Problink algorithm is based on a naive Bayesian framework and reveals crucial AS connection features derived from stochastically informative signals. Problink exhibits a lower error rate than the AS Rank algorithm on the whole dataset, especially in complex AS relationship inferring situations.</t>
            <t>With the development and progress of AI technology, some researchers also attempted to apply advanced AI technologies to AS relationship inferring. Varghese et al. use machine learning algorithms to train one AdaBoost model for inferring AS relationships <xref target="ml-pred"/>. The BGP2Vec algorithm embeds ASes in a vector space for relationship classification, referring to the NLP word embedding method Word2Vec <xref target="bgp2vec"/>. However, these methods have relatively low accuracy and interpretability, so they do not receive much attention.</t>
          </section>
          
          <section anchor="querying-approach">
            <name>Querying approach</name>
            <t>Apart from the inference algorithms in <xref target="inference-algorithms"/>, we can also directly obtain AS relationships by querying ASPA objects in RPKI. An ASPA object is a cryptographically verifiable attestation by a Customer AS (CAS) containing a list of its authorized provider ASes <xref target="sidrops-aspa"/>. Therefore, we can directly get an AS's provider ASes and customer ASes from ASPA objects. Some researchers proposed the <xref target="ASRA"/> (Autonomous System Relationship Authorization) object based on ASPA. ASRA objects can record more information about more complex AS relationships and may help us directly obtain accurate AS relationships in the future.</t>            
            <t>In this draft, as several ASes implement inter-domain SAV together, we suppose all AS relationships are known. However, it is apparent that even if the AS relationships are unknown, we can attain them using the above algorithms.</t>
          </section>
        </section>
      </section>

      <!-- <modified into distributed system> -->
      <section anchor="sec-sav-architecture">
        <name>Architecture of inter-domain SAV System based on AS relationships</name>
        <t>In this section, we propose the architecture of the inter-domain SAV system based on AS relationships. In this SAV system, border routers in each AS generate, exchange, and update ASN validation rules until convergence. These routers then generate prefix validation rules using the mapping from ASNs to address prefixes and use these rules to validate forwarding packets' source addresses.</t>
        <t>The proposed SAV system consists of two main components with different functions: the Validation Router (VR) and the Address Mapping Server (AMS). Border routers in one AS act as its VRs, while AMS is a global infrastructure working for all ASes. An example of our SAV system is shown in <xref target="fig-sav-system"/>.</t>
        
        <figure anchor="fig-sav-system" align="center">
          <name>An example of inter-domain SAV system</name>
          <artwork><![CDATA[ 
                     +---------------------+
                     |         AS 1        |
                     +--+/\+---------+/\+--+
                         /             \
                        /    +++++++    \
                 (C2P) /     | AMS |     \ (C2P)
                      /      +++++++      \
                     /                     \
               +------------+       +------------+
               |    AS 2    |       |    AS 3    |
               +------------+       +------------+
          ]]></artwork>
        </figure>

        <section anchor="sec-VR">
          <name>Validation Router (VR)</name>
          <t>The Validation Routers (VR) are actually AS border routers. They are responsible for generating validation rules and then using them to verify forwarding packets. VRs communicate with AMS  regularly, translating ASN validation rules into prefix rules. They use the Neighbor Validation Rule Table as their prime data structure to implement these SAV functions.</t>
          <t>One VR's Neighbor Validation Rule Table stores all its neighbor ASes' helpful information, including their AS numbers, relationships with it, connected interfaces, corresponding ASN validation rules, and prefix rules. The ASN and prefix validation rules record those permitted forwarding packets' source ASNs and IP addresses, respectively. Therefore, VRs can use them to filter forged packets at the AS and prefix level. <xref target="tab-neighbor-validation"/> shows one specific example of the Neighbor Validation Rule Table.</t>
          
          <table anchor="tab-neighbor-validation">
            <name>An example of Neighbor Validation Rule Table</name>
            <thead>
              <tr><th align="center">Interface</th><th align="center">ASN</th><th align="center">AS Relationship</th><th align="center">Permitted ASNs</th><th align="center">Permitted Prefixes</th></tr>
            </thead>
            <tbody>
              <tr><td align="center">Int 1</td><td align="center">ASN 1</td><td align="center">P2P</td><td align="center">ASN 4</td><td align="center">P4, P5</td></tr>
              <tr><td align="center">Int 2</td><td align="center">ASN 2</td><td align="center">P2C</td><td align="center">ASN 5</td><td align="center">P6</td></tr>
            </tbody>
          </table>
        </section>
        
        <section anchor="sec-AMS">
          <name>Address Mapping Server (AMS)</name>
          <t>The Address Mapping Server (AMS) records the mapping from ASNs to IP address prefixes owned by ASes. AMS responds to VRs' queries for ASNs' corresponding prefixes, helping them generate their prefix validation rules. The mapping of IP address prefixes that AMS should maintain is now available from the Resource Public Key Infrastructure (RPKI).</t>
        </section>

        <section anchor="sec-methodology">
          <name>Methodology</name>
          <t>Neighbor VRs complete validation rule exchanges by advertising their rules and receiving others' rules. Like route advertisement, VRs advertise their SAV rules to their neighbors when establishing connections or updating SAV rules. Each VR initially advertises the origin ASNs of all legitimate packets it can send. When receiving ASNs advertised by neighbors, VRs check whether its Neighbor Validation Rule Table needs updating. If VRs update some rules, they advertise new rules to related neighbors according to export rules between different AS relationships. Besides, VRs in the same AS need to communicate validation rules towards different neighbor ASes with each other through intra-domain connections. In these ways, SAV rules in VRs gradually converge and build up filters for spoofing packets.</t>
        </section>

      </section>

      <section anchor="sec-bgp-ext">
        <name>BGP Extension for Inter-domain SAV</name>
        <t><xref target="inter-domain-sav-archt"/> mentions that the SAV-specific communication information mechanism can be implemented by a new protocol or an extension to an existing protocol. Following its ideas, we propose an implementation for our SAV scheme by an extension to BGP in this section.</t>

        <section anchor="sec-bgp-fea">
          <name>Feasibility of BGP Extension</name>
          <t>As <xref target="RFC4271"/> states, the primary function of a BGP speaking system is to exchange network reachability information with other BGP systems. Each router advertises route paths to networks it can reach. After further propagation, each router establishes a routing table with BGP routes to its reachable networks. Our SAV system uses BGP forwarding routes to approximate the reverse routes. Those VRs can deploy it to calculate networks that can reach them.</t>
          <t>Routers do not regularly announce their routing tables but incrementally advertise them using BGP UPDATE messages when they are updated. Our scheme calculates and updates SAV rules at the AS level, taking AS relationships as the abstract of inter-domain routing information. After convergence, only when increases, decreases, or changes occur to their AS relationships with neighbor VRs do SAV update rules and advertise the updates to neighbor VRs. At this time, changes also occur to their routing tables, and they should send UPDATE messages to neighbor VRs. Therefore, VRs can advertise SAV updates with BGP UPDATE messages.</t>
          <t>All these allow us to implement the SAV system with the existing route mechanism and advertise SAV rule updates using BGP UPDATE messages.</t>
        </section>

        <section anchor="sec-bgp-impl">
          <name>Implementation of BGP Extension</name>
          <t>To achieve the goal, we can slightly modify BGP UPDATE messages, enabling it to complete the advertisement of SAV rules when advertising updated routes.</t>
          <t>Every BGP UPDATE message contains withdrawn routes, path attributes, and Network Layer Reachability Information. The path attribute part is a sequence of BGP path attributes and can carry many attributes in one message. Each path attribute is recorded as a variable-length triple &lt;Type, Length, Value&gt;, allowing for various information transfers. What's more, new path attributes can be registered after IANA allocates new type codes to them.</t>
          <t>All these above allow us to design a new BGP path attribute to exchange SAV rules between AS border routers in the form of ASN sets. With this attribute, an AS border router deploying SAV can use BGP UPDATE messages to advertise corresponding SAV rule updates while updating routing information. We name it SAV_INFO for now.</t>
          <t>SAV_INFO is a triple &lt;attribute type, attribute length, attribute value&gt; referring to the format proposed in <xref target="RFC4271"/>. The attribute type is a two-octet field containing some flags and an allocated type code. The value field records SAV rules containing one or more AS numbers, each encoded as a 2-octet length field. The length field is the length of the value field in octets, occupying one or two octets.</t>
          <t>The later section will use a concrete example to demonstrate the BGP extension for our inter-domain SAV. Our follow-up drafts will discuss the detailed implementation of this design.</t>
        </section>
        
        <section anchor="sec-bgp-example">
          <name>An example of BGP Extension</name>
          <t><xref target="fig-bgp-init"/> shows a simple example network. After the VRs of AS 1 and AS 2 establish a BGP connection, AS 1's VR advertises its route for prefixes P1 with BGP UPDATE messages. If AS 1 deploys our SAV system, its VR will also announce its SAV rules to AS 2's VR in these UPDATE messages. AS 2's VR also advertises its information to AS 1's VR.</t>
          
          <figure anchor="fig-bgp-init">
            <name>The initial example network</name>
            <artwork><![CDATA[
              +-----------+        +-----------+
              | AS 1 (P1) |<--P2C--| AS 2 (P2) |
              +-----------+        +-----------+
            ]]></artwork>
          </figure>

          <t><xref target="fig-bgp-update"/> shows updates on this network. AS 3 is a new AS connected to AS 1 as a customer AS. Through its connection with AS 1, its VR advertises its routes for P3 to AS 1. AS 1's VR thus learns new routes for P3 through AS 3 and new SAV rules.</t>
          
          <figure anchor="fig-bgp-update">
            <name>The updated example network</name>
            <artwork><![CDATA[
              +-----------+        +-----------+
              | AS 1 (P1) |<--P2C--| AS 2 (P2) |
              +-----------+        +-----------+
                    |
                    | (P2C)
                    V
              +-----------+
              | AS 3 (P3) |
              +-----------+
            ]]></artwork>
          </figure>

          <t>Considering BGP and SAV mechanisms, AS 1 should propagate routes and SAV rules from AS 3 further to its neighbors. Since AS 3 is AS 1's customer and AS 1 is AS 2's customer, according to the export rules in Table U, AS 1 should advertise the routes and SAV rules learned from AS 3 to AS 2.</t>
          <t>AS 1's VR propagates its newly learned routes using BGP UPDATE messages. The message's NLRI field carries the prefix P3, and the Path Attributes field adds our SAV_INFO field. Its AS_PATH attribute records the path to AS 3 through AS 1. Its SAV_INFO attribute carries the AS 3's AS number as AS 1's updated SAV rules. Receiving this BGP UPDATE message, AS 2's VR can learn the routes for AS 3 and updated SAV rules.</t>
          <t>This example shows that our SAV system can utilize BGP UPDATE messages to complete the SAV rule advertisement while propagating the inter-domain routes.</t>
        </section>

      </section>

      <section anchor="sec-multi">
        <name>Multi-homing Scenarios</name>
        <t>In this section, we utilize some use cases as examples to show that our inter-domain SAV system performs well in multi-homing scenarios. Our SAV scheme performs a lower false positive rate than existing mechanisms, filling the research gap proposed in <xref target="inter-domain-sav-ps"/>.</t>

        <section anchor="sec-multi-point">
          <name>Multipoint Interconnection Scenario</name>
          <t>In other particular multi-homing scenarios, our scheme can complete inter-domain SAV at the AS level. <xref target="fig-multi-point"/> presents a scenario of multipoint interconnection between ASes. In this example, AS 1 connects with AS 2 through two pairs of VRs. AS 1 and AS 2 are in a hybrid relationship, and AS 2 is the customer of AS 2 at point 1 while they are peers at point 2.</t>
          
          <figure anchor="fig-multi-point" align="center">
            <name>An example of multipoint interconnection</name>
            <artwork><![CDATA[
                +----------------------+
                |         AS 1         |
                +---+/1\+------+/2\+---+
                      |          |            +-----+ 
                (C2P) |    (P2P) |            | AMS |
                      |          |            +-----+
                +----------------------+
                |         AS 2         |
                +----------------------+
            ]]></artwork>
          </figure>

          <t>If AS 1 has deployed the inter-domain SAV system based on AS relationships, VRs at points 1 and 2 will add AS 2 to their allowlist at the AS level. Meanwhile, according to AS 2's address prefixes recorded in AMS, they will add all these prefixes to their allowlist at the prefix level. At their interfaces facing AS 2, VRs at points 1 and 2 use the prefix allowlists to filter incoming packets.</t>
        </section>

        <section anchor="sec-multi-homing">
          <name>Multi-homing Scenario</name>
          <t>In multi-homing scenarios, the SAV system based on AS relationships improves the validation accuracy in customer interfaces, filling the gap of false positives proposed in <xref target="inter-domain-sav-ps"/>.</t>
          <t>We take <xref target="fig-multi-homing"/> as an example to analyze how our scheme solves the limited propagation of prefixes. This figure presents a multi-homing scenario where uRPF mechanisms may lead to the problem. In this scenario, AS 2 and AS 1 are providers of AS 3, and AS 1 is the provider of AS 2. AS 3 adds the NO_EXPORT community attribute to all BGP advertisements to AS 2, preventing AS 2 from further propagating its prefixes.</t>

          <figure anchor="fig-multi-homing" align="center">
            <name>An example of multi-homing scenario</name>
            <artwork><![CDATA[
                        +--------------------+
                        |        AS 1        |
                        +--+/\+--------+/\+--+
                            /           |
                    (C2P)  /            |
              +--------------+          |       +-----+ 
              |     AS 2     |          |       | AMS |
              +--------+/\+--+          |       +-----+
                         \              |
                   (C2P)  \             |  (C2P)
               NO_EXPORT   \            |
                        +--------------------+
                        |        AS 3        |
                        +--------------------+
            ]]></artwork>
          </figure>
          
          <t>When deploying uRPF mechanisms, the VR facing AS 2 in AS 1 may improperly block packets originating from AS 3. If it deploys the SAV system based on AS relationships, it will generate validation rules using ASNs transmitted between VRs. The NO_EXPORT attribute can not limit AS 2's propagation of AS 3 rules. Therefore, the VR will allow those packets to pass, avoiding false positives.</t>
          <t>As for the problem of hidden prefixes, we solve it by specially setting the initial ASN sets advertised by each AS. Under some circumstances, one AS may have particular settings and send packets with source addresses that it does not advertise, like direct server return (DSR). If deploying our scheme, its VRs initially advertise the origin ASNs of all possible legitimate packets it can send. Therefore, these VRs will allow packets that match the specific configurations to pass, effectively avoiding false positives.</t>
          <t>Besides false positives, <xref target="inter-domain-sav-ps"/> also points out false negatives within AS customer cones. Our scheme does not propose a targeted solution for this gap but does propose some ideas. A system on the data plane for traffic monitoring and management may help with limiting attacks within customer cones. What's more, in the SAVA architecture proposed in <xref target="RFC5210"/>, access network and intra-domain SAV can prevent source address spoofing within AS and help to reduce attacks within customer cones.</t>
        </section>
      </section>

      <section anchor="sec-dynamic">
        <name>Dynamic Scenario</name>
        <t>This section utilizes some designed use cases to show how our inter-domain SAV system performs in different dynamic scenarios. This SAV system handles updates at the AS level and ignores more fine-grained route updates. It reduces rule update frequency at the cost of tiny false negatives, cutting down the SAV system's update overhead.</t>
        <t>We take the network shown in <xref target="fig-before-change"/> as an example before all changes happen. In this example, AS 1 is AS 2 and AS 3's provider, and all ASes have deployed the inter-domain SAV system based on AS relationships. When diverse changes occur to this network, we show the network after changes and discuss the updates of our inter-domain SAV system.</t>
        
        <figure anchor="fig-before-change" align="center">
          <name>An example network before changes happen</name>
          <artwork><![CDATA[ 
                      +------------------+
                      |     AS 1(P1)     |
                      +--+/\+------+/\+--+
                          /          \              +-----+ 
                  (C2P)  /            \  (C2P)      | AMS |
                        /              \            +-----+
            +--------------+        +--------------+
            |   AS 2(P2)   |        |   AS 3(P3)   |
            +--------------+        +--------------+
          ]]></artwork>
        </figure>

        <section anchor="sec-relationships">
          <name>AS Relationships Change</name>
          <t><xref target="fig-after-relatsh"/> displays the example network after AS relationships change. If the AS relationship between AS 1 and AS 2 changes from C2P to P2P, the VR in AS 1 facing AS 2 and the VR in AS 2 facing AS 1 will modify the AS relationships in their Neighbor Validation Rule Tables and remove previous SAV rules. These VRs will actively advertise their new SAV rules to neighbors. VRs further propagate the rules through VR connections until they come to a new convergence in the changed network.</t>
          
          <figure anchor="fig-after-relatsh" align="center">
            <name>The example network after AS relationships change</name>
            <artwork><![CDATA[ 
                        +------------------+
                        |     AS 1(P1)     |
                        +--+/\+------+/\+--+
                            /          \              +-----+ 
                    (P2P)  /            \  (C2P)      | AMS |
                          /              \            +-----+
              +--------------+        +--------------+
              |   AS 2(P2)   |        |   AS 3(P3)   |
              +--------------+        +--------------+
            ]]></artwork>
          </figure>
        </section>

        <section anchor="sec-prefixes">
          <name>AS Prefixes Change</name>
          <t><xref target="fig-after-prefix"/> displays the example network after AS prefixes change. If AS 3's IP address prefixes change from P3 to P4, VRs will modify the SAV information about AS 3 in their Neighbor Validation Rule Tables. Under this circumstance, VRs' ASN validation rules remain unchanged, but they will adjust prefix validation rules according to the new mapping recorded in AMS.</t>
          <t>In our inter-domain SAV system, VRs use ASNs as advertised validation rules. VRs translate ASN rules into prefix rules with the mapping provided by AMS and do not further propagate prefix ones. Therefore, AS prefixes change won't break achieved convergence. In this example, the change of AS 3's prefixes does cause VRs to update their SAV information about AS 3. However, all ASN rules remain unchanged, and VRs only update prefix rules about AS 3.</t>

          <figure anchor="fig-after-prefix" align="center">
            <name>The example network after AS prefixes change</name>
            <artwork><![CDATA[ 
                        +------------------+
                        |     AS 1(P1)     |
                        +--+/\+------+/\+--+
                            /          \              +-----+ 
                    (C2P)  /            \  (C2P)      | AMS |
                          /              \            +-----+
              +--------------+        +--------------+
              |   AS 2(P2)   |        |   AS 3(P4)   |
              +--------------+        +--------------+
            ]]></artwork>
          </figure>
        </section>

        <section anchor="sec-topology">
          <name>AS Network Topologies Change</name>
          <t><xref target="fig-after-topo"/> displays the example network after the AS network topology changes. If the AS connections change and AS 3 becomes AS 2's peer from AS 1's customer, AS 2 will add one new VR, and AS 3 will adjust its original VR. After reconfigurations, added VR in AS 2 and adjusted VR in AS 3 will fill in their Neighbor Validation Rule Tables according to the latest network situation. These VRs will actively advertise their new SAV rules to neighbors. VRs further propagate the rules through VR connections until they come to a new convergence in the changed network.</t>

          <figure anchor="fig-after-topo" align="center">
            <name>The example network after AS network topologies change</name>
            <artwork><![CDATA[ 
                        +------------------+
                        |     AS 1(P1)     |
                        +--+/\+------------+
                            /                   +-----+ 
                    (C2P)  /                    | AMS |
                          /                     +-----+
              +--------------+           +--------------+
              |   AS 2(P2)   |-----------|   AS 3(P4)   |
              +--------------+   (P2P)   +--------------+
            ]]></artwork>
          </figure>
        </section>
  
        <section anchor="sec-attributes">
          <name>BGP Attributes Change</name>
          <t><xref target="fig-after-attri"/> displays the example network after BGP attributes change. If the BGP attributes between AS 1 and AS 2 change while other information does not, all VRs in the network needn't update their SAV information. In this example, AS 2 adds the NO_EXPORT community attribute to all BGP advertisements from it to AS 1, preventing AS 1 from further propagating its prefixes. Routing information propagated from AS 1 to AS 3 changes and no longer contains routes to AS 2. However, our SAV system does not restrain the propagation of ASN validation rules from AS 3 to AS 2, so AS 3's ASN and prefix rules remain unchanged, as do other ASes'.</t>
          <t>The results indicate that our SAV scheme ignores fine-grained routing information changes because it handles AS connections rather than BGP routes. As such processing neglects restrictions on BGP route advertisement, it may allow some forged traffic to pass but will not additionally block legitimate traffic. which meets SAV requirements. Such processing also improves our SAV system's stability and lessens SAV update overhead.</t>      
          
          <figure anchor="fig-after-attri" align="center">
            <name>The example network after BGP attributes change</name>
            <artwork><![CDATA[ 
                        +------------------+
                        |     AS 1(P1)     |
                        +--+/\+------+/\+--+
                            /          \              +-----+ 
                    (C2P)  /            \  (C2P)      | AMS |
                NO_EXPORT /              \            +-----+
              +--------------+        +--------------+
              |   AS 2(P2)   |        |   AS 3(P3)   |
              +--------------+        +--------------+
            ]]></artwork>
          </figure>
        </section>

      </section>

      <section anchor="consider-deployability">
        <name>Considerations on Deployability</name>
        
        <section anchor="sec-existing-info">
          <name>Utilize existing information as much as possible</name>
          <t>Using information beyond existing will inevitably incur additional costs due to its need for upgrades. At the same time, it will improve the deployment requirements, which prevent SAV schemes' large-scale promotion. Therefore, an easily deployable SAV scheme in real networks always utilizes existing information as much as possible. Similarly, when existing facilities can provide certain services, deployable solutions always prefer to use them rather than establish new ones.</t>
          <t>For SAV schemes, existing information includes routing information, business relationships between different ASes, and the mapping from ASNs to IP address prefixes provided. Existing facilities include RPKI and AS border routers. Our scheme establishes the SAV system with these existing information and devices.</t>
        </section>
        
        <section anchor="sec-abstact-info">
          <name>Prefer to use and exchange more abstract information</name>
          <t>Unlike fine-grained concrete information, abstract information lacks details but fundamentally simplifies problems. However, it can reduce computational costs and improve efficiency, which is more conducive to promoting SAV deployment. When multiple SAV nodes collaborate, they can exchange abstract rules and generate fine-grained ones when setting prefix filters.</t>
          <t>As discussed above, AS relationships determine the routing information between ASes and are more abstract than that. Therefore, our inter-domain SAV scheme uses AS relationships instead of routing information to calculate validation rules at the AS level. It transmits ASNs between ASes instead of IP address prefixes and only generates prefix filtering rules with ASN validation rules at the end.</t>
        </section>

        <section anchor="sec-metrics-balance">
          <name>Balance accuracy, time and cost</name>
          <t>When the network remains stable, directly generating the most accurate filtering rules during forwarding table establishment is the best idea. However, the Internet often changes at different levels, which triggers validation rule fluctuations until they reconverge. We have discussed some changes and their impacts in <xref target="sec-dynamic"/>. Long convergence time is not conducive to providing validation support in a constantly changing network. Therefore, an easily deployable validation scheme in the dynamic network should balance convergence time and accuracy.</t>
          <t>When rule calculation and deployment do not bring additional costs, using the most accurate algorithms is the most effective. However, SAV schemes that need more data and calculations often have higher costs in real networks. Trading excessive expenses for a slight accuracy improvement is an inappropriate choice. Therefore, an easily deployable SAV scheme in practical situations should balance computational cost and accuracy.</t>
          <t>The above analyses of two examples indicate that different evaluation metrics may have hidden contradictions in practical networks, making it difficult to optimize them simultaneously. Our scheme tries to balance accuracy, time, and cost.</t>
        </section>
      </section>

      <section anchor="next-step">
        <name>Next Step</name>
        <t>The current discussion and design have not covered some details. We discuss the major and incidental AS relationships in <xref target="sec-as-relationships"/> but do not consider other complex and minor ones. With the rapid development of Internet applications, researchers may discover more incidental AS relationships that this draft does not cover. In future research, we will further discuss this issue and work to propose incremental solutions for incidental AS relationships.</t>
      </section>

      <section anchor="Security">
        <name>Security Considerations</name>
        <t>The security considerations of our inter-domain source address validation scheme based on AS relationships are similar to those of <xref target="inter-domain-sav-archt"/>.</t>
      </section>
      
      <section anchor="IANA">
        <name>IANA Considerations</name>
        <t>This draft proposes using a new BGP attribute to carry SAV rules. The new BGP attribute needs an attribute type code assigned by IANA. We will put forward specific IANA considerations in a further draft about the BGP attribute implementation.</t>
        <!-- <t>This document has no IANA requirements.</t> -->
      </section>
   </middle>

   <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC2827" target="https://www.rfc-editor.org/info/rfc2827">
          <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>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2827.xml -->
        <reference anchor="RFC3704" target="https://www.rfc-editor.org/info/rfc3704">
          <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>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3704.xml -->
        <reference anchor="RFC4271" target="https://www.rfc-editor.org/info/rfc4271">
          <front>
            <title>A Border Gateway Protocol 4 (BGP-4)</title>
            <author fullname="Y. Rekhter" initials="Y." role="editor" surname="Rekhter"/>
            <author fullname="T. Li" initials="T." role="editor" surname="Li"/>
            <author fullname="S. Hares" initials="S." role="editor" surname="Hares"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>This document discusses the Border Gateway Protocol (BGP), which is an inter-Autonomous System routing protocol.</t>
              <t>The primary function of a BGP speaking system is to exchange network reachability information with other BGP systems. This network reachability information includes information on the list of Autonomous Systems (ASes) that reachability information traverses. This information is sufficient for constructing a graph of AS connectivity for this reachability from which routing loops may be pruned, and, at the AS level, some policy decisions may be enforced.</t>
              <t>BGP-4 provides a set of mechanisms for supporting Classless Inter-Domain Routing (CIDR). These mechanisms include support for advertising a set of destinations as an IP prefix, and eliminating the concept of network "class" within BGP. BGP-4 also introduces mechanisms that allow aggregation of routes, including aggregation of AS paths.</t>
              <t>This document obsoletes RFC 1771. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4271"/>
          <seriesInfo name="DOI" value="10.17487/RFC4271"/>
        </reference>
        <reference anchor="RFC8704" target="https://www.rfc-editor.org/info/rfc8704">
          <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>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8704.xml -->
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC5210" target="http://dx.doi.org/10.17487/rfc5210">
          <front>
            <title>A Source Address Validation Architecture (SAVA) Testbed and Deployment Experience</title>
            <author fullname="J. Wu" surname="Wu"/>
            <author fullname="J. Bi" surname="Bi"/>
            <author fullname="X. Li" surname="Li"/>
            <author fullname="G. Ren" surname="Ren"/>
            <author fullname="K. Xu" surname="Xu"/>
            <author fullname="M. Williams" surname="Williams"/>
            <author>
            <organization>RFC Editor</organization>
            </author>
            <date month="June" year="2008"/>
          </front>
          <seriesInfo name="DOI" value="10.17487/rfc5210"/>
        </reference>
        <reference anchor="inter-domain-sav-ps" target="https://datatracker.ietf.org/doc/html/draft-ietf-savnet-inter-domain-problem-statement-06">
          <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="19" month="December" 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-06"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.draft-ietf-savnet-inter-domain-problem-statement-06.xml -->
        <reference anchor="inter-domain-sav-archt" target="https://datatracker.ietf.org/doc/html/draft-ietf-savnet-inter-domain-architecture-00">
          <front>
            <title>Inter-domain Source Address Validation (SAVNET) Architecture</title>
            <author fullname="Dan Li" initials="D." surname="Li">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Li Chen" initials="L." surname="Chen">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Nan Geng" initials="N." surname="Geng">
              <organization>Huawei</organization>
            </author>
            <author fullname="Libin Liu" initials="L." surname="Liu">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Lancheng Qin" initials="L." surname="Qin">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <date day="10" month="November" year="2024"/>
            <abstract>
              <t>This document introduces an inter-domain SAVNET architecture for performing AS-level SAV and provides a comprehensive framework for guiding the design of inter-domain SAV mechanisms. The proposed architecture empowers ASes to generate SAV rules by sharing SAV- specific information between themselves, which can be used to generate more accurate and trustworthy SAV rules in a timely manner compared to the general information. During the incremental or partial deployment of SAV-specific information, it can utilize general information to generate SAV rules, if an AS's SAV-specific information is unavailable. Rather than delving into protocol extensions or implementations, this document primarily concentrates on proposing SAV-specific and general information and guiding how to utilize them to generate SAV rules. To this end, it also defines some architectural components and their relations.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-savnet-inter-domain-architecture-00"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.draft-ietf-savnet-inter-domain-architecture-00.xml -->
        <reference anchor="sidrops-bar-sav" target="https://datatracker.ietf.org/doc/html/draft-ietf-sidrops-bar-sav-05">
          <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="21" month="October" 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-05"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.draft-ietf-sidrops-bar-sav-05.xml -->
        <reference anchor="sidrops-aspa" target="https://datatracker.ietf.org/doc/html/draft-ietf-sidrops-aspa-profile-19">
          <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"/>
            <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="6" month="January" year="2025"/>
            <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-19"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.draft-ietf-sidrops-aspa-profile-19.xml -->
        <reference anchor="infer-relatsh" target="https://ieeexplore.ieee.org/document/974527">
          <front>
            <title>On inferring autonomous system relationships in the Internet</title>
            <author fullname="Lixin Gao"></author>
            <date month="December" year="2001"/>
          </front>
        </reference>
        <reference anchor="as-rank" target="https://dl.acm.org/doi/10.1145/2504730.2504735">
          <front>
            <title>AS relationships, customer cones, and validation</title>
            <author fullname="Matthew Luckie"></author>
            <author fullname="Bradley Huffaker"></author>
            <author fullname="Amogh Dhamdhere"></author>
            <author fullname="Vasileios Giotsas"></author>
            <author fullname="kc claffy"></author>
            <date month="October" year="2013"/>
          </front>
        </reference>
        <reference anchor="problink" target="https://www.usenix.org/system/files/nsdi19-jin.pdf">
          <front>
            <title>Stable and Practical AS Relationship Inference with ProbLink</title>
            <author fullname="Yuchen Jin"></author>
            <author fullname="Colin Scott"></author>
            <author fullname="Amogh Dhamdhere"></author>
            <author fullname="Vasileios Giotsas"></author>
            <author fullname="Arvind Krishnamurthy"></author>
            <author fullname="Scott Shenker"></author>
            <date month="February" year="2019"/>
          </front>
        </reference>
        <reference anchor="ml-pred" target="https://ieeexplore.ieee.org/document/7562048">
          <front>
            <title>A machine learning approach to edge type inference in Internet AS graphs</title>
            <author fullname="Jinu Susan Varghese"></author>
            <author fullname="Lu Ruan"></author>
            <date month="April" year="2016"/>
          </front>
        </reference>
        <reference anchor="bgp2vec" target="https://ieeexplore.ieee.org/document/9110358">
          <front>
            <title>Unveiling the Type of Relationship Between Autonomous Systems Using Deep Learning</title>
            <author fullname="Tal Shapira"></author>
            <author fullname="Yuval Shavitt"></author>
            <date month="June" year="2020"/>
          </front>
        </reference>
        <reference anchor="charact-inet" target="https://ieeexplore.ieee.org/document/1019307">
          <front>
            <title>Characterizing the Internet hierarchy from multiple vantage points</title>
            <author fullname="Lakshminarayanan Subramanian"></author>
            <author fullname="Sharad Agarwal"></author>
            <author fullname="Jennifer Rexford"></author>
            <author fullname="Randy H. Katz"></author>
            <date month="June" year="2002"/>
          </front>
        </reference>
        <reference anchor="inferring-complex" target="https://dl.acm.org/doi/10.1145/2663716.2663743">
          <front>
            <title>Inferring complex AS relationships</title>
            <author fullname="Vasileios Giotsas"></author>
            <author fullname="Matthew Luckie"></author>
            <author fullname="Bradley Huffaker"></author>
            <author fullname="kc claffy"></author>
            <date month="November" year="2014"/>
          </front>
        </reference>
        <reference anchor="ASRA" target="https://conference.apnic.net/56/assets/files/APJS642/autonomous-system-re_1694481446.pdf">
          <front>
            <title>Autonomous System Relationship Authorization</title>
            <author fullname="Nan Geng"></author>
            <date month="Sep" year="2023"/>
          </front>
        </reference>
      </references>
    </references>

    <section numbered="false" anchor="Acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to Aijun Wang for his valuable comments and suggestions on this draft.</t>
    </section>
   </back>
</rfc>