IPv6 multicast provides support for intradomain multicast routing using PIM-SM. PIM-SM uses unicast routing to provide reverse-path information for multicast tree building, but it is not dependent on any particular unicast routing protocol.
PIM-SM is used in a multicast network when relatively few switches
are involved in each multicast and these switches do not forward
multicast packets for a group, unless there is an explicit request
for the traffic. PIM-SM distributes information about active
sources by forwarding data packets on the shared tree. PIM-SM
initially uses shared trees, which requires the use of an RP.
Requests are accomplished via PIM joins, which are sent hop by hop
toward the root node of the tree. The root node of a tree in PIM-SM
is the RP in the case of a shared tree or the first-hop switch that
is directly connected to the multicast source in the case of a
shortest path tree (SPT). The RP keeps track of multicast groups
and the hosts that send multicast packets are registered with the
RP by that host's first-hop switch.
As a PIM join travels up the tree, switches along the path set up
multicast forwarding state so that the requested multicast traffic
will be forwarded back down the tree. When multicast traffic is no
longer needed, a switch sends a PIM prune up the tree toward the
root node to prune (or remove) the unnecessary traffic. As this PIM
prune travels hop by hop up the tree, each switch updates its
forwarding state appropriately. Ultimately, the forwarding state
associated with a multicast group or source is removed.
A multicast data sender sends data destined for a multicast group.
The designated switch (DR) of the sender takes those data packets,
unicast-encapsulates them, and sends them directly to the RP. The
RP receives these encapsulated data packets, de-encapsulates them,
and forwards them onto the shared tree. The packets then follow the
(*, G) multicast tree state in the switches on the RP tree, being
replicated wherever the RP tree branches, and eventually reaching
all the receivers for that multicast group. The process of
encapsulating data packets to the RP is called registering, and the
encapsulation packets are called PIM register packets.