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]