| 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, | ||||
| which is available here: http://xml.resource.org. --> | ||||
| <rfc category="std" consensus="true" | ||||
| docName="draft-ietf-grow-bmp-bgp-rib-stats-17" ipr="trust200902" | ||||
| submissionType="IETF"> | ||||
| <!-- category values: std, bcp, info, exp, and historic | ||||
| ipr values: full3667, noModification3667, noDerivatives3667 | ||||
| you can add the attributes updates="NNNN" and obsoletes="NNNN" | ||||
| they will automatically be output with "(if approved)" --> | ||||
| <!-- ***** FRONT MATTER ***** --> | <!DOCTYPE rfc [ | |||
| <!ENTITY nbsp " "> | ||||
| <!ENTITY zwsp "​"> | ||||
| <!ENTITY nbhy "‑"> | ||||
| <!ENTITY wj "⁠"> | ||||
| ]> | ||||
| <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" consensus="true" | ||||
| docName="draft-ietf-grow-bmp-bgp-rib-stats-17" number="9972" updates="" obsolete | ||||
| s="" tocInclude="true" symRefs="true" sortRefs="false" ipr="trust200902" submiss | ||||
| ionType="IETF" version="3" xml:lang="en" > | ||||
| <front> | <front> | |||
| <title abbrev="BMP New Statistics">Advanced BGP Monitoring Protocol (BMP) | <title abbrev="BMP New Statistics">Advanced BGP Monitoring Protocol (BMP) | |||
| Statistics Types</title> | Statistics Types</title> | |||
| <seriesInfo name="RFC" value="9972"/> | ||||
| <!-- 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 --> | ||||
| <author fullname="Mukul Srivastava" initials="M." role="editor" | ||||
| surname="Srivastava"> | ||||
| <organization>Hewlett Packard Enterprise</organization> | <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>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>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>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 year="2026" month="May"/> | ||||
| <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> | <abstract> | |||
| <t>RFC 7854 defines different BGP Monitoring Protocol (BMP) statistics | <t>The BGP Monitoring Protocol (BMP) described in RFC 7854 defines statist ics | |||
| 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> | |||
| </front> | </front> | |||
| <middle> | <middle> | |||
| <section anchor="introduction" title="Introduction"> | <section anchor="introduction"> | |||
| <t>Section 4.8 of <xref target="RFC7854" /> defines a number of | <name>Introduction</name> | |||
| <t><xref section="4.8" target="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 | |||
| or gauges. <xref section="6.2" target="RFC8671"/> also defines several | ||||
| BMP statistics types for Adj-RIB-Out of a monitored router.</t> | BMP statistics types for Adj-RIB-Out of a monitored router.</t> | |||
| <t>New BMP statistics types are needed to enable more-refined BGP route | ||||
| <t>New BMP statistics types are needed to enable more refined BGP route | monitoring and analysis to improve operational maintenance and | |||
| monitoring and analysis, improving operational maintenance and | ||||
| troubleshooting capabilities.</t> | troubleshooting capabilities.</t> | |||
| <t>This document defines gauges for new BMP statistics. The | <t>This document defines gauges for new BMP statistics. 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"/>. | |||
| message remains same as defined in <xref target="RFC7854" />.</t> | The format of the BMP statistics | |||
| message remains the same as defined in <xref target="RFC7854"/>.</t> | ||||
| <section title="Requirements Language"> | <section> | |||
| <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | <name>Requirements Language</name> | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | <t> | |||
| "OPTIONAL" in this document are to be interpreted as described in BCP | The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU | |||
| 14 <xref target="RFC2119" /> <xref target="RFC8174" /> when, and only | IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL | |||
| when, they appear in all capitals, as shown here. The BCP14 is used to | NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14> | |||
| stress importance for operators but are not required as formal | RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | |||
| implementation requirement.</t> | "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to | |||
| be interpreted as | ||||
| described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | ||||
| when, and only when, they appear in all capitals, as shown here. | ||||
| </t> | ||||
| <aside><t>Note that the key words are used to stress importance for opera | ||||
| tions; they are not required as a formal implementation requirement.</t></aside> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| <section> | ||||
| <name>Terminology</name> | ||||
| <section title="Terminology"> | <!--[rfced] We had the following questions about the Terminology | |||
| <t>This document makes use of the following terms: <list style="symbols"> | section: | |||
| <t>Adj-RIB-In: As defined in <xref target="RFC4271" />, "The | ||||
| Adj-RIBs-In contains unprocessed routing information that has been | ||||
| advertised to the local BGP speaker by its peers."</t> | ||||
| <t>Pre-policy Adj-RIB-In: The result before applying the inbound | ||||
| policy to an Adj-RIB-In. Note that this is an explicit definition | ||||
| that aligns with the pre-policy Adj-RIB-In concept specified in | ||||
| Section 2 of <xref target="RFC7854" />.</t> | ||||
| <t>Post-policy Adj-RIB-In: As defined in Section 2 of <xref | a) We notice that some entries in the Terminology section include | |||
| target="RFC7854" />.</t> | quotes from their defining documents while others do not. Should this | |||
| be made uniform? | ||||
| <t>Adj-RIB-Out: As defined in <xref target="RFC4271" />, "The | b) We do not see any uses of Monitoring Station in this document. | |||
| Adj-RIBs-Out contains the routes for advertisement to specific peers | Please review if updates to the following text should be made. | |||
| by means of the local speaker's UPDATE messages."</t> | ||||
| <t>Pre-policy Adj-RIB-Out: As defined in Section 3 of <xref | Original: | |||
| target="RFC8671" />.</t> | The terms "Producer" and "Collector" are equivalent to "Monitored | |||
| Router" and "Monitoring Station", respectively. | ||||
| <t>Post-policy Adj-RIB-Out: As defined in Section 3 of <xref | --> | |||
| target="RFC8671" />.</t> | ||||
| <t>Loc-RIB: As defined in Section 1.1 of <xref target="RFC4271" />, | <t>This document makes use of the following terms: </t> | |||
| "The Loc-RIB contains the routes that have been selected by the | <dl spacing="normal" newline="false"> | |||
| <dt>Adj-RIB-In:</dt><dd><t>As defined in <xref target="RFC4271"/>:</t> | ||||
| <blockquote>The | ||||
| Adj-RIBs-In contains unprocessed routing information that has been | ||||
| advertised to the local BGP speaker by its peers.</blockquote></dd> | ||||
| <dt>Pre-policy Adj-RIB-In:</dt><dd>The result before applying the inbo | ||||
| und | ||||
| policy to an Adj-RIB-In. Note that this is an explicit definition | ||||
| that aligns with the pre-policy Adj-RIB-In concept specified in | ||||
| <xref section="2" target="RFC7854"/>.</dd> | ||||
| <dt>Post-policy Adj-RIB-In:</dt><dd>As defined in <xref section="2" ta | ||||
| rget="RFC7854"/>.</dd> | ||||
| <dt>Adj-RIB-Out:</dt><dd><t>As defined in <xref target="RFC4271"/>:</t | ||||
| ><blockquote>The | ||||
| Adj-RIBs-Out contains the routes for advertisement to specific peers | ||||
| by means of the local speaker's UPDATE messages.</blockquote></dd> | ||||
| <dt>Pre-policy Adj-RIB-Out:</dt><dd>As defined in <xref section="3" ta | ||||
| rget="RFC8671"/>.</dd> | ||||
| <dt>Post-policy Adj-RIB-Out:</dt><dd>As defined in <xref section="3" t | ||||
| arget="RFC8671"/>.</dd> | ||||
| <dt>Loc-RIB:</dt><dd><t>As defined in <xref section="1.1" target="RFC4 | ||||
| 271"/>:</t><blockquote>The Loc-RIB contains the routes that have been selected b | ||||
| y the | ||||
| local BGP speaker's Decision Process." Note that the Loc-RIB state | local BGP speaker's Decision Process." 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.</blockq | |||
| uote></dd> | ||||
| <t>Route: As defined in Section 1.1 of <xref | <dt>Route:</dt><dd>As defined in <xref section="1.1" target="RFC4271"/ | |||
| target="RFC4271" />.</t> | >.</dd> | |||
| </list></t> | </dl> | |||
| <t>The terms "producer" and "collector" are equivalent to "monitored | ||||
| <t>The terms "Producer" and "Collector" are equivalent to "Monitored | router" and "monitoring station", respectively. Also, "implementation" | |||
| Router" and "Monitoring Station", respectively. Also, "implementation" | follows the same usage as in <xref target="RFC7854"/>.</t> | |||
| is used following the same usage in <xref target="RFC7854" />.</t> | ||||
| </section> | </section> | |||
| <section anchor="Stats"> | ||||
| <section anchor="Stats" title="RIB Monitoring Statistics"> | <name>RIB Monitoring Statistics</name> | |||
| <t>This section defines different statistics type for Adj-RIB-In and | <t>This section defines different statistics types for Adj-RIB-In and | |||
| Adj-RIB-Out monitoring type. Some of these statistics are also | Adj-RIB-Out monitoring types. Some of these statistics are also | |||
| applicable to Loc-RIB; refer to Section 4 for more details.</t> | applicable to Loc-RIB; refer to <xref target="Application_Scope_of_Statist | |||
| ics"/> for more details.</t> | ||||
| <section anchor="stats-format" title="Statistics Format"> | <section anchor="stats-format"> | |||
| <name>Statistics Format</name> | ||||
| <t>The BMP Statistics Report Message carries statistic information in | <t>The BMP Statistics Report Message carries statistic information in | |||
| Type-Length-Value (TLV) formats. Each Statistic is encoded as a TLV | Type-Length-Value (TLV) formats. Each Statistic is encoded as a TLV | |||
| (Stat Type, Stat Len, Stat Data) (Section 4.8 of <xref | (Stat Type, Stat Len, Stat Data) (see <xref section="4.8" target="RFC785 | |||
| target="RFC7854" />). "Stat Data" is being referred as "value" when | 4"/>). "Stat Data" is being referred to as "value" when | |||
| defining various RIB Monitoring Statistics.</t> | defining various RIB Monitoring Statistics.</t> | |||
| <t>Statistics defined in this document can be categorized into two | <!--[rfced] Do uses of "per-" apply to both AFI and SAFI? Note that | |||
| granularities: Global Statistics and Per-Address Family Identifier | more instances occur throughout the document. | |||
| (AFI)/Subsequent Address Family Identifier (SAFI) <xref | ||||
| target="RFC4760" /> Statistics. Statistics defined with Per-AFI/SAFI | ||||
| descriptions belong to Per-AFI/SAFI Statistics, while other statistics | ||||
| belong to Global Statistics. Both a Global Statistic and its | ||||
| corresponding Per-AFI/SAFI Statistics can be reported | ||||
| simultaneously.</t> | ||||
| <t>The Per-AFI/SAFI Statistics apply only to the AFI/SAFIs that a BGP | ||||
| speaker supports and negotiates with its peer. The authoritative | ||||
| registries for AFI/SAFI values are maintained by IANA <xref | ||||
| target="IANA-AFI" /> <xref target="IANA-SAFI" />.</t> | ||||
| <t>For Global Statistics, the "Stat Data" (value) field is a single | ||||
| 64-bit unsigned integer gauge with "Stat Len" MUST be set to 8. Each | ||||
| global statistic MUST appear only once in a BMP Statistics Report | ||||
| Message.</t> | ||||
| <t>For Per-AFI/SAFI Statistics, the "Stat Data" (value) field is a | ||||
| 11-byte structured value formatted as: 2-byte AFI, 1-byte SAFI, and | ||||
| 64-bit Gauge. The "Stat Len" MUST be set to 11. For any given | ||||
| per-AFI/SAFI Statistic, duplicate (AFI, SAFI) pairs MUST NOT appear | ||||
| within the same BMP Statistics Report Message. Per-AFI/SAFI statistics | ||||
| MUST NOT be included in the BMP Statistics Report Message if there is | ||||
| no data to report for that AFI/SAFI.</t> | ||||
| <t>If statistics apply to the Loc-RIB, the "Peer Type" field in the | Note also that, for this instance, as AFI and SAFI are marked as well-known abbr | |||
| Per-Peer Header of the corresponding BMP Statistics Report Message | eviations, it may actually be easier for the reader if the expansions were remov | |||
| MUST be set to 3 (Loc-RIB Instance Peer) <xref target="RFC9069" />. | ed: | |||
| Otherwise, the "Peer Type" MUST be set as defined in Section 4.2 of of | ||||
| <xref target="RFC7854" />.</t> | ||||
| <t>A BMP implementation MUST ignore unrecognized stat types upon | Original: | |||
| receipt.</t> | ...Global Statistics and Per-Address Family Identifier | |||
| </section> | (AFI)/Subsequent Address Family Identifier (SAFI) [RFC4760] | |||
| Statistics. | ||||
| <section anchor="adj-rib-in-stats" | Perhaps: | |||
| title="Adj-RIB-In RIB Monitoring Statistics Definition"> | ...Global Statistics and Statistics per-AFI or per-SAFI (see [RFC4760]). | |||
| <t> | ||||
| <list style="symbols"> | ||||
| <t>Type = 18: (64-bit Gauge) Current number of routes in | ||||
| pre-policy Adj-RIB-In. This gauge is similar to stats type 7 | ||||
| defined in <xref target="RFC7854" /> and makes it explicitly for | ||||
| the pre-policy Adj-RIB-In.</t> | ||||
| <t>Type = 19: (64-bit Gauge) Current number of routes in | --> | |||
| per-AFI/SAFI pre-policy Adj-RIB-In. This gauge is similar to stats | ||||
| type 9 defined in Section 4.8 of <xref target="RFC7854" /> and | ||||
| makes it explicitly for the pre-policy Adj-RIB-In. The value is | ||||
| structured as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit | ||||
| Gauge.</t> | ||||
| <t>Type = 20: (64-bit Gauge) Current number of routes in | <!--[rfced] Is the switch between singular and plural in these | |||
| post-policy Adj-RIB-In.</t> | sentences intentional? | |||
| <t>Type = 21: (64-bit Gauge) Current number of routes in | a) a statistic vs. statistics | |||
| per-AFI/SAFI post-policy Adj-RIB-In. The value is structured as: | ||||
| 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> | ||||
| <t>Type = 22: (64-bit Gauge) Current number of routes in | Original: | |||
| per-AFI/SAFI pre-policy Adj-RIB-In rejected by inbound policy. | Both a Global Statistic and its corresponding Per-AFI/ SAFI Statistics | |||
| This gauge is different from stats type 0 defined in Section 4.8 of | can be reported simultaneously. | |||
| <xref target="RFC7854" />. The stats type 0 is a 32-counter which is | ||||
| a monotonically increasing number, while the stats type 22 is a | ||||
| 64-bit gauge which represents the current number of routes | ||||
| rejected by an inbound policy due to ongoing policy configuration | ||||
| changes. The value is structured as: 2-byte AFI, 1-byte SAFI, | ||||
| followed by a 64-bit Gauge.</t> | ||||
| <t>Type = 23: (64-bit Gauge) Current number of routes in | Perhaps: | |||
| per-AFI/SAFI post-policy Adj-RIB-In accepted by inbound policy. | Both Global Statistics and and their corresponding Per-AFI/ SAFI | |||
| The value is structured as: 2-byte AFI, 1-byte SAFI, followed by a | Statistics can be reported simultaneously. | |||
| 64-bit Gauge.</t> | ||||
| <t>Type = 26: (64-bit Gauge) Current number of routes in | b) AFI/SAFIs | |||
| per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB suppressed by | ||||
| configured route damping policy. The value | ||||
| is structured as: 2-byte AFI, 1-byte SAFI, followed by a | ||||
| 64-bit Gauge. 'Suppressed' refers to a route which has been | ||||
| declared suppressed by the BGP Route Flap Damping mechanism as | ||||
| described in Section 2.2 of <xref target="RFC2439" />.</t> | ||||
| <t>Type = 27: (64-bit Gauge) Current number of routes in | Original: | |||
| per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB marked as stale | The Per-AFI/SAFI Statistics apply only to the AFI/SAFIs that a BGP | |||
| by Graceful Restart (GR) events. The value | speaker supports and negotiates with its peer. | |||
| is structured as: 2-byte AFI, 1-byte SAFI, followed by a | ||||
| 64-bit Gauge. 'Stale' refers to a route which has been declared | ||||
| stale by the BGP GR mechanism as described in Section 4.1 of <xref | ||||
| target="RFC4724" />.</t> | ||||
| <t>Type = 28: (64-bit Gauge) Current number of routes in | Perhaps: | |||
| per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB marked as stale | The Per-AFI/SAFI Statistics apply only to the AFIs/SAFIs that a BGP | |||
| by Long-Lived Graceful Restart (LLGR). | speaker supports and negotiates with its peer. | |||
| The value is structured as: 2-byte AFI, 1-byte SAFI, | ||||
| followed by a 64-bit Gauge. 'Stale' refers to a route which has | ||||
| been declared stale by the BGP LLGR mechanism as described in | ||||
| Section 4.3 of <xref target="RFC9494" />.</t> | ||||
| <t>Type = 29: (64-bit Gauge) Current number of routes in | Note: even when not preceded by "Per", it may be beneficial to clarify | |||
| post-policy Adj-RIB-In left before exceeding the received route | the use of the slash character. Are these either/or relationships or | |||
| threshold as defined in Section 6.7 of <xref target="RFC4271" />.</t | and relationships? If it has a special meaning, it may be good to | |||
| > | define AFI/SAFI in the Terminology section. | |||
| --> | ||||
| <t>Type = 30: (64-bit Gauge) Current number of routes per-AFI/SAFI | <t>Statistics defined in this document can be categorized into two | |||
| in post-policy Adj-RIB-In left before exceeding the received route | granularities: Global Statistics and Per-Address Family Identifier | |||
| threshold which corresponds to the upper bound of per-AFI/SAFI | (AFI) / Subsequent Address Family Identifier (SAFI) Statistics (see <xre | |||
| accepted routes following the model defined in Section 6.7 of <xref | f target="RFC4760"/>). Statistics defined with Per-AFI/SAFI | |||
| target="RFC4271" />. The value is structured as: 2-byte AFI, | descriptions belong to Per-AFI/SAFI Statistics, while other statistics | |||
| 1-byte SAFI, followed by a 64-bit Gauge.</t> | belong to Global Statistics. Both a Global Statistic and its | |||
| corresponding Per-AFI/SAFI Statistics can be reported | ||||
| simultaneously.</t> | ||||
| <t>The Per-AFI/SAFI Statistics apply only to the AFI/SAFIs that a BGP | ||||
| speaker supports and negotiates with its peer. The authoritative | ||||
| registries for AFI/SAFI values are maintained by IANA (see <xref target= | ||||
| "IANA-AFI"/> and <xref target="IANA-SAFI"/>).</t> | ||||
| <t>For Global Statistics, the "Stat Data" (value) field is a single | ||||
| 64-bit unsigned integer gauge where the "Stat Len" field <bcp14>MUST</bc | ||||
| p14> be set to 8. Each | ||||
| global statistic <bcp14>MUST</bcp14> appear only once in a BMP Statistic | ||||
| s Report | ||||
| Message.</t> | ||||
| <t>Type = 31: (64-bit Gauge) Current number of routes | <!--[rfced] We plan to reformat the following text but have waited as | |||
| in post-policy Adj-RIB-In or Loc-RIB left before exceeding a | there were so many uses, we felt it would clutter the diff file. | |||
| license-customized route threshold. If no such license | ||||
| is configured, or if the license does not impose a hard limit, | ||||
| this value MUST NOT be reported.</t> | ||||
| <t>Type = 32: (64-bit Gauge) Current number of routes in | Original: | |||
| per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB left before | ...formatted as: 2-byte AFI, 1-byte SAFI, and a 64-bit Gauge. | |||
| exceeding a license-customized route threshold. | ||||
| If no such license is configured, or if the license | ||||
| does not impose a hard limit, this value MUST NOT be reported. The | ||||
| value is structured as: 2-byte AFI, 1-byte SAFI, followed by a | ||||
| 64-bit Gauge.</t> | ||||
| <t>Type = 33: (64-bit Gauge) Current number of routes in pre-policy | Perhaps: | |||
| Adj-RIB-In rejected by exceeding the maximum AS_PATH length | ...formatted as a 2-byte AFI, a 1-byte SAFI, and a 64-bit Gauge. | |||
| supported by the local configuration.</t> | ||||
| <t>Type = 34: (64-bit Gauge) Current number of routes in | Note that we will update the following similar use (many instances | |||
| per-AFI/SAFI in pre-policy Adj-RIB-In rejected by exceeding the maxi | exist) to appear as above unless we hear objection. | |||
| mum | ||||
| AS_PATH length supported by the local configuration. The value is | ||||
| structured as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit | ||||
| Gauge.</t> | ||||
| <t>Type = 35: (64-bit Gauge) Current number of routes in | Original: | |||
| per-AFI/SAFI post-policy Adj-RIB-In invalidated through the Route | The value is structured as: 2-byte AFI, 1-byte SAFI, followed by a | |||
| Origin Authorization (ROA) of Resource Public Key Infrastructure | 64-bit Gauge. | |||
| (RPKI) <xref target="RFC6811" />. This is total number of routes | ||||
| invalidated due to origin Autonomous System (AS) number mismatch | ||||
| and prefix length mismatch. The value is structured as: 2-byte | ||||
| AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> | ||||
| <t>Type = 36: (64-bit Gauge) Current number of routes in | Perhaps: | |||
| per-AFI/SAFI post-policy Adj-RIB-In validated by verifying route | The value is structured as a 2-byte AFI, a 1-byte SAFI, and a 64-bit | |||
| origin AS number through the ROA of RPKI <xref | Gauge. | |||
| target="RFC6811" />. The value is structured as: 2-byte AFI, | --> | |||
| 1-byte SAFI, followed by a 64-bit Gauge.</t> | ||||
| <t>Type = 37: (64-bit Gauge) Current number of routes in | <t>For Per-AFI/SAFI Statistics, the "Stat Data" (value) field is a | |||
| per-AFI/SAFI post-policy Adj-RIB-In whose RPKI route origin | 11-byte structured value formatted as: 2-byte AFI, 1-byte SAFI, and | |||
| validation state is NotFound due to the absence of a matching ROA | a 64-bit Gauge. The "Stat Len" <bcp14>MUST</bcp14> be set to 11. For any | |||
| of RPKI <xref target="RFC6811" />. The value is structured as: | given | |||
| 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> | per-AFI/SAFI Statistic, duplicate (AFI, SAFI) pairs <bcp14>MUST NOT</bcp | |||
| </list> | 14> appear | |||
| </t> | 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> | ||||
| <t>If statistics apply to the Loc-RIB, the "Peer Type" field in the | ||||
| Per-Peer Header of the corresponding BMP Statistics Report Message | ||||
| <bcp14>MUST</bcp14> be set to 3 (Loc-RIB Instance Peer) <xref target="RF | ||||
| C9069"/>. | ||||
| Otherwise, the "Peer Type" field <bcp14>MUST</bcp14> be set as defined i | ||||
| n | ||||
| <xref target="RFC7854" section="4.2"/>.</t> | ||||
| <t>A BMP implementation <bcp14>MUST</bcp14> ignore unrecognized stat typ | ||||
| es upon | ||||
| receipt.</t> | ||||
| </section> | </section> | |||
| <section anchor="adj-rib-in-stats"> | ||||
| <name>Adj-RIB-In RIB Monitoring Statistics Definition</name> | ||||
| <dl spacing="normal" newline="true"> | ||||
| <dt>Type = 18: (64-bit Gauge)</dt><dd>Current number of routes in | ||||
| the pre-policy Adj-RIB-In. This gauge is similar to stats type 7 defin | ||||
| ed | ||||
| in <xref target="RFC7854"/> and makes it explicitly for the | ||||
| pre-policy Adj-RIB-In.</dd> | ||||
| <dt>Type = 19: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI pre-policy Adj-RIB-In. This gauge is similar to stats | ||||
| type 9 defined in <xref section="4.8" target="RFC7854"/> and makes | ||||
| it explicitly for the pre-policy Adj-RIB-In.</t><t>The value is struct | ||||
| ured | ||||
| as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 20: (64-bit Gauge)</dt><dd>Current number of routes in | ||||
| the post-policy Adj-RIB-In.</dd> | ||||
| <dt>Type = 21: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI post-policy Adj-RIB-In.</t><t>The value is structured | ||||
| as: | ||||
| 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 22: (64-bit Gauge)</dt><dd> | ||||
| <section anchor="adj-rib-out-stats" | <!--[rfced] Should the following update be made? | |||
| title="Adj-RIB-Out RIB Monitoring Statistics Definition"> | ||||
| <t> | ||||
| <list style="symbols"> | ||||
| <t>Type = 38: (64-bit Gauge) Current number of routes in | ||||
| per-AFI/SAFI pre-policy Adj-RIB-Out rejected by outbound policy. | ||||
| These routes are active routes which otherwise would have been | ||||
| advertised in absence of outbound policy which rejected them. | ||||
| The value is structured as: 2-byte AFI, 1-byte SAFI, followed by | ||||
| a 64-bit Gauge.</t> | ||||
| <t>Type = 39: (64-bit Gauge) Current number of routes in pre-policy | Original: | |||
| Adj-RIB-Out filtered due to AS_PATH length exceeding the locally | The stats type 0 is a 32-counter which is a monotonically increasing | |||
| configured maximum.</t> | number... | |||
| <t>Type = 40: (64-bit Gauge) Current number of routes in | Perhaps: | |||
| per-AFI/SAFI pre-policy Adj-RIB-Out filtered due to AS_PATH length | Stats type 0 is a 32-bit counter that is a monotonically increasing | |||
| exceeding the locally configured maximum. The value is structured as | number... | |||
| : | ||||
| 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> | ||||
| <t>Type = 41: (64-bit Gauge) Current number of routes in | --> | |||
| per-AFI/SAFI post-policy Adj-RIB-Out invalidated through the ROA | <t>Current number of routes in the | |||
| of RPKI <xref target="RFC6811" />. This is total number of routes | per-AFI/SAFI pre-policy Adj-RIB-In rejected by an inbound policy. Thi | |||
| invalidated due to origin AS number mismatch and prefix length | s | |||
| mismatch. The value is structured as: 2-byte AFI, 1-byte SAFI, | gauge is different from stats type 0 defined in <xref | |||
| followed by a 64-bit Gauge.</t> | target="RFC7854" section="4.8"/>. Stats type 0 is a 32-counter | |||
| that is a monotonically increasing number; the stats type 22 | ||||
| is a 64-bit gauge that represents the current number of routes | ||||
| rejected by an inbound policy due to ongoing policy configuration | ||||
| changes.</t><t>The value is structured as: 2-byte AFI, 1-byte SAFI, | ||||
| followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 23: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI post-policy Adj-RIB-In accepted by an inbound policy. | ||||
| </t><t>The | ||||
| value is structured as: 2-byte AFI, 1-byte SAFI, followed by a | ||||
| 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 26: (64-bit Gauge)</dt><dd><t>Current number of routes in t | ||||
| he | ||||
| per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB suppressed by | ||||
| a configured route-damping policy.</t><t>The value is structured as: 2 | ||||
| -byte | ||||
| AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t><t>'Suppressed' refer | ||||
| s to | ||||
| a route that has been declared suppressed by the BGP Route Flap | ||||
| Damping mechanism as described in <xref section="2.2" | ||||
| target="RFC2439"/>.</t></dd> | ||||
| <dt>Type = 27: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB marked as stale by | ||||
| Graceful Restart (GR) events.</t><t>The value is structured as: 2-byte | ||||
| AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t><t>'Stale' refers to | ||||
| a | ||||
| route that has been declared stale by the BGP GR mechanism as | ||||
| described in <xref section="4.1" target="RFC4724"/>.</t></dd> | ||||
| <dt>Type = 28: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI post-policy Adj-RIB-In or Loc-RIB marked as stale by | ||||
| Long-Lived Graceful Restart (LLGR).</t><t>The value is structured as: | ||||
| 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t><t>'Stale' ref | ||||
| ers | ||||
| to a route that has been declared stale by the BGP LLGR mechanism | ||||
| as described in <xref section="4.3" target="RFC9494"/>.</t></dd> | ||||
| <dt>Type = 29: (64-bit Gauge)</dt><dd>Current number of routes in the | ||||
| post-policy Adj-RIB-In left before exceeding the received-route | ||||
| threshold as defined in <xref section="6.7" target="RFC4271"/>.</dd> | ||||
| <dt>Type = 30: (64-bit Gauge)</dt><dd><t>Current number of routes | ||||
| in the per-AFI/SAFI in post-policy Adj-RIB-In left before exceeding th | ||||
| e | ||||
| received-route threshold that corresponds to the upper bound of | ||||
| per-AFI/SAFI accepted routes following the model defined in <xref | ||||
| section="6.7" target="RFC4271"/>.</t><t>The value is structured as: 2- | ||||
| byte | ||||
| AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 31: (64-bit Gauge)</dt><dd>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>Type = 32: (64-bit Gauge)</dt><dd><t>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>The value is structur | ||||
| ed | ||||
| as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 33: (64-bit Gauge)</dt><dd>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>Type = 34: (64-bit Gauge)</dt><dd><t>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>The | ||||
| value is structured as: 2-byte AFI, 1-byte SAFI, followed by a | ||||
| 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 35: (64-bit Gauge)</dt><dd> | ||||
| <t>Type = 42: (64-bit Gauge) Current number of routes in | <!--[rfced] We see both "invalidated through the ROA of RPKI" for | |||
| per-AFI/SAFI post-policy Adj-RIB-Out validated by verifying route | Types 35, 36, 41, and 42 in Section 3.2 and "invalidated after | |||
| origin AS number through the ROA of RPKI <xref | verifying route origin AS number through the ROA of RPKI" for the | |||
| target="RFC6811" />. The value is structured as: 2-byte AFI, | same types in Section 8. Please let us know if/how these should | |||
| 1-byte SAFI, followed by a 64-bit Gauge.</t> | be made uniform. | |||
| --> | ||||
| <t>Type = 43: (64-bit Gauge) Current number of routes in | <t>Current number of routes in the | |||
| per-AFI/SAFI post-policy Adj-RIB-Out whose RPKI route origin | per-AFI/SAFI post-policy Adj-RIB-In invalidated through the Route | |||
| validation state is NotFound due to the absence of a matching ROA | Origin Authorization (ROA) of Resource Public Key Infrastructure | |||
| of RPKI <xref target="RFC6811" />. The value is structured as: | (RPKI) <xref target="RFC6811"/>. This is the total number of routes | |||
| 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t> | invalidated due to a mismatch of origin Autonomous System (AS) numbers | |||
| </list> | and a mismatch of | |||
| </t> | prefix length.</t><t>The value is structured as: 2-byte AFI, | |||
| 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 36: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI post-policy Adj-RIB-In validated by verifying the rou | ||||
| te | ||||
| origin AS number through the ROA of RPKI <xref | ||||
| target="RFC6811"/>.</t><t>The value is structured as: 2-byte AFI, 1-by | ||||
| te | ||||
| SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 37: (64-bit Gauge)</dt><dd><t>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"/>.</t><t>The value is structured as: 2-byt | ||||
| e | ||||
| AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| </dl> | ||||
| </section> | ||||
| <section anchor="adj-rib-out-stats"> | ||||
| <name>Adj-RIB-Out RIB Monitoring Statistics Definition</name> | ||||
| <dl spacing="normal" newline="true"> | ||||
| <dt>Type = 38: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI pre-policy Adj-RIB-Out rejected by an outbound policy | ||||
| . | ||||
| These routes are active routes that otherwise would have been | ||||
| advertised in the absence of an outbound policy that rejected them.</t | ||||
| > | ||||
| <t>The value is structured as: 2-byte AFI, 1-byte SAFI, followed by | ||||
| a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 39: (64-bit Gauge)</dt><dd>Current number of routes in the | ||||
| pre-policy Adj-RIB-Out filtered due to the AS_PATH length exceeding th | ||||
| e | ||||
| locally configured maximum.</dd> | ||||
| <dt>Type = 40: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI pre-policy Adj-RIB-Out filtered due to AS_PATH length | ||||
| exceeding the locally configured maximum.</t><t>The value is | ||||
| structured as: 2-byte AFI, 1-byte SAFI, followed by a 64-bit | ||||
| Gauge.</t></dd> | ||||
| <dt>Type = 41: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI post-policy Adj-RIB-Out invalidated through the ROA o | ||||
| f | ||||
| RPKI <xref target="RFC6811"/>. This is the total number of routes | ||||
| invalidated due to a mismatch of origin AS numbers and a mismatch of p | ||||
| refix lengths.</t><t>The value is structured as: 2-byte AFI, 1-byte | ||||
| SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 42: (64-bit Gauge)</dt><dd><t>Current number of routes in | ||||
| the per-AFI/SAFI post-policy Adj-RIB-Out validated by verifying the ro | ||||
| ute | ||||
| origin AS number through the ROA of RPKI <xref | ||||
| target="RFC6811"/>.</t><t>The value is structured as: 2-byte AFI, | ||||
| 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| <dt>Type = 43: (64-bit Gauge)</dt><dd><t>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"/>.</t><t>The value is structured as: | ||||
| 2-byte AFI, 1-byte SAFI, followed by a 64-bit Gauge.</t></dd> | ||||
| </dl> | ||||
| </section> | </section> | |||
| </section> | </section> | |||
| <section anchor="Application_Scope_of_Statistics"> | ||||
| <section anchor="Application Scope of Statistics" | <name>Application Scope of Statistics</name> | |||
| title="Application Scope of Statistics"> | ||||
| <t>This section briefly lists the statistics defined in this document | <t>This section briefly lists the statistics defined in this document | |||
| and outlines their scope of application, as shown in Table 1.</t> | 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"> | |||
| <name slugifiedName="name-scope-of-application">Scope of Application</ | <name>Scope of Application</name> | |||
| name> | <thead> | |||
| <thead> | <tr> | |||
| <tr> | <th align="left">Type</th> | |||
| <th align="left" colspan="1" rowspan="1">Type</th> | <th align="left">Pre-policy Adj-RIB-In</th> | |||
| <th align="left" colspan="1" rowspan="1">Pre-policy Adj-RIB-In</th | <th align="left">Post-policy Adj-RIB-In</th> | |||
| > | <th align="left">Loc-RIB</th> | |||
| <th align="left" colspan="1" rowspan="1">Post-policy Adj-RIB-In</t | <th align="left">Pre-policy Adj-RIB-Out</th> | |||
| h> | <th align="left">Post-policy Adj-RIB-Out</th> | |||
| <th align="left" colspan="1" rowspan="1">Loc-RIB</th> | </tr> | |||
| <th align="left" colspan="1" rowspan="1">Pre-policy Adj-RIB-Out</t | </thead> | |||
| h> | <tbody> | |||
| <th align="left" colspan="1" rowspan="1">Post-policy Adj-RIB-Out</ | <tr> | |||
| th> | <td align="center">18</td> | |||
| </tr> | <td align="center">Y</td> | |||
| </thead> | <td align="center">N</td> | |||
| <tbody> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">18</td> | <td align="center">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">19</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">19</td> | <td align="center">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">20</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">20</td> | <td align="center">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">21</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">21</td> | <td align="center">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">22</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">22</td> | <td align="center">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">23</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">23</td> | <td align="center">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">26</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">Y</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">26</td> | <td align="center">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">Y</td> | <td align="center">27</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">Y</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">27</td> | <td align="center">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">Y</td> | <td align="center">28</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">Y</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">28</td> | <td align="center">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">Y</td> | <td align="center">29</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">29</td> | <td align="center">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">30</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">30</td> | <td align="center">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">31</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">Y</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">31</td> | <td align="center">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">Y</td> | <td align="center">32</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">Y</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">32</td> | <td align="center">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">Y</td> | <td align="center">33</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">33</td> | <td align="center">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">34</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">34</td> | <td align="center">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">35</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">35</td> | <td align="center">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">36</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">36</td> | <td align="center">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">37</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">Y</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">37</td> | <td align="center">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">38</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">Y</td> | |||
| <td align="center" colspan="1" rowspan="1">38</td> | <td align="center">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">39</td> | |||
| <td align="center" colspan="1" rowspan="1">Y</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">Y</td> | |||
| <td align="center" colspan="1" rowspan="1">39</td> | <td align="center">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">40</td> | |||
| <td align="center" colspan="1" rowspan="1">Y</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">Y</td> | |||
| <td align="center" colspan="1" rowspan="1">40</td> | <td align="center">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">41</td> | |||
| <td align="center" colspan="1" rowspan="1">Y</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">41</td> | <td align="center">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">N</td> | <td align="center">42</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">Y</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">42</td> | <td align="center">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">N</td> | <td align="center">43</td> | |||
| <td align="center" colspan="1" rowspan="1">N</td> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">Y</td> | <td align="center">N</td> | |||
| </tr> | <td align="center">N</td> | |||
| <tr> | <td align="center">N</td> | |||
| <td align="center" colspan="1" rowspan="1">43</td> | <td align="center">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">N</td> | ||||
| <td align="center" colspan="1" rowspan="1">N</td> | ||||
| <td align="center" colspan="1" rowspan="1">Y</td> | ||||
| </tr> | ||||
| </tbody> | ||||
| </table> | </table> | |||
| </section> | </section> | |||
| <section anchor="Implementation-Considerations"> | ||||
| <section anchor="Implementation-Considerations" | <name>Implementation Considerations</name> | |||
| title="Implementation Considerations"> | ||||
| <t>This document specifies gauges for new BMP statistics. The format of | <t>This document specifies gauges for new BMP statistics. The format of | |||
| BMP statistics messages remains unchanged from <xref | BMP statistics messages remains unchanged from <xref target="RFC7854"/>. T | |||
| target="RFC7854" />. This section outlines the implementation | his section outlines the implementation | |||
| considerations for new BMP statistics.</t> | considerations for new BMP statistics.</t> | |||
| <!--[rfced] Is there any issue with using both RECOMMENDED and SHOULD | ||||
| in the same sentence? | ||||
| Original: | ||||
| ...it is RECOMMENDED that BMP producers capable of generating both | ||||
| (Types 7 and 18) or (Types 9 and 19) BMP statistics SHOULD transmit | ||||
| both corresponding types simultaneously. | ||||
| Perhaps: | ||||
| ...it is RECOMMENDED that BMP producers capable of generating both | ||||
| (Types 7 and 18) or (Types 9 and 19) BMP statistics transmit both | ||||
| corresponding types simultaneously. | ||||
| --> | ||||
| <!--[rfced] Please rephrase "absent policy otherwise" in the | ||||
| following: | ||||
| Original: | ||||
| For backward compatibility, and absent policy otherwise... | ||||
| Perhaps: | ||||
| For backward compatibility, and absent any other policy... | ||||
| --> | ||||
| <t>For backward compatibility, and absent policy otherwise, it is | <t>For backward compatibility, and absent policy otherwise, 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 <bcp14>SHOULD</bcp14> transmit bot | ||||
| h | ||||
| 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 Type 7 or Type 9. The selection of | |||
| which statistic types to generate within each pair SHOULD be treated as | which statistic types to generate within each pair <bcp14>SHOULD</bcp14> b e 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 statistic types remaining | |||
| implementation-specific.</t> | implementation specific.</t> | |||
| <t>Some statistics are dependent on feature configurations, such as GR, | <t>Some statistics are dependent on feature configurations, 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>Some statistics are also relevant for the Loc-RIB view <xref target="RF | ||||
| <t>Some statistics are also relevant for the Loc-RIB view <xref | C9069"/>; therefore, they may apply to the Loc-RIB view after | |||
| target="RFC9069" />, so 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>Certain statistics may have logical relationships (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> | ||||
| <!--[rfced] This list is not of a parallel structure. How may we | ||||
| update? | ||||
| Original: | ||||
| To avoid adversely impacting the restart process, a BMP statistics | ||||
| producer MAY choose to sample this value at a lower frequency, buffer | ||||
| updates, or temporarily suspend reporting for this type during the | ||||
| most critical phases of a switchover. | ||||
| Perhaps: | ||||
| To avoid adversely impacting the restart process, a BMP statistics | ||||
| producer MAY choose to sample this value at a lower frequency, sample | ||||
| it at buffer updates, or temporarily suspend reporting for this type | ||||
| during the most critical phases of a switchover. | ||||
| --> | ||||
| <t>The generation and transmission of type 27 and 28 during an active | <t>The generation and transmission of type 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 wer | |||
| frequency, buffer updates, or temporarily suspend reporting for this | frequency, buffer 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>These gauges may reset due to manual clearance or overflow. BMP | ||||
| <t>These gauges may reset due to manual clearance, or overflow. BMP | statistics producers and collectors <bcp14>MUST</bcp14> track discontinuit | |||
| statistics producers and collectors MUST track discontinuities and log | ies and log | |||
| this anomaly.</t> | this anomaly.</t> | |||
| </section> | </section> | |||
| <section anchor="Operational"> | ||||
| <section anchor="Operational" title="Operational Considerations"> | <name>Operational Considerations</name> | |||
| <t>This section outlines some operational considerations of new BMP | <t>This section outlines some operational considerations of new BMP | |||
| statistics for BMP operators.</t> | statistics for BMP operators.</t> | |||
| <t>Transmission scheduling and triggering mechanisms for new gauges are | <t>Transmission scheduling and triggering mechanisms 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>BMP operators <bcp14>SHOULD</bcp14> rate-limit statistics updates to mi | ||||
| <t>BMP operators SHOULD rate-limit statistic updates to minimize | nimize | |||
| 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>Some BMP statistics producers, or configurations in BMP statistics | <t>Some BMP statistics producers, or configurations 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 s, the | |||
| accepted count (Type 23) and the Adj-RIB-In counts (Type 21) will be | accepted count (Type 23) and the Adj-RIB-In counts (Type 21) will be | |||
| identical in such cases. BMP operators SHOULD be aware of this behavior | identical in such cases. BMP operators <bcp14>SHOULD</bcp14> be aware of t | |||
| when interpreting these gauges. BMP operators SHOULD be aware that BMP | his behavior | |||
| statistics producers and collectors MAY log inconsistencies between | 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"> | ||||
| <section anchor="Security" title="Security Considerations"> | <name>Security Considerations</name> | |||
| <t>Procedures and protocol extensions defined in this document do not | <t>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"/>, | |||
| 8 of <xref target="RFC8671" />, and Section 7 of <xref | <xref section="8" target="RFC8671"/>, and <xref section="7" target="RFC906 | |||
| target="RFC9069" /> are also applicable to the gauges defined in this | 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>Monitored devices <bcp14>SHOULD</bcp14> be configured to implement rate | ||||
| <t>Monitored devices SHOULD be configured to implement rate-limited | -limited | |||
| reporting of new gauges.</t> | reporting of new gauges.</t> | |||
| </section> | </section> | |||
| <section anchor="IANA"> | ||||
| <section anchor="IANA" title="IANA Considerations"> | <!--[rfced] We had the following questions/comments related to the | |||
| <t>IANA has assigned the following new parameters in the <eref | IANA Considerations section: | |||
| 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> | a) We will communicate any updates to the descriptions of the Stat | |||
| types to IANA upon the completion of AUTH48. | ||||
| <t>Licensing: N/A</t> | b) We will update the format of the list to instead appear as a table. | |||
| We have kept as is for now in order to facilitate diff review. Please | ||||
| let us know any objections. | ||||
| <t>Implementation experience: Nothing specific.</t> | --> | |||
| <t>Contact: linchangwang.04414@h3c.com</t> | <name>IANA Considerations</name> | |||
| <t>IANA has assigned the following new parameters in the "BMP Statistics T | ||||
| ypes" registry, part of the <eref | ||||
| target="https://www.iana.org/assignments/bmp-parameters/" | ||||
| brackets="angle"> "BGP Monitoring Protocol (BMP) Parameters" registry grou | ||||
| p</eref>.</t> | ||||
| <t>IANA has listed these entries as follows. This document serves as a re | ||||
| ference for each entry.</t> | ||||
| <dl spacing="normal" newline="false"> | ||||
| <dt>Type = 18:</dt><dd>Number of routes currently in the pre-policy | ||||
| Adj-RIB-In.</dd> | ||||
| <dt>Type = 19:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| pre-policy Adj-RIB-In.</dd> | ||||
| <dt>Type = 20:</dt><dd>Number of routes currently in the post-policy | ||||
| Adj-RIB-In.</dd> | ||||
| <dt>Type = 21:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In.</dd> | ||||
| <dt>Type = 22:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| pre-policy Adj-RIB-In rejected by an inbound policy.</dd> | ||||
| <dt>Type = 23:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In accepted by an inbound policy.</dd> | ||||
| <dt>Type = 26:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In or Loc-RIB suppressed by a configured route-dampi | ||||
| ng policy.</dd> | ||||
| <dt>Type = 27:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In or Loc-RIB marked as stale by GR events.</dd> | ||||
| <dt>Type = 28:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In or Loc-RIB marked as stale by LLGR.</dd> | ||||
| <dt>Type = 29:</dt><dd>Number of routes currently in the post-policy | ||||
| Adj-RIB-In left before exceeding the received-route threshold.</dd> | ||||
| <dt>Type = 30:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In left before exceeding the received-route | ||||
| threshold.</dd> | ||||
| <dt>Type = 31:</dt><dd>Number of routes currently in the post-policy | ||||
| Adj-RIB-In or Loc-RIB left before exceeding a license-customized route | ||||
| threshold.</dd> | ||||
| <dt>Type = 32:</dt><dd>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.</dd> | ||||
| <dt>Type = 33:</dt><dd>Number of routes currently in the pre-policy | ||||
| Adj-RIB-In rejected due to exceeding the locally configured maximum | ||||
| AS_PATH length.</dd> | ||||
| <dt>Type = 34:</dt><dd>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.</dd> | ||||
| <dt>Type = 35:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In invalidated after verifying the route origin AS | ||||
| number through the ROA of RPKI.</dd> | ||||
| <dt>Type = 36:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In validated after verifying the route origin AS | ||||
| number through the ROA of RPKI.</dd> | ||||
| <dt>Type = 37:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In whose RPKI route origin validation state is | ||||
| NotFound.</dd> | ||||
| <dt>Type = 38:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| pre-policy Adj-RIB-Out rejected by an outbound policy.</dd> | ||||
| <dt>Type = 39:</dt><dd>Number of routes currently in the pre-policy | ||||
| Adj-RIB-Out filtered due to AS_PATH length exceeding the locally | ||||
| configured maximum.</dd> | ||||
| <dt>Type = 40:</dt><dd>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.</dd> | ||||
| <dt>Type = 41:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-Out invalidated after verifying the route origin AS | ||||
| number through the ROA of RPKI.</dd> | ||||
| <dt>Type = 42:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-Out validated after verifying the route origin AS | ||||
| number through the ROA of RPKI.</dd> | ||||
| <dt>Type = 43:</dt><dd>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-Out whose RPKI route origin validation state is | ||||
| NotFound.</dd> | ||||
| </dl> | ||||
| <!--table update; remove the <dl> above. | ||||
| <table anchor="tbl-iana-stats-types" align="center"> | ||||
| <name>BMP Statistics Types</name> | ||||
| <thead> | ||||
| <tr> | ||||
| <th align="left">Stat Type</th> | ||||
| <th align="left">Description</th> | ||||
| </tr> | ||||
| </thead> | ||||
| <tbody> | ||||
| <tr> | ||||
| <td align="center">18</td> | ||||
| <td>Number of routes currently in the pre-policy | ||||
| Adj-RIB-In.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">19</td> | ||||
| <td>Number of routes currently in the per-AFI/SAFI | ||||
| pre-policy Adj-RIB-In.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">20</td> | ||||
| <td>Number of routes currently in the post-policy | ||||
| Adj-RIB-In.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">21</td> | ||||
| <td>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">22</td> | ||||
| <td>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">23</td> | ||||
| <td>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">26</td> | ||||
| <td>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">27</td> | ||||
| <td>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">28</td> | ||||
| <td>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">29</td> | ||||
| <td>Number of routes currently in the post-policy | ||||
| Adj-RIB-In left before exceeding the received-route | ||||
| threshold.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">30</td> | ||||
| <td>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In left before exceeding the | ||||
| received-route threshold.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">31</td> | ||||
| <td>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">32</td> | ||||
| <td>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">33</td> | ||||
| <td>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">34</td> | ||||
| <td>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">35</td> | ||||
| <td>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In invalidated after verifying the | ||||
| route origin AS number through the ROA of RPKI.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">36</td> | ||||
| <td>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-In validated after verifying the | ||||
| route origin AS number through the ROA of RPKI.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">37</td> | ||||
| <td>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">38</td> | ||||
| <td>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">39</td> | ||||
| <td>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">40</td> | ||||
| <td>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">41</td> | ||||
| <td>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-Out invalidated after verifying the | ||||
| route origin AS number through the ROA of RPKI.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">42</td> | ||||
| <td>Number of routes currently in the per-AFI/SAFI | ||||
| post-policy Adj-RIB-Out validated after verifying the | ||||
| route origin AS number through the ROA of RPKI.</td> | ||||
| </tr> | ||||
| <tr> | ||||
| <td align="center">43</td> | ||||
| <td>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> | ||||
| --> | ||||
| <t>Last updated: January 20, 2025</t> | ||||
| </list> | ||||
| </t> | ||||
| </section> | ||||
| </section> | </section> | |||
| <section anchor="Acknowledgements" title="Acknowledgements"> | ||||
| <t>The author would like to thank Jeff Haas, Mohamed Boucadair, Thomas | ||||
| Graf, and Prasad S. Narasimha for their valuable input.</t> | ||||
| <t>Thanks to Giuseppe Fioccola for the OPSDIR, Jouni Korhonen for the | ||||
| GENART, and Bruno Decraene for the RTGDIR review.</t> | ||||
| <t>Thanks to Gunter van de Velde, Eric Vyncke, and Ketan Talaulikar for | ||||
| the IESG review.</t> | ||||
| </section> | ||||
| </middle> | </middle> | |||
| <!-- *****BACK MATTER ***** --> | ||||
| <back> | <back> | |||
| <references title="References"> | <references> | |||
| <references title="Normative References"> | <name>References</name> | |||
| <!--?rfc include= | <references> | |||
| "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml"?--> | <name>Normative References</name> | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | 119.xml"/> | |||
| ence.RFC.2119.xml" | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2 | |||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | 439.xml"/> | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | 271.xml"/> | |||
| ence.RFC.2439.xml" | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 | |||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | 724.xml"/> | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | 760.xml"/> | |||
| ence.RFC.4271.xml" | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | |||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | 811.xml"/> | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | 854.xml"/> | |||
| ence.RFC.4724.xml" | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | 174.xml"/> | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | 671.xml"/> | |||
| ence.RFC.4760.xml" | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | |||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | 069.xml"/> | |||
| <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | 494.xml"/> | |||
| ence.RFC.6811.xml" | ||||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.7854.xml" | ||||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||||
| <!-- <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/ | ||||
| reference.RFC.7911.xml" | ||||
| xmlns:xi="http://www.w3.org/2001/XInclude" />--> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.8174.xml" | ||||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.8671.xml" | ||||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.9069.xml" | ||||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | ||||
| ence.RFC.9494.xml" | ||||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||||
| <reference anchor="IANA-AFI" | <reference anchor="IANA-AFI" target="https://www.iana.org/assignments/ad | |||
| target="https://www.iana.org/assignments/address-family-numbe | dress-family-numbers"> | |||
| rs"> | ||||
| <front> | <front> | |||
| <title>Address Family Numbers</title> | <title>Address Family Numbers</title> | |||
| <author> | <author> | |||
| <organization>IANA</organization> | <organization>IANA</organization> | |||
| </author> | </author> | |||
| </front> | </front> | |||
| </reference> | </reference> | |||
| <reference anchor="IANA-SAFI" target="https://www.iana.org/assignments/s | ||||
| <reference anchor="IANA-SAFI" | afi-namespace"> | |||
| target="https://www.iana.org/assignments/safi-namespace"> | ||||
| <front> | <front> | |||
| <title>Subsequent Address Family Identifiers (SAFI) | <title>Subsequent Address Family Identifiers (SAFI) | |||
| Parameters</title> | Parameters</title> | |||
| <author> | <author> | |||
| <organization>IANA</organization> | <organization>IANA</organization> | |||
| </author> | </author> | |||
| </front> | </front> | |||
| </reference> | </reference> | |||
| </references> | </references> | |||
| <references title="Informative References"> | <!-- [rfced] Would you like the references to be alphabetized or left | |||
| <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | in their current order? | |||
| ence.RFC.7942.xml" | --> | |||
| xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||||
| </references> | ||||
| </references> | </references> | |||
| <section anchor="Acknowledgements" numbered="false"> | ||||
| <name>Acknowledgements</name> | ||||
| <t>The authors would like to thank <contact fullname="Jeff Haas"/>, | ||||
| <contact fullname="Mohamed Boucadair"/>, <contact fullname="Thomas | ||||
| Graf"/>, and <contact fullname="Prasad S. Narasimha"/> for their | ||||
| valuable input.</t> | ||||
| <t>Thanks to <contact fullname="Giuseppe Fioccola"/> for the OPSDIR, | ||||
| <contact fullname="Jouni Korhonen"/> for the GENART, and <contact | ||||
| fullname="Bruno Decraene"/> for the RTGDIR review.</t> | ||||
| <t>Thanks to <contact fullname="Gunter van de Velde"/>, <contact | ||||
| fullname="Éric Vyncke"/>, and <contact fullname="Ketan Talaulikar"/> for | ||||
| the IESG review.</t> | ||||
| </section> | ||||
| <!--[rfced] We note that the following terms may be used inconsistently througho | ||||
| ut the document. Please review these terms and let us know if/how they may be m | ||||
| ade consistent. | ||||
| Stat Type vs. stat type vs. stats type (note RFC 7854 does not use | ||||
| stats type) | ||||
| BMP Statistics Report Message vs. BMP statistics message | ||||
| Statistic vs. statistic (when used by itself) | ||||
| Gauge vs. gauge | ||||
| Type vs. type (e.g., Type 27 vs. type 27) | ||||
| statistic type vs. statistics types (various casing) - singular or | ||||
| plural? | ||||
| --> | ||||
| <!--[rfced] We had the following questions related to abbreviation use throughou | ||||
| t the document: | ||||
| a) We see several instances of AS number. May we make these ASN | ||||
| instead (for Autonomous System Number)? | ||||
| --> | ||||
| <!-- [rfced] Please review the "Inclusive Language" portion of the | ||||
| online Style Guide | ||||
| <https://www.rfc-editor.org/styleguide/part2/#inclusive_language> | ||||
| and let us know if any changes are needed. Updates of this | ||||
| nature typically result in more precise language, which is | ||||
| helpful for readers. | ||||
| Note that our script did not flag any words in particular, but this | ||||
| should still be reviewed as a best practice. | ||||
| --> | ||||
| </back> | </back> | |||
| </rfc> | </rfc> | |||
| End of changes. 133 change blocks. | ||||
| 886 lines changed or deleted | 976 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||