cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
9171
Views
5
Helpful
0
Comments
ashirkar
Level 7
Level 7

 

Introduction:

Bootstrap router (BSR) is protocol available with PIMv2. The protocol performs the same function as Cisco’s proprietary Auto-RP, i.e. distribute the RP(Rendezvous point) information. Both protocols use the concept of candidate RP, i.e. the router that announces messages to advertise the multicast group for which it is the RP. Unlike Auto-RP, BSR does not use any dense-mode groups to flood candidate RP and RP mapping information. Instead, the information is flooded using PIM messages, on hop-by-hop basis. The flooding procedure utilizes reverse path forwarding (RPF).when a router receives a BSR message, it applies RPF check, based on the source IP address in the packet. If the RPF check succeeds, the message is flooded out of all PIM-enabled interfaces until all routers in the domain learn the information. Auto-RP is not supported for IPv6 Multicast. Auto-RP is a Cisco proprietary mechanism.

In a PIM-SM network, every router must somehow need to learn IP address of an RP.
There are three ways to learn the IP address of an RP in IPv6.

1) Static RP(For more information on configuration of IPv6 Multicast using static RP , refer to IPv6 Multicast-Routing:configuration Example)
2) BSR
3) Embedded RP
This document describes the configuration of IPv6 multicasting using BSR.

Static RP configuration becomes suboptimal under the following conditions:
1) When an enterprise has a large no of PIM-SM routers and the enterprise want to implement many different RP's for different groups, it becomes time consuming to statically configure the IP address of RPs.
2) When an RP fails or need to be changed because of new RP is being installed, it becomes extremely difficult in statically configured PIM-SM domain to switch over to an alternative RP without taking considerable downtime.
In IPv6 multicast environment BSR dynamically provides the IP address of an RP to PIM-SM routers.

Prerequisite:

Understanding of IPv4 Multicasting

BSR Configuration Overview:

BSR configuration involves only 2 steps:

Step: 1: Configuration of RP
The command to configure a router to announce itself as a RP via the BSR protocol is:

ipv6 pim bsr candidate rp  X:X:X:X::X (IP name or address of Candidate RP)

Step: 2: Configuration of BSR (also called Mapping Agent)

ipv6 pim bsr candidate bsr X:X:X:X::X (IP name or address of BSR)

You can also configure a single router as a RP and a BSR.

Note: There is slight difference between IPv4 PIM and IPv6 PIM source registration process.When Source starts multicasting, the DR on the segment is responsible for registering with the RP. This can be perform by sending message to the RP and encapsulate original data packet inside them. As soon as IPv6 multicast router learns the RP address it create tunnel interface connecting router to the RP.PIM tunnels are automatically created. These are used for initial register messages, and then the receiver switch to optimal path.

Configuration Example:

In this topology host H1(FC00::2) is connected to R3, want to receive multicast stream generated By Server S1(FC01::2) connected to R2.All the IPv6 address are configured as shown in the below figure to provide underlying unicast routing for multicast traffic. All routers are running Ospv3 protocol in Area0 to flood Subnets across the network .Multicast routing is configured on all router using "ipv6 multicast-routing" in global configuration mode that will automatically turn on PIM-SM on all interfaces.

Topology Diagram:

IPv6mul.jpg

 

First, you need to configure router R4 as BSR candidates. The router R4 (BSR) will listen for RP's announcement, and let the rest of the network know which device is the RP. All of this is done directly through PIM messages on multicast address (224.0.0.13).The loopback of R4 is configuring the IP address (3001::1) of BSR, as you know loopback will never go down until you Shutdown the interface.
 

R4(config)#ipv6 pim bsr candidate bsr 3001::1                 

 

You can also configure multiple BSR candidates for redundancy.

Verify your BSR configuration and information distribution with the following command:
 

R4#show ipv6 pim bsr election
PIMv2 BSR information
BSR Election Information
   Scope Range List: ff00::/8
      BSR Address: ::
      Uptime: 00:00:00, BSR Priority: 0, Hash mask length: 0
      RPF: ::,
      BS Timer: 00:00:02
   This system is candidate BSR
       Candidate BSR address: 3001::1, priority: 0, hash mask length: 126

 

Then you will need to configure candidate RP (R1).The loopback of R4 is configuring the IP address (3001::2) of RP. Notice below, that the PIM Tunnels are built, indicating that R1 has been mapped as the RP by the BSR, and R1 learned about the mapping via PIM.

R1(config)#ipv6 pim bsr candidate rp 3001::2

R1(config)#^Z

R1#

*Mar  1 00:45:34.331: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel1, changed state to up

*Mar  1 00:45:34.359: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel2, changed state to up

*Mar  1 00:45:34.375: %SYS-5-CONFIG_I: Configured from console by console

R1#sh ipv6 pim tunnel

Tunnel0*

  Type  : PIM Encap

  RP    : Embedded RP Tunnel

  Source: 2001:11::1

Tunnel1*

  Type  : PIM Encap

  RP    : 3001::2*

  Source: 3001::2

Tunnel2*

  Type  : PIM Decap

  RP    : 3001::2*

  Source:  -

R1#sh ipv6 pim bsr candidate-rp

PIMv2 C-RP information

    Candidate RP: 3001::2 SM

      All Learnt Scoped Zones, Priority 192, Holdtime 150

      Advertisement interval 60 seconds

      Next advertisement in 00:00:08

 

Now also verify RP information learned on R4 using following command:

R4#sh ipv6 pim bsr rp-cache

PIMv2 BSR C-RP Cache

BSR Candidate RP Cache

Group(s) FF00::/8, RP count 1

  RP 3001::2 SM

    Priority 192, Holdtime 150

    Uptime: 00:06:50, expires: 00:01:40

 

Also verify RP information distributed on the remaining routers in the topology i.e. on R2 and R3 (neither a BSR nor a RP candidate).

 

R3#sh ipv6 pim range-list | beg BSR

BSR SM RP: 3001::2 Exp: 00:01:33 Learnt from : 3001::1

  FF00::/8 Up: 00:11:58

 

R2#sh ipv6 pim range-list | beg BSR

BSR SM RP: 3001::2 Exp: 00:02:06 Learnt from : 3001::1

  FF00::/8 Up: 00:12:25

 

To test this, configuring R3 join a group in the FF08::/8 range, and then simulate a multicast server, by pinging that group from H1.The RP of R1 will be used to start the shared tree, and then a shortest path tree will be built between the listener (R3) and the content server (R2). The replies will be unicast from R3 to R2.

 

R2(config)#int lo 0

R2(config-if)#ipv6 mld join-group ff04::3

R2(config-if)#exit

 

R3#sh ipv6 pim group-map ff04::3

IP PIM Group Mapping Table

(* indicates group mappings being used)

FF00::/8*

    SM, RP: 3001::2

    RPF: Fa0/0,FE80::C203:39FF:FEAC:1

    Info source: BSR From: 3001::1(00:02:26), Priority: 192

    Uptime: 00:33:10, Groups: 0

 

R3#sh ipv6 mroute

Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group,

       C - Connected, L - Local, I - Received Source Specific Host Report,

       P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set,

       J - Join SPT

Timers: Uptime/Expires

Interface state: Interface, State

(FC00::2, FF04::3), 00:00:06/00:03:23, flags: SFT

  Incoming interface: FastEthernet1/0

  RPF nbr: FC00::2

  Immediate Outgoing interface list:

    FastEthernet0/1, Forward, 00:00:06/00:03:23

R3#sh ipv6 pim topology

IP PIM Multicast Topology Table

Entry state: (*/S,G)[RPT/SPT] Protocol Uptime Info

Entry flags: KAT - Keep Alive Timer, AA - Assume Alive, PA - Probe Alive,

    RA - Really Alive, LH - Last Hop, DSS - Don't Signal Sources,

    RR - Register Received, SR - Sending Registers, E - MSDP External,

    DCC - Don't Check Connected

Interface state: Name, Uptime, Fwd, Info

Interface flags: LI - Local Interest, LD - Local Disinterest,

    II - Internal Interest, ID - Internal Disinterest,

    LH - Last Hop, AS - Assert, AB - Admin Boundary

(FC00::2,FF04::3)

SM SPT UP: 00:00:30 JP: Join(never) Flags: KAT(00:02:59) RA

RPF: FastEthernet1/0,FC00::2*

  FastEthernet0/1    00:00:30  fwd Join(00:02:59)

 

You can also verify  SPT and RPT on RP(R1) in multicast routing table.

R1#sh ipv6 mroute

Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group,

       C - Connected, L - Local, I - Received Source Specific Host Report,

       P - Pruned, R - RP-bit set, F - Register flag, T - SPT-bit set,

       J - Join SPT

Timers: Uptime/Expires

Interface state: Interface, State

 

(*, FF04::3), 00:03:51/00:02:35, RP 3001::2, flags: S

  Incoming interface: Tunnel2

  RPF nbr: 3001::2

  Immediate Outgoing interface list:

    FastEthernet0/0, Forward, 00:03:51/00:02:35

 

(FC00::2, FF04::3), 00:00:14/00:03:16, RP 3001::2, flags: SPR

  Incoming interface: Tunnel2

  RPF nbr: 3001::2

  Immediate Outgoing interface list:

    FastEthernet0/0, Null, 00:00:14/00:03:15

 

(FC00::2, FF04::3), 00:00:15/00:03:16, flags: S

  Incoming interface: FastEthernet0/1

  RPF nbr: FE80::C200:EFF:FEB8:0

  Inherited Outgoing interface list:

    FastEthernet0/0, Forward, 00:03:51/00:02:35

 

Related Information:

IPv6 BSR

Configuring a BSR

Embedding the Rendezvous Point (RP) Address in an IPv6 Multicast Address

 

                                   

Base Initial configuration:

 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Innovations in Cisco Full Stack Observability - A new webinar from Cisco