PREV NEXT INDEX

Avici Systems Inc.


Multicast BGP

Introduction

Multicast BGP-4 (MBGP) is a set of extensions to BGP-4 allowing internet multicast routing policy both within and between BGP autonomous systems. BGP-4 can only carry routing information for IPv4. Multiprotocol BGP-4 (MPBGP) defines extensions enabling BGP-4 to carry routing information for multiple network layer protocols such as MBGP. The Avici router supports MPBGP per RFC2858.

MPBGP extensions provide support for MBGP through capability negotiation using the capability parameter of the OPEN message. During session establishment, the Avici router negotiates its capabilities with the remote BGP peer as defined in RFC2842. MPBGP is one of these negotiated capabilities via the optional capabilities parameter. The MBGP capability of the speaker is determined by the Subsequent Address Family Identifier (SAFI) field contained in the optional capabilities parameter TYPE 2. The possible SAFI values are:

When using MBGP on the Avici router, BGP carries two sets of routes: one for unicast routing and one for multicast routing. PIM (Protocol Independent Multicast) uses the routes associated with multicast routing to build the shared tree topologies necessary to route the multicast traffic.

The MBGP implementation allows for either the dedication of a link to unicast or multicast traffic or the sharing of a link with both unicast and multicast traffic. MBGP provides greater control of network resources by allowing for the configuration of unicast routing topology that is different from the multicast routing topology.

If the BGP peer does not support capability negotiation, it responds with an error code and the BGP speaker attempts to reestablish the session without the optional capabilities parameter. MBGP is not supported with this BGP peer.

If the BGP does support capability negotiation, and there is no match between the capabilities of the BGP speaker and the BGP peer, the BGP speaker sends out a notification so that adjacent peers will be aware that no match exists.

Any matches in capability are negotiated and adjacent peers become aware of each other's capabilities through the normal exchange of messages.

IPriori supports the IPv4 address family. The IPv4 address family determines whether the command will affect the unicast routing table or multicast routing table. You select the IPv4 address family by entering the appropriate IPv4 address family mode: unicast or multicast.

MBGP configuration can be broadly divided into the following tasks:

Selecting the IPv4 Address Family

BGP keeps separate routing tables for each route type. The IPv4 address family determines which routing table is affected by the command entered. There are two IPv4 address families: unicast and multicast. Whether a BGP command affects unicast or multicast services is determined by the IPv4 address family command mode.

When you first enter router configuration mode using the router bgp command, all commands entered default to unicast services.

To configure the router for MBGP, commands are entered in the multicast IPv4 address family command mode. Commands entered in the multicast IPv4 address family command mode affect multicast services and are applied to the multicast routing table. To enter the multicast IPv4 address family command mode, use the address-family ipv4 multicast command in router configuration command mode.

To affect unicast services, commands are entered in the unicast IPv4 address family command mode. To enter the unicast IPv4 address family command mode, use the address-family ipv4 unicast command in router configuration command mode.

The following commands are available in address-family ipv4 command modes:

The network, redistribute, and aggregate-address commands are entered in router configuration mode for unicast only networks.

Enabling MBGP Peers and Peer-Groups

The neighbor activate command enables/disables MBGP peers and peer-groups. You must enable both ends of the link for MBGP using the procedures that follow.

To enable an MBGP peer or peer-group for both unicast and multicast capabilities, do the following:

  1. Configure a BGP peer or peer-group as usual, by entering routing configuration mode using the router bgp command and enable the BGP peer or peer-group using the neighbor remote-as command.

  2. Enter the CLI multicast IPv4 address family command mode using the address-family ipv4 multicast command.

  3. Enable the MBGP peer or peer-group using the neighbor activate command specifying the peer or peer-group to enable.

The following example enables peer 10.5.12.106 for both unicast and multicast capabilities:

router(config)#router bgp 100

router(config-router)#neighbor 10.5.12.106 remote-as 100

router(config-router)#address-family ipv4 multicast

router(config-router-af)#neighbor 10.5.12.106 activate

router(config-router-af)#end

router#

To enable an MBGP peer or peer-group for multicast capabilities only, do the following:

  1. Configure a BGP peer or peer-group as usual, by entering routing configuration mode using the router bgp command and enable the BGP peer or peer-group using the neighbor command.

  2. Enter the CLI multicast IPv4 address family command mode using the address-family ipv4 multicast command.

  3. Enable the MBGP peer or peer-group using the neighbor activate command specifying the peer or peer-group to enable.

  4. Return to router configuration mode using the end command.

  5. Enter the CLI unicast IPv4 address family command mode using the address-family ipv4 unicast command.

  6. Disable the unicast capability of the MBGP peer or peer-group using the no neighbor activate command specifying the peer or peer-group to disable

The following example enables MBGP multicast capability only for peer 10.5.12.106:

router(config)#router bgp 100

router(config-router)#neighbor 10.5.12.106 remote-as 100

router(config-router)#address-family ipv4 multicast

router(config-router-af)#neighbor 10.5.12.106 activate

router(config-router-af)#exit

router(config-router)#address-family ipv4 unicast

router(config-router-af)#no neighbor 10.5.12.106 activate

router(config-router-af)#end

router#

MBGP Support for Prefix and Filter Lists

IPriori has been enhanced to support prefix and filter lists on a per address family basis. By entering the neighbor prefix-list and neighbor filter-list commands in the desired family address mode (address-family ipv4 unicast for unicast, and address-family ipv4 multicast for multicast) prefix-lists and filter-lists can be configured for both unicast and multicast neighbors. The neighbor command for both prefix-lists and filter-lists are backwards compatible with the unicast commands available in router configuration mode. Entering the commands in router configuration mode automatically configures a unicast list. In all other respects, the neighbor commands for these lists have not changed.

Advertising Networks

Advertising local network routes into MBGP is required for the reception of MBGP source packets by receivers outside of the source domain. There are two ways of advertising local networks into MBGP:

Using the Network Command

If you wish to advertise a network as unicast only, enter the network command in router configuration mode. If you wish to advertise a network as either unicast or multicast in a network where either multicast or both domains are present, enter the network command in the IPv4 address family command mode using the appropriate unicast or multicast modifier. Using the unicast modifier to the IPv4 address family command mode will apply the network command to the unicast domain. Using the multicast modifier to the IPv4 address family command mode will apply the network command to the multicast domain. Using the appropriate domain modifier you could apply separate route maps to the same network that is using different domains.

The following example sets unique route maps for the same networks unicast and multicast domains:
router(config)#router bgp 100

router(config-router)#address-family ipv4 multicast

router(config-router-af)#network 56.24.0.0 mask 255.255.0.0 route-map set-multi-metric

router(config-router-af)#exit

router(config-router)#address-family ipv4 unicast

router(config-router-af)#network 56.24.0.0 mask 255.255.0.0 route-map set-uni-metric

router(config-router-af)#end

router#

Using the Redistribute Command

Static, OSPF, IS-IS and Direct routes can be redistributed into MBGP.

If you wish to redistribute routes as unicast only, enter the redistribute command in router configuration mode. If you wish to redistribute routes as either unicast or multicast where either multicast or both domains are present, enter the redistribute command in the IPv4 address family command mode using the appropriate unicast or multicast modifier.

Using the unicast modifier to the IPv4 address family command mode will apply the redistribute command to unicast routes. Redistributed routes are advertised in the NLRI field of the regular update message.

Using the multicast modifier to the IPv4 address family command mode will apply the redistribute command to multicast routes. Redistributed routes are advertised in the Multi-protocol reachable field of the capabilities negotiation OPEN message.

Using the appropriate domain modifier you could apply separate route maps to the redistribution of routes to different domains.

The following example sets unique route maps for the redistribution of static IP routes to unicast and multicast domains:
router(config)#router bgp 100

router(config-router)#address-family ipv4 multicast

router(config-router-af)#redistribute static route-map set-multi-asp

router(config-router-af)#exit

router(config-router)#address-family ipv4 unicast

router(config-router-af)#redistribute static route-map set-uni-asp

router(config-router-af)#end

router#

Aggregating MBGP Routes

Aggregation is a means of minimizing the size of the routing table by combining routes with similar characteristics so that a single route is advertised. Separate policies can be applied to aggregate addresses when advertising to unicast and multicast routes.

If you wish to aggregate unicast only routes, enter the aggregate-address command in router configuration command mode. If you wish to aggregate routes that are either multicast only or both unicast and multicast, enter the aggregate-address command in the IPv4 address family command mode using the appropriate unicast or multicast modifier.

Using the unicast modifier to the IPv4 address family command mode will apply the aggregate-address command to unicast routes. Using the multicast modifier to the IPv4 address family command mode will apply the aggregate-address command to the multicast routes.

The following example aggregates three network addresses into a single aggregate address for both unicast and multicast routes:
router(config)#router bgp 100

router(config-router)#address-family ipv4 multicast

router(config-router-af)#network 4.19.5.0 mask 255.255.255.0

router(config-router-af)#network 4.19.6.0 mask 255.255.255.0

router(config-router-af)#network 4.19.7.0 mask 255.255.255.0

router(config-router-af)#aggregate-address 4.19.0.0 255.255.0.0

router(config-router-af)#exit

router(config-router)#address-family ipv4 unicast

router(config-router-af)#network 4.19.5.0 mask 255.255.255.0

router(config-router-af)#network 4.19.6.0 mask 255.255.255.0

router(config-router-af)#network 4.19.7.0 mask 255.255.255.0

router(config-router-af)#aggregate-address 4.0.0.0 255.0.0.0

router(config-router-af)#end

router#


PREV NEXT INDEX

Copyright © 2004 Avici Systems Inc.
Avici® and TSR® is a registered trademark of Avici Systems Inc.
IPriori™, Composite Links™, SSR™, QSR, and NSR® are trademarks of Avici Systems Inc.

   Source File Name: MBGP.fm
    HTML File Name: MBGP.html
    Last Updated: 12/19/04 at 16:12:03

Please email suggestions and comments to: doc@avici.com