<?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-01" category="std" consensus="true" xml:lang="en" version="2">
   <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-01"/>
      <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 an inter-domain source address validation scheme based on relationships between interconnected ASes. This scheme is mainly described from four aspects, namely the research background in fields of source address validation and AS relationships, introduction to the classification and acquisition methods of AS relationships, the specific architecture of our inter-domain source address validation system based on AS relationships, and the considerations on deployability.</t>
      </abstract>
   </front>
   <middle>
      <section anchor="background">
        <name>Background</name>
        <t>Inter-domain Source Address Validation plays a significant role in relieving the source IP address spoofing. Several algorithms with different ideas have been proposed previously, some of which are being applied nowadays. The major idea of the series of uRPF algorithms <xref target="RFC2827"/> <xref target="RFC3704"/> <xref target="RFC8704"/>, which have been written in RFCs and become standard methods, is to reverse the existing forwarding tables for source address validation, and then complement and specify this scheme gradually based on different scenarios. The SAVNET working group, which is devoted to improving the inter-domain address validation mechanism now <xref target="I-D.wu-savnet-inter-domain-problem-statement"/>, mainly designs a source address validation scheme based on detailed inter-domain forwarding information <xref target="I-D.wu-savnet-inter-domain-architecture"/>. The BAR-SAV algorithm proposed by the SIDROPS working group generates the permissible prefix list for SAV with BGP UPDATE messages, ASPA and ROA objects in RPKI <xref target="I-D.sriram-sidrops-bar-sav"/>. Different from all schemes above, this draft primarily introduces an inter-domain source address validation solution based on AS relationships, with the initial idea mentioned in <xref target="RFC5210"/>.</t>
        <t><xref target="RFC5210"/> proposes Source Address Validation Architecture (short for SAVA) which divides validation architecture into three different levels, namely subnetwork access, intra-domain and inter-domain. Up to now, progress have been made in validation mechanisms of all three levels. Meanwhile, the original idea of our proposed inter-domain source address validation scheme based on AS relationships has also been proposed in <xref target="RFC5210"/>. With the development and progress of technology, RPKI can serve as the server which provides the mapping from AS numbers to IP prefixes in the design of <xref target="RFC5210"/>. There is also more research support for AS relationship acquisition methods and incidental AS relationship analysis. On the basis of these technologies, we complete the refined  scheme which covers some typical incidental AS relationships, and analyze its handling method in dynamic situations from some major network changes.</t>
        <t>In absence of an effective RFC standard for inter-domain source address validation which is easy to deploy, we hope to propose a solution that meets requirements, has strong practicality and high deployability. We hope the scheme can prevent most spoofing attacks in a relatively concise way, and meet the requirements for effective validation in most scenarios. The forwarding and backward tracing of data packets are similar, so we propose a validation mechanism for "best effort validation" referring to "best effort forwarding" scheme, and an evaluation metric "validation cost-effectiveness". Our scheme is expected to overcome the dilemma that some existing schemes are too complex to deploy while some existing methods are simple with high error rates, and achieve a compromise between accuracy and simplicity. To this end, we propose an inter-domain source address validation scheme based on AS relationships, which extends single-point validation to multi-point collaboration to obtain more abundant information so as to improve accuracy, and selects AS level as the main analysis level to greatly reduce amount of data processing so as to simplify the solution and improve efficiency. We will explain the detailed evaluation metrics and validation methods in the following sections.</t>
        <t>The relationship between two ASes determines the export rules between them. The export rules between two ASes , combined with the address prefixes owned by each AS, nearly determine the routing information exchanged between them. (Some BGP attributes affect whether to export some information). This means the relationship between two ASes nearly determines the routing information. Therefore, with the AS relationships, we can design a framework for inter-domain address validation at a more abstract level, to improve the simplicity of the implementation of SAV mechanism. With the continuous advancement of the Internet, many existing research  provides feasibility support for the study on  inter-domain source address validation based on AS relationships. With the current development of studies on AS relationship, there are many methods to obtain the relationship between two ASes. One is to derive AS relationships from existing data with various algorithms. The other is to query ASPA objects in RPKI directly for obtaining the P2C/C2P relationships. In this draft, as several ASes volunteer to participate in inter-domain source address validation, we assume that the relationships between every two ASes are known to each other. And the existence of RPKI provides a mapping from AS numbers to IP prefixes owned by the AS. The studies mentioned above make it possible to infer routing information between ASes directly.</t>
        <t>Analyze the existing source address validation algorithms from four aspects: accuracy, convergence speed, cost and whether to realize the validation at a single point. uRPF algorithm has high convergence speed and low cost, and is mainly performed at a single point, while a multi-point collaborative expansion scheme is proposed. The scheme of SAVNET using multiple information shows high accuracy, while it is fulfilled with multi-point collaboration. BAR-SAV proposed by SIDROPS is an algorithm with medium accuracy with multi-point collaboration. On this basis, this draft hopes to propose a multi-point validation scheme with moderate accuracy,  speed of convergence and cost , so we propose the source address validation scheme based on AS relationships.</t>
        <t>When performing inter-domain source address validation, we have a higher tolerance for false filtering, because several illegal packets with forged source address which are forwarded mistakenly won't cause large-scale attacks. However, we have lower acceptance for false blocking in order to prevent legitimate packets from being discarded, which may cause communication interrupt. The inter-domain source address validation scheme based on AS relationships proposed in this draft, compared with algorithms with high accuracy, aims not to increase false blocking rate, not to increase false filtering rate greatly, but to save the deployment cost and validation cost effectively and improve the convergence speed under dynamic circumstances.</t>
      </section>
      <section anchor="AS-relationships-introduction">
        <name>Introduction to AS Relationships</name>
        <t>AS relationships are typically congruent with the business relationships between the autonomous systems, so the definitions of AS relationships are basically based on the business relationships. Nowadays, some major relationships occupy the largest proportion of all the AS relationships, while other incidental relationships exist in special situations. In order to describe AS relationships formally, some symbols are defined as follows.</t>
        <t>As AS represents one autonomous system, Ori(AS), Cus(AS), Pro(AS), Peer(AS), Sib(AS) represents itself, its customer AS, its provider AS, its peer AS, its sibling AS respectively. PartCus(AS) and PartPro(AS) represents the customer AS and the provider AS of AS in partial transit relationship respectively. What's more, RI(AS) represents the routing information of the autonomous system AS while EXRI(AS1, AS2) represents the routing information exported to AS2 from AS1. The symbol U represents union operation.</t>
        <section anchor="major-relationships">
          <name>Major AS relationships</name>
          <t>Major AS relationships include three types of relationships, namely P2C relationship, P2P relationship and S2S relationship. The specific definitions and descriptions of them are as follows.</t>
          <ol type='%I'>
            <li>
              <t>Provider to customer relationship (Transit Relationship, P2C Relationship)</t>
              <t>A customer pays its provider for connectivity to the rest of the Internet. Therefore, a provider does transit traffic for its customers.<xref target="inferring-relationships"/> The provider and the customer usually do not belong to the same organization.  The provider AS exports its all 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 provider to customer relationship is as follows.</t>
              <t>EXRI(AS,Pro(AS))=RI(Ori(AS)) U RI(Cus(AS)) U RI(Sib(AS))</t>
              <t>EXRI(AS,Cus(AS))=RI(Ori(AS)) U RI(Cus(AS)) U RI(Pro(AS)) U RI(Peer(AS)) U RI(Sib(AS))</t>
            </li>
            <li>
              <t>Peer to peer relationship (P2P Relationship)</t>
              <t>A pair of peers agree to exchange traffic between their respective customers free of charge.<xref target="inferring-relationships"/> Two peers usually do not belong to the same organization. Each peer AS exports only the routing information of its customers, its siblings and itself to the other AS. The formal description of peer to peer relationship is as follows.</t>
              <t>EXRI(AS,Peer(AS))=RI(Ori(AS)) U RI(Cus(AS)) U RI(Sib(AS))</t>
            </li>
            <li>
              <t>Sibling to Sibling relationship (S2S Relationship)</t>
              <t>Two siblings are operated by the same institution. The most common anomalies seem to stem from recent acquisitions and mergers, suggesting that some AS pairs may have a sibling relationship. Each AS exports all of its routes to the other AS. <xref target="characterizing-internet"/> The formal description of sibling to sibling relationship is as follows.</t>
              <t>EXRI(AS,Sib(AS))=RI(Ori(AS)) U RI(Cus(AS)) U RI(Pro(AS)) U RI(Peer(AS)) U RI(Sib(AS))</t>
            </li>
          </ol>
          <t>Based on the description of the three relationships above, we can summarize the export rule table for major AS relationships (shown in <xref target="major-exporting-rule-table"/>).</t>
          <table anchor="major-exporting-rule-table">
            <name>Major Exporting 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">Export 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">Export 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">Export 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">Export 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="incidental-relationships">
          <name>Incidental AS Relationships</name>
          <t>The diverse interconnection scenarios in practice cannot be covered completely by the major AS relationships introduced in <xref target="major-relationships"/>, and other incidental relationships also exist in the AS interconnection network. Currently, we only illustrate hybrid relationship and partial transit relationship which are relatively common in this draft. But in fact, as Internet applications develop further, and the specific applications become more complex, there may be more types of incidental AS relationships.</t>
          <ol type='%I'>
            <li>
              <t>Hybrid relationship</t>
              <t>Two ASes have different relationships at different interconnection points (e.g. p2c in one location and p2p elsewhere). <xref target="inferring-complex"/> So from the AS level, the routing information exported from each other between ASes with hybrid relationships, is the union of the routing information which would be exported within each single relationship in the relationship set which hybrid relationships contain.</t>              
            </li>
            <li>
              <t>Partial transit relationship</t>
              <t>This relationship restricts the scope of a p2c relationship to the provider's peers and customers (but not providers). <xref target="inferring-complex"/> The formal description with export rule table of partial transit relationship is as follows.</t>
              <t>EXRI(AS,PartCus(AS))=RI(Ori(AS)) U RI(Cus(AS)) U RI(Peer(AS)) U RI(Sib(AS))</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">Export 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>EXRI(AS,PartPro(AS))=EXRI(AS,Peer(AS))=RI(Ori(AS)) U RI(Cus(AS)) U RI(Sib(AS))</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">Export 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="relationship-acquisition-methods">
          <name>AS relationship acquisition methods</name>
          <t>There are several methods to obtain AS relationships with different existed data, such as BGP route information, IXP information, IRR database, ASPA information of RPKI and so on. These methods can be divided into two categories. One is to infer relationships between ASes using specific data in the network, and the other is to query data directly to obtain AS relationships.</t>
          <section anchor="inference-algorithms">
            <name>Inference Algorithms</name>
            <t>Currently, according to the different strategies used by algorithms, AS relationship inferring algorithms can be mainly divided into three types, namely Network feature ranking Algorithms, Combinatorial optimization Algorithms and Local determination algorithms.<xref target="inference-classification"/></t>
            <t>The Network feature ranking Algorithms mainly use some characteristics of the Internet to infer the relationships between ASes. These methods first extract features of all the autonomous domains, and ranks them according to the features from the largest to the smallest. Then the methods determine all AS relationships using the rule that high-ranking ASes are the providers of low-ranking ASes, while ASes with similar rank are peers. Among all these methods, the representative ones are Gao algorithm <xref target="inferring-relationships"/>, which utilizes the degree of AS in the network topology as the feature, and Subramanian algorithm <xref target="characterizing-internet"/>. This kind of algorithms are simple to implement with low time complexity and low accuracy. What's more, the extracting of representative features and the setting of empirical parameters are key difficulties.</t>
            <t>The Combinatorial optimization Algorithms are principally based on the undirected graph abstracted from the Internet topology whose nodes are abstracted from ASes and edges are from connections between ASes. These algorithms usually solve combinatorial optimization problems using mathematical approaches to assign values of relationships between interconnected ASes. However, owing to the high theoretical complexity of the accurate solutions, approximate algorithms or random methods are commonly utilized to obtain the approximate solutions. Erlebach algorithm <xref target="classifying-c2p"/> and Battista algorithm <xref target="computing-relationships"/> are two examples of The Combinatorial optimization Algorithms. This type of algorithms basically have high theoretical complexity, and are complex to implement with high time complexity and low accuracy.</t>
            <t>The Local determination Algorithms mainly utilize a portion of the determined AS relationships which already exist in the public database or can be monitored by the monitor, combined with the features of AS relationships and AS paths to deduce the rest AS relationships of the Internet. This strategy is adopted by Xia Algorithm <xref target="evaluation-inferences"/>, which first filters out invalid paths using Valley-Free principle and then speculates relationships on the AS paths, and Shavitt algorithm <xref target="near-deterministic"/>. This kind of methods are relatively simple to implement with relatively low time complexity and high accuracy, with one premise that accurate and available priori information has been extracted.</t>
          </section>
          <section anchor="querying-approach">
            <name>Querying approach</name>
            <t>Apart from above inference algorithms, AS relationships can also be obtained directly by querying the ASPA objects in RPKI. The ASPA object is a cryptographically signed attestation by a Customer AS (CAS) that another AS listed in the ASPA is a Provider. The content of an ASPA identifies the Customer AS (CAS) as well as the Set of Provider ASes (SPAS) that are authorized by the CAS to be its Providers. <xref target="I-D.ietf-sidrops-aspa-profile"/> Therefore, we can get the set of ASes which are in P2C/C2P relationship with one AS straightly from ASPA objects in RPKI. On the basis of ASPA, some researchers proposed <xref target="ASRA"/> (Autonomous System Relationship Authorization) object, which can record more complex information of various AS relationships. ASRA objects may provide support for us to obtain accurate AS relationships directly in the future.</t>
            <t>In this draft, as several ASes try to implement SAV together, we suppose that the relationship between every two ASes can be known. But it is apparent that even if the AS relationships are unknown, they can be obtained using algorithms mentioned above.</t>
          </section>
        </section>
      </section>
      <section anchor="architecture-of-sav">
        <name>Architecture of Source Address Validation System</name>
        <section anchor="static-architecture">
          <name>Static Architecture</name>
          <t>In this section, we will propose the architecture design of the inter-domain source address validation system based on AS relationships. The main validation idea of this system is to deploy the prefix validation rule table on the boundary router of one AS and use the rules to verify the source address of the forwarding packets. And the prefix validation rule table is generated by the server within the AS and then deployed on the boundary router. The validation system designed by this draft mainly consists of three parts with diverse functions, which are Validation Rules Generation Server, Validation Router and Resource Public Key Infrastructure(RPKI). Every AS has its own Validation Rules Generation Server and Validation Router, while the Resource Public Key Infrastructure is a global security infrastructure.</t>
          <section anchor="VRGS">
            <name>Validation Rules Generation Server (VRGS)</name>
            <t>The Validation Rules Generation Server (VRGS for short) is responsible for communicating with the VRGS of its connected ASes to exchange their validation rules. VRGS also communicates with the RPKI to obtain the IPv6 address prefix corresponding to the AS number, and then generates the prefix validation rule table based on the AS number validation rule table. What's more, VRGS communicates with the Validation Router and sends the prefix validation rule table to it for deployment. The VRGS stores the following data  structure so as to generate and record rules.</t>
            <section anchor="neighbor-AS-table">
              <name>Neighbor AS Table</name>
              <t>This table stores all the relevant information of the AS connected to this AS. Each record in the table includes the AS number of the neighbor AS, the relationship between it and this AS, and the AS number validation rule set exported to this AS from it. The AS number validation rule set actually records the valid source AS number, that is, the source AS number of the packets which are permitted to be delivered. This storage method of AS number validation rules may cause the data redundance, but is more convenient for VRGS to manage and update the validation rules. This data structure is only stored in VRGS, and will change dynamically. When any change occurs to the complete AS number validation rules of this AS, which are actually the union of all the AS number validation rule sets in this table, it is necessary to update the prefix validation rule table stored in VRGS. The detailed information of a specific example of one neighbor AS table is as follows.</t>
              <table anchor="neighbor-AS-table-example">
                <name>An example of Neighbor AS Table</name>
                <thead>
                  <tr>
                    <th align="center">AS Number</th>
                    <th align="center">AS Relationship</th>
                    <th align="center">Permissible AS Number</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td align="center">ASN1</td>
                    <td align="center">P2P</td>
                    <td align="center">ASN4</td>
                  </tr>
                  <tr>
                    <td align="center">ASN2</td>
                    <td align="center">P2C</td>
                    <td align="center">ASN5</td>
                  </tr>
                </tbody>
              </table>
            </section>
            <section anchor="static-exporting-rule-table">
              <name>Static Exporting Rule Table</name>
              <t>This table stores the export rules of major relationships between different ASes. For this table, VRGS can first select the row based on the relationship between this AS and the interconnected AS, and then select the column based on the source of currently discussed rules, so as to read out the value of the target cell quickly and determine whether to export the discussed rules to the interconnected AS. This data structure is only stored in VRGS, and is static data which will not change with time. The detailed table content is as follows.</t>
              <table anchor="static-exporting-rule-table-example">
                <name>Static Exporting 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>
                  </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>
                  </tr>
                  <tr>
                    <td align="center">to Provider</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>
                  </tr>
                  <tr>
                    <td align="center">to Sibling</td>
                    <td align="center">+</td>
                    <td align="center">+</td>
                    <td align="center">+</td>
                    <td align="center">+</td>
                  </tr>
                </tbody>
              </table>
            </section>
            <section anchor="prefix-validation-rule-table">
              <name>Prefix Validation Rule Table</name>
              <t>This table stores the set of valid source address prefixes, that is, the set of the source address prefixes of packets which are allowed to be delivered. The VRGS applies to the RPKI for the set of prefixes corresponding to some AS numbers, and obtains the prefix validation rule table with the AS number validation rule table. This data structure is stored in both VRGS and VRR, and will change with time dynamically. When the prefix validation rule table stored in VRGS changes, VRGS should communicate with VRR and notify it to update its prefix validation rule table accordingly. The detailed information of a specific example of one neighbor AS table is as follows. </t>
              <table anchor="prefix-validation-rule-table-example">
                <name>An example of Prefix Validation Rule Table</name>
                <tbody>
                  <tr>
                    <td align="center">Permissible Prefixes</td>
                    <td align="center">Prefixes Set1</td>
                  </tr>
                </tbody>
              </table>
            </section>
          </section>
          <section anchor="VRR">
            <name>Validation Router (VRR)</name>
            <t>Validation Router (VRR for short) is a boundary router between two interconnected ASes, with prefix validation rule table deployed on it so as to verify the source address of the forwarding packets. VRR needs to communicate with VRGS and update its validation rule table to maintain the accuracy of validation. Prefix rule table is stored in the VRR for validation, and the detailed description of it is made above.</t>
          </section>
          <section anchor="RPKI">
            <name>Resource Public Key Infrastructure (RPKI)</name>
            <t>Resource Public Key Infrastructure (RPKI for short) records the current mapping from AS numbers to IP address prefixes owned by the AS. VRGS will communicate with RPKI and obtain the address prefixes corresponding to some AS numbers, so as to generate the prefix validation rule table in VRGS.</t>
          </section>
        </section>
        <section anchor="update-circumstance">
          <name>Update Circumstance</name>
          <t>In this section, we will discuss the corresponding response and possible problems of the architecture we design when some changes occur to the inter-domain network. Four different change scenarios will be discussed, namely the scenarios when AS relationships change, the scenarios when the network topology changes, the scenarios when the routing information of AS changes and the scenarios when the prefixes one AS owns change. To facilitate a clear explanation on the detailed situation, we will elaborate on it using representative examples. The legends which will be used in the discussion are as follows.</t>
          <t>+--+ represents the border of one autonomous system, while ++++ represents the border of RPKI. The +||+ at the edge of one AS represents a boundary router, that is,  a validation router (VRR). The |VRGS| written inside one AS represents a validation rules generate server (VRGS). The line with an arrow which points from AS1 to AS2 means the connection from AS1 to AS2,  while the text beside the line shows the relationship from AS1 to AS2.</t>
          <section anchor="AS-relationships-change">
            <name>Change of the AS relationship</name>
            <t>With occurrence of some business events between ASes, the interconnected relationship between ASes may also change correspondingly, though AS relationships do not change frequently. When changes occur to the relationships between two ASes, VRGSs of the two ASes both need to update the AS number validation rule set recorded in Neighbor AS Table gradually. After updating the AS number rule set, the VRGS regenerates the prefix rule table accordingly. So when we discuss this scenario when AS relationships change, we only focus on the analysis of changes in the AS number validation rule set. In addition to the narrow sense of AS relationship changes, the addition and reduction of connections between ASes can both be considered as the board sense of AS relationship changes and analyzed similarly.</t>
            <figure anchor="specific-AS-network1" align="center">
              <name>A specific AS network 1</name>
              <artwork><![CDATA[ 
                       +------------------+
                       |   AS1  |VRGS1|   |
                       +-+| |+------+| |+-+
                          /\          /\
                          /   ++++++   \
                   (C2P) /    |RPKI|    \ (C2P)
                        /     ++++++     \
                +----+| |+----+    +----+| |+----+
                | AS2 |VRGS2| |    | AS3 |VRGS3| | 
                +-------------+    +-------------+
              ]]></artwork>
            </figure>
            <table anchor="sec1-neighbor-AS-table-of-AS1">
              <name>Neighbor AS Table of AS1</name>
              <thead>
                <tr>
                  <th align="center">AS Number</th>
                  <th align="center">AS Relationship</th>
                  <th align="center">Permissible AS Number</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">ASN1</td>
                  <td align="center">self</td>
                  <td align="center">ASN1</td>
                </tr>
                <tr>
                  <td align="center">ASN2</td>
                  <td align="center">P2C</td>
                  <td align="center">ASN2</td>
                </tr>
                <tr>
                  <td align="center">ASN3</td>
                  <td align="center">P2C</td>
                  <td align="center">ASN3</td>
                </tr>
              </tbody>
            </table>
            <table anchor="sec1-neighbor-AS-table-of-AS2">
              <name>Neighbor AS Table of AS2</name>
              <thead>
                <tr>
                  <th align="center">AS Number</th>
                  <th align="center">AS Relationship</th>
                  <th align="center">Permissible AS Number</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">ASN2</td>
                  <td align="center">self</td>
                  <td align="center">ASN2</td>
                </tr>
                <tr>
                  <td align="center">ASN1</td>
                  <td align="center">C2P</td>
                  <td align="center">ASN1,ASN3</td>
                </tr>
              </tbody>
            </table>
            <table anchor="sec1-neighbor-AS-table-of-AS3">
              <name>Neighbor AS Table of AS3</name>
              <thead>
                <tr>
                  <th align="center">AS Number</th>
                  <th align="center">AS Relationship</th>
                  <th align="center">Permissible AS Number</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">ASN3</td>
                  <td align="center">self</td>
                  <td align="center">ASN3</td>
                </tr>
                <tr>
                  <td align="center">ASN1</td>
                  <td align="center">C2P</td>
                  <td align="center">ASN1,ASN2</td>
                </tr>
              </tbody>
            </table>
            <figure anchor="relationship-change-network" align="center">
              <name>AS network 1 after changes of relationships</name>
              <artwork><![CDATA[ 
                       +------------------+
                       |   AS1  |VRGS1|   |
                       +-+| |+------+| |+-+
                          /\          /\
                          /   ++++++   \
                   (P2P) /    |RPKI|    \ (C2P)
                        /     ++++++     \
                +----+| |+----+    +----+| |+----+
                | AS2 |VRGS2| |    | AS3 |VRGS3| | 
                +-------------+    +-------------+
              ]]></artwork>
            </figure>
            <table anchor="sec1-neighbor-AS-table-of-AS2-updated">
              <name>Neighbor AS Table of AS2 after Updating</name>
              <thead>
                <tr>
                  <th align="center">AS Number</th>
                  <th align="center">AS Relationship</th>
                  <th align="center">Permissible AS Number</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">ASN2</td>
                  <td align="center">self</td>
                  <td align="center">ASN2</td>
                </tr>
                <tr>
                  <td align="center">ASN1</td>
                  <td align="center">P2P</td>
                  <td align="center">ASN1</td>
                </tr>
              </tbody>
            </table>
            <t>Then let's assume a scenario, and the detailed connections of all ASes are displayed as <xref target="specific-AS-network1"/>. Initially, the interconnection relationship between AS1 and AS2 is P2C relationship, while the interconnection relationship between AS1 and AS3 is P2C relationship. After the convergence of validation rules, the Neighbor AS Table stored in the VRGS of AS1, AS2 and AS3 are respectively shown in <xref target="sec1-neighbor-AS-table-of-AS1"/>, <xref target="sec1-neighbor-AS-table-of-AS2"/> and <xref target="sec1-neighbor-AS-table-of-AS3"/>. After the change of relationship, the interconnection relationship between AS1 and AS2 is transformed to P2P relationship, and the interconnection relationship between AS1 and AS3 remains unchanged.  According to the exporting rule table, one AS won't export the validation rules of its customer AS to its provider AS, so the exporting relationship between AS1 and AS2 has changed, and relative validation rule tables need to be updated gradually. After the update and convergence of validation rules, the Neighbor AS Table in VRGS of AS2 is shown in <xref target="sec1-neighbor-AS-table-of-AS2-updated"/>, while the Neighbor AS Table in VRGS of AS1 and AS3 remains the same in <xref target="sec1-neighbor-AS-table-of-AS1"/> and <xref target="sec1-neighbor-AS-table-of-AS3"/>.</t>
          </section>
          <section anchor="network-topology-change">
            <name>Change of the topology of the network</name>
            <t>If the change of the topology of the network leads to a change of AS relationships, then this scenario needs to be analyzed like the first case. Therefore, we mainly discuss the scenario when the topology changes but the AS relationships don't change in this section. Under this circumstance, validation rules recorded in relative ASes won't change, which means that the validation architecture ignores the changes caused by changes in network topology granularity.</t>
            <figure anchor="specific-AS-network2" align="center">
              <name>A specific AS network 2</name>
              <artwork><![CDATA[ 
                       +------------------+
                       |   AS1  |VRGS1|   |
                       +-+|1|+------+|2|+-+
                          /\          /\
                          /   ++++++   \
                   (C2P) /    |RPKI|    \ (C2P)
                        /     ++++++     \
                +----+| |+----+    +----+| |+----+
                | AS2 |VRGS2| |    | AS3 |VRGS3| | 
                +-------------+    +-------------+
              ]]></artwork>
            </figure>
            <figure anchor="topology-change-network" align="center">
              <name>AS network 2 after changes of network topology</name>
              <artwork><![CDATA[ 
                       +------------------+
                       |   AS1  |VRGS1|   |
                       +-+|1|+------+|2|+-+
                          /\          /\
                          /   ++++++   \
                   (C2P) /    |RPKI|    \ (C2P)
                        /     ++++++     \
                +----+| |+----+    +----+| |+----+
                | AS3 |VRGS3| |    | AS2 |VRGS2| | 
                +-------------+    +-------------+
              ]]></artwork>
            </figure>
            <table anchor="sec2-neighbor-AS-table-of-AS1">
              <name>Neighbor AS Table of AS1</name>
              <thead>
                <tr>
                  <th align="center">AS Number</th>
                  <th align="center">AS Relationship</th>
                  <th align="center">Permissible AS Number</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">ASN1</td>
                  <td align="center">self</td>
                  <td align="center">ASN1</td>
                </tr>
                <tr>
                  <td align="center">ASN2</td>
                  <td align="center">P2C</td>
                  <td align="center">ASN2</td>
                </tr>
                <tr>
                  <td align="center">ASN3</td>
                  <td align="center">P2C</td>
                  <td align="center">ASN3</td>
                </tr>
              </tbody>
            </table>
            <t>Now we assume such a specific scenario for analysis, whose detailed connections of all ASes are shown in <xref target="specific-AS-network2"/>. Initially, AS1 is interconnected with AS2 through boundary router VRR1, while AS1 is interconnected with AS3 through boundary router VRR2. At this point, VRR1 should allow the address prefixes owned by AS2 to pass theoretically, and VRR2 should allow the address prefixes of AS3 to pass theoretically. But according to our design, the validation rules deployed on VRR1and VRR2 permit address prefixes of AS2 and AS3 to be delivered. After the change of topology, AS2 is connected to VRR2 and AS3 is connected to VRR1. And after this change, VRR1 should allow the address prefixes of AS3 to pass theoretically, and VRR2 should allow the address prefixes of AS2 to pass theoretically. But because the VRR corresponding to different connections are not recorded, the Neighbor AS Table in VRGS of AS1 remains unchanged (shown in <xref target="sec2-neighbor-AS-table-of-AS1"/>) and the validation rules deployed on VRR1 and VRR2 do not change.</t>
            <t>In this scenario when the topology changes but the AS relationships don't change, the AS number validation rules won't change in the architecture designed in this draft. Based on the analysis of this scenario, we find the reason which causes this result is that, one AS may be connected to multiple ASes through multiple different boundary routers, and as the AS topology connected to each VRR is different, validation rules deployed on these VRRs are not the same theoretically. However, in our validation scheme, VRGS won't bind different AS interconnection relationships to its different VRRs, so it won't store the prefix validation rule table corresponding to each VRR. Instead, the VRGS will only record the prefix validation rule table of the entire AS, and deploy the same validation rules on each VRR. So in fact, the VRGS stores the union of all prefix validation rule tables which should be deployed on each VRR respectively. Such processing method makes our validation scheme ignore the changes of network topology which do not cause the changes of AS relationships without blocking legitimate traffic additionally, and allow some forged traffic to pass. At the same time, because the method decreases the frequency of updating validation rules, it also reduces the update cost of our source address validation scheme.</t>
          </section>
          <section anchor="routing-information-change">
            <name>Change of the routing information</name>
            <t>When the routing information of one AS changes, if the root of this change also causes the change of certain AS relationships, then the ASes whose relationships with neighbor ASes have changed or ASes which are affected indirectly by the change of AS relationships, need to be analyzed like the first case. As for the ASes under the situation when the AS relationships remain unchanged, or ASes which are not affected by such changes in AS relationships, their forwarding tables may change due to the influence, but their AS number validation rule set don't change. We will mainly discuss the second situations next.</t>
            <figure anchor="specific-AS-network3" align="center">
              <name>A specific AS network 3</name>
              <artwork><![CDATA[ 
                                  +-------------------+
                                  | External Network  |
                                  +-------+| |+-------+
                                            /\
                        Forwarding Table 1  |
                          |                 |
                        +--+--------------+| |+-+
                        |     AS1   |VRGS1|     |
                        +-+| |+-----------+| |+-+
                          /\               /\
                          /      ++++++     \
                   (C2P) /       |RPKI|      \ (C2P)
                        /        ++++++       \
                +----+| |+----+         +----+| |+----+
                | AS2 |VRGS2| |         | AS3 |VRGS3| |
                +--+----------+         +----------+--+
                  |                                 |
                Forwarding Table 2      Forwarding Table 3
              ]]></artwork>
            </figure>
            <figure anchor="routing-change-network" align="center">
              <name>A specific AS network 3</name>
              <artwork><![CDATA[ 
                                  +-------------------+
                                  | External Network' |
                                  +-------+| |+-------+
                                            /\
                        Forwarding Table 1' |
                          |                 |
                        +--+--------------+| |+-+
                        |     AS1   |VRGS1|     |
                        +-+| |+-----------+| |+-+
                          /\               /\
                          /      ++++++     \
                   (C2P) /       |RPKI|      \ (C2P)
                        /        ++++++       \
                +----+| |+----+         +----+| |+----+
                | AS2 |VRGS2| |         | AS3 |VRGS3| |
                +--+----------+         +----------+--+
                  |                                 |
                Forwarding Table 2'     Forwarding Table 3'
              ]]></artwork>
            </figure>
            <t>Then we assume such a specific scenario for analysis, and its detailed connections of all ASes are shown in <xref target="specific-AS-network3"/>. Initially, AS1 is connected to an external network whose forwarding table is represented as Forwarding Table1, and the forwarding tables of AS2 and AS3 are represented as Forwarding Table2 and Forwarding Table3 respectively. The change of the external network makes the forwarding table of AS1 change to Forwarding Table1'. Because AS1 is connected to AS2 and AS3 respectively, the Forwarding tables of AS2 and AS3 are updated to Forwarding Table2' and Forwarding Table3' under the influence of AS1. But in addition, because the change of external network does not cause the changes in validation rules of AS1, the validation rules of AS2 and AS3 won't change owing to the influence.</t>
            <t>Under the circumstance when the network routing information changes, whether the validation rules of one AS change or not mainly depends on whether it is affected by the change of AS relationships. Therefore, even if one AS needs to update its validation rules, the essence of the update actually comes from the change of AS relationships, and the changes of routing information are only a reflection in one aspect of the impact of the changes in AS relationships.</t>
          </section>
          <section anchor="AS-prefixes-change">
            <name>Change of the prefixes of AS</name>
            <t>A change in the set of address prefixes owned by one AS, means that the mapping from AS numbers to sets of prefixes stored in RPKI changes. When this change happens, the VRGS of each AS needs to regenerate the prefix validation rule table based on the new mapping, and deploy the new rule table on the VRR. Our scheme adopts the polling update method. The VRGS within one AS initiatively queries the RPKI at regular intervals, for the address prefix sets corresponding to the AS numbers in the AS number validation rule set. If the union of all these prefix sets change, the VRGS will update its prefix validation rule table.</t>
            <t>With RPKI, we can obtain the mapping of address prefixes. And in the current RPKI architecture, whenever a holder of IP address space wants to authorize an AS to announce, it first issues an end-entity certificate with its own private key, and then issues a Route Origin Authorization (short for ROA) with the private key of that EE certificate, finishing the binding of the IP address prefixes to this AS.<xref target="RFC6480"/> A ROA records the AS number and its authorized address prefixes.<xref target="RFC6482"/> The ROA objects are stored in the repository of RPKI <xref target="RFC6481"/> to facilitate the data synchronization by the relying parties (short for RP) through rsync <xref target="RFC5781"/> or RRDP protocols <xref target="RFC8182"/>. So the VRGS can utilize RPKI validator to obtain the certificates, ROA objects and other data regularly from the distributed repository to generate a local cache of RPKI data. Therefore, the ROA objects of one target AS can be queried using the AS number of it, and the set of IP address prefixes owned by this AS can be obtained.</t>
            <t>In summary, our design of inter-domain source address validation can deal with the four circumstances of changing discussed above. In some cases which can not be handled correctly, such as the scenarios when the network topology changes, our design will only allow some forged traffic to pass through mistakenly, but won't block legitimate traffic additionally. The handle of the design meets our target that the method should not increase false blocking rate or increase false filtering rate greatly. And when changes occur, changes that are more fine-grained than changes of AS relationships won't cause the change of AS number validation rules, which can reduce the frequency of rule changing effectively and improve the efficiency of maintaining validation rules.</t>
          </section>
        </section>
      </section>

      <section anchor="consider-deployability">
        <name>Considerations on Deployability</name>
        
        <section anchor="use-existing-info">
          <name>Utilize existing information as much as possible</name>
          <t>Using information beyond existing that will inevitably incur additional costs due to its need for global upgrades. At the same time, it will improve the deployment requirements, which is not conducive to the large-scale promotion of the validation scheme. Therefore, a source address validation scheme which is easy to be widely deployed in real networks always tends to utilize existing information as much as possible. Similarly, when existing facilities can provide certain services, deployable solutions always prefer to utilize existing facilities. For the source address validation schemes, existing information includes routing information, business relationships between different ASes, and the mapping from AS numbers to IP prefixes provided by RPKI. Our solution is to utilize the existing AS relationship information to generate validation rules, and use the mapping from AS numbers to IP prefixes provided by RPKI.</t>
        </section>
        
        <section anchor="use-abstact-info">
          <name>Prefer to use and exchange more abstract information</name>
          <t>Compared to more fine-grained and concrete information, abstract information, although distorted in details, can fundamentally simplify and quickly solve problems. When using abstract information to simplify problems, it is often possible to reduce the computational cost of a solution while improving its efficiency, which is more conducive to promoting the deployment of validation solutions. In this case, when multiple nodes collaborate, fine-grained rule information may not be transmitted among them, and each node may not necessarily have fine-grained rule information from other nodes. Ultimately, specific validation rules can be generated using the abstract information. As stated earlier, AS relationships basically determines the routing information between ASes. On this basis, our scheme uses AS relationships which is more abstract instead of routing information, perform validation rule calculation at the granularity of AS relationships, passes AS numbers between ASes instead of IP prefixes, and only generates prefix filtering rules based on AS number validation rules at the end.</t>
        </section>

        <section anchor="balance-of-metrics">
          <name>Balance accuracy, time and cost</name>
          <t>When the Internet routing remains stable, generating the most accurate filtering rules directly during the process of forwarding table establishment is the best validation scheme. However, today's Internet often undergoes various levels of changes, which will trigger fluctuations in validation rules of different schemes until they converge again, such as various changes and their impacts in <xref target="update-circumstance"/>. Long convergence time is not conducive for a scheme to providing effective validation support in a constantly changing network. Therefore, in the dynamic network, an easily deployable validation scheme requires a good balance between convergence time and accuracy.</t>
          <t>On the other hand, when the calculation and deployment of rules cause almost no additional consumption, the most effective validation schemes tend to use the most complex and accurate schemes. However, in real networks, validation schemes which require more data and complex computational processes often have higher costs. Trading excessive expenses for a slight improvement in accuracy is an inappropriate choice. Therefore, in practical situations, an easily deployable validation scheme requires a good balance between the computational cost and accuracy.</t>
          <t>The analysis of above two examples indicates that there may be contradictions, which are difficult to optimize simultaneously, between different evaluation metrics due to the hidden correlation in practical networks.</t>
          <t>A new metric should be designed that can be called "validation cost-effectiveness". Calculate the ratio of total accuracy and average deployment cost, to reflect the validation cost-effectiveness in the cost dimension. Calculate the ratio of total accuracy and average convergence time under various changing scenarios, to reflect the validation cost-effectiveness in the time dimension.</t>
        </section>

        <!-- <t>To illustrate the significance and advantages of 'best effort validation', we'll evaluate and compare the inter-domain source address validation scheme based on AS relationships with uRPF algorithm and SAVNET scheme, from the perspective of 'validation cost-effectiveness'. Firstly, we'll introduce the definition and evaluation model of several related metrics in different dimensions.</t> -->

        <!-- <section anchor="data-source">
          <name>Data Source of Evaluation Simulation</name>
          <t>Use ARK project of CAIDA to obtain real AS-level topology data (which provides AS-level network topology), as well as AS-Relationship project data provided by CAIDA, which includes the relationships between each pair of connected ASes and the size of each Customer Cone (or generate a simulated AS-level network topology using BRITE/inet).</t>
          <t>Use the mapping of the IP addresses to AS numbers provided by CAIDA to determine the address space size of each AS.</t>
          <t>Assuming a uniform distribution of forged data packets (considering power law distribution later) for simulation estimation.</t>
        </section> -->

        <!-- <section anchor="sav-deployment-accuracy">
          <name>False Negative and False Positive</name>
          <t>In the following calculation formulas, TP (True Positive) represents the true positive value, that is amount of forged traffic which is successfully blocked; FN (False Negative) represents the false negative value, that is amount of forged traffic which is filtered out mistakenly; FP (False Positive) represents the false positive value, that is amount of legitimate traffic which is blocked by mistake; TN (True Negative) represents the true negative value, that is amount of legal traffic.</t>
        </section> -->

        <!-- <section anchor="sav-deployment-cost">
          <name>Validation Cost</name>
          <t>Validation cost: Validation cost refers to the additional computing or storage cost of routers after implementation of one method, and the additional cost caused by longer data packets during the forwarding process.</t>
          <t>Validation Cost=the average increase in traffic or number of packets, after implementing the validation mechanism, or the average increase in forwarding bytes per hop router (quantified). In existing papers, there are also cases where the cost is quantified according to its magnitude, assigning costs of similar magnitude to the same value (a representative value of magnitude).</t>
        </section> -->

        <!-- <section anchor="sav-deployment-benefit">
          <name>Deployment Benefits</name>
          <t>Deployment benefits means the benefits obtained by an AS after deploying a validation mechanism (the reduction of forged traffic).</t>
          <t>ben(D, n)=red(DU{n}, n)-red(D, n)</t>
        </section> -->

        <!-- <section anchor="sav-deployment-effectiveness">
          <name>Validation Deployment Cost-Effectiveness</name>
          <t>Taking the above metrics into account, we propose a metric 'validation cost-effectiveness' to provide a comprehensive quantitative evaluation of metrics in multiple dimensions. The specific definitions and computing methods are as follow.</t>
          <t>Validation cost-effectiveness =</t>
          <t>An explanation of the overall evaluation model is as follow.</t>
        </section> -->
      </section>

      <section anchor="next-step">
        <name>Next Step</name>
        <t>In the current discussion and design, there are still some details that have not been covered. We discuss the major and incidental AS relationships in <xref target="AS-relationships-introduction"/>, but there are some more complex and minor AS relationships which haven't been discussed. What's more, with the rapid development of Internet applications, there may be other new incidental AS relationships which are not covered in this draft. In future research, we will further discuss this issue and work to propose solutions that can incrementally handle 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="I-D.wu-savnet-inter-domain-architecture"/>.</t>
      </section>
      
      <section anchor="IANA">
        <name>IANA Considerations</name>
        <t>This document has no IANA requirements.</t>
      </section>
   </middle>

   <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC8182" target="https://www.rfc-editor.org/info/rfc8182">
          <front>
            <title>The RPKI Repository Delta Protocol (RRDP)</title>
            <author fullname="T. Bruijnzeels" initials="T." surname="Bruijnzeels"/>
            <author fullname="O. Muravskiy" initials="O." surname="Muravskiy"/>
            <author fullname="B. Weber" initials="B." surname="Weber"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <date month="July" year="2017"/>
            <abstract>
              <t>In the Resource Public Key Infrastructure (RPKI), Certificate Authorities (CAs) publish certificates, including end-entity certificates, Certificate Revocation Lists (CRLs), and RPKI signed objects to repositories. Relying Parties retrieve the published information from those repositories. This document specifies a new RPKI Repository Delta Protocol (RRDP) for this purpose. RRDP was specifically designed for scaling. It relies on an Update Notification File which lists the current Snapshot and Delta Files that can be retrieved using HTTPS (HTTP over Transport Layer Security (TLS)), and it enables the use of Content Distribution Networks (CDNs) or other caching infrastructures for the retrieval of these files.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8182"/>
          <seriesInfo name="DOI" value="10.17487/RFC8182"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8182.xml -->
        <reference anchor="RFC6481" target="https://www.rfc-editor.org/info/rfc6481">
          <front>
            <title>A Profile for Resource Certificate Repository Structure</title>
            <author fullname="G. Huston" initials="G." surname="Huston"/>
            <author fullname="R. Loomans" initials="R." surname="Loomans"/>
            <author fullname="G. Michaelson" initials="G." surname="Michaelson"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>This document defines a profile for the structure of the Resource Public Key Infrastructure (RPKI) distributed repository. Each individual repository publication point is a directory that contains files that correspond to X.509/PKIX Resource Certificates, Certificate Revocation Lists and signed objects. This profile defines the object (file) naming scheme, the contents of repository publication points (directories), and a suggested internal structure of a local repository cache that is intended to facilitate synchronization across a distributed collection of repository publication points and to facilitate certification path construction. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6481"/>
          <seriesInfo name="DOI" value="10.17487/RFC6481"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6481.xml -->
        <reference anchor="RFC6482" target="https://www.rfc-editor.org/info/rfc6482">
          <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>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6482.xml -->
        <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="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="RFC5781" target="https://www.rfc-editor.org/info/rfc5781">
          <front>
            <title>The rsync URI Scheme</title>
            <author fullname="S. Weiler" initials="S." surname="Weiler"/>
            <author fullname="D. Ward" initials="D." surname="Ward"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="February" year="2010"/>
            <abstract>
              <t>This document specifies the rsync Uniform Resource Identifier (URI) scheme. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5781"/>
          <seriesInfo name="DOI" value="10.17487/RFC5781"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5781.xml -->
        <reference anchor="RFC6480" target="https://www.rfc-editor.org/info/rfc6480">
          <front>
            <title>An Infrastructure to Support Secure Internet Routing</title>
            <author fullname="M. Lepinski" initials="M." surname="Lepinski"/>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>This document describes an architecture for an infrastructure to support improved security of Internet routing. The foundation of this architecture is a Resource Public Key Infrastructure (RPKI) that represents the allocation hierarchy of IP address space and Autonomous System (AS) numbers; and a distributed repository system for storing and disseminating the data objects that comprise the RPKI, as well as other signed objects necessary for improved routing security. As an initial application of this architecture, the document describes how a legitimate holder of IP address space can explicitly and verifiably authorize one or more ASes to originate routes to that address space. Such verifiable authorizations could be used, for example, to more securely construct BGP route filters. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6480"/>
          <seriesInfo name="DOI" value="10.17487/RFC6480"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6480.xml -->      
        <reference anchor="I-D.wu-savnet-inter-domain-problem-statement" target="https://datatracker.ietf.org/doc/html/draft-wu-savnet-inter-domain-problem-statement-09">
          <front>
            <title>Source Address Validation in Inter-domain Networks Gap Analysis, Problem Statement, and Requirements</title>
            <author fullname="Jianping Wu" initials="J." surname="Wu">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Dan Li" initials="D." surname="Li">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Libin Liu" initials="L." surname="Liu">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Mingqing Huang" initials="M." surname="Huang">
              <organization>Huawei</organization>
            </author>
            <author fullname="Kotikalapudi Sriram" initials="K." surname="Sriram">
              <organization>USA National Institute of Standards and Technology</organization>
            </author>
            <author fullname="Lancheng Qin" initials="L." surname="Qin">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Nan Geng" initials="N." surname="Geng">
              <organization>Huawei</organization>
            </author>
            <date day="27" month="June" year="2023"/>
            <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-wu-savnet-inter-domain-problem-statement-09"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.draft-wu-savnet-inter-domain-problem-statement-09.xml -->
        <reference anchor="I-D.wu-savnet-inter-domain-architecture" target="https://datatracker.ietf.org/doc/html/draft-wu-savnet-inter-domain-architecture-04">
          <front>
            <title>Inter-domain Source Address Validation (SAVNET) Architecture</title>
            <author fullname="Jianping Wu" initials="J." surname="Wu">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Dan Li" initials="D." surname="Li">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Mingqing Huang" initials="M." surname="Huang">
              <organization>Huawei</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>Tsinghua University</organization>
            </author>
            <date day="30" month="September" year="2023"/>
            <abstract>
              <t>This document introduces an inter-domain SAVNET architecture, providing a comprehensive framework for guiding the design of inter- domain SAV mechanisms. The proposed architecture empowers ASes to establish SAV rules by sharing SAV-specific Information between themselves. During the incremental or partial deployment of SAV- specific Information, it can rely on general information, such as routing information from the RIB, to construct the SAV table when SAV-specific Information for an AS's prefixes 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. It also defines the architectural components and their relations.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-wu-savnet-inter-domain-architecture-04"/>
        </reference>  <!-- https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.draft-wu-savnet-inter-domain-architecture-04.xml -->
        <reference anchor="I-D.sriram-sidrops-bar-sav" target="https://datatracker.ietf.org/doc/html/draft-sriram-sidrops-bar-sav-02">
          <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="17" month="December" year="2022"/>
            <abstract>
              <t>Designing an efficient source address validation (SAV) filter requires minimizing false positives (i.e., avoiding dropping 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.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-sriram-sidrops-bar-sav-02"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.draft-sriram-sidrops-bar-sav-02.xml -->
        <reference anchor="I-D.ietf-sidrops-aspa-profile" target="https://datatracker.ietf.org/doc/html/draft-ietf-sidrops-aspa-profile-16">
          <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="10" month="July" year="2023"/>
            <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-16"/>
        </reference>  <!-- from https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-sidrops-aspa-profile.xml -->
        <reference anchor="inferring-relationships" 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="characterizing-internet" 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="classifying-c2p" target="https://www.research-collection.ethz.ch/handle/20.500.11850/146759">
          <front>
            <title>Classifying customer-provider relationships in the Internet</title>
            <author fullname="Erlebach Thomas"></author>
            <author fullname="Hall Alexander"></author>
            <author fullname="Schank Thomas"></author>
            <date month="July" year="2002"/>
          </front>
        </reference>
        <reference anchor="computing-relationships" target="https://ieeexplore.ieee.org/document/1208668">
          <front>
            <title>Computing the types of the relationships between autonomous systems</title>
            <author fullname="Giuseppe Di Battista"></author>
            <author fullname="Maurizio Patrignani"></author>
            <author fullname="Maurizio Pizzonia"></author>
            <date month="July" year="2003"/>
          </front>
        </reference>
        <reference anchor="evaluation-inferences" target="https://ieeexplore.ieee.org/document/1378209">
          <front>
            <title>On the evaluation of AS relationship inferences</title>
            <author fullname="Jianhong Xia"></author>
            <author fullname="Lixin Gao"></author>
            <date month="November" year="2004"/>
          </front>
        </reference>
        <reference anchor="near-deterministic" target="https://ieeexplore.ieee.org/document/5206358">
          <front>
            <title>Near-deterministic inference of AS relationships</title>
            <author fullname="Udi Weinsberg"></author>
            <author fullname="Yuval Shavitt"></author>
            <author fullname="Eran Shir"></author>
            <date month="June" year="2009"/>
          </front>
        </reference>
        <reference anchor="inference-classification" target="https://d.wanfangdata.com.cn/periodical/jsjxb201404019">
          <front>
            <title>Inference Algorithm for Business Relationships in Internet Autonomous Systems</title>
            <author fullname="Qilin Fan"></author>
            <author fullname="Hao Yin"></author>
            <author fullname="Chuang Lin"></author>
            <author fullname="Jiaqing Dong"></author>
            <author fullname="Wei Song"></author>
            <date month="Apr" 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>
   </back>
</rfc>