Internet DRAFT - draft-grow-bmp-tlv
draft-grow-bmp-tlv
Global Routing Operations P. Lucente
Internet-Draft NTT
Updates: 7854 (if approved) Y. Gu
Intended status: Standards Track Huawei
Expires: March 6, 2020 H. Smit
Independent
September 3, 2019
TLV support for BMP Route Monitoring and Peer Down Messages
draft-grow-bmp-tlv-00
Abstract
Most of the message types defined by the BGP Monitoring Protocol
(BMP) do provision for optional trailing data; however Route
Monitoring message (to provide a snapshot of the monitored Routing
Information Base) and Peer Down message (to indicate that a peering
session was terminated) do not. Supporting optional data in TLV
format across all BMP message types allows for an homogeneous and
extensible surface that would be useful for the most different use-
cases that need to convey additional data to a BMP station. While
this document does not want to cover any specific utilization
scenario, it defines a simple way to support optional TLV data in all
message types.
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 March 6, 2020.
Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved.
Lucente, et al. Expires March 6, 2020 [Page 1]
Internet-Draft BMP TLV September 2019
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 extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. TLV encoding . . . . . . . . . . . . . . . . . . . . . . . . 3
4. BMP Message Format . . . . . . . . . . . . . . . . . . . . . 4
4.1. Common Header . . . . . . . . . . . . . . . . . . . . . . 4
4.2. TLV data in Route Monitoring . . . . . . . . . . . . . . 4
4.3. TLV data in Peer Down . . . . . . . . . . . . . . . . . . 4
4.4. TLV data in other BMP messages . . . . . . . . . . . . . 4
5. Security Considerations . . . . . . . . . . . . . . . . . . . 4
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
7. Normative References . . . . . . . . . . . . . . . . . . . . 5
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6
1. Introduction
The BGP Monitoring Protocol (BMP) is defined in RFC 7854 [RFC7854].
The Route Monitoring message consists of:
o Common Header
o Per-Peer Header
o BGP Update PDU
The Peer Down Notification message consists of:
o Common Header
o Per-Peer Header
o Reason
o Data (only if Reason code is 1, 2 or 3)
Lucente, et al. Expires March 6, 2020 [Page 2]
Internet-Draft BMP TLV September 2019
This means that both Route Monitoring and Peer Down messages have a
non-extensible format. In the Route Monitoring case this is limiting
if wanting to transmit characteristics of transported NLRIs (ie. to
help stateless parsing) or vendor-specific data; in the Peer Down
case this is limiting if wanting to match TLVs shipped with the Peer
Up. The proposal of this document is to bump the BMP version, for
backward compatibility, and allow all message types to provision for
trailing TLV data.
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
TLV data type is already defined in Section 4.4 of [RFC7854] for the
Initiation and Peer Up message types. A TLV consists of:
o 2 octets of TLV Type,
o 2 octets of TLV Length,
o 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type (2 octets) | Length (2 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (variable, between, 0 and 65535 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1
TLVs SHOULD be sorted by their code point. Multiple TLVs of the same
type can be repeated as part of the same message and it is left to
the specific use-cases whether all, any, the first or the last TLV
should be considered.
Lucente, et al. Expires March 6, 2020 [Page 3]
Internet-Draft BMP TLV September 2019
4. BMP Message Format
4.1. Common Header
Section 4.1 of [RFC7854] defines the Common Header. While the
structure remains unaltered, the following two definitions are
changed:
o Version: Indicates the BMP version. This is set to '4' for all
messages.
o Message Length: Length of the message in bytes (including headers,
data, encapsulated messages and TLV data if any)
4.2. TLV data in Route Monitoring
The Route Monitoring message type is defined in Section 4.6 of
[RFC7854]. The BGP Update PDU Section 4.3 of [RFC4271] MAY be
followed by TLV data. This document defines the following new codes
to help stateless parsing of BGP Update PDUs:
o Type = TBD1: the BGP Update PDU is encoded with support for
4-octet AS number capability RFC 6793 [RFC6793], value MUST be
boolean.
o Type = TBD2: the BGP Update PDU is encoded with ADD-PATH
capability RFC 7911 [RFC7911], value MUST be boolean.
o Type = TBD3: the BGP Update PDU is encoded with Multiple Labels
capability RFC 8277 [RFC8277], value MUST be boolean.
4.3. TLV data in Peer Down
The Peer Down Notification message type is defined in Section 4.9 of
[RFC7854]. TLV data MAY now follow any Reason code.
4.4. TLV data in other BMP messages
All other message types defined in RFC7854 [RFC7854] do already
provision for TLV data. It is RECOMMENDED that all future BMP
message types will provision for trailing TLV data.
5. Security Considerations
It is not believed that this document adds any additional security
considerations.
Lucente, et al. Expires March 6, 2020 [Page 4]
Internet-Draft BMP TLV September 2019
6. IANA Considerations
This document defines the following new TLV types for BMP Route
Monitoring and Peer Down messages (Section 4.2):
o Type = TBD1: Support for 4-octet AS number capability. The value
field contains a boolean value. 1 if the BGP Update PDU enclosed
in the Route Monitoring message was encoded according to the
capability.
o Type = TBD2: ADD-PATH capability. The value field contains a
boolean value. 1 if the BGP Update PDU enclosed in the Route
Monitoring message was encoded according to the capability.
o Type = TBD3: Multiple Labels capability. The value field contains
a boolean value. 1 if the BGP Update PDU enclosed in the Route
Monitoring message was encoded according to the capability.
7. Normative References
[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>.
[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
Border Gateway Protocol 4 (BGP-4)", RFC 4271,
DOI 10.17487/RFC4271, January 2006,
<https://www.rfc-editor.org/info/rfc4271>.
[RFC6793] Vohra, Q. and E. Chen, "BGP Support for Four-Octet
Autonomous System (AS) Number Space", RFC 6793,
DOI 10.17487/RFC6793, December 2012,
<https://www.rfc-editor.org/info/rfc6793>.
[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>.
[RFC7911] Walton, D., Retana, A., Chen, E., and J. Scudder,
"Advertisement of Multiple Paths in BGP", RFC 7911,
DOI 10.17487/RFC7911, July 2016,
<https://www.rfc-editor.org/info/rfc7911>.
[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>.
Lucente, et al. Expires March 6, 2020 [Page 5]
Internet-Draft BMP TLV September 2019
[RFC8277] Rosen, E., "Using BGP to Bind MPLS Labels to Address
Prefixes", RFC 8277, DOI 10.17487/RFC8277, October 2017,
<https://www.rfc-editor.org/info/rfc8277>.
Acknowledgements
The authors would like to thank Jeff Haas for his valuable input.
Authors' Addresses
Paolo Lucente
NTT
Siriusdreef 70-72
Hoofddorp, WT 2132
NL
Email: paolo@ntt.net
Yunan Gu
Huawei
Huawei Bld., No.156 Beiqing Rd.
Beijing 100095
China
Email: guyunan@huawei.com
Henk Smit
Independent
NL
Email: hhw.smit@xs4all.nl
Lucente, et al. Expires March 6, 2020 [Page 6]