| Internet-Draft | Aggregated BMP Route Monitoring Message | July 2026 |
| Liu, et al. | Expires 7 January 2027 | [Page] |
This document proposes an aggregated BMP Route Monitoring message based on the BMP Multi-Peer Header message (draft-liu-grow-bmp-multiple-peer-header). It can compress multiple BMP Route Monitoring messages into one aggregated BMP Route Monitoring message to reduce the amount of reported BMP Route Monitoring messages and reduce the network overhead.¶
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 7 January 2027.¶
Copyright (c) 2026 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 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.¶
[RFC7854] defines BMP Route Monitoring message, which is used to send incremental routes advertised and withdrawn by peers to the monitoring station. BMP Route Monitoring message consists of Common Header, Per-Peer Header and BGP Update PDU. Among them, Common Header and Per-Peer Header are defined in [RFC7854], and the BGP Update PDU contains the BGP PATH attribute and prefix, as shown in Figure 1.¶
+------------------------------+
| Common Header |
+------------------------------+
| Per-Peer Header |
+------------------------------+
| BGP Update PDU |
|+----------------------------+|
|| BGP PATH Attributes ||
|+----------------------------+|
|| Prefixes ||
|+----------------------------+|
+------------------------------+
[I-D.ietf-grow-bmp-tlv] changes the structure of BMP Route Monitoring message where the Per-Peer Header is followed by one BGP Message TLV and optional TLVs, as shown in Figure 2. The BGP Update PDU is enclosed in the BGP Message TLV, and a Route Monitoring message MUST contain one BGP Message TLV.¶
+------------------------------+
| Common Header |
+------------------------------+
| Per-Peer Header |
+------------------------------+
| BGP Message TLV |
|+----------------------------+|
|| BGP Update PDU ||
||+--------------------------+||
||| BGP PATH Attributes |||
||+--------------------------+||
||| Prefixes |||
||+--------------------------+||
|+----------------------------+|
+------------------------------+
| Optional TLVs |
+------------------------------+
Currently, a piece of BMP Route Monitoring message can contain one Common Header, one Per-Peer Header, and one BGP Update PDU or one BGP Message TLV including one BGP Update PDU, and the BGP Update PDU can contain multiple non-repeatable BGP PATH attributes and prefixes.¶
[I-D.liu-grow-bmp-multiple-peer-header] defines the Multi-Peer Header Message to compress multiple BMP Per-Peer messages into one aggregated BMP message for reducing the reported BMP messages and the network overhead.¶
This document proposes an aggregated BMP Route Monitoring message based on the Multi-Peer Header message. It can compress multiple BMP Route Monitoring messages into one aggregated BMP Route Monitoring message, which reduces the amount of reported BMP Route Monitoring messages and also reduces the network overhead.¶
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 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
The rapid growth of existing network routing tables and the complexity of network topology have led to the need for BGP to support more peers. In particular, in scenarios with a large number of peers and a large amount of routes, the router needs to send routes to a large number of BGP peers, and most of the peers have the same configuration, which requires higher packaging and sending performance.¶
The BGP group packaging technology treats all BGP peers with common configurations as a packaging group. In this way, each route to be sent is packaged only once and then sent to all neighbors in the packaging group, which exponentially improves the packaging efficiency.¶
Before the group packaging feature was supported, each route to be sent had to be packaged separately for each peer. Group packaging enables unified packaging and separate sending, that is, each route to be sent is packaged only once and then sent to all peers in the packaging group, which exponentially improves the efficiency of packaging and sending. In scenarios with a large number of neighbors and a large amount of routes, as shown in Figure 3, group packaging greatly improves the performance of BGP packaging and sending.¶
+---------------------------------------------------------------+ | +----------+ AS | | | RR1 | | | +-+-+-+-+--+ | | | | | | IBGP | | | | | +---------------------------------------------+ | | | | +------------------------------+ | | | | +---------------+ | | | | | | | | | | +-+------+ +--+-----+ +--+-----+ +--+-----+ | | | Client | ... | Client | ... | Client | ... | Client | | | +-+------+ +--+-----+ +--+-----+ +--+-----+ | | | | | | | | | +---------------+ | | | | | | +------------------------------+ | | | | | | +---------------------------------------------+ | | | | | | IBGP | | +-+-+-+-+--+ | | | RR2 | | | +----------+ | +---------------------------------------------------------------+
Figure 3 is a typical network diagram of reflectors with multiple clients, RR routers need to send routes to a large number of BGP client peers, and most of the client peers have the same configuration. Suppose an RR reflector has 100 clients and 100,000 routes to be reflected. If each neighbor is packaged separately, when the reflector RR sends routes to 100 clients, the total number of times all routes are packaged is 100,000 x 100. The group packaging technology reduces this process to 100,000 x 1, which is equivalent to a 100-fold improvement in performance.¶
The comparison of packet assembly by peer and peer packaging group is shown in Figure 4. It can be clearly seen that assembling packets by peer packaging group can greatly improve packet performance.¶
+----------------------------------------------------------------+ | Encapsulation by Peer | Encapsulation by Peer Packaging Group | +----------------------------------------------------------------+ | N Peers | N Peers of Peer Packaging Group | +----------------------------------------------------------------+ | N Times Packaging | 1 Times Packaging | +----------------------------------------------------------------+ | N Times Sending | N Times Sending | +----------------------------------------------------------------+
Currently, network devices have implemented BGP send batching technology. This allows messages with the same attributes to be batched together and sent to multiple neighbors simultaneously.¶
However, BMP Route Monitoring message is handled on a per-peer basis, which means they cannot take advantage of the BGP send batching functionality.¶
From the perspective of BMP Route Monitoring packet format, if BMP Route Monitoring packets are also assembled according to peers, they need to be assembled once for each peer, and the assembly performance will also be limited. Moreover, the BMP Route Monitoring message information may be different depending on the peer, and needs to be sent to the monitoring server multiple times, which increases the network overhead.¶
In multiple BMP Route Monitoring messages, if the prefixes are the same but the Per-Peer Header and BGP PATH attributes are different, according to the way of packet assembly by peer packaging group, the different BGP attributes can be extracted, combined with the corresponding Per-Peer Header, and reuse of the same BGP PATH attributes, which together form a aggregated BMP Route Monitoring message. See section 4 for detailed format of the aggregated BMP Route Monitoring message. As shown in Figure 5 and Figure 6, compared with the original multiple BMP Route Monitoring message, the aggregated BMP Route Monitoring message exponentially reduces the Common Header and the same BGP PATH attributes and prefixes, and is only assembled once, which not only effectively the network overhead is reduced and the assembly performance is further improved.¶
+--------+ +---------------------+ +-----------------+ | |----->|Packaging for Peer 1 |----->|Sending to Server| | | +---------------------+ +-----------------+ | | ~ |Prefixes| ~ | | +---------------------+ +-----------------+ | |----->|Packaging for Peer N |----->|Sending to Server| +--------+ +---------------------+ +-----------------+
+--------+ +-------------------------+ +-----------------+ |Prefixes|--->|Packaging for Multi-Peers|--->|Sending to Server| +--------+ +-------------------------+ +-----------------+
This document defines this aggregated BMP Route Monitoring message, and its format has been defined based on the Multi-Peer Header message format defined in Section 4 of [I-D.liu-grow-bmp-multiple-peer-header], see Section 4 for its detailed format.¶
This section adds a new BMP Multi-Peer Message Type for BMP Route Monitoring, which is populated in the Multi-Peer Message Type field of the BMP Common Multi-Peer Header defined in Section 5 of [I-D.liu-grow-bmp-multiple-peer-header].¶
Multi-Peer Message Type = TBD: Aggregated Route Monitoring, Recommended value 0.¶
This section defines two aggregated BMP Route Monitoring message formats, according to the Route Monitoring message format of [RFC7854] and [I-D.ietf-grow-bmp-tlv].¶
Figure 7 shows one aggregated Route Monitoring message format, based on the Route Monitoring message format of [RFC7854], including Common Header, Common Multi-Peer Header, and BGP Update PDU. Among them, the Common Header is the same as that defined in Section 4.1 of [RFC7854], the BGP Update PDU contains the same BGP PATH attribute and prefixes, and the Common Multi-Peer Header will be defined below.¶
+--------------------------------------------------+
| Common Header (Type = Multi-Peer Header) |
+--------------------------------------------------+
| Common Multi-Peer Header |
~ ~
+--------------------------------------------------+
| BGP Update PDU |
|+----------------------------+ |
|| BGP PATH Attributes | |
|+----------------------------+ |
|| Prefixes | |
|+----------------------------+ |
+--------------------------------------------------+
Figure 8 shows another aggregated Route Monitoring message format, based on the BMPv4 Route Monitoring message format of [I-D.ietf-grow-bmp-tlv], including Common Header, Common Multi-Peer Header, BGP Message TLV including BGP Update PDU, and optional TLVs. Among them, the Common Header and the Common Multi-Peer Header are the same as the above, the BGP Update PDU of the BGP Message TLV also contains the same BGP PATH attribute and prefixes, and the Optional TLVs can be shared TLVs or TLVs specific to a particular prefix.¶
+--------------------------------------------------+
| Common Header (Type = Multi-Peer Header) |
+--------------------------------------------------+
| Common Multi-Peer Header |
~ ~
+--------------------------------------------------+
| BGP Message TLV |
++------------------------------------------+ |
|| BGP Update PDU | |
||+----------------------------+ | |
||| BGP PATH Attributes | | |
||+----------------------------+ | |
||| Prefixes | | |
||+----------------------------+ | |
|+------------------------------------------+ |
+--------------------------------------------------+
| Optional TLVs |
+--------------------------------------------------+
As shown in Figure 9, the format of the Common Multi-Peer Header in the aggregated Route Monitoring message is defined, which contains multiple Wild Card Per-Peer Headers defined in Section 5 of [I-D.liu-grow-bmp-multiple-peer-header]. The Multi-Peer Message Length is the length of Common Multi-Peer Header in bytes (including all Wild Card Per-Peer Headers, Per-Peer Information Lengths, and Per-Peer BGP PATH Attributes). Each Wild Card Per-Peer Header could be followed by the unique Per-Peer BGP PATH attribute of the corresponding peer route. If no Per-Peer BGP PATH attribute follows, the corresponding Per-Peer Information length MUST be set to 0.¶
+--------------------------------------------------------+
| Multi-Peer Message Type (TBD) (1 byte) |
+--------------------------------------------------------+
| Multi-Peer Message Length (2 byte) |
+--------------------------------------------------------+
| Wild Card Per-Peer Header 1 |
+--------------------------------------------------------+
| Per-Peer Information Length 1 (2 bytes) |
+--------------------------------------------------------+
| Per-Peer BGP PATH Attributes 1 |
+--------------------------------------------------------+
~ ~
+--------------------------------------------------------+
| Wild Card Per-Peer Header N |
+--------------------------------------------------------+
| Per-Peer Information Length N (2 bytes) |
+--------------------------------------------------------+
| Per-Peer BGP PATH Attributes N |
+--------------------------------------------------------+
In the Common Multi-Peer Header format, the Wild Card Per-Peer Header format is the same as that defined in [I-D.liu-grow-bmp-multiple-peer-header].¶
Per-Peer Information Length (2 bytes) indicates the length of the Per-Peer BGP PATH Attributes in the Common Multi-Peer Header.¶
The format of the Per-Peer BGP PATH Attribute in the Common Multi- Peer Header is the same as BGP PATH Attribute in the BGP Update PDU. The Per-Peer BGP PATH Attribute field does not need to be filled in when the route attributes corresponding to each peer are exactly the same. Only when the routing attributes corresponding to the peers are different to a certain extent, different parts of the routing attributes need to be filled in Per-Peer BGP PATH Attribute field according to the peers. The same parts of the routing attributes are filled in the BGP Update PDU. If the routing attributes corresponding to each peer are completely different, the routing attributes (BGP PATH Attribute) in the BGP Update PDU will be empty.¶
If the Per-Peer BGP PATH Attribute in Common Multi-Peer Header exists, it means that the BGP PATH Attribute of the BGP Update PDU needs to be integrated with the Per-Peer BGP PATH Attribute of Common Multi-Peer Header to obtain the complete BGP PATH Attribute of BGP UPDATE PDU sent or received to the corresponding peer. Otherwise, the BGP PATH Attribute of the BGP UPDATE PDU is the complete BGP PATH Attribute.¶
The Per-Peer BGP PATH Attributes in Common Multi-Peer Header is optional. A Common Multi-Peer Header may just include the Per-Peer Header(s) without any PATH attributes following them.¶
Multiple aggregated Route Monitoring messages can be used for same or different set of BGP Update prefixes.¶
Sender MUST send either the Route Monitoring Message (type 0) as defined in [RFC7854] OR the aggregated Route Monitoring Message and MUST NOT combine the two message formats in the updates.¶
Aggregated Route Monitoring messages can be used for any of the RIB- views (Adj-RIB-In pre, Adj-RIB-In post, Adj-RIB-Out pre, Adj-RIB-Out post & Local-RIB) when batching is feasible.¶
Batching across RIB-views with aggregated Route Monitoring Message can be used leveraging methods defined in [I-D.patki-grow-bmp-common-updates].¶
This Section lists some examples to show how to use the aggregated Route Monitoring Message based on the Route Monitoring Message format of [RFC7854].¶
For the BMPv4 aggregated Route Monitoring Message, its usage is similar to these examples.¶
As shown in Figure 10, there are three peers with no per-peer BGP PATH attributes along with all PATH attributes from BGP Update PDU being shared.¶
+-----------------------------------------------+
| Multi-Peer Message Type (TBD) |
+-----------------------------------------------+
| Multi-Peer Message Length |
+-----------------------------------------------+
| Wild Card Per-Peer Header 1 |
+-----------------------------------------------+
| Per-Peer Information Length 1 (0) |
+-----------------------------------------------+
| Wild Card Per-Peer Header 2 |
+-----------------------------------------------+
| Per-Peer Information Length 2 (0) |
+-----------------------------------------------+
| Wild Card Per-Peer Header 3 |
+-----------------------------------------------+
| Per-Peer Information Length 3 (0) |
+-----------------------------------------------+
| BGP Update PDU |
|+----------------------------+ |
|| BGP PATH Attributes | |
|+----------------------------+ |
|| Prefixes | |
|+----------------------------+ |
+-----------------------------------------------+
As shown in Figure 11, there are three peers with one of the peers having different PATH attribute along with shared PATH attributes in the BGP Update PDU.¶
+-----------------------------------------------+
| Multi-Peer Message Type (TBD) |
+-----------------------------------------------+
| Multi-Peer Message Length |
+-----------------------------------------------+
| Wild Card Per-Peer Header 1 |
+-----------------------------------------------+
| Per-Peer Information Length 1 |
+-----------------------------------------------+
| Per-Peer BGP PATH Attributes 1 |
+-----------------------------------------------+
| Wild Card Per-Peer Header 2 |
+-----------------------------------------------+
| Per-Peer Information Length 2 (0) |
+-----------------------------------------------+
| Wild Card Per-Peer Header 3 |
+-----------------------------------------------+
| Per-Peer Information Length 3 (0) |
+-----------------------------------------------+
| BGP Update PDU |
|+----------------------------+ |
|| BGP PATH Attributes | |
|+----------------------------+ |
|| Prefixes | |
|+----------------------------+ |
+-----------------------------------------------+
As shown in Figure 12, there are three peers with all the peers having different PATH attributes along with shared PATH attributes in BGP Update PDU.¶
+-----------------------------------------------+
| Multi-Peer Message Type (TBD) |
+-----------------------------------------------+
| Multi-Peer Message Length |
+-----------------------------------------------+
| Wild Card Per-Peer Header 1 |
+-----------------------------------------------+
| Per-Peer Information Length 1 |
+-----------------------------------------------+
| Per-Peer BGP PATH Attributes 1 |
+-----------------------------------------------+
| Wild Card Per-Peer Header 2 |
+-----------------------------------------------+
| Per-Peer Information Length 2 |
+-----------------------------------------------+
| Per-Peer BGP PATH Attributes 2 |
+-----------------------------------------------+
| Wild Card Per-Peer Header 3 |
+-----------------------------------------------+
| Per-Peer Information Length 3 |
+-----------------------------------------------+
| Per-Peer BGP PATH Attributes 3 |
+-----------------------------------------------+
| BGP Update PDU |
|+----------------------------+ |
|| BGP PATH Attributes | |
|+----------------------------+ |
|| Prefixes | |
|+----------------------------+ |
+-----------------------------------------------+
As shown in Figure 13, there are three peers with all the peers having different PATH attributes along with no shared PATH attributes in BGP Update PDU.¶
+-----------------------------------------------+
| Multi-Peer Message Type (TBD) |
+-----------------------------------------------+
| Multi-Peer Message Length |
+-----------------------------------------------+
| Wild Card Per-Peer Header 1 |
+-----------------------------------------------+
| Per-Peer Information Length 1 |
+-----------------------------------------------+
| Per-Peer BGP PATH Attributes 1 |
+-----------------------------------------------+
| Wild Card Per-Peer Header 2 |
+-----------------------------------------------+
| Per-Peer Information Length 2 |
+-----------------------------------------------+
| Per-Peer BGP PATH Attributes 2 |
+-----------------------------------------------+
| Wild Card Per-Peer Header 3 |
+-----------------------------------------------+
| Per-Peer Information Length 3 |
+-----------------------------------------------+
| Per-Peer BGP PATH Attributes 3 |
+-----------------------------------------------+
| BGP Update PDU |
|+----------------------------+ |
|| Prefixes | |
|+----------------------------+ |
+-----------------------------------------------+
The considerations in Section 11 of [RFC7854] apply to this document. It is also believed that this document does not add any additional security considerations.¶
This document requests IANA to define one new "BMP Multi-Peer Message Type" registry to the BMP parameters name space (https://www.iana.org/assignments/bmp-parameters/bmp-parameters.xhtml).¶
The new "BMP Multi-Peer Message Type" registry is seeded with the following new type (Section 3):¶
Type = TBD: Aggregated Route Monitoring¶