Add Book to My BookshelfPurchase This Book Online

Chapter 5 - Distance Vector Multicast Routing Protocol

Cisco Multicast Routing & Switching
William R. Parkhurst
  Copyright © 1999 The McGraw-Hill Companies

Reverse Path Forwarding
The situation becomes very interesting if the destination address is a multicast or Class D IP address. This is the first general difference between unicast and multicast—there may be multiple receivers with the same address, possibly on different networks, as shown in Figure 5-2. Each host that wants to receive multicast traffic for group 225.65.10.154 will use IGMP to inform the local router using a Join message. When the multicast packet reaches router A, the router determines that the packet is multicast because the address is Class D. The IGMP table is consulted and router A sees that at least one host on a directly attached network (172.16.2.0) has joined the group so the packet is forwarded onto that network. If downstream hosts are to receive the multicast traffic, then router A must forward the traffic on the serial interface and so must router B. If there are no downstream receivers, then it does not make sense for router A to forward the traffic to B because this is a waste of valuable bandwidth.
Figure 5-2: Routing of a multicast packet from source to receivers
Therefore, a multicast router needs a mechanism to determine on which interfaces to forward multicast traffic. One method is to simply forward the multicast traffic out all interfaces except for the interface on which the traffic was received. What could possibly go wrong? The network in Figure 5-3 illustrates a problem that can occur if multicast traffic is simply forwarded out all interfaces except for the one on which the traffic was received:
Figure 5-3: Formation of a multicast routing loop
  1. The sender sends a multicast packet to router A.
  2. Router A forwards the traffic to routers B and C.
  3. Routers B and C forward the traffic to router D and to the attached receivers.
  4. Router D forwards the traffic to the receiver and then back to routers B and C.
The multicast traffic then circulates in the network until the TTL field in the IP packet goes to zero. Oops! This is probably not a good idea. A technique that is employed with multicast routing protocols to prevent this situation from occurring is called Reverse Path Forwarding (RPF). RPF requires that a unicast routing table exist in each multicast router. When a router receives a multicast packet, the router checks to see if the packet was received on the interface that is on the shortest path back to the source. In other words, the interface that is on the shortest path back to the source is the interface the router would use if forwarding a unicast packet to the source. This is the other major general difference between unicast and multicast routing protocols.
A multicast routing protocol examines both the source and destination IP addresses when a forwarding decision is being made. The destination address, along with the IGMP table, is used to determine if any hosts require the traffic on a particular interface. The RPF technique is used to see if the multicast packet was received on the interface that would be used to send a unicast packet to the source. If the multicast packet was received on the interface that would be used to forward a packet to the source, then the multicast packet is forwarded out the appropriate interfaces. If the multicast packet was not received on the interface that would be used to send a packet to the source, then the multicast packet is discarded. Figure 5-4 shows the flow of multicast packets when RPF is employed.
Figure 5-4: Using Reverse Path Forwarding (RPF) to eliminate multicast routing loops
The router interface that is the RPF back to the source is indicated for each router. Router D has two equal paths back to the multicast source, one through router B and one through router C. We will assume that the interface back to router B is chosen as the RPF interface. Soon we will see how a particular interface is chosen as the RPF interface.
With RPF, the sequence of events in Figure 5-4 is as follows:
  1. The multicast source sends a packet to router A.
  2. Router A determines that the multicast packet was received on the RPF interface; thus, router A forwards the packet out all interfaces except for the one on which the packet was received.
  3. Routers B and C receive the multicast packet on their RPF interfaces, so the packet is forwarded out all interfaces except for the one on which the packet was received.
  4. Router D receives the multicast packet on two interfaces but only accepts the packet from the RPF interface. Router D then forwards the packet out the interface to router C and the interface to the attached receiver. However, router C rejects the multicast packet from router D because it did not arrive on the RPF interface.

 


 
Books24x7.com, Inc © 2000 –  Feedback