RFC 4608 BEST CURRENT PRACTICE MULTICAST · ROUTING · OPERATIONS

SSM in 232/8: Source-Specific Protocol Independent Multicast in 232/8

Operational rules that keep the 232/8 multicast range strictly source-specific, with no shared trees and no RPs.

On rfc-editor.org ↗
PUBLISHED
August 2006
AUTHORS
D. Meyer, R. Rockell, G. Shepherd
STREAM
IETF
SSM RANGE
232/8 (232.0.0.0 to 232.255.255.255)
DOCUMENT TYPE
Best Current Practice (BCP 120)
SUPERSET RPS ANNOUNCE
224/4
DOI
10.17487/RFC4608

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                           D. Meyer
Request for Comments: 4608                                    R. Rockell
BCP: 120                                                     G. Shepherd
Category: Best Current Practice                              August 2006


        Source-Specific Protocol Independent Multicast in 232/8

Status of This Memo

   This document specifies an Internet Best Current Practices for the
   Internet Community, and requests discussion and suggestions for
   improvements.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2006).

Abstract

   IP Multicast group addresses in the 232/8 (232.0.0.0 to
   232.255.255.255) range are designated as source-specific multicast
   destination addresses and are reserved for use by source-specific
   multicast applications and protocols.  This document defines
   operational recommendations to ensure source-specific behavior within
   the 232/8 range.

Table of Contents

   1. Introduction ....................................................2
      1.1. BCP, Experimental Protocols, and Normative References ......2
   2. Operational practices in 232/8 ..................................4
      2.1. Preventing Local Sources from Sending to Shared Tree .......4
      2.2. Preventing Remote Sources from Being Learned/Joined
           via MSDP ...................................................4
      2.3. Preventing Receivers from Joining the Shared Tree ..........4
      2.4. Preventing RPs as Candidates for 232/8 .....................5
   3. Acknowledgements ................................................5
   4. Security Considerations .........................................5
   5. References ......................................................6
      5.1. Normative References .......................................6
      5.2. Informative References .....................................6

1.  Introduction

   Current Protocol Independent Multicast - Sparse Mode (PIM-SM)
   [RFC4601] relies on the shared Rendezvous Point (RP) tree to learn
   about active sources for a group and to support group-generic (Any
   Source Multicast or ASM) data distribution.  The IP Multicast group
   address range 232/8 has been designated for Source-Specific Multicast
   [RFC3569] applications and protocols [IANA] and SHOULD support
   source-only trees only, precluding the requirement of an RP and a
   shared tree; active sources in the 232/8 range will be discovered out
   of band.  PIM Sparse Mode Designated Routers (DR) with local
   membership are capable of joining the shortest path tree for the
   source directly using SSM functionality of PIM-SM.

   Operational best common practices in the 232/8 group address range
   are necessary to ensure shortest path source-only trees across
   multiple domains in the Internet [RFC3569], and to prevent data from
   sources sending to groups in the 232/8 range from arriving via shared
   trees.  This avoids unwanted data arrival and allows several sources
   to use the same group address without conflict at the receivers.

   The operational practices SHOULD:

      o  Prevent local sources from sending to shared tree

      o  Prevent receivers from joining the shared tree

      o  Prevent RPs as candidates for 232/8

      o  Prevent remote sources from being learned/joined via Multicast
         Source Discovery Protocol (MSDP) [RFC3618]

1.1.  BCP, Experimental Protocols, and Normative References

   This document describes the best current practice for a widely
   deployed Experimental protocol, MSDP.  There is no plan to advance
   MSDP's status (for example, to Proposed Standard).  The reasons for
   this include:

      o  MSDP was originally envisioned as a temporary protocol to be
         supplanted by whatever the Inter-Domain Multicast Routing
         (IDMR) working group produced as an inter-domain protocol.
         However, the IDMR WG (or subsequently, the Border Gateway
         Multicast Protocol (BGMP) WG) never produced a protocol that
         could be deployed to replace MSDP.

      o  One of the primary reasons given for MSDP to be classified as
         Experimental was that the MSDP Working Group came up with
         modifications to the protocol that the WG thought made it
         better but that implementors didn't see any reasons to deploy.
         Without these modifications (e.g., UDP or GRE encapsulation),
         MSDP can have negative consequences to initial packets in
         datagram streams.

      o  Scalability: Although we don't know what the hard limits might
         be, readvertising everything you know every 60 seconds clearly
         limits the amount of state you can advertise.

      o  MSDP reached nearly ubiquitous deployment as the de facto
         standard inter-domain multicast protocol in the IPv4 Internet.

      o  No consensus could be reached regarding the reworking of MSDP
         to address the many concerns of various constituencies within
         the IETF.  As a result, a decision was taken to document what
         is (ubiquitously) deployed and to move that document to
         Experimental.  Although advancement of MSDP to Proposed
         Standard was considered, for the reasons mentioned above, it
         was immediately discarded.

      o  The advent of protocols such as source-specific multicast and
         bi-directional PIM, as well as embedded RP techniques for IPv6,
         have further reduced consensus that a replacement protocol for
         MSDP for the IPv4 Internet is required.

   The RFC Editor's policy regarding references is that they be split
   into two categories known as "normative" and "informative".
   Normative references specify those documents that must be read for
   one to understand or implement the technology in an RFC (or whose
   technology must be present for the technology in the new RFC to work)
   [RFCED].  In order to understand this document, one must also
   understand both the PIM [RFC4601] and MSDP [RFC3618] documents.  As a
   result, references to these documents are normative.

   The IETF has adopted the policy that BCPs must not have normative
   references to Experimental protocols.  However, this document is a
   special case in that the underlying Experimental document (MSDP) is
   not planned to be advanced to Proposed Standard.

   The MBONED Working Group requests approval under the Variance
   Procedure as documented in RFC 2026 [RFC2026].  The IESG followed the
   Variance Procedure and, after an additional 4-week IETF Last Call,
   evaluated the comments and status and has approved the document.

   The key words "MUST"", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

2.  Operational practices in 232/8

2.1.  Preventing Local Sources from Sending to Shared Tree

   In order to eliminate the use of shared trees for groups in 232/8,
   while maintaining coexistence with ASM in PIM-SM, the behavior of the
   RP and/or the DR needs to be modified.  This can be accomplished by

      -  preventing data for 232/8 groups from being sent encapsulated
         to the RP by the DR,

      -  preventing the RP from accepting registers for 232/8 groups
         from the DR, and

      -  preventing the RP from forwarding accepted data down (*,G) tree
         for 232/8 groups.

2.2.  Preventing Remote Sources from Being Learned/Joined via MSDP

   SSM does not require active source announcements via MSDP.  All
   source announcements are received out of band, and the last hop
   router is responsible for sending (S,G) joins directly to the source.
   To prevent propagation of SAs in the 232/8 range, an RP SHOULD

      -  never originate an SA for any 232/8 groups, and

      -  never accept or forward an SA for any 232/8 groups.

2.3.  Preventing Receivers from Joining the Shared Tree

   Local PIM domain practices need to be enforced to prevent local
   receivers from joining the shared tree for 232/8 groups.  This can be
   accomplished by

      -  preventing DR from sending (*,G) joins for 232/8 groups, and

      -  preventing RP from accepting (*,G) join for 232/8 groups.

   However, within a local PIM domain, any last-hop router NOT
   preventing (*,G) joins may trigger unwanted (*,G) state toward the RP
   that intersects an existing (S,G) tree, allowing the receiver on the
   shared tree to receive the data, which breaks the source-specific
   [RFC3569] service model.  It is therefore recommended that ALL
   routers in the domain MUST reject AND never originate (*,G) joins for
   232/8 groups.

   In those cases in which an ISP is offering its customers (or others)
   the use of the ISP's RP, the ISP SHOULD NOT allow (*,G) joins in the
   232/8 range.

2.4.  Preventing RPs as Candidates for 232/8

   Because SSM does not require an RP, all RPs SHOULD NOT offer
   themselves as candidates in the 232/8 range.  This can be
   accomplished by

      -  preventing RP/BSR from announcing in the 232/8 range,

      -  preventing ALL routers from accepting RP delegations in the
         232/8 range, and

      -  precluding RP functionality on RP for the 232/8 range.

   Note that in typical practice, RPs announce themselves as candidates
   for the 224/4 (which obviously includes 232/8).  It is still
   acceptable to allow the advertisement of 224/4 (or any other superset
   of 232/8); however, this approach relies on the second point, above;
   namely, that routers silently ignore the RP delegation in the 232/8
   range and prevent sending or receiving using the shared tree, as
   described previously.  Finally, an RP SHOULD NOT be configured as a
   candidate RP for 232/8 (or for a more specific range).

3.  Acknowledgements

   This document is the work of many people in the multicast community,
   including (but not limited to) Dino Farinacci, John Meylor, John
   Zwiebel, Tom Pusateri, Dave Thaler, Toerless Eckert, Leonard
   Giuliano, Mike McBride, and Pekka Savola.

4.  Security Considerations

   This document describes operational practices that introduce no new
   security issues to PIM-SM [RFC4601] in either or SSM [RFC3569] or ASM
   operation.

   However, in the event that the operational practices described in
   this document are not adhered to, some problems may surface.  In
   particular, Section 2.3 describes the effects of non-compliance of
   last-hop routers (or, to some degree, rogue hosts sending PIM
   messages themselves) on the source-specific service model.  Creating
   the (*,G) state for source-specific (S,G) could enable a receiver to
   receive data it should not get.  This can be mitigated by host-side
   multicast source filtering.

5.  References

5.1.  Normative References

   [RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas,
             "Protocol Independent Multicast - Sparse Mode (PIM-SM):
             Protocol Specification (Revised)", RFC 4601, August 2006.

   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2026] Bradner, S., "The Internet Standards Process -- Revision
             3", BCP 9, RFC 2026, October 1996.

   [RFC3569] Bhattacharyya, S., "An Overview of Source-Specific
             Multicast (SSM)", RFC 3569, July 2003.

   [RFC3618] Fenner, B. and D. Meyer, "Multicast Source Discovery
             Protocol (MSDP)", RFC 3618, October 2003.

5.2.  Informative References

   [IANA]    http://www.iana.org

   [RFCED]   http://www.rfc-editor.org/policy.html

Authors' Addresses

   David Meyer

   EMail: dmm@1-4-5.net


   Robert Rockell
   Sprint

   EMail: rrockell@sprint.net


   Greg Shepherd
   Cisco

   EMail: gjshep@gmail.com

Full Copyright Statement

   Copyright (C) The Internet Society (2006).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).

AI ELI5

On this page
PROBLEMThe 232/8 range is reserved for source-specific multicast, but PIM-SM also supports shared trees through a Rendezvous Point, and MSDP announces sources between domains. Left alone, routers could deliver 232/8 traffic the wrong way.
MECHANISMRouters and RPs are told to refuse registers, (*,G) joins, RP candidacy and MSDP Source Active messages for 232/8 groups, so only source-only trees ever carry that traffic.
WHY IT MATTERSSeveral sources can safely reuse the same 232/8 group address, and receivers get only the sources they asked for. This is a Best Current Practice (BCP 120).

§1Why 232/8 Needs Operational Rules

The IP multicast group range 232/8 (232.0.0.0 to 232.255.255.255) is designated for Source-Specific Multicast (SSM). Ordinary PIM Sparse Mode (RFC 4601) relies on a shared Rendezvous Point (RP) tree to find active sources and to carry group-generic Any Source Multicast (ASM) traffic. Groups in 232/8 SHOULD use source-only trees instead, so no RP and no shared tree are needed. Active sources are discovered out of band.

Receivers' Designated Routers can join the shortest path tree to a source directly. The practices in this RFC make sure that shortest-path, source-only trees are what actually get used across multiple domains, and that data from sources sending to 232/8 groups never arrives over a shared tree. That avoids unwanted data and lets several sources use the same group address without conflict at the receivers.

The practices SHOULD prevent local sources from sending to the shared tree, prevent receivers from joining it, prevent RPs from being candidates for 232/8, and prevent remote sources from being learned or joined through MSDP.

A special range of group addresses is meant for tuning in to one named sender. The rules stop routers from using the general meeting point for those addresses.

THE FOUR PREVENTIONS FOR 232/8
  • Local sourcesDo not send to the shared tree.
  • ReceiversDo not join the shared tree.
  • RPsAre not candidates for 232/8.
  • MSDPNo SAs originated, accepted or forwarded.

§1.1A BCP About an Experimental Protocol

This document is a best current practice for a widely deployed Experimental protocol, MSDP (RFC 3618), which has no plan to advance to Proposed Standard. The RFC lists the reasons. MSDP was meant to be temporary until the IDMR working group, or later the BGMP working group, produced an inter-domain protocol, but neither produced one that could be deployed.

Other reasons given are scalability (readvertising everything you know every 60 seconds limits the state you can advertise), near-ubiquitous deployment of MSDP as the de facto inter-domain multicast protocol in the IPv4 Internet, and no consensus on reworking it. Protocols such as SSM and bi-directional PIM, plus embedded RP techniques for IPv6, further reduced the push for a replacement.

IETF policy says a BCP must not have normative references to Experimental protocols. Because MSDP will not be advanced, this document is a special case. The MBONED Working Group requested approval under the Variance Procedure of RFC 2026, and the IESG approved it after an additional 4-week IETF Last Call.

The rules depend on a tool that was only ever labeled a trial, but everyone ended up using it. So the authors got special permission to write the rules anyway.

§2.1Keeping Local Sources Off the Shared Tree

To eliminate shared trees for 232/8 groups while still coexisting with ASM in PIM-SM, the behavior of the RP and/or the Designated Router (DR) needs to be modified. Three things are prevented:

  • the DR sending 232/8 data encapsulated to the RP,
  • the RP accepting registers for 232/8 groups from the DR,
  • the RP forwarding accepted data down the (*,G) tree for 232/8 groups.

A sender should not hand its 232/8 packets to the meeting-point router. The meeting point should refuse them and never pass them on.

§2.2Keeping 232/8 Out of MSDP

SSM does not need active source announcements through MSDP. Announcements arrive out of band, and the last hop router sends (S,G) joins directly to the source. To stop Source Active (SA) messages for 232/8 from spreading, an RP SHOULD never originate an SA for any 232/8 group, and SHOULD never accept or forward one.

Because listeners already know which sender they want, no one needs to announce 232/8 senders to other networks. The routers simply stay quiet about them.

§2.3Keeping Receivers Off the Shared Tree

Local PIM domain practice has to prevent receivers from joining the shared tree for 232/8 groups. That means the DR must not send (*,G) joins for those groups, and the RP must not accept them.

The RFC explains why partial enforcement is not enough. Within a domain, any last-hop router that does not block (*,G) joins may create unwanted (*,G) state toward the RP that intersects an existing (S,G) tree. A receiver on the shared tree could then get data, which breaks the source-specific service model of RFC 3569. So ALL routers in the domain MUST reject and never originate (*,G) joins for 232/8 groups.

If an ISP offers customers or others the use of its RP, the ISP SHOULD NOT allow (*,G) joins in the 232/8 range.

If even one router lets a listener join the general channel for these addresses, that listener could hear senders it never picked. So every router has to say no.

§2.4No RP Candidates for 232/8

Because SSM needs no RP, RPs SHOULD NOT offer themselves as candidates in 232/8. In practice this means RP and BSR announcements for 232/8 are prevented, all routers refuse RP delegations in the range, and RP functionality for the range is switched off on the RP.

The RFC notes that RPs typically announce themselves for 224/4, which includes 232/8. Advertising 224/4 or another superset is still acceptable, but it relies on routers silently ignoring the delegation for 232/8 and blocking sending or receiving on the shared tree. An RP SHOULD NOT be configured as a candidate RP for 232/8 or any more specific range.

Meeting-point routers should not volunteer to host these special addresses. If they advertise a bigger range that includes them, other routers must ignore that part.

§4Security Considerations

The practices introduce no new security issues to PIM-SM or to SSM or ASM operation. The risk comes from not following them. Section 2.3 describes what happens when last-hop routers do not comply, or when rogue hosts send PIM messages themselves: creating (*,G) state for a source-specific (S,G) could let a receiver get data it should not. The RFC says this can be mitigated by host-side multicast source filtering.

If a router skips the rules, someone could listen to a sender they were not supposed to hear. Checking at the receiving computer helps catch that.

§8References