Internet DRAFT - draft-ietf-grow-bmp-tlv-ebit
draft-ietf-grow-bmp-tlv-ebit
Global Routing Operations P. Lucente
Internet-Draft NTT
Updates: 7854 (if approved) Y. Gu
Intended status: Standards Track Huawei
Expires: 25 April 2024 23 October 2023
Support for Enterprise-specific TLVs in the BGP Monitoring Protocol
draft-ietf-grow-bmp-tlv-ebit-04
Abstract
Message types defined by the BGP Monitoring Protocol (BMP) do
provision for data in TLV - Type, Length, Value - format, either in
the shape of a TLV message body, ie. Route Mirroring and Stats
Reports, or optional TLVs at the end of a BMP message, ie. Peer Up
and Peer Down. However the space for Type value is unique and
governed by IANA. To allow the usage of vendor-specific TLVs, a
mechanism to define per-vendor Type values is required. In this
document we introduce an Enterprise Bit, or E-bit, for such purpose.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 25 April 2024.
Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) 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
Lucente & Gu Expires 25 April 2024 [Page 1]
Internet-Draft BMP TLV EBIT October 2023
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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. TLV encoding . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1. IANA-registered TLV encoding . . . . . . . . . . . . . . 3
3.2. Enterprise-specific TLV encoding . . . . . . . . . . . . 3
3.3. TLV encoding remarks . . . . . . . . . . . . . . . . . . 4
4. Security Considerations . . . . . . . . . . . . . . . . . . . 5
5. Operational Considerations . . . . . . . . . . . . . . . . . 5
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
7.1. Normative References . . . . . . . . . . . . . . . . . . 6
7.2. Informative References . . . . . . . . . . . . . . . . . 7
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
The BGP Monitoring Protocol (BMP) is defined in RFC 7854 [RFC7854].
Support for TLV data is extended by TLV support for BMP Route
Monitoring and Peer Down Messages [I-D.ietf-grow-bmp-tlv].
Vendors need the ability to define proprietary Information Elements
for various reasons such as delivering a pre-standard product. This
aligns with Section 4.1 of [RFC8126].
Also for code point assignment to be eligible, an IETF document needs
to be adopted at a Working Group and in a stable condition. In this
context E-bit helps during early development phases where inter-
operability among vendors is tested and shipped to network operators
for testing. This aligns with Section 4.2 of [RFC8126].
This document re-defines the format of IANA-registered TLVs in a
backward compatible manner with respect to previous documents and
existing IANA allocations; it also defines the format for newly
introduced enterprise-specific TLVs.
The concept of an E-bit, or Enterprise Bit, is not new. For example,
such mechanism is defined in Section 3.2 of [RFC7011] for a very
similar purpose.
Lucente & Gu Expires 25 April 2024 [Page 2]
Internet-Draft BMP TLV EBIT October 2023
2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 RFC 2119 [RFC2119] RFC 8174 [RFC8174] when, and only when, they
appear in all capitals, as shown here.
3. TLV encoding
3.1. IANA-registered TLV encoding
Existing TLV encodings are defined in Section 4.4 of [RFC7854]
(Information TLVs), Section 4.7 of [RFC7854] (Route Mirroring TLVs),
Section 4.8 of [RFC7854] (Stats Reports TLVs),
draft-ietf-grow-bmp-tlv [I-D.ietf-grow-bmp-tlv] and
draft-ietf-grow-bmp-peer-up [I-D.ietf-grow-bmp-peer-up] and are
updated as follows:
* 1 bit to flag an enterprise-specific TLV, set to zero. The TLV
Type value must have been defined in IANA-BMP [IANA-BMP]
* 15 bits of TLV Type,
* 2 octets of TLV Value length,
* 0 or more octets of TLV Value.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|E| Type | Length (2 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1
3.2. Enterprise-specific TLV encoding
Enterprise-specific TLV encoding is defined as follows:
* 1 bit to flag an enterprise-specific TLV, set to one
* 15 bits of TLV Type,
Lucente & Gu Expires 25 April 2024 [Page 3]
Internet-Draft BMP TLV EBIT October 2023
* 2 octets of TLV length. Comprising length of IANA PEN plus TLV
value,
* 4 octets of IANA Private Enterprise Number IANA-PEN [IANA-PEN]
* 0 or more octets of TLV Value.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|E| Type | Length (2 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Enterprise number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2
In case of indexed TLVs, as defined by TLV support for BMP Route
Monitoring and Peer Down Messages [I-D.ietf-grow-bmp-tlv], the index
value follows the Enterprise number.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|E| Type | Length (2 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Enterprise number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Index (2 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3
3.3. TLV encoding remarks
The TLV encoding specified in this document applies to all existing
BMP Message Types and their namespaces defined in RFC 7854 [RFC7854],
TLV support for BMP Route Monitoring and Peer Down Messages
[I-D.ietf-grow-bmp-tlv] and BMP Peer Up Message Namespace
[I-D.ietf-grow-bmp-peer-up].
Lucente & Gu Expires 25 April 2024 [Page 4]
Internet-Draft BMP TLV EBIT October 2023
Stats Report messages are also encoded in a TLV-like fashion, as
documented in Section 4.8 of [RFC7854]. E-bit does hence similarly
apply to these messages too, with the most relevant bit of Stat Type
set to 1 in order to flag the presence of a 4-bytes PEN field
following Stat Len and preeceding Stat Data, ie.:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|E| Stat Type | Stat Len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Enterprise number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Stat Data |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4
While the proposed encoding is not per-se backward compatible, there
is no existing IANA-allocated Type value that makes use of the most
significant bit (which is being used in this document to define the
E-bit), except the experimental and reserved ones mentioned in
Section 10.5 of [RFC7854], Section 10.6 of [RFC7854] and Section 10.9
of [RFC7854]. Of these, the Experimental values are being suppressed
in favor of using the E-bit mechanism described in this document; the
Reserved value is instead excluded by the E-bit mechanism such that
no PEN will be included as part of the TLV.
Future BMP Message Types MUST make use of the TLV encoding defined in
this document.
This document refers to TLV support for BMP Route Monitoring and Peer
Down Messages [I-D.ietf-grow-bmp-tlv] for any recommendations
regarding the use of TLVs (ie. repetitions, ordering, etc.).
4. Security Considerations
This document does not add any additional security considerations.
5. Operational Considerations
It is recommended that vendors making use of the Enterprise Bit
extension have a well-defined internal registry for privately
assigned code points that is also exposed to the public.
Lucente & Gu Expires 25 April 2024 [Page 5]
Internet-Draft BMP TLV EBIT October 2023
6. IANA Considerations
The TLV Type values used by BMP are managed by IANA as are the
Private Enterprise Numbers used by enterprise-specific Type values
IANA-PEN [IANA-PEN].
This document requests to remove the Experimental allocation from BMP
Initiation and Peer Up Information TLVs, BMP Termination Message TLVs
and BMP Route Mirroring TLVs registries as the equivalent action (ie.
expressing experimental values) will be instead performed as
described in this document, ie. by setting the E-bit and defining the
relevant PEN.
7. References
7.1. Normative References
[I-D.ietf-grow-bmp-peer-up]
Scudder, J. and P. Lucente, "BMP Peer Up Message
Namespace", Work in Progress, Internet-Draft, draft-ietf-
grow-bmp-peer-up-01, 13 July 2023,
<https://datatracker.ietf.org/doc/html/draft-ietf-grow-
bmp-peer-up-01>.
[I-D.ietf-grow-bmp-tlv]
Lucente, P. and Y. Gu, "TLV support for BMP Route
Monitoring and Peer Down Messages", Work in Progress,
Internet-Draft, draft-ietf-grow-bmp-tlv-12, 27 March 2023,
<https://datatracker.ietf.org/doc/html/draft-ietf-grow-
bmp-tlv-12>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC7854] Scudder, J., Ed., Fernando, R., and S. Stuart, "BGP
Monitoring Protocol (BMP)", RFC 7854,
DOI 10.17487/RFC7854, June 2016,
<https://www.rfc-editor.org/info/rfc7854>.
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
Lucente & Gu Expires 25 April 2024 [Page 6]
Internet-Draft BMP TLV EBIT October 2023
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
7.2. Informative References
[IANA-BMP] IANA, "BGP Monitoring Protocol (BMP) Parameters", 2016,
<https://www.iana.org/assignments/bmp-parameters/bmp-
parameters.xhtml>.
[IANA-PEN] IANA, "Private Enterprise Numbers", 1982,
<http://www.iana.org/assignments/enterprise-numbers/>.
[RFC7011] Claise, B., Ed., Trammell, B., Ed., and P. Aitken,
"Specification of the IP Flow Information Export (IPFIX)
Protocol for the Exchange of Flow Information", STD 77,
RFC 7011, DOI 10.17487/RFC7011, September 2013,
<https://www.rfc-editor.org/info/rfc7011>.
Acknowledgements
The authors would like to thank Thomas Graf, Jeff Haas, Pierre
Francois, Camilo Cardona and Ahmed Elhassany for their valuable
input.
Authors' Addresses
Paolo Lucente
NTT
Veemweg 23
3771 Barneveld
Netherlands
Email: paolo@ntt.net
Yunan Gu
Huawei
Huawei Bld., No.156 Beiqing Rd.
Beijing
100095
China
Email: guyunan@huawei.com
Lucente & Gu Expires 25 April 2024 [Page 7]