<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" docName="draft-ietf-grow-bmp-peer-up-05" number="9736" ipr="trust200902" updates="7854, 8671, 9069" consensus="true" obsoletes="" submissionType="IETF" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" sortRefs="true" prepTime="2025-03-13T14:51:36" indexInclude="true" scripts="Common,Latin">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-grow-bmp-peer-up-05" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9736" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="BMP Peer Up Namespace">The BGP Monitoring Protocol (BMP) Peer Up Message Namespace</title>
    <seriesInfo name="RFC" value="9736" stream="IETF"/>
    <author fullname="John Scudder" initials="J." surname="Scudder">
      <organization showOnFrontPage="true">Juniper Networks</organization>
      <address>
        <postal>
          <street>1194 N. Mathilda Ave</street>
          <city>Sunnyvale</city>
          <region>CA</region>
          <code>94089</code>
          <country>United States of America</country>
        </postal>
        <email>jgs@juniper.net</email>
      </address>
    </author>
    <author fullname="Paolo Lucente" initials="P." surname="Lucente">
      <organization showOnFrontPage="true">NTT</organization>
      <address>
        <postal>
          <street>Veemweg 23</street>
          <city>Barneveld</city>
          <code>3771 MT</code>
          <country>Netherlands</country>
        </postal>
        <email>paolo@ntt.net</email>
      </address>
    </author>
    <date month="03" year="2025"/>
    <area>OPS</area>
    <workgroup>grow</workgroup>
    <keyword>IDR</keyword>
    <keyword>GROW</keyword>
    <keyword>BGP</keyword>
    <keyword>BMP</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">
	RFC 7854, the BGP Monitoring Protocol (BMP), uses different message types for
	different purposes. Most of these are structured as Type, Length, Value (TLV).
	One message type, the Peer Up message, lacks a set of
	TLVs defined for its use, instead sharing a namespace with the Initiation
	message. Experience has shown that this namespace sharing was
	a mistake, as it hampers the extension of the protocol.</t>
      <t indent="0" pn="section-abstract-2">
	This document updates RFC 7854 by creating an independent namespace for
	the Peer Up message. It also updates RFCs 8671 and 9069 by moving 
	defined codepoints into the newly introduced registry. Compliant implementations
	of RFCs 7854, 8671, and 9069 also comply with this specification.
</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9736" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2025 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.1.2">
              <li pn="section-toc.1-1.1.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.2.1.1"><xref derivedContent="1.1" format="counter" sectionFormat="of" target="section-1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requirements-language">Requirements Language</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-string-definition">String Definition</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-changes-to-existing-rfcs">Changes to Existing RFCs</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-revision-to-the-information">Revision to the Information TLV</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-revision-to-the-peer-up-not">Revision to the Peer Up Notification</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.3">
                <t indent="0" pn="section-toc.1-1.3.2.3.1"><xref derivedContent="3.3" format="counter" sectionFormat="of" target="section-3.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-definition-of-peer-up-infor">Definition of Peer Up Information TLV</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="introduction" numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">

	<xref target="RFC7854" format="default" sectionFormat="of" derivedContent="RFC7854"/> defines a number of different BGP Monitoring Protocol (BMP) message
	types. With the exception of the Route Monitoring message type, these
	messages are TLV-structured. Most message types have distinct
	namespaces and IANA registries. However, the namespace of the Peer Up
	message overlaps that of the Initiation message. As BMP has been extended, this overlap has become problematic. 
   In this
   document, we create distinct namespaces for the Peer Up and Initiation
   messages to eliminate the overlap.
</t>
      <t indent="0" pn="section-1-2">
	Compliant implementations of <xref target="RFC7854" format="default" sectionFormat="of" derivedContent="RFC7854"/>, <xref target="RFC8671" format="default" sectionFormat="of" derivedContent="RFC8671"/>,
	and <xref target="RFC9069" format="default" sectionFormat="of" derivedContent="RFC9069"/> also comply with this specification.
</t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-1.1">
        <name slugifiedName="name-requirements-language">Requirements Language</name>
        <t indent="0" pn="section-1.1-1">
    The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
    "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>",
    "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
    "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be
    interpreted as described in BCP 14 <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when, and only when, they appear in all capitals, as
    shown here.
        </t>
      </section>
    </section>
    <section anchor="string" numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-string-definition">String Definition</name>
      <t indent="0" pn="section-2-1">
    A string TLV is a free-form sequence of UTF-8 characters whose length
    in bytes is given by the TLV's Length field.  There is no requirement to
    terminate the string with a null (or any other particular) character --
    the Length field gives its termination.  
</t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-changes-to-existing-rfcs">Changes to Existing RFCs</name>
      <t indent="0" pn="section-3-1">
   <xref target="RFC7854" format="default" sectionFormat="of" derivedContent="RFC7854"/> is updated as detailed in the following subsections.
</t>
      <section anchor="init_info_tlv" numbered="true" toc="include" removeInRFC="false" pn="section-3.1">
        <name slugifiedName="name-revision-to-the-information">Revision to the Information TLV</name>
        <t indent="0" pn="section-3.1-1">
	The Information TLV defined in <xref target="RFC7854" sectionFormat="of" section="4.4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc7854#section-4.4" derivedContent="RFC7854"/>
	is renamed "Initiation Information TLV". It is used only by the 
	Initiation message, not by the Peer Up message.</t>
        <t indent="0" pn="section-3.1-2">
   The definition of Type = 0 is revised as shown below.
   Type = 1 and Type = 2 are unchanged; they are provided
   for completeness.
        </t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.1-3">
          <li pn="section-3.1-3.1">
            <t indent="0" pn="section-3.1-3.1.1">
		Type = 0: String.  The Information field contains a <xref target="string" format="default" sectionFormat="of" derivedContent="Section 2">string</xref>.  The value is
		administratively assigned.  If multiple string TLVs are
		included, their ordering <bcp14>MUST</bcp14> be preserved when
		they are reported.
            </t>
          </li>
          <li pn="section-3.1-3.2">
            <t indent="0" pn="section-3.1-3.2.1">
		Type = 1: sysDescr.  The Information field contains an ASCII
		string whose value <bcp14>MUST</bcp14> be set to be equal to
		the value of the sysDescr MIB-II <xref target="RFC1213" format="default" sectionFormat="of" derivedContent="RFC1213"/> object.
            </t>
          </li>
          <li pn="section-3.1-3.3">
            <t indent="0" pn="section-3.1-3.3.1">
		Type = 2: sysName.  The Information field contains an ASCII
		string whose value <bcp14>MUST</bcp14> be set to be equal to the value of the
		sysName MIB-II <xref target="RFC1213" format="default" sectionFormat="of" derivedContent="RFC1213"/> object.
            </t>
          </li>
        </ul>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.2">
        <name slugifiedName="name-revision-to-the-peer-up-not">Revision to the Peer Up Notification</name>
        <t indent="0" pn="section-3.2-1">The final paragraph of <xref target="RFC7854" sectionFormat="of" section="4.10" format="default" derivedLink="https://rfc-editor.org/rfc/rfc7854#section-4.10" derivedContent="RFC7854"/> references the Information TLV (which is revised
        <xref target="init_info_tlv" format="default" sectionFormat="of" derivedContent="Section 3.1">above</xref>). That
        paragraph is replaced by the following:
        </t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.2-2">
          <li pn="section-3.2-2.1">
            <t indent="0" pn="section-3.2-2.1.1">
		Information: Information about the peer, using the Peer Up
		Information TLV format defined in <xref target="peer_up_info_tlv" format="default" sectionFormat="of" derivedContent="Section 3.3"/> of RFC 9736.  The String type may be
		repeated.  Inclusion of the Information field is
		<bcp14>OPTIONAL</bcp14>.  Its presence or absence can be
		inferred by inspection of the Message Length in the common
		header.
            </t>
          </li>
        </ul>
      </section>
      <section anchor="peer_up_info_tlv" numbered="true" toc="include" removeInRFC="false" pn="section-3.3">
        <name slugifiedName="name-definition-of-peer-up-infor">Definition of Peer Up Information TLV</name>
        <t indent="0" pn="section-3.3-1">
	The Peer Up Information TLV is used by the Peer Up message.
</t>
        <artwork align="center" name="" type="" alt="" pn="section-3.3-2">
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Information Type     |       Information Length      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                 Information (variable)                        |
~                                                               ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3-3">
          <li pn="section-3.3-3.1">
            <t indent="0" pn="section-3.3-3.1.1"> Information Type (2 bytes): types are as defined in the "BMP Peer Up Message TLVs" registry:</t>
            <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3.3-3.1.2">
              <li pn="section-3.3-3.1.2.1">
                <t indent="0" pn="section-3.3-3.1.2.1.1">Type = 0: String.  The Information field contains a <xref target="string" format="default" sectionFormat="of" derivedContent="Section 2">string</xref>.  The value is
                administratively assigned.  If multiple strings are included,
                their ordering <bcp14>MUST</bcp14> be preserved when they are
                reported.</t>
              </li>
              <li pn="section-3.3-3.1.2.2">
                <t indent="0" pn="section-3.3-3.1.2.2.1">Type = 3: VRF/Table Name. The Information field contains a
                UTF-8 string whose value <bcp14>MUST</bcp14> be equal to the
                value of the VRF or table name (e.g., RD instance name) being
                conveyed. The string size <bcp14>MUST</bcp14> be within the
                range of 1 to 255 bytes.</t>
              </li>
              <li pn="section-3.3-3.1.2.3">
                <t indent="0" pn="section-3.3-3.1.2.3.1"> Type = 4: Admin Label.  The Information field contains a
                free-form UTF-8 string whose byte length is given by the
                Information Length field.  The value is administratively
                assigned.  There is no requirement to terminate the string
                a with null or any other character.</t>
              </li>
            </ul>
          </li>
          <li pn="section-3.3-3.2">
            <t indent="0" pn="section-3.3-3.2.1">Information Length (2 bytes): The length of the following
            Information field, in bytes.</t>
          </li>
          <li pn="section-3.3-3.3">
            <t indent="0" pn="section-3.3-3.3.1">Information (variable): Information about the monitored
            router, according to the type.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="IANA" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-4-1">
	IANA has created the "BMP Peer Up Message TLVs" within the "BGP Monitoring Protocol (BMP) Parameters" registry group and listed this document as the reference. </t>
      <t indent="0" pn="section-4-2">
	Registration procedures for this registry are:</t>
      <table align="center" pn="table-1">
        <thead>
          <tr>
            <th align="left" colspan="1" rowspan="1">Range</th>
            <th align="left" colspan="1" rowspan="1">Registration Procedures</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left" colspan="1" rowspan="1">0, 3-32767</td>
            <td align="left" colspan="1" rowspan="1">Standards Action</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">32768-65530</td>
            <td align="left" colspan="1" rowspan="1">First Come First Served</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">65531-65534</td>
            <td align="left" colspan="1" rowspan="1">Experimental</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">1-2, 65535</td>
            <td align="left" colspan="1" rowspan="1">Reserved</td>
          </tr>
        </tbody>
      </table>
      <t indent="0" pn="section-4-4">                                                                                   
        The initial values for this registry are:
</t>
      <table align="center" pn="table-2">
        <thead>
          <tr>
            <th align="center" colspan="1" rowspan="1">Type</th>
            <th align="center" colspan="1" rowspan="1">Description</th>
            <th align="center" colspan="1" rowspan="1">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="center" colspan="1" rowspan="1">0</td>
            <td align="center" colspan="1" rowspan="1">String</td>
            <td align="center" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">1</td>
            <td align="center" colspan="1" rowspan="1">Reserved</td>
            <td align="center" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">2</td>
            <td align="center" colspan="1" rowspan="1">Reserved</td>
            <td align="center" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">3</td>
            <td align="center" colspan="1" rowspan="1">VRF/Table Name</td>
            <td align="center" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">4</td>
            <td align="center" colspan="1" rowspan="1">Admin Label</td>
            <td align="center" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="center" colspan="1" rowspan="1">65535</td>
            <td align="center" colspan="1" rowspan="1">Reserved</td>
            <td align="center" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
        </tbody>
      </table>
      <t indent="0" pn="section-4-6">
        IANA has also renamed the "BMP Initiation
        and Peer Up Information TLVs" registry to "BMP Initiation Information TLVs"
        and populated it with the following values:
</t>
      <table align="center" pn="table-3">
        <thead>
          <tr>
            <th align="left" colspan="1" rowspan="1">Type</th>
            <th align="left" colspan="1" rowspan="1">Description</th>
            <th align="left" colspan="1" rowspan="1">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left" colspan="1" rowspan="1">0</td>
            <td align="left" colspan="1" rowspan="1">String</td>
            <td align="left" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">1</td>
            <td align="left" colspan="1" rowspan="1">sysDescr</td>
            <td align="left" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">2</td>
            <td align="left" colspan="1" rowspan="1">sysName</td>
            <td align="left" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">3</td>
            <td align="left" colspan="1" rowspan="1">Reserved</td>
            <td align="left" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">4</td>
            <td align="left" colspan="1" rowspan="1">Reserved</td>
            <td align="left" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">65535</td>
            <td align="left" colspan="1" rowspan="1">Reserved</td>
            <td align="left" colspan="1" rowspan="1">RFC 9736</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="Security" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-5-1">
	This document does not alter the security considerations of <xref target="RFC7854" format="default" sectionFormat="of" derivedContent="RFC7854"/> that continue to apply.
</t>
    </section>
  </middle>
  <back>
    <references pn="section-6">
      <name slugifiedName="name-normative-references">Normative References</name>
      <reference anchor="RFC1213" target="https://www.rfc-editor.org/info/rfc1213" quoteTitle="true" derivedAnchor="RFC1213">
        <front>
          <title>Management Information Base for Network Management of TCP/IP-based internets: MIB-II</title>
          <author fullname="K. McCloghrie" initials="K." surname="McCloghrie"/>
          <author fullname="M. Rose" initials="M." surname="Rose"/>
          <date month="March" year="1991"/>
          <abstract>
            <t indent="0">This memo defines the second version of the Management Information Base (MIB-II) for use with network management protocols in TCP/IP-based internets. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="17"/>
        <seriesInfo name="RFC" value="1213"/>
        <seriesInfo name="DOI" value="10.17487/RFC1213"/>
      </reference>
      <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <abstract>
            <t indent="0">In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC7854" target="https://www.rfc-editor.org/info/rfc7854" quoteTitle="true" derivedAnchor="RFC7854">
        <front>
          <title>BGP Monitoring Protocol (BMP)</title>
          <author fullname="J. Scudder" initials="J." role="editor" surname="Scudder"/>
          <author fullname="R. Fernando" initials="R." surname="Fernando"/>
          <author fullname="S. Stuart" initials="S." surname="Stuart"/>
          <date month="June" year="2016"/>
          <abstract>
            <t indent="0">This document defines the BGP Monitoring Protocol (BMP), which can be used to monitor BGP sessions. BMP is intended to provide a convenient interface for obtaining route views. Prior to the introduction of BMP, screen scraping was the most commonly used approach to obtaining such views. The design goals are to keep BMP simple, useful, easily implemented, and minimally service affecting. BMP is not suitable for use as a routing protocol.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7854"/>
        <seriesInfo name="DOI" value="10.17487/RFC7854"/>
      </reference>
      <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
          <abstract>
            <t indent="0">RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
      <reference anchor="RFC8671" target="https://www.rfc-editor.org/info/rfc8671" quoteTitle="true" derivedAnchor="RFC8671">
        <front>
          <title>Support for Adj-RIB-Out in the BGP Monitoring Protocol (BMP)</title>
          <author fullname="T. Evens" initials="T." surname="Evens"/>
          <author fullname="S. Bayraktar" initials="S." surname="Bayraktar"/>
          <author fullname="P. Lucente" initials="P." surname="Lucente"/>
          <author fullname="P. Mi" initials="P." surname="Mi"/>
          <author fullname="S. Zhuang" initials="S." surname="Zhuang"/>
          <date month="November" year="2019"/>
          <abstract>
            <t indent="0">The BGP Monitoring Protocol (BMP) only defines access to the Adj-RIB-In Routing Information Bases (RIBs). This document updates BMP (RFC 7854) by adding access to the Adj-RIB-Out RIBs. It also adds a new flag to the peer header to distinguish between Adj-RIB-In and Adj-RIB-Out.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8671"/>
        <seriesInfo name="DOI" value="10.17487/RFC8671"/>
      </reference>
      <reference anchor="RFC9069" target="https://www.rfc-editor.org/info/rfc9069" quoteTitle="true" derivedAnchor="RFC9069">
        <front>
          <title>Support for Local RIB in the BGP Monitoring Protocol (BMP)</title>
          <author fullname="T. Evens" initials="T." surname="Evens"/>
          <author fullname="S. Bayraktar" initials="S." surname="Bayraktar"/>
          <author fullname="M. Bhardwaj" initials="M." surname="Bhardwaj"/>
          <author fullname="P. Lucente" initials="P." surname="Lucente"/>
          <date month="February" year="2022"/>
          <abstract>
            <t indent="0">The BGP Monitoring Protocol (BMP) defines access to local Routing
Information Bases (RIBs). This document updates BMP (RFC 7854) by
adding access to the Local Routing Information Base (Loc-RIB), as
defined in RFC 4271. The Loc-RIB contains the routes that have been
selected by the local BGP speaker's Decision Process.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9069"/>
        <seriesInfo name="DOI" value="10.17487/RFC9069"/>
      </reference>
    </references>
    <section anchor="Acknowledgements" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">The authors would like to thank <contact fullname="Maxence Younsi"/> for his review.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author fullname="John Scudder" initials="J." surname="Scudder">
        <organization showOnFrontPage="true">Juniper Networks</organization>
        <address>
          <postal>
            <street>1194 N. Mathilda Ave</street>
            <city>Sunnyvale</city>
            <region>CA</region>
            <code>94089</code>
            <country>United States of America</country>
          </postal>
          <email>jgs@juniper.net</email>
        </address>
      </author>
      <author fullname="Paolo Lucente" initials="P." surname="Lucente">
        <organization showOnFrontPage="true">NTT</organization>
        <address>
          <postal>
            <street>Veemweg 23</street>
            <city>Barneveld</city>
            <code>3771 MT</code>
            <country>Netherlands</country>
          </postal>
          <email>paolo@ntt.net</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
