2013/11/28

WB1 8.15 Auto-RP and RP/MA Placement

8.15 Auto-RP and RP/MA Placement

• Make R1 another MA that preempts the existing MA on R5.
• Provide a solution for R3 to hear Auto-RP discovery messages from R1.

---------------------------------------------------------

As discussed previously, PIM by default treats NBMA interfaces as if they were
broadcast-capable. That is, it assumes that all neighbors on a WAN cloud can
hear multicast packets sent by any neighbor. However, in non-fully meshed
topologies such as hub-and-spoke networks, this is not the case. When a spoke
sends multicast traffic over the NBMA segment, only the hub can hear it. The hub
will not forward multicast back to other spokes, based on the split-horizon rule.

This problem could be solved using PIM NBMA mode, but this only works with
PIM Sparse mode
.

Now the real issue is that the Auto-RP uses dense mode for RP information
dissemination, and thus the PIM NBMA solution will not work. If a candidate RP
or a Mapping Agent is placed behind the spoke node, then RP information could
be lost. Imagine that an MA is located behind the spoke node. Then any Auto-RP
discovery messages it sends will only reach the hub node, but not the other
spokes. This could also be the case, if the RP and the MA are both placed
behind NBMA spokes. Therefore, when designing your multicast network, take
care and place the MA behind the hub. RPs could still be located at spokes, as
long as announcements can reach the hub.


Other solutions include the use of sub-interfaces on the hub router or creating
tunnels between the hub and the spokes. Both solutions effectively break the
split-horizon rule, by receiving and sending multicast packets on different
interfaces. Notice that you will need static mroutes if you don’t run an IGP across
the tunnel interfaces.

---------------------------------------------------------

R1:
interface Loopback0
ip pim sparse-mode
!
ip pim send-rp-discovery loopback 0 scope 10
!
interface tunnel 1
tunnel source Loopback0
tunnel destination 150.1.3.3
ip unnumbered Loopback0
ip pim sparse-mode
!
router ospf 1
passive-interface Tunnel1

R3:
interface tunnel 1
tunnel source Loopback0
tunnel destination 150.1.1.1
ip unnumbered Loopback0
ip pim sparse-mode
!
! Static mroute is needed to allow R3 hearing
! Auto-RP discoveries from R1.
!
ip mroute 150.1.1.1 255.255.255.255 Tunnel 1
!
router ospf 1
passive-interface Tunnel1

R5:
no ip pim send-rp-discovery loopback 0 scope 10

---------------------------------------------------------

First, make sure that R1 is fully functional as an MA. It should receive
announcements from both SW2 and SW4. Check the multicast routing table for
the group 224.0.1.39 for this and ensure that the RPF neighbor is R5.


Rack1R1#show ip mroute 224.0.1.39
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
       L - Local, P - Pruned, R - RP-bit set, F - Register flag,
       T - SPT-bit set, J - Join SPT, M - MSDP created entry,
       X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
       U - URD, I - Received Source Specific Host Report,
       Z - Multicast Tunnel, z - MDT-data group sender,
       Y - Joined MDT-data group, y - Sending to MDT-data group
Outgoing interface flags: H - Hardware switched, A - Assert winner
 Timers: Uptime/Expires
 Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 224.0.1.39), 00:02:52/stopped, RP 0.0.0.0, flags: DCL
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    Tunnel1, Forward/Sparse, 00:02:52/00:00:00
    Loopback0, Forward/Sparse, 00:02:52/00:00:00
    Tunnel0, Forward/Sparse-Dense, 00:02:52/00:00:00
    Serial0/0.1, Forward/Sparse, 00:02:52/00:00:00
    FastEthernet0/0, Forward/Sparse, 00:02:52/00:00:00

(150.1.8.8, 224.0.1.39), 00:02:33/00:00:35, flags: LT
  Incoming interface: Serial0/0.1, RPF nbr 155.1.0.5
  Outgoing interface list:
    FastEthernet0/0, Forward/Sparse, 00:02:33/00:00:00, A
    Tunnel0, Forward/Sparse-Dense, 00:02:33/00:00:00
    Loopback0, Forward/Sparse, 00:02:33/00:00:00
    Tunnel1, Forward/Sparse, 00:02:33/00:00:00

(150.1.10.10, 224.0.1.39), 00:02:49/00:00:16, flags: LT
  Incoming interface: Serial0/0.1, RPF nbr 155.1.0.5
  Outgoing interface list:
    FastEthernet0/0, Forward/Sparse, 00:02:52/00:00:00, A
    Tunnel0, Forward/Sparse-Dense, 00:02:52/00:00:00
    Loopback0, Forward/Sparse, 00:02:52/00:00:00
    Tunnel1, Forward/Sparse, 00:02:52/00:00:00

Rack1R1#


Check that the Auto-RP cache is populated with the announcements from SW2 and SW4.

Rack1R1#show ip pim rp mapping
PIM Group-to-RP Mappings
This system is an RP-mapping agent (Loopback0)

Group(s) 224.0.0.0/5
  RP 150.1.8.8 (?), v2v1
    Info source: 150.1.8.8 (?), elected via Auto-RP
         Uptime: 00:00:46, expires: 00:02:12
Group(s) 224.0.0.0/4
  RP 150.1.10.10 (?), v2v1
    Info source: 150.1.10.10 (?), elected via Auto-RP
         Uptime: 00:01:02, expires: 00:01:55
  RP 150.1.8.8 (?), v2v1
    Info source: 150.1.8.8 (?), via Auto-RP
         Uptime: 00:00:46, expires: 00:02:11
Group(s) (-)224.110.110.110/32
  RP 150.1.10.10 (?), v2v1
    Info source: 150.1.10.10 (?), elected via Auto-RP
         Uptime: 00:01:03, expires: 00:01:55
  RP 150.1.8.8 (?), v2v1
    Info source: 150.1.8.8 (?), via Auto-RP
         Uptime: 00:00:46, expires: 00:02:11
Group(s) 232.0.0.0/5
  RP 150.1.10.10 (?), v2v1
    Info source: 150.1.10.10 (?), elected via Auto-RP
         Uptime: 00:01:03, expires: 00:01:54
Rack1R1#


Next, verify that R5 can hear Auto-RP discoveries from R1. Notice that the OIL
for the group 224.0.1.40 does not contain the Frame-Relay interface, and thus
R3 cannot hear the discovery messages relayed via R5.


Rack1R5#show ip mroute 224.0.1.40
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
       L - Local, P - Pruned, R - RP-bit set, F - Register flag,
       T - SPT-bit set, J - Join SPT, M - MSDP created entry,
       X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
       U - URD, I - Received Source Specific Host Report,
       Z - Multicast Tunnel, z - MDT-data group sender,
       Y - Joined MDT-data group, y - Sending to MDT-data group
Outgoing interface flags: H - Hardware switched, A - Assert winner
 Timers: Uptime/Expires
 Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 224.0.1.40), 00:05:57/stopped, RP 0.0.0.0, flags: DCL
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    Loopback0, Forward/Sparse-Dense, 00:05:57/00:00:00
    Serial0/0, Forward/Sparse, 00:05:57/00:00:00
    FastEthernet0/0, Forward/Sparse, 00:05:57/00:00:00
    Serial0/1, Forward/Sparse, 00:05:57/00:00:00

(150.1.1.1, 224.0.1.40), 00:05:19/00:01:02, flags: LT
  Incoming interface: Serial0/0, RPF nbr 155.1.0.1
  Outgoing interface list:
    FastEthernet0/0, Forward/Sparse, 00:05:19/00:00:00
    Loopback0, Forward/Sparse-Dense, 00:05:19/00:00:00
    Serial0/1, Forward/Sparse, 00:05:19/00:00:00

Rack1R5#

Check the Auto-RP information on R3 after you have implemented the tunnel
workaround. Notice that this workaround will not work without the static mroute.
The tunnel is used only to deliver the Auto-RP discoveries to R3, while regular
multicast will take paths across the physical links.


Rack1R3#show ip pim rp mapping
PIM Group-to-RP Mappings

Group(s) 224.0.0.0/5
  RP 150.1.8.8 (?), v2v1
    Info source: 150.1.1.1 (?), elected via Auto-RP
         Uptime: 00:00:02, expires: 00:02:54
Group(s) 224.0.0.0/4
  RP 150.1.10.10 (?), v2v1
    Info source: 150.1.1.1 (?), elected via Auto-RP
         Uptime: 00:00:18, expires: 00:02:56
Group(s) (-)224.110.110.110/32
  RP 150.1.10.10 (?), v2v1
    Info source: 150.1.1.1 (?), elected via Auto-RP
         Uptime: 00:00:18, expires: 00:02:56
Group(s) 232.0.0.0/5
  RP 150.1.10.10 (?), v2v1
    Info source: 150.1.1.1 (?), elected via Auto-RP
         Uptime: 00:00:18, expires: 00:02:58
Rack1R3#


Rack1R3#show ip mroute 224.0.1.40
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,
       L - Local, P - Pruned, R - RP-bit set, F - Register flag,
       T - SPT-bit set, J - Join SPT, M - MSDP created entry,
       X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,
       U - URD, I - Received Source Specific Host Report,
       Z - Multicast Tunnel, z - MDT-data group sender,
       Y - Joined MDT-data group, y - Sending to MDT-data group
Outgoing interface flags: H - Hardware switched, A - Assert winner
 Timers: Uptime/Expires
 Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 224.0.1.40), 00:00:41/stopped, RP 0.0.0.0, flags: DCL
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    Tunnel1, Forward/Sparse, 00:00:41/00:00:00
    Serial1/0.1, Forward/Sparse, 00:00:41/00:00:00

(150.1.1.1, 224.0.1.40), 00:00:37/00:02:41, flags: LT
  Incoming interface: Tunnel1, RPF nbr 150.1.1.1, Mroute
  Outgoing interface list:
    Serial1/0.1, Forward/Sparse, 00:00:39/00:00:00

Rack1R3#

沒有留言:

張貼留言