This blog covers the CCIEv5 section entitled: "2.2.b Implement and troubleshoot IPv4 protocol independent multicast" as well as "2.2.c Implement and troubleshoot multicast source discovery protocol."
It covers a larger network of routers connected with the different varieties of PIM. Cisco's implementation of PIM supports the following modes:
PIM Dense Mode: This is closer to the original method of PIM, where all network locations are assumed to be part of the multicast. At a specific interval (3 minutes by default), traffic is flooded into a network segment, and the switch/router has to opt-out, and then the timer starts again. If you're watching this on a network monitor it looks like highly regular traffic spikes when multicast traffic is flooded.
PIM Sparse Mode: This version of PIM supports SSM (Source Specific Multicast) by default, and automatically routes traffic down the least costly path, directly from source to destination, instead of routing everything through the RP. It also assumes that hosts don't want to receive traffic, and clients must continually update their membership in the multicast group, or they are excluded.
PIM Sparse-Dense Mode: A mode that originated from migration scenarios from sparse to dense mode. Supports both, and upgrades to sparse mode when an RP is configured or located with auto-RP.
PIM Bidirectional Mode: This version of PIM is a mixture of sparse and dense mode oriented towards a large number of sources and destinations. It's targeted towards organizations that see great numbers of both, so many that the stability of their routers might be affected if using vanilla sparse mode.
RPs are elected automatically via Cisco's proprietary Auto-RP. This is supported on most Cisco routers, but if you're working with other types of routers or a mixed group, you can use the open source variety called BSR.
Auto RP allows PIM members to dynamically discover candidate RP nodes, instead of having them be statically configured. It allows for a more flexible network in the event of a failure or change, though not nearly as fast as an IGP - default 3 minutes failover time. Basically, there are two roles: RP Candidates, which are usually near the network or traffic flow core, and mapping nodes, which listen for RP candidates and communicate to PIM member nodes which ones to use. This allows for a distribution of tasks and processing, although both consume relatively low processing power.
BSR (Boot Strap Router): Very similar to AutoRP, except easier to configure and supported on most types of routers as an open standard. Maybe not quite as feature-riffic, but fits most use cases.
Here's my topology:
You can download it here: http://1drv.ms/1lc5jdN