Network Working Group B. Haberman
Request for Comments: 5186 Johns Hopkins University
Category: Informational J. Martin
Woven Systems
May 2008
Internet Group Management Protocol Version 3 (IGMPv3) / Multicast Listener Discovery Version 2 (MLDv2) and Multicast Routing Protocol Interaction
1. Introduction
The definitions of IGMPv3 [IGMP3] and MLDv2 [MLDv2] require new behavior within the multicast routing protocols. The additional source information contained in IGMPv3 and MLDv2 messages necessitates that multicast routing protocols manage and utilize the information. This document will describe how multicast routing protocols will interpret information learned from these source- filtering group management protocols.
2. Multicast Forwarding State
Existing multicast routing protocols utilize the group management database in determining if local members exist for a particular multicast group. With previous group management protocols, this database had one type of record indicating the group for which there was interest and the associated local interfaces. In the case of IGMPv3 and MLDv2, these routing protocols may now build multicast forwarding state based on the source filter information available for each multicast group that has local membership. This requires that the group management database have four record types. Only one record may exist for a given interface and a given multicast group.
Haberman & Martin Informational [Page 1]
RFC 5186 IGMPv3/MLDv2 and Multicast Protocols May 2008
1. EXCLUDE <> The EXCLUDE <> record indicates interest in all sources destined to this group address for a set of local interfaces. It is equivalent to the single record type existing in previous versions of the group management protocols.
3. DVMRP Interaction
The Distance Vector Multicast Routing Protocol (DVMRP) [DVMRP] does not incorporate any knowledge of the multicast group's senders. Therefore, DVMRP will act only on the multicast group address contained in an IGMPv3 or MLDv2 report.
Haberman & Martin Informational [Page 2]
RFC 5186 IGMPv3/MLDv2 and Multicast Protocols May 2008 4. MOSPF InteractionIn Multicast Extensions to OSPF (MOSPF) [MOSPF], the consideration of source filter information in the group management database is limited to the building of forwarding state (discussed above). This is due to the flooding of group-membership-LSAs within MOSPF.
5. PIM-DM Interaction
The PIM-DM protocol [PIMDM] interaction with a source-filtering group management protocol is important in two areas: multicast distribution tree pruning and multicast distribution tree grafting. The following sections will describe the behavior needed in PIM-DM to interoperate with IGMPv3 and MLDv2.
5.1. PIM-DM Prunes
PIM-DM prune messages are initiated when a PIM-DM router determines that there are no entities interested in the data flowing on the (S,G) forwarding state. If the multicast router is running IGMPv3 or MLDv2, this is determined by the source S being in EXCLUDE state in the source filter for the destination G, or all interest in G being terminated for an existing (S,G) forwarding entry.
5.2. PIM-DM Grafts
PIM-DM graft messages are sent in order to override an existing PIM- DM prune. In the case of IGMPv3 or MLDv2, this occurs when prune state exists for (S,G) and a state change occurs in which the source filter state for S changes to INCLUDE for the specified G.
6. PIM-SM Interaction
A PIM-SM interaction takes place when a PM-SM [PIMSM] router receives an IGMP or MLD message regarding a group address that is in the Any Source Multicast (ASM) range. This range is defined as the entire multicast address space excluding the global SSM range [SSM] and any locally defined Source Specific space.
Haberman & Martin Informational [Page 3]
RFC 5186 IGMPv3/MLDv2 and Multicast Protocols May 2008 6.1. PIM-SM Joins (ASM Behavior)PIM-SM join messages are initiated when a PIM-SM router determines that there are entities interested in a specific group or a specific source sending to the group. If this is due to an IGMPv3 or MLDv2 report with a zero-length EXCLUDE list, then the join is sent as a (*,G) join towards the RP.
6.2. PIM-SM Prunes (ASM Behavior)
PIM-SM prune messages are initiated when a PIM-SM router determines that there are no entities interested in a specific group, or a specific source sending to the group. If this is triggered by either receiving a report with an EXCLUDE or if a specific Source/Group times out, then an (S,G) prune is sent towards the upstream router. If all of the IGMPv3 or MLDv2 derived requests for a group time out, then (S,G) and (*,G) prunes are sent upstream as needed to stop all flow of traffic for that group.
7. PIM-SSM Interaction
A PIM-SSM interaction takes place when a PIM-SM router receives an IGMPv3 or MLDv2 message regarding a group address that is in the Source Specific Multicast range. This behavior is not defined in this document, but rather in [PIMSM].
8. Security Considerations
This document does not introduce any additional security issues above and beyond those already discussed in [PIMDM], [PIMSM], [IGMP3], and [MLDv2].
9. Acknowledgements
The authors would like to thank Murali Brahmadesam, Leonard Giuliano, and Hal Sandick for their feedback and suggestions.
Haberman & Martin Informational [Page 4]
RFC 5186 IGMPv3/MLDv2 and Multicast Protocols May 2008 10. Normative References[IGMP3] Cain, B., Deering, S., Kouvelas, I., Fenner, B., and A.
Haberman & Martin Informational [Page 5]
RFC 5186 IGMPv3/MLDv2 and Multicast Protocols May 2008
Full Copyright Statement