<?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-liu-bpm-aspa-verification-benchmarking-00" category="info" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.35.0 -->
  <front>
    <title abbrev="ASPA Benchmarking">Benchmarking Methodology for ASPA Verification</title>
    <seriesInfo name="Internet-Draft" value="draft-liu-bpm-aspa-verification-benchmarking-00"/>
    <author initials="L." surname="Liu" fullname="Libin Liu">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>liulb@zgclab.edu.cn</email>
      </address>
    </author>
    <date year="2026" month="October" day="29"/>
    <area>Operations and Management</area>
    <workgroup>BPM</workgroup>
    <abstract>
      <?line 43?>

<t>Autonomous System Provider Authorization (ASPA) provides a Resource Public Key Infrastructure (RPKI)-based mechanism for verifying the Border Gateway Protocol (BGP) AS_PATH attribute to detect route leaks and certain forms of AS_PATH manipulation. The performance of ASPA-based AS_PATH verification depends on several factors, including the size and structure of ASPA data, AS_PATH characteristics, verification procedures, and the interaction between ASPA updates and BGP routing operations.
This document defines a benchmarking methodology for evaluating ASPA verification implementations on routing devices. The methodology specifies controlled test conditions and procedures for measuring ASPA data processing, AS_PATH verification performance, route revalidation, BGP convergence, scalability, and resource utilization. The objective is to provide repeatable and comparable measurements that characterize the performance and operational behavior of ASPA verification under varying conditions.</t>
    </abstract>
  </front>
  <middle>
    <?line 48?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Border Gateway Protocol (BGP) <xref target="RFC4271"/> is the fundamental inter-domain routing protocol of the Internet. However, BGP does not inherently provide mechanisms to verify the authenticity of routing information, making it vulnerable to routing anomalies such as route hijacks and route leaks. The Resource Public Key Infrastructure (RPKI) <xref target="RFC6480"/> provides a framework for improving inter-domain routing security. Route Origin Validation (ROV) <xref target="RFC6811"/> enables routers to verify whether the origin Autonomous System (AS) of a BGP route is authorized to announce the corresponding prefix. However, ROV does not validate the AS_PATH attribute and therefore cannot detect routing anomalies that preserve a legitimate origin AS.</t>
      <t>Autonomous System Provider Authorization (ASPA) <xref target="I-D.ietf-sidrops-aspa-profile"/> extends RPKI-based routing security by allowing an AS to authorize its provider ASes. Based on validated ASPA information, the AS_PATH verification procedures defined in <xref target="I-D.ietf-sidrops-aspa-verification"/> enable routers to detect route leaks and certain forms of AS_PATH manipulation. The verification procedures examine provider authorization relationships along the AS_PATH and produce one of three results: Valid, Invalid, or Unknown. The applicable verification procedure depends on the relationship between the receiving AS and its BGP neighbor.</t>
      <t>The introduction of ASPA verification may impose additional processing and resource requirements on routing devices. Unlike ROV, which primarily evaluates prefix-origin authorization, ASPA verification examines the relationships between ASes along an AS_PATH. Its performance may therefore be affected by ASPA-specific characteristics, including AS_PATH length, ASPA coverage, provider-set cardinality, and verification direction. Furthermore, routers need to process ASPA information received through the RPKI-to-Router (RTR) protocol <xref target="I-D.ietf-sidrops-8210bis"/>. Changes in ASPA information may also trigger the revalidation of previously received BGP routes, potentially affecting BGP control-plane processing and convergence.</t>
      <t>As ASPA verification is implemented in routing devices, a consistent and repeatable benchmarking methodology is needed to characterize its performance under controlled conditions. Such a methodology should enable network operators, equipment vendors, and researchers to evaluate the processing overhead of ASPA verification, understand its scalability limitations, and compare implementation performance. In particular, it is important to distinguish the performance impact of BGP-triggered AS_PATH verification from that of ASPA-triggered route revalidation, as these operations involve different processing conditions and workload characteristics.</t>
      <t>Existing work has defined a benchmarking methodology for ROV <xref target="I-D.lg-bmwg-benchmarking-methodology-for-rov"/>. Although ROV and ASPA verification share certain operational components, their validation inputs, procedures, and performance characteristics differ. Therefore, this document defines an independent benchmarking methodology specifically for ASPA-based AS_PATH verification, while following established BMWG benchmarking principles.</t>
      <t>This document specifies a set of metrics, test conditions, and procedures for evaluating ASPA data processing, AS_PATH verification performance, route revalidation, BGP convergence, scalability, and resource utilization. The methodology uses controlled ASPA datasets and BGP workloads in isolated laboratory environments to support repeatable and comparable measurements across different routing implementations. 
The resulting benchmarks are intended to characterize the performance and operational behavior of ASPA verification and provide a basis for evaluating its deployment on routing devices.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="scope-and-goals">
      <name>Scope and Goals</name>
      <t>This document specifies a laboratory-based benchmarking methodology for evaluating the performance of routing devices implementing ASPA-based AS_PATH verification as defined in <xref target="I-D.ietf-sidrops-aspa-verification"/>. 
The methodology focuses on the processing of ASPA information, AS_PATH verification, and their impact on BGP control-plane operations under controlled and reproducible conditions.</t>
      <t>The scope of this benchmarking methodology includes:<br/>
- ASPA Data Processing Performance: Measurement of the time and resources required for a router to process ASPA information received through the RPKI-to-Router (RTR) protocol, including initial synchronization, incremental updates, and recovery operations.<br/>
- AS_PATH Verification Performance: Evaluation of verification latency and processing throughput under varying AS_PATH characteristics, ASPA coverage levels, provider-set sizes, verification directions, and verification outcomes.<br/>
- ASPA-triggered Route Revalidation: Measurement of the time and resources required to re-evaluate previously received BGP routes following changes in ASPA information, considering the number of affected routes and distinct AS_PATHs.<br/>
- Impact on BGP Control-plane Performance: Quantification of how enabling ASPA verification affects BGP route processing and convergence, including the impact of ASPA updates on routing decisions.<br/>
- Scalability under Controlled Conditions: Evaluation of a router's ability to handle increasing ASPA dataset sizes, provider authorization relationships, BGP route populations, and concurrent ASPA and BGP update workloads.<br/>
- Resource Utilization: Measurement of CPU utilization, memory consumption, and relevant control-plane processing overhead associated with ASPA verification under different workload conditions.</t>
      <t>The goals of this document are:<br/>
- To establish a consistent and repeatable methodology for benchmarking ASPA verification implementations under controlled laboratory conditions.<br/>
- To define metrics and test procedures that enable meaningful performance comparisons across different routing devices and implementations.<br/>
- To characterize the performance impact and scalability of ASPA verification under varying ASPA datasets, AS_PATH characteristics, and BGP workloads.<br/>
- To provide quantitative information that helps network operators and equipment vendors evaluate the operational performance of ASPA verification implementations and make informed deployment decisions.</t>
      <t>The methodology focuses on ASPA verification performed by routing devices, primarily for IPv4 and IPv6 unicast routes received over external BGP (eBGP) sessions, consistent with <xref target="I-D.ietf-sidrops-aspa-verification"/>. The benchmarking procedures use controlled ASPA datasets and BGP workloads to isolate the performance effects of ASPA verification from external dependencies.</t>
      <t>This document does not benchmark the generation, publication, or cryptographic validation of ASPA objects within the RPKI infrastructure. It also does not define new ASPA verification algorithms, evaluate the security effectiveness of ASPA against routing attacks, or prescribe routing policies based on verification results. While expected verification outcomes are used to establish valid test conditions, protocol conformance testing is outside the scope of this document.</t>
      <t>The benchmarking procedures are intended for isolated laboratory environments and are not intended to be conducted on production networks carrying live traffic.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>The terminology used in this document follows the conventions of <xref target="RFC1242"/>, <xref target="RFC4098"/>, and subsequent BMWG publications. Terms related to ASPA objects, provider authorization, and AS_PATH verification are defined in <xref target="I-D.ietf-sidrops-aspa-profile"/> and <xref target="I-D.ietf-sidrops-aspa-verification"/>.</t>
      <t>In particular, this document adopts the definitions of Customer AS (CAS), Provider AS (PAS), Set of Provider ASes (SPAS), Union SPAS (U-SPAS), and the provider authorization results Provider+, Not Provider+, and No Attestation. The upstream and downstream verification procedures, as well as the verification results Valid, Invalid, and Unknown, are also defined in <xref target="I-D.ietf-sidrops-aspa-verification"/>.</t>
      <t>The following terms are used with specific meanings in the context of ASPA benchmarking.</t>
      <t>Device Under Test (DUT): A routing device or software router implementing ASPA-based AS_PATH verification whose performance is evaluated using the methodology defined in this document.</t>
      <t>ASPA Dataset: A collection of ASPA-derived customer-to-provider authorization information provided to the DUT through the RPKI-to-Router (RTR) protocol. Each active CAS entry is associated with a provider set. The dataset represents the information used by the DUT for ASPA verification rather than the underlying RPKI signed objects.</t>
      <t>ASPA Record Count: The number of distinct CAS entries in an ASPA dataset. Each CAS entry is counted once, regardless of the number of authorized providers associated with it.</t>
      <t>Provider Authorization Count: The total number of distinct CAS-to-PAS authorization relationships represented in an ASPA dataset. The special AS 0 value, which indicates the absence of transit providers, is not counted as a provider authorization.</t>
      <t>Provider-Set Cardinality: The number of authorized Provider ASes associated with a particular CAS. For benchmarking purposes, provider-set cardinality may be characterized by its minimum, maximum, mean, and distribution across an ASPA dataset.</t>
      <t>ASPA Coverage: The proportion of distinct ASes in a specified reference AS population for which ASPA information is available. For benchmarking, the reference population is derived from the ASes relevant to provider authorization checks in the test workload. The definition and calculation of ASPA coverage are specified in Section 5.</t>
      <t>AS_PATH Length: The number of ASNs in an AS_PATH. This document distinguishes between raw AS_PATH length and compressed AS_PATH length, where consecutive duplicate ASNs are removed according to <xref target="I-D.ietf-sidrops-aspa-verification"/>. Unless otherwise specified, AS_PATH length in benchmarking tests refers to compressed AS_PATH length.</t>
      <t>Unique AS_PATH Count: The number of distinct AS_PATH sequences represented in a BGP route workload. Multiple routes sharing the same AS_PATH are counted as one unique AS_PATH. The benchmark specifies whether uniqueness is determined using raw or compressed AS_PATHs.</t>
      <t>Verification Outcome Distribution: The proportion of BGP routes in a test workload expected to produce each ASPA verification result: Valid, Invalid, or Unknown.</t>
      <t>ASPA Update Transaction: A controlled set of ASPA record additions, replacements, or withdrawals delivered to the DUT through the RTR protocol as part of a single cache response transaction.</t>
      <t>ASPA Churn: The rate and pattern of changes to ASPA information, including additions, replacements, and withdrawals of CAS entries, during a specified measurement interval.</t>
      <t>Affected Route Population: The set of previously received BGP routes whose expected ASPA verification results change as a consequence of a specified ASPA dataset update. The population is determined from the test workload and the expected verification results before and after the update.</t>
      <t>Route Revalidation: The re-evaluation of previously received BGP routes following changes in ASPA information that may affect their verification results.</t>
      <t>Steady State: A test condition in which the ASPA dataset, BGP route population, and relevant routing states have stabilized according to predefined criteria, allowing performance measurements to begin under controlled conditions.</t>
    </section>
    <section anchor="test_setup">
      <name>Test Setup and Laboratory Environment</name>
      <t>This section describes the laboratory environment for benchmarking ASPA-based AS_PATH verification implementations. 
The test setup provides controlled ASPA information and BGP routing workloads to the Device Under Test (DUT), while supporting measurements of ASPA processing, route verification, BGP control-plane behavior, and resource utilization.</t>
      <t>The test environment is designed to isolate the performance of ASPA verification from external dependencies and to ensure that test conditions can be reproduced across different implementations.</t>
      <section anchor="test-topology">
        <name>Test Topology</name>
        <figure anchor="test-topo">
          <name>The test topology for ASPA benchmarking.</name>
          <artwork><![CDATA[
+---------------------+      RTR
| ASPA Data Generator |------------+
|   (RTR Emulator)    |            |
+---------------------+            v
                            +----------------+
+---------------------+     |                |
| BGP Route Generator |---->|      DUT       |
+---------------------+ BGP |                |
                            +--------+-------+
                                     |
                                     | Monitoring
                                     v
                            +----------------+
                            |  Measurement   |
                            |     System     |
                            +----------------+
]]></artwork>
        </figure>
        <t><xref target="test-topo"/> illustrates the reference topology for ASPA verification benchmarking. The reference topology consists of the following components:</t>
        <ul spacing="normal">
          <li>
            <t>Device Under Test (DUT): A routing device or software router implementing ASPA-based AS_PATH verification.</t>
          </li>
          <li>
            <t>ASPA Data Generator: A component that constructs controlled ASPA datasets and update sequences with specified customer-provider authorization relationships.</t>
          </li>
          <li>
            <t>RTR Cache/Emulator: A cache implementation or emulator that delivers ASPA information to the DUT using the RPKI-to-Router (RTR) protocol.</t>
          </li>
          <li>
            <t>BGP Route Generator: A component that establishes BGP sessions with the DUT and generates routes with controlled AS_PATH attributes.</t>
          </li>
          <li>
            <t>Measurement System: A component that collects timing information, verification results, routing-state changes, and resource-utilization measurements.</t>
          </li>
          <li>
            <t>Routing-State Observer: An optional component that monitors externally observable BGP routing behavior through a monitoring session, telemetry interface, or other suitable mechanism.</t>
          </li>
        </ul>
        <t>The ASPA Data Generator and RTR Emulator <bcp14>MAY</bcp14> be implemented as a single component. 
The test topology <bcp14>MAY</bcp14> include multiple BGP peers to evaluate different neighbor relationships or concurrent routing workloads. The BGP Route Generator can work for this function.<br/>
A Tester <bcp14>MAY</bcp14> also be added to generate and receive data-plane traffic when forwarding behavior is included in a convergence measurement.
The laboratory environment <bcp14>MUST</bcp14> be isolated from production routing infrastructure. Synthetic ASPA information and BGP routes <bcp14>MUST NOT</bcp14> be propagated to operational networks.
The test report <bcp14>MUST</bcp14> describe the topology, the connections between test components, and any additional components used during the measurements.</t>
      </section>
      <section anchor="dut-configuration-requirements">
        <name>DUT Configuration Requirements</name>
        <t>The DUT <bcp14>MUST</bcp14> implement the ASPA-based AS_PATH verification procedures specified in <xref target="I-D.ietf-sidrops-aspa-verification"/> and support receiving ASPA information through the applicable RTR protocol.</t>
        <t>ASPA verification <bcp14>MUST</bcp14> be enabled for tests that evaluate its processing behavior. Tests comparing ASPA-enabled and ASPA-disabled configurations <bcp14>MUST</bcp14> maintain equivalent BGP workloads and other relevant configurations.</t>
        <t>The DUT configuration <bcp14>MUST</bcp14> specify the relationship between the local AS and each BGP neighbor used in the tests. These relationships determine whether upstream or downstream AS_PATH verification is applied. The following configuration information <bcp14>MUST</bcp14> be documented:<br/>
- DUT hardware platform and software version. <br/>
- Available CPU and memory resources.<br/>
- ASPA verification configuration.<br/>
- RTR protocol version and relevant session parameters.<br/>
- BGP neighbor ASNs and locally configured relationships.<br/>
- BGP address families and session configurations.<br/>
- Routing policies associated with ASPA verification results.<br/>
- Other enabled routing security mechanisms that may affect the measurements.</t>
        <t>The BGP Roles defined in <xref target="RFC9234"/> <bcp14>SHOULD</bcp14> be configured consistently with the intended neighbor relationships when supported by the DUT and test peers.</t>
        <t>Routing policies associated with ASPA verification results <bcp14>MUST</bcp14> remain consistent across test runs unless the policy itself is an explicit test variable.</t>
        <t>In particular, the test report <bcp14>MUST</bcp14> indicate whether routes classified as Invalid are made ineligible for route selection. Such policies may affect BGP convergence measurements but do not necessarily change the execution of the ASPA verification procedure.</t>
        <t>When other routing security mechanisms, such as ROV, are enabled, their configurations and associated validation datasets <bcp14>MUST</bcp14> remain unchanged during tests intended to isolate ASPA verification performance. Their presence <bcp14>MUST</bcp14> be reported.</t>
        <t>Non-essential control-plane processes and services <bcp14>SHOULD</bcp14> be disabled or configured consistently to reduce measurement interference. Any logging or telemetry mechanisms used for measurement <bcp14>MUST</bcp14> be documented because they may introduce additional processing overhead.</t>
      </section>
      <section anchor="aspa-data-source-and-rtr-emulation">
        <name>ASPA Data Source and RTR Emulation</name>
        <t>The test environment <bcp14>MUST</bcp14> provide an RTR data source capable of delivering controlled ASPA datasets and updates to the DUT.<br/>
The data source <bcp14>MAY</bcp14> use an isolated RPKI cache implementation or a dedicated RTR emulator.<br/>
A dedicated emulator can be used to generate ASPA payloads directly without requiring the creation and cryptographic validation of corresponding RPKI signed objects.<br/>
The RTR data source <bcp14>MUST</bcp14> support the ASPA PDU format and processing semantics defined in <xref target="I-D.ietf-sidrops-8210bis"/>.</t>
        <t>The ASPA datasets used in benchmarking <bcp14>MUST</bcp14> have reproducible characteristics, including:<br/>
- The number of distinct CAS entries. <br/>
- The total number of CAS-to-PAS authorizations.   <br/>
- The provider-set cardinality distribution.<br/>
- The availability of ASPA information for ASes appearing in the test workloads. <br/>
- The authorization relationships required to produce the expected AS_PATH verification results.</t>
        <t>The data source <bcp14>MUST</bcp14> support initial ASPA dataset synchronization and controlled incremental updates.
Incremental updates <bcp14>MUST</bcp14> include the ability to announce new ASPA records, replace existing provider sets, and withdraw existing ASPA records.<br/>
An ASPA announcement or replacement <bcp14>MUST</bcp14> contain the complete provider set for the corresponding CAS, consistent with <xref target="I-D.ietf-sidrops-8210bis"/>. Partial modifications of individual providers within a CAS entry <bcp14>MUST NOT</bcp14> be represented as independent incremental ASPA operations.
For an ASPA withdrawal, the data source <bcp14>MUST</bcp14> remove the corresponding CAS entry according to the applicable RTR protocol semantics.</t>
        <t>The data source <bcp14>SHOULD</bcp14> allow the tester to control:<br/>
- The number of CAS entries changed in an update transaction.<br/>
- The number of provider authorizations affected by an update.<br/>
- The timing and frequency of ASPA update transactions.<br/>
- The distribution of updates across different CAS entries.<br/>
- The timing of RTR notifications and responses.<br/>
- RTR session interruption, reconnection, and cache reset events.</t>
        <t>For update-processing measurements, the RTR source <bcp14>SHOULD</bcp14> support repeatable timing of update transactions and <bcp14>SHOULD</bcp14> record timestamps for relevant protocol events, including ASPA payload transmission and End of Data PDUs.<br/>
The completion of an RTR data transaction does not necessarily indicate that the DUT has completed all internal processing associated with the updated ASPA information. 
Therefore, the benchmark <bcp14>MUST</bcp14> distinguish RTR transfer completion from ASPA data application and subsequent route revalidation when these events are measured.<br/>
The ASPA Data Generator <bcp14>SHOULD</bcp14> support both synthetic datasets with controlled characteristics and datasets derived from operational ASPA information. 
If operational data is used, its source, collection time, and any modifications <bcp14>MUST</bcp14> be documented.</t>
        <t>Synthetic datasets <bcp14>MUST</bcp14> remain consistent with the ASPA data model and the applicable RTR protocol requirements.
The RTR source <bcp14>MUST</bcp14> be capable of delivering the specified update workload without becoming the performance bottleneck. Its maximum sustainable update generation rate <bcp14>SHOULD</bcp14> be established before conducting DUT scalability or stress tests.</t>
      </section>
      <section anchor="bgp-traffic-generation-requirements">
        <name>BGP Traffic Generation Requirements</name>
        <t>The BGP Route Generator <bcp14>MUST</bcp14> be capable of establishing one or more eBGP sessions with the DUT and advertising routes with controlled AS_PATH attributes.<br/>
Unlike ROV benchmarking, which primarily controls route prefixes and origin ASes, ASPA benchmarking requires the generation of AS_PATHs with specified structures and provider authorization relationships.</t>
        <t>The BGP Route Generator <bcp14>MUST</bcp14> support configuration of the following parameters:
- The number of advertised BGP routes.<br/>
- The number of distinct AS_PATHs.<br/>
- Raw and compressed AS_PATH lengths.<br/>
- The distribution of routes across distinct AS_PATHs.<br/>
- The expected ASPA verification results.<br/>
- The rate of BGP route announcements and withdrawals.<br/>
- The timing and sequence of BGP updates.</t>
        <t>The generator <bcp14>MUST</bcp14> be capable of constructing AS_PATHs that produce Valid, Invalid, and Unknown verification results under a specified ASPA dataset, according to <xref target="I-D.ietf-sidrops-aspa-verification"/>.<br/>
The expected verification result of each test route <bcp14>MUST</bcp14> be determined before the corresponding test begins. 
These expected results <bcp14>SHOULD</bcp14> be generated or independently checked using the verification procedures defined in <xref target="I-D.ietf-sidrops-aspa-verification"/>.
The BGP Route Generator <bcp14>MUST</bcp14> also support testing of both upstream and downstream verification procedures by establishing sessions with the appropriate locally configured neighbor relationships.
Generated AS_PATHs <bcp14>MUST</bcp14> satisfy the applicable prerequisite AS_PATH checks unless a test explicitly targets those checks. In particular, the most recently added AS in the AS_PATH <bcp14>MUST</bcp14> match the advertising neighbor's ASN, except for the applicable route-server cases.
The generator <bcp14>SHOULD</bcp14> support four-octet ASNs and construct paths consistent with the AS_PATH handling procedures specified in <xref target="RFC6793"/>.</t>
        <t>For tests involving AS_PATH prepending, the generator <bcp14>MUST</bcp14> distinguish the raw AS_PATH from the compressed AS_PATH used by the ASPA verification procedures.
The generator <bcp14>SHOULD</bcp14> support multiple BGP routes sharing the same AS_PATH, as well as routes with distinct AS_PATHs. 
These two workload characteristics <bcp14>MUST</bcp14> be independently controlled or documented because an implementation may reuse verification results or internal path representations across multiple routes.</t>
        <t>The generator <bcp14>SHOULD</bcp14> support different BGP update patterns, including:
- Individual route announcements and withdrawals.<br/>
- Sequential BGP updates at a controlled rate.<br/>
- Bursts of BGP updates.<br/>
- Updates involving multiple distinct AS_PATHs.<br/>
- Updates affecting routes that share the same AS_PATH.</t>
        <t>The BGP Route Generator <bcp14>MUST</bcp14> be capable of establishing a stable baseline routing table before a benchmark begins.
For tests involving ASPA-triggered route revalidation, the generator <bcp14>MUST</bcp14> maintain the baseline BGP routes without modification while the ASPA dataset is updated.
The generator <bcp14>SHOULD</bcp14> also support synchronized or controlled overlapping BGP and ASPA update sequences for tests involving concurrent control-plane activity.
The generated workloads <bcp14>MAY</bcp14> include IPv4 and IPv6 unicast routes. The number of routes for each address family <bcp14>MUST</bcp14> be reported separately.
The generator <bcp14>MUST</bcp14> be capable of sustaining the specified BGP update rate without becoming the performance bottleneck. Its generation capacity <bcp14>SHOULD</bcp14> be verified independently before testing the DUT.</t>
      </section>
      <section anchor="measurement-and-instrumentation">
        <name>Measurement and Instrumentation</name>
        <t>The Measurement System collects timing information, routing-state changes, verification results, and resource-utilization measurements during the benchmark tests.<br/>
The measurement setup <bcp14>MUST</bcp14> provide observation points sufficient to evaluate the metrics specified by each benchmark.
Depending on the test, measurements may be collected through:<br/>
- Packet captures of RTR and BGP sessions.<br/>
- Routing-state information exposed by the DUT.<br/>
- Device telemetry or management interfaces.<br/>
- BGP monitoring sessions.<br/>
- CPU and memory utilization counters.<br/>
- Implementation-specific instrumentation, where available.</t>
        <t>The measurement method and observation points <bcp14>MUST</bcp14> be documented for each benchmark.</t>
        <t>For timing measurements, the Measurement System <bcp14>SHOULD</bcp14> use a common timestamp source or synchronized clocks with sufficient accuracy for the expected measurement intervals.
When measurements are collected from different devices, clock synchronization accuracy and timestamp resolution <bcp14>MUST</bcp14> be considered when calculating elapsed times.
The benchmarking methodology distinguishes between internal processing measurements and externally observable measurements.</t>
        <t><strong>Internal Processing Measurements</strong>: These measurements characterize operations within the DUT, such as the execution time of ASPA verification or the application of updated ASPA information. They generally require suitable instrumentation provided by the implementation.</t>
        <t><strong>Externally Observable Measurements</strong>: These measurements characterize intervals between observable protocol or routing-state events, such as the receipt of a BGP UPDATE and a subsequent routing-state change.</t>
        <t>Externally observable measurements may include additional processing delays beyond ASPA verification itself, including BGP UPDATE parsing, routing policy evaluation, route selection, and message generation.
Therefore, internal ASPA verification latency and externally observable route-processing latency <bcp14>MUST NOT</bcp14> be reported as equivalent measurements.</t>
        <t>Where direct ASPA verification results are available through device interfaces, the Measurement System <bcp14>SHOULD</bcp14> collect them to determine when the expected verification states have been reached.
When direct verification-state information is unavailable, the tester <bcp14>MAY</bcp14> use a controlled routing policy to produce observable routing-state changes associated with specified ASPA verification results.
Such observations <bcp14>MUST</bcp14> be identified as routing-state measurements rather than direct measurements of the ASPA verification algorithm.
If the required verification-state transition cannot be observed using the available interfaces, the corresponding verification latency <bcp14>MUST</bcp14> be reported as unavailable rather than inferred from an unrelated event.</t>
        <t>For resource-utilization measurements, the Measurement System <bcp14>SHOULD</bcp14> record CPU and memory usage at a consistent sampling interval throughout each test.
The measurement report <bcp14>MUST</bcp14> identify the sampling interval, measurement source, and whether the values represent total system utilization or utilization of specific processes.
Measurement mechanisms <bcp14>SHOULD</bcp14> minimize additional processing overhead on the DUT. Any instrumentation that may affect benchmark results <bcp14>MUST</bcp14> be documented.</t>
      </section>
      <section anchor="test-initialization-and-steady-state-conditions">
        <name>Test Initialization and Steady-State Conditions</name>
        <t>Each benchmark <bcp14>MUST</bcp14> begin from a predefined initial state to ensure that measurements are repeatable.</t>
        <t>Unless otherwise specified by an individual benchmark, the following initialization procedure <bcp14>SHOULD</bcp14> be used:</t>
        <ol spacing="normal" type="1"><li>
            <t>Configure the DUT, RTR data source, and BGP Route Generator according to the selected test parameters.</t>
          </li>
          <li>
            <t>Establish the RTR session and load the baseline ASPA dataset.</t>
          </li>
          <li>
            <t>Confirm that the RTR synchronization process has completed and that the expected ASPA information is available to the DUT.</t>
          </li>
          <li>
            <t>Establish the required BGP sessions and advertise the baseline route population.</t>
          </li>
          <li>
            <t>Confirm that the expected ASPA verification results and routing states have been reached.</t>
          </li>
          <li>
            <t>Allow the DUT to reach steady state before initiating the test event.</t>
          </li>
          <li>
            <t>Record baseline CPU and memory utilization and other relevant control-plane measurements.</t>
          </li>
          <li>
            <t>Initiate the benchmark-specific test procedure.</t>
          </li>
        </ol>
        <t>The initialization sequence <bcp14>MAY</bcp14> differ for tests that explicitly evaluate initial ASPA synchronization, cold-start behavior, or RTR recovery.<br/>
For steady-state tests, the following conditions <bcp14>SHOULD</bcp14> be satisfied:<br/>
- The baseline ASPA dataset has been synchronized.<br/>
- The required BGP sessions are established.<br/>
- The baseline BGP route population is stable.<br/>
- The expected ASPA verification and routing states have been reached.<br/>
- No unrelated BGP or RTR synchronization activity is in progress.<br/>
- Relevant resource-utilization measurements have stabilized according to predefined criteria.</t>
        <t>The tester <bcp14>MUST</bcp14> define the steady-state criteria before beginning a benchmark.
A benchmark <bcp14>MUST NOT</bcp14> begin if the required initial conditions have not been satisfied.
For repeated measurements, the initial ASPA dataset, BGP route population, and relevant DUT configuration <bcp14>MUST</bcp14> be restored between runs unless a benchmark explicitly evaluates cumulative processing or sustained workload behavior.
The benchmark report <bcp14>MUST</bcp14> identify any deviations from the specified initial conditions.</t>
      </section>
    </section>
    <section anchor="benchmarking-methodology">
      <name>Benchmarking Methodology</name>
      <t>This section defines the methodology for benchmarking ASPA-based AS_PATH verification on routing devices. It specifies the test conditions, workload characteristics, and measurement metrics required to obtain repeatable and comparable results.</t>
      <t>Unlike route origin validation, ASPA-based AS_PATH verification examines provider authorization relationships along an AS_PATH. Its performance may depend on the characteristics of both the ASPA dataset and the BGP routing workload. Therefore, benchmarking requires coordinated control of these inputs to isolate the performance impact of ASPA verification under different conditions.</t>
      <t>The methodology defined in this section applies to the benchmark tests specified in Section 6.</t>
      <section anchor="general-considerations">
        <name>General Considerations</name>
        <t>All benchmark tests <bcp14>MUST</bcp14> be conducted under controlled and repeatable conditions using the laboratory environment described in <xref target="test_setup"/>.</t>
        <t>Unless otherwise specified, the DUT <bcp14>MUST</bcp14> reach a predefined steady state before measurements begin. The initial ASPA dataset, BGP route population, verification configuration, and relevant routing policies <bcp14>MUST</bcp14> be documented.
Each benchmark <bcp14>MUST</bcp14> identify the primary variable being evaluated while keeping other relevant parameters unchanged where feasible. When multiple parameters are varied simultaneously, their values and relationships <bcp14>MUST</bcp14> be explicitly reported.
For tests involving ASPA verification results, the expected results <bcp14>MUST</bcp14> be determined independently of the DUT before measurements begin. These results <bcp14>MUST</bcp14> be consistent with the verification procedures specified in <xref target="I-D.ietf-sidrops-aspa-verification"/>.</t>
        <t>The observed verification results <bcp14>SHOULD</bcp14> be checked against the expected results to ensure that measurements are collected under valid test conditions. Tests in which the DUT does not reach the expected verification or routing state <bcp14>MUST</bcp14> be identified and <bcp14>MUST NOT</bcp14> be reported as successful benchmark results.
Benchmarking <bcp14>SHOULD</bcp14> include both isolated workloads, which vary individual ASPA-specific characteristics, and combined workloads, which evaluate performance under multiple concurrent conditions.</t>
        <t>Where applicable, measurements <bcp14>SHOULD</bcp14> be repeated with ASPA verification disabled to characterize the additional processing overhead associated with enabling ASPA verification. Such baseline comparisons <bcp14>MUST</bcp14> use equivalent BGP workloads and routing configurations, except for the ASPA-related configuration under evaluation.
Each test condition <bcp14>SHOULD</bcp14> be repeated at least ten times. The number of repetitions, measurement variability, and any unsuccessful runs <bcp14>MUST</bcp14> be reported.
Measurement results <bcp14>SHOULD</bcp14> include appropriate summary statistics, such as the mean, median, standard deviation, and selected percentiles where sufficient samples are available.</t>
      </section>
      <section anchor="test-control-and-input-conditions">
        <name>Test Control and Input Conditions</name>
        <t>The performance of ASPA verification is influenced by the characteristics of the ASPA dataset, the structure of BGP AS_PATHs, and the interaction between ASPA information and BGP routing operations.</t>
        <t>This section defines the primary input parameters that <bcp14>MUST</bcp14> be controlled or documented, as applicable, during benchmarking.</t>
        <section anchor="aspa-dataset-size-and-structure">
          <name>ASPA Dataset Size and Structure</name>
          <t>The ASPA dataset provided to the DUT is characterized by the number of CAS entries and the associated provider authorizations.</t>
          <t>At minimum, the following parameters <bcp14>MUST</bcp14> be reported:<br/>
- ASPA Record Count: The number of distinct CAS entries in the ASPA dataset.<br/>
- Provider Authorization Count: The total number of distinct CAS-to-PAS authorization relationships.<br/>
- Provider-Set Cardinality: The number of authorized providers associated with each CAS.</t>
          <t>These parameters <bcp14>MUST</bcp14> be distinguished because ASPA datasets containing the same number of CAS entries may differ significantly in the number and distribution of provider authorizations.
For a dataset containing M CAS entries, the provider authorization count can be expressed as:</t>
          <artwork><![CDATA[
P = sum(|S_i|), for i = 1, ..., M
]]></artwork>
          <t>where S_i denotes the set of distinct authorized provider ASes for CAS i, excluding the special AS 0 value.</t>
          <t>An ASPA entry containing only AS 0 represents an explicit statement that the CAS has no transit providers, rather than an authorization of AS 0 as a provider. Such entries <bcp14>MUST</bcp14> be distinguished from CAS entries for which no ASPA information is available.</t>
          <t>When varying ASPA dataset size, the tester <bcp14>SHOULD</bcp14> distinguish between increasing the number of CAS entries and increasing the number of provider authorizations per CAS.</t>
          <t>The provider-set cardinality distribution <bcp14>SHOULD</bcp14> be documented using statistical characteristics such as minimum, maximum, mean, and median values.</t>
          <t>For tests intended to isolate the effect of provider-set cardinality, the number of CAS entries and other relevant workload characteristics <bcp14>SHOULD</bcp14> remain fixed.</t>
          <t>The tester <bcp14>MAY</bcp14> use datasets derived from operational ASPA information or synthetically generated datasets. Synthetic datasets <bcp14>SHOULD</bcp14> be used when precise control of dataset characteristics is required.</t>
        </section>
        <section anchor="aspa-coverage">
          <name>ASPA Coverage</name>
          <t>ASPA coverage characterizes the availability of provider authorization information for ASes involved in the verification workload.</t>
          <t>For benchmarking purposes, ASPA coverage is defined relative to a specified reference AS population derived from the BGP AS_PATHs and verification procedures used in the test.</t>
          <t>Let A_W denote the set of distinct ASNs that may be used as the customer argument in provider authorization checks for the specified workload and verification directions.</t>
          <t>Let A_D denote the set of CASes for which ASPA information is available in the dataset.
ASPA coverage is defined as:</t>
          <artwork><![CDATA[
C_ASPA = (|A_W intersect A_D| / |A_W|) * 100%
]]></artwork>
          <t>The reference population A_W <bcp14>MUST</bcp14> remain unchanged when comparing different ASPA coverage levels for the same workload.
ASPA records unrelated to the reference population <bcp14>MUST NOT</bcp14> contribute to the coverage numerator.
If the reference population is empty, ASPA coverage is undefined and <bcp14>MUST</bcp14> be reported as not applicable.</t>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate multiple ASPA coverage levels to characterize how verification performance changes with the availability of authorization information.
Illustrative coverage levels include 0%, 25%, 50%, 75%, and 100%. Other levels <bcp14>MAY</bcp14> be used depending on the test objective.
When constructing datasets with different coverage levels, the selection of covered CASes <bcp14>MUST</bcp14> be reproducible.
Changing ASPA coverage may change the expected verification results of the test routes. Therefore, the distribution of Valid, Invalid, and Unknown results <bcp14>MUST</bcp14> be determined and reported for each coverage level.
An ASPA entry containing only AS 0 counts as an available ASPA entry for coverage purposes. It <bcp14>MUST NOT</bcp14> be treated as equivalent to the absence of ASPA information.</t>
        </section>
        <section anchor="aspath-length-and-structure">
          <name>AS_PATH Length and Structure</name>
          <t>AS_PATH length is a primary characteristic of ASPA verification workloads.</t>
          <t>The ASPA verification procedures operate on the COMPRESSED_AS_PATH, obtained by removing consecutive duplicate ASNs from the AS_PATH.</t>
          <t>Therefore, the benchmarking workload <bcp14>MUST</bcp14> distinguish between:<br/>
- Raw AS_PATH Length: The number of ASNs in the original AS_PATH.<br/>
- Compressed AS_PATH Length: The number of ASNs remaining after consecutive duplicate ASNs have been removed.</t>
          <t>Unless otherwise specified, AS_PATH length in the benchmarking procedures refers to compressed AS_PATH length.
The tester <bcp14>SHOULD</bcp14> evaluate multiple compressed AS_PATH lengths to characterize their impact on verification performance.
For example, compressed path lengths of 2, 4, 8, 16, and 32 ASNs <bcp14>MAY</bcp14> be used as controlled test values. These values are illustrative rather than mandatory.
When evaluating AS_PATH length sensitivity, the tester <bcp14>SHOULD</bcp14> maintain consistent ASPA dataset characteristics, verification direction, and verification-result distribution where feasible.</t>
          <t>In addition to path length, the structure of provider authorization relationships along the AS_PATH may influence verification processing.
The ASPA verification procedures distinguish between an up-ramp and a down-ramp based on the authorization relationships between consecutive ASes.
Therefore, test workloads <bcp14>SHOULD</bcp14> include different authorization relationship patterns consistent with the applicable verification procedures.</t>
          <t>For tests intended to isolate the effect of AS_PATH prepending, the tester <bcp14>SHOULD</bcp14> construct paths with different raw AS_PATH lengths but identical compressed AS_PATHs.
This allows the processing overhead associated with AS_PATH representation and compression to be distinguished from the effects of compressed path length.
The raw and compressed AS_PATH length distributions <bcp14>MUST</bcp14> be reported for each applicable test.</t>
        </section>
        <section anchor="provider-authorization-patterns">
          <name>Provider Authorization Patterns</name>
          <t>ASPA verification evaluates the authorization relationships between ASes appearing in an AS_PATH.
The provider authorization function defined in <xref target="I-D.ietf-sidrops-aspa-verification"/> produces three possible results:
- Provider+. 
- Not Provider+. 
- No Attestation.</t>
          <t>The distribution and position of these results along an AS_PATH may influence the verification outcome and the processing required by an implementation.
Therefore, the benchmarking methodology <bcp14>SHOULD</bcp14> consider the following authorization patterns:<br/>
- Fully Authorized Paths: Paths for which the relevant provider authorization checks return Provider+ and the complete verification procedure produces Valid.<br/>
- Paths with Missing Attestations: Paths containing authorization checks that return No Attestation, potentially resulting in an Unknown verification outcome.<br/>
- Paths with Unauthorized Relationships: Paths containing authorization checks that return Not Provider+, potentially resulting in an Invalid verification outcome.</t>
          <t>The terms above describe workload characteristics and do not replace the verification results defined in <xref target="I-D.ietf-sidrops-aspa-verification"/>.
The tester <bcp14>SHOULD</bcp14> construct workloads in which the positions of missing attestations and unauthorized relationships are controlled.
For example, a test <bcp14>MAY</bcp14> place the first relevant No Attestation or Not Provider+ result at different positions along an AS_PATH while keeping the compressed path length unchanged.</t>
          <t>The position <bcp14>MUST</bcp14> be described relative to the path orientation and authorization checks defined by the applicable upstream or downstream verification procedure.
Such tests may help characterize the sensitivity of an implementation to authorization relationship patterns and early termination opportunities.</t>
          <t>However, the final verification result <bcp14>MUST</bcp14> always be determined using the complete ASPA verification procedure. 
A single No Attestation or Not Provider+ result <bcp14>MUST NOT</bcp14> be assumed to produce a particular final verification result independently of the remaining path structure.</t>
        </section>
        <section anchor="verification-direction-and-outcome-distribution">
          <name>Verification Direction and Outcome Distribution</name>
          <t>ASPA verification applies different procedures depending on the relationship between the receiving router and its BGP neighbor.<br/>
The benchmarking methodology distinguishes between:<br/>
- Upstream Verification: Applied to routes received from Customers or Peers, and to the applicable Route Server and RS-client cases.<br/>
- Downstream Verification: Applied to routes received from Providers.</t>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate upstream and downstream verification separately before introducing workloads involving multiple verification directions.<br/>
The configured neighbor relationship and the applied verification procedure <bcp14>MUST</bcp14> be reported.<br/>
For each test workload, the expected ASPA verification results <bcp14>MUST</bcp14> be determined according to <xref target="I-D.ietf-sidrops-aspa-verification"/>.
The verification outcome distribution describes the proportion of routes expected to produce each result:</t>
          <t>D=(p_{\mathrm{Valid}},p_{\mathrm{Invalid}},p_{\mathrm{Unknown}})</t>
          <t>where: p_{\mathrm{Valid}}+p_{\mathrm{Invalid}}+p_{\mathrm{Unknown}}=1</t>
          <t>The tester <bcp14>SHOULD</bcp14> include workloads dominated by individual verification results, as well as mixed workloads containing specified proportions of Valid, Invalid, and Unknown routes.<br/>
The verification outcome distribution <bcp14>MUST</bcp14> be reported for each test.<br/>
Where relevant, the outcome distribution across distinct AS_PATHs <bcp14>SHOULD</bcp14> also be reported separately from the route-weighted distribution.<br/>
Not all combinations of ASPA coverage, AS_PATH structure, verification direction, and desired outcome distribution are necessarily achievable.<br/>
The tester <bcp14>MUST</bcp14> ensure that the generated workload is consistent with the applicable ASPA verification procedures and <bcp14>MUST</bcp14> document any constraints that prevent the construction of a requested workload.</t>
        </section>
        <section anchor="bgp-route-and-unique-aspath-populations">
          <name>BGP Route and Unique AS_PATH Populations</name>
          <t>The number of BGP routes and the number of distinct AS_PATHs are separate workload parameters.
Multiple routes may share the same AS_PATH, while other workloads may contain a large number of distinct AS_PATHs.
The benchmarking methodology <bcp14>MUST</bcp14> distinguish between:
- Total BGP route count.<br/>
- Unique AS_PATH count.<br/>
- Number of routes sharing each AS_PATH.<br/>
- Number of distinct ASNs represented in the workload.</t>
          <t>These characteristics may influence the processing and memory requirements of ASPA verification implementations.
For example, an implementation may reuse previously computed verification results or maintain shared representations for routes with identical AS_PATHs.
The benchmarking methodology does not prescribe such optimizations. However, workloads <bcp14>SHOULD</bcp14> be constructed to allow their performance effects to be observed.
When evaluating the effect of unique AS_PATH count, the total number of BGP routes <bcp14>SHOULD</bcp14> remain fixed where feasible.
Conversely, when evaluating the effect of BGP route count, the number and characteristics of distinct AS_PATHs <bcp14>SHOULD</bcp14> remain fixed where feasible.
The tester <bcp14>MUST</bcp14> specify whether AS_PATH uniqueness is determined using raw or compressed AS_PATHs.</t>
        </section>
        <section anchor="aspa-update-characteristics">
          <name>ASPA Update Characteristics</name>
          <t>ASPA updates may modify provider authorization information without changing the BGP routes currently stored by the DUT.
The benchmarking methodology distinguishes three ASPA update operations:<br/>
- Addition: Introduction of an ASPA record for a previously uncovered CAS.<br/>
- Replacement: Modification of the complete provider set associated with an existing CAS.<br/>
- Withdrawal: Removal of an existing ASPA record for a CAS.<br/>
The update workload <bcp14>MUST</bcp14> conform to the applicable RTR protocol semantics.</t>
          <t>For each update transaction, the following characteristics <bcp14>SHOULD</bcp14> be controlled and reported:<br/>
- Number of changed CAS entries.<br/>
- Number of provider authorizations added or removed.<br/>
- Number of ASPA records announced or withdrawn.<br/>
- Update transaction size.<br/>
- Update transaction frequency.<br/>
- Distribution of updates across CAS entries.</t>
          <t>When evaluating ASPA churn, the tester <bcp14>MUST</bcp14> specify whether the update rate refers to changed CAS records, individual provider authorization changes, or complete RTR update transactions.
These measures <bcp14>MUST NOT</bcp14> be treated as interchangeable.
The tester <bcp14>SHOULD</bcp14> evaluate both individual ASPA updates and batches containing multiple changes.
For revalidation-related benchmarks, the tester <bcp14>SHOULD</bcp14> also distinguish:
- The number of existing routes containing ASes relevant to the modified ASPA information.<br/>
- The number of routes whose expected verification results change.<br/>
- The number of distinct AS_PATHs whose expected verification results change.</t>
          <t>These quantities may differ because an ASPA update can affect multiple AS_PATHs, and multiple routes may share the same AS_PATH.
The affected route population <bcp14>MUST</bcp14> be determined using the expected verification results before and after the ASPA update.</t>
        </section>
        <section anchor="bgp-update-characteristics">
          <name>BGP Update Characteristics</name>
          <t>The BGP update workload determines the rate and pattern at which routes requiring ASPA verification are presented to the DUT.
The benchmarking methodology <bcp14>SHOULD</bcp14> control the following parameters:<br/>
- Number of BGP announcements and withdrawals.<br/>
- BGP UPDATE message rate.<br/>
- Route announcement and withdrawal rate.<br/>
- Number of distinct AS_PATHs introduced per unit time.<br/>
- Distribution of verification results among updated routes.<br/>
- Burst size and inter-arrival intervals.</t>
          <t>The number of BGP UPDATE messages and the number of routes represented by those messages <bcp14>MUST</bcp14> be distinguished when calculating processing rates.
The tester <bcp14>SHOULD</bcp14> evaluate both constant-rate and bursty BGP update workloads.
For concurrent ASPA and BGP update tests, the timing relationship between the two update sources <bcp14>MUST</bcp14> be specified.
The RTR and BGP traffic generators <bcp14>SHOULD</bcp14> provide synchronized or otherwise correlated timestamps sufficient to reproduce the intended update sequence.</t>
        </section>
      </section>
      <section anchor="aspa-workload-characteristics">
        <name>ASPA Workload Characteristics</name>
        <t>The input parameters defined in Section 5.2 can be combined to construct workloads that exercise different aspects of ASPA verification.
To support systematic and reproducible benchmarking, this document identifies four workload categories.</t>
        <section anchor="static-verification-workloads">
          <name>Static Verification Workloads</name>
          <t>Static verification workloads evaluate AS_PATH verification performance while the ASPA dataset remains unchanged.
The tester first installs a predefined ASPA dataset and allows the DUT to reach steady state. BGP routes are then introduced with controlled AS_PATH characteristics and expected verification results.
These workloads are intended to characterize the performance effects of:<br/>
- Compressed AS_PATH length.<br/>
- ASPA coverage.<br/>
- Provider-set cardinality.<br/>
- Provider authorization patterns.<br/>
- Upstream and downstream verification procedures.<br/>
- Verification outcome distributions.<br/>
- Unique AS_PATH count and route sharing.</t>
          <t>When evaluating an individual parameter, the tester <bcp14>SHOULD</bcp14> maintain the remaining workload characteristics as consistently as possible.
If changes to one parameter necessarily affect other parameters, such dependencies <bcp14>MUST</bcp14> be documented.</t>
        </section>
        <section anchor="aspa-update-and-revalidation-workloads">
          <name>ASPA Update and Revalidation Workloads</name>
          <t>ASPA update and revalidation workloads evaluate DUT behavior when ASPA information changes while the BGP route population remains stable.
The tester <bcp14>MUST</bcp14> establish a predefined ASPA dataset and BGP route population before triggering the ASPA update.
The update workload <bcp14>SHOULD</bcp14> include controlled changes that produce known verification-state transitions.
Examples include:<br/>
- Valid to Invalid.<br/>
- Invalid to Valid.<br/>
- Unknown to Valid.<br/>
- Unknown to Invalid.<br/>
- Valid to Unknown.<br/>
- Invalid to Unknown.</t>
          <t>These transitions <bcp14>MUST</bcp14> be constructed consistently with the applicable ASPA verification procedures.
The tester <bcp14>SHOULD</bcp14> independently control the number of changed ASPA records, the number of affected BGP routes, and the number of distinct affected AS_PATHs where feasible.
Workloads <bcp14>SHOULD</bcp14> include both concentrated updates, in which a small number of CAS changes affect many routes, and distributed updates, in which changes to multiple CAS entries affect different route populations.
These workloads are intended to characterize ASPA update processing and route revalidation performance independently of new BGP announcements.</t>
        </section>
        <section anchor="concurrent-update-workloads">
          <name>Concurrent Update Workloads</name>
          <t>Concurrent update workloads evaluate ASPA verification performance when ASPA information and BGP routing information change during overlapping intervals.
The tester <bcp14>SHOULD</bcp14> specify independent ASPA and BGP update sequences.
The following characteristics <bcp14>MUST</bcp14> be documented:<br/>
- ASPA update rate.<br/>
- BGP update rate.<br/>
- Duration of the concurrent workload.<br/>
- Timing relationship between ASPA and BGP updates.<br/>
- Number of routes affected by each workload.<br/>
- Expected verification and routing states after the workload completes.</t>
          <t>Concurrent workloads <bcp14>SHOULD</bcp14> include both sustained update rates and controlled bursts.
When comparing concurrent workloads with isolated workloads, the tester <bcp14>SHOULD</bcp14> use equivalent ASPA and BGP update sequences to characterize the additional processing effects of simultaneous activity.</t>
        </section>
        <section anchor="recovery-workloads">
          <name>Recovery Workloads</name>
          <t>Recovery workloads evaluate ASPA verification behavior following RTR session interruptions, cache resets, or other controlled recovery events.
The tester <bcp14>MUST</bcp14> establish a known baseline ASPA dataset and BGP route population before triggering the recovery event.
Recovery workloads <bcp14>SHOULD</bcp14> distinguish between cases in which the ASPA dataset remains unchanged and cases in which the dataset changes during the interruption.
The tester <bcp14>SHOULD</bcp14> document whether previously received ASPA information remains available during recovery and identify the applicable RTR timing parameters.
Recovery measurements <bcp14>SHOULD</bcp14> include the time required to restore the expected ASPA dataset, verification results, and BGP routing state.</t>
        </section>
      </section>
      <section anchor="metrics-and-measurements">
        <name>Metrics and Measurements</name>
        <t>This section defines the performance metrics used to characterize ASPA verification implementations.
For each metric, the benchmark <bcp14>MUST</bcp14> identify the measurement start event, completion event, and observation method.
Measurements obtained using internal DUT instrumentation <bcp14>MUST</bcp14> be distinguished from those obtained through externally observable protocol or routing-state events.</t>
        <section anchor="aspa-synchronization-time">
          <name>ASPA Synchronization Time</name>
          <t>ASPA synchronization time characterizes the time required for the DUT to receive and process an initial ASPA dataset.
The following measurements are distinguished:
RTR Data Transfer Time: The interval between the arrival of the first PDU of the measured RTR response at the DUT and the completion of the corresponding End of Data PDU.
ASPA Dataset Application Time: The instant at which the complete received ASPA dataset becomes available for ASPA verification.
End-to-End ASPA Synchronization Time: The interval between the beginning of the measured RTR response at the DUT and the point at which the complete ASPA dataset is available for verification.
The completion of an RTR transaction does not necessarily indicate the completion of internal ASPA processing.
Therefore, RTR data transfer time <bcp14>MUST NOT</bcp14> be reported as equivalent to end-to-end ASPA synchronization time.
When ASPA dataset application cannot be directly observed, the tester <bcp14>MUST</bcp14> report only the measurements supported by the available observation points.
The report <bcp14>MUST</bcp14> identify whether the measurement includes RTR session establishment, cache response generation, or other protocol operations.</t>
        </section>
        <section anchor="aspa-update-processing-latency">
          <name>ASPA Update Processing Latency</name>
          <t>ASPA update processing latency characterizes the time required for changes in ASPA information to become effective at the DUT.
For a controlled update transaction, the measurement begins when the corresponding RTR update response starts arriving at the DUT.
The measurement ends when the updated ASPA information becomes available for verification, as determined by the selected observation method.
The tester <bcp14>SHOULD</bcp14> distinguish:
- RTR update transfer time.
- End-to-end ASPA update processing latency.
- Post-transfer processing latency, when independently observable.
The measurement <bcp14>MUST</bcp14> specify the number and types of ASPA changes included in the transaction.
If the DUT applies ASPA information before the End of Data PDU is received, the tester <bcp14>MUST</bcp14> account for that behavior and <bcp14>MUST NOT</bcp14> assume that all processing begins after transfer completion.
Measurements involving subsequent route revalidation <bcp14>MUST</bcp14> be reported separately from ASPA data processing latency.</t>
        </section>
        <section anchor="aspath-verification-latency">
          <name>AS_PATH Verification Latency</name>
          <t>AS_PATH verification latency characterizes the time required for the DUT to determine the ASPA verification result of a BGP route.
Where suitable internal instrumentation is available, verification latency <bcp14>MAY</bcp14> be measured as the interval between the beginning and completion of the ASPA verification procedure for the route.
Such measurements <bcp14>MUST</bcp14> identify the corresponding instrumentation points.
When direct verification latency cannot be observed, the tester <bcp14>MAY</bcp14> measure externally observable verification-related route-processing latency.
This measurement begins with the arrival of the relevant BGP UPDATE at the DUT and ends at a defined observable event indicating that the route has reached the expected verification-related state.
The externally observable interval may include BGP message parsing, routing policy processing, queueing, and other control-plane operations.
Therefore, it <bcp14>MUST NOT</bcp14> be reported as the execution time of the ASPA verification algorithm.
The tester <bcp14>SHOULD</bcp14> report latency distributions rather than only aggregate averages when sufficient samples are available.</t>
        </section>
        <section anchor="verification-throughput">
          <name>Verification Throughput</name>
          <t>Verification throughput characterizes the rate at which the DUT processes BGP routes requiring ASPA verification under a specified workload.
Where internal verification operation counts are available, verification throughput <bcp14>MAY</bcp14> be reported in verification operations per second.
Otherwise, the tester <bcp14>SHOULD</bcp14> use externally observable route-processing throughput.
For externally observable throughput measurements, the workload <bcp14>MUST</bcp14> be constructed so that the relevant routes reach identifiable expected states.
The tester <bcp14>SHOULD</bcp14> determine the maximum sustainable processing rate for which the DUT continues to process the workload without persistent backlog growth or unsuccessful route processing.
The measurement <bcp14>MUST</bcp14> distinguish:
- BGP UPDATE messages per second.
- Route announcements processed per second.
- Distinct AS_PATHs processed per second.
- Internal ASPA verification operations per second, when measurable.
These quantities <bcp14>MUST NOT</bcp14> be used interchangeably.
The benchmark <bcp14>MUST</bcp14> identify which quantity is being measured and the conditions used to determine successful processing.</t>
        </section>
        <section anchor="route-revalidation-time">
          <name>Route Revalidation Time</name>
          <t>Route revalidation time characterizes the time required for previously received BGP routes to reach their expected verification states following an ASPA update.
The benchmark <bcp14>MUST</bcp14> define the affected route population before initiating the update.
Two measurements are distinguished:
End-to-End Route Revalidation Time: The interval between the beginning of the corresponding RTR update response at the DUT and completion of the expected verification-state changes for all affected routes.
Post-Application Route Revalidation Time: The interval between the point at which the updated ASPA information becomes available for verification and completion of the expected verification-state changes.
The second measurement <bcp14>MAY</bcp14> be reported only when both observation points are available.
The tester <bcp14>MUST</bcp14> identify how completion of route revalidation is determined.
The report <bcp14>MUST</bcp14> include:
- Number of changed ASPA records.
- Number of affected routes.
- Number of distinct affected AS_PATHs.
- Expected verification-state transitions.
- Route revalidation time.
When a test includes routes whose verification results remain unchanged, their number <bcp14>SHOULD</bcp14> be reported separately from the population whose results change.</t>
        </section>
        <section anchor="bgp-convergence-time">
          <name>BGP Convergence Time</name>
          <t>BGP convergence time characterizes the interval required for the DUT to reach the expected stable routing state following a specified event.
Two categories are considered:
ASPA-triggered BGP Convergence: BGP routing-state changes caused by an update to ASPA information.
BGP-triggered Convergence with ASPA Verification: BGP convergence following a controlled BGP routing event while ASPA verification is enabled.
For ASPA-triggered convergence, the measurement begins at the specified RTR update event and ends when the expected BGP routing state has been reached.
For BGP-triggered convergence, the measurement begins at the specified BGP event and ends when the expected stable routing state has been reached.
The tester <bcp14>MUST</bcp14> document the routing policies applied to ASPA verification results.
A change in ASPA verification result does not necessarily cause a BGP routing-state change. Therefore, ASPA-triggered BGP convergence time <bcp14>MUST</bcp14> be measured only for test conditions in which the configured routing policy produces a defined and observable routing-state transition.
When comparing ASPA-enabled and ASPA-disabled configurations, the benchmark <bcp14>SHOULD</bcp14> use equivalent BGP workloads and expected routing outcomes.
Any differences in routing policy or expected convergence behavior <bcp14>MUST</bcp14> be documented.</t>
        </section>
        <section anchor="resource-utilization">
          <name>Resource Utilization</name>
          <t>Resource utilization characterizes the CPU and memory resources consumed by ASPA verification under specified workload conditions.
At minimum, the following metrics <bcp14>SHOULD</bcp14> be collected:
- Total CPU utilization.
- Total memory consumption.
- Peak CPU utilization during the test.
- Peak memory consumption during the test.
Where available, the tester <bcp14>SHOULD</bcp14> also collect:
- CPU utilization of routing processes.
- Memory consumption of routing processes.
- Memory used to store ASPA information.
- ASPA-related processing queue or backlog information.
Resource-utilization measurements <bcp14>SHOULD</bcp14> be collected during both steady-state and transient workload conditions.
The measurement interval, data source, and scope of the reported resource utilization <bcp14>MUST</bcp14> be documented.
For tests comparing configurations with ASPA verification enabled and disabled, resource utilization <bcp14>SHOULD</bcp14> be measured under equivalent BGP workload conditions.</t>
        </section>
        <section anchor="scalability-and-recovery-measurements">
          <name>Scalability and Recovery Measurements</name>
          <t>ASPA scalability is characterized by the maximum workload size that the DUT can process while satisfying predefined successful-operation criteria.
Relevant scalability dimensions include:
- ASPA record count.
- Provider authorization count.
- Provider-set cardinality.
- BGP route population.
- Unique AS_PATH count.
- Compressed AS_PATH length.
- ASPA update rate.
- Number of routes affected by ASPA updates.
The tester <bcp14>MUST</bcp14> specify the scalability dimension being evaluated and the criteria used to determine successful operation.
These criteria <bcp14>MAY</bcp14> include successful completion of ASPA synchronization, correct verification results, stable BGP sessions, bounded processing latency, and the absence of persistent processing backlogs.
A reported scalability limit <bcp14>MUST</bcp14> identify whether it represents an observed DUT limitation, a predefined performance threshold, or the maximum workload supported by the test equipment.
Recovery-related measurements <bcp14>SHOULD</bcp14> include RTR reconnection time, ASPA resynchronization time, and the time required to restore the expected verification and routing states.
The recovery scenario, initial conditions, and applicable RTR timing parameters <bcp14>MUST</bcp14> be documented.</t>
        </section>
      </section>
    </section>
    <section anchor="benchmark-tests">
      <name>Benchmark Tests</name>
      <t>This section defines the benchmark tests for evaluating the performance and operational behavior of ASPA-based AS_PATH verification implementations.</t>
      <t>The tests cover ASPA data processing, AS_PATH verification, route revalidation, BGP convergence, scalability, resource utilization, and RTR recovery behavior.</t>
      <t>Unless otherwise specified, each test uses the laboratory environment described in Section 4 and the workload parameters and measurement definitions specified in Section 5.</t>
      <t>Each benchmark specifies its objective, test conditions, procedure, measurements, and reporting requirements.</t>
      <t>The DUT <bcp14>MUST</bcp14> reach the predefined initial state before each test. The expected ASPA verification results <bcp14>MUST</bcp14> be determined independently of the DUT using the procedures defined in <xref target="I-D.ietf-sidrops-aspa-verification"/>. Test runs that do not reach the expected final state <bcp14>MUST</bcp14> be identified and <bcp14>MUST NOT</bcp14> be reported as successful benchmark results.</t>
      <t>For timing measurements, the following conventions apply:</t>
      <ul spacing="normal">
        <li>
          <t>RTR input events are observed at the DUT-facing interface. The beginning of an RTR response is identified by the arrival of its Cache Response PDU, and transfer completion is identified by the arrival of the corresponding End of Data PDU.</t>
        </li>
        <li>
          <t>BGP input events are observed at the DUT-facing interface. The arrival of a BGP UPDATE is identified by the completion of the corresponding message at the observation point.</t>
        </li>
        <li>
          <t>Internal processing completion is determined using DUT instrumentation or management interfaces when available.</t>
        </li>
        <li>
          <t>Externally observable completion is determined using predefined verification-state observations or routing-state changes. The observation method and its limitations <bcp14>MUST</bcp14> be documented.</t>
        </li>
        <li>
          <t>Measurements obtained from internal instrumentation <bcp14>MUST</bcp14> be distinguished from externally observable measurements. In particular, externally observable route-processing latency <bcp14>MUST NOT</bcp14> be reported as the execution time of the ASPA verification algorithm.</t>
        </li>
      </ul>
      <t>Where direct verification-state information is unavailable, the tester <bcp14>MAY</bcp14> use a controlled routing policy and observable BGP routing-state transitions as an indirect measurement. Such measurements <bcp14>MUST</bcp14> be identified as verification-related routing-state response times rather than direct ASPA verification latencies.</t>
      <t>If a test requires an internal completion event that cannot be observed, the corresponding internal metric <bcp14>MUST</bcp14> be reported as unavailable. Other measurable results from the same test <bcp14>MAY</bcp14> still be reported.</t>
      <t>Each test <bcp14>SHOULD</bcp14> be repeated under identical conditions, as specified in Section 5.1. The report <bcp14>MUST</bcp14> include the number of repetitions, measurement variability, and any unsuccessful runs.</t>
      <section anchor="aspa-data-processing-latency">
        <name>ASPA Data Processing Latency</name>
        <t><strong>Objective:</strong></t>
        <t>Measure the time required for the DUT to receive and process ASPA information delivered through the RPKI-to-Router (RTR) protocol.</t>
        <t>Two scenarios are considered: initial ASPA dataset synchronization and incremental ASPA updates.</t>
        <section anchor="initial-aspa-synchronization">
          <name>Initial ASPA Synchronization</name>
          <t>This test characterizes ASPA processing performance when the DUT loads a complete ASPA dataset from an RTR cache.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> be configured with ASPA verification enabled and connected to the RTR Cache/Emulator described in Section 4.3.</t>
          <t>The tester <bcp14>MUST</bcp14> prepare an ASPA dataset with specified CAS and provider authorization counts.</t>
          <t>The test <bcp14>MUST</bcp14> begin from a known RTR synchronization state. The tester <bcp14>MUST</bcp14> ensure that previously installed ASPA information does not unintentionally affect the measurements.</t>
          <t>The test <bcp14>MAY</bcp14> be conducted with or without an existing BGP route population. When BGP routes are present, their number and AS_PATH characteristics <bcp14>MUST</bcp14> be documented.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Configure the DUT and RTR Cache/Emulator according to the selected test parameters.</t>
            </li>
            <li>
              <t>Prepare an ASPA dataset with the specified CAS count, provider authorization count, and provider-set cardinality distribution.</t>
            </li>
            <li>
              <t>Establish the required BGP sessions and baseline route population, if applicable.</t>
            </li>
            <li>
              <t>Initiate a full RTR synchronization using the applicable Reset Query procedure.</t>
            </li>
            <li>
              <t>Record the arrival time of the Cache Response PDU at the DUT-facing interface.</t>
            </li>
            <li>
              <t>Record the arrival time of the corresponding End of Data PDU.</t>
            </li>
            <li>
              <t>Determine when the received ASPA dataset becomes available for verification, if a suitable observation mechanism is available.</t>
            </li>
            <li>
              <t>Record CPU and memory utilization during synchronization.</t>
            </li>
            <li>
              <t>Verify that the expected ASPA information and verification states are available after synchronization.</t>
            </li>
            <li>
              <t>Restore the initial conditions and repeat the test.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> repeat the procedure using different ASPA dataset sizes.</t>
          <t>The number of CAS entries and the total number of provider authorizations <bcp14>SHOULD</bcp14> be varied independently where feasible.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>RTR data transfer time.</t>
            </li>
            <li>
              <t>End-to-end ASPA synchronization time, when observable.</t>
            </li>
            <li>
              <t>ASPA application completion time, when observable.</t>
            </li>
            <li>
              <t>Peak CPU utilization.</t>
            </li>
            <li>
              <t>Peak memory consumption.</t>
            </li>
            <li>
              <t>Number of successfully installed ASPA records, when observable.</t>
            </li>
            <li>
              <t>Synchronization failures.</t>
            </li>
          </ul>
          <t>The completion of the End of Data PDU indicates completion of the corresponding RTR data transfer but does not necessarily indicate that all ASPA information has become effective for route verification.</t>
          <t>Therefore, RTR data transfer time <bcp14>MUST NOT</bcp14> be reported as ASPA processing completion time.</t>
          <t>When direct ASPA application completion cannot be observed, the tester <bcp14>MAY</bcp14> measure the time required for predefined routing-state changes resulting from the newly synchronized ASPA information. Such measurements <bcp14>MUST</bcp14> be reported separately as externally observable routing-state response times.</t>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> include the ASPA dataset characteristics, RTR protocol version, measurement observation points, and synchronization results.</t>
          <t>When other RTR payload types are present, their quantities <bcp14>MUST</bcp14> be reported. Non-ASPA payload populations <bcp14>SHOULD</bcp14> remain unchanged across test runs intended to isolate ASPA processing performance.</t>
        </section>
        <section anchor="incremental-aspa-update-processing">
          <name>Incremental ASPA Update Processing</name>
          <t>This test measures DUT processing performance when an existing ASPA dataset is modified.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> initially contain a predefined ASPA dataset and have reached steady state.</t>
          <t>The RTR Cache/Emulator <bcp14>MUST</bcp14> support controlled ASPA additions, replacements, and withdrawals.</t>
          <t>Each update transaction <bcp14>MUST</bcp14> conform to the applicable RTR protocol semantics.</t>
          <t>In particular, a replacement announcement for an existing CAS <bcp14>MUST</bcp14> contain the complete new provider set.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Load the baseline ASPA dataset and establish steady state.</t>
            </li>
            <li>
              <t>Prepare a controlled ASPA update transaction containing a specified number of changes.</t>
            </li>
            <li>
              <t>Select one of the following update operations:  </t>
              <ul spacing="normal">
                <li>
                  <t>Addition of new CAS entries.</t>
                </li>
                <li>
                  <t>Replacement of existing CAS provider sets.</t>
                </li>
                <li>
                  <t>Withdrawal of existing CAS entries.</t>
                </li>
              </ul>
            </li>
            <li>
              <t>Make the updated dataset available through the RTR Cache/Emulator.</t>
            </li>
            <li>
              <t>Initiate the corresponding RTR update exchange using the applicable protocol procedures.</t>
            </li>
            <li>
              <t>Record the arrival time of the Cache Response PDU at the DUT-facing interface.</t>
            </li>
            <li>
              <t>Record the arrival time of the corresponding End of Data PDU.</t>
            </li>
            <li>
              <t>Determine when the updated ASPA information becomes effective, if directly observable.</t>
            </li>
            <li>
              <t>Record processing latency and resource utilization.</t>
            </li>
            <li>
              <t>Verify that the resulting ASPA dataset matches the expected state.</t>
            </li>
            <li>
              <t>Restore the baseline dataset and repeat the test.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate additions, replacements, and withdrawals separately before using mixed update transactions.</t>
          <t>The tester <bcp14>SHOULD</bcp14> vary the number of changed CAS entries and provider authorizations across test runs.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>RTR update transfer time.</t>
            </li>
            <li>
              <t>ASPA update processing latency, when observable.</t>
            </li>
            <li>
              <t>Externally observable routing-state response time, when applicable.</t>
            </li>
            <li>
              <t>Number of changed CAS entries.</t>
            </li>
            <li>
              <t>Number of provider authorizations added or removed.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Update processing failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> characterize update processing performance as a function of the number of changed CAS entries and provider authorizations.</t>
          <t>The report <bcp14>MUST</bcp14> distinguish RTR transfer completion, ASPA data application, and subsequent route revalidation.</t>
          <t>When an ASPA update triggers route revalidation, the corresponding revalidation performance <bcp14>SHOULD</bcp14> be measured using Section 6.3.</t>
        </section>
      </section>
      <section anchor="aspath-verification-performance">
        <name>AS_PATH Verification Performance</name>
        <t><strong>Objective:</strong></t>
        <t>Characterize ASPA verification performance under controlled BGP workloads with different AS_PATH structures and ASPA dataset characteristics.</t>
        <t>These tests evaluate the effects of AS_PATH length, ASPA coverage, provider-set cardinality, provider authorization patterns, verification direction, and verification outcome distribution.</t>
        <t>Unless otherwise specified, the ASPA dataset <bcp14>MUST</bcp14> remain stable while BGP routes are introduced.</t>
        <section anchor="baseline-aspath-verification">
          <name>Baseline AS_PATH Verification</name>
          <t>This test establishes baseline measurements for BGP route processing with ASPA verification enabled.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> be configured with ASPA verification enabled.</t>
          <t>The tester <bcp14>MUST</bcp14> prepare an ASPA dataset and a BGP workload with known verification results.</t>
          <t>The workload <bcp14>MUST</bcp14> specify:</t>
          <ul spacing="normal">
            <li>
              <t>Number of BGP routes.</t>
            </li>
            <li>
              <t>Number of unique AS_PATHs.</t>
            </li>
            <li>
              <t>Compressed AS_PATH length distribution.</t>
            </li>
            <li>
              <t>ASPA coverage.</t>
            </li>
            <li>
              <t>Verification direction.</t>
            </li>
            <li>
              <t>Verification outcome distribution.</t>
            </li>
            <li>
              <t>BGP route announcement rate.</t>
            </li>
          </ul>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Load the predefined ASPA dataset into the DUT.</t>
            </li>
            <li>
              <t>Establish the BGP sessions required for the selected verification direction.</t>
            </li>
            <li>
              <t>Confirm completion of ASPA synchronization and establish steady state.</t>
            </li>
            <li>
              <t>Prepare BGP routes with predefined AS_PATHs and expected verification results.</t>
            </li>
            <li>
              <t>Start the Measurement System.</t>
            </li>
            <li>
              <t>Announce the test routes at the specified rate.</t>
            </li>
            <li>
              <t>Record the relevant BGP input events and observable verification or routing-state changes.</t>
            </li>
            <li>
              <t>Measure verification-related processing latency and route-processing throughput using the observation methods defined in Section 5.4.</t>
            </li>
            <li>
              <t>Verify that the DUT produces the expected verification results.</t>
            </li>
            <li>
              <t>Withdraw the test routes, restore the initial state, and repeat the test.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> conduct a corresponding measurement with ASPA verification disabled.</t>
          <t>The ASPA-enabled and ASPA-disabled configurations <bcp14>SHOULD</bcp14> use equivalent BGP workloads and routing policies that preserve the same expected route-selection outcomes when the objective is to isolate ASPA processing overhead.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Internal ASPA verification latency, when directly measurable.</t>
            </li>
            <li>
              <t>Externally observable verification-related route-processing latency.</t>
            </li>
            <li>
              <t>Route-processing throughput.</t>
            </li>
            <li>
              <t>CPU utilization.</t>
            </li>
            <li>
              <t>Memory consumption.</t>
            </li>
            <li>
              <t>Processing overhead relative to the ASPA-disabled baseline.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> identify the measurement method and distinguish internal verification latency from externally observable processing latency.</t>
          <t>Results <bcp14>SHOULD</bcp14> include latency distributions and throughput measurements under the specified workload.</t>
        </section>
        <section anchor="aspath-length-sensitivity">
          <name>AS_PATH Length Sensitivity</name>
          <t>This test evaluates how verification performance varies with compressed AS_PATH length.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare multiple BGP workloads with different compressed AS_PATH lengths.</t>
            </li>
            <li>
              <t>Construct corresponding ASPA datasets that produce known verification results.</t>
            </li>
            <li>
              <t>Maintain the number of advertised routes and other relevant workload characteristics as consistently as possible.</t>
            </li>
            <li>
              <t>Load the ASPA dataset corresponding to the first workload.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Announce the test routes at a fixed rate.</t>
            </li>
            <li>
              <t>Measure verification-related processing latency, throughput, and resource utilization.</t>
            </li>
            <li>
              <t>Restore the initial state.</t>
            </li>
            <li>
              <t>Repeat the procedure for each selected AS_PATH length.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate upstream and downstream verification separately.</t>
          <t>Where feasible, the verification outcome distribution <bcp14>SHOULD</bcp14> remain consistent across the tested path lengths.</t>
          <t>The tester <bcp14>MAY</bcp14> also construct workloads with different raw AS_PATH lengths but identical compressed AS_PATHs to characterize the additional processing associated with AS_PATH prepending.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>Route-processing throughput.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> be presented against compressed AS_PATH length.</t>
          <t>Raw AS_PATH length <bcp14>MUST</bcp14> also be reported when AS_PATH prepending is present.</t>
          <t>Differences in ASPA dataset characteristics or verification outcome distributions across test conditions <bcp14>MUST</bcp14> be documented.</t>
        </section>
        <section anchor="aspa-coverage-sensitivity">
          <name>ASPA Coverage Sensitivity</name>
          <t>This test evaluates the effect of ASPA coverage on verification performance.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare a fixed population of BGP routes and AS_PATHs.</t>
            </li>
            <li>
              <t>Determine the reference AS population used to calculate ASPA coverage, as defined in Section 5.2.2.</t>
            </li>
            <li>
              <t>Generate ASPA datasets with different coverage levels.</t>
            </li>
            <li>
              <t>Determine the expected verification results for each dataset.</t>
            </li>
            <li>
              <t>Load the first ASPA dataset and establish steady state.</t>
            </li>
            <li>
              <t>Announce the predefined BGP workload.</t>
            </li>
            <li>
              <t>Measure verification-related latency, throughput, and resource utilization.</t>
            </li>
            <li>
              <t>Restore the initial state.</t>
            </li>
            <li>
              <t>Repeat the procedure for each coverage level.</t>
            </li>
          </ol>
          <t>The BGP route population, AS_PATH characteristics, and verification direction <bcp14>SHOULD</bcp14> remain unchanged across coverage levels.</t>
          <t>Because changes in ASPA coverage may affect the verification outcome distribution, the expected and observed outcome distributions <bcp14>MUST</bcp14> be reported for each dataset.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>Route-processing throughput.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Verification outcome distribution.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> characterize verification performance as a function of ASPA coverage.</t>
          <t>The report <bcp14>MUST</bcp14> identify the reference AS population and the method used to select covered CASes.</t>
        </section>
        <section anchor="provider-set-cardinality-sensitivity">
          <name>Provider-Set Cardinality Sensitivity</name>
          <t>This test evaluates the influence of provider-set cardinality on ASPA verification performance.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare ASPA datasets containing the same number of CAS entries but different provider-set cardinality distributions.</t>
            </li>
            <li>
              <t>Construct BGP workloads that exercise the corresponding provider authorization relationships.</t>
            </li>
            <li>
              <t>Determine the expected verification results for each workload.</t>
            </li>
            <li>
              <t>Load the first ASPA dataset and establish steady state.</t>
            </li>
            <li>
              <t>Announce the test routes at a fixed rate.</t>
            </li>
            <li>
              <t>Measure verification-related latency, throughput, and resource utilization.</t>
            </li>
            <li>
              <t>Restore the baseline state.</t>
            </li>
            <li>
              <t>Repeat the procedure for the remaining provider-set cardinality distributions.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> maintain equivalent BGP route counts, compressed AS_PATH length distributions, and verification directions across test runs.</t>
          <t>When increasing provider-set cardinality also increases the total provider authorization count, the resulting dataset-size difference <bcp14>MUST</bcp14> be documented.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>Route-processing throughput.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> characterize verification performance as a function of provider-set cardinality.</t>
          <t>The report <bcp14>MUST</bcp14> include the provider-set cardinality distribution and total provider authorization count for each dataset.</t>
        </section>
        <section anchor="provider-authorization-pattern-sensitivity">
          <name>Provider Authorization Pattern Sensitivity</name>
          <t>This test evaluates whether the distribution and position of provider authorization results along an AS_PATH influence verification performance.</t>
          <t>The purpose is to characterize implementation performance without requiring a particular internal verification algorithm or optimization.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Select a fixed compressed AS_PATH length and verification direction.</t>
            </li>
            <li>
              <t>Construct multiple ASPA datasets and corresponding BGP workloads with different provider authorization patterns.</t>
            </li>
            <li>
              <t>Control the positions of Provider+, Not Provider+, and No Attestation results along the AS_PATH.</t>
            </li>
            <li>
              <t>Determine the expected final verification result for each workload using <xref target="I-D.ietf-sidrops-aspa-verification"/>.</t>
            </li>
            <li>
              <t>Maintain equivalent route counts and compressed AS_PATH lengths across test conditions.</t>
            </li>
            <li>
              <t>Load the selected ASPA dataset and establish steady state.</t>
            </li>
            <li>
              <t>Announce the corresponding BGP workload.</t>
            </li>
            <li>
              <t>Measure verification-related processing latency, throughput, and resource utilization.</t>
            </li>
            <li>
              <t>Restore the baseline state.</t>
            </li>
            <li>
              <t>Repeat the procedure for each authorization pattern.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> include patterns in which the first relevant Not Provider+ or No Attestation result occurs at different positions along the path.</t>
          <t>Where feasible, the workloads <bcp14>SHOULD</bcp14> maintain the same final verification outcome while varying the authorization pattern.</t>
          <t>The positions of authorization results <bcp14>MUST</bcp14> be defined consistently with the AS_PATH orientation and the applicable upstream or downstream verification procedure.</t>
          <t>The tester <bcp14>MUST NOT</bcp14> assume that an individual provider authorization result alone determines the final AS_PATH verification outcome.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>Route-processing throughput.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> describe the authorization patterns and expected verification results.</t>
          <t>Results <bcp14>SHOULD</bcp14> characterize performance differences across the tested authorization patterns.</t>
        </section>
        <section anchor="upstream-and-downstream-verification">
          <name>Upstream and Downstream Verification</name>
          <t>This test evaluates verification performance under the upstream and downstream procedures defined in <xref target="I-D.ietf-sidrops-aspa-verification"/>.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Configure an eBGP session with a neighbor relationship that invokes upstream verification.</t>
            </li>
            <li>
              <t>Prepare an ASPA dataset and BGP workload with known verification results.</t>
            </li>
            <li>
              <t>Load the dataset and establish steady state.</t>
            </li>
            <li>
              <t>Announce the BGP workload.</t>
            </li>
            <li>
              <t>Measure verification-related latency, throughput, and resource utilization.</t>
            </li>
            <li>
              <t>Restore the baseline state.</t>
            </li>
            <li>
              <t>Configure an eBGP session with a neighbor relationship that invokes downstream verification.</t>
            </li>
            <li>
              <t>Prepare and load the corresponding ASPA dataset and BGP workload.</t>
            </li>
            <li>
              <t>Repeat the measurements.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> maintain equivalent route counts, compressed AS_PATH length distributions, and BGP update rates across the two scenarios.</t>
          <t>Because upstream and downstream verification use different procedures, their provider authorization patterns and expected outcomes <bcp14>MUST</bcp14> be constructed separately.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>Route-processing throughput.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> identify the neighbor relationship, verification direction, AS_PATH characteristics, ASPA dataset characteristics, and verification outcome distribution.</t>
          <t>Any workload differences between the two verification directions <bcp14>MUST</bcp14> be documented.</t>
        </section>
        <section anchor="sustained-verification-throughput">
          <name>Sustained Verification Throughput</name>
          <t>This test determines the maximum sustainable BGP route-processing rate with ASPA verification enabled.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> contain a stable ASPA dataset.</t>
          <t>The BGP Route Generator <bcp14>MUST</bcp14> be capable of producing a sufficiently large population of routes with known verification results.</t>
          <t>Before the test, the tester <bcp14>MUST</bcp14> define the conditions for successful sustained processing.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare a predefined ASPA dataset and BGP route population.</t>
            </li>
            <li>
              <t>Load the ASPA dataset and establish steady state.</t>
            </li>
            <li>
              <t>Configure the BGP Route Generator with an initial announcement rate.</t>
            </li>
            <li>
              <t>Start announcing routes at the selected rate for a predefined measurement interval.</t>
            </li>
            <li>
              <t>Record the offered route rate and the rate at which routes reach their expected observable states.</t>
            </li>
            <li>
              <t>Measure processing latency and resource utilization.</t>
            </li>
            <li>
              <t>Determine whether the DUT satisfies the predefined successful-operation criteria.</t>
            </li>
            <li>
              <t>Restore the initial state and repeat at a higher announcement rate.</t>
            </li>
            <li>
              <t>Continue until the maximum planned rate is reached or the DUT can no longer sustain the workload.</t>
            </li>
          </ol>
          <t>The successful-operation criteria <bcp14>MUST</bcp14> include a defined condition for determining that the offered workload has been processed.</t>
          <t>Where processing backlog information is available, the tester <bcp14>SHOULD</bcp14> use it to determine whether the backlog remains bounded.</t>
          <t>Where backlog information is unavailable, the tester <bcp14>SHOULD</bcp14> use externally observable processing completion and a predefined maximum completion delay.</t>
          <t>The tester <bcp14>MUST</bcp14> ensure that the BGP generator does not become the limiting factor.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Offered BGP route announcement rate.</t>
            </li>
            <li>
              <t>Successfully processed route rate.</t>
            </li>
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Processing backlog, when observable.</t>
            </li>
            <li>
              <t>Processing failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The maximum sustainable processing rate <bcp14>MUST</bcp14> be reported together with the workload characteristics and successful-operation criteria.</t>
          <t>The report <bcp14>MUST</bcp14> distinguish offered throughput from successfully processed throughput.</t>
          <t>The result <bcp14>MUST</bcp14> be identified as route-processing throughput unless internal ASPA verification operations are measured directly.</t>
        </section>
      </section>
      <section anchor="aspa-triggered-route-revalidation">
        <name>ASPA-triggered Route Revalidation</name>
        <t><strong>Objective:</strong></t>
        <t>Measure the time required for the DUT to re-evaluate previously received BGP routes following changes in ASPA information.</t>
        <t>This benchmark focuses on ASPA-triggered route revalidation without introducing additional BGP announcements or withdrawals.</t>
        <t>The number of changed ASPA records, the number of affected routes, and the number of distinct affected AS_PATHs are treated as separate workload characteristics.</t>
        <t>Where direct verification-state information is available, the tester <bcp14>SHOULD</bcp14> use it to determine route revalidation completion.</t>
        <t>Otherwise, the tester <bcp14>MAY</bcp14> use controlled routing-state transitions as an indirect observation. Such measurements <bcp14>MUST</bcp14> be identified as externally observable routing-state response times.</t>
        <section anchor="verification-state-transition">
          <name>Verification-State Transition</name>
          <t>This test characterizes revalidation performance for different verification-state transitions.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> contain a predefined ASPA dataset and BGP route population.</t>
          <t>The tester <bcp14>MUST</bcp14> prepare an ASPA update that changes the expected verification results of a known set of existing routes.</t>
          <t>The existing BGP routes <bcp14>MUST</bcp14> remain unchanged during the test.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Load the baseline ASPA dataset.</t>
            </li>
            <li>
              <t>Advertise the predefined BGP route population.</t>
            </li>
            <li>
              <t>Confirm the expected initial verification states.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Prepare an ASPA update that produces a specified verification-state transition.</t>
            </li>
            <li>
              <t>Trigger the update through the RTR Cache/Emulator.</t>
            </li>
            <li>
              <t>Record the corresponding RTR input events.</t>
            </li>
            <li>
              <t>Determine when the updated ASPA information becomes effective, if observable.</t>
            </li>
            <li>
              <t>Monitor the affected routes using the selected verification-state or routing-state observation mechanism.</t>
            </li>
            <li>
              <t>Determine when the expected post-update states have been reached.</t>
            </li>
            <li>
              <t>Record the corresponding response time and resource utilization.</t>
            </li>
            <li>
              <t>Restore the baseline dataset and repeat the test.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate the following transitions where they can be constructed consistently with the applicable verification procedures:</t>
          <ul spacing="normal">
            <li>
              <t>Valid to Invalid.</t>
            </li>
            <li>
              <t>Invalid to Valid.</t>
            </li>
            <li>
              <t>Unknown to Valid.</t>
            </li>
            <li>
              <t>Unknown to Invalid.</t>
            </li>
            <li>
              <t>Valid to Unknown.</t>
            </li>
            <li>
              <t>Invalid to Unknown.</t>
            </li>
          </ul>
          <t>Each transition type <bcp14>SHOULD</bcp14> be evaluated separately before mixed-transition workloads are introduced.</t>
          <t>When the selected routing policy makes Invalid routes ineligible, the absence of a route from the Loc-RIB or from a monitoring session <bcp14>MUST NOT</bcp14>, by itself, be interpreted as proof that ASPA revalidation has completed.</t>
          <t>If the verification-state transition cannot be directly observed, the tester <bcp14>MAY</bcp14> construct an associated routing-state transition that is externally observable. The resulting measurement <bcp14>MUST</bcp14> be labeled accordingly.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>End-to-end route revalidation time, when directly observable.</t>
            </li>
            <li>
              <t>Post-ASPA-application revalidation time, when directly observable.</t>
            </li>
            <li>
              <t>Externally observable routing-state response time, when applicable.</t>
            </li>
            <li>
              <t>Number of changed ASPA records.</t>
            </li>
            <li>
              <t>Number of affected routes.</t>
            </li>
            <li>
              <t>Number of distinct affected AS_PATHs.</t>
            </li>
            <li>
              <t>Verification-state transition type.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Revalidation or routing-state completion failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> characterize revalidation performance for each verification-state transition type.</t>
          <t>The report <bcp14>MUST</bcp14> identify the observation method and distinguish direct revalidation measurements from indirect routing-state measurements.</t>
        </section>
        <section anchor="affected-route-population-sensitivity">
          <name>Affected Route Population Sensitivity</name>
          <t>This test evaluates the effect of the number of affected BGP routes on ASPA-triggered revalidation performance.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare a baseline ASPA dataset and BGP route population with known verification results.</t>
            </li>
            <li>
              <t>Construct an ASPA update that changes the expected verification states of a controlled subset of routes.</t>
            </li>
            <li>
              <t>Select an initial affected route population size.</t>
            </li>
            <li>
              <t>Load the baseline ASPA dataset and advertise the corresponding routes.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Trigger the ASPA update.</t>
            </li>
            <li>
              <t>Measure the time required for the affected routes to reach their expected observable post-update states.</t>
            </li>
            <li>
              <t>Record CPU and memory utilization.</t>
            </li>
            <li>
              <t>Restore the initial state.</t>
            </li>
            <li>
              <t>Repeat with increasing affected route population sizes.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> keep the number of changed ASPA records constant while varying the affected route population.</t>
          <t>The compressed AS_PATH length distribution, verification direction, and verification-state transition distribution <bcp14>SHOULD</bcp14> remain equivalent across test conditions where feasible.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Number of affected routes.</t>
            </li>
            <li>
              <t>Number of distinct affected AS_PATHs.</t>
            </li>
            <li>
              <t>Route revalidation time, when directly observable.</t>
            </li>
            <li>
              <t>Externally observable routing-state response time, when applicable.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> be presented against the affected route population size.</t>
          <t>The report <bcp14>MUST</bcp14> include the number of distinct affected AS_PATHs and the observation method used.</t>
        </section>
        <section anchor="unique-aspath-sensitivity">
          <name>Unique AS_PATH Sensitivity</name>
          <t>This test evaluates how the number of distinct AS_PATHs influences ASPA-triggered revalidation performance.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare multiple BGP workloads containing the same total number of affected routes but different numbers of distinct AS_PATHs.</t>
            </li>
            <li>
              <t>Construct corresponding ASPA datasets and updates that produce known verification-state changes.</t>
            </li>
            <li>
              <t>Maintain equivalent route counts and verification-state transition distributions across workloads.</t>
            </li>
            <li>
              <t>Load the first ASPA dataset and advertise the corresponding routes.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Trigger the ASPA update.</t>
            </li>
            <li>
              <t>Measure revalidation-related response time and resource utilization.</t>
            </li>
            <li>
              <t>Restore the baseline state.</t>
            </li>
            <li>
              <t>Repeat using the remaining workloads.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> consider workloads in which:</t>
          <ul spacing="normal">
            <li>
              <t>Many routes share a small number of distinct AS_PATHs.</t>
            </li>
            <li>
              <t>Routes are distributed across a moderate number of distinct AS_PATHs.</t>
            </li>
            <li>
              <t>Most routes have distinct AS_PATHs.</t>
            </li>
          </ul>
          <t>Where feasible, the compressed AS_PATH length distribution and authorization patterns <bcp14>SHOULD</bcp14> remain equivalent across the tested workloads.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Number of affected routes.</t>
            </li>
            <li>
              <t>Number of distinct affected AS_PATHs.</t>
            </li>
            <li>
              <t>Route revalidation time, when directly observable.</t>
            </li>
            <li>
              <t>Externally observable routing-state response time, when applicable.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> characterize revalidation-related performance as a function of distinct AS_PATH count.</t>
          <t>The report <bcp14>MUST</bcp14> include the distribution of routes across distinct AS_PATHs.</t>
          <t>This test does not require the DUT to implement verification-result caching, shared path representations, or any other specific optimization.</t>
        </section>
      </section>
      <section anchor="bgp-convergence-with-aspa-verification-enabled">
        <name>BGP Convergence with ASPA Verification Enabled</name>
        <t><strong>Objective:</strong></t>
        <t>Evaluate the impact of ASPA verification on BGP control-plane convergence under controlled routing conditions.</t>
        <t>Two scenarios are considered:</t>
        <ul spacing="normal">
          <li>
            <t>ASPA-triggered BGP convergence.</t>
          </li>
          <li>
            <t>BGP-triggered convergence with ASPA verification enabled and disabled.</t>
          </li>
        </ul>
        <t>The convergence measurements in this section concern control-plane routing behavior. Data-plane convergence <bcp14>MAY</bcp14> be measured separately using an applicable methodology.</t>
        <section anchor="aspa-triggered-bgp-convergence">
          <name>ASPA-triggered BGP Convergence</name>
          <t>This test evaluates BGP convergence caused by changes in ASPA verification results.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> be configured with an ASPA-aware routing policy that produces a deterministic and observable routing-state change following the selected ASPA update.</t>
          <t>The tester <bcp14>MUST</bcp14> prepare a stable BGP route population containing routes whose eligibility or selection changes as a result of the update.</t>
          <t>The initial and expected final routing states <bcp14>MUST</bcp14> be determined before testing.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Configure ASPA verification and the selected routing policy.</t>
            </li>
            <li>
              <t>Load the baseline ASPA dataset.</t>
            </li>
            <li>
              <t>Establish the BGP sessions and advertise the predefined routes.</t>
            </li>
            <li>
              <t>Confirm the expected initial route-selection state.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Prepare an ASPA update that changes the eligibility or selection of a known set of routes.</t>
            </li>
            <li>
              <t>Trigger the ASPA update.</t>
            </li>
            <li>
              <t>Record the relevant RTR input events.</t>
            </li>
            <li>
              <t>Monitor the routing states using the selected observation mechanism.</t>
            </li>
            <li>
              <t>Determine when the expected stable post-update routing state has been reached.</t>
            </li>
            <li>
              <t>Record convergence time and resource utilization.</t>
            </li>
            <li>
              <t>Restore the initial state and repeat the test.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate different numbers of affected prefixes and routes.</t>
          <t>The test <bcp14>MAY</bcp14> include:</t>
          <ul spacing="normal">
            <li>
              <t>A previously selected route becoming ineligible.</t>
            </li>
            <li>
              <t>A previously ineligible route becoming eligible.</t>
            </li>
            <li>
              <t>A change in the selected route among multiple candidates.</t>
            </li>
          </ul>
          <t>The selected routing policy <bcp14>MUST</bcp14> remain unchanged across comparable test runs.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>End-to-end ASPA-triggered BGP convergence time.</t>
            </li>
            <li>
              <t>Post-ASPA-application convergence time, when observable.</t>
            </li>
            <li>
              <t>Number of affected routes and prefixes.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Convergence failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> describe the routing policy, initial routing state, expected final state, and convergence observation points.</t>
          <t>A verification-state change that does not produce a routing-state transition <bcp14>MUST NOT</bcp14> be reported as a BGP convergence event.</t>
        </section>
        <section anchor="bgp-triggered-convergence-with-and-without-aspa-verification">
          <name>BGP-triggered Convergence with and without ASPA Verification</name>
          <t>This test compares BGP convergence performance with ASPA verification disabled and enabled.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare a predefined BGP topology and route population.</t>
            </li>
            <li>
              <t>Configure the DUT with ASPA verification disabled.</t>
            </li>
            <li>
              <t>Establish the initial routing state.</t>
            </li>
            <li>
              <t>Trigger a controlled BGP routing event, such as:  </t>
              <ul spacing="normal">
                <li>
                  <t>Announcement of a predefined route population.</t>
                </li>
                <li>
                  <t>Withdrawal of selected routes.</t>
                </li>
                <li>
                  <t>Replacement of selected AS_PATHs.</t>
                </li>
                <li>
                  <t>Controlled BGP peer failure.</t>
                </li>
              </ul>
            </li>
            <li>
              <t>Measure the time required to reach the expected stable routing state.</t>
            </li>
            <li>
              <t>Record CPU and memory utilization.</t>
            </li>
            <li>
              <t>Restore the initial state.</t>
            </li>
            <li>
              <t>Enable ASPA verification and load the predefined ASPA dataset.</t>
            </li>
            <li>
              <t>Confirm that the expected initial routing state is equivalent to that used in the ASPA-disabled test.</t>
            </li>
            <li>
              <t>Repeat the same BGP event.</t>
            </li>
            <li>
              <t>Measure convergence time and resource utilization.</t>
            </li>
            <li>
              <t>Compare the results.</t>
            </li>
          </ol>
          <t>To isolate the processing overhead of ASPA verification, the expected route-selection outcomes <bcp14>SHOULD</bcp14> remain equivalent between the two configurations.</t>
          <t>The measurement start and completion conditions <bcp14>MUST</bcp14> be equivalent.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>BGP convergence time without ASPA verification.</t>
            </li>
            <li>
              <t>BGP convergence time with ASPA verification.</t>
            </li>
            <li>
              <t>Absolute convergence-time difference.</t>
            </li>
            <li>
              <t>Relative convergence-time difference.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
          </ul>
          <t>The relative convergence-time difference <bcp14>MAY</bcp14> be calculated as:</t>
          <artwork><![CDATA[
Relative Change = ((T_ASPA - T_Baseline) / T_Baseline) * 100%
]]></artwork>
          <t>where T_ASPA and T_Baseline are measured under equivalent test conditions.</t>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> identify the BGP event, routing configuration, workload characteristics, and convergence criteria.</t>
          <t>Results <bcp14>SHOULD</bcp14> include absolute convergence times, relative differences, and measurement variability.</t>
        </section>
      </section>
      <section anchor="aspa-scalability-tests">
        <name>ASPA Scalability Tests</name>
        <t><strong>Objective:</strong></t>
        <t>Characterize ASPA verification performance as ASPA dataset size and BGP workload complexity increase.</t>
        <t>The benchmark considers:</t>
        <ul spacing="normal">
          <li>
            <t>ASPA record count.</t>
          </li>
          <li>
            <t>Provider authorization count.</t>
          </li>
          <li>
            <t>Provider-set cardinality.</t>
          </li>
          <li>
            <t>BGP route population.</t>
          </li>
          <li>
            <t>Unique AS_PATH count.</t>
          </li>
          <li>
            <t>Compressed AS_PATH length.</t>
          </li>
          <li>
            <t>Number of routes affected by ASPA updates.</t>
          </li>
        </ul>
        <section anchor="aspa-dataset-scalability">
          <name>ASPA Dataset Scalability</name>
          <t>This test evaluates DUT performance as the ASPA dataset size increases.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Generate ASPA datasets with progressively increasing CAS counts.</t>
            </li>
            <li>
              <t>Maintain a controlled provider-set cardinality distribution.</t>
            </li>
            <li>
              <t>Prepare a fixed BGP workload, where applicable.</t>
            </li>
            <li>
              <t>Load the first ASPA dataset and establish steady state.</t>
            </li>
            <li>
              <t>Measure synchronization performance, verification-related processing performance, and resource utilization.</t>
            </li>
            <li>
              <t>Restore the initial state.</t>
            </li>
            <li>
              <t>Repeat using larger ASPA datasets.</t>
            </li>
            <li>
              <t>Continue until the maximum planned dataset size is reached or the DUT fails to satisfy the predefined successful-operation criteria.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> conduct a separate series of measurements in which the provider authorization count increases while CAS count remains fixed.</t>
          <t>The tester <bcp14>SHOULD</bcp14> distinguish ASPA records referenced by the current BGP workload from records unrelated to the current AS_PATH population.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>ASPA synchronization time.</t>
            </li>
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Successfully installed ASPA records, when observable.</t>
            </li>
            <li>
              <t>Processing failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> be presented against ASPA record count and provider authorization count.</t>
          <t>The report <bcp14>MUST</bcp14> distinguish DUT limitations from test equipment limitations.</t>
        </section>
        <section anchor="bgp-route-and-aspath-scalability">
          <name>BGP Route and AS_PATH Scalability</name>
          <t>This test evaluates the impact of BGP route population and distinct AS_PATH count on ASPA verification performance.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Prepare a fixed ASPA dataset.</t>
            </li>
            <li>
              <t>Generate BGP workloads with increasing route counts.</t>
            </li>
            <li>
              <t>Define the number and distribution of distinct AS_PATHs for each workload.</t>
            </li>
            <li>
              <t>Load the ASPA dataset and establish steady state.</t>
            </li>
            <li>
              <t>Announce the selected BGP workload.</t>
            </li>
            <li>
              <t>Measure processing throughput, latency, and resource utilization.</t>
            </li>
            <li>
              <t>Restore the initial state.</t>
            </li>
            <li>
              <t>Repeat using larger workloads.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate route count and distinct AS_PATH count as separate scalability dimensions.</t>
          <t>When isolating route-count effects, the number and characteristics of distinct AS_PATHs <bcp14>SHOULD</bcp14> remain fixed.</t>
          <t>When isolating unique-AS_PATH effects, the total route count <bcp14>SHOULD</bcp14> remain fixed.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Route-processing throughput.</t>
            </li>
            <li>
              <t>Verification-related processing latency.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Processing failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> include route count, unique AS_PATH count, and the distribution of routes across distinct AS_PATHs.</t>
          <t>Results <bcp14>SHOULD</bcp14> characterize performance changes across the tested workload sizes.</t>
        </section>
        <section anchor="scalability-limit-determination">
          <name>Scalability Limit Determination</name>
          <t>This test identifies the highest workload level at which the DUT satisfies predefined successful-operation criteria.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Select a scalability parameter and define its test range.</t>
            </li>
            <li>
              <t>Establish successful-operation criteria before testing.</t>
            </li>
            <li>
              <t>Execute the corresponding benchmark at the initial parameter value.</t>
            </li>
            <li>
              <t>Increase the selected parameter while maintaining other relevant workload characteristics.</t>
            </li>
            <li>
              <t>Determine whether the DUT satisfies the successful-operation criteria.</t>
            </li>
            <li>
              <t>Continue until an unsuccessful condition occurs or the maximum planned test value is reached.</t>
            </li>
            <li>
              <t>Record the highest successfully tested value.</t>
            </li>
            <li>
              <t>Repeat measurements near the observed limit where feasible.</t>
            </li>
          </ol>
          <t>Successful-operation criteria <bcp14>SHOULD</bcp14> include:</t>
          <ul spacing="normal">
            <li>
              <t>Successful ASPA synchronization, when applicable.</t>
            </li>
            <li>
              <t>Expected ASPA verification results.</t>
            </li>
            <li>
              <t>Stable BGP sessions.</t>
            </li>
            <li>
              <t>Completion of the specified processing workload.</t>
            </li>
            <li>
              <t>Absence of persistent processing backlogs.</t>
            </li>
            <li>
              <t>Absence of resource exhaustion or processing failures.</t>
            </li>
          </ul>
          <t>Any latency or resource-utilization thresholds used to define successful operation <bcp14>MUST</bcp14> be specified before testing.</t>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> identify the tested scalability parameter, successful-operation criteria, highest successful test value, and observed failure conditions.</t>
          <t>A result <bcp14>MUST NOT</bcp14> be described as the maximum DUT capacity when the test is limited by the workload generator or the maximum planned test size.</t>
        </section>
      </section>
      <section anchor="aspa-churn-and-stress-tests">
        <name>ASPA Churn and Stress Tests</name>
        <t><strong>Objective:</strong></t>
        <t>Evaluate ASPA verification performance under sustained ASPA updates, bursty ASPA updates, and concurrent ASPA and BGP activity.</t>
        <t>These tests characterize processing stability, latency, revalidation behavior, and resource utilization under update-intensive conditions.</t>
        <section anchor="sustained-aspa-churn">
          <name>Sustained ASPA Churn</name>
          <t>This test evaluates the DUT under a sustained sequence of ASPA dataset changes.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> contain a predefined ASPA dataset and BGP route population.</t>
          <t>The RTR Cache/Emulator <bcp14>MUST</bcp14> support reproducible ASPA update sequences containing additions, replacements, and withdrawals.</t>
          <t>The update workload <bcp14>MUST</bcp14> conform to the applicable RTR protocol procedures and timing constraints.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Load the baseline ASPA dataset and BGP route population.</t>
            </li>
            <li>
              <t>Confirm the expected initial verification states.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Prepare an ASPA update sequence with a specified rate and duration.</t>
            </li>
            <li>
              <t>Start the update sequence using the applicable RTR protocol procedures.</t>
            </li>
            <li>
              <t>Record the rate of changes generated by the ASPA data source and the rate of changes delivered to the DUT.</t>
            </li>
            <li>
              <t>Monitor ASPA processing, route revalidation behavior, and resource utilization throughout the test.</t>
            </li>
            <li>
              <t>Stop generating new updates after the predefined test duration.</t>
            </li>
            <li>
              <t>Determine whether the DUT processes all delivered updates and reaches the expected final verification state.</t>
            </li>
            <li>
              <t>Record the time required to reach the final stable state.</t>
            </li>
            <li>
              <t>Restore the baseline conditions and repeat at different update rates.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate:</t>
          <ul spacing="normal">
            <li>
              <t>Repeated additions and withdrawals.</t>
            </li>
            <li>
              <t>Replacements of existing provider sets.</t>
            </li>
            <li>
              <t>Updates distributed across many CAS entries.</t>
            </li>
            <li>
              <t>Repeated updates affecting a small CAS population.</t>
            </li>
          </ul>
          <t>The ASPA dataset size <bcp14>SHOULD</bcp14> remain approximately stable when the objective is to isolate update-frequency effects.</t>
          <t>The tester <bcp14>MUST</bcp14> distinguish changes generated by the ASPA data source from RTR update transactions actually delivered to the DUT.</t>
          <t>Multiple source-side dataset changes may be represented by a smaller number of RTR update transactions. These quantities <bcp14>MUST NOT</bcp14> be treated as interchangeable.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Generated ASPA change rate.</t>
            </li>
            <li>
              <t>Delivered ASPA update rate.</t>
            </li>
            <li>
              <t>ASPA update processing latency, when observable.</t>
            </li>
            <li>
              <t>Route revalidation time, when observable.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Processing backlog, when observable.</t>
            </li>
            <li>
              <t>Time to reach the final stable state.</t>
            </li>
            <li>
              <t>Processing failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> characterize processing performance and resource utilization against the delivered ASPA update rate.</t>
          <t>The report <bcp14>MUST</bcp14> describe the update sequence, update types, test duration, and actual RTR transactions delivered.</t>
        </section>
        <section anchor="burst-aspa-updates">
          <name>Burst ASPA Updates</name>
          <t>This test evaluates the DUT when a large number of ASPA changes are delivered within a short interval.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Establish the baseline ASPA dataset and BGP route population.</t>
            </li>
            <li>
              <t>Confirm steady state.</t>
            </li>
            <li>
              <t>Prepare a controlled ASPA update transaction containing a specified number of changed CAS entries.</t>
            </li>
            <li>
              <t>Trigger the corresponding RTR update exchange.</t>
            </li>
            <li>
              <t>Record the RTR response timing.</t>
            </li>
            <li>
              <t>Measure ASPA update processing performance using the available observation points.</t>
            </li>
            <li>
              <t>Measure subsequent route revalidation behavior, when applicable.</t>
            </li>
            <li>
              <t>Record peak resource utilization.</t>
            </li>
            <li>
              <t>Verify that the DUT reaches the expected final state.</t>
            </li>
            <li>
              <t>Restore the baseline conditions and repeat with different burst sizes.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> distinguish between:</t>
          <ul spacing="normal">
            <li>
              <t>A single RTR response containing many ASPA changes.</t>
            </li>
            <li>
              <t>Multiple consecutive RTR update transactions.</t>
            </li>
          </ul>
          <t>These patterns <bcp14>MUST NOT</bcp14> be treated as equivalent.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Number of changed CAS entries.</t>
            </li>
            <li>
              <t>Number of affected provider authorizations.</t>
            </li>
            <li>
              <t>RTR update transfer time.</t>
            </li>
            <li>
              <t>ASPA update processing latency, when observable.</t>
            </li>
            <li>
              <t>Route revalidation time, when observable.</t>
            </li>
            <li>
              <t>Peak CPU and memory utilization.</t>
            </li>
            <li>
              <t>Processing failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>Results <bcp14>SHOULD</bcp14> be presented against update burst size.</t>
          <t>The report <bcp14>MUST</bcp14> identify whether the burst consists of one RTR transaction or multiple transactions.</t>
        </section>
        <section anchor="concurrent-aspa-and-bgp-updates">
          <name>Concurrent ASPA and BGP Updates</name>
          <t>This test evaluates DUT performance when ASPA information and BGP routing information change during overlapping intervals.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The tester <bcp14>MUST</bcp14> prepare independent, reproducible ASPA and BGP update sequences.</t>
          <t>The expected final ASPA dataset, verification results, and BGP routing states <bcp14>MUST</bcp14> be determined before testing.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Load the baseline ASPA dataset.</t>
            </li>
            <li>
              <t>Establish the baseline BGP route population.</t>
            </li>
            <li>
              <t>Confirm the expected initial verification and routing states.</t>
            </li>
            <li>
              <t>Prepare the ASPA update sequence.</t>
            </li>
            <li>
              <t>Prepare the BGP announcement and withdrawal sequence.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Start the two update sequences according to a predefined timing relationship.</t>
            </li>
            <li>
              <t>Record ASPA and BGP input events and corresponding observable processing behavior.</t>
            </li>
            <li>
              <t>Measure processing latency, throughput, and resource utilization during the test.</t>
            </li>
            <li>
              <t>Stop both update sequences after their specified durations.</t>
            </li>
            <li>
              <t>Determine whether the DUT reaches the expected final ASPA and BGP states.</t>
            </li>
            <li>
              <t>Restore the baseline conditions and repeat using different combinations of update rates.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate:</t>
          <ul spacing="normal">
            <li>
              <t>ASPA updates beginning before BGP updates.</t>
            </li>
            <li>
              <t>BGP updates beginning before ASPA updates.</t>
            </li>
            <li>
              <t>ASPA and BGP updates beginning within the same controlled interval.</t>
            </li>
          </ul>
          <t>The tester <bcp14>SHOULD</bcp14> also conduct corresponding ASPA-only and BGP-only tests using equivalent update sequences.</t>
          <t>These isolated measurements provide a baseline for evaluating the additional effects of concurrent workloads.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>ASPA update rate.</t>
            </li>
            <li>
              <t>BGP route announcement and withdrawal rates.</t>
            </li>
            <li>
              <t>ASPA processing latency, when observable.</t>
            </li>
            <li>
              <t>BGP route-processing throughput.</t>
            </li>
            <li>
              <t>Route revalidation time, when observable.</t>
            </li>
            <li>
              <t>BGP convergence time, when applicable.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Processing backlog and failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> identify the timing relationship between ASPA and BGP updates.</t>
          <t>Results <bcp14>SHOULD</bcp14> compare concurrent workload performance with the corresponding isolated workload measurements.</t>
        </section>
      </section>
      <section anchor="resource-utilization-1">
        <name>Resource Utilization</name>
        <t><strong>Objective:</strong></t>
        <t>Characterize the CPU and memory resources associated with enabling ASPA verification under different workload conditions.</t>
        <t>This test evaluates steady-state resource consumption and transient resource utilization during ASPA synchronization, verification, revalidation, and updates.</t>
        <t><strong>Test Conditions:</strong></t>
        <t>The Measurement System <bcp14>MUST</bcp14> provide resource-utilization measurements with a documented sampling interval.</t>
        <t>Where available, resource measurements <bcp14>SHOULD</bcp14> distinguish total system utilization from utilization of the processes responsible for BGP and ASPA processing.</t>
        <t><strong>Procedure:</strong></t>
        <ol spacing="normal" type="1"><li>
            <t>Configure the DUT with ASPA verification disabled.</t>
          </li>
          <li>
            <t>Establish a predefined BGP route population and reach steady state.</t>
          </li>
          <li>
            <t>Record baseline CPU and memory utilization.</t>
          </li>
          <li>
            <t>Enable ASPA verification and load the selected ASPA dataset.</t>
          </li>
          <li>
            <t>Establish an equivalent BGP workload and reach steady state.</t>
          </li>
          <li>
            <t>Record CPU and memory utilization with ASPA verification enabled.</t>
          </li>
          <li>
            <t>Execute the selected ASPA-related workloads, including:  </t>
            <ul spacing="normal">
              <li>
                <t>Initial ASPA synchronization.</t>
              </li>
              <li>
                <t>BGP-triggered AS_PATH verification.</t>
              </li>
              <li>
                <t>Incremental ASPA updates.</t>
              </li>
              <li>
                <t>ASPA-triggered route revalidation.</t>
              </li>
              <li>
                <t>Sustained ASPA churn.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Record resource utilization throughout each workload.</t>
          </li>
          <li>
            <t>Restore the initial conditions and repeat using different ASPA dataset sizes and BGP workload characteristics.</t>
          </li>
        </ol>
        <t>The tester <bcp14>SHOULD</bcp14> measure steady-state and transient resource utilization separately.</t>
        <t>For comparisons between ASPA-enabled and ASPA-disabled configurations, other relevant configuration parameters and the BGP workload <bcp14>MUST</bcp14> remain equivalent.</t>
        <t><strong>Measurements:</strong></t>
        <ul spacing="normal">
          <li>
            <t>Baseline CPU utilization.</t>
          </li>
          <li>
            <t>CPU utilization with ASPA verification enabled.</t>
          </li>
          <li>
            <t>Baseline memory consumption.</t>
          </li>
          <li>
            <t>Memory consumption with ASPA verification enabled.</t>
          </li>
          <li>
            <t>Peak CPU utilization.</t>
          </li>
          <li>
            <t>Peak memory consumption.</t>
          </li>
          <li>
            <t>Per-process resource utilization, when available.</t>
          </li>
        </ul>
        <t>The additional steady-state memory consumption <bcp14>MAY</bcp14> be calculated as:</t>
        <artwork><![CDATA[
Delta_M = M_ASPA - M_Baseline
]]></artwork>
        <t>where M_ASPA and M_Baseline are measured under equivalent BGP workload conditions.</t>
        <t>This difference characterizes the additional memory associated with the ASPA-enabled configuration. It <bcp14>MUST NOT</bcp14> be interpreted as the memory occupied exclusively by ASPA records.</t>
        <t><strong>Reporting:</strong></t>
        <t>The report <bcp14>MUST</bcp14> specify the measurement source, sampling interval, and scope of resource-utilization measurements.</t>
        <t>Results <bcp14>SHOULD</bcp14> include steady-state resource consumption, peak resource utilization, and changes associated with increasing ASPA dataset or BGP workload size.</t>
      </section>
      <section anchor="rtr-session-and-recovery-behavior">
        <name>RTR Session and Recovery Behavior</name>
        <t><strong>Objective:</strong></t>
        <t>Characterize ASPA verification behavior and recovery performance following RTR session interruptions, cache resets, and cache failover.</t>
        <t>Recovery behavior depends on the applicable RTR protocol procedures and timing parameters, including the Refresh, Retry, and Expire intervals.</t>
        <t>These tests <bcp14>MUST</bcp14> use recovery scenarios consistent with the applicable RTR protocol specification.</t>
        <section anchor="rtr-session-interruption-and-reconnection">
          <name>RTR Session Interruption and Reconnection</name>
          <t>This test evaluates DUT recovery following a temporary RTR session interruption.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The DUT <bcp14>MUST</bcp14> initially contain a predefined ASPA dataset and BGP route population.</t>
          <t>The RTR session <bcp14>MUST</bcp14> be established, and the expected verification states <bcp14>MUST</bcp14> be confirmed before the interruption.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Establish the RTR session and load the baseline ASPA dataset.</t>
            </li>
            <li>
              <t>Establish the baseline BGP route population.</t>
            </li>
            <li>
              <t>Confirm the expected verification states.</t>
            </li>
            <li>
              <t>Record the configured RTR timing parameters.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Trigger a controlled RTR session interruption.</t>
            </li>
            <li>
              <t>Record the interruption time.</t>
            </li>
            <li>
              <t>Observe whether previously received ASPA information remains available during the interruption.</t>
            </li>
            <li>
              <t>Restore RTR connectivity after a predefined interval.</t>
            </li>
            <li>
              <t>Measure the time required to re-establish the RTR session and complete any necessary synchronization.</t>
            </li>
            <li>
              <t>Determine when the expected verification and routing states have been restored.</t>
            </li>
            <li>
              <t>Record resource utilization and recovery failures.</t>
            </li>
            <li>
              <t>Restore the baseline conditions and repeat.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> distinguish interruptions shorter than the configured Expire Interval from interruptions that cause the previously received data to expire.</t>
          <t>The benchmark <bcp14>MUST</bcp14> account for the applicable RTR data-retention and expiration requirements.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>RTR session reconnection time.</t>
            </li>
            <li>
              <t>ASPA resynchronization time.</t>
            </li>
            <li>
              <t>Time to restore the expected verification state, when observable.</t>
            </li>
            <li>
              <t>Externally observable routing-state recovery time, when applicable.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Recovery failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> include the interruption duration, RTR timing parameters, and observed ASPA data-retention behavior.</t>
        </section>
        <section anchor="cache-reset-and-full-aspa-resynchronization">
          <name>Cache Reset and Full ASPA Resynchronization</name>
          <t>This test evaluates the DUT when the RTR cache cannot provide the requested incremental update and a full synchronization is required.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Establish a stable RTR session and load the baseline ASPA dataset.</t>
            </li>
            <li>
              <t>Establish the baseline BGP route population.</t>
            </li>
            <li>
              <t>Confirm the expected verification and routing states.</t>
            </li>
            <li>
              <t>Configure the RTR Cache/Emulator so that the DUT requests an incremental update that the cache cannot provide.</t>
            </li>
            <li>
              <t>Cause the cache to respond with a Cache Reset PDU according to the applicable RTR protocol procedures.</t>
            </li>
            <li>
              <t>Observe the DUT's recovery behavior and subsequent RTR exchanges.</t>
            </li>
            <li>
              <t>If the DUT proceeds with full synchronization, record the corresponding Reset Query, Cache Response, payload PDUs, and End of Data PDU.</t>
            </li>
            <li>
              <t>Measure the time required to complete the RTR synchronization.</t>
            </li>
            <li>
              <t>Determine when the expected ASPA verification and routing states have been restored, using the available observation mechanisms.</t>
            </li>
            <li>
              <t>Record resource utilization and recovery failures.</t>
            </li>
            <li>
              <t>Restore the baseline conditions and repeat.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> evaluate scenarios in which the restored ASPA dataset is unchanged and scenarios in which it differs from the original dataset.</t>
          <t>When the dataset changes, the expected verification-state transitions <bcp14>MUST</bcp14> be determined before testing.</t>
          <t>A Cache Reset PDU does not, by itself, imply immediate invalidation or removal of all previously received ASPA information. The DUT's handling of retained data and subsequent recovery <bcp14>MUST</bcp14> be interpreted according to the applicable RTR specification.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>Cache reset recovery time.</t>
            </li>
            <li>
              <t>Full RTR data transfer time.</t>
            </li>
            <li>
              <t>ASPA resynchronization time, when observable.</t>
            </li>
            <li>
              <t>Route revalidation time, when observable.</t>
            </li>
            <li>
              <t>BGP convergence time, when applicable.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Recovery failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> identify the triggering condition, RTR protocol exchanges, ASPA dataset characteristics, and observation points used to determine recovery completion.</t>
        </section>
        <section anchor="rtr-cache-failover">
          <name>RTR Cache Failover</name>
          <t>This optional test evaluates DUT behavior when ASPA information is obtained from an alternative RTR cache following the unavailability of a previously used cache.</t>
          <t><strong>Test Conditions:</strong></t>
          <t>The test environment <bcp14>MUST</bcp14> provide at least two RTR caches or emulators.</t>
          <t>The datasets and configurations of the caches <bcp14>MUST</bcp14> be documented.</t>
          <t>The DUT <bcp14>MUST</bcp14> support a cache configuration that allows the selected failover scenario to be exercised.</t>
          <t><strong>Procedure:</strong></t>
          <ol spacing="normal" type="1"><li>
              <t>Configure the DUT with multiple RTR caches according to its supported cache selection behavior.</t>
            </li>
            <li>
              <t>Establish the baseline ASPA dataset and BGP route population.</t>
            </li>
            <li>
              <t>Confirm the expected verification and routing states.</t>
            </li>
            <li>
              <t>Establish steady state.</t>
            </li>
            <li>
              <t>Trigger a controlled failure of the cache selected for the test.</t>
            </li>
            <li>
              <t>Observe the DUT's recovery behavior and RTR protocol exchanges.</t>
            </li>
            <li>
              <t>Determine whether and when the DUT begins obtaining ASPA information from an alternative cache.</t>
            </li>
            <li>
              <t>Measure the time required to restore the expected ASPA verification state, when observable.</t>
            </li>
            <li>
              <t>Record any associated route revalidation or BGP routing-state changes.</t>
            </li>
            <li>
              <t>Restore the baseline conditions and repeat.</t>
            </li>
          </ol>
          <t>The tester <bcp14>SHOULD</bcp14> distinguish between scenarios in which the caches contain equivalent ASPA datasets and scenarios in which their datasets differ.</t>
          <t>The test <bcp14>MUST</bcp14> account for the DUT's supported cache selection behavior and the applicable RTR protocol semantics.</t>
          <t><strong>Measurements:</strong></t>
          <ul spacing="normal">
            <li>
              <t>RTR recovery time.</t>
            </li>
            <li>
              <t>ASPA resynchronization time.</t>
            </li>
            <li>
              <t>Time to restore the expected verification state, when observable.</t>
            </li>
            <li>
              <t>Externally observable routing-state recovery time, when applicable.</t>
            </li>
            <li>
              <t>CPU and memory utilization.</t>
            </li>
            <li>
              <t>Recovery failures.</t>
            </li>
          </ul>
          <t><strong>Reporting:</strong></t>
          <t>The report <bcp14>MUST</bcp14> identify the cache configuration, dataset characteristics, relevant timing parameters, and observed recovery behavior.</t>
          <t>If the DUT does not support the selected cache failover scenario, the test <bcp14>MUST</bcp14> be reported as not applicable rather than as a performance failure.</t>
        </section>
      </section>
    </section>
    <section anchor="reporting-requirements">
      <name>Reporting Requirements</name>
      <t>Benchmarking results <bcp14>MUST</bcp14> be reported with sufficient information to support repeatability, reproducibility, and meaningful comparisons across different ASPA verification implementations.</t>
      <t>The benchmarking report <bcp14>MUST</bcp14> document the test environment, DUT configuration, workload characteristics, measurement methods, and results, as applicable to the tests performed.</t>
      <t>The following information <bcp14>SHOULD</bcp14> be included:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Test Environment:</strong> DUT hardware and software specifications, test topology, RTR Cache/Emulator, BGP Route Generator, and measurement tools.</t>
        </li>
        <li>
          <t><strong>DUT Configuration:</strong> ASPA verification settings, BGP neighbor relationships, verification directions, routing policies, and relevant RTR parameters.</t>
        </li>
        <li>
          <t><strong>ASPA Dataset Characteristics:</strong> ASPA record count, provider authorization count, provider-set cardinality distribution, ASPA coverage, and ASPA update characteristics.</t>
        </li>
        <li>
          <t><strong>BGP Workload Characteristics:</strong> BGP route count, unique AS_PATH count, AS_PATH length distribution, verification outcome distribution, and BGP update characteristics.</t>
        </li>
        <li>
          <t><strong>Measurement Methods:</strong> Measurement metrics, observation points, timing methods, and any limitations of the instrumentation. Measurements obtained through internal instrumentation <bcp14>MUST</bcp14> be distinguished from externally observable measurements.</t>
        </li>
        <li>
          <t><strong>Benchmark Results:</strong> Measured latency, throughput, convergence time, scalability, and resource utilization, as applicable. The number of test repetitions and relevant statistical information <bcp14>SHOULD</bcp14> also be reported.</t>
        </li>
        <li>
          <t><strong>Test Limitations:</strong> Unsuccessful tests, unexpected verification results, measurement limitations, and deviations from the specified procedures.</t>
        </li>
      </ul>
      <t>For benchmarks involving ASPA-triggered route revalidation, the report <bcp14>SHOULD</bcp14> additionally include the number of affected routes, the number of distinct affected AS_PATHs, and the corresponding verification-state transitions.</t>
      <t>Results from different implementations <bcp14>SHOULD</bcp14> be compared only when the relevant workload characteristics, measurement definitions, and test conditions are equivalent.</t>
      <t>The report <bcp14>SHOULD</bcp14> clearly identify any measurements that could not be obtained and distinguish them from unsuccessful test results.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document defines a benchmarking methodology for ASPA-based AS_PATH verification and does not introduce new protocols, verification algorithms, or routing security mechanisms. The security considerations associated with ASPA verification are discussed in <xref target="I-D.ietf-sidrops-aspa-verification"/>.</t>
      <t>The benchmarking procedures described in this document are intended for isolated laboratory environments, consistent with <xref target="RFC6815"/>. Tests involving large ASPA datasets, high BGP update rates, ASPA churn, or repeated RTR session interruptions may impose substantial processing and resource demands on routing devices. Such tests <bcp14>MUST NOT</bcp14> be conducted on production networks carrying live user traffic.</t>
      <t>Synthetic ASPA datasets and BGP routing information used during benchmarking <bcp14>MUST NOT</bcp14> be propagated into operational RPKI infrastructure or production routing systems. The test environment <bcp14>SHOULD</bcp14> be configured to prevent unintended interactions with external networks.
The routing policies applied to ASPA verification results may affect route selection and convergence behavior. These policies <bcp14>MUST</bcp14> be documented to ensure that benchmark results are interpreted correctly.</t>
      <t>This document focuses on performance characterization rather than the security effectiveness or protocol conformance of ASPA verification implementations. Benchmarking results alone do not establish the security properties of an implementation.</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="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <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="RFC4271">
          <front>
            <title>A Border Gateway Protocol 4 (BGP-4)</title>
            <author fullname="Y. Rekhter" initials="Y." role="editor" surname="Rekhter"/>
            <author fullname="T. Li" initials="T." role="editor" surname="Li"/>
            <author fullname="S. Hares" initials="S." role="editor" surname="Hares"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>This document discusses the Border Gateway Protocol (BGP), which is an inter-Autonomous System routing protocol.</t>
              <t>The primary function of a BGP speaking system is to exchange network reachability information with other BGP systems. This network reachability information includes information on the list of Autonomous Systems (ASes) that reachability information traverses. This information is sufficient for constructing a graph of AS connectivity for this reachability from which routing loops may be pruned, and, at the AS level, some policy decisions may be enforced.</t>
              <t>BGP-4 provides a set of mechanisms for supporting Classless Inter-Domain Routing (CIDR). These mechanisms include support for advertising a set of destinations as an IP prefix, and eliminating the concept of network "class" within BGP. BGP-4 also introduces mechanisms that allow aggregation of routes, including aggregation of AS paths.</t>
              <t>This document obsoletes RFC 1771. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4271"/>
          <seriesInfo name="DOI" value="10.17487/RFC4271"/>
        </reference>
        <reference anchor="RFC6793">
          <front>
            <title>BGP Support for Four-Octet Autonomous System (AS) Number Space</title>
            <author fullname="Q. Vohra" initials="Q." surname="Vohra"/>
            <author fullname="E. Chen" initials="E." surname="Chen"/>
            <date month="December" year="2012"/>
            <abstract>
              <t>The Autonomous System number is encoded as a two-octet entity in the base BGP specification. This document describes extensions to BGP to carry the Autonomous System numbers as four-octet entities. This document obsoletes RFC 4893 and updates RFC 4271. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6793"/>
          <seriesInfo name="DOI" value="10.17487/RFC6793"/>
        </reference>
        <reference anchor="RFC9234">
          <front>
            <title>Route Leak Prevention and Detection Using Roles in UPDATE and OPEN Messages</title>
            <author fullname="A. Azimov" initials="A." surname="Azimov"/>
            <author fullname="E. Bogomazov" initials="E." surname="Bogomazov"/>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <author fullname="K. Patel" initials="K." surname="Patel"/>
            <author fullname="K. Sriram" initials="K." surname="Sriram"/>
            <date month="May" year="2022"/>
            <abstract>
              <t>Route leaks are the propagation of BGP prefixes that violate assumptions of BGP topology relationships, e.g., announcing a route learned from one transit provider to another transit provider or a lateral (i.e., non-transit) peer or announcing a route learned from one lateral peer to another lateral peer or a transit provider. These are usually the result of misconfigured or absent BGP route filtering or lack of coordination between autonomous systems (ASes). Existing approaches to leak prevention rely on marking routes by operator configuration, with no check that the configuration corresponds to that of the External BGP (eBGP) neighbor, or enforcement of the two eBGP speakers agreeing on the peering relationship. This document enhances the BGP OPEN message to establish an agreement of the peering relationship on each eBGP session between autonomous systems in order to enforce appropriate configuration on both sides. Propagated routes are then marked according to the agreed relationship, allowing both prevention and detection of route leaks.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9234"/>
          <seriesInfo name="DOI" value="10.17487/RFC9234"/>
        </reference>
        <reference anchor="RFC1242">
          <front>
            <title>Benchmarking Terminology for Network Interconnection Devices</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="July" year="1991"/>
            <abstract>
              <t>This memo discusses and defines a number of terms that are used in describing performance benchmarking tests and the results of such tests. This memo provides information for the Internet community. It does not specify an Internet standard.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1242"/>
          <seriesInfo name="DOI" value="10.17487/RFC1242"/>
        </reference>
        <reference anchor="RFC4098">
          <front>
            <title>Terminology for Benchmarking BGP Device Convergence in the Control Plane</title>
            <author fullname="H. Berkowitz" initials="H." surname="Berkowitz"/>
            <author fullname="E. Davies" initials="E." role="editor" surname="Davies"/>
            <author fullname="S. Hares" initials="S." surname="Hares"/>
            <author fullname="P. Krishnaswamy" initials="P." surname="Krishnaswamy"/>
            <author fullname="M. Lepp" initials="M." surname="Lepp"/>
            <date month="June" year="2005"/>
            <abstract>
              <t>This document establishes terminology to standardize the description of benchmarking methodology for measuring eBGP convergence in the control plane of a single BGP device. Future documents will address iBGP convergence, the initiation of forwarding based on converged control plane information and multiple interacting BGP devices.This terminology is applicable to both IPv4 and IPv6. Illustrative examples of each version are included where relevant. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4098"/>
          <seriesInfo name="DOI" value="10.17487/RFC4098"/>
        </reference>
        <reference anchor="I-D.ietf-sidrops-aspa-profile">
          <front>
            <title>A Profile for Autonomous System Provider Authorization</title>
            <author fullname="Job Snijders" initials="J." surname="Snijders">
              <organization>BSD Software Development</organization>
            </author>
            <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="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="29" month="July" year="2026"/>
            <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 transit 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-29"/>
        </reference>
        <reference anchor="I-D.ietf-sidrops-aspa-verification">
          <front>
            <title>BGP AS_PATH Verification Based on Autonomous System Provider Authorization (ASPA) Objects</title>
            <author fullname="Alexander Azimov" initials="A." surname="Azimov">
              <organization>Yandex</organization>
            </author>
            <author fullname="Eugene Bogomazov" initials="E." surname="Bogomazov">
              <organization>Qrator Labs</organization>
            </author>
            <author fullname="Randy Bush" initials="R." surname="Bush">
              <organization>Internet Initiative Japan &amp; Arrcus, Inc.</organization>
            </author>
            <author fullname="Keyur Patel" initials="K." surname="Patel">
              <organization>Arrcus</organization>
            </author>
            <author fullname="Job Snijders" initials="J." surname="Snijders">
              <organization>BSD Software Development</organization>
            </author>
            <author fullname="Kotikalapudi Sriram" initials="K." surname="Sriram">
              <organization>USA National Institute of Standards and Technology</organization>
            </author>
            <date day="16" month="October" year="2026"/>
            <abstract>
              <t>   This document describes procedures that make use of Autonomous System
   Provider Authorization (ASPA) objects in the Resource Public Key
   Infrastructure (RPKI) to verify the Border Gateway Protocol (BGP)
   AS_PATH attribute of advertised routes.  This AS_PATH verification
   enhances routing security by adding means to detect and mitigate
   route leaks and AS_PATH manipulations.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-sidrops-aspa-verification-29"/>
        </reference>
        <reference anchor="I-D.ietf-sidrops-8210bis">
          <front>
            <title>The Resource Public Key Infrastructure (RPKI) to Router Protocol, Version 2</title>
            <author fullname="Randy Bush" initials="R." surname="Bush">
              <organization>Arrcus, DRL, &amp; IIJ Research</organization>
            </author>
            <author fullname="Rob Austein" initials="R." surname="Austein">
              <organization>Dragon Research Labs</organization>
            </author>
            <author fullname="Tom Harrison" initials="T." surname="Harrison">
              <organization>Asia Pacific Network Information Centre</organization>
            </author>
            <date day="13" month="August" year="2026"/>
            <abstract>
              <t>   In order to validate the origin Autonomous Systems (ASes) and
   Autonomous System relationships behind BGP announcements, routers
   need a simple but reliable mechanism to receive Resource Public Key
   Infrastructure (RFC6480) prefix origin data, Router Keys, and ASPA
   data from a trusted cache.  This document describes a protocol to
   deliver them.

   This document describes version 2 of the RPKI-Router protocol.
   [RFC6810] describes version 0, and [RFC8210] describes version 1.
   This document is compatible with both.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-sidrops-8210bis-27"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="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>
        <reference anchor="RFC6811">
          <front>
            <title>BGP Prefix Origin Validation</title>
            <author fullname="P. Mohapatra" initials="P." surname="Mohapatra"/>
            <author fullname="J. Scudder" initials="J." surname="Scudder"/>
            <author fullname="D. Ward" initials="D." surname="Ward"/>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <date month="January" year="2013"/>
            <abstract>
              <t>To help reduce well-known threats against BGP including prefix mis- announcing and monkey-in-the-middle attacks, one of the security requirements is the ability to validate the origination Autonomous System (AS) of BGP routes. More specifically, one needs to validate that the AS number claiming to originate an address prefix (as derived from the AS_PATH attribute of the BGP route) is in fact authorized by the prefix holder to do so. This document describes a simple validation mechanism to partially satisfy this requirement. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6811"/>
          <seriesInfo name="DOI" value="10.17487/RFC6811"/>
        </reference>
        <reference anchor="RFC6815">
          <front>
            <title>Applicability Statement for RFC 2544: Use on Production Networks Considered Harmful</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <author fullname="K. Dubray" initials="K." surname="Dubray"/>
            <author fullname="J. McQuaid" initials="J." surname="McQuaid"/>
            <author fullname="A. Morton" initials="A." surname="Morton"/>
            <date month="November" year="2012"/>
            <abstract>
              <t>The Benchmarking Methodology Working Group (BMWG) has been developing key performance metrics and laboratory test methods since 1990, and continues this work at present. The methods described in RFC 2544 are intended to generate traffic that overloads network device resources in order to assess their capacity. Overload of shared resources would likely be harmful to user traffic performance on a production network, and there are further negative consequences identified with production application of the methods. This memo clarifies the scope of RFC 2544 and other IETF BMWG benchmarking work for isolated test environments only, and it encourages new standards activity for measurement methods applicable outside that scope. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6815"/>
          <seriesInfo name="DOI" value="10.17487/RFC6815"/>
        </reference>
        <reference anchor="I-D.lg-bmwg-benchmarking-methodology-for-rov">
          <front>
            <title>Benchmarking Methodology for Route Origin Validation (ROV)</title>
            <author fullname="Libin Liu" initials="L." surname="Liu">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Nan Geng" initials="N." surname="Geng">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="21" month="July" year="2026"/>
            <abstract>
              <t>   This document defines a benchmarking methodology for routers that
   implement Route Origin Validation (ROV).  The methodology focuses on
   device-level behavior, including processing of validated Route Origin
   Authorization (ROA) payload (VRP) updates, the interaction between
   ROV and BGP, resource utilization, and the scalability of ROV under
   varying operational conditions.  The procedures described here follow
   the principles and constraints of the Benchmarking Methodology
   Working Group (BMWG) and are intended to produce repeatable and
   comparable results across implementations.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-lg-bmwg-benchmarking-methodology-for-rov-03"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+2963IcV3Yu+L+eIqc7HJagQlnUXYzTPkOBlJphUYIJUAqf
mQlFopAA0qqbK6tIwZLOs8yzzJOdva57rX3JKlBsT0fMyBFuoqoyc+e+rOu3
vnV6ejoZdu3q+qd2sV51j5vddt9N+s0W/zXsPvrwwy8//Ggyb3ePm351s54M
+6tlPwz9erW734TfP392+fWk3Xbt4+b7Tbdtd+GboQk3bF60q/a2W3ar3eTN
7ePmq/MXk8n1er5ql+Gy6217sztd9PvTq83ytB027enrbtvf9HO8w+lVt5rf
Ldvtz/3q9vTDDyeTXb9bhOu+Mp83L7rd3fp6vVjf3jc3623z5OL8SfODuc2k
vbradq8f0zf22smiXYVBdavJpN2Hu2wfT07DCw6Pm29nzbf9ftI0NNBv+6t+
xZ+st+GS/3G3Xt3e7tvVfB8+b6/W4Z3X2/vw9bzf3cMI+3+HB4S/1/vVbhs+
OrvrV234oFu2/eJxE956cfW//+ftfNFezbrr/WweRrFab5dhzK+7x+GHL78+
++jRoy/5n188+vwT/ucnH33+iP/52edffsz//PKjj+UHjz765CP57YdffvG4
acIfz0+fzvpud3M69Nfb9Wag+d5s1zf9Ap9X/oFdkOKvvvjo0YdX/RC+m8De
8C/w2SdffCj//OLRo/jPT+Vei9vTq+WbW7/Wy7imp+GWp9v168eTyWw2m0xO
T0+b9mrYbdv5bjJ5st+tV+vlej80F/fDrls25+G3/XUX9gGuaP+fOPLmPVj8
95sNfRv2ZvOyG9b77bxrzvdXi37e/Et33zxf3WzbcO/9fLffds17L8//5fn7
p1ft0F03y25+1676YYm7DKflHvbf7q5rvlpv4ZHftLvuTXsPY9it5+tF895X
35y/H/bdT+dPLv/atLvdtr/a77pmt26uu1033zXbNfy96Nqf6bzMu+2uDXsN
JnJo1jd68TI8e7Nf4NvMmsvw0HDQcLpX4R3wh+dPeKhyjV278MBNt7oO91w1
Qxe+aRfNTZjD9XaYhj0/X+yv5W2G/j87HEycCb5/c93u2qneP0wILEN4yrDr
5+E+7oFhrudhY2+78AXcDW7dr8KvwyXw/VW3e9N1K7rxfhNu3dEchEnDeYHx
rFWczCaXd/3QBOGxB3ES3uemX+FK2q3TLBNx0L1uF/sW74UPckPsl5sFCieW
WOEjefB197qfdwNNtb3psOnm4Q7hyfMg/rbrxSLMeBj6Dv6+7qPoi++PA1l2
7bDf6jhgJuknQY6ubqflRTNrPOW9soU36q/x+ynOVXhuuOi2wx8N8zZIlH4R
xBBN+1b2eXivBR8Heqv11b+HLRgOaxPmNWxJPhzhik0XRne1oF0wXy83YZ3h
T3oHnLFwxV27M1sg7Jldsivhal3AsN+uurv2dR/mQraTe9f9Cs7Q63aLxypO
Jh/6ZX99vegmkz+HUxqm/XqPu2gyuTx4/n79lYXm77/jm4YLbsLDWlz4Be3J
0+v1Es6dLP9GbhGGChc8hx+tut2s+ev6DRwfmvrrdVjd1XoXbnLXbcP9Fvc6
jSowcHJJYOC9QNeEn/agKuD+8kwVn7Cwyxa3c79rXu8Xq47mP9xHftwGsRf2
QXj8sJ/fNe3A2+Ou//d2zsLECBda8aNlHs0ZSO8wZ0Zohp8uuzfr7c+4pcPx
ga9w6IU5HLp52PC7+1nzEgfy/ba/DV//oNs3POz7H+RZQT2EZ3UreFF+ma2d
uTd34RCGRYYZXNOdcukfxPz7MKWtChHc3C3rAjip6zA1q6CU57Rf5+ttOCEb
2G247EGq/GIWOQwwLjIfPLowl+os5MIt1mEi5/CYnZXzftnw+ITnDd02nMA2
LNNt2O9LuL283sXs4Rru119HFT1M8S87VASw0Kww0hVrru6bdrFYv6Ehh5Hg
vMkshl05yK4AgwvE5Fd4ozAOmaRrOuJuU9t5q+gKluvX4cLqu9hLdc/YLfPH
lWttdN0v7TIML7596xZh29FNhrt+E54ZrOlbv1lILwThFVZ51ZF02XYgc4f9
YhcsTzwd03AqX9M/wjF7tfp5tX7DA2s3m3By8YXLY7SKHh5th6Q6l76Yd/1r
Ukg4MFhVODarrr+9CybtjIRrb8RtWXIvg8wNsmA9hOFdk9QOcjUqN6+Htt1/
7HtRIiWN+2q16H/u4OhNw6nvg3TbbMPB2PZBuLI67wY+qqd8VtwyTAtj5IUb
sjkZjCHSyZrhnsclmzXPYbMbrQZvG4/5VXjnm5uw28KWDacGrTA2Eea5gRQN
LdkRi251u7vjEc/XYJjdBjUu++t06IKSbbfhmjbqdG/Yhcmc0879er+FkS3D
wKZ6HlYdiT1ej+xY8kaAH92Fa27vcIpQOuzWpyi6t0FSX758P2rFwslkP+D3
32fB1Ql+VZjLfpU/DGavXQzr4Fn2t7csz61NA1ssrG2wE/ZDWHAdnAr0MI2b
9Q4UaBBR9zz7MKVsC4FNdroJrl2XbkFjKIFkHUoW4RCNQhJCyfYMCwD3GcKK
ghVKO1vtpaop2tM60Eo4o6lPtheZQca2NJZQc4G63tujd+v94lqEYDBRUD2T
2YXGPRy3DZrMr4NcwI/4PHbtdn7HIlMOFhlxcd5gR9517XXx5E9ptBg7wBcx
1mfwcJc9G9ZTY0h2idVtXz4ctvB3uw2HJUjjoH6D+UMrsg6SO7wByHY4S6vb
fT/cZQZn+GGYVxhq2AunvMNqDtHNdr0kLSzeU7ygZGq3KDuCjIs+Sdgfr9eL
oL6v+7ALwf6zU5f4A7Aui3WYyUQqhK347Bd6KfxNc9dGLXjAuwHzhM7isX40
nM8ni/AxHHS4HIaWn4PhDlZKFKY14mEVg+oKwhv1eb9tzNntV5s9fJH6fnaR
ktfnuUPtRjIV7lv09OD+pN3g4+rEiPhF8SAhoRHXGLVMODs3azF5gjcXTlPY
YSB3Xvz4jX9W0EareR/28IAa0g41OodtA5I77Kwwsi3K/sRHnJacxNRb/Tvw
Eu3M7gfv9uoYw7tG3102OiqAflgv0BpcaJQsyKrX/Xa9YjdyHTyYDRzwYx3P
dr5dD4M5c+pAeXd+1qD9QqYVfK+rGO6xpWDEqiSS/5gfy8uKPmA4vm1QFena
gqgMG3mxvsddUzCCgp/75+CuGUvp26BT98E2IKPs5+C5hXkOc/ynF68uLv80
pf9tvvse//3y2b++ev7y2VP498Vfn3z7rf5jwr+4+Ov3r759Gv8Vrzz7/sWL
Z989pYvDp437aPKnF0/+7U+0af70/fnl8++/e/Ltn2Cl/aGFCQ7zesUxn6DR
YRO0wyQ4kvPgMJFy/ers/P/5vx99EmTY/8bhzmDP0x8Q8Ax/BLdvRU9brxb3
/GdYoPtJsISDAoO7hIMebKRN0DaLAeV00IlvVg3IkzCRJ/8HzMz/9bj5b1fz
zaNP/pk/gBd2H8qcuQ9xzvJPsotpEgsfFR6js+k+T2baj/fJv7m/Zd7Nh//t
vy/ALzl99MV//+cJREku5mHL4sR9sw7zMiap4tFkKXlsRC09KCaYwRs5nkmR
aWMxyvYt3D8+5X6Uc5RU7AFZa+am4JWWdQJ78/1WrYpVwcI0tkBmuLFtiM5T
D1LMxbRg0AOuETqB/TBiPKLX0A0QyD+lF3gKiuE8vth5XIXHzYsoLSV+teuX
nRP0g/hh17ioLbsL79hRsB5Pv+rBZG+G+/CaQfyrsxZ+QoMNX3IcWJQSOkT3
NgrMU0ArZtM8fgqe8SYlf8JtMlBHq/l9VL80g/xOwX5JIpHVaLdz2YIj97pb
DInnBqH0NC6u/tpQcObCJAa11+l7OquUwmgvjWp/8FpDBLE7VWN/3NEyFtG8
7tJNyR8KrywiYbVfXnWoHdU15hvCqMiADweKJ5bf9bk7ZWfulLml/dd98ATM
jN00QdqT/1OO8tMgBhMSrPuFaS4kehQuTeE09rwf4ta8MB4Q7aOzKBHOVACk
O1TO3z+GOeKrw1KFSb9edHRA2sFZhWZ3HROLmtq3X0usSx2z1Xy/RVMK7y+G
HL1ttOfoDTWI/Cqaitk+PDt/ZU3JaZBnSzD9YKvsl5soYsMow25c7eqeu3qg
7TCs5z0ak2/63V01hRANw+hyGR+6Idl7C1pRZa+1W0jMXq6jGzDq86f60Ynx
wzmnTG0YQ9kPG8dE+lG8CtJS4FgYRwJ9Wo4HBMN5FcZxs194HwxN62Cbr0bM
aVHh6NynpjUPZ9Ru5sODqURzLI7I/jjHYiThmLkcOjCxwP8DpcWupTyXUWY4
S3fdYjPkQRO8bxY38TES6xAUUrHjiw73X7Y/y4jCqht3wEmUMeMmfw4PhGKR
WeQqhlFhnz4/f/0JDiT847Mw/+Eew04EtWoDOH2YMtjCi8Jcv9dhVm3oEAAy
TO3RwHN5rN0Gb5Y41rqHwys+xNEMspIdzWwTdiz9i+uCMSB9O4ktzPuCa69Z
IB0yPipoDd4HYX4xq8Z/hBmeb+83u/Xttt3c9fPGhzhxLJSBHXDa+pWaU7Ar
TE4OQtAUM9UxsBRYdW9K+m5xG7TA7m4JwT+7ZTW9Q3MS1ncFdp6Mpr1t+9Vg
clW7HaQS8VUgUYVuW8yQrsO7gv9wpZkfOwhOaMyaHzG20v2yIUOgaO2gt7gf
yD6JUhdnLI+baBQ6fKjLDL9CK3OAu4I5Qq/sLGxZTDa/a5vPBQcw0XkoiAE7
Eq6iVHAMK1yR0b/HV6csjWRSWOgMEN0nobcAEbXbBnOln0MAoLnstst+hcee
BryLH9B0ZW43WWwDpzaDWbNiZMMNpVkBGvT771POiX/45RfwBwro/dUQJB7c
AyNeZi9D8riDjBlaFPRidvvWLJApxxZLjh7mqQ56ejFpCXc6Uq5MJkkQOVHw
1+vNjiYIR9DrBJ3th13YjRAvbN47e3Lx/tTkWsNH5/jRBYX1zm36s3nvgr58
tYK3gz+a916d8ocCfqnaaXhS9I4fTJvvwjYyf8INvgtzvoNNbkJz+02QEV27
JLN6/WbFf9ZhOEHUdIsFh7KLBzZLQMK9OQM5xXUjSfRgN512cPQodril9OCj
5tDEGZstQ8NSEVRBENMqquzJDXd+ihouDBNm9xLkxXtPX12+/7h5kihBEGXD
+mb3Bp7LHu+DIhRv7iDL6YycaBdch1cRx8GqbDNZqRhSZz4oNhjuHPSdS7We
gmMFmnjO2xOc7cpWsvYN/wRPKwwoTMjxfvusedZCpongQeEsBHG322IaK7XC
27ivB8DHwCqLgwLRj25gtJA3v3DRr+51aArd9JuyZcxHS/sArcQFSktUlEN/
CxPLgkjm82U3X2/B29qvwqReOo9UvU95qZ682nbljAyeAPfmCOVEOY5x9u62
3QbvbBjE7zZub8SbyOTkE9fD+lfAHGbouzXERcovAOsHsmYMhKBrQBswe0+M
Q8G5C08Jt/oQtO6+k8x7H9TuHF1eRC4FHcE2btBTwerbxfebYo5zvdNpage7
N9wQzYufgjw9iwnudL3MVHqRW9iHKvNhbmbN16kzttlvAaSQBmlMeh3T01ed
c2twm0LEPqjefrlfAjbrF/5HEFNTDWogDAi1G3lU6VTz7jzjiBG9aRgJ5D74
wJvYCG9LDdSCz4kO2hzgJMaJx6NDq5VF7OC8vm77BfiC+YRMOfkutzX3BCnF
cofzpB2NSf31CBhMpdD8rgMEGotuNN/EUmfxoHqXwg/tYi7PFQGvYTUQ1HEK
wj0vWDx+ivNJIvpbBFGkW+fJxXfxaDOYI7HpYy65iziQbfsmgWdoOiqcJKsa
BLzxBlIN6AcFCxtF5vUeYTq7jkaB6qZbrmE+2zlIJ9QT66N9pVcrkjQgDt/0
g5mTaTrWfuV3PSzAQKuMjlL1PcKEBvsl2ID6+bgElV+R3UhhRi9rTNAp7oAX
kI3bCGBrwFSzQo/bpQFL4ZyqMAG81N6NL3EhTU5DwIL0e/RycEeTAa2KGlYa
/LRsRkCVuODy9+SpNE/NOS8dYBM8xQlwuz96QXR4EAbWtfNSKIvMsVE8GMuT
VxSluwSBTNBqMiTUeeZENP54S6pRYFoD6LHNop1TkhFvD9L0OswMhMeuO3BK
tiNWxOXL6I+FRQIZTPFMmGDIeYTXwxzsBk4HqQ0apcrDu/2W53LbMoxyE3zP
4JPDnSTyLE6HizzHYG31jRB6YV4JDP2o+qfhpOLus4LWZJspexnmHkYrwWyK
w5+rtKTB8zQfCKmTAakbobbwA783aVGULHTIeHJ1rC4gTAFbLg9IhLlufZXn
fm+Kl1L21GVUV4R6Q3/3ZsfwLX7sZFJKUFAKXlIORwG8jss7UAQP8WS4MIJG
KUUhJpOLXdde3zcXwX/q4Hz4qALcn1QoKbo4p+XAeRK7VvzsDk2luzZoAIhi
QPw7lfjh1cUfmG97MDHaaQTbOqChQ9tDMAGQjmP4MAoahBcLRtV+g2OMxUnN
sxixaH79M0zATwP87ncOdQ2sWSVDTzZfOeRRjnSPeU5lcAYuA44iwszTuJ9d
87Q+xIUAUUCVXUHB+DDUhDKsZnpFPlqsDS26zwrnGWABg4zgaCbxVe0U4rFk
D2YkgPnAwCUd5HV4ErwdHZK0PGXego2gyWncokkSoBDwB0gKzuhl0HgUlPqf
+t/kg9PSfx80+F9QE5PfTOb6G4qahj30m/t1+FGDrmjzbAlHbb19Hy7/rTH/
/Tb+KPrv9aQZ+S+7wQej9/wtvf63ME7YCSTvkpf5Z/45qMpDI4abFO5+1Njl
Hx+M/vzIu8afNS/WwTZfb6l88Yj/HjzV4493mcRDw6a548KI5uDPC4MxO/jX
xw1KxeBVb4IwgVrTv/xJT+6ON32MVLgg1J+CFP31V70cSo0Wiz3UKYrzHP2s
/FbubLv7sv7MLuWkiwYfjMpUgObjyeS0JhDffWxslqBT9FiQOcqD4rKx9YrS
GwfghJyBjh6GDRPamNgxOXBOXwfhcgZG6T+JiMHxoZmaIJMB7MS/oWGzOVyA
xhjzOMYAD4TYYDQFKVKYrohHJRSD5N5oOuTBMGGcjpIKKv6Fm+OkbImnxZ46
Ok/FZcPo5AAQk6xirWR4TWWPnaJpJOac15WnRlc6rcwLxndA0635/goLpmCW
AJecgpLZKCQRNqiGDHbmGi/EpLg1IBTLKV5NK1dTQRRONIB3YWNgIBAcgpsW
QoCAAEU3c9j3ggXgmj9N3ZZ0Hry81XHNiyf/hkhJU3mAdr/4UPJ21mhSSQAX
M0KsWYpvDa+46VJsf1TvUuOTBAvRGVYwSGZkkTQqaT6wKLQuEIPcN/vVXMTC
ExQ8Hb0o5g+usFSIDB/Zs4L56jCAEqaMLSxOiSH2E+7/piVjWpcOSgRoAjjs
YAA9dkPNcPYqBi1iQmERJNeHJpZJ2JkyTZecvbhfhU2wCwMctVbDWRTYKTwG
wgbtraTTLJhAEoOzuNbBUAN8NF4v1jm5cLwJppIlWTG0LFZ6kekXMfvouq3u
baVW/JrC8uwSUxrDHEe0AEHSnK1XN/3tnobsYMq06eE3OFjd0epXjbkIJgXr
Qn5H1gFSGlOg5LG4LXMbY/jCVNPZSAae3lwxyxYhbA2lhim6RlJajhmXRwqA
SfbpDE/BIOAb0ahyNynEOL3uB/pkbqeZtw9U2GJNBkx6eCAmbB0WArHSKJYs
tsrcSGUTLJP7ih5Bc38/Xj24WM8pYYBQGYhh2dJBk52mLUyiY0hL7zQsESN2
ktMMNzEpzbJLOdACdhxXtjaQfSu7+rKGEgPurgnuBXNxFwQLWj9B7uzgEtpS
YhOB5ieBhoaOxNUR64aAHoK4KerSGERu2G5w0SjRMBo/x4cYWBNBgK1dwqwN
0YDQWadYc7gMV2dxr4/C7EFmCsG1QQxA6LO5aZf9QtxHeVi+b1QdR/zHYVie
YkHg+u9xmWXTZ5XHtmo+j+9k5sEkKqRFWjzMpChBMjAUn9AYMiERtgR1BWJI
KXqjoiFRCbGU8RnMCMXreHUmbz9XtE+3HRbUW+wh+emkFfYIH8TEAAYN4CmY
quoWN3g4oOwVBFzPIYDXQexQKqgpoCQKykbSf3o8WZPNF+FNSD4HQ4WD0xiw
X7bXMInBUL5FzDvISAqkhFFJnSqWMeqkmCVOCpV8jCZYq+HYYo4xqLnw1oRl
40ApxS4x/0IxRo3klXUMzsGPsJprfbPKTpwqxwLWJMNr8v6VErhEUqOOjUtt
kF/q3dj1DZYSvkPUvKgnLJBIgkNVyB+VT17iaCgJE6ZPhB0tKYjJ8M7frVen
kOzAAtoy7FbFwJYQoPH8qG5ab6tnCTHmmNvIAunsxs6C8X4fhNTtLQJ8t8a8
NucfdUikTumcmRbld/hr3gJeEKqCqBadK9Zr5eiCKCaDJlroFxS68+Z5LyQj
WfwOh6KVXiu8Bgv2OAQ4bzeoHyBnRo4jq6ZD/u5g3ElYMoFUyI3BioYXbk15
HcIhal5sGwZAB5neTLxass3jd+rtcoBQIHlqoVOMtL0nS4MqGVh6huPDZQZi
OwJoPSZ5R7CQnoOjBOzgSUhnmMwVNvn0vJ8/fdWQwk9rPIZw3lZUdDqKXzK1
7NaN06US68YFwHEwGPr3RT9VDgDGmR+Ep7DBUQKD1DAgeI1eVUU7WNTCTH/O
iAEP1rY2FIWtOrS+OrJkS8l+O/BxhEosTpGsqMtEFY0/Y1TkB8TuC6k78qUT
vghJyiDkZBZKkmZBYWYfipYk75sgMlq9oTwzCtOl7GtMUYZX5MJvi6FKkpbx
R/YeeHRXUq9BD6Lii61NgNIA4c1ahdKBeNh17pHstqd0OGF7HQXvNuflHEyK
MEHL9bWuFQYpwZQIz9uTKGZMFAOfWwO0sk6yxRO0g6v+titEYFTDFPY1Blno
85j7JRsn2yeEyyi/PY/JJfBG/MYoYIrbktUoJvv0uFDNHe+9kkiwQDWxEwjV
wtFRm1MvXF8OjQ6OtkRvFm/AIT7YiTdbir9GaZA/eYhXOixUuEK53dIck5dx
/rnhOpjZYOyZbcRRQ4QSmHCuuCtoYmz3XF0EB0XiIVznJFiEDpx1dSFgt9AY
T42usKbnVLEOfiULhetx+IU5wlHwtYzEgGK9YdcuN1Qkrv6ebikaqKeOiUqY
bs9knHj7Zyvk6qAC0aevVHfyuec1seaKGWGsMLAWtnoBlExkfwdoKkSYXGMN
Ns5/Sv2TeDwRL5Bndym8GUkgLLaHYl+G+wOGjyO/6bb25TBsF8kT+KSqkDc4
95wpgby7HQYqaN7Jp6GtcC1TWYrpJjviag15Co0MquWQhuNTMgzEEsqPHQLP
hggLE/f8xv0C370nS2VK1Cy4c6cWYQx7LwYEvcTO7WwAUeQvVPFTda3jSoT7
dwuFmdQkqGWHmqnRZ+X1Vc2y3t1ZqGBSvKg2avAW1stS8XpYst0irOf8Z+J8
YpRnWNIBlCc+kG8ai34IshT9I8scwlgZLgCBR8KxcZVwW+DY7Nih5wAr+MCX
HPL+Jj4oj7KW4vCFGdIhoVxaYZ4PGKKabjyV1F6Hed31BJR7SDIp8nclaNOU
zIvvJNSFxOjFvqdy4HVSae2Mbd4mQ1KDZUjdslyhhuyVnvOojOH4VMt59wHH
LCcbo3aPM/0s8+wgUCVFXimcfhlMxFF86ohqlrJs0czFB1zeHQNYi7/FI2Gx
kM5AHVJEXtHksHC3WIpsqnfHdrxml035vhIukn8xUuVSjscR7KqGvJu+HaqX
1MkY4g4PMETXKTSHs6miOWL6WNTkNixehsAxRlxZ8KG8WxRf4uhjfMeY2xhm
C5LRlbi8MwbH2fgZw4Shevlc5xfmBXXsA2ugwNh1AjGXf0EzhYFuwWYpxdHL
ceHZ5BudOt1xJCHCjwZhfo1KLxxVlGFDv4uIZ0bOc0yX0cMSwoXIWru97TDd
BCBS+nXGmYZh8vVAOTBcOsq0BmObXUB5HCeUdgx7tAJf3vIfAevw3TQMYt5t
optoXgT35Ckl5cMhBMM8OaGJaXQTdPnpOmzAXcxX6IkF5O/dULEkaNRIipBU
bCbpQmZGx6qzrzVJR2RtltJjs8UNrqUQiVRJqeZsYYCiaAti19Y2jUSgD02U
S+YfAMu72j6rrQsyncXA7s26ykkXs+FeBkTVj+m5LATbpjhPjMduO/iuKFZR
zIjXEJY+uvzi8pFqWvqigVmqBZKpiz6m4bFgULkLwQHxSAxMHK2tLsiF6Lkk
Xj3cHYEPZJK26lF/td8yWCvRZqeM37fbU1+2opDlikh9ySuOKo6o+9INctiU
GbEaW0QzA79lON/IMyXZEqG9JFS48ddY51SO30GyxcJp1Mw3OoYyEAutZwvf
OjIM+01R3egakRdaOYRO6cRooWY+9ByEbb0I4rBnAlKlU8ygazeFmTBgG5+I
wcpL4M62o+uuTZrfwn7GqBxmiRWpEPstGRYuAXyfpYzCC4DxuusW9+lMFXYN
+0q5N2aOIZqHD/bGjI0Pz0Pu9Gi3kGxB8W/llZhFbDNISgXdLAt4w6lDDaSC
iw5Ljoobx8BV0G5laNxRGDgLxjHMEwSpEOqzOEiC0rvMFAPfSPese7jnsAfv
su+ojM9xRAixTFw6sJhgo+jTZ5OnojaFYg3GM/XjlkpKmq5OScMoxHneBmMS
khEb8sg43CeAKbHKPAKQZtVmIoJttPaFxHQFg15jWhF8Xm1FEzF8BgiRo/74
ywTeYReKqtMEivHcab7IAt37nSXlgqYwU2le4kJS/Ti5wvkCFrKgeqDNOpH0
pX2axzMLm5tPFKpysGyWHCXCCKVEYSBqYQXiPFjJP4u7HXdW8IiCPzy/V6NR
/Y5SfVVQFZiM90yfW7uB0OSKml1pbfD5eUZHHo8RJ30HOHCLvYMCCX0ZiFcY
gtajAhNskO2YBIUbzHLWEFfmX6wmLQVF/UsCgKqIU03Adycnz+VehvnPrOJw
cvKYYVbuCY6kyTAWGtqZcHIiysFDKZBOrliE4p0BH+4vRXcvIUFPgnyBlV8Y
w4no2eSgRAoDPt7etMQZeRYn7vs4cQ+dE92EumpmFWIrkG0i3yU0b+cNgYeb
XWxC8er86ZPLZxRRS6PPqapAKuhDO4EhDqT5ywCH67Bt7+Fl7tdFdmeCCNmc
ghlpUPex/knRS0q9r3rOIHqmLCCHAUq2o6qe2Xi+HoR8PJaSsXwUyMs0ryiX
JOlCslnCWhh4ZHKMfkTpS9iFEQBWa0W0gka5VCIqkEOilMUX/GoprSkU8bga
qbi0tYRXWJYO0h3sVZSTPH7XLy3Xj2DmrvQtIsiLodgi56PD4pfcJOSTtciM
nCzRkwTKymWZCAQz+s04nmDCKcLMP9KdBksRwpOSVvaV/XClyZpB8oTOLgMR
CrPKfBdkf66IB4xH7oJiccuke8QH5or7PzO+W7d+7l3DMnfbrahFSOCuhJ8J
5RJr/4MG5qENzHnK1ArCky7+rsRqgsO5WZBRTAJVzg2Y+hrGnGXGjoMc0sLf
iwfrbzj11i7ntNBHN/2BkMLE0BEwbmagF7MzAalf++dN5CBSLNxs8sIZZgpQ
4xlCXhDsmTaKNhNbGY1UwL+l6i7Fu0Zz34FC06ScVGU+J5yLRbRQ0TNXzkTy
0aBlnKEo94WEC+0mW6WsvL10DnxlaWauxVQ4mrV13gqGHRhYiI5nmmRPev9m
sdVNdAAh5PZ4Mnk009qELto1CWws0kamcZAM50EarhNgr8NefzRrnilVneID
upiJp/y8DVZ45p1m8jEPd7uMqXW8S2LLCiNzknLHVCpf5hM0NQ6YBFj4SfoK
KgFdatBmAzv/RmlhPNz108JbHUF4gO5woZDeKb9w+8+ggYUgaJCPYk1fh6uw
xp82Kvv+tHfU/aeIOsrHcKvPZ8IVpS804u2VCytM0CYFp38x40PJvrVu8Ogb
eu5W9QSTHa/ZMFDa5AFlxScxSxDrUCzyLaPdDpbJNSg3QCtoDTv0FAkbUJi3
YUBfY5YaBQmLAHhqekZNdXk8lZT76KXG4rJ2FnBj4zpbx9JkFMvbcuvy7bP8
GSXqBjgPgwqog9nNY3flKTD0RRUMT+a5zB1TCu1R2Ros/i0E4IRcWSglDgaG
HsoyoZtLDECqJkMiUZR1do3lIjlGqBxWFAs2AYYnqRIhSxwUSZ/YVLIZzUbB
NyBTCpZeNsuMDRdQJD5awLuuhOg8iqejUvCEFtcQFABmMpgEyhRX2Lh24ZwF
mbwnqPhrT1y9lXioCdzGajAfTCjbQIDLAZeDjWNNOtl8VzqtyAJSa5GcUX3c
aFO0gzzWY6V7pj5S+7g9t10mVPhaJtda+kn8SRcOw7CkxQqvrzAdUO8aE9lf
GJJC24OhJTbdcOj1tHvcA/r+HeohR4FqsQrTBJzkt7PMhQCoSiworolSGS8z
X6OQwJPF2otdpAEOFrRvGiMjSfjwR9nXs3YXY5yYsiOpoE8rIJKQd5kK7jOy
gsmOW4DxgfG8lo3dYC1k9zGxP2bnrbXvkL1l5Fb09iq1xK7HDbFCMNXO77Mx
m3iqNg3D6jBBY4V5ycTxRVIgfCnn8xAxWS9QrFAdafVWyScpuRfOryMM2L0W
pIUfY7RViVQpbfdz12FiLbG6oh1uSqcoqH4DfRJQt1M0WTKp5hIs5QzPhdns
4QfBdEMqKtPPbN8J2Niea63/jTpAK6uqic5K8scZxZl/F5E9PqHFwQzYIeOL
P3TZTUuYindYfs1nXEMiRRvfFGIynEhIx4vzccjZjLkBaR9QIAyXsmtH8QUz
qFhnOmf1UNx6603AYpAq7JZaLHLYz8EmgCYMmU8/mzhVzRMk4V1UAVrjpclf
gVJCuwTrQR/oPsrq8coZJHqz2BQm60apx8jnq6N0p5hqRAUlucC47GrVVcpf
tb6w1JPtQHwljUDWW8JwBar6CbYdBi4iBEZHC+xlP/jCzwwnhQsiPoG3PGlm
Y1CdpWbCS1eYuXAQFh3k93cdJ+eyFH/46U5sLGtFkbg1bf/AvgyGbtyfaPZm
ZaMuAJacZc1EGNjcsF+ieEe2ct58NklCvLnL7rqH/8X2oe32Olq6TEkvwZew
IQHJ1i+I2RNTRppmxBBhl8TrTViM2+9wjh/aO9lA2OXdEWRr6KjdLNAF12RU
wWBLbbUp+1XSW53RPwLmiczwGN3kCozYjfgA9Z1vilW360XXonFnFSHKVKMd
itAuBJbZg814BE9SheRwppQWDNULDIliFJInIC+lLLKU90POv7y7q5VEaUFB
PP2Viidi9dhFHmcfwTAzkx4A03jtbbjF031Brv7fnPrbP+YBRNt1zvKOSdEl
ljB0pWmzifCIDfQltFyS6LCM5QVGX4liXlAVjMcSjSGeWb4qY+Gul75xgaBu
QjOWF54cls5PmeUa1kkKpYPdwBjQFljXoPb2vPkLyMH3frv4qf/t/Sn1EQmf
PZo2s9ls2ryYTEiWhe/DeQ12CJ9X5pHVxS4sDFXfwh1htD2qHdO0LKdzB/Za
FilU0WheGftq4k8NXb+ljkCbh0l8OJwLj4WY3WpdIoK3aao26c1OEjY8zNHD
s0KWJS9vJIx+2J0Ric9XOTmw5z5nqodSfylso+ZSo6zZLPw3ojm0Fdu4SKr+
sFaOuem29mQdV7RtmRkiFIj8U1W+EB1KlJUo4zFKe1LP7A1poWSdmgLtZ8pc
mdfMG9iPz1vi6lUBypqdxMozqBu6zgKcnOF+eD0dQ5x2WOuGUISIwJS7WeIv
fYJPSFGKP5ypeR/bWeHZFsGTvFQfA1xep0rPAGalUnZ8qycHm3/W4v0jOoVo
OT93M1fiJt/5RGNMvBMqrRX8APtYDkK66TXmoI5pa5D1H7C2U5N1zvTNwxz5
FA75W6g3+OlHFrVFSYvlCJqFlUVkm1WoJoOhebtn6NqBDgjiBcR3dWzbla6g
ZrRPC6M9U9l/RM8HmQVtQVFdHdVbZz/hb/7SvPcbTBeapgNCZX56+lvzTw18
+tv7zUnz6MMP/2HCHbYLHSTg4jLJDYHslAQtBgz94KihapxEsBB0E04sF4LJ
u7AZWRyRuud4ErFeUX6vDw2CiXLBBhRSbo/RLTcgzbIJBb+Op1RCAkk4AEIO
0aKeOZnFAkR9cfW8i3OTOsnQCLVGDqRAnVjolIiKqoQIcyFctnB+01GIB/jh
P0ybjz4N/+9T+Nfn8C+YAtgnM6b94iuY75LIBktYYiZ+CU9juJMr6fPV1Dbg
nPTijSn8XphmqJsBHSKzOMrXMpucwTypkaD3BJHgqKbGaPKlE2/nYfi2tD21
VccqEkfigxylps2lGGA/E7NjjD+0Zwc0y1ZGgJjLbrDygW8sAh/TPDbwBeV3
OQZPeDNiA6EMHirqzrZ0SfzHtNMJmZDk3npdWnbkXZvQ6IzW9AiZCJ1szLPv
X5y/fHZx8ezpT1p1RTko8lGRSISDQrVGMKaZjivLKZIe2NROXpHGJuljLQI+
rhsOPIEyYGj46ChOg5GRVbKN3IrEOmaEsRHEyEvbhDn2wDkADSq1tMkmxqzT
Ub1tjhGy9RLqUjzStYavcrKhrQT5w80C2Rf0CVjuJrcPs/rRtPlk2nwxbR59
Rqf/449o+qy0bB1hNpP6kYFO7rgkLwD6YoW29cmWEG+DpBULVwlCmspInvhw
WgH0+FoNdz+DWpJlcgvOtcpC0GWbJ2+Efsrlz05KJikepDCUmDCCHuKMFkJv
D0jdmgPKaGuO/hVEBQahZ4eFScmbRNqd0y3UJRA+HAqY6W/tqopic2TEci97
/kC7Oey15+VKQ7dRg9YfpNWTxTySqQeu1ro+yH2sVej6/ZeWDSf2QN7Ii0gk
KW0zZ+bjrPMTRlLb2Ef1uF7k9Bhfvup4GXiTlsMa8e0HslNKYoJ22fYQ34M7
NHkw05T+xVUjXC5q4Epc8pzXv0SMHJEwx+7WnD7OwCVc/CO5ndCKP5xlQKDs
MMhtB+b8gHJErKvHJlj6wYwQXbvsE9+FlTm+XPM/4BZZM1RckRUKckygIYl4
ybxu7pCsUW6zFxUKw0DapDhmzKiwQAxzlHC6fVDcT77IALI5vt5DZOSJadAI
h/Ax/Y/xUMmLirxWIx7ztgvSehUnXd9bWevK4iWuLZrRHPmOMuFFT3NmFk8H
aqzh4pgwIMAD8+s/DQu9ozJwhALAEsfdXKQT4fXMBvhqZcK8L+2Rebthuv7B
Y6MU7t7aKLXvdNi7V8CTp/zz1dAcMXFwZp14DrN9LefhLblCamogqjiX7Zfz
iLJ1yXuhNXuByFftGiRmwdZmyBKbjnk6wEyLb3vTb5GCg7e93zgQX3RrJGwv
raUuiKPOpIaHx8gByTVGjLpwmEElU3QlBapk43M4aXCbMBtOmRW3niziVcZy
UmFzrzAyUzkQmQggF++6xSZHARiblJnsEsoJiC8eYccQcf0WaFXQmeaVwYr/
PUCnOOr91/Wb4EQzscoNuk0loh6mqnlDhXd5r0knxUZ5qSdPpPHHkbvGut/B
MNkvO8el6jrj1l+giDSKXh5uh9j2gmwF1yPzqZjzOLWljpkl20EAf2bfWyqh
JDhU7UcQGz5w6yJMwuwGR5AvFfMPK+F9zKQbvHntOz9unlADAixCIGYFbWhI
+SoOGyPVyXmH+THu0JacFSpGuSAiHeSgvjidLxDjQLQ6VNkeT9HDBiK7ZkjT
JKk3fBSjUmSFiIUWRLptgxZFUpORsPflnWPoL1IteQbBNAAXLYIS9/nXYvk6
fygB4x3g5E/Cb29B+4WvWbTynCHp2zD6NrO8wtV+stw9djJ5+pf3Nj/9+n8u
w+HdLn9F4+j336fmI9b//kM2XX7//X1OUj9u8rt8ULrLB6W7/OVRacOJ9xk3
y/V6ycjkKwdrq9BnRMKjJaT/zI2MrRRzL3EGh4PxVuXgO26p6i6WpJ8IICfm
AO244q1qVHyOl6bMzxI9SaqWfgPHB1OWCc03KBHgayUsYKtT4gLeMQinQn88
fAO9LOHUll9r2zlK2TA3ffdaqnBs0ham0vWuvCvx3yBIaDwQMRqN0dyM9gIH
KBwZki1SbDBdINaKsfKWFASdwRY9MBj1tU+O/plJPF8ymxTsK9dWO3YOZgRa
DK0aOiORcyMEkNQdnTdAnBtTpzhJu22DXVVmiJIWqZSBj4cJEx9MIN42C6Cg
GyWlHNew1TA2lGIh3ikC1DElwZRXfgbNN9+lzEZCkcaNtU2A+7vSqL/L2pbD
xLgFpchq6ubknrulPbb9gCJxawVfmPRaTdyLEU4100cZbMt9PSG1jcFaXP7r
jGlNO7WwSxqjZEcureKp4b7kIyLOBLr0LSMIT+3pLB55ZQ4ZKTWlSoeuJiaX
KaEyiqcJ5jwPZ/ug4r6wiTismCDtzDEsAE2yQPQZtqwZOqgheDM6hGRzOzQM
BvVyVGlVFYwOKRWp0tRLyuSVqxDnZAWZGN8mnLwWCDaut+U4aYSncAv6Mz/4
ieFBo+OCzGz3x2BShB9sLslYAYBIAyJCoS8AY7zedo4B6iEmPoUCLWFbhNUy
6pMTDI+DqbCL3QDJ8zQoBDw/rT2RwfeO6WYp79TODI+bF5anjv2tcneGNNqM
6DxuCqH3/lFJCh+H5yzXQL9Aoyw1kODh8tUwYylhtnSOwEZoD+p7oGZ2ToGf
lQ2XYV0ekGxz3I8TSS6gkqyXwHeHGyAgLSq6F5qVtNc5iImQQuIFwge5snyM
jkcfMIXVL7WfArt04/0SkjcrpOzAarvbb1ee36V06ndxndFkMJlTM4/apqTQ
syOLADHF3Xob9y5sjVKHCFakXJEw1GADCDmiG7epLEudVSqQ8RUwcQJXUNi/
m991ziWI6V4avNQbx4JQLdlQKTKU0k9oixt5knN768kTsRVHgRkQjQ/y+SLq
yq5EnpXzgYuyRjLgcTwK00sdQyr+wPvxmv7HHs7/LsFrG1pYK2IBNM0cJwbf
ZIsilkdbrbQ7tJdJVu1f8NljPG78JYXVFMKeCHHY3TlVMYumfkUBKuFqKlt1
NEwa1rKjwMFJiANT9FpDOdJYqxBAw/SH2K+G4GNcD8bYOaJSvVg2fPWJUCSO
04MEuYZPTGjBIhmuOEama5G/iflt0Wbnnap93rBECEyZHRZElcVqmXRkCZF1
oayz3PvI2ItynPHcYTZO2+0WEE2GtVCCad529K9e8uV0YePSoQmzRgHJl5Vx
8BlJoU0KUquqQxITzexwYk91513B696XNivLR1P6x02nHKurIQVhwslqqBaI
p4Udlzql6otqtCa2/pDnSBdo5Z9VY0GITlOW3ogsQuotBojGfjueBVVAgJ1W
ZCFCIaHxNS0Df5TDXDz1WbWVyXRJ3fqns4+kgETLMqkXVJbOYo6XoBfhfQxg
A2as4leGObQUxsB91QI0js2p2KLOd+nAcnwNi2iJ64DE7SbrF6YFCNQ68QSA
ZSrc3aUEZI7CpPDXZTxe3J7lxtDG9asQOpMzNNiElzkElI2DQuPgUQ6+pD5j
VzDQjyq90MxFakgvraxAqrVKKSVLR9WQWE2m/nTbOQRNliErecrrm8c1kB+D
S2KNm4QAkwKypJIjqWIrIwXEBn5Qkwa66IdDYdehHhrSGt1OwkFF09nzj+lh
HYW6+axYPQlu45MQ8BwUcILQckFjA4/JylTR+Sgpxw3Qdo+yhItpJV1XpWHI
HHTMKtl+V+Z8WgONJITti5UfVOIgIC4bUklZJYIizvXIFgmZ5OgyK1MeDVaK
svFzW7y5UIAT27wYfs6KKzm/SY7Cd+yihbPtZHKkR0YbGQ7ys1+4VplvSyfy
ByItWEsqgsmkGZcRPjeQFklQVD9199A78w+yO5vPpSlEHK8jjpCYXLlp9pFR
95JdUmwwkdhK4pv6Hpr+N+oBRLk8HQuh6++N3+MjaD/W4JJiQUFNOmUl2OGc
RtRJ2wxLSLH4QjflSmXnB3IOdqwq3Yr3NCJD/SNXPkd3NfjH5DA8VJdYkZDE
tgu98xxNUIolgBaomevAEuosWpYsp4xYMl+mdqk1Gka6YleEU1pOnwsuKXW3
LR4MXXm+lyXaYvuUlmxl7QlBN6lHw3KhbirRTRwn+lzZh0+TnmTGjLc5jtPm
csRqL7xEFmUTW8h0FUWryT/lWdHUKZDsRY87qliOL5HTdZa/SPmkRg42Mzna
dkjEOvo/g1YbSXFaYbokPVJgZcnNhoRIZHQ3PIDzxECFLYeRaRuCJ+sl0zja
A6WfHXWOVMPHTVrruApM/LHBKoUEyXKxBNPydO6/OqrsSauVGSMfqPD9c2el
WRip+kb8jYcUjjsftLvyq0xdBIpy09zDTmVJuKhHJrFck2lQpE8m5WRksaCL
H6kTgsENy82VxPjZm7c5ZZ28EsmPbYaNrQMsZR/TLBYAN0qZUu+VYqU1OWHc
yIWoATGlbwY0Roliqfj4cul1n2vAI3K1IOjoRsW+tW5+HYE10q/inpyKfOsR
UI+fpN0/KH7n6HiGWIJGcU2l2UcqlYRieoRYgUJPejMhvC/T8R/qiWB9j4uE
/zQoGqljT6lRcb/kNe1+G0lBsPrmuPcb7umJPMno1+Xkd6m6zfjE3LQ8nsD2
xza/l9JnGMb+mMn1mOHcRrYkPCj9PzHqcP70lXwgjYSZY5caWTemp3ICd3d6
27LHJ02euRxamHeemIYcdsQY8ouxZZdv9CJE5BS2Z+qs+CCygCzSFAYEjDTP
pN1EadFHJi7Syz50prAhTuWd0o5f/i2SUFk269wi+yHdsdNb+JYXSbmYVGf4
Ptywy3C/H9HYAunxcN47mffSiWKjxqtPs0ViPwNCdOlRF0JKq5+ZphbrhhNp
Nkiw0UDBdcbzJkZczVSivbXpSt8sCHXL4GwQtRiWJEXFBqEtE5uRGIMkiq/I
oZVHS0yTnW+pQYOPkhS6kRwju0T39wWnBPEsGOgiCw8Fm2564S0y9lQtw25n
jVrxxX4jXpSYZK1OGqqlgcQZlUr4pJK9e9h65t615j8VSWLPICI6bU9bbgEh
LHAlRVgwk3w6Nk1Fy/GagS+SnJ3qssKPz9fD7lRvkf+GgT+J46saM583l59P
UEC7+01nEJm6YXD3R2qTuOjKVoGikRH1hTXQLsGJAiHmGdIA+ZkHkDMEVUnz
tpEv3rNeUukB/QJiH2aSeAuyUyezGIVlYtJE1HjSMCkJOYw0KySjJnafL62q
Ixxw4WY578VsxEMOuzFUYucf9R9KZRjaOArfd8bIYdMji1VKatpZ/TYtD5gL
yVW3MrPNAY0stabeHhmJ8+mL8xtgVY/TE7lR7GVS1giMFUat81Fckqw1T9bz
iAdSMWyTGvRFTAsXmk9xqXBJ1mpk1FuEivewncG8UYPyFBvrSKDbDI/QyGxx
kOfIl9PpAE42bkpQBzjoe7ETdXlXmw3dGbblGDZL5Jx+rVdYnKtpE07vvsN/
RX4v3zfDamFjGPW7qhFE75Z2qCvvS9PnKVcXbH7I/vGV05YzAQ2e9vZ2291i
hoQyZKz5jqIjTaqlLsnB2ux3E/f5Tj8vCBhK11tjF7aNdiqySckxyEjezD4S
K5G8UTHjix9koZQtxr5lInXMi7Dg0RXs06rY2JNwg5BHIMCdTb6XBH41snZc
r7g4EoFWly4z481bTnhUZJIUGdbmHFqi9I5Po2bR6RDLoaRQZ9GKcbqCyfkk
kikeuMV8JOXW3OgiHMk9xRXFM3bvIiDbMOdSSHHVzsN3t83tdv0Gyz8TemCK
tiW8F5lZkxhhJUSMXecSImjQXX2d/PZphgOq/fK5c78O7zi24eh11Grz6DYr
kZhnzqIV79O2HqljAyvEt8MOMER8H1WyBgBMtwEKTMU9YRbELgWFfHEmXZIX
Ay4vc+vp6GhLKdJoJI0CJHaI0x9tZ2iYBRwmsDhtpjlNHeBX7vOkd32zPhjm
MbGLyuw9JHJx2LtKFH5uW5W1tm+3iPBtqH5zExOECToqNgL08HcqxFT+gF/3
9i9Jm4LOphcyiT5B5YxnFzM+hYbJiTpOsw56QIFBz4+14Ha4QolCGIOz+0Wc
us1hz9wvspUsgh+zvPWsllUrIRBE0mZygG1rpjLQOIuDGBcBlCm7ozTRYG/W
8dfXCxbNeaZnJUDjiLSlUptbrLlCwQYfzs2HFammG70eR86aQBAgJen9YCSY
sZ84rQTiJgLjhDaCu0s/xujRKWemWIaa93lsMxzJcUcctVC9SEAjJz2ewXSY
J9jZih0XfOF4OoH2BU2kyWZfyA0hWE+RLh9bLwhRRvLW5lnVWBWLyDi/Ro7S
w9VVytvoZnmi2F5Oe+jCuPxUvdWw4FEHx1PcRvmQUpmkCT9x79S/6rtBq99l
E5ShgxI80mBjKeJQjGozcL+6JR2fZWFfZ0dSDGc1dVBoSxdDa/C4jKmhA8h9
TKL8iZ6yyZfljYqjIMyy/Dh+3rN4E/xAe5GkTT58hq+c6c9bhsTuNtLAgTCN
sEyre4XtzCk0nLzs2thVdmo1ElfF/73kRoLNq9hIcKIf2u6CudBMmmFKT0KC
NiLNyNV91b0ssB7bnjH1RgySkbW1YNznJ1YJw9DM4Gf6BY+VRriR78679uf0
Gpt9J/4z/l1+i/yn3PGm2Frblgfx0GHg6ePZuDAIftL6L/LHH/ipuAiUXM+V
AiGGNO5jfEcMzsDuEsfPXffyYBPKwhpphxAE39imkujc4Cm0eBq3K1J3MvZ9
zhr4DvPgxMXAGlsX29LOLh2OyEbo0D7moNd6FFlBITJiWn5wnB4Ve9z3pywp
3FwQqn7eKkczwXcZe+GgDpT7Mz+t9VCRUII+cCCgkfFJoCJBwgWk4qkz5z3t
vtiKTr3QUxMXkmajE+1kaod1HTTBamApr1ayLUulyv46sDz7PoOlc8Ah60xc
YxEYBcWXwHaHYG+2BrFeiI2GRGlqsl54GhOQnqyjEQFdCwle6GXgNUkQ11zg
3Z1SFnlKTm0adFdwDhs4tjnvNBz/PYJKS6kypfCJdNAmBmXzRiSV0JKJDoSZ
tUW/7GvZ437X+I4m2psOtjleKYlHu68tOAjKw4e79eIak8flA5TmvKnFdDjf
m6WDmqn4HUNNSfPl1YphS2A7TeWElLL7cTaPQ1sdAF6KO8tSZpgHabft19Mm
bzTLLcQOwMUqlknsUNtge74RtFbauxPJdTzBgl0zNAJNcw81kXh3j/V5zdBd
enwHqoopZhSnxZtNC6GDaWobT+1uLisRmmbblbuJPYRHWbQj1dV+4Lk8pmGp
lKd9ojurwCzTpB16ccXYgi92af00jDZpDBrbA/cIZGPO/2neKViTi9MkOB+5
AfrIiSro8su7rJsq7pZ42GVXu4aqhrnp8u5tmcGqjTtj+bEjunsoDyYeG+rX
h+pbGTezMAZR/v0NOleSDUUHPk+ZuN7w4CPj1gBxcf94MjnBHU1VkoQZxGiJ
iuhokJzetHMFNoZ/k+vpA6+M1dIQK3Tsi28oYKSYi4XtdoZAoZdyyfnTV9No
oXp4wsH75YHfDKEX3hjO/h94Y/O81uZUioM7hCCUDC4/NQuZ4oA1gWJUsp+V
rKy+hDpF8qFVeFo06eGtOFZis6QnzbNibu7AQ82BLkRAzbsNOWBVYs04xTnG
SHkko71QUWknTRmWi0HOKmxjBJFbTlPagzYLK2TIPafHJkQVEPJu0+vsFBcA
GjzXSZui/arsP0vjLhd/TAIiSagnD1PZSrZ2kFJPHJmZQm48l6NTEhk51JEh
8ZEqfrDI3MEH+Mn59NFSUBX18xsJwGu79nYVt06KDye5X4O8pIgavgkFV4p9
icxySL+emApVVacxe2ThUObjsHuxzXrk25yYhraFNrbkB1sqfmNXVk2IR3RO
C+kWi6H74z1wTZ0/ifACFvTk5HuxWB6fnEwEwnYYCVaCrGeJtetu0RN7lEDx
4Q4vz//lOSQrXxLJ7XtB672vcFaweN6s1WbP8g9FUHwGGdbuhSikFok7i0GJ
5/Y+CdSbDXmy4FxEMQFB5zV6MkUcM60AuXEDssJHsC/I3hPp9ct7CBfEmX9X
LpZ8RGiHnbBOOVXggWg0/NOzJQQVgNO6aDfPPvZNvfD50MkCs5AJEhtHEnc7
FHTyvqiGP6xfIi93C0xwODNcNoUQ6WRpmbogHZql2zS5fqZLKGV9NWWwX2H1
KLlasWI9yZ/4AVPyFs47wWdwBphVC+AolrGsGMlpMHyfEDCwo5/kHymYX6Ze
KGvxk3OxynEPBYFzJtvGpe0Lu8GRAaOIFOwyvrgtoZp8NAsyZWRH+DwTFg8T
YeDYxpi6rTPaOTQM4eNZ80yr7SiIyvLKRnKYRYtr8NK1mDb9jW9m98mMxQME
fJsgTxfFrRi9IBtAgMrB5l/34OMaWvjJpzPpu2ztbmuX5Mb8qD09mXx28JaH
7PnPZ81TDcCp/HpIHY2PFsBERpyvt0TBSO2HZdrT9gt9iSRTU8hyJAsQrv5y
Rpng+xj/9a5uWi5dAvQ4YAUDvPNHPfoQRhqjUXkwSRz5jkfCDWmKiE35TUQc
025KOkna/r4igcZ7iKc0oDXmwGjOgDWROftZn6qTE+saoFw5qdT9zMAHOqKo
h7FqtsLghMuLbWlPNBmrF5VSY/p5KZt2YsLf0WzKFYYyNRQemtaH3YQdxG2i
Lovea1awwFVXw0FPN59n6AF1qJSLaxiyc0B5+6RER6lzk6KyP1DmlRpLyUpK
Q2vrV1QW/gGY+Cr8T3v4FsEpsaeMOger7g1ws1pGrpzSsO56lcBCUPtWdW9r
ThgevpcSH1SrsOY/jDevc5SnQPiLcts6FznyjHOVyXaPITRcRQLF4+3bewy0
UgVQwa5Joaiuw8F3wTWljcO3MdwfCWuwKVUnmtGdhhNL3dlGbHf1CRKXIaui
s56BcoAa/HrRJ8joa009p7BlHucAsM5ZWDbzMToh7FopxRSO+2ui5HSJAUgJ
PmZcc+RfcDyv1b/dRhpg3iCWQJEd57y07y0pebFPoo0StXYAnocRYaWeXVif
qvRX6pcBq4slKi7bz9/ihoaQbZXJIbI+JBNtzeRsRgszZLtkGfs55RIayPy9
QPscCbikZFuD1jkdNPbHPlFCaKG1sfy89AvD8uxIYOGXdrrk95G5Ofu53hjs
6hftz51D4+oUqgHmYgXZBiVTWs3zUbhy9wtDx4qWum4z1+HxsFH9YDv98z9s
p39RtNMPAppVu6NlnlRGs/39pQ6uEFwlgzbP57E5nJreUYm607Fk/uIUUYin
49Ejb1brAbNn6xijWhlgjhVShQZAtE+oFUuR/bnw3NfQudkH7gqE3iMBkSFT
X2PmdrkS+ORA+W/RgC3nKUZMEb6L9ZVPDvCYux8czWIerqp7g/Dtq+xFjfWd
WksvOewrdMGWHSWfMZeHH9D/X82taf7W6zzLDTfL1KNMDT5xNzX5emMes1E2
VlsspllCXc0g16GY28+lUZUgrQQMwxmUIOJnGESs1Sefx1vlceizcQYbOwwK
wico74ToynrVSUOgQcGyNaN5psSCiKFQOYPiLJJYedTV1NOQTqsRrWo0TOhH
j284XWQYPYCvyDwGxhmggc2gKELQJbHKyBMrlQ3RMspX29rNaihBezq5yLlQ
N4Rsz0r1DoS8330Q/QExcGp+7YCQeO9CA9XoOV3epWWZDK1DdIFnLJeSGvu5
7waDX1ZxgMmuOEl4csMHPxT3WfZNeZedmBVz5jjhDUeN6poLE/aYoYIHQ9oH
e12MN8tUaeS6fH7IfMbAePBEDiMIx438T6KRbw4K7gD3dtL06jBlMpi5F8it
BS9jrIHmAnmwyVZ9wlMdYXtyRtM6D14Hb4y6Yn6P6/DJaS9nagAEtFQlh1jM
NteMzHq9szHec2hDhZP8k3JomB116aB9oHkCG7ni2aQzPHXYRAfCmh5ttHIG
CR1DD22Jy10RUQLb5vs+qP7j6IKPrGZHEmwYhYs5dFcY0p3S0TPCwtQUKUQO
wh8j4RnpU18zhkcqo73Rq36PLYquWb8PJM84oWLEWqX+SSkonddGYKg6f/Mm
bWfsl1R05zHxwRp5nwEIWVO0TJ0gB3YE2VOkqEnsbwlWlgkrKI9RpDFgU8+L
tcj64KhwviWddxEbLTsThG24AYtlq6YlZkYG4cGv4utLuk2UgbIcj1ql1Ztz
mvVM2yl4MWG15UE6byPXPoZAjCGDNxzU1+GSXT/Irh8M44kqi7djjAcdqSrf
G9zupXizE/OgWd5PrfpP1O8BTdhyh7moAx+opKZmT07HwiJflJOEMk6MthSS
f9psVY2WbJONRDwe2O5YUW6S3iM34KArkYTfTe9SCWDIEF0D9yRsAskaLivL
e4Qk5wLUbnIgMPNlIVdZV78HcBCnTenkWWDkU9Pumvb54bh9c6SGqAU6DoUy
rmzbpPYWaHJHhAmI4mxCpel70pKXCcfT6QCdzU8Md3vq6z3HnOgmZVQodsNw
kTCTWB/vDHHGPsxhaR9d9qxXMHRnrymCcREvwsUQAORdcE3LyY9sMJeMcJ7F
BoLr8S5K58t9kro0ptDWWvKE/0Mh/w03HU4URaZ9eAqCeO8WHKj3QxzvMqbS
S0lqQVirrCdJfnzCJBXmxoGyWvQIQf5fLb39TM5i87Qcc1RBdBWiOuqxHkp/
5uv4FTevS/k69ZdAimbwbgdPaNJnPjqJXblpdiEdXtgs/y9K2KNiGw+KKFet
ySyYnARgxq32mpAQ3A9b8lpGTWlB071Vka9adXoRDuKZwdYdJT5ju2gT0M9g
eusSV8PREtVLK5MPVX+zjIFCUIyKtaMwhJmB7e1037MsD45XYre2AwXb228l
T42o++QPCNRPH2Qdf/aOhernlQSfjO6LEalKO186VR29ormtrL2vknCHaWQ9
TOumk3/CmJAuZvN+JF7d+RYM7rEXQTuMfyhcZgjoG4fM+uQr74lTrIuPnBw1
sPDfrXX7lmK1NrklCWtwU0dtLhK3B1ekpOSs6G2euGvOuWXqQQFsScWzYQVP
u0/nIJNL3DJ0sRb6OtrlUaqPSGyYvc1+u1kPErtzK+QLjz0MimHxkdCzNWie
SrhJq7KQ9HwDRZpm52TKg4EwIszqR7l+dlNdYDr7WoVElRVWDYwGdw7k9zQP
oV3DZCExrShb5oNp8916Z/+EYXy3bp7sYJOU1pfiLNxieMSmp+LaEq1Spog4
GH9kfS9qnhcFyWulrnLrlQNgFZeQ9JRqRBM2OVYpfp4oxfqKvlVa42j1+OUB
9Ui48zGvo7ivilpQ5J3sPc9TRWaFRvncdoMzWNxszXo+32/RjjBbXndw3IkQ
EapEnrIGRq5TJRp8hT0qtjqlpwGGoyCvkQlxh6ssHWMlPDmd5YaBsk+BJk9k
npKCRJSZxuag1OpQ29BCvjljpff9PsfkPE5+lzbqppksUkfwjP6dWQUZZoYL
1upLfVx+dczasMrLsprlgc6qUAd975rGPo2rX4VGqKY/AHch+F856vuHKBkO
VI8BrtZk3ek0tM2q62/vrhDAZVrv4X6FPgg/h6HoaJPygpEiMmmY9QBAxcdG
JxylBT5JtEAi9z99x77QZweE/efvZrIrgoYUWZzu62Yhk1XPK2XLkAXCKlWS
487XH3C8kiaR/lTa4mETATsqRbJ3fcnjOZLChQOWnJc6mvku0q3bZMzfs7B1
Majizqvj06ohzvESlWNhbcA4qaLBCmnLAw37oeaoV7MKF9pu0wUHTbsDI7MT
9VoiutdAg10kjMu/C0BbLAVhvJ7vF6cxaKJN5pSAoductxsq17zh5DFXHmhD
iGD1BC/ttksyHBbjNCqUv4o9e2DG8uY8hiTdJH3AvjWUBrEHqiOMH03MPLTV
NumjcpJ6VI18nJZYlyac5Hfs61eCyX0ioC/+EneKR3SJq6M9E9x7lpgnZ2n5
8RoPi7ZAVmLLu7Q9h+sAsfPc+Ab2IbxrNnb4sHKCtBJZwxywzYm8sZfOl0fz
N47mcyxGC4Ogd0G4Ybl9vipfkoMOrSiCARYG7o46dIBZyYL0sXuNYcwAQsrV
ugFnCOpmaCs734cP6ugb+aBVax0Urue5QUIHmsfe9taRFVeBqeTN2nlCnbOc
vDBlvRnljAUt2u88uaNdUbmn9HVllkV9fOWZNaadg71UyhWohNe1B4dX0/zm
Oqi5+1nuk1myCTnst3rMtSyXa2zhF8i8RGUKcypiKir973mVRqG0J1B0GiuW
Y+eQeJrTvNYBA2I8QXaebYdyDfZRtRiXFRWZKsYsbbhb39IWUge8jkJaHZYM
mVNp0G9yVgwMDSFvQ3narbXF90Xvu8zBNIp0JaB+f1TPF0SXSeGFYBxnyvlj
uMzz7hl/iPjnVHFHB5qquKbwtX6RM7alIjffTTDHIPnBOUTzIoU+FhJZlnIE
tF0i1gdG41vysB6OhaqXd6WSHl/9n2DkfJeLyF66OqLXBa4b+B5CT8ieQHU7
zx7MSfZg6VyYV9vXsNLESijOcoKzw/RlBsl9PH3ZW5XOp03LTi/wd5c6tjrZ
U7XyCbWs+omHGpY8zIZ/C5M1VU9piYrUfSHVGp/Ew0lopGgkux6eb6t6pRSF
2+6lPEeDKyKKMJWMgP7hldZkoD8RkGoJHlSYIFPn4d5b7MECKQyZ4lW86ad5
1MrOsunrEJHKo/uEbOdLEnUc3uP7HaiG9gUdeS20reqYvaNS4rSC+MU6zCTr
iUQ6mvKNYkGOEFymJSVF8iBOhxReQNd0A72jeO6Y3wdZEHyjEi47rkybEyKj
RdAfveviZYzQq960EpQYecL32CI0DSiVcxQmD1FOOAxYaPYDiDlQCc9XKPFm
WF7xWj79QT57tSJ5UPnMXK135K+TO+qnzK+or4mkIQbdGhnk82JtLNM+Ndea
0pW0QPFH2SfRe/ZcnMsW4qYyRN66YSUX/W3MUxmu95bljLLFfLuen758/hVs
ZOawW9KhQOIqjuBKRmcKFLf9LgzmZop6Diy+IMfYJgjLg7XG7U7sEKOI7lrl
C8JX467Jo9Ll+P7oQadHXHbYZgYhXVPuHHqu6GchuxRwStZo8QoZvTssWxLy
uXpY1PBKFawWU6ReZDs4oR7YaFZaqqEH3uRvVTjvG6udjDVWOzmysVriB+Zr
F87bYRfQdd7Lq/+ix/yWVfijlhbGnsa3N73FePC6wotsHT82Tt1ofGEy8SDL
79wsJFkQRKfLepAHdh7Dpw9Eqlf8D2NxFZylypweipnWGW5K1tUR4V8HqXk7
m5QVOcpd424g+8EuxqJnlhHHBlqrnTcBIpeAK+vv3zqzMzEZZAAHqpSshed6
h1ose90JT42rWt9SG/7KDKLZcayLOTYlxcMbaApuA4NwHJ/ycprw567bJFu9
JBlJQbXavc8hP2qPnUVSvsN5xuMpF3JRNFIwZbKflTqX41gX34laqDTR/K9Q
fO+84ml05eWMj2E/jwvccJSnoEj2g+YOk/5MRxWgVoagT1Z05vBuhHylKLUE
tE/pRFMB5CH39Luh+BapJhirZIWpZrru5kBVa8ZA8PGRkMPjj7ECDHSqjsPj
/5fpC7sLYtH6sU7sFwcwKRHsEV35iMm3c5KLdGFuN7tMIIfoeb4A5nreSsMd
GSDDElhLR86Diq/YChuXKlZCgfN1TZVvB+7zYh1LITBOUNq3JczicZqE9kEZ
LXJQOUSQmZ3k/18lHOtJxKzXWLlAuuDSUm9UYbg1Ni30aOVKe8gARiQ/yNad
za4ohj6Fm2FGCVoF9NCrC48KF1lrf7iWIVJIf3nPNfscfpynAPpCK+pyc+Xg
cSMWJU8ZPbMxqzDw1lTV+qTVSlqGgeF+CunyzjYQyym8JDjj8N6jfSEmTGhU
b+HLFEXldskP6ZOppmS82jmJmNg3feDCD+dQ3eHfX15R+6Ah32NhcrjXgKb6
TCCM5HFrDxNbJOvF+vZ+Fmuk6x27y1ZJ2v449u5OU3kVp+/tiLjYOzxt38Dy
JiG6NLKuOAdIk6V8RSV+IhtYzWoGVK9Wsym2R2RmZBrbSXBR2ASeAojU6BHw
TEqMI/OI8kig9DcmGM9DiWCh67Riw3c9LDVw40gpvE4VLRVxS4XGSKukvMIv
SQKXqmVssiYNWW+GtpbQUTPpkwMpnJR3yCRqxsyrsSSOC0vUljHPkumQPx+z
3r4o03AVEjZJeiVZ9EJ25W0zJ7y9bbzAPazQ792mUbJu6Q/Im1SBWcclTYoO
iJo4YTtBSVgktHLhB9tSlrSIhTW4jd9RNozofSUzMEsviV+lF/lLYlf77ISF
KVhC2Yz6afMw9F66F12OpDHKiVflB4Am0cSxfIhqNunfUFerSkBbjqynvyxC
h6rWK7Op0vodDlNba+YABqlaUOIndOoEjB6FabEz5ZRL2eIgci59wC3X/deG
22CygSheb1vPvdR6L7TZOqFAYZPA20GZEShEyQCsyQxCh5fAHVWwF9LizxH+
OtJsBvB8HJ4Xnrhbb9DQiSc7w/LmjY8O0+ll+qq4B0gpiYR3cWnTyY+mfQrY
sTCvkYDdwvpQh6RKz71JgWLdC4wKbXvKJiU/O/Nj3XThDfjA+KKXPBJtI86Z
7kgn6LPjwsyfj4eZg64kJ6RioWgRSwU7owBeNh/SRkHF5cWEZvTJkZQMQyBU
TiUaPdLxsZpKyjUxiAZzLMcPNKbM7kNV5hkdNzYZlEQ2cijSJOREgiW3LKFy
qRI3VsMUaZmFp5hkRWXTvQMD269da5ec5Sk+o6adSjrISyxf9jRyRfnnT67C
jFLAUK85xWtioQklRpmh8cDvRrc/6aPDN9K2c8IHda0SJQ7kjBTJX5r33rv8
Cd/ttLn8SciZ32/+yf110jz68MN/mEwo8cAXwEDjjzzQlFx1ezCyuuwHlRTp
0Zhapz/uo2kVF5lrWwPvrVBOtoVlJaTgNK6AKSWaNmmLcNN6M2Jtm4vYAL25
pFbwf4DRXFon2eZfeTEknaFf4JFCGMJ7KUJpJUAyaHyEk2gS5DqJlBQFGgv7
fc6mcVKB252kORC9V5Wb2huBYvuJLXh1b50nTa5LY1MYmFmAckADqX/9HKtT
5uZZyVfKtsgYo1qQvLfwemHJF/c2GaqtDzkJovkJZzU8oOdhSj1nN8aUs4hp
R8M/wh4kCiulxDYzOk0jllnBgfvx8TWyqTXweZKOwNK0rV8PMhqOKNnxS18s
3QG7CBPtVIV0/9AapGJShEmfFfwd3ISeAA5pKDHSM4wSzkTOIEqK65bTMhvc
KcXxWAiMS7Qr51hsyb7fblOmaELFyDX7lSw987jKJUomaS30onavNgx8p2Ut
F2/Z9u+4Opdj0taZPB5pHlLNStjFw8bDpsc7gRNREAaFvUEFZr6PziCnfmyn
2YMS1Uf9i0HRiK9K0yt/kCBO5F4ODVf5XKDkMRLZZoNnzM+mNaim726a58lz
84e42t6epU2dt6T4vlxjaQkIlJXgeFa2gs9VkrLj2V4NyJnpHdsEtvxlMCbU
dTjrq4G3KHGnoYOjK3dK13P3lWm6ahn3bGnhvF8j0jF5GjXYOJVhuwcSNMK+
avmW5VZO4zX7f4vivQdExMReNi83TZqNNKZb89tlRI/lX9FMSTUtrpgyLN43
G+lbEHYa9M7CV1peRHfFAmDDOU48qrEYWiyCWI78ADNgjLHM7n3tsE0Hh6RS
vxM+QZiKWdIKZbxmOMsBQXjrl26+L3bPi74DBzBEMMRxwSHXLtlkdXh5FX9K
tojQf2BIYncUkzyJw2Mrwg/N/WeZLdhCeNyQC8QKaqazYgMwtRdxEXACjLU4
S4twZCO5glHeszJ7UcA6i2/VtVuDMgsXoMLOkYEXo4vu/V70/uIFRQOrCMt4
5nppl1O9J0BYIHlRyeqJt+ebGsdaKNvTSTUbhl2UWhZ60xK7fF6PPiQ/Vh3X
/XLX7geBqZfbwwFviDASIJcJXXtqG44HadwNd+sFGLTMqMtH0WyaOO8SuYov
WMi8PiAqwnulKBem49t9Wth9ZttOPWczT4sP4DxxFcycXJAkybW4znI0iN4g
2IEwSs0qknwdaPdG/0HPeyyXHztpDN1Uove7/ZasyosdONq1WIsiU47pHBd5
RWyQYdpcBTGwu08+5JBT9Gk4XIZ1xnPCec58vziv1+KOBPHdUwc4tdcc9kqQ
IXUzjt+ARneKPY8HjiHG1fSENnEe61Y9rCjduTWzQ30G6bylBD4MvfyvKHQ9
1LIY4FBYCK75AsG+8/gdzvUBDY0vFZmRtGw7spmxoWVDm6lfcrAz2E0tpwbf
rvNwncnmLapePx4BTHxSBUzo5mCOMt92jEwZjujOks5m6R2KvXorMzlL+/Xi
02KLZBEzUQDFXpp8nBzvjbnyOkw2cae7HnSfRzRG0rBqWipIO+IMs+EPmQuD
dvgCpmi9kReAKYFGzQKKbm92bA2ZY0TowjjNX45ZUMJfARSdC/O2+gQcb5s3
7i0wcfp6EF2MkcShZs2VPWg20grY5Ig8aU8Eflg+uFHfFG0hsrxAl13bG7sD
75Kpg6t/TxpgSzvaoQRFXgIWM+mIq4+Py4nV1cS7hfDnM8fyP4s93nzI0nuc
4cBs10GNEjpQu3ceaLzG6uNmSyfwXrzcAhbOBpuOP2IYhkp7F7fKlr7bI3q4
cuBeCAaGrTTIZ6SqB9tYEABCg2xhMDyXYfARBF4ZBlapBpX9H3toOL/rBU7H
xo/h68BSXXpuO1Kj843OCnV5oKyccPM81Xe1QlS+fYtWzuPQbf/bd8L2c9lj
cciBI/2W0dKayeQSODV5aouCrkfmeRwGlGilqW6a+w3yQVpRS8KdNnLs4iwb
XMcg4da9pl9YbIxbYuSWMQNf3MhmW3EZhL4riDHiA7yDlzMscAX7wiNd/oiR
kVPixXCtSXP5VtQ6Uc4qM/bDaLdtj8HJoxnmtHe/0PWzlAsPfmMLFMhdM0HW
ynF0nkS0WYR7p4z9MkU7o627jeGQueUGOxrUyM8jvOI/FPqfjuh0r8aP1sMJ
3T36TSNVnlaHMISEcZcwiYtkQcyuQE1qtz3W7yhEEn4+36N+qwl5ccy0BKci
4w8DUB7Q9N7gUCtd4U+yAUMHeEl4/Y21wTlsoXcRQz4m48WvEbdIQQxrIMRx
BuIVTHKCxhgwmyeyFkIJCplNFh4k71nFcR8VwylwgBvjJTQ5VkISPjh+x7qf
2Y8Ak7UIx5l+RZJ53HcuFSP0wT2HlnwEnMlc3oQlWV3fmVA2uXNvZf20GOWb
Zi/4x2oOjiF5qiimd0HxJHDR+CLeuU3g+jp/M0f8JPAlR9Ho3Qh75WcjjvXn
1iEGLF0Ws1BqFDC6XPCEAwmWktnpCLchshbfXl+WWTO1RImKEar8rsexoBdo
wEDhoLd7tQ6qJH93cXb7rTEMrg3SEDzHuqs7ovLc5OhWqNI6lRUgaX/XzfeK
s00oqh7mm9qAY5j62361okXAYxVP9SAIrOpvPWjqpCQa7FVsNipq1dhsxoTM
Ry/NXK/LVd2n69XiXh5Lf1BglKbNQAnL0gqbDa0pA+pSJaxPLWUJJuNpMtUg
i2SQ7Nei1o6q4GBtbclFqxC0Jqd/62b+SOVdJAv32eGH6PcS8PXBJbgltxB/
/JCcsktw5EJL8cSlbVpIFzMWurCSefVB7hnoltKLMv4eEAEkvV7FuTgA7IQH
JRMpMnDIug1j0YOSH/hOBBh+jyLFoD5tRWzBXiHNEguv6Q1Ms3mKeGIFCfoe
IyK6nCf0IHK7C6eWuGHUpjHHrLm4D2Nein1DZ7qYlHOnnwPNkbsfhNZmYc2q
mVTuG0JUfV13s4JrQuiOgcZmR4HRLPsBJzdjQJWdFzTHQCKRkXCdSoGyafQ2
BSvOWsqqZIqwLIrb5C47Gw0qUUeB658cW5hRbM81S6oz26w5o+766oiPKTA5
3GThc4+IcKNV9I3qiSmn1UHQcTnPc7YySweGS258yVWp/dJM7jWnbSn30/NE
lUOHKJH5d0nKbw4pP2cXHkpGpKC2ChfUcSZRFrkeCoD2DAKS2xpLCZ5YKXeE
QHP9Vr5eb1l9BC2wGpziObUV/77Ax9e3TFMoi/s6pusjb5B7WVuoeUS9iz2O
adGj/+jgbjd347NilAOGVLJPj7inhhFSuwE+Lz/nvNuKiVNcNLFSRHjzhjAG
ndsF+UPG6mWedotd+9OL5i/NC6mSeaElL1IP8yLWw7w4th4mqdFItbWp5vFk
04mtym+Tmgzimeo2dbtu1jz3oI2EVxRxFnRjgDltwI3qfgmyjEsWpNBCKSgP
GnXkjt3znU2pF67mNNfJZCIM8/XGAXeqer5ey3PQ0JnWw6NTgYkyBYOfZIMT
dnKLVblDHbKlePmyuWCOV7gziNhwUu6br9h1fnA9kPjcLFT5dp4aU8gs4OnC
MIvzvN1vWEYBYwzOTidBHPoE7Ha4JU4v31wfSaEl5JR8OKAhCj6jJynQ3t0A
qGoa/rHbMjj52S+bftu5QJjFzuAeA455nYFIABMZj4t8x26owoIjhsufkzV7
bmZNF3C1olLIelxQRxXXog2/W4bz0YZPa+tyHFKGFezi/t1gZhwFMRRZit0F
DMCiokbZNx1py3ZpQn13Xf5+BxJNdkjOVPybRwSrZO+ODlx5aTDGnG7t1HSt
87a51NfIhvAAUvslJwLAcvueYHsa4Cr138hC01L/EzNTJgCXjMLYeDBWOQOv
sTU5RuHcHjSOFoTwDhSNn3ajO0A4rZG8Kjw2fAWHKLOm82DfamSB81Cvo4PH
d73WkF/dMHZi2EQ9Hn38kFDhwYSYE9+Uv8VAZrtK9yVLzue8BEJNbC8nFhts
f8hIoWy3IEwjrE6Hd5ul9aN45CH0LD3NC0IWbnEKJsZKJwrvJrsPt4Do8nIt
hNkJWyN4fQoszHelJCxiEeI6jBz3YpjsOBo7Xv+3jKG9LOyfYysxMqkQwQdF
CZXgfFWYmpUyYX3MjqFh8LITffL1fsEO6Mt05o8ALMgJJ3OD6ecluoN4O4jy
DpSiiQ4vh1kRT9EAbj6rA0TYPYmVQ3pGGbv+TpRNLe3kQz4FgOuwTnP4OHfc
UiebPf1tafJJdZ2pVKDf0OmB4KgE1ux2OH/6yiegHoLOFKXFg//HIZ4jZ+Qa
PATcT/AajJrgLgeKXOykqK+0SaZSVVlAhOAL/eu+AwtU3xGxBsFfaO9xa4T3
5QP0bIXkGVBmDp/OXCf4op5TNaY6LlNgKS4z0V/lWNpBJTY9iEJRMrDBYzUf
pvAeBNIcTXcZY94VOssbeRsXWwAqoxU6kdnVvUBCh9iYYx0sMcz1xeOt3UAS
HOG0fngLLa2OyX0/yc6RkDu5FiBA+xn+WgajGvxQ6OPs+y0EffKaeH8AHHqM
3Ud9N+jAhbe7Ri8cPW4OC6LqTw6eLrg24LIBhAMSIHWyirr+LDqkXp+CgkSV
IzZFBQlTNgP+MAzmHaXJ3krFu8QY+Q29JT+degGrkvGYRso5Cs0UNGn/Nxm1
6/omTjIt2dccMWDdv95woKrgFqtYL2Nl4Oor3oTUKifM8QLNL0VvcZTC8XVq
A1CmYWTWLDkJ+Fp43UE0TdOtXvdhB8UmNJpL3jWLsGl3CMLQgWA5YMfaWALT
jqzcx4YlJcQXF/tMO19fildaUdkuloz6vIWpGHx+QqI4KgphWcG3/6Xbzvuh
ZiFVUkwKnTLv7c48VKHySGWqDROmMSfr5tOxUYs/ZE+NdW0r+uVSBWeXzcwy
+z0MVnmASVM+trNKt2MED4hmonN0C447HRaNRtqjVDo+cgQOGSpFbym3PWou
E8UK0H4Ahz3pE5WIXY6clkh5oy3yzpxoyedUzAve2hJVM7H7vAlB+Rb9Nv6K
7A0zprLTTNvk8OnRUFw1lNktoURhPupNZ5r1/8setFWvBfE6rStQze0dcq+z
4z/TvmxwkJXQU+S8k+I+Iq9bLvZly5sht3Q7s0fCu9xJpAjpP12qQKkdAdTC
kxX+FUMzzWTylUR9CJhDOZfsyagphv1N2BA9tZiP0gg4kmIVZjipWuAaEar8
AdOqgVSj8vuYjVXGCJc7dptQWfIVAOjCVvQCprCD9W6cUKP/p1TAfCznnE1y
EdX6oFBHRsoOdl3YVKZ0Bq+J6v9o39hpjABqDv4Quz2bNM/i0MN2x8GHMV6/
oaLMILHWNzv8w5njUrIijKnTQphhapiAvpHy7JwBb7deE2A5jAiefmanDoZU
0CHdDnbcQE9Ydf3t3RV6NRH9NdR6Lg2RGBApeftOJ9xwZrvQPIzMscOd+VXU
QVrupeko8VL8dpSdjS1yFAbtLRfbW/xgjnGAwcKs/ChbrjDYaCSNUrEc39GK
yT2TnySo8fJYLXLrBR0AGOILfy62eFhy52MqotSdHTAgLG8V22E9tgrScz6z
DzE+hHTI1bbpyXXR/o42grge5ZbSSQIal0hj4pyONi99XQZA5+6k4XOo46MT
CUJ+fKyCIhqYIF53zjDiswBqFpcLpyGTKQjVNeJ8ZgTLt3EB4N1erRL+iAG2
3WjLaC8dzYJOmcvmdc8LrMGZhBFEwoaA0FFxDrbX6/XitQKKx9BPU44gofSX
t1ZYBdEyFtp+ZS3d/df1vjkxd+rjjOOxI4NqwKmIyi5RbUYZMOA1WB0AoVZH
4SCVjl8VTN31ZlUS/lZEtzhA0mU2n/PgIm9hKsWygvPr8JSUeVrvF9cNt53V
0xrpwBhnedctGVOZ7jjZV2i3XHTz/Rbk7RlzmtIECaxGVDylJsEAcuaA6YqC
JjnuI3AzylA8GqVYbdpJGEvwxRJPNVa7uA1KY3e3pBY86pjKuE30FY+0fjF3
L5ShUQrhYGp6Nd8PTEb966/PT5/O+m53A+XR2/VmOG2HTXtqr/r995KZZDAc
keBFGtjopHI7Zag3IndY0dNBnK3RTri3NtUwzdAZv/768uuzz7549GkYR4O0
LeZUU22r876IxsaqIwTTi4IFNCNNs5TSV0EwWBwejhV0Y4FQJ3SOREKriGh3
ovgaHCxCv8gaguSCegTgULqz0BSGWXHxA55NJu3HhVoFR3QNAizYC9SjEkp0
IVK1BWkARnRYlIv7VTgE0MMm9z9rNWUY7OI8vltQO6wwkk1721KOLRiiShYE
Zcrn//Ic7rhtqR0fhj+2dvC6gRECzZs2i55Z+aS56fAsCMxhTcdKNw6uilRF
EwCeta9O1IykTWLvkTak+1aJqHCZSTyzWojONUfoVBvHnksENtIH5ZE6TI6v
OIrS7kxuXJ4rh0PC5KgHoFHaLJVNN+EfA/XqTfjtBAnGb2R8uZ2VFFTAErbQ
CjCTtFwUFWAOmtby84y6TE3R3WsXUFZ5vUax5+EaOgjYVdCsh/vxprcObx2k
9fMn3z05IKnv0ImlX8Y6zdPTUywwmfwvIFb0KdHJAQA=

-->

</rfc>
