Traditional multicast routing mechanisms (e.g. DVMRP and MOSPF) were in intended for use within regions where groups are densely populated or bandwidth is universally plentiful. When groups, and senders to these groups, are distributed sparsely across a wide area, these "dense mode" schemes do not perform efficiently. PIM is made of two protocols, one for each type of group distribution. PIM Sparse Mode PIM-SM provides efficient routing for a group distributed sparsely across a wide area. PIM Dense Mode PIM-DM provides multicast routing for a densely populated group.
Multicasting Protocols require two different functions in order to create the source based trees or group based trees:
PIM is protocol independent because it depends on existing unicast routes to calculate the Reverse Path Forwarding. In contrast, DVMRP passes this set of routes within the protocol.
An overview of PIM can be found in the document Protocol Independent Multicast (PIM): Motivation and Architecture. The detailed protocol specification is also available as Protocol Independent Multicast (PIM): Protocol Specification.
PIM-DM and PIM-SM share some common processing of PIM packets received. This common processing is configured in the PIM protocol statement. The PIM-SM protocol statement configures the PIM-SM information for components on this router or PIM-SM neighbors. The PIM-DM protocol statement configures the PIM Dense Mode protocol.
pim (yes | no | on | off) { traceoptions trace_options ; hello-interval sec ; hello-holdtime sec ; sparse "name" { interface interface-list { ( enable | disable ) bsr-priority pri crp (on | off) }; }; dense "name" { interface interface-list { ( enable | disable ) hello-interval sec hello-holdtime sec }; }; };
The pim statement enables or disables the PIM protocol. If the pim statement is not specified, PIM will not run. All interfaces that will run PIM must be multicast capable and specified within either the sparse or dense statements, in order to determine the mode and group with which the interface will be associated. Multicast capable interfaces are identified by the IFF_MULTICAST interface flag.
traceoptions trace_options Specifies the tracing options for PIM.
(See Trace Statements for generic traceoptions and the PIM specific tracing options below).
Packet tracing options (which may be modified with detail, send or recv):
Last updated November 29, 1997
gated@gated.merit.edu