<?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.39 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-huang-sidrops-source-pre-validation-00" category="bcp" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="Source Pre-validation">Source Pre-validation in RPKI-based Route Origin Validation</title>
    <seriesInfo name="Internet-Draft" value="draft-huang-sidrops-source-pre-validation-00"/>
    <author initials="M." surname="Huang" fullname="Mingqing Huang">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>huangmq@zgclab.edu.cn</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>
    <author initials="W." surname="Cheng" fullname="Weiqiang Cheng">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>chengweiqiang@chinamobile.com</email>
      </address>
    </author>
    <author initials="C." surname="Xie" fullname="Chongfeng Xie">
      <organization>China Telecom</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>xiechf@chinatelecom.cn</email>
      </address>
    </author>
    <author initials="Z." surname="Wang" fullname="Zhiyuan Wang">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>wangzhiyuan51@huawei.com</email>
      </address>
    </author>
    <date year="2026" month="June" day="23"/>
    <area>Routing</area>
    <workgroup>sidrops</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 79?>

<t>The Resource Public Key Infrastructure (RPKI) and Route Origin Validation (ROV) have significantly improved inter-domain routing security. However, thousands of RPKI-invalid routes - the vast majority caused by misconfiguration or synchronization delays - persistently appear in the global routing table. Many of these self-inflicted invalid routes originate from autonomous systems (ASes) that could have easily blocked them before advertisement.</t>
      <t>This document defines a <strong>Best Current Practice (BCP)</strong> for <strong>source pre-validation</strong>: the practice by which an originating AS checks its intended BGP announcement against its local RPKI cache <strong>before</strong> sending it to eBGP neighbors. Routes that would be evaluated as <tt>Invalid</tt> (or <tt>NotFound</tt> for strict mode) are blocked, logged, and <strong><bcp14>MUST</bcp14> be cached</strong> for later re-evaluation, enabling automatic recovery when RPKI data changes. Routes evaluated as <tt>Valid</tt> or <tt>NotFound</tt>(for default mode) may be advertised normally.</t>
      <t>This BCP complements existing standards RFC8893 &amp; RFC9324 by focusing on <strong>mandatory deployment at the origin</strong> and on <strong>outbound caching</strong> of suppressed routes. It provides operational guidance for deployment, cache management, and handling of RPKI data updates. Implementation of this BCP reduces self-inflicted invalid routes, improves global routing stability, and encourages wider ROV adoption.</t>
    </abstract>
  </front>
  <middle>
    <?line 87?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>RPKI-based ROV has become a cornerstone of inter-domain routing security. Over 60% of IPv4 routes now have ROAs (<xref target="NIST-Monitor"/>), and a growing number of large transit providers actively reject RPKI-invalid routes. Despite these advances, thousands of RPKI-invalid routes (<xref target="NIST-Monitor"/>) continue to appear in the global routing table. Research <xref target="Demystifying_RPKI-Invalid_Prefixes"/> shows that over 96% of these invalid routes are <strong>false positives</strong> caused by misconfiguration or synchronization delays - not malicious hijacks.</t>
      <t>Many of these self-inflicted invalid routes originate from the very AS that announces them. If the originating AS had checked its intended announcement against its local RPKI cache before advertising the route, it could have blocked the invalid route at the source, preventing it from ever entering the global routing system.</t>
      <t><strong>Source pre-validation</strong> is that check. It is a proactive, operationally straightforward practice that complements existing ROV mechanisms. This document specifies a <strong>Best Current Practice (BCP)</strong> for source pre-validation, providing clear requirements and operational guidance for network operators.</t>
      <t>This BCP is <strong>not</strong> a new protocol. It does not change BGP or RPKI semantics. It builds upon existing standards <xref target="RFC8893"/> <xref target="RFC9324"/> by:
- <strong>Mandating</strong> source pre-validation for all originating ASes when a covering ROA exists (whereas <xref target="RFC8893"/> leaves deployment optional).
- <strong>Extending</strong> the caching and re-evaluation concept from the inbound direction <xref target="RFC9324"/> to the outbound direction, for routes suppressed at egress.</t>
      <t>The goal is to reduce the number of self-inflicted invalid routes, improve global routing stability, and encourage wider and more confident deployment of ROV drop policies across the Internet - including the long tail of stub and small regional ASes.</t>
      <t><strong>A foundational security principle</strong> underpins the RPKI-ROV architecture: the <strong>RPKI management plane</strong> (where ROAs are created) and the <strong>router control plane</strong> (where BGP announcements are generated) <strong>must remain independent</strong>. They are not derived from a common authoritative data source.</t>
      <t>This principle is reflected in the very definition of a Route Origin Authorization (ROA): a ROA is a digitally signed object that provides a means of verifying that an <strong>IP address block holder</strong> has authorized an Autonomous System (AS) to originate routes <xref target="RFC9582"/>. The authority to sign a ROA belongs to the resource holder, not the network operator. The router control plane, meanwhile, operates based on local configuration and routing policy. These two planes have <strong>different data origins and different error profiles</strong>:
- <strong>Management plane errors</strong> (e.g., ROA misconfigurations) tend to be systematic, often affecting entire prefixes or ASNs due to human oversight.
- <strong>Control plane errors</strong> (e.g., announcing an unowned prefix or mis-setting the origin AS) tend to be operational, arising from router configuration mistakes.</t>
      <t>Because these error modes are <strong>not correlated</strong>, cross-validation between the two planes is meaningful. A route that is misconfigured on the control plane will not, by coincidence, align with a misconfigured ROA on the management plane. Cross-validation catches errors from either plane before they can affect global routing.</t>
      <t>Conversely, if the two planes were anchored to the same authoritative data source (e.g., if ROAs were automatically generated from BGP announcements), this independence would be lost. Errors could become self-validating, defeating the purpose of ROV. This is why preserving the independence of the two planes is a <strong>non-negotiable design principle</strong> for any operational practice that relies on RPKI-based validation.</t>
      <t>Self-inflicted invalid routes fall into two categories, each with a different root cause:</t>
      <ol spacing="normal" type="1"><li>
          <t><strong>Persistent misconfigurations</strong>
          </t>
          <ul spacing="normal">
            <li>
              <t>ROA errors (wrong ASN, incorrect maxLength, stale records)</t>
            </li>
            <li>
              <t>Router origin configuration errors (announcing a prefix not owned by the AS, wrong origin AS)</t>
            </li>
            <li>
              <t><strong>Effect</strong>: The route is <tt>Invalid</tt> indefinitely until manually corrected.</t>
            </li>
          </ul>
        </li>
        <li>
          <t><strong>Transient inconsistencies due to synchronization asymmetry</strong>
          </t>
          <ul spacing="normal">
            <li>
              <t>The ROA exists and is correct, but the router's local VRP cache has not yet received the update (as measured by <xref target="RPKI_Time-of-Flight"/>, delays average &gt;10 minutes, maximum &gt;100 minutes).</t>
            </li>
            <li>
              <t><strong>Effect</strong>: The route is <tt>Invalid</tt> for a limited time window, then automatically becomes <tt>Valid</tt> once the cache catches up.</t>
            </li>
          </ul>
        </li>
      </ol>
      <t>Source pre-validation provides two distinct benefits that directly address these two categories:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Prevents persistent misconfigurations from ever entering the global table</strong>
By blocking <tt>Invalid</tt> routes at the origin, the AS cannot advertise a route that violates a ROA, regardless of whether the error is on the RPKI management plane or the router control plane.</t>
        </li>
        <li>
          <t><strong>Reduces the global impact of transient sync delays</strong>
When an originating AS performs pre-validation <strong>at the time of route announcement</strong>, it ensures that the route is only advertised when its local cache already reflects the correct ROA. This effectively <strong>compresses the synchronization window</strong> from the perspective of the entire Internet. As a result, downstream routers are less likely to encounter a <tt>Local ROV = Invalid</tt> situation caused purely by a delay at the origin's side.</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t><strong>Note</strong>: Source pre-validation does not eliminate all transient false positives - because downstream routers may still have older caches than the origin. However, it eliminates the portion of the delay that originates at the source, significantly reducing the overall incidence of such events.</t>
        </li>
      </ul>
      <t><strong>Why control-plane pre-validation?</strong></t>
      <t>One might ask: could the same cross-validation be performed out-of-band, e.g., by checking ROA consistency against IPAM before route configuration is deployed to routers?</t>
      <t>Out-of-band checks can help catch persistent misconfigurations before they reach the control plane. However, they <strong>cannot</strong> ensure that the router's local VRP cache is synchronized with the ROA state at the actual moment of route announcement. The time gap between out-of-band validation and route origination still allows ROA updates to arrive in between, causing transient <tt>Invalid</tt> routes.</t>
      <t>Moreover, out-of-band validation relies on non-standardized IPAM implementations and internal operational workflows. IPAM is not the actual point of route origination; the router control plane is the only place where BGP announcements are actually generated and sent. There is no standardized mechanism to guarantee that an out-of-band validation result remains valid at the time of announcement, nor that the route configuration actually deployed matches what was validated.</t>
      <t>Control-plane pre-validation addresses both gaps. It executes <strong>at the moment of route origination</strong>, using the router's current local VRP cache. It catches configuration errors <strong>and</strong> synchronization delays in one unified check, and it does so in a way that is independent of any particular IPAM system or operational workflow. This makes it a <strong>standardizable, universally applicable practice</strong>.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t><strong>Originating AS</strong>: The first AS in the BGP AS_PATH sequence; the AS that originates the route.</t>
        <t><strong>Source pre-validation</strong>: The action of checking a self-originated BGP route against the local RPKI cache (VRP data) before advertising it to eBGP neighbors.</t>
        <t><strong>Local RPKI cache (VRP cache)</strong>: The set of Validated ROA Payloads (VRPs) obtained from a Relying Party (RP) via the RPKI-RTR protocol <xref target="RFC8210"/>.</t>
        <t><strong>Covering ROA</strong>: A ROA that lists the local AS as the authorized origin AS for a prefix.</t>
        <t><strong>Valid route</strong>: A route for which the local RPKI cache contains a covering ROA that authorizes the originating AS to announce the prefix.</t>
        <t><strong>Invalid route</strong>: A route for which the local RPKI cache contains a covering ROA, but the originating AS does not match the authorized AS.</t>
        <t><strong>NotFound route</strong>: A route for which the local RPKI cache contains no covering ROA.</t>
        <t><strong>Suppressed route</strong>: A route that was evaluated as <tt>Invalid</tt> during source pre-validation (or as <tt>NotFound</tt> when strict mode is enabled) and therefore was not advertised to any eBGP neighbor. The route is cached locally for later re-evaluation (see Section 3.3).</t>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="relationship-to-existing-standards">
      <name>Relationship to Existing Standards</name>
      <t>This document does not update or obsolete RFC8893 or RFC9324. Instead, it inherits and extends their principles to the specific case of source pre-validation.</t>
      <section anchor="relationship-to-rfc8893">
        <name>Relationship to RFC8893</name>
        <t><xref target="RFC8893"/> defines how to correctly perform egress ROV when a BGP speaker chooses to do so. Its main contribution is to clarify the handling of the "effective origin AS" (after private AS removal, confederation, etc.) in egress validation.</t>
        <t>This BCP inherits the validity of egress validation but shifts focus from "how to do it correctly" to "<strong>that it <bcp14>MUST</bcp14> be done at the origin</strong>". Specifically:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Mandatory deployment</strong>: RFC8893 does not require any network to deploy egress validation. This BCP requires every originating AS to perform source pre-validation whenever a covering ROA exists.</t>
          </li>
          <li>
            <t><strong>Scope narrowed</strong>: RFC8893 applies to egress validation at any AS along a path. This BCP applies only to the <strong>originating AS</strong>.</t>
          </li>
          <li>
            <t><strong>Operational details</strong>: RFC8893 does not specify what to do with routes that fail validation (e.g., logging, caching, alarming). This BCP provides such operational guidance.</t>
          </li>
        </ul>
        <t>Thus, this BCP is an <strong>operational enhancement</strong> of RFC8893 for the origin, not a replacement.</t>
      </section>
      <section anchor="relationship-to-rfc9324">
        <name>Relationship to RFC9324</name>
        <t><xref target="RFC9324"/> addresses the route-refresh storm problem caused by ROV-dropped routes. It requires routers to cache dropped routes (from Adj-RIB-In) and re-evaluate them when RPKI data changes.</t>
        <t>This BCP extends the "cache and re-evaluate" principle from the inbound direction to the <strong>outbound direction</strong>:</t>
        <ul spacing="normal">
          <li>
            <t>When source pre-validation blocks a route (<tt>Invalid</tt>), that route <bcp14>MUST</bcp14> be cached locally (a form of "Adj-RIB-Out negative cache") to enable automatic recovery.</t>
          </li>
          <li>
            <t>When the local RPKI cache later changes (e.g., a missing ROA appears), the router <bcp14>MUST</bcp14> re-evaluate the suppressed route. If it becomes <tt>Valid</tt> or <tt>NotFound</tt>, it <bcp14>MAY</bcp14> be advertised following normal BGP procedures.</t>
          </li>
        </ul>
        <t>This extension ensures that transient conditions (e.g., a ROA that arrives after the route was first considered) do not permanently prevent a legitimate route from being announced, while still avoiding unnecessary BGP updates.</t>
      </section>
    </section>
    <section anchor="core-requirements-for-source-pre-validation">
      <name>Core Requirements for Source Pre-validation</name>
      <section anchor="enabling-source-pre-validation">
        <name>Enabling Source Pre-validation</name>
        <t><strong>Control Interface</strong></t>
        <t>Implementations <bcp14>SHOULD</bcp14> provide a configuration command to enable or disable source pre-validation, independent of any egress ROV configuration described in RFC8893.</t>
        <t><strong>Enabling State Machine</strong></t>
        <t>When source pre-validation is enabled by the operator, it enters the <tt>Enabling</tt> state. It transitions to the <tt>Enabled</tt> state only after both conditions are satisfied:</t>
        <ul spacing="normal">
          <li>
            <t><strong>RPKI-RTR session is operational</strong>: The router has established a valid RPKI-RTR session and received a complete initial VRP cache.</t>
          </li>
          <li>
            <t><strong>Relevant ROA exists</strong>: The local VRP cache contains at least one covering ROA (see terminology).</t>
          </li>
        </ul>
        <t>Until both conditions are met, the router <strong><bcp14>MUST NOT</bcp14></strong> perform source pre-validation.</t>
        <t><strong>Monitoring and Fallback</strong></t>
        <t>Once in the <tt>Enabled</tt> state, the router <bcp14>SHOULD</bcp14> continuously monitor the two conditions:</t>
        <ul spacing="normal">
          <li>
            <t>If either condition fails and remains unavailable for a configurable period, the router <bcp14>SHOULD</bcp14> transition back to <tt>Enabling</tt> and raise an alert.</t>
          </li>
          <li>
            <t>While in <tt>Enabling</tt>, the router <bcp14>MUST NOT</bcp14> perform pre-validation but <bcp14>SHOULD</bcp14> continue monitoring and auto-re-enter <tt>Enabled</tt> once conditions are satisfied again.</t>
          </li>
        </ul>
        <t><strong>Disabling</strong></t>
        <t>When the operator issues a disable command, the router <bcp14>MUST</bcp14> immediately transition to the <tt>Disabled</tt> state. Pre-validation is deactivated immediately.</t>
      </section>
      <section anchor="pre-validation-execution-triggered-by-route-originating">
        <name>Pre-validation Execution (Triggered by Route Originating)</name>
        <t><strong>1. Trigger Condition</strong></t>
        <t>For any route that an originating AS intends to advertise, if source pre-validation is <tt>Enabled</tt> (see 3.1), the router <bcp14>MUST</bcp14> perform pre-validation before advertising the route.</t>
        <t><strong>2. Execution Timing</strong></t>
        <t>Pre-validation is performed after all egress policy processing has been applied, such that the route being checked matches the actual route announced to the eBGP peer.</t>
        <t><strong>3. Handling Pre-validation Results</strong></t>
        <ul spacing="normal">
          <li>
            <t><tt>Valid</tt>: The route proceeds to normal BGP advertisement.</t>
          </li>
          <li>
            <t><tt>Invalid</tt>: The route <bcp14>MUST NOT</bcp14> be advertised. It <bcp14>MUST</bcp14> be cached, logged, and an alert <bcp14>SHOULD</bcp14> be raised.</t>
          </li>
          <li>
            <t><tt>NotFound</tt>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Default mode: The route may be advertised (treated as <tt>Valid</tt>).</t>
              </li>
              <li>
                <t>Strict mode (see Section 4.3): <tt>NotFound</tt> is subject to the same actions as <tt>Invalid</tt> - blocked, cached, logged, alerted.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="handling-rpki-cache-updates-triggered-by-roa-changes">
        <name>Handling RPKI Cache Updates (Triggered by ROA Changes)</name>
        <t>When the local VRP cache is updated (e.g., due to ROA issuance, modification, revocation, or expiration), the router <bcp14>MUST</bcp14> re-evaluate any previously suppressed routes (those cached due to <tt>Invalid</tt> results, or <tt>NotFound</tt> results when strict mode is enabled).</t>
        <t>If a suppressed route becomes acceptable (i.e., <tt>Valid</tt> in both modes; or <tt>NotFound</tt> in default mode), it proceeds to normal BGP advertisement and <bcp14>MUST</bcp14> be removed from the suppressed cache. If it remains unacceptable, it stays suppressed.</t>
        <t>Implementations <bcp14>SHOULD</bcp14> provide a configurable aging time for suppressed routes. When a suppressed route exceeds the configured aging time without becoming acceptable, it <bcp14>SHOULD</bcp14> be removed from the suppress cache and the event <bcp14>SHOULD</bcp14> be logged. A recommended default aging time is 24 hours, but operators <bcp14>MAY</bcp14> adjust this value based on local operational practices.</t>
        <t>Already advertised routes are NOT automatically withdrawn due to VRP changes.</t>
      </section>
    </section>
    <section anchor="operational-recommendations">
      <name>Operational Recommendations</name>
      <section anchor="logging-and-alerting">
        <name>Logging and Alerting</name>
        <t>To assist operators in monitoring the operation of source pre-validation, implementations <bcp14>SHOULD</bcp14> provide logging and alerting for the following events:</t>
        <ul spacing="normal">
          <li>
            <t>Suppressed routes: When a route is suppressed due to Invalid (or strict-mode NotFound), the router <bcp14>SHOULD</bcp14> log the prefix, origin AS, timestamp, and reason for suppression, and <bcp14>SHOULD</bcp14> raise an alert to notify operators.</t>
          </li>
          <li>
            <t>RPKI-RTR session failures: When the RPKI-RTR session remains down for longer than a configurable period, the router <bcp14>SHOULD</bcp14> log the event and raise an alert.</t>
          </li>
          <li>
            <t>Cache re-evaluation events: When a suppressed route becomes acceptable (i.e., Valid in both modes, or NotFound in default mode) and is subsequently advertised, the router <bcp14>MAY</bcp14> log this event at an informational severity level for troubleshooting purposes.</t>
          </li>
          <li>
            <t>Aging of suppressed routes: When a suppressed route is removed from the cache due to aging (see Section 3.3), the router <bcp14>SHOULD</bcp14> log the event to facilitate operational review and follow-up.</t>
          </li>
        </ul>
      </section>
      <section anchor="consistent-deployment-across-multiple-border-routers">
        <name>Consistent Deployment Across Multiple Border Routers</name>
        <t>For an AS that operates multiple border routers originating routes, operators <bcp14>SHOULD</bcp14> strive to apply consistent pre-validation configuration and RPKI-RTR synchronization across all ASBRs. This minimizes inconsistent outcomes for the same prefix advertised via different egress points.</t>
        <t>Minor inconsistencies due to different cache synchronization times are an inherent property of distributed systems and do not break the security model. However, significant or persistent divergence <bcp14>SHOULD</bcp14> be investigated to avoid operational confusion.</t>
      </section>
      <section anchor="roa-creation-and-strict-mode-recommendations">
        <name>ROA Creation and Strict Mode Recommendations</name>
        <t>Operators who deploy source pre-validation are strongly encouraged to take the following steps to maximize the effectiveness of this practice:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Create ROAs for prefixes they own</strong>: At a minimum, operators <bcp14>SHOULD</bcp14> create ROAs for all prefixes they hold and originate. This ensures that their own legitimate announcements are properly covered and can be validated by downstream networks, while also reducing the likelihood of self-inflicted Invalid routes.</t>
          </li>
          <li>
            <t><strong>Adopt a "ROA-everywhere" policy</strong>: Operators <bcp14>MAY</bcp14> take a more proactive approach by requiring that all routes originated within their network be covered by a ROA. This can be achieved by enabling the strict mode described in Section 3.2, where <tt>NotFound</tt> is treated similarly to <tt>Invalid</tt>. Before enabling strict mode, operators <bcp14>SHOULD</bcp14> ensure that all prefixes they intend to originate have appropriate ROA coverage to avoid unintended suppression of legitimate routes.</t>
          </li>
          <li>
            <t><strong>Preserve the independence of the two planes</strong>: When using IPAM or other automation tools to generate ROAs, operators <bcp14>MUST</bcp14> ensure that the authorization decision is made by a human authority (e.g., the resource holder or designated approver). Fully automated "announcement-followed-by-ROA" mechanisms <bcp14>MUST NOT</bcp14> be used, as they would effectively anchor the management plane and the control plane to the same data source, undermining the independence principle described in Section 1 and defeating the purpose of cross-validation.</t>
          </li>
        </ul>
        <t>These recommendations are independent of whether source pre-validation is already deployed. They represent good operational hygiene that benefits the entire Internet.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Source pre-validation directly reduces the number of self-inflicted invalid routes. By blocking <tt>Invalid</tt> routes at the source, it prevents:</t>
      <ul spacing="normal">
        <li>
          <t>Unnecessary route churn and BGP update storms.</t>
        </li>
        <li>
          <t>Blackholes and path shifts caused by downstream ROV drops.</t>
        </li>
        <li>
          <t>Operational confusion (false positive alarms) that would otherwise require manual investigation.</t>
        </li>
      </ul>
      <t>Potential risks and mitigations:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Stale cache leading to false blocking</strong>: If the RPKI-RTR session fails and the cache becomes stale, a route that should be <tt>Valid</tt> might be incorrectly blocked. This is mitigated by the monitoring and timeout recommendations in Section 3.1.</t>
        </li>
        <li>
          <t><strong>Misconfigured ROA causing legitimate route to be blocked</strong>: If an operator mistakenly creates an overly restrictive ROA, source pre-validation will block the affected route. This is not a new risk - the same ROA would have caused the route to be <tt>Invalid</tt> for downstream ROV anyway. The BCP's logging and alerting help operators detect and correct such errors quickly.</t>
        </li>
        <li>
          <t><strong>Increased complexity</strong>: Operators need to set up RPKI-RTR and monitor its health. However, this is already a recommended practice for any network deploying ROV, and the additional steps for source pre-validation are minimal.</t>
        </li>
        <li>
          <t><strong>Infinite suppression due to never-resolved routes</strong>: If a suppressed route is never resolved, it could remain in the cache indefinitely. This is addressed by the configurable aging mechanism described in Section 3.3, which removes aged entries and logs the event.</t>
        </li>
      </ul>
      <t>This BCP does not introduce new security vulnerabilities. It relies on the existing RPKI trust model and BGP protocol semantics.</t>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <ul spacing="normal">
        <li>
          <t><strong>Backward compatibility</strong>: Routers that do not implement this BCP continue to operate as before. No changes are required on neighboring routers.</t>
        </li>
        <li>
          <t><strong>Incremental deployment</strong>: An AS can enable source pre-validation for a subset of its prefixes (e.g., those with clean ROA coverage) and gradually expand to others. The BCP does not require immediate full compliance.</t>
        </li>
        <li>
          <t><strong>Performance impact</strong>: The additional lookup into the local VRP cache is lightweight. For routers that already perform ingress ROV, the computational cost of also performing egress checks is negligible.</t>
        </li>
        <li>
          <t><strong>Troubleshooting</strong>: When a route is suppressed, operators should check: 1) Whether source pre-validation is in the Enabled state (see Section 3.1). 2) The local VRP cache to see if a covering ROA exists and whether it correctly authorizes the originating AS and prefix length. 3) Whether strict mode is enabled, which would cause <tt>NotFound</tt> routes to be suppressed.</t>
        </li>
      </ul>
      <t>Correcting the ROA or the BGP configuration will resolve the issue, and the suppressed route will be re-evaluated automatically (Section 3.3) once the VRP cache changes.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8210" target="https://www.rfc-editor.org/info/rfc8210" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8210.xml">
          <front>
            <title>The Resource Public Key Infrastructure (RPKI) to Router Protocol, Version 1</title>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <date month="September" year="2017"/>
            <abstract>
              <t>In order to verifiably validate the origin Autonomous Systems and Autonomous System Paths of BGP announcements, routers need a simple but reliable mechanism to receive Resource Public Key Infrastructure (RFC 6480) prefix origin data and router keys from a trusted cache. This document describes a protocol to deliver them.</t>
              <t>This document describes version 1 of the RPKI-Router protocol. RFC 6810 describes version 0. This document updates RFC 6810.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8210"/>
          <seriesInfo name="DOI" value="10.17487/RFC8210"/>
        </reference>
        <reference anchor="RFC9582" target="https://www.rfc-editor.org/info/rfc9582" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9582.xml">
          <front>
            <title>A Profile for Route Origin Authorizations (ROAs)</title>
            <author fullname="J. Snijders" initials="J." surname="Snijders"/>
            <author fullname="B. Maddison" initials="B." surname="Maddison"/>
            <author fullname="M. Lepinski" initials="M." surname="Lepinski"/>
            <author fullname="D. Kong" initials="D." surname="Kong"/>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <date month="May" year="2024"/>
            <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. This document obsoletes RFC 6482.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9582"/>
          <seriesInfo name="DOI" value="10.17487/RFC9582"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC8893" target="https://www.rfc-editor.org/info/rfc8893" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8893.xml">
          <front>
            <title>Resource Public Key Infrastructure (RPKI) Origin Validation for BGP Export</title>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <author fullname="R. Volk" initials="R." surname="Volk"/>
            <author fullname="J. Heitz" initials="J." surname="Heitz"/>
            <date month="September" year="2020"/>
            <abstract>
              <t>A BGP speaker may perform Resource Public Key Infrastructure (RPKI) origin validation not only on routes received from BGP neighbors and routes that are redistributed from other routing protocols, but also on routes it sends to BGP neighbors. For egress policy, it is important that the classification use the 'effective origin AS' of the processed route, which may specifically be altered by the commonly available knobs, such as removing private ASes, confederation handling, and other modifications of the origin AS. This document updates RFC 6811.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8893"/>
          <seriesInfo name="DOI" value="10.17487/RFC8893"/>
        </reference>
        <reference anchor="RFC9324" target="https://www.rfc-editor.org/info/rfc9324" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9324.xml">
          <front>
            <title>Policy Based on the Resource Public Key Infrastructure (RPKI) without Route Refresh</title>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <author fullname="K. Patel" initials="K." surname="Patel"/>
            <author fullname="P. Smith" initials="P." surname="Smith"/>
            <author fullname="M. Tinka" initials="M." surname="Tinka"/>
            <date month="December" year="2022"/>
            <abstract>
              <t>A BGP speaker performing policy based on the Resource Public Key Infrastructure (RPKI) should not issue route refresh to its neighbors because it has received new RPKI data. This document updates RFC 8481 by describing how to avoid doing so by either keeping a full Adj-RIB-In or saving paths dropped due to ROV (Route Origin Validation) so they may be reevaluated with respect to new RPKI data.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9324"/>
          <seriesInfo name="DOI" value="10.17487/RFC9324"/>
        </reference>
        <reference anchor="NIST-Monitor" target="https://rpki-monitor.antd.nist.gov/">
          <front>
            <title>NIST RPKI Monitor</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RPKI_Time-of-Flight" target="https://dl.acm.org/doi/10.1007/978-3-031-28486-1_18">
          <front>
            <title>RPKI Time-of-Flight</title>
            <author>
              <organization/>
            </author>
            <date year="2023" month="March"/>
          </front>
        </reference>
        <reference anchor="Demystifying_RPKI-Invalid_Prefixes" target="https://www.ndss-symposium.org/ndss-paper/demystifying-rpki-invalid-prefixes-hidden-causes-and-security-risks/">
          <front>
            <title>Demystifying RPKI-Invalid Prefixes - Hidden Causes and Security Risks</title>
            <author>
              <organization/>
            </author>
            <date year="2026" month="February"/>
          </front>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA6Vc/3Ibx5H+H08xoSt3JAqARMlxZCbnmKKkMyuiyCNp+xKX
yh7sDoAxF7vw/iAEu/Iu9yz3ZPd198zs7GJJ6ZJUOQKB3Z2Znu6vv/4xO51O
R7WtM3OiboqmTIy6Ks30Xmc21bUtcmVzdX311/PpXFcmVddFUxt1Wdolvv8u
XDXS83lp7h94xigtklyvMURa6kU9XTU6X04rm5bFpppWfMt007ll+vTpqJhX
RWZqU52Mmg2+pg/0z8kowf8vi3J3oubJZlQ187WtKtx1u9tgkPPXt29GI7sp
T1RdNlX97OnTL58+G+nS6BNegM2Xo21R3i3LotmcKDeR0Z3Z4dsUD8hrU+am
nr6i6Y5GuqlXRXkyUtORgjyqE3UxU9/QIvC3LOwCz/wF/4Wvi3Kpc/srL+ZE
/X1V5MslfkqaXL3V86LUNeaP68xa2+xEsUjWv3z96zLJ9Hxm0maW5Pg5KZq8
poWerWyuR9EUXs3UWxvGf6Vz+bM77m2FOeHZ6tvc3puysnU0Zl2QtPOva3dR
NCquO1Evjf3Z8mIensX3M3xnIkF8b+wvFmsJX3cnxA9QF8XcZqadSULXbt2d
Xyd0zZovmSXF+tHxz2bqv60Jo5+RnBd4mPt2aPBbkxl5rBv9gzXJaiHD1vLj
x4T/95n6Pt7+v6/sDjvov+wOC5XA2jBussqLrFhaU7WDb3HHr3L3H46/XvGl
ftUf2YW8KNcY4h4GodT1m7MXx3/83H98dvzUffzyDy+encAc8kX/8hdfPvfX
PH/Gd747v7mdXhS5rVnd8T8HDfQDw4Byv8qPulyaGspb15vq5MmTcnNnp2u5
YKbzOp3ltqpny+L+CY2D23+8tWszLRbTN5ldrmoeww3BT+/+TL8621P0GWI9
UVenF/SZgUA9e/rs+fTp89HAZNJsppP1DPc8SQv75Pjp7Pjp0z8++fKPL6Z0
y/H02YvPX3wxPf7x+AVuf2XWu6q2ix1E/SPj3XnOaPQjoGxhPxD2tHONr1bx
1cpfrabqG5umJldnuqnwt85TdWOSpsSmqmtb3VWDq3v36uams7wvpoCugeVt
t9tZnlaAz916U1S2kaXyVxu9MeWTNJrklLfGyiQJanmS0xVPcZrwFKeY4rRy
U5yWNMUno9lsNhpNp1Ol51Vd6gRoeLsy6tpUDuibeWYT9VezA2ouSo2LmqRu
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
3dByjl6udPVD9+4/6nYY/R8VVY8UkVsAAA==

-->

</rfc>
