Multi-Threaded Routing Toolkit (MRT) Routing Information Export Format with BGP Additional Path Extensions
Extracted elements (11)
MRT parsers are usually stateless and cannot infer BGP capability negotiation from context. Because RFC 7911 Additional Path support alters the NLRI encoding for withdraws and announcements, new BGP4MP/BGP4MP_ET subtypes are required to signal to a parser how to decode the NLRI.
To preserve record compaction achieved by AFI/SAFI-specific subtypes and allow multiple RIB Entries per TABLE_DUMP_V2 record, the RIB Entries field is redefined in place rather than introducing a wholly new record layout. The RIB_GENERIC_ADDPATH subtype does not redefine RIB Entries because it already encapsulates raw NLRI.
The new ADDPATH subtypes are optional extensions to RFC 6396. Existing non-additional-path subtypes and their field layouts are unchanged; implementations that do not support the new subtypes can continue to operate using the original RFC 6396 subtypes.
Five new TABLE_DUMP_V2 subtypes are defined: RIB_IPV4_UNICAST_ADDPATH (8), RIB_IPV4_MULTICAST_ADDPATH (9), RIB_IPV6_UNICAST_ADDPATH (10), RIB_IPV6_MULTICAST_ADDPATH (11), and RIB_GENERIC_ADDPATH (12). The four AFI/SAFI-specific subtypes redefine the RIB Entries field to include a Path Identifier; the generic subtype does not.
Four new BGP4MP/BGP4MP_ET subtypes are defined: BGP4MP_MESSAGE_ADDPATH (8), BGP4MP_MESSAGE_AS4_ADDPATH (9), BGP4MP_MESSAGE_LOCAL_ADDPATH (10), and BGP4MP_MESSAGE_AS4_LOCAL_ADDPATH (11). Their fields are identical to the non-additional-path equivalents in RFC 6396 Section 4.4, and the entire BGP message is encapsulated in the BGP message field.
The RIB_GENERIC_ADDPATH subtype encapsulates raw and additional-path-enabled AFI/SAFI/NLRI in the record body and raw BGP attributes in RIB Entries, identical to RFC 6396 Section 4.3.3. RIB Entries are not redefined for this subtype.
IANA has registered subtype codes 8–11 in both the 'BGP4MP Subtype Codes' and 'BGP4MP_ET Subtype Codes' registries within the MRT registry for the four new ADDPATH message subtypes defined by this document.
IANA has registered subtype codes 8–12 in the 'TABLE_DUMP_V2 Subtype Codes' registry within the MRT registry for the five new ADDPATH RIB subtypes defined by this document.
A BGP peer that enables the Additional Paths capability on a session with a public BGP collector exports not only its best paths but potentially all other paths within its network. Operators should carefully consider the implications of exposing this additional routing data to collectors.
This document does not introduce new security vulnerabilities beyond those in RFC 6396, but it permits export of more detailed routing data. Organizations storing BGP routing information in MRT format should consider the implications of recording additional path data in their environment.
The RIB Entries record for AFI/SAFI-specific ADDPATH subtypes inserts a 4-octet Path Identifier field between the 4-octet Originated Time and the 2-octet Attribute Length fields. The Peer Index (2 octets) and BGP Attributes (variable) fields are unchanged from RFC 6396.