<?xml version="1.0" encoding="US-ASCII"?>
<!-- This template is for creating an Internet Draft using xml2rfc,
    which is available here: http://xml.resource.org. -->
<rfc category="std" consensus="true"
     docName="draft-ietf-grow-bmp-bgp-rib-stats-15" ipr="trust200902"
     submissionType="IETF">
  <!-- category values: std, bcp, info, exp, and historic
    ipr values: full3667, noModification3667, noDerivatives3667
    you can add the attributes updates="NNNN" and obsoletes="NNNN"
    they will automatically be output with "(if approved)" -->

  <!-- ***** FRONT MATTER ***** -->

  <front>
    <title abbrev="BMP New Statistics">Advanced BGP Monitoring Protocol (BMP)
    Statistics Types</title>

    <!-- add 'role="editor"' below for the editors if appropriate -->

    <!-- Another author who claims to be an editor -->

    <author fullname="Mukul Srivastava" initials="M." surname="Srivastava">
      <organization>Hewlett Packard Enterprise</organization>

      <address>
        <postal>
          <street>10 Technology Park Dr</street>

          <!-- Reorder these if your country does things differently -->

          <city>Westford</city>

          <region>MA</region>

          <code>01886</code>

          <country>USA</country>
        </postal>

        <email>mukul.srivastava@hpe.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Yisong Liu" initials="Y." surname="Liu">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>32 Xuanwumen West Street</street>

          <!-- Reorder these if your country does things differently -->

          <city>Beijing</city>

          <region>Xicheng District</region>

          <code>100053</code>

          <country>China</country>
        </postal>

        <email>liuyisong@chinamobile.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Changwang Lin" initials="C." surname="Lin">
      <organization>New H3C Technologies</organization>

      <address>
        <postal>
          <street>8 Yongjia North Road</street>

          <!-- Reorder these if your country does things differently -->

          <city>Beijing</city>

          <region>Haidian District</region>

          <code>100094</code>

          <country>China</country>
        </postal>

        <email>linchangwang.04414@h3c.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Jinming Li" initials="J." surname="Li">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>32 Xuanwumen West Street</street>

          <!-- Reorder these if your country does things differently -->

          <city>Beijing</city>

          <region>Xicheng District</region>

          <code>100053</code>

          <country>China</country>
        </postal>

        <email>lijinming@chinamobile.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <date year="2025" />

    <!-- Meta-data Declarations -->

    <area>General</area>

    <workgroup>GROW</workgroup>

    <keyword>IDR</keyword>

    <keyword>GROW</keyword>

    <keyword>BGP</keyword>

    <keyword>BMP</keyword>

    <abstract>
      <t>RFC 7854 defines different BGP Monitoring Protocol (BMP) statistics
      message types to observe events that occur on a monitored router. This
      document defines new statistics type to monitor BMP Adj-RIB-In and
      Adj-RIB-Out Routing Information Bases (RIBs).</t>
    </abstract>
  </front>

  <middle>
    <section anchor="introduction" title="Introduction">
      <t>Section 4.8 of <xref target="RFC7854" /> defines a number of
      different BGP Monitoring Protocol (BMP) statistics types to observe
      major events that occur on a monitored router. Stats are either counters
      or gauges. Section 6.2 of <xref target="RFC8671" /> also defines several
      BMP statistics types for Adj-RIB-Out of a monitored router.</t>

      <t>New BMP statistics types are needed to enable more refined BGP route
      monitoring and analysis, improving operational maintenance and
      troubleshooting capabilities.</t>

      <t>This document defines gauges for new BMP statistics. The
      applicability scope of these new gauges (Adj-RIB-In, Adj-RIB-Out,
      Loc-RIB) is provided in Section 4. The format of the BMP statistics
      message remains same as defined in <xref target="RFC7854" />.</t>

      <section title="Requirements Language">
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
        "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
        "OPTIONAL" 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>
      </section>
    </section>

    <section title="Terminology">
      <t>This document makes use of the following terms: <list style="symbols">
          <t>Adj-RIB-In: As defined in <xref target="RFC4271" />, "The
          Adj-RIBs-In contains unprocessed routing information that has been
          advertised to the local BGP speaker by its peers."</t>

          <t>Pre-policy Adj-RIB-In: The result before applying the inbound
          policy to an Adj-RIB-In. Note that this is an explicit definition
          that aligns with the pre-policy Adj-RIB-In concept specified in
          Section 2 of <xref target="RFC7854" />.</t>

          <t>Post-Policy Adj-RIB-In: As defined in Section 2 of <xref
          target="RFC7854" />.</t>

          <t>Adj-RIB-Out: As defined in <xref target="RFC4271" />, "The
          Adj-RIBs-Out contains the routes for advertisement to specific peers
          by means of the local speaker's UPDATE messages."</t>

          <t>Pre-policy Adj-RIB-Out: As defined in Section 3 of <xref
          target="RFC8671" />.</t>

          <t>Post-policy Adj-RIB-Out: As defined in Section 3 of <xref
          target="RFC8671" />.</t>

          <t>Loc-RIB: As defined in Section 1.1 of <xref target="RFC4271" />,
          "The Loc-RIB contains the routes that have been selected by the
          local BGP speaker's Decision Process." Note that the Loc-RIB state
          as monitored through BMP might also contain routes imported from
          other routing protocols such as an IGP or local static routes.</t>

          <t>Primary route: A BGP route to a prefix that is considered the
          best route by the BGP decision process <xref target="RFC4271" />. A
          prefix can have more than one primary route.</t>

          <t>Backup route: A backup route is eligible for route selection, but
          it is not selected as the primary route and is also installed in the
          Loc-RIB. Backup routes are used for fast convergence in the event of
          failures.</t>
        </list></t>

      <t>Also, "implementation" is used following the same usage in <xref
      target="RFC7854" />.</t>
    </section>

    <section anchor="Stats" title="RIB Monitoring Statistics">
      <t>This section defines different statistics type for Adj-RIB-In and
      Adj-RIB-Out monitoring type. Some of these statistics are also
      applicable to Loc-RIB; refer to Section 4 for more details.</t>

      <section anchor="stats-format" title="Statistics Format">
        <t>The BMP Statistics Report Message carries statistic information in
        Type-Length-Value (TLV) formats. Each Statistic is encoded as a TLV
        (Stat Type, Stat Len, Stat Data) (Section 4.8 of <xref
        target="RFC7854" />). "Stat Data" is being referred as "value" when
        defining various RIB Monitoring Statistics.</t>

        <t>Statistics defined in this document can be categorized into two
        granularities: Global Statistics and Per-Address Family Identifier
        (AFI)/Subsequent Address Family Identifier (SAFI) <xref
        target="RFC4760" /> Statistics. Statistics defined with Per-AFI/SAFI
        descriptions belong to Per-AFI/SAFI Statistics, while other statistics
        belong to Global Statistics. Both a Global Statistic and its
        corresponding Per-AFI/SAFI Statistics can be reported
        simultaneously.</t>

        <t>The AFI/SAFI are used to identify network layer protocols and
        associated routing information. The authoritative registries for
        AFI/SAFI values are maintained by IANA <xref target="IANA-AFI" />
        <xref target="IANA-SAFI" />. The Per-AFI/SAFI Statistics apply only to
        the AFI/SAFIs that a BGP speaker supports and negotiates with its
        peer.</t>

        <t>For Global Statistics, the "Stat Data" (value) field is a single
        64-bit unsigned integer gauge with "Stat Len" MUST be set to 8. Each
        global statistic MUST appear only once in a BMP Statistics Report
        Message.</t>

        <t>For Per-AFI/SAFI Statistics, the "Stat Data" (value) field is a
        11-byte structured value formatted as: 2-byte AFI, 1-byte SAFI, and
        64-bit Gauge. The "Stat Len" MUST be set to 11. For any given
        per-AFI/SAFI Statistic, duplicate (AFI, SAFI) pairs MUST NOT appear
        within the same BMP Statistics Report Message.</t>

        <t>If statistics apply to the Loc-RIB, the "Peer Type" field in the
        Per-Peer Header of the corresponding BMP Statistics Report Message
        MUST be set to 3 (Loc-RIB Instance Peer) <xref target="RFC9069" />.
        Otherwise, the "Peer Type" MUST be set as defined in Section 4.2 of of
        <xref target="RFC7854" />.</t>

        <t>A BMP implementation MUST ignore unrecognized stat types upon
        receipt and MUST exclude unsupported stat types upon transmission.</t>
      </section>

      <section anchor="adj-rib-in-stats"
               title="Adj-RIB-In RIB Monitoring Statistics Definition">
        <t>
          <list style="symbols">
            <t>Type = 18: (64-bit Gauge) Current number of routes in
            pre-policy Adj-RIB-In. This gauge is similar to stats type 7
            defined in <xref target="RFC7854" /> and makes it explicitly for
            the pre-policy Adj-RIB-In.</t>

            <t>Type = 19: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI pre-policy Adj-RIB-In. This gauge is similar to stats
            type 9 defined in Section 4.8 of <xref target="RFC7854" /> and
            makes it explicitly for the pre-policy Adj-RIB-In. The value is
            structured as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit
            Gauge.</t>

            <t>Type = 20: (64-bit Gauge) Current number of routes in
            post-policy Adj-RIB-In.</t>

            <t>Type = 21: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI post-policy Adj-RIB-In. The value is structured as:
            2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 22: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI rejected by inbound policy. This gauge is different
            from stats type 0 defined in Section 4.8 of <xref
            target="RFC7854" />. The stats type 0 is a 32-counter which is a
            monotonically increasing number, while the stats type 22 is a
            64-bit gauge which represents the current number of routes
            rejected by an inbound policy due to ongoing policy configuration
            changes. The value is structured as: 2-byte AFI, 1-byte SAFI,
            followed by a 64-bit Gauge.</t>

            <t>Type = 23: (64-bit Gauge) Current Number of routes in
            per-AFI/SAFI accepted by inbound policy. The value is structured
            as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 24: (64-bit Gauge) Current Number of routes in
            per-AFI/SAFI selected as primary route. The value is structured
            as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 25: (64-bit Gauge) Current Number of routes in
            per-AFI/SAFI selected as a backup route. The value is structured
            as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 26: (64-bit Gauge) Current Number of routes in
            per-AFI/SAFI suppressed by configured route damping policy. The
            value is structured as: 2-byte AFI, 1-byte SAFI, followed by a
            64-bit Gauge. 'Suppressed' refers to a path which has been
            declared suppressed by the BGP Route Flap Damping mechanism as
            described in Section 2.2 of <xref target="RFC2439" />.</t>

            <t>Type = 27: (64-bit Gauge) Current Number of routes in
            per-AFI/SAFI marked as stale by Graceful Restart (GR) events. The
            value is structured as: 2-byte AFI, 1-byte SAFI, followed by a
            64-bit Gauge. 'Stale' refers to a path which has been declared
            stale by the BGP GR mechanism as described in Section 4.1 of <xref
            target="RFC4724" />.</t>

            <t>Type = 28: (64-bit Gauge) Current Number of routes in
            per-AFI/SAFI marked as stale by Long-Lived Graceful Restart
            (LLGR). The value is structured as: 2-byte AFI, 1-byte SAFI,
            followed by a 64-bit Gauge. 'Stale' refers to a path which has
            been declared stale by the BGP LLGR mechanism as described in
            Section 4.3 of <xref target="RFC9494" />.</t>

            <t>Type = 29: (64-bit Gauge) Current Number of routes left before
            exceeding the received route threshold as defined in Section 6.7
            of <xref target="RFC4271" />.</t>

            <t>Type = 30: (64-bit Gauge) Current Number of routes per-AFI/SAFI
            left before exceeding the received route threshold which
            corresponds to the upper bound of per-AFI/SAFI accepted routes
            following the model defined in Section 6.7 of <xref
            target="RFC4271" />. The value is structured as: 2-byte AFI,
            1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 31: (64-bit Gauge) Current Number of routes left before
            exceeding a license-customized route threshold. If no such license
            is configured, or if the license does not impose a hard limit,
            this value MUST NOT be reported.</t>

            <t>Type = 32: (64-bit Gauge) Current Number of routes in
            per-AFI/SAFI left before exceeding a license-customized route
            threshold. If no such license is configured, or if the license
            does not impose a hard limit, this value MUST NOT be reported. The
            value is structured as: 2-byte AFI, 1-byte SAFI, followed by a
            64-bit Gauge.</t>

            <t>Type = 33: (64-bit Gauge) Current number of routes rejected by
            exceeding the maximum AS_PATH length supported by the local
            configuration.</t>

            <t>Type = 34: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI rejected by exceeding the maximum AS_PATH length
            supported by the local configuration. The value is structured as:
            2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 35: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI post-policy Adj-RIB-In invalidated through the Route
            Origin Authorization (ROA) of Resource Public Key Infrastructure
            (RPKI) <xref target="RFC6811" />. This is total number of routes
            invalidated due to origin Autonomous System (AS) number mismatch
            and prefix length mismatch. The value is structured as: 2-byte
            AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 36: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI post-policy Adj-RIB-In validated by verifying route
            origin AS number through the ROA of RPKI <xref
            target="RFC6811" />. The value is structured as: 2-byte AFI,
            1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 37: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI post-policy Adj-RIB-In whose RPKI route origin
            validation state is NotFound due to the absence of a matching ROA
            of RPKI <xref target="RFC6811" />. The value is structured as:
            2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>
          </list>
        </t>
      </section>

      <section anchor="adj-rib-out-stats"
               title="Adj-RIB-Out RIB Monitoring Statistics Definition">
        <t>
          <list style="symbols">
            <t>Type = 38: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI rejected by outbound policy. These routes are active
            routes which otherwise would have been advertised in absence of
            outbound policy which rejected them. The value is structured as:
            2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 39: (64-bit Gauge) Current number of routes filtered due
            to AS_PATH length exceeding the locally configured maximum.</t>

            <t>Type = 40: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI filtered due to AS_PATH length exceeding the locally
            configured maximum. The value is structured as: 2-byte AFI, 1-byte
            SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 41: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI post-policy Adj-RIB-Out invalidated through the ROA
            of RPKI <xref target="RFC6811" />. This is total number of routes
            invalidated due to origin AS number mismatch and prefix length
            mismatch. The value is structured as: 2-byte AFI, 1-byte SAFI,
            followed by a 64-bit Gauge.</t>

            <t>Type = 42: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI post-policy Adj-RIB-Out validated by verifying route
            origin AS number through the ROA of RPKI <xref
            target="RFC6811" />. The value is structured as: 2-byte AFI,
            1-byte SAFI, followed by a 64-bit Gauge.</t>

            <t>Type = 43: (64-bit Gauge) Current number of routes in
            per-AFI/SAFI post-policy Adj-RIB-Out whose RPKI route origin
            validation state is NotFound due to the absence of a matching ROA
            of RPKI <xref target="RFC6811" />. The value is structured as:
            2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t>
          </list>
        </t>
      </section>
    </section>

    <section anchor="Application Scope of Statistics"
             title="Application Scope of Statistics">
      <t>This section briefly lists the statistics defined in this document
      and outlines their scope of application, as shown in Table 1.</t>

      <t>
        <figure>
          <artwork align="center" name="Table 1"><![CDATA[
 +-------+----------+-----------+-------+
 | Type  |Adj-RIB-In|Adj-RIB-Out|Loc-RIB|
 +-------+----------+-----------+-------+
 |  18   |     Y    |     N     |   N   |
 |  19   |     Y    |     N     |   N   |
 |  20   |     Y    |     N     |   N   |
 |  21   |     Y    |     N     |   N   |
 |  22   |     Y    |     N     |   N   |
 |  23   |     Y    |     N     |   N   |
 |  24   |     Y    |     N     |   Y   |
 |  25   |     Y    |     N     |   Y   |
 |  26   |     Y    |     N     |   Y   |
 |  27   |     Y    |     N     |   Y   |
 |  28   |     Y    |     N     |   Y   |
 |  29   |     Y    |     N     |   N   |
 |  30   |     Y    |     N     |   N   |
 |  31   |     Y    |     N     |   Y   |
 |  32   |     Y    |     N     |   Y   |
 |  33   |     Y    |     N     |   N   |
 |  34   |     Y    |     N     |   N   |
 |  35   |     Y    |     N     |   N   |
 |  36   |     Y    |     N     |   N   |
 |  37   |     Y    |     N     |   N   |
 |  38   |     N    |     Y     |   N   |
 |  39   |     N    |     Y     |   N   |
 |  40   |     N    |     Y     |   N   |
 |  41   |     N    |     Y     |   N   |
 |  42   |     N    |     Y     |   N   |
 |  43   |     N    |     Y     |   N   |
 +-------+----------+-----------+-------+

     Table 1: Scope of Application]]></artwork>
        </figure>
      </t>
    </section>

    <section anchor="Operational" title="Operational Considerations">
      <t>This document specifies gauges for new BMP statistics. The format of
      BMP statistics messages remains unchanged from <xref
      target="RFC7854" />. This section outlines the operational
      considerations for new BMP statistics.</t>

      <section anchor="Operational 1"
               title="Operational Considerations to Produce Gauges for BMP Statistics Messages">
        <t>This section outlines the considerations to produce gauges for BMP
        Statistics Report Messages.</t>

        <t>Transmission scheduling and triggering mechanisms for new gauges
        are implementation-dependent. Implementations should determine
        appropriate report generation and delivery strategies, including
        configurable timing intervals and threshold values. The mechanism for
        controlling the reporting of new gauges should be consistent with that
        of existing types.</t>

        <t>Some statistics are dependent on feature configurations, such as
        GR, LLGR, and RPKI, so the corresponding statistics should only be
        generated and sent when these features are enabled on the router. This
        statistics include Type 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
        35, 36, 37, 39, 40, 41, 42, and 43.</t>

        <t>Some statistics are also relevant for the Loc-RIB view <xref
        target="RFC9069" />, so they may apply to the Loc-RIB view after
        best-path selection is completed. This statistics include Type 24, 25,
        26, 27, 28, 31, and 32. When this statistics apply to the Loc-RIB
        view, the Peer Type in the Per-Peer Header of the corresponding BMP
        Statistics Report Message MUST set to 3.</t>

        <t>Certain statistics may have logical relationships (e.g.,
        per-AFI/SAFI counts summing to global totals). Implementations MAY
        perform consistency checks but MUST NOT assume strict dependencies
        (due to potential race conditions or partial failures). Discrepancies
        (e.g., sum(per-AFI/SAFI) != global count) SHOULD be logged as warnings
        but MUST NOT disrupt protocol operation.</t>

        <t>For backward compatibility, and absent policy otherwise, it is
        RECOMMENDED that monitored routers capable of generating both (Type 7
        and Type 18) or (Type 9 and Type 19) BMP statistics should transmit
        both corresponding types simultaneously. This allows monitoring
        stations to process either format according to their needs without
        disrupting existing implementations that rely on Type 7 or Type 9. The
        selection of which statistic type(s) to generate within each pair
        should be treated as an implementation decision rather than a protocol
        requirement, with the monitoring station behavior for handling these
        statistic types remaining implementation-specific.</t>

        <t>These gauges may reset due to session restart, manual clearance, or
        overflow. Implementations MUST track discontinuities and log this
        information.</t>
      </section>

      <section anchor="Operational 2"
               title="Operational Considerations for Operators Using Gauges for BMP Statistics Message">
        <t>This section outlines the considerations for the network operators
        who configure and use BMP statistics.</t>

        <t>Operators SHOULD consider rate-limiting statistic updates to
        minimize performance impact on control-plane processes. Operators
        SHOULD enable only necessary statistics to reduce memory and CPU
        overhead. Implementations SHOULD also support per-router configuration
        of statistic subsets for collection and reporting.</t>

        <t>The generation and transmission of type 27 and 28 during an active
        GR/LLGR event consumes additional control plane resources (e.g., CPU).
        Implementations should prioritize the core GR/LLGR convergence
        procedures. To avoid adversely impacting the restart process, an
        implementation may choose to sample this value at a lower frequency,
        buffer updates, or temporarily suspend reporting for this type during
        the most critical phases of a switchover.</t>

        <t>Some implementations, or configurations in implementations, may
        discard routes that do not match policy and thus the accepted count
        (type 23) and the Adj-RIB-In counts (type 21) will be identical in
        such cases.</t>
      </section>
    </section>

    <section anchor="Security" title="Security Considerations">
      <t>Procedures and protocol extensions defined in this document do not
      affect the BMP security model. All security and authentication
      mechanisms required by Section 11 of <xref target="RFC7854" />, Section
      8 of <xref target="RFC8671" />, and Section 7 of <xref
      target="RFC9069" /> are also applicable to the gauges defined in this
      document. This document does not add any additional security
      considerations.</t>

      <t>Monitored devices SHOULD be configured to implement rate-limited
      reporting of new gauges.</t>
    </section>

    <section anchor="IANA" title="IANA Considerations">
      <t>IANA has assigned the following new parameters in the <eref
      target="https://www.iana.org/assignments/bmp-parameters/bmp-parameters.xhtml#statistics-types">BMP
      Statistics Types registry</eref>, part of the <eref
      target="https://www.iana.org/assignments/bmp-parameters/bmp-parameters.xhtml">
      BMP parameters registry group</eref>.</t>

      <t>This document requests IANA to update these entries as follows. Also,
      the document requests IANA to update the reference cited for the entries
      with the RFC number to be assigned to this document.</t>

      <t>
        <list style="symbols">
          <t>Type = 18: Number of routes currently in pre-policy
          Adj-RIB-In.</t>

          <t>Type = 19: Number of routes currently in per-AFI/SAFI pre-policy
          Adj-RIB-In.</t>

          <t>Type = 20: Number of routes currently in post-policy
          Adj-RIB-In.</t>

          <t>Type = 21: Number of routes currently in per-AFI/SAFI post-policy
          Adj-RIB-In.</t>

          <t>Type = 22: Number of routes currently in per-AFI/SAFI rejected by
          inbound policy.</t>

          <t>Type = 23: Number of routes currently in per-AFI/SAFI accepted by
          inbound policy.</t>

          <t>Type = 24: Number of routes currently in per-AFI/SAFI selected as
          primary route.</t>

          <t>Type = 25: Number of routes currently in per-AFI/SAFI selected as
          a backup route.</t>

          <t>Type = 26: Number of routes currently in per-AFI/SAFI suppressed
          by configured route damping policy.</t>

          <t>Type = 27: Number of routes currently in per-AFI/SAFI marked as
          stale by GR events.</t>

          <t>Type = 28: Number of routes currently in per-AFI/SAFI marked as
          stale by LLGR.</t>

          <t>Type = 29: Number of routes currently left before exceeding the
          received route threshold.</t>

          <t>Type = 30: Number of routes currently per-AFI/SAFI left before
          exceeding the received route threshold.</t>

          <t>Type = 31: Number of routes currently left before exceeding a
          license-customized route threshold.</t>

          <t>Type = 32: Number of routes currently in per-AFI/SAFI left before
          exceeding a license-customized route threshold.</t>

          <t>Type = 33: Number of routes currently rejected due to exceeding
          the maximum AS_PATH length.</t>

          <t>Type = 34: Number of routes currently in per-AFI/SAFI rejected
          due to exceeding the maximum AS_PATH length.</t>

          <t>Type = 35: Number of routes currently in per-AFI/SAFI post-policy
          Adj-RIB-In invalidated after verifying route origin AS number
          through the ROA of RPKI.</t>

          <t>Type = 36: Number of routes currently in per-AFI/SAFI post-policy
          Adj-RIB-In validated after verifying route origin AS number through
          the ROA of RPKI.</t>

          <t>Type = 37: Number of routes currently in per-AFI/SAFI post-policy
          Adj-RIB-In whose RPKI route origin validation state is NotFound.</t>
        </list>
      </t>

      <t>
        <list style="symbols">
          <t>Type = 38: Number of routes currently in per-AFI/SAFI rejected by
          outbound policy.</t>

          <t>Type = 39: Number of routes currently filtered due to AS_PATH
          length exceeding the locally configured maximum</t>

          <t>Type = 40: Number of routes currently in per-AFI/SAFI filtered
          due to AS_PATH length exceeding the locally configured maximum.</t>

          <t>Type = 41: Number of routes currently in per-AFI/SAFI post-policy
          Adj-RIB-Out invalidated after verifying route origin AS number
          through the ROA of RPKI.</t>

          <t>Type = 42: Number of routes currently in per-AFI/SAFI post-policy
          Adj-RIB-Out validated after verifying route origin AS number through
          the ROA of RPKI.</t>

          <t>Type = 43: Number of routes currently in per-AFI/SAFI post-policy
          Adj-RIB-Out whose RPKI route origin validation state is
          NotFound.</t>
        </list>
      </t>
    </section>

    <section anchor="Implementation" title="Implementation Status">
      <t>Note to the RFC Editor - remove this section before publication, as
      well as remove the reference to <xref target="RFC7942" />.</t>

      <t>This section records the status of known implementations of the
      protocol defined by this specification at the time of posting of this
      Internet-Draft, and is based on a proposal described in <xref
      target="RFC7942" />. The description of implementations in this section
      is intended to assist the IETF in its decision processes in progressing
      drafts to RFCs. Please note that the listing of any individual
      implementation here does not imply endorsement by the IETF. Furthermore,
      no effort has been spent to verify the information presented here that
      was supplied by IETF contributors. This is not intended as, and must not
      be construed to be, a catalog of available implementations or their
      features. Readers are advised to note that other implementations may
      exist.</t>

      <t>According to <xref target="RFC7942" />, "this will allow reviewers
      and working groups to assign due consideration to documents that have
      the benefit of running code, which may serve as evidence of valuable
      experimentation and feedback that have made the implemented protocols
      more mature. It is up to the individual working groups to use this
      information as they see fit".</t>

      <section title="Juniper Networks">
        <t>
          <list style="symbols">
            <t>Organization: Juniper Networks.</t>

            <t>Implementation:</t>

            <t>Description: Below RIB-IN statistics are implemented. <list
                style="symbols">
                <t>Type = 18.</t>

                <t>Type = 19.</t>

                <t>Type = 20.</t>

                <t>Type = 21.</t>

                <t>Type = 22.</t>

                <t>Type = 23.</t>

                <t>Type = 26.</t>

                <t>Type = 27.</t>

                <t>Type = 28.</t>

                <t>Type = 35.</t>

                <t>Type = 36.</t>

                <t>Type = 37.</t>
              </list></t>

            <t>Maturity Level: Demo</t>

            <t>Coverage:</t>

            <t>Version: Draft-05</t>

            <t>Licensing: N/A</t>

            <t>Implementation experience: Nothing specific.</t>

            <t>Contact: msri@juniper.net</t>

            <t>Last updated: January 20, 2025</t>
          </list>
        </t>
      </section>

      <section title="New H3C Technologies">
        <t>
          <list style="symbols">
            <t>Organization: New H3C Technologies.</t>

            <t>Implementation: H3C CR16000, CR19000 series routers
            implementation of New BMP Statistics Type.</t>

            <t>Description: Below New types have been implemented in
            above-mentioned New H3C Products (running Version 7.1.086 and
            above). <list style="symbols">
                <t>Type = 18.</t>

                <t>Type = 19.</t>

                <t>Type = 20.</t>

                <t>Type = 21.</t>

                <t>Type = 22.</t>

                <t>Type = 23.</t>

                <t>Type = 24.</t>

                <t>Type = 25.</t>

                <t>Type = 29.</t>

                <t>Type = 30.</t>

                <t>Type = 31.</t>

                <t>Type = 32.</t>

                <t>Type = 33.</t>

                <t>Type = 34.</t>

                <t>Type = 35.</t>

                <t>Type = 36.</t>

                <t>Type = 37.</t>

                <t>Type = 38.</t>

                <t>Type = 39.</t>

                <t>Type = 40.</t>
              </list></t>

            <t>Maturity Level: Demo</t>

            <t>Coverage:</t>

            <t>Version: Draft-05</t>

            <t>Licensing: N/A</t>

            <t>Implementation experience: Nothing specific.</t>

            <t>Contact: linchangwang.04414@h3c.com</t>

            <t>Last updated: January 20, 2025</t>
          </list>
        </t>
      </section>
    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
      <t>The author would like to thank Jeff Haas, Mohamed Boucadair, Thomas
      Graf, and Prasad S. Narasimha for their valuable input.</t>

      <t>Thanks to Giuseppe Fioccola for the OPSDIR, Jouni Korhonen for the
      GENART, and Bruno Decraene for the RTGDIR review.</t>

      <t>Thanks to Gunter van de Velde, Eric Vyncke, and Ketan Talaulikar for
      the IESG review.</t>
    </section>
  </middle>

  <!--  *****BACK MATTER ***** -->

  <back>
    <references title="References">
      <references title="Normative References">
        <!--?rfc include=
        "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml"?-->

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2439.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4271.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4724.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4760.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.6811.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7854.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8671.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.9069.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.9494.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />
        <reference anchor="IANA-AFI"
                   target="https://www.iana.org/assignments/address-family-numbers">
          <front>
            <title>Address Family Numbers</title>

            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>

        <reference anchor="IANA-SAFI"
                   target="https://www.iana.org/assignments/safi-namespace">
          <front>
            <title>Subsequent Address Family Identifiers (SAFI)
            Parameters</title>

            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
      </references>

      <references title="Informative References">
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7942.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />


      </references>
    </references>
  </back>
</rfc>
