Hosts utilise IGMP to join a multicast group, this works perfectly fine when the router that the membership join request gets sent to also hosts the subnet that sends out the multicast traffic flows.
If the receiving host and the multicast source router are several hops apart, routing between the routers will need to be accounted for. There are many different multicast routing protocols, but Cisco supports PIM – Protocol Independent Multicast.
PIM is a multicast routing protocol that routes multicast traffic between network networks. PIM can utilise any of the traditional unicast routing protocols to identify a path the destination hosts and the source device.