rfc9972xml2.original.xml   rfc9972.xml 
<?xml version="1.0" encoding="US-ASCII"?> <?xml version='1.0' encoding='utf-8'?>
<!-- This template is for creating an Internet Draft using xml2rfc, <rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" conse
which is available here: http://xml.resource.org. --> nsus="true" docName="draft-ietf-grow-bmp-bgp-rib-stats-17" number="9972" updates
<rfc category="std" consensus="true" ="" obsoletes="" tocInclude="true" symRefs="true" sortRefs="true" ipr="trust2009
docName="draft-ietf-grow-bmp-bgp-rib-stats-17" ipr="trust200902" 02" submissionType="IETF" xml:lang="en" prepTime="2026-05-19T15:22:46" indexIncl
submissionType="IETF"> ude="true" scripts="Common,Latin" tocDepth="3">
<!-- category values: std, bcp, info, exp, and historic <link href="https://datatracker.ietf.org/doc/draft-ietf-grow-bmp-bgp-rib-stats
ipr values: full3667, noModification3667, noDerivatives3667 -17" rel="prev"/>
you can add the attributes updates="NNNN" and obsoletes="NNNN" <link href="https://dx.doi.org/10.17487/rfc9972" rel="alternate"/>
they will automatically be output with "(if approved)" --> <link href="urn:issn:2070-1721" rel="alternate"/>
<!-- ***** FRONT MATTER ***** -->
<front> <front>
<title abbrev="BMP New Statistics">Advanced BGP Monitoring Protocol (BMP) <title abbrev="BMP New Statistics">Advanced BGP Monitoring Protocol (BMP) St
Statistics Types</title> atistics Types</title>
<seriesInfo name="RFC" value="9972" stream="IETF"/>
<!-- add 'role="editor"' below for the editors if appropriate --> <author fullname="Mukul Srivastava" initials="M." role="editor" surname="Sri
vastava">
<!-- Another author who claims to be an editor --> <organization showOnFrontPage="true">Hewlett Packard Enterprise</organizat
ion>
<author fullname="Mukul Srivastava" initials="M." role="editor"
surname="Srivastava">
<organization>Hewlett Packard Enterprise</organization>
<address> <address>
<postal> <postal>
<street>10 Technology Park Dr</street> <street>10 Technology Park Dr</street>
<!-- Reorder these if your country does things differently -->
<city>Westford</city> <city>Westford</city>
<region>MA</region> <region>MA</region>
<code>01886</code> <code>01886</code>
<country>United States of America</country>
<country>USA</country>
</postal> </postal>
<email>mukul.srivastava@hpe.com</email> <email>mukul.srivastava@hpe.com</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<author fullname="Yisong Liu" initials="Y." surname="Liu"> <author fullname="Yisong Liu" initials="Y." surname="Liu">
<organization>China Mobile</organization> <organization showOnFrontPage="true">China Mobile</organization>
<address> <address>
<postal> <postal>
<street>32 Xuanwumen West Street</street> <street>32 Xuanwumen West Street</street>
<!-- Reorder these if your country does things differently -->
<city>Beijing</city> <city>Beijing</city>
<region>Xicheng District</region> <region>Xicheng District</region>
<code>100053</code> <code>100053</code>
<country>China</country> <country>China</country>
</postal> </postal>
<email>liuyisong@chinamobile.com</email> <email>liuyisong@chinamobile.com</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<author fullname="Changwang Lin" initials="C." role="editor" surname="Lin"> <author fullname="Changwang Lin" initials="C." role="editor" surname="Lin">
<organization>New H3C Technologies</organization> <organization showOnFrontPage="true">New H3C Technologies</organization>
<address> <address>
<postal> <postal>
<street>8 Yongjia North Road</street> <street>8 Yongjia North Road</street>
<!-- Reorder these if your country does things differently -->
<city>Beijing</city> <city>Beijing</city>
<region>Haidian District</region> <region>Haidian District</region>
<code>100094</code> <code>100094</code>
<country>China</country> <country>China</country>
</postal> </postal>
<email>linchangwang.04414@h3c.com</email> <email>linchangwang.04414@h3c.com</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<author fullname="Jinming Li" initials="J." surname="Li"> <author fullname="Jinming Li" initials="J." surname="Li">
<organization>China Mobile</organization> <organization showOnFrontPage="true">China Mobile</organization>
<address> <address>
<postal> <postal>
<street>32 Xuanwumen West Street</street> <street>32 Xuanwumen West Street</street>
<!-- Reorder these if your country does things differently -->
<city>Beijing</city> <city>Beijing</city>
<region>Xicheng District</region> <region>Xicheng District</region>
<code>100053</code> <code>100053</code>
<country>China</country> <country>China</country>
</postal> </postal>
<email>lijinming@chinamobile.com</email> <email>lijinming@chinamobile.com</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<date month="05" year="2026"/>
<date year="2025" /> <area>OPS</area>
<workgroup>grow</workgroup>
<!-- Meta-data Declarations -->
<area>General</area>
<workgroup>GROW</workgroup>
<keyword>IDR</keyword> <keyword>IDR</keyword>
<keyword>GROW</keyword> <keyword>GROW</keyword>
<keyword>BGP</keyword> <keyword>BGP</keyword>
<keyword>BMP</keyword> <keyword>BMP</keyword>
<abstract pn="section-abstract">
<abstract> <t indent="0" pn="section-abstract-1">The BGP Monitoring Protocol (BMP) de
<t>RFC 7854 defines different BGP Monitoring Protocol (BMP) statistics scribed in RFC 7854 defines statistics
message types to observe events that occur on a monitored router. This message types to observe events that occur on a monitored router. This
document defines new statistics type to monitor BMP Adj-RIB-In and document defines new statistics types to monitor BMP Adj‑RIB‑In and
Adj-RIB-Out Routing Information Bases (RIBs).</t> Adj‑RIB‑Out Routing Information Bases (RIBs).</t>
</abstract> </abstract>
<boilerplate>
<section anchor="status-of-memo" numbered="false" removeInRFC="false" toc=
"exclude" pn="section-boilerplate.1">
<name slugifiedName="name-status-of-this-memo">Status of This Memo</name
>
<t indent="0" pn="section-boilerplate.1-1">
This is an Internet Standards Track document.
</t>
<t indent="0" pn="section-boilerplate.1-2">
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by
the Internet Engineering Steering Group (IESG). Further
information on Internet Standards is available in Section 2 of
RFC 7841.
</t>
<t indent="0" pn="section-boilerplate.1-3">
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
<eref target="https://www.rfc-editor.org/info/rfc9972" brackets="non
e"/>.
</t>
</section>
<section anchor="copyright" numbered="false" removeInRFC="false" toc="excl
ude" pn="section-boilerplate.2">
<name slugifiedName="name-copyright-notice">Copyright Notice</name>
<t indent="0" pn="section-boilerplate.2-1">
Copyright (c) 2026 IETF Trust and the persons identified as the
document authors. All rights reserved.
</t>
<t indent="0" pn="section-boilerplate.2-2">
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(<eref target="https://trustee.ietf.org/license-info" brackets="none
"/>) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this
document must include Revised BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Revised BSD License.
</t>
</section>
</boilerplate>
<toc>
<section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" p
n="section-toc.1">
<name slugifiedName="name-table-of-contents">Table of Contents</name>
<ul bare="true" empty="true" indent="2" spacing="compact" pn="section-to
c.1-1">
<li pn="section-toc.1-1.1">
<t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref der
ivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref
derivedContent="" format="title" sectionFormat="of" target="name-introduction">
Introduction</xref></t>
<ul bare="true" empty="true" indent="2" spacing="compact" pn="sectio
n-toc.1-1.1.2">
<li pn="section-toc.1-1.1.2.1">
<t indent="0" keepWithNext="true" pn="section-toc.1-1.1.2.1.1"><
xref derivedContent="1.1" format="counter" sectionFormat="of" target="section-1.
1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-re
quirements-language">Requirements Language</xref></t>
</li>
</ul>
</li>
<li pn="section-toc.1-1.2">
<t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref der
ivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref
derivedContent="" format="title" sectionFormat="of" target="name-terminology">T
erminology</xref></t>
</li>
<li pn="section-toc.1-1.3">
<t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" form
at="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" f
ormat="title" sectionFormat="of" target="name-rib-monitoring-statistics">RIB Mon
itoring Statistics</xref></t>
<ul bare="true" empty="true" indent="2" spacing="compact" pn="sectio
n-toc.1-1.3.2">
<li pn="section-toc.1-1.3.2.1">
<t indent="0" pn="section-toc.1-1.3.2.1.1"><xref derivedContent=
"3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derived
Content="" format="title" sectionFormat="of" target="name-statistics-format">Sta
tistics Format</xref></t>
</li>
<li pn="section-toc.1-1.3.2.2">
<t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent=
"3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derived
Content="" format="title" sectionFormat="of" target="name-adjribin-rib-monitorin
g-sta">Adj‑RIB‑In RIB Monitoring Statistics Definition</xref></t>
</li>
<li pn="section-toc.1-1.3.2.3">
<t indent="0" pn="section-toc.1-1.3.2.3.1"><xref derivedContent=
"3.3" format="counter" sectionFormat="of" target="section-3.3"/>.  <xref derived
Content="" format="title" sectionFormat="of" target="name-adjribout-rib-monitori
ng-st">Adj‑RIB‑Out RIB Monitoring Statistics Definition</xref></t>
</li>
</ul>
</li>
<li pn="section-toc.1-1.4">
<t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" form
at="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" f
ormat="title" sectionFormat="of" target="name-application-scope-of-statis">Appli
cation Scope of Statistics</xref></t>
</li>
<li pn="section-toc.1-1.5">
<t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" form
at="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" f
ormat="title" sectionFormat="of" target="name-implementation-consideratio">Imple
mentation Considerations</xref></t>
</li>
<li pn="section-toc.1-1.6">
<t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" form
at="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" f
ormat="title" sectionFormat="of" target="name-operational-considerations">Operat
ional Considerations</xref></t>
</li>
<li pn="section-toc.1-1.7">
<t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" form
at="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" f
ormat="title" sectionFormat="of" target="name-security-considerations">Security
Considerations</xref></t>
</li>
<li pn="section-toc.1-1.8">
<t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" form
at="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" f
ormat="title" sectionFormat="of" target="name-iana-considerations">IANA Consider
ations</xref></t>
</li>
<li pn="section-toc.1-1.9">
<t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" form
at="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" f
ormat="title" sectionFormat="of" target="name-normative-references">Normative Re
ferences</xref></t>
</li>
<li pn="section-toc.1-1.10">
<t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="" form
at="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="
" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgeme
nts</xref></t>
</li>
<li pn="section-toc.1-1.11">
<t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="" form
at="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="
" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Add
resses</xref></t>
</li>
</ul>
</section>
</toc>
</front> </front>
<middle> <middle>
<section anchor="introduction" title="Introduction"> <section anchor="introduction" numbered="true" removeInRFC="false" toc="incl
<t>Section 4.8 of <xref target="RFC7854" /> defines a number of ude" pn="section-1">
<name slugifiedName="name-introduction">Introduction</name>
<t indent="0" pn="section-1-1"><xref section="4.8" target="RFC7854" format
="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc7854#se
ction-4.8" derivedContent="RFC7854"/> defines a number of
different BGP Monitoring Protocol (BMP) statistics types to observe different BGP Monitoring Protocol (BMP) statistics types to observe
major events that occur on a monitored router. Stats are either counters major events that occur on a monitored router. Statistics are either count
or gauges. Section 6.2 of <xref target="RFC8671" /> also defines several ers
BMP statistics types for Adj-RIB-Out of a monitored router.</t> or Gauges. <xref section="6.2" target="RFC8671" format="default" sectionFo
rmat="of" derivedLink="https://rfc-editor.org/rfc/rfc8671#section-6.2" derivedCo
<t>New BMP statistics types are needed to enable more refined BGP route ntent="RFC8671"/> also defines several
monitoring and analysis, improving operational maintenance and BMP statistics types for Adj‑RIB‑Out of a monitored router.</t>
<t indent="0" pn="section-1-2">New BMP statistics types are needed to enab
le more-refined BGP route
monitoring and analysis to improve operational maintenance and
troubleshooting capabilities.</t> troubleshooting capabilities.</t>
<t indent="0" pn="section-1-3">This document defines Gauges for new BMP st
<t>This document defines gauges for new BMP statistics. The atistics. The
applicability scope of these new gauges (Adj-RIB-In, Adj-RIB-Out, 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 Loc-RIB) is provided in <xref target="Application_Scope_of_Statistics" for
message remains same as defined in <xref target="RFC7854" />.</t> mat="default" sectionFormat="of" derivedContent="Section 4"/>. The format of the
BMP Statistics Report
<section title="Requirements Language"> message remains the same as defined in <xref target="RFC7854" format="defa
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", ult" sectionFormat="of" derivedContent="RFC7854"/>.</t>
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and <section numbered="true" removeInRFC="false" toc="include" pn="section-1.1
"OPTIONAL" in this document are to be interpreted as described in BCP ">
14 <xref target="RFC2119" /> <xref target="RFC8174" /> when, and only <name slugifiedName="name-requirements-language">Requirements Language</
when, they appear in all capitals, as shown here. The BCP14 is used to name>
stress importance for operators but are not required as formal <t indent="0" pn="section-1.1-1">
implementation requirement.</t> The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU
IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOUL
D</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>N
OT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to
be interpreted as
described in BCP 14 <xref target="RFC2119" format="default" sectionFormat="o
f" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFor
mat="of" derivedContent="RFC8174"/>
when, and only when, they appear in all capitals, as shown here.
</t>
<aside pn="section-1.1-2">
<t indent="0" pn="section-1.1-2.1">Note that the key words are used to
stress importance for operations; they are not required as a formal implementat
ion requirement.</t>
</aside>
</section> </section>
</section> </section>
<section numbered="true" removeInRFC="false" toc="include" pn="section-2">
<section title="Terminology"> <name slugifiedName="name-terminology">Terminology</name>
<t>This document makes use of the following terms: <list style="symbols"> <t indent="0" pn="section-2-1">This document makes use of the following te
<t>Adj-RIB-In: As defined in <xref target="RFC4271" />, "The rms: </t>
<dl spacing="normal" newline="false" indent="3" pn="section-2-2">
<dt pn="section-2-2.1">Adj‑RIB‑In:</dt>
<dd pn="section-2-2.2">
<t indent="0" pn="section-2-2.2.1">As defined in <xref section="1.1" s
ectionFormat="of" target="RFC4271" format="default" derivedLink="https://rfc-edi
tor.org/rfc/rfc4271#section-1.1" derivedContent="RFC4271"/>:</t>
<blockquote pn="section-2-2.2.2">The
Adj-RIBs-In contains unprocessed routing information that has been Adj-RIBs-In contains unprocessed routing information that has been
advertised to the local BGP speaker by its peers."</t> advertised to the local BGP speaker by its peers.</blockquote>
</dd>
<t>Pre-policy Adj-RIB-In: The result before applying the inbound <dt pn="section-2-2.3">Pre-policy Adj‑RIB‑In:</dt>
policy to an Adj-RIB-In. Note that this is an explicit definition <dd pn="section-2-2.4">The result before applying the inbound
that aligns with the pre-policy Adj-RIB-In concept specified in policy to an Adj‑RIB‑In. Note that this is an explicit definition
Section 2 of <xref target="RFC7854" />.</t> that aligns with the pre-policy Adj‑RIB‑In concept specified in
<xref section="2" target="RFC7854" format="default" sectionFormat="of"
<t>Post-policy Adj-RIB-In: As defined in Section 2 of <xref derivedLink="https://rfc-editor.org/rfc/rfc7854#section-2" derivedContent="RFC7
target="RFC7854" />.</t> 854"/>.</dd>
<dt pn="section-2-2.5">Post-policy Adj‑RIB‑In:</dt>
<t>Adj-RIB-Out: As defined in <xref target="RFC4271" />, "The <dd pn="section-2-2.6">
<t indent="0" pn="section-2-2.6.1">As defined in <xref section="2" tar
get="RFC7854" format="default" sectionFormat="of" derivedLink="https://rfc-edito
r.org/rfc/rfc7854#section-2" derivedContent="RFC7854"/>:</t>
<blockquote pn="section-2-2.6.2">The result of applying inbound policy
to an Adj‑RIB‑In, but prior to the application of route selection to form the L
oc-RIB.</blockquote>
</dd>
<dt pn="section-2-2.7">Adj‑RIB‑Out:</dt>
<dd pn="section-2-2.8">
<t indent="0" pn="section-2-2.8.1">As defined in <xref section="1.1" s
ectionFormat="of" target="RFC4271" format="default" derivedLink="https://rfc-edi
tor.org/rfc/rfc4271#section-1.1" derivedContent="RFC4271"/>:</t>
<blockquote pn="section-2-2.8.2">The
Adj-RIBs-Out contains the routes for advertisement to specific peers Adj-RIBs-Out contains the routes for advertisement to specific peers
by means of the local speaker's UPDATE messages."</t> by means of the local speaker's UPDATE messages.</blockquote>
</dd>
<t>Pre-policy Adj-RIB-Out: As defined in Section 3 of <xref <dt pn="section-2-2.9">Pre-policy Adj‑RIB‑Out:</dt>
target="RFC8671" />.</t> <dd pn="section-2-2.10">
<t indent="0" pn="section-2-2.10.1">As defined in <xref section="3" ta
<t>Post-policy Adj-RIB-Out: As defined in Section 3 of <xref rget="RFC8671" format="default" sectionFormat="of" derivedLink="https://rfc-edit
target="RFC8671" />.</t> or.org/rfc/rfc8671#section-3" derivedContent="RFC8671"/>:</t>
<blockquote pn="section-2-2.10.2">The result before applying the outbo
<t>Loc-RIB: As defined in Section 1.1 of <xref target="RFC4271" />, und policy to an Adj‑RIB‑Out. This normally would match what is in the local RI
"The Loc-RIB contains the routes that have been selected by the B.</blockquote>
local BGP speaker's Decision Process." Note that the Loc-RIB state </dd>
<dt pn="section-2-2.11">Post-policy Adj‑RIB‑Out:</dt>
<dd pn="section-2-2.12">
<t indent="0" pn="section-2-2.12.1">As defined in <xref section="3" ta
rget="RFC8671" format="default" sectionFormat="of" derivedLink="https://rfc-edit
or.org/rfc/rfc8671#section-3" derivedContent="RFC8671"/>:</t>
<blockquote pn="section-2-2.12.2">The result of applying outbound poli
cy to an Adj‑RIB‑Out. This <bcp14>MUST</bcp14> convey to the BMP receiver what
is actually transmitted to the peer.</blockquote>
</dd>
<dt pn="section-2-2.13">Loc-RIB:</dt>
<dd pn="section-2-2.14">
<t indent="0" pn="section-2-2.14.1">As defined in <xref section="1.1"
target="RFC4271" format="default" sectionFormat="of" derivedLink="https://rfc-ed
itor.org/rfc/rfc4271#section-1.1" derivedContent="RFC4271"/>:</t>
<blockquote pn="section-2-2.14.2">The Loc-RIB contains the routes that
have been selected by the
local BGP speaker's Decision Process.</blockquote>
<t indent="0" pn="section-2-2.14.3">Note that the Loc-RIB state
as monitored through BMP might also contain routes imported from as monitored through BMP might also contain routes imported from
other routing protocols such as an IGP or local static routes.</t> other routing protocols such as an IGP or local static routes.</t>
</dd>
<t>Route: As defined in Section 1.1 of <xref <dt pn="section-2-2.15">Route:</dt>
target="RFC4271" />.</t> <dd pn="section-2-2.16">
</list></t> <t indent="0" pn="section-2-2.16.1">As defined in <xref section="1.1"
target="RFC4271" format="default" sectionFormat="of" derivedLink="https://rfc-ed
<t>The terms "Producer" and "Collector" are equivalent to "Monitored itor.org/rfc/rfc4271#section-1.1" derivedContent="RFC4271"/>:</t>
Router" and "Monitoring Station", respectively. Also, "implementation" <blockquote pn="section-2-2.16.2">A unit of information that pairs a s
is used following the same usage in <xref target="RFC7854" />.</t> et of destinations with the attributes of a path to those destinations.</blockqu
ote>
</dd>
</dl>
<t indent="0" pn="section-2-3">The terms "producer" and "collector" are eq
uivalent to "monitored
router" and "monitoring station", respectively. Also, "implementation"
follows the same usage as in <xref target="RFC7854" format="default" secti
onFormat="of" derivedContent="RFC7854"/>.</t>
</section> </section>
<section anchor="Stats" numbered="true" removeInRFC="false" toc="include" pn
<section anchor="Stats" title="RIB Monitoring Statistics"> ="section-3">
<t>This section defines different statistics type for Adj-RIB-In and <name slugifiedName="name-rib-monitoring-statistics">RIB Monitoring Statis
Adj-RIB-Out monitoring type. Some of these statistics are also tics</name>
applicable to Loc-RIB; refer to Section 4 for more details.</t> <t indent="0" pn="section-3-1">This section defines different statistics t
ypes for Adj‑RIB‑In and
<section anchor="stats-format" title="Statistics Format"> Adj‑RIB‑Out monitoring types. Some of these statistics are also
<t>The BMP Statistics Report Message carries statistic information in applicable to Loc-RIB; refer to <xref target="Application_Scope_of_Statist
Type-Length-Value (TLV) formats. Each Statistic is encoded as a TLV ics" format="default" sectionFormat="of" derivedContent="Section 4"/> for more d
(Stat Type, Stat Len, Stat Data) (Section 4.8 of <xref etails.</t>
target="RFC7854" />). "Stat Data" is being referred as "value" when <section anchor="stats-format" numbered="true" removeInRFC="false" toc="in
clude" pn="section-3.1">
<name slugifiedName="name-statistics-format">Statistics Format</name>
<t indent="0" pn="section-3.1-1">The BMP Statistics Report message carri
es statistic information in
Type-Length-Value (TLV) formats. Each statistic is encoded as a TLV
(Stat Type, Stat Len, Stat Data) (see <xref section="4.8" target="RFC785
4" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/r
fc7854#section-4.8" derivedContent="RFC7854"/>). "Stat Data" is being referred t
o as "value" when
defining various RIB Monitoring Statistics.</t> defining various RIB Monitoring Statistics.</t>
<t indent="0" pn="section-3.1-2">Statistics defined in this document can
<t>Statistics defined in this document can be categorized into two be categorized into two
granularities: Global Statistics and Per-Address Family Identifier granularities: Global Statistics and Per-AFI/SAFI (see <xref target="RFC
(AFI)/Subsequent Address Family Identifier (SAFI) <xref 4760" format="default" sectionFormat="of" derivedContent="RFC4760"/>) Statistics
target="RFC4760" /> Statistics. Statistics defined with Per-AFI/SAFI . Statistics defined with Per-AFI/SAFI
descriptions belong to Per-AFI/SAFI Statistics, while other statistics descriptions belong to Per-AFI/SAFI Statistics, while other statistics
belong to Global Statistics. Both a Global Statistic and its belong to Global Statistics. Both Global Statistics and their
corresponding Per-AFI/SAFI Statistics can be reported corresponding Per-AFI/SAFI Statistics can be reported
simultaneously.</t> simultaneously.</t>
<t indent="0" pn="section-3.1-3">The Per-AFI/SAFI Statistics apply only
<t>The Per-AFI/SAFI Statistics apply only to the AFI/SAFIs that a BGP to the AFI/SAFI that a BGP
speaker supports and negotiates with its peer. The authoritative speaker supports and negotiates with its peer. The authoritative
registries for AFI/SAFI values are maintained by IANA <xref registries for AFI/SAFI values are maintained by IANA (see <xref target=
target="IANA-AFI" /> <xref target="IANA-SAFI" />.</t> "IANA-AFI" format="default" sectionFormat="of" derivedContent="IANA-AFI"/> and <
xref target="IANA-SAFI" format="default" sectionFormat="of" derivedContent="IANA
<t>For Global Statistics, the "Stat Data" (value) field is a single -SAFI"/>).</t>
64-bit unsigned integer gauge with "Stat Len" MUST be set to 8. Each <t indent="0" pn="section-3.1-4">For Global Statistics, the "Stat Data"
global statistic MUST appear only once in a BMP Statistics Report (value) field is a single
Message.</t> 64-bit unsigned integer Gauge where the "Stat Len" field <bcp14>MUST</bc
p14> be set to 8. Each
<t>For Per-AFI/SAFI Statistics, the "Stat Data" (value) field is a global statistic <bcp14>MUST</bcp14> appear only once in a BMP Statistic
11-byte structured value formatted as: 2-byte AFI, 1-byte SAFI, and s Report
64-bit Gauge. The "Stat Len" MUST be set to 11. For any given message.</t>
per-AFI/SAFI Statistic, duplicate (AFI, SAFI) pairs MUST NOT appear <t indent="0" pn="section-3.1-5">For Per-AFI/SAFI Statistics, the "Stat
within the same BMP Statistics Report Message. Per-AFI/SAFI statistics Data" (value) field is a
MUST NOT be included in the BMP Statistics Report Message if there is 11-byte structured value formatted as a 2-byte AFI, a 1-byte SAFI, and
a 64-bit Gauge. The "Stat Len" <bcp14>MUST</bcp14> be set to 11. For any
given
per-AFI/SAFI Statistic, duplicate (AFI, SAFI) pairs <bcp14>MUST NOT</bcp
14> appear
within the same BMP Statistics Report message. Per-AFI/SAFI statistics
<bcp14>MUST NOT</bcp14> be included in the BMP Statistics Report message
if there is
no data to report for that AFI/SAFI.</t> no data to report for that AFI/SAFI.</t>
<t indent="0" pn="section-3.1-6">If statistics apply to the Loc-RIB, the
<t>If statistics apply to the Loc-RIB, the "Peer Type" field in the "Peer Type" field in the
Per-Peer Header of the corresponding BMP Statistics Report Message Per-Peer Header of the corresponding BMP Statistics Report message
MUST be set to 3 (Loc-RIB Instance Peer) <xref target="RFC9069" />. <bcp14>MUST</bcp14> be set to 3 (Loc-RIB Instance Peer) <xref target="RF
Otherwise, the "Peer Type" MUST be set as defined in Section 4.2 of of C9069" format="default" sectionFormat="of" derivedContent="RFC9069"/>.
<xref target="RFC7854" />.</t> Otherwise, the "Peer Type" field <bcp14>MUST</bcp14> be set as defined i
n
<t>A BMP implementation MUST ignore unrecognized stat types upon <xref target="RFC7854" section="4.2" format="default" sectionFormat="of"
derivedLink="https://rfc-editor.org/rfc/rfc7854#section-4.2" derivedContent="RF
C7854"/>.</t>
<t indent="0" pn="section-3.1-7">A BMP implementation <bcp14>MUST</bcp14
> ignore unrecognized Stat Types upon
receipt.</t> receipt.</t>
</section> </section>
<section anchor="adj-rib-in-stats" numbered="true" removeInRFC="false" toc
<section anchor="adj-rib-in-stats" ="include" pn="section-3.2">
title="Adj-RIB-In RIB Monitoring Statistics Definition"> <name slugifiedName="name-adjribin-rib-monitoring-sta">Adj‑RIB‑In RIB Mo
<t> nitoring Statistics Definition</name>
<list style="symbols"> <dl spacing="normal" newline="true" indent="3" pn="section-3.2-1">
<t>Type = 18: (64-bit Gauge) Current number of routes in <dt pn="section-3.2-1.1">Type = 18: (64-bit Gauge)</dt>
pre-policy Adj-RIB-In. This gauge is similar to stats type 7 <dd pn="section-3.2-1.2">Current number of routes in
defined in <xref target="RFC7854" /> and makes it explicitly for the pre-policy Adj‑RIB‑In. This Gauge is similar to Stat Type 7 define
the pre-policy Adj-RIB-In.</t> d
in <xref target="RFC7854" format="default" sectionFormat="of" derivedC
<t>Type = 19: (64-bit Gauge) Current number of routes in ontent="RFC7854"/> and makes it explicitly for the
per-AFI/SAFI pre-policy Adj-RIB-In. This gauge is similar to stats pre-policy Adj‑RIB‑In.</dd>
type 9 defined in Section 4.8 of <xref target="RFC7854" /> and <dt pn="section-3.2-1.3">Type = 19: (64-bit Gauge)</dt>
makes it explicitly for the pre-policy Adj-RIB-In. The value is <dd pn="section-3.2-1.4">
structured as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit <t indent="0" pn="section-3.2-1.4.1">Current number of routes in
Gauge.</t> the per-AFI/SAFI pre-policy Adj‑RIB‑In. This Gauge is similar to Stat
Type 9 defined in <xref section="4.8" target="RFC7854" format="default
<t>Type = 20: (64-bit Gauge) Current number of routes in " sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc7854#section-4.8
post-policy Adj-RIB-In.</t> " derivedContent="RFC7854"/> and makes
it explicitly for the pre-policy Adj‑RIB‑In.</t>
<t>Type = 21: (64-bit Gauge) Current number of routes in <t indent="0" pn="section-3.2-1.4.2">The value is structured
per-AFI/SAFI post-policy Adj-RIB-In. The value is structured as: as a 2-byte AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> </dd>
<dt pn="section-3.2-1.5">Type = 20: (64-bit Gauge)</dt>
<t>Type = 22: (64-bit Gauge) Current number of routes in <dd pn="section-3.2-1.6">Current number of routes in
per-AFI/SAFI pre-policy Adj-RIB-In rejected by inbound policy. the post-policy Adj‑RIB‑In.</dd>
This gauge is different from stats type 0 defined in Section 4.8 of <dt pn="section-3.2-1.7">Type = 21: (64-bit Gauge)</dt>
<xref target="RFC7854" />. The stats type 0 is a 32-counter which is <dd pn="section-3.2-1.8">
a monotonically increasing number, while the stats type 22 is a <t indent="0" pn="section-3.2-1.8.1">Current number of routes in
64-bit gauge which represents the current number of routes the per-AFI/SAFI post-policy Adj‑RIB‑In.</t>
rejected by an inbound policy due to ongoing policy configuration <t indent="0" pn="section-3.2-1.8.2">The value is structured as a
changes. The value is structured as: 2-byte AFI, 1-byte SAFI, 2-byte AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
followed by a 64-bit Gauge.</t> </dd>
<dt pn="section-3.2-1.9">Type = 22: (64-bit Gauge)</dt>
<t>Type = 23: (64-bit Gauge) Current number of routes in <dd pn="section-3.2-1.10">
per-AFI/SAFI post-policy Adj-RIB-In accepted by inbound policy. <t indent="0" pn="section-3.2-1.10.1">Current number of routes in th
The value is structured as: 2-byte AFI, 1-byte SAFI, followed by a e
64-bit Gauge.</t> per-AFI/SAFI pre-policy Adj‑RIB‑In rejected by an inbound policy. Thi
s
<t>Type = 26: (64-bit Gauge) Current number of routes in Gauge is different from Stat Type 0 defined in <xref target="RFC7854"
per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB suppressed by section="4.8" format="default" sectionFormat="of" derivedLink="https://rfc-edito
configured route damping policy. The value r.org/rfc/rfc7854#section-4.8" derivedContent="RFC7854"/>. Stat Type 0 is a 32-b
is structured as: 2-byte AFI, 1-byte SAFI, followed by a it counter
64-bit Gauge. 'Suppressed' refers to a route which has been that is a monotonically increasing number; the Stat Type 22
declared suppressed by the BGP Route Flap Damping mechanism as is a 64-bit Gauge that represents the current number of routes
described in Section 2.2 of <xref target="RFC2439" />.</t> rejected by an inbound policy due to ongoing policy configuration
changes.</t>
<t>Type = 27: (64-bit Gauge) Current number of routes in <t indent="0" pn="section-3.2-1.10.2">The value is structured as a 2
per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB marked as stale -byte AFI, a 1-byte SAFI,
by Graceful Restart (GR) events. The value and a 64-bit Gauge.</t>
is structured as: 2-byte AFI, 1-byte SAFI, followed by a </dd>
64-bit Gauge. 'Stale' refers to a route which has been declared <dt pn="section-3.2-1.11">Type = 23: (64-bit Gauge)</dt>
stale by the BGP GR mechanism as described in Section 4.1 of <xref <dd pn="section-3.2-1.12">
target="RFC4724" />.</t> <t indent="0" pn="section-3.2-1.12.1">Current number of routes in
the per-AFI/SAFI post-policy Adj‑RIB‑In accepted by an inbound policy.
<t>Type = 28: (64-bit Gauge) Current number of routes in </t>
per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB marked as stale <t indent="0" pn="section-3.2-1.12.2">The
by Long-Lived Graceful Restart (LLGR). value is structured as a 2-byte AFI, a 1-byte SAFI, and a
The value is structured as: 2-byte AFI, 1-byte SAFI, 64-bit Gauge.</t>
followed by a 64-bit Gauge. 'Stale' refers to a route which has </dd>
been declared stale by the BGP LLGR mechanism as described in <dt pn="section-3.2-1.13">Type = 26: (64-bit Gauge)</dt>
Section 4.3 of <xref target="RFC9494" />.</t> <dd pn="section-3.2-1.14">
<t indent="0" pn="section-3.2-1.14.1">Current number of routes in th
<t>Type = 29: (64-bit Gauge) Current number of routes in e
post-policy Adj-RIB-In left before exceeding the received route per-AFI/SAFI post-policy Adj‑RIB‑In or Loc-RIB suppressed by
threshold as defined in Section 6.7 of <xref target="RFC4271" />.</t a configured route-damping policy.</t>
> <t indent="0" pn="section-3.2-1.14.2">The value is structured as a 2
-byte
<t>Type = 30: (64-bit Gauge) Current number of routes per-AFI/SAFI AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
in post-policy Adj-RIB-In left before exceeding the received route <t indent="0" pn="section-3.2-1.14.3">'Suppressed' refers to
threshold which corresponds to the upper bound of per-AFI/SAFI a route that has been declared suppressed by the BGP Route Flap
accepted routes following the model defined in Section 6.7 of <xref Damping mechanism as described in <xref section="2.2" target="RFC2439"
target="RFC4271" />. The value is structured as: 2-byte AFI, format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc
1-byte SAFI, followed by a 64-bit Gauge.</t> 2439#section-2.2" derivedContent="RFC2439"/>.</t>
</dd>
<t>Type = 31: (64-bit Gauge) Current number of routes <dt pn="section-3.2-1.15">Type = 27: (64-bit Gauge)</dt>
in post-policy Adj-RIB-In or Loc-RIB left before exceeding a <dd pn="section-3.2-1.16">
license-customized route threshold. If no such license <t indent="0" pn="section-3.2-1.16.1">Current number of routes in
is configured, or if the license does not impose a hard limit, the per-AFI/SAFI post-policy Adj‑RIB‑In or Loc-RIB marked as stale by
this value MUST NOT be reported.</t> Graceful Restart (GR) events.</t>
<t indent="0" pn="section-3.2-1.16.2">The value is structured as a 2
<t>Type = 32: (64-bit Gauge) Current number of routes in -byte
per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB left before AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
exceeding a license-customized route threshold. <t indent="0" pn="section-3.2-1.16.3">'Stale' refers to a
If no such license is configured, or if the license route that has been declared stale by the BGP GR mechanism as
does not impose a hard limit, this value MUST NOT be reported. The described in <xref section="4.1" target="RFC4724" format="default" sec
value is structured as: 2-byte AFI, 1-byte SAFI, followed by a tionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc4724#section-4.1" der
64-bit Gauge.</t> ivedContent="RFC4724"/>.</t>
</dd>
<t>Type = 33: (64-bit Gauge) Current number of routes in pre-policy <dt pn="section-3.2-1.17">Type = 28: (64-bit Gauge)</dt>
Adj-RIB-In rejected by exceeding the maximum AS_PATH length <dd pn="section-3.2-1.18">
supported by the local configuration.</t> <t indent="0" pn="section-3.2-1.18.1">Current number of routes in
the per-AFI/SAFI post-policy Adj‑RIB‑In or Loc-RIB marked as stale by
<t>Type = 34: (64-bit Gauge) Current number of routes in Long-Lived Graceful Restart (LLGR).</t>
per-AFI/SAFI in pre-policy Adj-RIB-In rejected by exceeding the maxi <t indent="0" pn="section-3.2-1.18.2">The value is structured as
mum a 2-byte AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
AS_PATH length supported by the local configuration. The value is <t indent="0" pn="section-3.2-1.18.3">'Stale' refers
structured as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit to a route that has been declared stale by the BGP LLGR mechanism
Gauge.</t> as described in <xref section="4.3" target="RFC9494" format="default"
sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc9494#section-4.3"
<t>Type = 35: (64-bit Gauge) Current number of routes in derivedContent="RFC9494"/>.</t>
per-AFI/SAFI post-policy Adj-RIB-In invalidated through the Route </dd>
Origin Authorization (ROA) of Resource Public Key Infrastructure <dt pn="section-3.2-1.19">Type = 29: (64-bit Gauge)</dt>
(RPKI) <xref target="RFC6811" />. This is total number of routes <dd pn="section-3.2-1.20">Current number of routes in the
invalidated due to origin Autonomous System (AS) number mismatch post-policy Adj‑RIB‑In left before exceeding the received-route
and prefix length mismatch. The value is structured as: 2-byte threshold as defined in <xref section="6.7" target="RFC4271" format="d
AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> efault" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc4271#secti
on-6.7" derivedContent="RFC4271"/>.</dd>
<t>Type = 36: (64-bit Gauge) Current number of routes in <dt pn="section-3.2-1.21">Type = 30: (64-bit Gauge)</dt>
per-AFI/SAFI post-policy Adj-RIB-In validated by verifying route <dd pn="section-3.2-1.22">
origin AS number through the ROA of RPKI <xref <t indent="0" pn="section-3.2-1.22.1">Current number of routes
target="RFC6811" />. The value is structured as: 2-byte AFI, in the per-AFI/SAFI in post-policy Adj‑RIB‑In left before exceeding th
1-byte SAFI, followed by a 64-bit Gauge.</t> e
received-route threshold that corresponds to the upper bound of
<t>Type = 37: (64-bit Gauge) Current number of routes in per-AFI/SAFI accepted routes following the model defined in <xref sect
per-AFI/SAFI post-policy Adj-RIB-In whose RPKI route origin ion="6.7" target="RFC4271" format="default" sectionFormat="of" derivedLink="http
validation state is NotFound due to the absence of a matching ROA s://rfc-editor.org/rfc/rfc4271#section-6.7" derivedContent="RFC4271"/>.</t>
of RPKI <xref target="RFC6811" />. The value is structured as: <t indent="0" pn="section-3.2-1.22.2">The value is structured as a 2
2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> -byte
</list> AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
</t> </dd>
<dt pn="section-3.2-1.23">Type = 31: (64-bit Gauge)</dt>
<dd pn="section-3.2-1.24">Current number of routes in
the post-policy Adj‑RIB‑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 <bcp14>MUST NOT</bcp14> be reported.</dd>
<dt pn="section-3.2-1.25">Type = 32: (64-bit Gauge)</dt>
<dd pn="section-3.2-1.26">
<t indent="0" pn="section-3.2-1.26.1">Current number of routes in
the per-AFI/SAFI post-policy Adj‑RIB‑In or Loc-RIB left before exceedi
ng
a license-customized route threshold. If no such license is
configured, or if the license does not impose a hard limit, this
value <bcp14>MUST NOT</bcp14> be reported.</t>
<t indent="0" pn="section-3.2-1.26.2">The value is structured
as a 2-byte AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
</dd>
<dt pn="section-3.2-1.27">Type = 33: (64-bit Gauge)</dt>
<dd pn="section-3.2-1.28">Current number of routes in
the pre-policy Adj‑RIB‑In rejected due to exceeding the maximum AS_PAT
H
length supported by the local configuration.</dd>
<dt pn="section-3.2-1.29">Type = 34: (64-bit Gauge)</dt>
<dd pn="section-3.2-1.30">
<t indent="0" pn="section-3.2-1.30.1">Current number of routes in
the per-AFI/SAFI in pre-policy Adj‑RIB‑In rejected due to exceeding th
e
maximum AS_PATH length supported by the local configuration.</t>
<t indent="0" pn="section-3.2-1.30.2">The
value is structured as a 2-byte AFI, a 1-byte SAFI, and a
64-bit Gauge.</t>
</dd>
<dt pn="section-3.2-1.31">Type = 35: (64-bit Gauge)</dt>
<dd pn="section-3.2-1.32">
<t indent="0" pn="section-3.2-1.32.1">Current number of routes in th
e
per-AFI/SAFI post-policy Adj‑RIB‑In invalidated after verifying the ro
ute origin Autonomous System Number (ASN) through the Route Origin Authorization
(ROA) of the Resource Public Key Infrastructure
(RPKI) <xref target="RFC6811" format="default" sectionFormat="of" deri
vedContent="RFC6811"/>. This is the total number of routes
invalidated due to a mismatch of origin ASNs and a mismatch of
prefix length.</t>
<t indent="0" pn="section-3.2-1.32.2">The value is structured as a 2
-byte AFI,
a 1-byte SAFI, and a 64-bit Gauge.</t>
</dd>
<dt pn="section-3.2-1.33">Type = 36: (64-bit Gauge)</dt>
<dd pn="section-3.2-1.34">
<t indent="0" pn="section-3.2-1.34.1">Current number of routes in
the per-AFI/SAFI post-policy Adj‑RIB‑In validated after verifying the
route
origin ASN through the ROA of the RPKI <xref target="RFC6811" format="
default" sectionFormat="of" derivedContent="RFC6811"/>.</t>
<t indent="0" pn="section-3.2-1.34.2">The value is structured as a 2
-byte AFI, a 1-byte
SAFI, and a 64-bit Gauge.</t>
</dd>
<dt pn="section-3.2-1.35">Type = 37: (64-bit Gauge)</dt>
<dd pn="section-3.2-1.36">
<t indent="0" pn="section-3.2-1.36.1">Current number of routes in
the 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" format="default" sectionFormat="of" derive
dContent="RFC6811"/>.</t>
<t indent="0" pn="section-3.2-1.36.2">The value is structured as a 2
-byte
AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
</dd>
</dl>
</section> </section>
<section anchor="adj-rib-out-stats" numbered="true" removeInRFC="false" to
<section anchor="adj-rib-out-stats" c="include" pn="section-3.3">
title="Adj-RIB-Out RIB Monitoring Statistics Definition"> <name slugifiedName="name-adjribout-rib-monitoring-st">Adj‑RIB‑Out RIB M
<t> onitoring Statistics Definition</name>
<list style="symbols"> <dl spacing="normal" newline="true" indent="3" pn="section-3.3-1">
<t>Type = 38: (64-bit Gauge) Current number of routes in <dt pn="section-3.3-1.1">Type = 38: (64-bit Gauge)</dt>
per-AFI/SAFI pre-policy Adj-RIB-Out rejected by outbound policy. <dd pn="section-3.3-1.2">
These routes are active routes which otherwise would have been <t indent="0" pn="section-3.3-1.2.1">Current number of routes in
advertised in absence of outbound policy which rejected them. the per-AFI/SAFI pre-policy Adj‑RIB‑Out rejected by an outbound policy
The value is structured as: 2-byte AFI, 1-byte SAFI, followed by .
a 64-bit Gauge.</t> These routes are active routes that otherwise would have been
advertised in the absence of an outbound policy that rejected them.</t
<t>Type = 39: (64-bit Gauge) Current number of routes in pre-policy >
Adj-RIB-Out filtered due to AS_PATH length exceeding the locally <t indent="0" pn="section-3.3-1.2.2">The value is structured as a 2-
configured maximum.</t> byte AFI, a 1-byte SAFI, and
a 64-bit Gauge.</t>
<t>Type = 40: (64-bit Gauge) Current number of routes in </dd>
per-AFI/SAFI pre-policy Adj-RIB-Out filtered due to AS_PATH length <dt pn="section-3.3-1.3">Type = 39: (64-bit Gauge)</dt>
exceeding the locally configured maximum. The value is structured as <dd pn="section-3.3-1.4">Current number of routes in the
: pre-policy Adj‑RIB‑Out filtered due to the AS_PATH length exceeding th
2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> e
locally configured maximum.</dd>
<t>Type = 41: (64-bit Gauge) Current number of routes in <dt pn="section-3.3-1.5">Type = 40: (64-bit Gauge)</dt>
per-AFI/SAFI post-policy Adj-RIB-Out invalidated through the ROA <dd pn="section-3.3-1.6">
of RPKI <xref target="RFC6811" />. This is total number of routes <t indent="0" pn="section-3.3-1.6.1">Current number of routes in
invalidated due to origin AS number mismatch and prefix length the per-AFI/SAFI pre-policy Adj‑RIB‑Out filtered due to AS_PATH length
mismatch. The value is structured as: 2-byte AFI, 1-byte SAFI, exceeding the locally configured maximum.</t>
followed by a 64-bit Gauge.</t> <t indent="0" pn="section-3.3-1.6.2">The value is
structured as a 2-byte AFI, a 1-byte SAFI, and a 64-bit
<t>Type = 42: (64-bit Gauge) Current number of routes in Gauge.</t>
per-AFI/SAFI post-policy Adj-RIB-Out validated by verifying route </dd>
origin AS number through the ROA of RPKI <xref <dt pn="section-3.3-1.7">Type = 41: (64-bit Gauge)</dt>
target="RFC6811" />. The value is structured as: 2-byte AFI, <dd pn="section-3.3-1.8">
1-byte SAFI, followed by a 64-bit Gauge.</t> <t indent="0" pn="section-3.3-1.8.1">Current number of routes in
the per-AFI/SAFI post-policy Adj‑RIB‑Out invalidated after verifying t
<t>Type = 43: (64-bit Gauge) Current number of routes in he route origin ASN through the ROA of the
per-AFI/SAFI post-policy Adj-RIB-Out whose RPKI route origin RPKI <xref target="RFC6811" format="default" sectionFormat="of" derive
validation state is NotFound due to the absence of a matching ROA dContent="RFC6811"/>. This is the total number of routes
of RPKI <xref target="RFC6811" />. The value is structured as: invalidated due to a mismatch of origin ASNs and a mismatch of prefix
2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> lengths.</t>
</list> <t indent="0" pn="section-3.3-1.8.2">The value is structured as a 2-
</t> byte AFI, a 1-byte
SAFI, and a 64-bit Gauge.</t>
</dd>
<dt pn="section-3.3-1.9">Type = 42: (64-bit Gauge)</dt>
<dd pn="section-3.3-1.10">
<t indent="0" pn="section-3.3-1.10.1">Current number of routes in
the per-AFI/SAFI post-policy Adj‑RIB‑Out validated after verifying the
route
origin ASN through the ROA of the RPKI <xref target="RFC6811" format="
default" sectionFormat="of" derivedContent="RFC6811"/>.</t>
<t indent="0" pn="section-3.3-1.10.2">The value is structured as a 2
-byte AFI,
a 1-byte SAFI, and a 64-bit Gauge.</t>
</dd>
<dt pn="section-3.3-1.11">Type = 43: (64-bit Gauge)</dt>
<dd pn="section-3.3-1.12">
<t indent="0" pn="section-3.3-1.12.1">Current number of routes in
the 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" format="default" sectionFormat="of" derive
dContent="RFC6811"/>.</t>
<t indent="0" pn="section-3.3-1.12.2">The value is structured as
a 2-byte AFI, a 1-byte SAFI, and a 64-bit Gauge.</t>
</dd>
</dl>
</section> </section>
</section> </section>
<section anchor="Application_Scope_of_Statistics" numbered="true" removeInRF
<section anchor="Application Scope of Statistics" C="false" toc="include" pn="section-4">
title="Application Scope of Statistics"> <name slugifiedName="name-application-scope-of-statis">Application Scope o
<t>This section briefly lists the statistics defined in this document f Statistics</name>
and outlines their scope of application, as shown in Table 1.</t> <t indent="0" pn="section-4-1"><xref target="tbl-scope-of-application" for
mat="default" sectionFormat="of" derivedContent="Table 1"/> briefly lists the st
atistics defined in this document
and outlines their scope of application.</t>
<table anchor="tbl-scope-of-application" align="center" pn="table-1"> <table anchor="tbl-scope-of-application" align="center" pn="table-1">
<name slugifiedName="name-scope-of-application">Scope of Application</ <name slugifiedName="name-scope-of-application">Scope of Application</na
name> me>
<thead> <thead>
<tr> <tr>
<th align="left" colspan="1" rowspan="1">Type</th> <th align="left" colspan="1" rowspan="1">Type</th>
<th align="left" colspan="1" rowspan="1">Pre-policy Adj-RIB-In</th <th align="left" colspan="1" rowspan="1">Pre-policy Adj‑RIB‑In</th>
> <th align="left" colspan="1" rowspan="1">Post-policy Adj‑RIB‑In</th>
<th align="left" colspan="1" rowspan="1">Post-policy Adj-RIB-In</t <th align="left" colspan="1" rowspan="1">Loc-RIB</th>
h> <th align="left" colspan="1" rowspan="1">Pre-policy Adj‑RIB‑Out</th>
<th align="left" colspan="1" rowspan="1">Loc-RIB</th> <th align="left" colspan="1" rowspan="1">Post-policy Adj‑RIB‑Out</th
<th align="left" colspan="1" rowspan="1">Pre-policy Adj-RIB-Out</t >
h> </tr>
<th align="left" colspan="1" rowspan="1">Post-policy Adj-RIB-Out</ </thead>
th> <tbody>
</tr> <tr>
</thead> <td align="center" colspan="1" rowspan="1">18</td>
<tbody> <td align="center" colspan="1" rowspan="1">Y</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">18</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">19</td>
</tr> <td align="center" colspan="1" rowspan="1">Y</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">19</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">20</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">20</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">21</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">21</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">22</td>
</tr> <td align="center" colspan="1" rowspan="1">Y</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">22</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">23</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">23</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">26</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">26</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">27</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">27</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">28</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">28</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">29</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">29</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">30</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">30</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">31</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">31</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">32</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">32</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">33</td>
</tr> <td align="center" colspan="1" rowspan="1">Y</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">33</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">34</td>
</tr> <td align="center" colspan="1" rowspan="1">Y</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">34</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">35</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">35</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">36</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">36</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">37</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">37</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">38</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">38</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">Y</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">39</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">39</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">Y</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">40</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">40</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">Y</td> <tr>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">41</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">41</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">42</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">42</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> <tr>
<td align="center" colspan="1" rowspan="1">Y</td> <td align="center" colspan="1" rowspan="1">43</td>
</tr> <td align="center" colspan="1" rowspan="1">N</td>
<tr> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">43</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">N</td>
<td align="center" colspan="1" rowspan="1">N</td> <td align="center" colspan="1" rowspan="1">Y</td>
<td align="center" colspan="1" rowspan="1">N</td> </tr>
<td align="center" colspan="1" rowspan="1">N</td> </tbody>
<td align="center" colspan="1" rowspan="1">Y</td>
</tr>
</tbody>
</table> </table>
</section> </section>
<section anchor="Implementation-Considerations" numbered="true" removeInRFC=
<section anchor="Implementation-Considerations" "false" toc="include" pn="section-5">
title="Implementation Considerations"> <name slugifiedName="name-implementation-consideratio">Implementation Cons
<t>This document specifies gauges for new BMP statistics. The format of iderations</name>
BMP statistics messages remains unchanged from <xref <t indent="0" pn="section-5-1">This document specifies Gauges for new BMP
target="RFC7854" />. This section outlines the implementation statistics. The format of
BMP Statistics Report messages remains unchanged from <xref target="RFC785
4" format="default" sectionFormat="of" derivedContent="RFC7854"/>. This section
outlines the implementation
considerations for new BMP statistics.</t> considerations for new BMP statistics.</t>
<t indent="0" pn="section-5-2">For backward compatibility, and absent any
<t>For backward compatibility, and absent policy otherwise, it is other policy, it is
RECOMMENDED that BMP producers capable of generating both (Types 7 and <bcp14>RECOMMENDED</bcp14> that BMP producers capable of generating both (
18) or (Types 9 and 19) BMP statistics SHOULD transmit both Types 7 and
18) and (Types 9 and 19) BMP statistics transmit both
corresponding types simultaneously. This allows BMP collectors to corresponding types simultaneously. This allows BMP collectors to
process either format according to their needs without disrupting process either format according to their needs without disrupting
existing implementations that rely on Type 7 or Type 9. The selection of existing implementations that rely on Types 7 or 9. The selection of
which statistic types to generate within each pair SHOULD be treated as which statistics types to generate within each pair <bcp14>SHOULD</bcp14>
be treated as
an implementation decision rather than a protocol requirement, with the an implementation decision rather than a protocol requirement, with the
BMP collector behavior for handling these statistic types remaining BMP collector behavior for handling these statistics types remaining
implementation-specific.</t> implementation specific.</t>
<t indent="0" pn="section-5-3">Some statistics are dependent on feature co
<t>Some statistics are dependent on feature configurations, such as GR, nfigurations, such as GR,
LLGR, and RPKI, so the corresponding statistics SHOULD only be generated LLGR, and RPKI; therefore, the corresponding statistics <bcp14>SHOULD</bcp
14> only be generated
and sent when these features are enabled on the BMP producer. These and sent when these features are enabled on the BMP producer. These
statistics include Types 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, statistics include the following Types: 26, 27, 28, 29, 30, 31, 32, 33, 34 , 35, 36, 37,
39, 40, 41, 42, and 43.</t> 39, 40, 41, 42, and 43.</t>
<t indent="0" pn="section-5-4">Some statistics are also relevant for the L
<t>Some statistics are also relevant for the Loc-RIB view <xref oc-RIB view <xref target="RFC9069" format="default" sectionFormat="of" derivedCo
target="RFC9069" />, so they may apply to the Loc-RIB view after ntent="RFC9069"/>; therefore, they may apply to the Loc-RIB view after
best-path selection is completed. These statistics include Types 26, 27, 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 28, 31, and 32. When these statistics apply to the Loc-RIB view, the
Peer Type in the Per-Peer Header of the corresponding BMP Statistics "Peer Type" field in the Per-Peer Header of the corresponding BMP Statisti
Report Message MUST set to 3.</t> cs
Report message <bcp14>MUST</bcp14> set to 3.</t>
<t>Certain statistics may have logical relationships (e.g., per-AFI/SAFI <t indent="0" pn="section-5-5">Certain statistics may have logical relatio
nships (e.g., per-AFI/SAFI
counts summing to global totals). BMP statistics producers and counts summing to global totals). BMP statistics producers and
collectors MAY perform consistency checks but MUST NOT assume strict collectors <bcp14>MAY</bcp14> perform consistency checks but <bcp14>MUST N OT</bcp14> assume strict
dependencies (due to potential race conditions or partial failures). dependencies (due to potential race conditions or partial failures).
Discrepancies (e.g., sum(per-AFI/SAFI) != global count) SHOULD be logged Discrepancies (e.g., sum(per-AFI/SAFI) != global count) <bcp14>SHOULD</bcp
as warnings but MUST NOT disrupt protocol operation.</t> 14> be logged
as warnings but <bcp14>MUST NOT</bcp14> disrupt protocol operation.</t>
<t>The generation and transmission of type 27 and 28 during an active <t indent="0" pn="section-5-6">The generation and transmission of Types 27
and 28 during an active
GR/LLGR event consumes additional control plane resources (e.g., CPU). GR/LLGR event consumes additional control plane resources (e.g., CPU).
BMP statistics producers SHOULD prioritize the core GR/LLGR convergence BMP statistics producers <bcp14>SHOULD</bcp14> prioritize the core GR/LLGR convergence
procedures. To avoid adversely impacting the restart process, a BMP procedures. To avoid adversely impacting the restart process, a BMP
statistics producer MAY choose to sample this value at a lower statistics producer <bcp14>MAY</bcp14> choose to sample this value at a lo
frequency, buffer updates, or temporarily suspend reporting for this wer
frequency, buffer the updates, or temporarily suspend reporting for this
type during the most critical phases of a switchover.</t> type during the most critical phases of a switchover.</t>
<t indent="0" pn="section-5-7">These Gauges may reset due to manual cleara
<t>These gauges may reset due to manual clearance, or overflow. BMP nce or overflow. BMP
statistics producers and collectors MUST track discontinuities and log statistics producers and collectors <bcp14>MUST</bcp14> track discontinuit
ies and log
this anomaly.</t> this anomaly.</t>
</section> </section>
<section anchor="Operational" numbered="true" removeInRFC="false" toc="inclu
<section anchor="Operational" title="Operational Considerations"> de" pn="section-6">
<t>This section outlines some operational considerations of new BMP <name slugifiedName="name-operational-considerations">Operational Consider
ations</name>
<t indent="0" pn="section-6-1">This section outlines some operational cons
iderations of new BMP
statistics for BMP operators.</t> statistics for BMP operators.</t>
<t indent="0" pn="section-6-2">Transmission scheduling and triggering mech
<t>Transmission scheduling and triggering mechanisms for new gauges are anisms for new Gauges are
implementation-dependent. BMP operators SHOULD determine appropriate implementation dependent. BMP operators <bcp14>SHOULD</bcp14> determine ap
propriate
report generation and delivery strategies, including configurable timing report generation and delivery strategies, including configurable timing
intervals and threshold values. The mechanism for controlling the intervals and threshold values. The mechanism for controlling the
reporting of new gauges SHOULD be consistent with that of existing reporting of new Gauges <bcp14>SHOULD</bcp14> be consistent with that of e xisting
types.</t> types.</t>
<t indent="0" pn="section-6-3">BMP operators <bcp14>SHOULD</bcp14> rate-li
<t>BMP operators SHOULD rate-limit statistic updates to minimize mit statistics updates to minimize
performance impact on control-plane processes. BMP operators SHOULD only performance impact on control plane processes. BMP operators <bcp14>SHOULD
</bcp14> only
enable necessary statistics to reduce memory and CPU overhead. enable necessary statistics to reduce memory and CPU overhead.
Implementations SHOULD also support per-router configuration of Implementations <bcp14>SHOULD</bcp14> also support per-router configuratio n of
statistic subsets for collection and reporting.</t> statistic subsets for collection and reporting.</t>
<t indent="0" pn="section-6-4">Some BMP statistics producers, or configura
<t>Some BMP statistics producers, or configurations in BMP statistics tions in BMP statistics
producers, MAY discard routes that do not match policy and thus the producers, <bcp14>MAY</bcp14> discard routes that do not match policy; thu
accepted count (Type 23) and the Adj-RIB-In counts (Type 21) will be s, the
identical in such cases. BMP operators SHOULD be aware of this behavior accepted count (Type 23) and the Adj‑RIB‑In counts (Type 21) will be
when interpreting these gauges. BMP operators SHOULD be aware that BMP identical in such cases. BMP operators <bcp14>SHOULD</bcp14> be aware of t
statistics producers and collectors MAY log inconsistencies between his behavior
when interpreting these Gauges. BMP operators <bcp14>SHOULD</bcp14> be awa
re that BMP
statistics producers and collectors <bcp14>MAY</bcp14> log inconsistencies
between
statistics as warnings.</t> statistics as warnings.</t>
</section> </section>
<section anchor="Security" numbered="true" removeInRFC="false" toc="include"
<section anchor="Security" title="Security Considerations"> pn="section-7">
<t>Procedures and protocol extensions defined in this document do not <name slugifiedName="name-security-considerations">Security Considerations
</name>
<t indent="0" pn="section-7-1">Procedures and protocol extensions defined
in this document do not
affect the BMP security model. All security and authentication affect the BMP security model. All security and authentication
mechanisms required by Section 11 of <xref target="RFC7854" />, Section mechanisms required by <xref section="11" target="RFC7854" format="default
8 of <xref target="RFC8671" />, and Section 7 of <xref " sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc7854#section-11"
target="RFC9069" /> are also applicable to the gauges defined in this derivedContent="RFC7854"/>,
<xref section="8" target="RFC8671" format="default" sectionFormat="of" der
ivedLink="https://rfc-editor.org/rfc/rfc8671#section-8" derivedContent="RFC8671"
/>, and <xref section="7" target="RFC9069" format="default" sectionFormat="of" d
erivedLink="https://rfc-editor.org/rfc/rfc9069#section-7" derivedContent="RFC906
9"/> are also applicable to the Gauges defined in this
document. This document does not add any additional security document. This document does not add any additional security
considerations.</t> considerations.</t>
<t indent="0" pn="section-7-2">Monitored devices <bcp14>SHOULD</bcp14> be
<t>Monitored devices SHOULD be configured to implement rate-limited configured to implement rate-limited
reporting of new gauges.</t> 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.xht
ml#statistics-types">BMP
Statistics Types registry</eref>, part of the <eref
target="https://www.iana.org/assignments/bmp-parameters/bmp-parameters.xht
ml">
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 pre-policy
Adj-RIB-In rejected by inbound policy.</t>
<t>Type = 23: Number of routes currently in per-AFI/SAFI post-policy
Adj-RIB-In accepted by inbound policy.</t>
<t>Type = 26: Number of routes currently in per-AFI/SAFI post-policy
Adj-RIB-In or Loc-RIB suppressed by configured route damping policy.
</t>
<t>Type = 27: Number of routes currently in per-AFI/SAFI post-policy
Adj-RIB-In or Loc-RIB marked as stale by GR events.</t>
<t>Type = 28: Number of routes currently in per-AFI/SAFI post-policy
Adj-RIB-In or Loc-RIB marked as stale by LLGR.</t>
<t>Type = 29: Number of routes currently in post-policy Adj-RIB-In lef
t
before exceeding the received route threshold.</t>
<t>Type = 30: Number of routes currently in per-AFI/SAFI post-policy
Adj-RIB-In left before exceeding the received route threshold.</t>
<t>Type = 31: Number of routes currently in post-policy Adj-RIB-In or
Loc-RIB left before exceeding a license-customized route threshold.</t
>
<t>Type = 32: Number of routes currently in per-AFI/SAFI post-policy
Adj-RIB-In or Loc-RIB left before exceeding a license-customized route
threshold.</t>
<t>Type = 33: Number of routes currently in pre-policy Adj-RIB-In
rejected due to exceeding the locally configured maximum AS_PATH
length.</t>
<t>Type = 34: Number of routes currently in per-AFI/SAFI pre-policy
Adj-RIB-In rejected due to exceeding the locally configured 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 pre-policy
Adj-RIB-Out rejected by outbound policy.</t>
<t>Type = 39: Number of routes currently in pre-policy Adj-RIB-Out
filtered due to AS_PATH length exceeding the locally configured
maximum.</t>
<t>Type = 40: Number of routes currently in per-AFI/SAFI pre-policy
Adj-RIB-Out 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 = 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>
<section anchor="IANA" numbered="true" removeInRFC="false" toc="include" pn=
<section anchor="Acknowledgements" title="Acknowledgements"> "section-8">
<t>The author would like to thank Jeff Haas, Mohamed Boucadair, Thomas <name slugifiedName="name-iana-considerations">IANA Considerations</name>
Graf, and Prasad S. Narasimha for their valuable input.</t> <t indent="0" pn="section-8-1">IANA has assigned the following new paramet
ers in the "BMP Statistics Types" registry, part of the <eref target="https://ww
<t>Thanks to Giuseppe Fioccola for the OPSDIR, Jouni Korhonen for the w.iana.org/assignments/bmp-parameters/" brackets="angle"> "BGP Monitoring Protoc
GENART, and Bruno Decraene for the RTGDIR review.</t> ol (BMP) Parameters" registry group</eref>.</t>
<t indent="0" pn="section-8-2">IANA has listed these entries as follows.
<t>Thanks to Gunter van de Velde, Eric Vyncke, and Ketan Talaulikar for This document serves as a reference for each entry.</t>
the IESG review.</t> <table anchor="tbl-iana-stats-types" align="center" pn="table-2">
<name slugifiedName="name-bmp-statistics-types">BMP Statistics Types</na
me>
<thead>
<tr>
<th align="left" colspan="1" rowspan="1">Stat Type</th>
<th align="left" colspan="1" rowspan="1">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td align="center" colspan="1" rowspan="1">18</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the pre-policy
Adj‑RIB‑In.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">19</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
pre-policy Adj‑RIB‑In.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">20</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the post-policy
Adj‑RIB‑In.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">21</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">22</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
pre-policy Adj‑RIB‑In rejected by an inbound policy.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">23</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In accepted by an inbound policy.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">26</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In or Loc-RIB suppressed by a
configured route-damping policy.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">27</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In or Loc-RIB marked as stale by
GR events.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">28</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In or Loc-RIB marked as stale by
LLGR.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">29</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the post-policy
Adj‑RIB‑In left before exceeding the received-route
threshold.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">30</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In left before exceeding the
received-route threshold.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">31</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the post-policy
Adj‑RIB‑In or Loc-RIB left before exceeding a
license-customized route threshold.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">32</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In or Loc-RIB left before exceeding
a license-customized route threshold.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">33</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the pre-policy
Adj‑RIB‑In rejected due to exceeding the locally
configured maximum AS_PATH length.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">34</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
pre-policy Adj‑RIB‑In rejected due to exceeding the
locally configured maximum AS_PATH length.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">35</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In invalidated after verifying the
route origin ASN through the ROA of the RPKI and mismatch of prefix length
.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">36</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In validated after verifying the
route origin ASN through the ROA of the RPKI.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">37</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑In whose RPKI route origin
validation state is NotFound.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">38</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
pre-policy Adj‑RIB‑Out rejected by an outbound
policy.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">39</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the pre-policy
Adj‑RIB‑Out filtered due to AS_PATH length exceeding
the locally configured maximum.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">40</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
pre-policy Adj‑RIB‑Out filtered due to AS_PATH length
exceeding the locally configured maximum.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">41</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑Out invalidated after verifying the
route origin ASN through the ROA of the RPKI and mismatch of prefix length
.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">42</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑Out validated after verifying the
route origin ASN through the ROA of the RPKI.</td>
</tr>
<tr>
<td align="center" colspan="1" rowspan="1">43</td>
<td align="left" colspan="1" rowspan="1">Number of routes currently
in the per-AFI/SAFI
post-policy Adj‑RIB‑Out whose RPKI route origin
validation state is NotFound.</td>
</tr>
</tbody>
</table>
</section> </section>
</middle> </middle>
<!-- *****BACK MATTER ***** -->
<back> <back>
<references title="References"> <references pn="section-9">
<references title="Normative References"> <name slugifiedName="name-normative-references">Normative References</name
<!--?rfc include= >
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml"?--> <reference anchor="IANA-AFI" target="https://www.iana.org/assignments/addr
ess-family-numbers" quoteTitle="true" derivedAnchor="IANA-AFI">
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer <front>
ence.RFC.2119.xml" <title>Address Family Numbers</title>
xmlns:xi="http://www.w3.org/2001/XInclude" /> <author>
<organization showOnFrontPage="true">IANA</organization>
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer </author>
ence.RFC.2439.xml" </front>
xmlns:xi="http://www.w3.org/2001/XInclude" /> </reference>
<reference anchor="IANA-SAFI" target="https://www.iana.org/assignments/saf
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer i-namespace" quoteTitle="true" derivedAnchor="IANA-SAFI">
ence.RFC.4271.xml" <front>
xmlns:xi="http://www.w3.org/2001/XInclude" /> <title>Subsequent Address Family Identifiers (SAFI) Parameters</title>
<author>
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer <organization showOnFrontPage="true">IANA</organization>
ence.RFC.4724.xml" </author>
xmlns:xi="http://www.w3.org/2001/XInclude" /> </front>
</reference>
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc211
ence.RFC.4760.xml" 9" quoteTitle="true" derivedAnchor="RFC2119">
xmlns:xi="http://www.w3.org/2001/XInclude" /> <front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer >
ence.RFC.6811.xml" <author fullname="S. Bradner" initials="S." surname="Bradner"/>
xmlns:xi="http://www.w3.org/2001/XInclude" /> <date month="March" year="1997"/>
<abstract>
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer <t indent="0">In many standards track documents several words are us
ence.RFC.7854.xml" ed to signify the requirements in the specification. These words are often capit
xmlns:xi="http://www.w3.org/2001/XInclude" /> alized. This document defines these words as they should be interpreted in IETF
documents. This document specifies an Internet Best Current Practices for the In
<!-- <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/ ternet Community, and requests discussion and suggestions for improvements.</t>
reference.RFC.7911.xml" </abstract>
xmlns:xi="http://www.w3.org/2001/XInclude" />--> </front>
<seriesInfo name="BCP" value="14"/>
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer <seriesInfo name="RFC" value="2119"/>
ence.RFC.8174.xml" <seriesInfo name="DOI" value="10.17487/RFC2119"/>
xmlns:xi="http://www.w3.org/2001/XInclude" /> </reference>
<reference anchor="RFC2439" target="https://www.rfc-editor.org/info/rfc243
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer 9" quoteTitle="true" derivedAnchor="RFC2439">
ence.RFC.8671.xml" <front>
xmlns:xi="http://www.w3.org/2001/XInclude" /> <title>BGP Route Flap Damping</title>
<author fullname="C. Villamizar" initials="C." surname="Villamizar"/>
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer <author fullname="R. Chandra" initials="R." surname="Chandra"/>
ence.RFC.9069.xml" <author fullname="R. Govindan" initials="R." surname="Govindan"/>
xmlns:xi="http://www.w3.org/2001/XInclude" /> <date month="November" year="1998"/>
<abstract>
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer <t indent="0">A usage of the BGP routing protocol is described which
ence.RFC.9494.xml" is capable of reducing the routing traffic passed on to routing peers and there
xmlns:xi="http://www.w3.org/2001/XInclude" /> fore the load on these peers without adversely affecting route convergence time
for relatively stable routes. [STANDARDS-TRACK]</t>
<reference anchor="IANA-AFI" </abstract>
target="https://www.iana.org/assignments/address-family-numbe </front>
rs"> <seriesInfo name="RFC" value="2439"/>
<front> <seriesInfo name="DOI" value="10.17487/RFC2439"/>
<title>Address Family Numbers</title> </reference>
<reference anchor="RFC4271" target="https://www.rfc-editor.org/info/rfc427
<author> 1" quoteTitle="true" derivedAnchor="RFC4271">
<organization>IANA</organization> <front>
</author> <title>A Border Gateway Protocol 4 (BGP-4)</title>
</front> <author fullname="Y. Rekhter" initials="Y." role="editor" surname="Rek
</reference> hter"/>
<author fullname="T. Li" initials="T." role="editor" surname="Li"/>
<reference anchor="IANA-SAFI" <author fullname="S. Hares" initials="S." role="editor" surname="Hares
target="https://www.iana.org/assignments/safi-namespace"> "/>
<front> <date month="January" year="2006"/>
<title>Subsequent Address Family Identifiers (SAFI) <abstract>
Parameters</title> <t indent="0">This document discusses the Border Gateway Protocol (B
GP), which is an inter-Autonomous System routing protocol.</t>
<author> <t indent="0">The primary function of a BGP speaking system is to ex
<organization>IANA</organization> change network reachability information with other BGP systems. This network rea
</author> chability information includes information on the list of Autonomous Systems (AS
</front> es) that reachability information traverses. This information is sufficient for
</reference> constructing a graph of AS connectivity for this reachability from which routing
</references> loops may be pruned, and, at the AS level, some policy decisions may be enforce
d.</t>
<references title="Informative References"> <t indent="0">BGP-4 provides a set of mechanisms for supporting Clas
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer sless Inter-Domain Routing (CIDR). These mechanisms include support for advertis
ence.RFC.7942.xml" ing a set of destinations as an IP prefix, and eliminating the concept of networ
xmlns:xi="http://www.w3.org/2001/XInclude" /> k "class" within BGP. BGP-4 also introduces mechanisms that allow aggregation of
</references> routes, including aggregation of AS paths.</t>
<t indent="0">This document obsoletes RFC 1771. [STANDARDS-TRACK]</t
>
</abstract>
</front>
<seriesInfo name="RFC" value="4271"/>
<seriesInfo name="DOI" value="10.17487/RFC4271"/>
</reference>
<reference anchor="RFC4724" target="https://www.rfc-editor.org/info/rfc472
4" quoteTitle="true" derivedAnchor="RFC4724">
<front>
<title>Graceful Restart Mechanism for BGP</title>
<author fullname="S. Sangli" initials="S." surname="Sangli"/>
<author fullname="E. Chen" initials="E." surname="Chen"/>
<author fullname="R. Fernando" initials="R." surname="Fernando"/>
<author fullname="J. Scudder" initials="J." surname="Scudder"/>
<author fullname="Y. Rekhter" initials="Y." surname="Rekhter"/>
<date month="January" year="2007"/>
<abstract>
<t indent="0">This document describes a mechanism for BGP that would
help minimize the negative effects on routing caused by BGP restart. An End-of-
RIB marker is specified and can be used to convey routing convergence informatio
n. A new BGP capability, termed "Graceful Restart Capability", is defined that w
ould allow a BGP speaker to express its ability to preserve forwarding state dur
ing BGP restart. Finally, procedures are outlined for temporarily retaining rout
ing information across a TCP session termination/re-establishment.</t>
<t indent="0">The mechanisms described in this document are applicab
le to all routers, both those with the ability to preserve forwarding state duri
ng BGP restart and those without (although the latter need to implement only a s
ubset of the mechanisms described in this document). [STANDARDS-TRACK]</t>
</abstract>
</front>
<seriesInfo name="RFC" value="4724"/>
<seriesInfo name="DOI" value="10.17487/RFC4724"/>
</reference>
<reference anchor="RFC4760" target="https://www.rfc-editor.org/info/rfc476
0" quoteTitle="true" derivedAnchor="RFC4760">
<front>
<title>Multiprotocol Extensions for BGP-4</title>
<author fullname="T. Bates" initials="T." surname="Bates"/>
<author fullname="R. Chandra" initials="R." surname="Chandra"/>
<author fullname="D. Katz" initials="D." surname="Katz"/>
<author fullname="Y. Rekhter" initials="Y." surname="Rekhter"/>
<date month="January" year="2007"/>
<abstract>
<t indent="0">This document defines extensions to BGP-4 to enable it
to carry routing information for multiple Network Layer protocols (e.g., IPv6,
IPX, L3VPN, etc.). The extensions are backward compatible - a router that suppor
ts the extensions can interoperate with a router that doesn't support the extens
ions. [STANDARDS-TRACK]</t>
</abstract>
</front>
<seriesInfo name="RFC" value="4760"/>
<seriesInfo name="DOI" value="10.17487/RFC4760"/>
</reference>
<reference anchor="RFC6811" target="https://www.rfc-editor.org/info/rfc681
1" quoteTitle="true" derivedAnchor="RFC6811">
<front>
<title>BGP Prefix Origin Validation</title>
<author fullname="P. Mohapatra" initials="P." surname="Mohapatra"/>
<author fullname="J. Scudder" initials="J." surname="Scudder"/>
<author fullname="D. Ward" initials="D." surname="Ward"/>
<author fullname="R. Bush" initials="R." surname="Bush"/>
<author fullname="R. Austein" initials="R." surname="Austein"/>
<date month="January" year="2013"/>
<abstract>
<t indent="0">To help reduce well-known threats against BGP includin
g prefix mis- announcing and monkey-in-the-middle attacks, one of the security r
equirements is the ability to validate the origination Autonomous System (AS) of
BGP routes. More specifically, one needs to validate that the AS number claimin
g to originate an address prefix (as derived from the AS_PATH attribute of the B
GP route) is in fact authorized by the prefix holder to do so. This document des
cribes a simple validation mechanism to partially satisfy this requirement. [STA
NDARDS-TRACK]</t>
</abstract>
</front>
<seriesInfo name="RFC" value="6811"/>
<seriesInfo name="DOI" value="10.17487/RFC6811"/>
</reference>
<reference anchor="RFC7854" target="https://www.rfc-editor.org/info/rfc785
4" quoteTitle="true" derivedAnchor="RFC7854">
<front>
<title>BGP Monitoring Protocol (BMP)</title>
<author fullname="J. Scudder" initials="J." role="editor" surname="Scu
dder"/>
<author fullname="R. Fernando" initials="R." surname="Fernando"/>
<author fullname="S. Stuart" initials="S." surname="Stuart"/>
<date month="June" year="2016"/>
<abstract>
<t indent="0">This document defines the BGP Monitoring Protocol (BMP
), which can be used to monitor BGP sessions. BMP is intended to provide a conve
nient interface for obtaining route views. Prior to the introduction of BMP, scr
een scraping was the most commonly used approach to obtaining such views. The de
sign goals are to keep BMP simple, useful, easily implemented, and minimally ser
vice affecting. BMP is not suitable for use as a routing protocol.</t>
</abstract>
</front>
<seriesInfo name="RFC" value="7854"/>
<seriesInfo name="DOI" value="10.17487/RFC7854"/>
</reference>
<reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc817
4" quoteTitle="true" derivedAnchor="RFC8174">
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</titl
e>
<author fullname="B. Leiba" initials="B." surname="Leiba"/>
<date month="May" year="2017"/>
<abstract>
<t indent="0">RFC 2119 specifies common key words that may be used i
n protocol specifications. This document aims to reduce the ambiguity by clarify
ing that only UPPERCASE usage of the key words have the defined special meanings
.</t>
</abstract>
</front>
<seriesInfo name="BCP" value="14"/>
<seriesInfo name="RFC" value="8174"/>
<seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>
<reference anchor="RFC8671" target="https://www.rfc-editor.org/info/rfc867
1" quoteTitle="true" derivedAnchor="RFC8671">
<front>
<title>Support for Adj-RIB-Out in the BGP Monitoring Protocol (BMP)</t
itle>
<author fullname="T. Evens" initials="T." surname="Evens"/>
<author fullname="S. Bayraktar" initials="S." surname="Bayraktar"/>
<author fullname="P. Lucente" initials="P." surname="Lucente"/>
<author fullname="P. Mi" initials="P." surname="Mi"/>
<author fullname="S. Zhuang" initials="S." surname="Zhuang"/>
<date month="November" year="2019"/>
<abstract>
<t indent="0">The BGP Monitoring Protocol (BMP) only defines access
to the Adj-RIB-In Routing Information Bases (RIBs). This document updates BMP (R
FC 7854) by adding access to the Adj-RIB-Out RIBs. It also adds a new flag to th
e peer header to distinguish between Adj-RIB-In and Adj-RIB-Out.</t>
</abstract>
</front>
<seriesInfo name="RFC" value="8671"/>
<seriesInfo name="DOI" value="10.17487/RFC8671"/>
</reference>
<reference anchor="RFC9069" target="https://www.rfc-editor.org/info/rfc906
9" quoteTitle="true" derivedAnchor="RFC9069">
<front>
<title>Support for Local RIB in the BGP Monitoring Protocol (BMP)</tit
le>
<author fullname="T. Evens" initials="T." surname="Evens"/>
<author fullname="S. Bayraktar" initials="S." surname="Bayraktar"/>
<author fullname="M. Bhardwaj" initials="M." surname="Bhardwaj"/>
<author fullname="P. Lucente" initials="P." surname="Lucente"/>
<date month="February" year="2022"/>
<abstract>
<t indent="0">The BGP Monitoring Protocol (BMP) defines access to lo
cal Routing Information Bases (RIBs). This document updates BMP (RFC 7854) by ad
ding access to the Local Routing Information Base (Loc-RIB), as defined in RFC 4
271. The Loc-RIB contains the routes that have been selected by the local BGP sp
eaker's Decision Process.</t>
</abstract>
</front>
<seriesInfo name="RFC" value="9069"/>
<seriesInfo name="DOI" value="10.17487/RFC9069"/>
</reference>
<reference anchor="RFC9494" target="https://www.rfc-editor.org/info/rfc949
4" quoteTitle="true" derivedAnchor="RFC9494">
<front>
<title>Long-Lived Graceful Restart for BGP</title>
<author fullname="J. Uttaro" initials="J." surname="Uttaro"/>
<author fullname="E. Chen" initials="E." surname="Chen"/>
<author fullname="B. Decraene" initials="B." surname="Decraene"/>
<author fullname="J. Scudder" initials="J." surname="Scudder"/>
<date month="November" year="2023"/>
<abstract>
<t indent="0">This document introduces a BGP capability called the "
Long-Lived Graceful Restart Capability" (or "LLGR Capability"). The benefit of t
his capability is that stale routes can be retained for a longer time upon sessi
on failure than is provided for by BGP Graceful Restart (as described in RFC 472
4). A well-known BGP community called "LLGR_STALE" is introduced for marking sta
le routes retained for a longer time. A second well-known BGP community called "
NO_LLGR" is introduced for marking routes for which these procedures should not
be applied. We also specify that such long-lived stale routes be treated as the
least preferred and that their advertisements be limited to BGP speakers that ha
ve advertised the capability. Use of this extension is not advisable in all case
s, and we provide guidelines to help determine if it is.</t>
<t indent="0">This memo updates RFC 6368 by specifying that the LLGR
_STALE community must be propagated into, or out of, the path attributes exchang
ed between the Provider Edge (PE) and Customer Edge (CE) routers.</t>
</abstract>
</front>
<seriesInfo name="RFC" value="9494"/>
<seriesInfo name="DOI" value="10.17487/RFC9494"/>
</reference>
</references> </references>
<section anchor="Acknowledgements" numbered="false" removeInRFC="false" toc=
"include" pn="section-appendix.a">
<name slugifiedName="name-acknowledgements">Acknowledgements</name>
<t indent="0" pn="section-appendix.a-1">The authors would like to thank <c
ontact fullname="Jeff Haas"/>,
<contact fullname="Mohamed Boucadair"/>, <contact fullname="Thomas G
raf"/>, and <contact fullname="Prasad S. Narasimha"/> for their
valuable input.</t>
<t indent="0" pn="section-appendix.a-2">Thanks to <contact fullname="Giuse
ppe Fioccola"/> for the OPSDIR,
<contact fullname="Jouni Korhonen"/> for the GENART, and <contact fullname
="Bruno Decraene"/> for the RTGDIR review.</t>
<t indent="0" pn="section-appendix.a-3">Thanks to <contact fullname="Gunte
r van de Velde"/>, <contact fullname="Éric Vyncke"/>, and <contact fullname="Ket
an Talaulikar"/> for
the IESG review.</t>
</section>
<section anchor="authors-addresses" numbered="false" removeInRFC="false" toc
="include" pn="section-appendix.b">
<name slugifiedName="name-authors-addresses">Authors' Addresses</name>
<author fullname="Mukul Srivastava" initials="M." role="editor" surname="S
rivastava">
<organization showOnFrontPage="true">Hewlett Packard Enterprise</organiz
ation>
<address>
<postal>
<street>10 Technology Park Dr</street>
<city>Westford</city>
<region>MA</region>
<code>01886</code>
<country>United States of America</country>
</postal>
<email>mukul.srivastava@hpe.com</email>
</address>
</author>
<author fullname="Yisong Liu" initials="Y." surname="Liu">
<organization showOnFrontPage="true">China Mobile</organization>
<address>
<postal>
<street>32 Xuanwumen West Street</street>
<city>Beijing</city>
<region>Xicheng District</region>
<code>100053</code>
<country>China</country>
</postal>
<email>liuyisong@chinamobile.com</email>
</address>
</author>
<author fullname="Changwang Lin" initials="C." role="editor" surname="Lin"
>
<organization showOnFrontPage="true">New H3C Technologies</organization>
<address>
<postal>
<street>8 Yongjia North Road</street>
<city>Beijing</city>
<region>Haidian District</region>
<code>100094</code>
<country>China</country>
</postal>
<email>linchangwang.04414@h3c.com</email>
</address>
</author>
<author fullname="Jinming Li" initials="J." surname="Li">
<organization showOnFrontPage="true">China Mobile</organization>
<address>
<postal>
<street>32 Xuanwumen West Street</street>
<city>Beijing</city>
<region>Xicheng District</region>
<code>100053</code>
<country>China</country>
</postal>
<email>lijinming@chinamobile.com</email>
</address>
</author>
</section>
</back> </back>
</rfc> </rfc>
 End of changes. 83 change blocks. 
972 lines changed or deleted 1457 lines changed or added

This html diff was produced by rfcdiff 1.48.