<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-li-savnet-source-prefix-advertisement-07" category="info" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="Intra-domain SPA">Source Prefix Advertisement for Intra-domain SAVNET</title>
    <seriesInfo name="Internet-Draft" value="draft-li-savnet-source-prefix-advertisement-07"/>
    <author initials="L." surname="Qin" fullname="Lancheng Qin">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>qinlc@mail.zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="N." surname="Geng" fullname="Nan Geng">
      <organization>Huawei</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>gengnan@huawei.com</email>
      </address>
    </author>
    <author initials="D." surname="Li" fullname="Dan Li">
      <organization>Tsinghua University</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>tolidan@tsinghua.edu.cn</email>
      </address>
    </author>
    <date year="2026" month="September" day="24"/>
    <area>Routing</area>
    <workgroup>SAVNET</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 48?>

<t>This document describes a mechanism for generating interface-based prefix allowlists for intra-domain source address validation (SAV) on external interfaces facing directly connected hosts or non-BGP customer networks. The mechanism derives source prefixes from routing information and combines them with source prefixes provisioned by the AS operator. Routers use the combined source prefixes to generate SAV allowlists.</t>
    </abstract>
  </front>
  <middle>
    <?line 52?>

<section anchor="sec-intro">
      <name>Introduction</name>
      <t>This document focuses on SAV performed on external interfaces facing entities that are not deployed as neighboring ASes, including directly connected hosts and non-BGP customer networks, consistent with <xref target="I-D.ietf-savnet-intra-domain-problem-statement"/>. Each router generates and applies an allowlist (i.e., the "Interface-based prefix allowlist" mode in <xref target="I-D.ietf-savnet-general-sav-capabilities"/>) for each interface within the scope of this document. The allowlist contains the source prefixes that are permitted on the interface for the attached entity.</t>
      <t>A router can derive source prefixes from existing routing information. An operator can also provision source prefixes when routing information is insufficient. The router combines the routing-derived and operator-provisioned source prefixes and uses the resulting prefix set to generate the SAV allowlist.</t>
      <t>The mechanism can be deployed incrementally and provides security benefits on interfaces where complete and correctly generated allowlists are enforced. When an interface deploys an allowlist, spoofed traffic with source addresses not covered by the allowlist cannot enter the AS through that interface. As a result, even partial deployment (e.g., enabling the mechanism on a subset of such external interfaces) reduces the potential attack surface. As the mechanism is deployed on more external interfaces within the AS, the overall protection against source address spoofing attacks increases correspondingly, provided that the additional allowlists are complete and correctly generated.</t>
      <t>The reader is encouraged to be familiar with <xref target="I-D.ietf-savnet-intra-domain-problem-statement"/> and <xref target="I-D.ietf-savnet-intra-domain-architecture"/>.</t>
    </section>
    <section anchor="sav-allowlist-generation-procedure">
      <name>SAV Allowlist Generation Procedure</name>
      <section anchor="routing-derived-source-prefixes">
        <name>Routing-Derived Source Prefixes</name>
        <t>For each entity, the mechanism derives a set of source prefixes by aggregating routing information associated with the interfaces connecting to that entity.</t>
        <t>The mechanism needs to know which interfaces connect to the same entity and the prefix reachability information associated with each of these interfaces. For each such interface, the mechanism obtains the prefixes for which routing information maintained by the corresponding router indicates reachability through that interface. A prefix contributes to the entity's set only when the route retains sufficient attachment or origin context to associate the prefix with that entity; reachability through an internal next hop alone is not sufficient.</t>
        <t>The union of the accepted prefixes forms the set of routing-derived source prefixes for the entity, denoted as R. The routing-derived source prefixes can be obtained and updated automatically as routing information changes.</t>
        <section anchor="source-entity-identifier-sei">
          <name>Source Entity Identifier (SEI)</name>
          <t>A Source Entity Identifier (SEI) is an identifier assigned by the network operator to represent a source entity. An SEI is unique within the intra-AS routing domain in which it is used.</t>
          <t>Each SEI is associated with one or more interfaces of routers that connect directly to the corresponding source entity. This binding allows routers to explicitly indicate which entity a specific interface belongs to.</t>
          <t>An SEI and its prefix associations can be distributed through intra-AS routing messages. If route advertisements carry an SEI, the receiving router can correlate prefixes that belong to the same entity.</t>
          <t>This correlation is useful in asymmetric routing scenarios. For example, a multihomed customer network may advertise different subsets of its prefixes at different attachment points while legitimately sending traffic using any of those prefixes through any of the attachment points. An allowlist derived only from prefixes learned at the local attachment point could then improperly block legitimate customer-originated traffic. Correlating the attachment points by SEI allows the mechanism to form the entity-wide R and apply it to each interface in the same authorization context.</t>
          <t>Each router can identify routing-derived source prefixes as follows:</t>
          <ol spacing="normal" type="1"><li>
              <t>Identify source entities: For all source entities connected to the router, create a set of their corresponding Source Entity Identifier (SEI) values.  Denote this set as Set S.</t>
            </li>
            <li>
              <t>Using all received intra-AS rouing messages, for each SEI value in Set S, obtain the set of source prefixes associated with the same SEI value.</t>
            </li>
          </ol>
        </section>
      </section>
      <section anchor="operator-provisioned-source-prefixes">
        <name>Operator-Provisioned Source Prefixes</name>
        <t>The AS operator can provision source prefixes for an entity using existing network management or automation mechanisms. These prefixes explicitly authorize source address space that the entity is legitimately allowed to use for originating traffic. The operator may maintain this information as either a complete authorization inventory or a supplementary set containing only prefixes that cannot be derived from routing information. The provisioned source address space can include, for example:</t>
        <ul spacing="normal">
          <li>
            <t>prefixes assigned to the entity by the local AS; and</t>
          </li>
          <li>
            <t>prefixes obtained by the entity independently of the local AS, such as prefixes assigned by another provider or prefixes brought by the entity itself (e.g., BYOIP prefixes).</t>
          </li>
        </ul>
        <t>For prefixes that are not assigned by the local AS, the AS operator should require the entity to provide sufficient information or evidence demonstrating that the entity is authorized to use those prefixes for source traffic.</t>
        <t>The source prefixes provisioned by the AS operator for an entity form the set of operator-provisioned source prefixes for that entity, denoted as O. The mechanism needs to know which interfaces connect to the entity so that these source prefixes can be used when generating SAV allowlists on the corresponding interfaces.</t>
      </section>
      <section anchor="sav-allowlist-generation">
        <name>SAV Allowlist Generation</name>
        <t>The router combines the routing-derived source prefixes R and the operator-provisioned source prefixes O. The combined source prefix set A is the union of the two sets:</t>
        <t><tt>A = R ∪ O</tt></t>
        <t>The router uses A to generate the SAV allowlist for the interfaces facing the entity. As a result, a source prefix covered by either routing-derived information or operator provisioning is included in the allowlist, reducing the risk of improper blocking when the two information sources are temporarily inconsistent or when one information source does not contain all legitimate source prefixes.</t>
      </section>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <section anchor="maintaining-entity-interface-associations">
        <name>Maintaining Entity-Interface Associations</name>
        <t>The mechanism requires knowledge of which interfaces connect to the same entity so that routing information and operator-provisioned source prefixes can be applied consistently across those interfaces. When an entity is connected through multiple interfaces or routers, the association information should identify all interfaces facing that entity.</t>
      </section>
      <section anchor="handling-operator-provisioned-source-prefixes">
        <name>Handling Operator-Provisioned Source Prefixes</name>
        <t>Operators can leverage existing network management and automation tools to maintain and distribute operator-provisioned source prefixes for the corresponding entity. These source prefixes can include prefixes that are not represented in routing information.</t>
        <t>The provisioning system should record whether O is a complete authorization inventory or a supplementary set. When routing configuration changes before a complete authorization inventory is updated, the routing-derived source prefix set can update automatically. Combining the routing-derived and operator-provisioned source prefixes allows the generated SAV allowlist to include the updated routing-derived prefixes during this period.</t>
      </section>
    </section>
    <section anchor="sec-security">
      <name>Security Considerations</name>
      <t>Security considerations described in <xref target="I-D.ietf-savnet-intra-domain-architecture"/> also apply.</t>
    </section>
    <section anchor="sec-iana">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <reference anchor="I-D.ietf-savnet-general-sav-capabilities" target="https://datatracker.ietf.org/doc/html/draft-ietf-savnet-general-sav-capabilities-03" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-savnet-general-sav-capabilities.xml">
        <front>
          <title>General Source Address Validation Capabilities</title>
          <author fullname="Mingqing(Michael) Huang" initials="M." surname="Huang">
            <organization>Zhongguancun Laboratory</organization>
          </author>
          <author fullname="Weiqiang Cheng" initials="W." surname="Cheng">
            <organization>China Mobile</organization>
          </author>
          <author fullname="Dan Li" initials="D." surname="Li">
            <organization>Tsinghua University</organization>
          </author>
          <author fullname="Nan Geng" initials="N." surname="Geng">
            <organization>Huawei Technologies</organization>
          </author>
          <author fullname="Li Chen" initials="L." surname="Chen">
            <organization>Zhongguancun Laboratory</organization>
          </author>
          <date day="21" month="June" year="2026"/>
          <abstract>
            <t>The SAV rules of existing source address validation (SAV) mechanisms are derived from other core data structures (e.g., FIB-based uRPF) that are not dedicatedly designed for source filtering. Consequently, these mechanisms have limitations in deployable scenarios and traffic handling policies. To overcome these limitations, this document introduces general SAV capabilities from a data plane perspective. How to implement the capabilities and how to generate SAV rules are not in the scope of this document.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-savnet-general-sav-capabilities-03"/>
      </reference>
      <reference anchor="I-D.ietf-savnet-intra-domain-problem-statement" target="https://datatracker.ietf.org/doc/html/draft-ietf-savnet-intra-domain-problem-statement-26" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-savnet-intra-domain-problem-statement.xml">
        <front>
          <title>Problem Statement, Gap Analysis, and Requirements for Intra-domain Source Address Validation</title>
          <author fullname="Lancheng Qin" initials="L." surname="Qin">
            <organization>Zhongguancun Laboratory</organization>
          </author>
          <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="Mingqing(Michael) Huang" initials="M." surname="Huang">
            <organization>Zhongguancun Laboratory</organization>
          </author>
          <author fullname="Nan Geng" initials="N." surname="Geng">
            <organization>Huawei</organization>
          </author>
          <date day="1" month="June" year="2026"/>
          <abstract>
            <t>Source address validation (SAV) is an important means to mitigate IP source address spoofing [RFC2827]. This document analyzes the gaps in current operational mechanisms for intra-domain SAV. It also identifies the properties that new intra-domain SAV mechanisms are expected to provide.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-savnet-intra-domain-problem-statement-26"/>
      </reference>
      <reference anchor="I-D.ietf-savnet-intra-domain-architecture" target="https://datatracker.ietf.org/doc/html/draft-ietf-savnet-intra-domain-architecture-04" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-savnet-intra-domain-architecture.xml">
        <front>
          <title>Intra-domain Source Address Validation Architecture</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="Lancheng Qin" initials="L." surname="Qin">
            <organization>Zhongguancun Laboratory</organization>
          </author>
          <author fullname="Nan Geng" initials="N." surname="Geng">
            <organization>Huawei</organization>
          </author>
          <author fullname="Li Chen" initials="L." surname="Chen">
            <organization>Zhongguancun Laboratory</organization>
          </author>
          <date day="29" month="June" year="2026"/>
          <abstract>
            <t>This document describes a generic architecture for intra-domain Source Address Validation (SAV). It provides a common framework for developing new intra-domain SAV mechanisms and describes the conditions under which such mechanisms can improve SAV accuracy with respect to existing intra-domain SAV mechanisms.</t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-savnet-intra-domain-architecture-04"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
