Email This Page

MBGP: Multiprotocol BGP

The multiprotocol BGP (MBGP) feature adds capabilities to BGP to enable multicast routing policy throughout the Internet and to connect multicast topologies within and between BGP autonomous systems. In other words, multiprotocol BGP (MBGP) is an enhanced BGP that carries IP multicast routes. BGP carries two sets of routes, one set for unicast routing and one set for multicast routing. The routes associated with multicast routing are used by the Protocol Independent Multicast (PIM) to build data distribution trees.

Multiprotocol BGP (MBGP) is useful when a link is required to dedicate to multicast traffic, perhaps to limit which resources are used for which traffic, or all multicast traffic exchanged at one network access point (NAP) is required. Multiprotocol BGP allows a unicast routing topology different from a multicast routing topology.

The only three pieces of information carried by BGP-4 that are IPv4 specific are (a) the NEXT_HOP attribute (expressed as an IPv4 address), (b) AGGREGATOR (contains an IPv4 address), and (c) NLRI(expressed as IPv4 address prefixes). Any BGP speaker, including MBGP speakers, has to have an IPv4 address, which will be used, among other things, in the AGGREGATOR attribute. To enable BGP-4 to support routing for multiple Network Layer protocols the only two things that have to be added to BGP-4 are (a) the ability to associate a particular Network Layer protocol with the next hop information, and (b) the ability to associated a particular Network Layer protocol with NLRI.

There are two attributes defined in the MBGP regarding NLRI: 1) MP_REACH_NLRI for the purpose of advertising a feasible route to a peer, permitting a route to advertise the network layer address of the router to be used as the next hop and allowing a given router to report some or all of the subnetwork points of attachment (SNPAs), and 2) MP_UNREACH_NLRI for the purpose of withdrawing multiple unfeasible routes from service.

To provide backward compatibility, as well as to simplify introduction of the multiprotocol capabilities into BGP-4, two new attributes, Multiprotocol Reachable NLRI (MP_REACH_NLRI), and Multiprotocol Unreachable NLRI (MP_UNREACH_NLRI) are used in the MBGP. MP_REACH_NLRI is used to carry the set of reachable destinations together with the next hop information to be used for forwarding to these destinations. MP_UNREACH_NLRI is used to carry the set of unreachable destinations. Both of these attributes are optional and non- transitive. This way a BGP speaker that doesn't support the multiprotocol capabilities will just ignore the information carried in these attributes, and will not pass it to other BGP speakers.



Protocol Structure - MBGP: Multiprotocol BGPMultiprotocol Reachable NLRI - MP_REACH_NLRI (Type Code 14): The attribute is encoded as follows:

2 Bytes

1Byte

1 Byte

Address Family Identifier

Subsequent Address Family Identifier

Length of Next Hop Network Address

Network Address of Next Hop (variable)

Number of SNPAs

Length of first SNPA

First SNPA (variable)

Length of second SNPA (1 Byte)

Second SNPA (variable)

Length of Last SNPA (1 Byte)

Last SNPA (variable)

Network Layer Reachability Information (variable)

  • Address Family Identifier - carries the identity of the Network Layer protocol associated with the Network Address that follows.
  • Subsequent Address Family Identifier - provides additional information about the type of the Network Layer Reachability Information carried in the attribute.
  • Length of Next Hop Network Address - the value expresses the length of the "Network Address of Next Hop" field as measured in octets.
  • Network Address of Next Hop - A variable length field that contains the Network Address of the next router on the path to the destination system.
  • Number of SNPAs - contains the number of distinct SNPAs to be listed in the following fields. The value 0 may be used to indicate that no SNPAs are listed in this attribute.
  •  Length of Nth SNPA - the value expresses the length of the "Nth SNPA of Next Hop" field as measured in semi-octets
  • Nth SNPA of Next Hop - contains an SNPA of the router whose Network Address is contained in the "Network Address of Next Hop" field.
  • Network Layer Reachability Information - lists NLRI for the feasible routes that are being advertised in this attribute.

Multiprotocol Unreachable NLRI - MP_UNREACH_NLRI: The attribute is encoded as follows:


Address Family Identifier (2 Bytes)

Subsequent Address Family Identifier (1 Byte)  

Withdrawn Routes (variable)

  • Address Family Identifier - carries the identity of the Network Layer protocol associated with the NLRI that follows.
  • Subsequent Address Family Identifier - provides additional information about the type of the Network Layer Reachability Information carried in the attribute.
  • Withdrawn Routes - lists NLRI for the routes that are being withdrawn from service.


Related Protocols
IP , TCP , BGP

Sponsor Source

MBGP is defined by IETF (www.ietf.org ) RFC 2858



Reference
http://www.javvin.com/protocol/rfc2858.pdf : Multiprotocol Extensions for BGP-4