rfc-5060

Protocol Independent Multicast MIB

R. Sivaramu, J. Lingard, D. McWalter, B. Joshi, A. Kessler
date2008-01 streamIETF areartg wgpim statusPROPOSED STANDARD pages90 canonicalhttps://www.rfc-editor.org/rfc/rfc5060 doi10.17487/RFC5060 errataview
This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects used for managing the Protocol Independent Multicast (PIM) protocols: PIM-SM (Sparse Mode), BIDIR-PIM (Bidirectional), and PIM-DM (Dense Mode). This document is part of work in progress to obsolete RFC 2934, and is to be preferred where the two documents overlap. This document does not obsolete RFC 2934. [STANDARDS-TRACK]

Extracted elements (25)

design-rationale §5

Notification period objects (pimNeighborLossNotificationPeriod, pimRPMappingNotificationPeriod, pimInterfaceElectionNotificationPeriod) default to 65535, representing an infinite interval so that no notifications are sent by default. Operators must explicitly configure a finite period to enable notifications, preventing accidental management-plane flooding on deployment.

multicast, snmp

design-rationale §1

The MIB is designed to be IP-version independent, using InetAddressType/InetAddress pairs throughout instead of IPv4-only types. This is a major departure from RFC 2934, which only supported IPv4, enabling the same MIB module to manage both IPv4 and IPv6 PIM instances on dual-stack routers.

multicast

interoperability-note §1

This document is part of work in progress to obsolete RFC 2934 but does not yet do so. Where the two documents overlap, this MIB module (RFC 5060) is to be preferred. RFC 2934 defined an experimental MIB; this document's module does not support PIM-SM v1 and does not depend on the IPv4 Multicast Routing MIB (RFC 2932).

multicast, snmp

normative-requirement §5 SHOULD

Implementations SHOULD enforce a lower bound on pimInterfacePropagationDelay to account for scheduling and processing delays within the local router. The object represents the expected propagation delay inserted into the LAN Prune Delay Hello option.

multicast

protocol-element §5

Global scalar objects pimKeepalivePeriod (default 210s) and pimRegisterSuppressionTime (default 60s) configure device-wide PIM-SM timer values corresponding to Keepalive_Period and Register_Suppression_Time from RFC 4601 section 4.11. Their storage type is governed by pimDeviceConfigStorageType (default nonVolatile).

multicast

protocol-element §5

pimInterfaceElectionWinCount counts how many times this device has been elected DR or DF on any interface. Notably, the counter is not incremented for elections until after the first periodic Hello is sent on the interface, to avoid inflating counts during initial neighbor discovery.

multicast

protocol-element §5

The pimBidirDFElectionTable contains one row per RP per interface for BIDIR-PIM Designated Forwarder election state. The robustness parameter pimInterfaceDFElectionRobustness (default 3) specifies how many lost DF-Election messages are needed to declare an election failure.

multicast

protocol-element §5

The PimGroupMappingOriginType textual convention identifies the mechanism by which a PIM group-to-RP mapping was learned: fixed(1), configRp(2), configSsm(3), bsr(4), autoRP(5), embedded(6), other(7). It references RFC 3569, RFC 3956, and RFC 5059.

multicast

protocol-element §5

The pimGroupMappingTable contains one row per multicast group prefix mapping, recording the PIM mode, RP address, origin mechanism, and precedence value for each mapping. Only the entry with the lowest pimGroupMappingPrecedence value is the active mapping for a given group.

multicast

protocol-element §5

The pimInterfaceTable is indexed by both ifIndex and InetVersion, providing one row per IP version per PIM-enabled interface. This dual-index design allows a single physical interface to run PIM for IPv4 and IPv6 simultaneously as logically separate instances.

multicast

protocol-element §5

The PimMode textual convention enumerates the PIM operating modes: none(1), ssm(2), asm(3), bidir(4), dm(5), other(6). It is used throughout the MIB to indicate how a multicast group or interface is operating.

multicast

protocol-element §5

The pimNbrSecAddressTable lists secondary IP addresses advertised by each PIM neighbor, indexed by interface, address type, primary address, and secondary address. It corresponds to the secondary address option in PIM Hello messages (RFC 4601 section 4.3.4).

multicast

protocol-element §5

The pimNeighborTable lists discovered PIM neighbors, including their Generation ID, DR Priority, LAN Prune Delay parameters (Propagation_Delay, Override_Interval, T-bit), BIDIR-PIM capability, and State Refresh capability. It is indexed by interface, address type, and neighbor address.

multicast

protocol-element §5

The pimSGRptTable and pimSGRptITable expose (S,G,rpt) override state used in PIM-SM when a receiver has joined the RP tree but wants to suppress data from a specific source. These tables track upstream prune state and per-interface join/prune state for the (S,G,rpt) entries.

multicast

protocol-element §5

The pimSGTable and pimSGITable expose per-source (S,G) state including SPT bit, Keepalive Timer, DR Register state machine, upstream join state, and PIM-DM-specific originator and prune-limit state. The table is indexed by address type, group address, and source address.

multicast

protocol-element §5

The pimStarGTable and pimStarGITable expose per-group (*,G) PIM-SM/BIDIR state: upstream join state, upstream join timer, RPF interface, RPF next hop, and the route (address, prefix length, metric preference, metric) used to reach the RP. The interface-specific table additionally tracks assert state and join expiry.

multicast

protocol-element §5

The pimStaticRPTable allows configuration of static RP-to-group-prefix mappings, and the pimAnycastRPSetTable allows configuration of anycast-RP sets (RFC 4610), listing each RP peer address within the set. Both tables feed into pimGroupMappingTable with configRp origin.

multicast

registry §7

The PIM-STD-MIB module is assigned OID mib-2 157 under the IANA-managed mib-2 subtree. This is the authoritative SNMP management module for PIM-SM, BIDIR-PIM, and PIM-DM routers.

registry, snmp, multicast

security-consideration §5

Setting pimInterfaceStubInterface to TRUE causes all PIM packets to be silently dropped on that interface, protecting the router from forged PIM messages on untrusted host-facing segments while still allowing IGMP/MLD operation. Changing this value while the interface is operational causes PIM to be disabled and re-enabled.

security, multicast

security-consideration §6

Several MIB objects have read-write or read-create access and can alter PIM router behavior (timer values, RP configuration, interface mode). Unauthorized write access could disrupt multicast forwarding across the network. The Security Considerations section recommends using SNMPv3 with authentication and privacy to protect these objects.

security, snmp, multicast

security-consideration §5

The minimum notification period for pimInvalidRegisterNotificationPeriod and pimInvalidJoinPruneNotificationPeriod is set to 10 seconds (not zero) to provide resilience against propagation of denial-of-service attacks from the data and control planes to the network management plane. Default is 65535 (infinite, no notifications sent).

security, multicast

state-machine §5

The downstream (*,G,I) join/prune state machine has three states: noInfo(1), join(2), prunePending(3). The prunePending state is entered when a Prune is received and the router waits to see if a downstream router will override it before acting.

multicast

state-machine §5

The DR Register state machine (pimSGDRRegisterState) has states noInfo(1), join(2), joinPending(3), prune(4). In prune state, pimSGDRRegisterStopTimer counts down to Null-Register transmission; in joinPending, it counts down to resuming data encapsulation. This state machine is only relevant when pimSGPimMode is asm.

multicast

state-machine §5

The per-interface (*,G) assert state machine has states noInfo(1), iAmAssertWinner(2), iAmAssertLoser(3). When iAmAssertLoser, the MIB records the winner's address and route metric/preference. For BIDIR-PIM groups, this object must always be noInfo.

multicast

state-machine §5

The PIM-DM upstream prune state machine (pimSGUpstreamPruneState) has states forwarding(1), ackpending(2), pruned(3). The PIM-DM originator state machine (pimSGOriginatorState) has states notOriginator(1) and originator(2), with pimSGSourceActiveTimer tracking remaining time in originator state.

multicast