This section provides recommendations for a variety of stakeholders in SSM deployment, including vendors, operators, and application developers. It also suggests further work that could be undertaken within the IETF.
This document recommends that the use of ASM be deprecated for interdomain multicast; thus, implicitly, it recommends that hosts and routers that support such interdomain applications fully support SSM and its associated protocols. Best current practices for deploying interdomain multicast using SSM are documented in [
RFC 8313].
The recommendation applies to the use of ASM between domains where either MSDP (IPv4) or Embedded-RP (IPv6) is used.
An interdomain use of ASM multicast in the context of this document is one where PIM-SM with RPs/MSDP/Embedded-RP is run on routers operated by two or more separate administrative entities.
The focus of this document is deprecation of interdomain ASM multicast, and while encouraging the use of SSM within domains, it leaves operators free to choose to use ASM within their own domains. A more inclusive interpretation of this recommendation is that it also extends to deprecating use of ASM in the case where PIM is operated in a single operator domain, but where user hosts or non-PIM network edge devices are under different operator control. A typical example of this case is a service provider offering IPTV (single operator domain for PIM) to subscribers operating an IGMP proxy home gateway and IGMPv3/MLDv2 hosts (computer, tablets, set-top boxes).
This document recommends that all hosts, router platforms, and security appliances used for deploying multicast support the components of IGMPv3 [
RFC 3376] and MLDv2 [
RFC 3810] necessary to support SSM (i.e., explicitly sending source-specific reports). "IPv6 Node Requirements" [
RFC 8504] states that MLDv2 must be supported in all implementations. Such support is already widespread in common host and router platforms.
Further guidance on IGMPv3 and MLDv2 is given in [
RFC 4604].
Multicast snooping is often used to limit the flooding of multicast traffic in a Layer 2 network. With snooping, an L2 switch will monitor IGMP/MLD messages and only forward multicast traffic out on host ports that have interested receivers connected. Such snooping capability should therefore support IGMPv3 and MLDv2. There is further discussion in [
RFC 4541].
The recommendation to use SSM for interdomain multicast means that applications should properly trigger the sending of IGMPv3/MLDv2 source-specific report messages. It should be noted, however, that there is a wide range of applications today that only support ASM. In many cases, this is due to application developers being unaware of the operational concerns of networks and the implications of using ASM versus SSM. This document serves to provide clear direction for application developers who might currently only consider using ASM to instead support SSM, which only requires relatively minor changes for many applications, particularly those with single sources.
It is often thought that ASM is required for multicast applications where there are multiple sources. However,
RFC 4607 also describes how SSM can be used instead of PIM-SM for multi-party applications:
SSM can be used to build multi-source applications where all participants' identities are not known in advance, but the multi-source "rendezvous" functionality does not occur in the network layer in this case. Just like in an application that uses unicast as the underlying transport, this functionality can be implemented by the application or by an application-layer library.
Some useful considerations for multicast applications can be found in [
RFC 3170].
Applications with many-to-many communication patterns can create more (S,G) state than is feasible for networks to manage, whether the source discovery is done by ASM with PIM-SM or at the application level and SSM/PIM-SSM. These applications are not best supported by either SSM/PIM-SSM or ASM/PIM-SM.
Instead, these applications are better served by routing protocols that do not create (S,G), such as BIDIR-PIM. Unfortunately, many applications today use ASM solely for service discovery. One example is where clients send IP multicast packets to elicit unicast replies from server(s). Deploying any form of IP multicast solely in support of such service discovery is, in general, not recommended. Dedicated service discovery via DNS-based Service Discovery (DNS-SD) [
RFC 6763] should be used for this instead.
This document describes best practices to explain when to use SSM in applications -- e.g., when ASM without (S,G) state in the network is better, or when dedicated service-discovery mechanisms should be used. However, specifying how applications can support these practices is outside the scope of this document. Further work on this subject may be expected within the IETF.
If feasible, it is recommended for applications to use SSM even if they are initially only meant to be used in intradomain environments supporting ASM. Because PIM-SSM is a subset of PIM-SM, existing intradomain PIM-SM networks are automatically compatible with SSM applications. Thus, SSM applications can operate alongside existing ASM applications. SSM's benefits of simplified address management and significantly reduced operational complexity apply equally to intradomain use.
However, for some applications, it may be prohibitively difficult to add support for source discovery, so intradomain ASM may still be appropriate.
In the case of existing ASM applications that cannot readily be ported to SSM, it may be possible to use some form of protocol mapping -- i.e., to have a mechanism to translate a (*,G) join or leave to a (S,G) join or leave for a specific source S. The general challenge in performing such mapping is determining where the configured source address, S, comes from.
There are existing vendor-specific mechanisms deployed that achieve this function, but none are documented in IETF documents. This may be a useful area for the IETF to work on as an interim transition mechanism. However, these mechanisms would introduce additional administrative burdens, along with the need for some form of address management, neither of which are required in SSM. Hence, this should not be considered a long-term solution.
A key benefit of SSM is that the receiver specifies the source-group tuple when signaling interest in a multicast stream. Hence, the group address need not be globally unique, so there is no need for multicast address allocation as long the reserved SSM range is used.
Despite the deprecation of interdomain ASM, it is recommended that operators not filter ASM group ranges at domain boundaries, as some form of ASM-SSM mappings may continue to be used for some time.
The use of ASM within a single multicast domain such as a campus or enterprise is still relatively common today. There are even global enterprise networks that have successfully been using PIM-SM for many years. The operators of such networks most often use Anycast-RP [
RFC 4610] or MSDP (with IPv4) for RP resilience, at the expense of the extra operational complexity. These existing practices are unaffected by this document.
In the past decade, some BIDIR-PIM deployments have scaled interdomain ASM deployments beyond the capabilities of PIM-SM. This, too, is unaffected by this document; instead, it is encouraged where necessary due to application requirements (see
Section 4.4).
This document also does not preclude continued use of ASM with multiple PIM-SM domains inside organizations, such as with IPv4 MSDP or IPv6 Embedded-RP. This includes organizations that are federations and have appropriate, nonstandardized mechanisms to deal with the interdomain ASM issues explained in
Section 3.2.
Existing PIM-SM deployments can usually be used to run SSM applications with few-to-no changes. In some widely available router implementations of PIM-SM, PIM-SSM is simply enabled by default in the designated SSM address spaces whenever PIM-SM is enabled. In other implementations, simple configuration options exist to enable it. This allows migration of ASM applications to SSM/PIM-SSM solely through application-side development to handle source-signaling via IGMPv3/MLDv2 and using SSM addresses. No network actions are required for this transition; unchanged ASM applications can continue to coexist without issues.
When running PIM-SM, IGMPv3/MLDv2 (S,G) membership reports may also result in the desired PIM-SSM (S,G) operations and bypass any RP procedures. This is not standardized but depends on implementation and may require additional configuration in available products. In general, it is recommended to always use SSM address space for SSM applications. For example, the interaction of IGMPv3/MLDv2 (S,G) membership reports and BIDIR-PIM is undefined and may not result in forwarding of any traffic.
Note that these migration recommendations do not include considerations on when or how to evolve those intradomain applications best served by ASM/BIDIR-PIM from PIM-SM to BIDIR-PIM. This may also be important but is outside the scope of this document.