Protocol-Independent Multicast

Example of a multicast network architecture

Protocol-Independent Multicast (PIM) is a family of multicast routing protocols for Internet Protocol (IP) networks that provide one-to-many and many-to-many distribution of data over a LAN, WAN or the Internet. It is termed protocol-independent because PIM does not include its own topology discovery mechanism, but instead uses routing information supplied by other routing protocols. PIM is not dependent on a specific unicast routing protocol; it can make use of any unicast routing protocol in use on the network. PIM does not build its own routing tables. PIM uses the unicast routing table for reverse-path forwarding.[1]: 56–57 

There are four variants of PIM:

  • PIM Sparse Mode (PIM-SM) explicitly builds unidirectional shared trees rooted at a rendezvous point (RP) per group, and optionally creates shortest-path trees per source. PIM-SM generally scales fairly well for wide-area usage.[2][3]
  • PIM Dense Mode (PIM-DM) implicitly builds shortest-path trees by flooding multicast traffic domain wide, and then pruning back branches of the tree where no receivers are present. PIM-DM is straightforward to implement but generally has poor scaling properties. The first multicast routing protocol, DVMRP used dense-mode multicast routing.[4] See RFC 3973.
  • Bidirectional PIM (Bidir-PIM) explicitly builds shared bi-directional trees. It never builds a shortest path tree, so may have longer end-to-end delays than PIM-SM, but scales well because it needs no source-specific state.[1]: 70–73  See RFC 5015.
  • PIM Source-Specific Multicast (PIM-SSM) builds trees that are rooted in just one source, offering a more secure and scalable model for a limited number of applications (mostly broadcasting of content). In SSM, an IP datagram is transmitted by a source S to an SSM destination address G, and receivers can receive this datagram by subscribing to channel (S,G). See informational RFC 3569.

PIM-SM is commonly used in IPTV systems for routing multicast streams between VLANs, Subnets or local area networks.[5]

  1. ^ a b IP Multicast Routing Configuration Guide, Cisco, retrieved 2017-05-27
  2. ^ "PIM-SM Multicast Routing Protocol". Microsoft. 9 December 2009. Retrieved 2014-03-26.
  3. ^ B. Fenner; M. Handley; H. Holbrook; I. Kouvelas (August 2006). Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol Specification (Revised). Network Working Group. doi:10.17487/RFC4601. RFC 4601. Obsolete. Obsoleted by RFC 7761. Obsoletes RFC 2362. Updated by RFC 5059, 5796 and 6226.
  4. ^ "Frequently Asked Questions (FAQ) File for Multicasting". Multicast Tech. Archived from the original on 2011-06-14.
  5. ^ "Supplement on guidelines on deployment of IP multicast for IPTV content delivery". ITU-T. Retrieved 2014-03-23.