<?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. --> version='1.0' encoding='UTF-8'?>

<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" consensus="true" docName="draft-ietf-grow-bmp-bgp-rib-stats-17" number="9972" updates="" obsoletes="" tocInclude="true" symRefs="true" sortRefs="true" 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 ***** --> submissionType="IETF" version="3" xml:lang="en" >

  <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 -->
    <seriesInfo name="RFC" value="9972"/>

    <author fullname="Mukul Srivastava" initials="M." role="editor" 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>
          <country>United States of America</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." role="editor" 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> year="2026" month="May"/>

    <area>OPS</area>
    <workgroup>grow</workgroup>

    <keyword>IDR</keyword>
    <keyword>GROW</keyword>
    <keyword>BGP</keyword>
    <keyword>BMP</keyword>

    <abstract>
      <t>RFC 7854 defines different
      <t>The BGP Monitoring Protocol (BMP) described in RFC 7854 defines statistics
      message types to observe events that occur on a monitored router. This
      document defines new statistics type types to monitor BMP Adj-RIB-In Adj&nbhy;RIB&nbhy;In and
      Adj-RIB-Out
      Adj&nbhy;RIB&nbhy;Out Routing Information Bases (RIBs).</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction" title="Introduction">
      <t>Section 4.8 of <xref target="RFC7854" /> anchor="introduction">
      <name>Introduction</name>
      <t><xref section="4.8" target="RFC7854"/> defines a number of
      different BGP Monitoring Protocol (BMP) statistics types to observe
      major events that occur on a monitored router. Stats Statistics are either counters
      or gauges. Section 6.2 of Gauges. <xref target="RFC8671" /> section="6.2" target="RFC8671"/> also defines several
      BMP statistics types for Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out of a monitored router.</t>
      <t>New BMP statistics types are needed to enable more refined more-refined BGP route
      monitoring and analysis, improving analysis to improve operational maintenance and
      troubleshooting capabilities.</t>
      <t>This document defines gauges Gauges for new BMP statistics. The
      applicability scope of these new gauges (Adj-RIB-In, Adj-RIB-Out, Gauges (Adj&nbhy;RIB&nbhy;In, Adj&nbhy;RIB&nbhy;Out,
      Loc-RIB) is provided in Section 4. <xref target="Application_Scope_of_Statistics"/>. The format of the BMP statistics Statistics Report
      message remains the same as defined in <xref target="RFC7854" />.</t>

      <section title="Requirements Language">
        <t>The target="RFC7854"/>.</t>
      <section>
        <name>Requirements Language</name>
        <t>
    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
        "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", "<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
        "OPTIONAL" "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
    described in BCP
        14 BCP&nbsp;14 <xref target="RFC2119" /> target="RFC2119"/> <xref target="RFC8174" /> target="RFC8174"/>
    when, and only when, they appear in all capitals, as shown here. The BCP14 is
        </t>
	<aside><t>Note that the key words are used to stress importance for operators but operations; they are not required as a formal implementation requirement.</t> requirement.</t></aside>
      </section>
    </section>

    <section title="Terminology">
    <section>
      <name>Terminology</name>

      <t>This document makes use of the following terms: <list style="symbols">
          <t>Adj-RIB-In: As </t>
      <dl spacing="normal" newline="false">
        <dt>Adj&nbhy;RIB&nbhy;In:</dt><dd><t>As defined in <xref target="RFC4271" />, "The section="1.1" sectionFormat="of" target="RFC4271"/>:</t>
	<blockquote>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 peers.</blockquote></dd>
          <dt>Pre-policy Adj&nbhy;RIB&nbhy;In:</dt><dd>The result before applying the inbound
          policy to an Adj-RIB-In. Adj&nbhy;RIB&nbhy;In. Note that this is an explicit definition
          that aligns with the pre-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In concept specified in
          Section 2 of
          <xref target="RFC7854" />.</t>

          <t>Post-policy Adj-RIB-In: As section="2" target="RFC7854"/>.</dd>
          <dt>Post-policy Adj&nbhy;RIB&nbhy;In:</dt><dd><t>As defined in Section 2 of <xref
          target="RFC7854" />.</t>

          <t>Adj-RIB-Out: As section="2" target="RFC7854"/>:</t><blockquote>The result of applying inbound policy to an Adj&nbhy;RIB&nbhy;In, but prior to the application of route selection to form the Loc-RIB.</blockquote></dd>
          <dt>Adj&nbhy;RIB&nbhy;Out:</dt><dd><t>As defined in <xref target="RFC4271" />, "The section="1.1" sectionFormat="of" target="RFC4271"/>:</t><blockquote>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 messages.</blockquote></dd>
          <dt>Pre-policy Adj&nbhy;RIB&nbhy;Out:</dt><dd><t>As defined in Section 3 of <xref
          target="RFC8671" />.</t>

          <t>Post-policy Adj-RIB-Out: As section="3" target="RFC8671"/>:</t><blockquote>The result before applying the outbound policy to an Adj&nbhy;RIB&nbhy;Out.  This normally would match what is in the local RIB.</blockquote></dd>
          <dt>Post-policy Adj&nbhy;RIB&nbhy;Out:</dt><dd><t>As defined in Section 3 of <xref
          target="RFC8671" />.</t>

          <t>Loc-RIB: As section="3" target="RFC8671"/>:</t><blockquote>The result of applying outbound policy to an Adj&nbhy;RIB&nbhy;Out.  This <bcp14>MUST</bcp14> convey to the BMP receiver what is actually transmitted to the peer.</blockquote></dd>
          <dt>Loc-RIB:</dt><dd><t>As defined in Section 1.1 of <xref target="RFC4271" />,
          "The section="1.1" target="RFC4271"/>:</t><blockquote>The Loc-RIB contains the routes that have been selected by the
          local BGP speaker's Decision Process." Note Process.</blockquote><t>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>Route: As routes.</t></dd>
          <dt>Route:</dt><dd><t>As defined in Section 1.1 of <xref
          target="RFC4271" />.</t>
        </list></t> section="1.1" target="RFC4271"/>:</t><blockquote>A unit of information that pairs a set of destinations with the attributes of a path to those destinations.</blockquote></dd>
      </dl>
      <t>The terms "Producer" "producer" and "Collector" "collector" are equivalent to "Monitored
      Router" "monitored
      router" and "Monitoring Station", "monitoring station", respectively. Also, "implementation"
      is used following
      follows the same usage as in <xref target="RFC7854" />.</t> target="RFC7854"/>.</t>
    </section>
    <section anchor="Stats" title="RIB anchor="Stats">
      <name>RIB Monitoring Statistics"> Statistics</name>
      <t>This section defines different statistics type types for Adj-RIB-In Adj&nbhy;RIB&nbhy;In and
      Adj-RIB-Out
      Adj&nbhy;RIB&nbhy;Out monitoring type. types. Some of these statistics are also
      applicable to Loc-RIB; refer to Section 4 <xref target="Application_Scope_of_Statistics"/> for more details.</t>
      <section anchor="stats-format" title="Statistics Format"> anchor="stats-format">
        <name>Statistics Format</name>
        <t>The BMP Statistics Report Message message carries statistic information in
        Type-Length-Value (TLV) formats. Each Statistic statistic is encoded as a TLV
        (Stat Type, Stat Len, Stat Data) (Section 4.8 of (see <xref
        target="RFC7854" />). section="4.8" target="RFC7854"/>). "Stat Data" is being referred to 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) Per-AFI/SAFI (see <xref
        target="RFC4760" /> 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 Statistics and its their
        corresponding Per-AFI/SAFI Statistics can be reported
        simultaneously.</t>
        <t>The Per-AFI/SAFI Statistics apply only to the AFI/SAFIs AFI/SAFI that a BGP
        speaker supports and negotiates with its peer. The authoritative
        registries for AFI/SAFI values are maintained by IANA (see <xref
        target="IANA-AFI" /> target="IANA-AFI"/> and <xref target="IANA-SAFI" />.</t> target="IANA-SAFI"/>).</t>
        <t>For Global Statistics, the "Stat Data" (value) field is a single
        64-bit unsigned integer gauge with Gauge where the "Stat Len" MUST field <bcp14>MUST</bcp14> be set to 8. Each
        global statistic MUST <bcp14>MUST</bcp14> appear only once in a BMP Statistics Report
        Message.</t>
        message.</t>

        <t>For Per-AFI/SAFI Statistics, the "Stat Data" (value) field is a
        11-byte structured value formatted as: as a 2-byte AFI, a 1-byte SAFI, and
        a 64-bit Gauge. The "Stat Len" MUST <bcp14>MUST</bcp14> be set to 11. For any given
        per-AFI/SAFI Statistic, duplicate (AFI, SAFI) pairs MUST NOT <bcp14>MUST NOT</bcp14> appear
        within the same BMP Statistics Report Message. message. Per-AFI/SAFI statistics
        MUST NOT
        <bcp14>MUST NOT</bcp14> be included in the BMP Statistics Report Message message if there is
        no data to report for that AFI/SAFI.</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 message
        <bcp14>MUST</bcp14> be set to 3 (Loc-RIB Instance Peer) <xref target="RFC9069" />. target="RFC9069"/>.
        Otherwise, the "Peer Type" MUST field <bcp14>MUST</bcp14> be set as defined in Section 4.2 of of
        <xref target="RFC7854" />.</t> section="4.2"/>.</t>
        <t>A BMP implementation MUST <bcp14>MUST</bcp14> ignore unrecognized stat types Stat Types upon
        receipt.</t>
      </section>
      <section anchor="adj-rib-in-stats"
               title="Adj-RIB-In anchor="adj-rib-in-stats">
        <name>Adj&nbhy;RIB&nbhy;In RIB Monitoring Statistics Definition">
        <t>
          <list style="symbols">
            <t>Type Definition</name>
        <dl spacing="normal" newline="true">
          <dt>Type = 18: (64-bit Gauge) Current Gauge)</dt><dd>Current number of routes in
          the pre-policy Adj-RIB-In. Adj&nbhy;RIB&nbhy;In. This gauge Gauge is similar to stats type Stat Type 7 defined
          in <xref target="RFC7854" /> target="RFC7854"/> and makes it explicitly for the
          pre-policy Adj-RIB-In.</t>

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

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

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

            <t>Type Gauge.</t></dd>
          <dt>Type = 22: (64-bit Gauge) Current Gauge)</dt><dd>

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

            <t>Type Gauge.</t></dd>
          <dt>Type = 23: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In accepted by an inbound policy.
            The policy.</t><t>The
          value is structured as: as a 2-byte AFI, a 1-byte SAFI, followed by and a
          64-bit Gauge.</t>

            <t>Type Gauge.</t></dd>
          <dt>Type = 26: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in the
          per-AFI/SAFI post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB suppressed by
          a configured route damping policy. The route-damping policy.</t><t>The value is structured as: as a 2-byte
          AFI, a 1-byte SAFI, followed by and a 64-bit Gauge. 'Suppressed' Gauge.</t><t>'Suppressed' refers to
          a route which that has been declared suppressed by the BGP Route Flap
          Damping mechanism as described in Section 2.2 of <xref target="RFC2439" />.</t>

            <t>Type section="2.2"
          target="RFC2439"/>.</t></dd>
          <dt>Type = 27: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB marked as stale by
          Graceful Restart (GR) events. The events.</t><t>The value is structured as: as a 2-byte
          AFI, a 1-byte SAFI, followed by and a 64-bit Gauge. 'Stale' Gauge.</t><t>'Stale' refers to a
          route which that has been declared stale by the BGP GR mechanism as
          described in Section 4.1 of <xref
            target="RFC4724" />.</t>

            <t>Type section="4.1" target="RFC4724"/>.</t></dd>
          <dt>Type = 28: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB marked as stale by
          Long-Lived Graceful Restart (LLGR).
            The (LLGR).</t><t>The value is structured as: as
a 2-byte AFI, a 1-byte SAFI,
            followed by and a 64-bit Gauge. 'Stale' Gauge.</t><t>'Stale' refers
          to a route which that has been declared stale by the BGP LLGR mechanism
          as described in
            Section 4.3 of <xref target="RFC9494" />.</t>

            <t>Type section="4.3" target="RFC9494"/>.</t></dd>
          <dt>Type = 29: (64-bit Gauge) Current Gauge)</dt><dd>Current number of routes in the
          post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In left before exceeding the received route received-route
          threshold as defined in Section 6.7 of <xref target="RFC4271" />.</t>

            <t>Type section="6.7" target="RFC4271"/>.</dd>
          <dt>Type = 30: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes
          in the per-AFI/SAFI in post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In left before exceeding the received route
          received-route threshold which that corresponds to the upper bound of
          per-AFI/SAFI accepted routes following the model defined in Section 6.7 of <xref
            target="RFC4271" />. The
          section="6.7" target="RFC4271"/>.</t><t>The value is structured as: as a 2-byte
          AFI, a 1-byte SAFI, followed by and a 64-bit Gauge.</t>

            <t>Type Gauge.</t></dd>
          <dt>Type = 31: (64-bit Gauge) Current Gauge)</dt><dd>Current number of routes in
          the post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB 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 <bcp14>MUST NOT</bcp14> be reported.</t>

            <t>Type reported.</dd>
          <dt>Type = 32: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB 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 <bcp14>MUST NOT</bcp14> be reported. The reported.</t><t>The value is structured as:
          as a 2-byte AFI, a 1-byte SAFI, followed by and a 64-bit Gauge.</t>

            <t>Type Gauge.</t></dd>
          <dt>Type = 33: (64-bit Gauge) Current Gauge)</dt><dd>Current number of routes in
          the pre-policy
            Adj-RIB-In Adj&nbhy;RIB&nbhy;In rejected by due to exceeding the maximum AS_PATH
          length supported by the local configuration.</t>

            <t>Type configuration.</dd>
          <dt>Type = 34: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI in pre-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In rejected by due to exceeding the
          maximum AS_PATH length supported by the local configuration. The configuration.</t><t>The
          value is structured as: as a 2-byte AFI, a 1-byte SAFI, followed by and a
          64-bit
            Gauge.</t>

            <t>Type Gauge.</t></dd>
          <dt>Type = 35: (64-bit Gauge) Current Gauge)</dt><dd>

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

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

            <t>Type Gauge.</t></dd>
          <dt>Type = 37: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI post-policy Adj-RIB-In Adj&nbhy;RIB&nbhy;In whose RPKI route origin
          validation state is NotFound due to the absence of a matching ROA of
          RPKI <xref target="RFC6811" />. The target="RFC6811"/>.</t><t>The value is structured as: as a 2-byte
          AFI, a 1-byte SAFI, followed by and a 64-bit Gauge.</t>
          </list>
        </t> Gauge.</t></dd>
        </dl>
      </section>
      <section anchor="adj-rib-out-stats"
               title="Adj-RIB-Out anchor="adj-rib-out-stats">
        <name>Adj&nbhy;RIB&nbhy;Out RIB Monitoring Statistics Definition">
        <t>
          <list style="symbols">
            <t>Type Definition</name>
        <dl spacing="normal" newline="true">
          <dt>Type = 38: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI pre-policy Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out rejected by an outbound policy.
          These routes are active routes which that otherwise would have been
          advertised in the absence of an outbound policy which that rejected them.
            The them.</t>
          <t>The value is structured as: as a 2-byte AFI, a 1-byte SAFI, followed by and
          a 64-bit Gauge.</t>

            <t>Type Gauge.</t></dd>
          <dt>Type = 39: (64-bit Gauge) Current Gauge)</dt><dd>Current number of routes in the
          pre-policy
            Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out filtered due to the AS_PATH length exceeding the
          locally configured maximum.</t>

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

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

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

            <t>Type Gauge.</t></dd>
          <dt>Type = 43: (64-bit Gauge) Current Gauge)</dt><dd><t>Current number of routes in
          the per-AFI/SAFI post-policy Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out whose RPKI route origin
          validation state is NotFound due to the absence of a matching ROA of
          RPKI <xref target="RFC6811" />. The target="RFC6811"/>.</t><t>The value is structured as: as
          a 2-byte AFI, a 1-byte SAFI, followed by and a 64-bit Gauge.</t>
          </list>
        </t> Gauge.</t></dd>
        </dl>
      </section>
    </section>
    <section anchor="Application anchor="Application_Scope_of_Statistics">
      <name>Application Scope of Statistics"
             title="Application Scope of Statistics">
      <t>This section Statistics</name>
      <t><xref target="tbl-scope-of-application"/> briefly lists the statistics defined in this document
      and outlines their scope of application, as shown in Table 1.</t> application.</t>

      <table anchor="tbl-scope-of-application" align="center" pn="table-1">
          <name slugifiedName="name-scope-of-application">Scope align="center">
        <name>Scope of Application</name>
        <thead>
          <tr>
            <th align="left" colspan="1" rowspan="1">Type</th> align="left">Type</th>
            <th align="left" colspan="1" rowspan="1">Pre-policy Adj-RIB-In</th> align="left">Pre-policy Adj&nbhy;RIB&nbhy;In</th>
            <th align="left" colspan="1" rowspan="1">Post-policy Adj-RIB-In</th> align="left">Post-policy Adj&nbhy;RIB&nbhy;In</th>
            <th align="left" colspan="1" rowspan="1">Loc-RIB</th> align="left">Loc-RIB</th>
            <th align="left" colspan="1" rowspan="1">Pre-policy Adj-RIB-Out</th> align="left">Pre-policy Adj&nbhy;RIB&nbhy;Out</th>
            <th align="left" colspan="1" rowspan="1">Post-policy Adj-RIB-Out</th> align="left">Post-policy Adj&nbhy;RIB&nbhy;Out</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="center" colspan="1" rowspan="1">18</td> align="center">18</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">19</td> align="center">19</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">20</td> align="center">20</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">21</td> align="center">21</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">22</td> align="center">22</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">23</td> align="center">23</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">26</td> align="center">26</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">27</td> align="center">27</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">28</td> align="center">28</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">29</td> align="center">29</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">30</td> align="center">30</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">31</td> align="center">31</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">32</td> align="center">32</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">33</td> align="center">33</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">34</td> align="center">34</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">35</td> align="center">35</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">36</td> align="center">36</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">37</td> align="center">37</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">38</td> align="center">38</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">39</td> align="center">39</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">40</td> align="center">40</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">41</td> align="center">41</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">42</td> align="center">42</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">43</td> align="center">43</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">N</td> align="center">N</td>
            <td align="center" colspan="1" rowspan="1">Y</td> align="center">Y</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="Implementation-Considerations"
             title="Implementation Considerations"> anchor="Implementation-Considerations">
      <name>Implementation Considerations</name>
      <t>This document specifies gauges Gauges for new BMP statistics. The format of
      BMP statistics Statistics Report messages remains unchanged from <xref
      target="RFC7854" />. target="RFC7854"/>. This section outlines the implementation
      considerations for new BMP statistics.</t>

      <t>For backward compatibility, and absent policy otherwise, any other policy, it is
      RECOMMENDED
      <bcp14>RECOMMENDED</bcp14> that BMP producers capable of generating both (Types 7 and
      18) or and (Types 9 and 19) BMP statistics SHOULD transmit both
      corresponding types simultaneously. This allows BMP collectors to
      process either format according to their needs without disrupting
      existing implementations that rely on Type Types 7 or Type 9. The selection of
      which statistic statistics types to generate within each pair SHOULD <bcp14>SHOULD</bcp14> be treated as
      an implementation decision rather than a protocol requirement, with the
      BMP collector behavior for handling these statistic statistics types remaining
      implementation-specific.</t>
      implementation specific.</t>
      <t>Some statistics are dependent on feature configurations, such as GR,
      LLGR, and RPKI, so RPKI; therefore, the corresponding statistics SHOULD <bcp14>SHOULD</bcp14> only be generated
      and sent when these features are enabled on the BMP producer. These
      statistics include Types the following Types: 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 target="RFC9069"/>; therefore, they may apply to the Loc-RIB view after
      best-path selection is completed. These statistics include Types 26, 27,
      28, 31, and 32. When these statistics apply to the Loc-RIB view, the
      Peer Type
      "Peer Type" field in the Per-Peer Header of the corresponding BMP Statistics
      Report Message MUST message <bcp14>MUST</bcp14> set to 3.</t>
      <t>Certain statistics may have logical relationships (e.g., per-AFI/SAFI
      counts summing to global totals). BMP statistics producers and
      collectors MAY <bcp14>MAY</bcp14> perform consistency checks but MUST NOT <bcp14>MUST NOT</bcp14> assume strict
      dependencies (due to potential race conditions or partial failures).
      Discrepancies (e.g., sum(per-AFI/SAFI) != global count) SHOULD <bcp14>SHOULD</bcp14> be logged
      as warnings but MUST NOT <bcp14>MUST NOT</bcp14> disrupt protocol operation.</t>

      <t>The generation and transmission of type Types 27 and 28 during an active
      GR/LLGR event consumes additional control plane resources (e.g., CPU).
      BMP statistics producers SHOULD <bcp14>SHOULD</bcp14> prioritize the core GR/LLGR convergence
      procedures. To avoid adversely impacting the restart process, a BMP
      statistics producer MAY <bcp14>MAY</bcp14> choose to sample this value at a lower
      frequency, buffer the updates, or temporarily suspend reporting for this
      type during the most critical phases of a switchover.</t>
      <t>These gauges Gauges may reset due to manual clearance, clearance or overflow. BMP
      statistics producers and collectors MUST <bcp14>MUST</bcp14> track discontinuities and log
      this anomaly.</t>
    </section>
    <section anchor="Operational" title="Operational Considerations"> anchor="Operational">
      <name>Operational Considerations</name>
      <t>This section outlines some operational considerations of new BMP
      statistics for BMP operators.</t>
      <t>Transmission scheduling and triggering mechanisms for new gauges Gauges are
      implementation-dependent.
      implementation dependent. BMP operators SHOULD <bcp14>SHOULD</bcp14> determine appropriate
      report generation and delivery strategies, including configurable timing
      intervals and threshold values. The mechanism for controlling the
      reporting of new gauges SHOULD Gauges <bcp14>SHOULD</bcp14> be consistent with that of existing
      types.</t>
      <t>BMP operators SHOULD <bcp14>SHOULD</bcp14> rate-limit statistic statistics updates to minimize
      performance impact on control-plane control plane processes. BMP operators SHOULD <bcp14>SHOULD</bcp14> only
      enable necessary statistics to reduce memory and CPU overhead.
      Implementations SHOULD <bcp14>SHOULD</bcp14> also support per-router configuration of
      statistic subsets for collection and reporting.</t>
      <t>Some BMP statistics producers, or configurations in BMP statistics
      producers, MAY <bcp14>MAY</bcp14> discard routes that do not match policy and thus policy; thus, the
      accepted count (Type 23) and the Adj-RIB-In Adj&nbhy;RIB&nbhy;In counts (Type 21) will be
      identical in such cases. BMP operators SHOULD <bcp14>SHOULD</bcp14> be aware of this behavior
      when interpreting these gauges. Gauges. BMP operators SHOULD <bcp14>SHOULD</bcp14> be aware that BMP
      statistics producers and collectors MAY <bcp14>MAY</bcp14> log inconsistencies between
      statistics as warnings.</t>
    </section>
    <section anchor="Security" title="Security Considerations"> anchor="Security">
      <name>Security Considerations</name>
      <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 section="11" target="RFC7854"/>,
      <xref target="RFC8671" />, section="8" target="RFC8671"/>, and Section 7 of <xref
      target="RFC9069" /> section="7" target="RFC9069"/> are also applicable to the gauges Gauges defined in this
      document. This document does not add any additional security
      considerations.</t>
      <t>Monitored devices SHOULD <bcp14>SHOULD</bcp14> be configured to implement rate-limited
      reporting of new gauges.</t> Gauges.</t>
    </section>
    <section anchor="IANA" title="IANA Considerations"> anchor="IANA">

<!--[rfced] We had the following questions/comments related to the
     IANA Considerations section:

a) We will communicate any updates to the descriptions of the Stat
types to IANA upon the completion of AUTH48.

-->

      <name>IANA Considerations</name>
      <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 "BMP Statistics Types registry</eref>, Types" registry, part of the <eref
      target="https://www.iana.org/assignments/bmp-parameters/bmp-parameters.xhtml">
      BMP parameters
      target="https://www.iana.org/assignments/bmp-parameters/"
      brackets="angle"> "BGP Monitoring Protocol (BMP) Parameters" registry group</eref>.</t>

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

      <t>
        <list style="symbols">
          <t>Type = 18: Number each entry.</t>

<table anchor="tbl-iana-stats-types" align="center">
  <name>BMP Statistics Types</name>
  <thead>
    <tr>
      <th align="left">Stat Type</th>
      <th align="left">Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td align="center">18</td>
      <td>Number of routes currently in the pre-policy
          Adj-RIB-In.</t>

          <t>Type = 19: Number
      Adj&nbhy;RIB&nbhy;In.</td>
    </tr>
    <tr>
      <td align="center">19</td>
      <td>Number of routes currently in the per-AFI/SAFI
      pre-policy
          Adj-RIB-In.</t>

          <t>Type = 20: Number Adj&nbhy;RIB&nbhy;In.</td>
    </tr>
    <tr>
      <td align="center">20</td>
      <td>Number of routes currently in the post-policy
          Adj-RIB-In.</t>

          <t>Type = 21: Number
      Adj&nbhy;RIB&nbhy;In.</td>
    </tr>
    <tr>
      <td align="center">21</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In.</t>

          <t>Type = 22: Number Adj&nbhy;RIB&nbhy;In.</td>
    </tr>
    <tr>
      <td align="center">22</td>
      <td>Number of routes currently in the per-AFI/SAFI
      pre-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In rejected by an inbound policy.</t>

          <t>Type = 23: Number policy.</td>
    </tr>
    <tr>
      <td align="center">23</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In accepted by an inbound policy.</t>

          <t>Type = 26: Number policy.</td>
    </tr>
    <tr>
      <td align="center">26</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB suppressed by a
      configured route damping policy.
          </t>

          <t>Type = 27: Number route-damping policy.</td>
    </tr>
    <tr>
      <td align="center">27</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB marked as stale by
      GR events.</t>

          <t>Type = 28: Number events.</td>
    </tr>
    <tr>
      <td align="center">28</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB marked as stale by LLGR.</t>

          <t>Type = 29: Number
      LLGR.</td>
    </tr>
    <tr>
      <td align="center">29</td>
      <td>Number of routes currently in the post-policy Adj-RIB-In
      Adj&nbhy;RIB&nbhy;In left before exceeding the received route threshold.</t>

          <t>Type = 30: Number received-route
      threshold.</td>
    </tr>
    <tr>
      <td align="center">30</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In left before exceeding the received route threshold.</t>

          <t>Type = 31: Number
      received-route threshold.</td>
    </tr>
    <tr>
      <td align="center">31</td>
      <td>Number of routes currently in the post-policy Adj-RIB-In
      Adj&nbhy;RIB&nbhy;In or Loc-RIB left before exceeding a
      license-customized route threshold.</t>

          <t>Type = 32: Number threshold.</td>
    </tr>
    <tr>
      <td align="center">32</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In or Loc-RIB left before exceeding
      a license-customized route
          threshold.</t>

          <t>Type = 33: Number threshold.</td>
    </tr>
    <tr>
      <td align="center">33</td>
      <td>Number of routes currently in the pre-policy Adj-RIB-In
      Adj&nbhy;RIB&nbhy;In rejected due to exceeding the locally
      configured maximum AS_PATH
          length.</t>

          <t>Type = 34: Number length.</td>
    </tr>
    <tr>
      <td align="center">34</td>
      <td>Number of routes currently in the per-AFI/SAFI
      pre-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In rejected due to exceeding the
      locally configured maximum AS_PATH length.</t>

          <t>Type = 35: Number length.</td>
    </tr>
    <tr>
      <td align="center">35</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In invalidated after verifying the
      route origin AS number ASN through the ROA of RPKI.</t>

          <t>Type = 36: Number the RPKI and mismatch of prefix length.</td>
    </tr>
    <tr>
      <td align="center">36</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In validated after verifying the
      route origin AS number ASN through the ROA of RPKI.</t>

          <t>Type = 37: Number the RPKI.</td>
    </tr>
    <tr>
      <td align="center">37</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-In Adj&nbhy;RIB&nbhy;In whose RPKI route origin
      validation state is NotFound.</t>
        </list>
      </t>

      <t>
        <list style="symbols">
          <t>Type = 38: Number NotFound.</td>
    </tr>
    <tr>
      <td align="center">38</td>
      <td>Number of routes currently in the per-AFI/SAFI
      pre-policy
          Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out rejected by an outbound policy.</t>

          <t>Type = 39: Number
      policy.</td>
    </tr>
    <tr>
      <td align="center">39</td>
      <td>Number of routes currently in the pre-policy Adj-RIB-Out
      Adj&nbhy;RIB&nbhy;Out filtered due to AS_PATH length exceeding
      the locally configured
          maximum.</t>

          <t>Type = 40: Number maximum.</td>
    </tr>
    <tr>
      <td align="center">40</td>
      <td>Number of routes currently in the per-AFI/SAFI
      pre-policy
          Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out filtered due to AS_PATH length
      exceeding the locally configured maximum.</t>

          <t>Type = 41: Number maximum.</td>
    </tr>
    <tr>
      <td align="center">41</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out invalidated after verifying the
      route origin AS number ASN through the ROA of RPKI.</t>

          <t>Type = 42: Number the RPKI and mismatch of prefix length.</td>
    </tr>
    <tr>
      <td align="center">42</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-Out Adj&nbhy;RIB&nbhy;Out validated after verifying the
      route origin AS number ASN through the ROA of RPKI.</t>

          <t>Type = 43: Number the RPKI.</td>
    </tr>
    <tr>
      <td align="center">43</td>
      <td>Number of routes currently in the per-AFI/SAFI
      post-policy
          Adj-RIB-Out Adj&nbhy;RIB&nbhy;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 = 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> NotFound.</td>
    </tr>
  </tbody>
</table>

    </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"?-->
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2439.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2439.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4271.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4271.xml"/>
        <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" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4724.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.6811.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4760.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7854.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />

        <!-- href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6811.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7911.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" />--> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7854.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8671.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8671.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.9069.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9069.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.9494.xml"
                    xmlns:xi="http://www.w3.org/2001/XInclude" /> href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9494.xml"/>

        <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>

    <section anchor="Acknowledgements" numbered="false">
      <name>Acknowledgements</name>
      <t>The authors would like to thank <contact fullname="Jeff Haas"/>,
      <contact fullname="Mohamed Boucadair"/>, <contact fullname="Thomas
      Graf"/>, and <contact fullname="Prasad S. Narasimha"/> for their
      valuable input.</t>
      <t>Thanks to <contact fullname="Giuseppe Fioccola"/> for the OPSDIR,
      <contact fullname="Jouni Korhonen"/> for the GENART, and <contact
      fullname="Bruno Decraene"/> for the RTGDIR review.</t>
      <t>Thanks to <contact fullname="Gunter van de Velde"/>, <contact
      fullname="Éric Vyncke"/>, and <contact fullname="Ketan Talaulikar"/> for
      the IESG review.</t>
    </section>
  </back>
</rfc>