Skip to main content

4. Protocol Specification

The PIM-SM specification is divided into several parts:

  • Section 4.1 details the protocol state stored.
  • Section 4.2 specifies the data packet forwarding rules.
  • Section 4.3 specifies the Designated Router (DR) election and the rules for sending and processing Hello messages.
  • Section 4.4 specifies the PIM Register generation and processing rules.
  • Section 4.5 specifies the PIM Join/Prune generation and processing rules.
  • Section 4.6 specifies the PIM Assert generation and processing rules.
  • Section 4.7 specifies the RP discovery mechanisms.
  • Section 4.8 describes PIM-SSM, the subset of PIM-SM required to support Source-Specific Multicast.
  • Section 4.9 specifies the PIM packet formats.
  • Section 4.10 provides a summary of PIM-SM timers, and Section 4.11 provides their default values.

4.1. PIM Protocol State

This section specifies all the protocol state that a PIM implementation should maintain in order to function correctly. We term this state the Tree Information Base (TIB), as it holds the state of all the multicast distribution trees at this router.

Although we specify precisely the state to be kept, this does not mean that an implementation of PIM-SM needs to hold the state in this form. This is actually an abstract state definition, needed to specify precisely the router's behavior.

We divide the TIB state into three sections:

(*,G) state: State that maintains the RP tree for G.

(S,G) state: State that maintains a source-specific tree for source S and group G.

(S,G,rpt) state: State that maintains source-specific information about source S on the RP tree for G.

note

For detailed technical specifications of each subsection (4.1.1 through 4.11), please refer to the official RFC 7761 document.