This section describes the packet forwarding processes used by different multicast models.
The forwarding of multicast packets and the forwarding of unicast packets are independent functions, and do not affect each other.
In the multicast model, the IP packet destination address is the multicast address. The multicast source sends information to the host groups, identified by the destination address. To send multicast packets to all receivers, a FW on the forwarding path sends multicast packets received from an incoming interface to several outgoing interfaces. The multicast model, therefore, is more complex than the unicast model.
A multicast routing table is used to guide the forwarding of multicast packets.
The Reverse Path Forwarding (RPF) mechanism ensures that the multicast routing is the shortest path tree. Most multicast protocols create multicast route entries and forward packets based on the RPF mechanism.
In the Any-Source Multicast (ASM) model, after receiving a multicast data packet, a device searches the Multicast Forward Information Base (MFIB) table for a matching entry. If there is a matching entry, the device forwards the multicast data packet based on the entry. If there is no matching entry, the forwarding plane instructs PIM to create a multicast routing table. PIM-SM builds a multicast routing table based on received Join messages, and delivers the entries in the multicast routing table to the MFIB table to guide the forwarding of multicast data.
In the Source-Specific Multicast (SSM) model, PIM-SSM builds a multicast routing table based on received Join messages, and delivers the entries in the multicast routing table to the MFIB table. After receiving a multicast data packet, a device searches the MFIB table for a matching entry. If there is a matching entry, the device forwards the multicast data packet based on the entry. If there is no matching entry, the device discards the multicast data packet.