Reverse path forwarding (RPF) is an algorithm used for forwarding multicast datagrams. The rules for using RPF are as follows:
• If a router receives a datagram on an interface that it uses to send unicast packets to the source, the packet has arrived on the RPF interface.
• If the packet arrives on the RPF interface, a router forwards the packet via the interfaces that are present in the outgoing interface list of a multicast routing table entry.
• If the packet does not arrive on the RPF interface, the packet is silently discarded. This provides loop avoidance.
Because PIM uses both source trees and shared trees to forward datagrams, the RPF check is performed differently for each. If a PIM router has a source tree state, it performs the RPF check from the source IP address of the multicast packet. If a PIM router has a shared tree state (and no explicit source tree state), it performs the RPF check on the RP's address (which is known when members join the group).
Figure 13-3 illustrates a typical arrangement. Autonomous systems 100 and 200 peer at a NAP. Two separate Layer 2 switching infrastructures exist: one optimized for unicast and one optimized for multicast.
The routers exchange multicast routes via MBGP on the multicast infrastructure. The same set of routes also may be offered on the unicast infrastructure; however, the multicast RPF lookup prefers the routes learned via MBGP over unicast BGP. As a result, multicast traffic flows across the multicast switching infrastructure.
MBGP is a negotiated BGP capability. In general, two configuration steps are required for BGP:
• Add the nlri unicast multicast keywords to the main BGP configuration line for the neighbor:
• neighbor x.x.x.x remote-as Y nlri unicast multicast
Modify incoming and outgoing policy to account for Multicast NLRI. This is accomplished using the match nlri multicast and set nlri multicast route-map subclauses:
route-map incoming-policy permit 20
match nlri multicast match ip address X
route-map outgoing-policy 20
match ip address X
set nlri multicast
Was this article helpful?