Chapter 9: Bootstrap Router (BSR) Protocol
In this chapter of IPv4/6 Multicast Operation and Troubleshooting, the processes and the functionality of the Bootstrap Router (BSR) protocol are examined in great depth. Once the operational characteristics of this important protocol are detailed completely, the focus becomes that of troubleshooting. This includes the careful examination of symptoms, a fault isolation methodology, and the implementation of repairs for the Bootstrap Routing (BSR) protocol. The chapter begins with a thorough review of BSR, and then quickly launches in to an exhaustive analysis of the “art” of troubleshooting this multicast support protocol. This important chapter concludes with sample troubleshooting scenarios, reference materials for the most important show and debug commands, and exciting challenges that allow readers to practice implementing the troubleshooting skills they have obtained.BSR Technology Review
Bootstrap router (BSR) was created as an open standard solution meant to address many of the shortcomings in the Cisco proprietary AutoRP technology. The Protocol Independent Multicast Sparse Mode (PIM-SM) version 2 specification introduced BSR.Note: Many texts refer to BSR as simply PIM-SM version 2.
While BSR addresses many issues with AutoRP, it operates in a very similar manner when examined from a high level. There are router(s) that act as candidate-Rendezvous Points (RPs) and router(s) that act similar to the Mapping Agent (MA) found in AutoRP. In BSR terminology, the equivalent to the Mapping Agent is the Bootstrap Router itself.
Note: AutoRP is detailed in Chapter 8: AutoRP.
Figure 9-1 demonstrates a sample BSR topology.
A major design improvement over Cisco’s AutoRP is the fact that BSR requires no dense mode operation whatsoever. Rendezvous Point (RP) information is within BSR messages, which are carried inside of Protocol Independent Multicast (PIM) messages themselves. These PIM messages are link-local multicast messages. When a router receives a BSR message containing RP information, the router applies the Reverse Path Forwarding (RPF) check and then floods the message out all of the PIM-enabled interfaces. Remember, the link-local multicast address used for PIM messages is 224.0.0.13.
Since the PIM messages that carry the BSR information are link-local in scope, notice that there is no Time to Live (TTL) scoping that can be used with BSR.
Note: BSR and AutoRP cannot interoperate directly with each other.
Obviously, a key element to the BSR process is the device or devices that want to serve as the Rendezvous Point for multicast groups in the Sparse Mode domain. To configure a candidate-RP in BSR, use the following command:
ip pim [vrf vrf-name] rp-candidate interface-type interface-number [bidir] [group-list access-list] [interval seconds] [priority value]
Where:
- vrf – configures the router to advertise itself as the candidate-RP to the Bootstrap Router for the Virtual Routing and Forwarding (VRF) instance specified for the vrf-name argument
- interface-type interface-number – the interface bound to the IP address to serve as the candidate-RP IP address; for availability purposes, consider the use of a loopback interface; this interface needs to be PIM enabled
- bidir - optional – indicates that the multicast groups specified by the access-list argument are to operate in PIM bidirectional mode; PIM bidirectional mode is covered in Chapter 6: Bidirectional PIM
- group-list - optional – specifies the prefixes that are advertised in association with the RP address; note that unlike AutoRP, this list cannot contain DENY entries
- interval - optional – specifies the candidate-RP advertisement interval, in seconds; the range is from 1 to 16383 with a default value of 60 seconds
- priority - optional – specifies the priority for the candidate-RP; the range is from 0 to 255; with a default priority value of 0; the BSR candidate-RP with the lowest priority value is preferred; be aware that other vendor implementations of BSR might default priority to 192 as this is the recommended default priority by the IETF
To configure the BSR router itself, use the following command:
ip pim [vrf vrf-name] bsr-candidate interface-type interface-number [hash-mask-length [priority] ]
Where:
- vrf – configures the router to advertise itself as the Bootstrap Router for the Virtual Routing and Forwarding (VRF) instance specified for the vrf-name argument
- interface-type interface-number – the interface bound to the IP address to serve as the BSR device IP address; for availability purposes, consider the use of a loopback interface; this interface needs to be PIM enabled and the IP address is sent in BSR messages as the BSR IP address
- hash-mask-length – optional – the length of the mask to be ANDed with the group address before the PIMv2 hash function; all groups with the same seed hash correspond to the same RP; the hash mask length allows one RP to be used for multiple groups; the default length is 0
- priority - priority of the candidate-BSR; the range is from 0 to 255 with a default priority of 0; the candidate-BSR with the highest priority value is preferred; RFC 5059 specifies that 64 be used as the default priority value
Step 1 - a longest match lookup is performed on the group prefix that is announced by the BSR candidate-RPs
Step 2 - if more than one candidate-RP is found by the longest match lookup, the candidate-RP with the lowest priority (configured with the ip pim rp-candidate command) is preferred
Step 3 - if more than one candidate-RP have the same priority, the BSR hash function is used to select the RP for a group; this hash function is covered in detail in the Operation and Troubleshooting BSR section of this chapter
Step 4 - if more than one candidate-RP return the same hash value derived from the BSR hash function, the candidate-RP with the highest IP address is preferred
Note: RFC 2362 does not specify the longest match lookup step, to ensure compatibility with this standard, configure the same group prefix length for redundant candidate-RPs.
Anthony Sequeira CCIE, CCSI
Twitter: @compsolv
Facebook: http://www.facebook.com/compsolv