PIM-DM operation

PIM-DM operates at the router level to direct traffic for a particular multicast group along the most efficient path to the VLANs which have hosts that have joined that group. A unicast source address and a multicast group address comprise a given source/group (S/G) pair. Multicast traffic moving from a source to a multicast group address creates a flow to the area(s) of the network requiring the traffic. The flow destination is the multicast group address and not a specific host or VLAN. A single multicast flow has one source and one multicast group address (destination), but may reach many hosts in different subnets, depending on which hosts have issued joins for the same multicast group.

PIM routes the multicast traffic for a particular S/G pair on paths between the source unicast address and the VLANs where it is requested (by joins from hosts connected to those VLANs.) Physical destinations for a particular multicast group can be hosts in different VLANs or networks. Individual hosts use IGMP configured per-VLAN to send joins requesting membership in a particular multicast group. All hosts that have joined a given multicast group (defined by a multicast address) remain in that group as long as they continue to issue periodic joins.

PIM-DM interoperates with IGMP and the switch's routing protocols for the switches covered by this guide. The PIM operates independently of the routing protocol you choose to run on your switches. This means that you can use PIM-DM with RIP, OSPF, or static routes configured. PIM-DM uses a unicast routing table to find the path to the originator of the multicast traffic and sets up multicast trees for distributing multicast traffic. This routing method is known as reverse path forwarding (RPF.)

For the flow of a given multicast group, PIM-DM creates a tree structure between the source and the VLANs where hosts have joined the group as shown in the following figure. The tree structure consists of:

  • Extended branches to VLANs with hosts that currently belong to the group.

  • Pruned branches to VLANs with no hosts that belong to the group.

Example of multicast tree for a given flow

When the routing switch detects a new multicast flow, it initially floods the traffic throughout the PIM-DM domain, then it prunes the traffic on the branches (network paths) where joins have not been received from individual hosts. This creates the tree structure shown in the preceding figure. The routing switch maintains individual branches in the multicast tree as long as there is at least one host maintaining a membership in the multicast group. When all of the hosts in a particular VLAN drop out of the group, PIM-DM prunes that VLAN from the multicast tree. Similarly, if the routing switch detects a join from a host in a pruned VLAN, it adds that branch back into the tree.


Where the multicast routers in a network use one or more multinetted VLANs, there must be at least one subnet common to all routers on the VLAN. This is necessary to provide a continuous forwarding path for the multicast traffic on the VLAN. See PIM VLAN (interface) configuration context.