RFC 7063

Survey Report on Protocol Independent Multicast - Sparse Mode (PIM-SM) Implementations and Deployments

๐Ÿ“… published December 2013, from ietf

RFC 7063: Survey Report on Protocol Independent Multicast - Sparse Mode (PIM-SM) Implementations and Deployments ๐Ÿ’–

okay bestie, let's get into this one ๐Ÿซถ it's an IETF RFC, which is basically the Internet's official rulebook, and this one is an Informational doc, so it's a survey report, not a new spec ๐ŸŽ€

  • RFC number: 7063
  • Date: December 2013
  • Category: Informational
  • ISSN: 2070-1721
  • Authors: L. Zheng (Huawei Technologies), Z. Zhang (Juniper Networks), and R. Parekh (Cisco Systems)
  • Obsoletes/Updates: the title block doesn't list anything it obsoletes or updates ๐Ÿฆ‹

Abstract ๐Ÿ“œ

okay so the whole point of this doc is to give backup for moving the PIM-SM protocol up the ladder, from Proposed Standard all the way to Internet Standard โœจ

Status of This Memo ๐ŸŒธ

this one is NOT a standards track spec, it's just here for info ๐Ÿ’… but it's still an IETF product, so it reflects what the IETF community agreed on and got public review, and the IESG approved it for publication ๐Ÿ”ฅ

the IESG approving something doesn't automatically make it a standard, though. for more on that, check Section 2 of RFC 5741 ๐Ÿงš

current status, errata, and how to give feedback are all at http://www.rfc-editor.org/info/rfc7063 ๐Ÿ’œ

copyright is 2013 IETF Trust and the document authors, all rights reserved ๐ŸŒˆ

this doc is under BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info), as they stood on the publication date. please actually read those, because they explain what you can and can't do with the doc ๐Ÿ™ˆ

if you pull code out of this doc, it has to include the Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions. and it comes with no warranty, same as that license says ๐Ÿ’€


Table of Contents ๐Ÿ—บ๏ธ

   1. Motivation ......................................................3
      1.1. Overview of PIM-SM .........................................3
      1.2. Requirements of RFCs 2026 and 6410 .........................3
   2. Survey on Implementations and Deployments .......................4
      2.1. Methodology ................................................4
      2.2. Operator Responses .........................................4
           2.2.1. Description of PIM-SM Deployments ...................4
           2.2.2. PIM-SM Deployment with Other Multicast
                  Technologies ........................................4
           2.2.3. PIM-SM Rendezvous Points (RPs) and RP
                  Discovery Mechanisms ................................4
      2.3. Vendor Responses ...........................................5
           2.3.1. Implementations Based on RFCs 4601 and 2362 .........5
           2.3.2. Lack of (*,*,RP) and PMBR Implementations ...........5
           2.3.3. Implementations of Other Features of RFC 4601 .......5
      2.4. Key Findings ...............................................6
   3. Security Considerations .........................................6
   4. Acknowledgements ................................................6
   5. References ......................................................6
      5.1. Normative References .......................................6
      5.2. Informative References .....................................7
   Appendix A. Questionnaire ..........................................8
     A.1. PIM Survey for Operators ....................................8
     A.2. PIM Survey for Implementors ................................10

1. Motivation ๐ŸŽ€

1.1. Overview of PIM-SM ๐Ÿฆ‹

okay so PIM-SM first showed up as [RFC2117] back in 1997 ๐Ÿ˜ญ then [RFC2362] replaced it in 1998. both of those called the protocol Experimental ๐Ÿงช

then the spec got fully rewritten and moved up to Proposed Standard as [RFC4601] in 2006 โœจ since it had several independent implementations and solid real-world use, the PIM WG decided to push PIM-SM all the way to Internet Standard ๐Ÿ‘‘ this survey and this doc are part of that work ๐Ÿ’–

1.2. Requirements of RFCs 2026 and 6410 ๐Ÿ“š

[RFC2026] is the one that lays out the standardization stages, what a doc needs to move between them, and the kinds of docs involved ๐Ÿ’… here's what its Section 4.1.2 says:

   The requirement for at least two independent and interoperable
   implementations applies to all of the options and features of the
   specification.  In cases in which one or more options or features
   have not been demonstrated in at least two interoperable
   implementations, the specification may advance to the Draft
   Standard level only if those options or features are removed.

[RFC6410] updates the IETF Standards Process from [RFC2026] ๐Ÿ”ฅ the big change is that it cuts the Standards Track from three maturity levels down to two. the second level blends Draft Standard and Standard, as [RFC2026] defines them ๐ŸŒธ Section 2.2 of [RFC6410] says:

   (1) There are at least two independent interoperating
   implementations with widespread deployment and successful
   operational experience.

   (2)...

   (3) There are no unused features in the specification that greatly
   increase implementation complexity.

the PIM WG already flagged some optional features that don't meet those criteria, and they're getting removed ๐Ÿ™ˆ this doc is the supporting documentation for moving PIM-SM from Proposed Standard to Internet Standard ๐Ÿซถ

2. Survey on Implementations and Deployments ๐Ÿ“Š

2.1. Methodology ๐Ÿ”

the PIM WG co-chairs issued a questionnaire and announced it widely to vendors and the operations community, to gather info on PIM-SM implementations and deployments ๐Ÿ’œ the survey closed on 22 Oct 2012 ๐Ÿ“ responses stayed confidential, and only the combined results get published here. responders also picked whether to keep their affiliations private ๐Ÿ™ˆ the raw questionnaire is in Appendix A, and the compiled responses are in the next section โœจ

2.2. Operator Responses ๐Ÿง‘โ€๐Ÿ’ป

nine operators responded ๐ŸŽ€ they are SWITCH, National Research Council Canada, South Dakota School of Mines and Technology, Motorola Solutions, and five anonymous operators ๐Ÿ’…

2.2.1. Description of PIM-SM Deployments ๐ŸŒˆ

PIM-SM has been out in the wild since 1998, across a bunch of uses: Campus, Enterprise, Research and WAN networks, Broadband ISP, and Digital TV ๐Ÿ”ฅ five deployments run on [RFC4601] implementations and two run on [RFC2362] ones ๐Ÿฆ‹ three operators have PIM-SM for IPv6 running ๐Ÿงš six of the nine operators have PIM-SM from multiple vendors, which is so iconic ๐Ÿ‘‘

operators reported minor interop issues, and the vendors fixed them ๐Ÿซถ nobody reported any major interoperability concerns ๐Ÿ’…

2.2.2. PIM-SM Deployment with Other Multicast Technologies ๐ŸŒธ

one operator ran PIM-SM alongside Multicast Extensions to OSPF (MOSPF). everyone else used PIM-SM exclusively ๐Ÿ’– no operators said they deployed either (*,*,RP) or PIM Multicast Border Route (PMBR) to connect PIM-SM with other multicast domains ๐Ÿ™ˆ

2.2.3. PIM-SM Rendezvous Points (RPs) and RP Discovery Mechanisms ๐Ÿ“ก

operators deployed anywhere from a handful of PIM-SM RPs (like sixteen) up to a massive four hundred ๐Ÿ˜ญ both static configuration and Bootstrap Router (BSR) got used as RP discovery mechanisms โœจ

Anycast-RP was deployed for RP redundancy ๐Ÿ” two operators used Anycast-RP with the Multicast Source Discovery Protocol (MSDP) [RFC3446] ๐Ÿฆ‹ three operators used both MSDP [RFC3446] and PIM [RFC4610] for different scenarios ๐ŸŒˆ the best common practice looks like static-RP configuration with Anycast-RP for redundancy ๐Ÿ’…

2.3. Vendor Responses ๐Ÿญ

eight vendors reported PIM-SM implementations: XORP, Huawei Technologies, Cisco Systems, Motorola Solutions, Juniper Networks, and three other anonymous vendors ๐Ÿ’œ

2.3.1. Implementations Based on RFCs 4601 and 2362 ๐ŸŽ€

four vendors reported PIM-SM implementations based on [RFC4601], and two reported ones based on [RFC2362] โœจ two others reported hybrids ๐Ÿงš

minor interop issues came up over the years and the vendors addressed them, and no vendor reported any concerns ๐Ÿซถ

2.3.2. Lack of (*,*,RP) and PMBR Implementations ๐Ÿ™ˆ

most vendors haven't implemented (*,*,RP) state as specified in [RFC4601], either because they didn't need it for deployment or because of security concerns ๐Ÿ”’ similarly, most vendors also skipped PMBR, either for lack of deployment need or because it was seen as too complex and non-scalable ๐Ÿ’€

only one vendor, XORP, reported implementing (*,*,RP) and PMBR, and they only did it because those were part of the [RFC4601] spec ๐Ÿ˜ญ

2.3.3. Implementations of Other Features of RFC 4601 ๐Ÿ’–

most vendors have implemented all of these from the [RFC4601] spec:

  • Source-Specific Multicast (SSM) ๐Ÿฆ‹
  • Join suppression ๐ŸŒธ
  • Explicit tracking ๐Ÿ”
  • Register mechanism ๐Ÿ“ฎ
  • Shortest Path Tree (SPT) switchover at last-hop router ๐Ÿš€
  • Assert mechanism โญ
  • Hashing of group to RP mappings ๐Ÿง

some vendors don't implement explicit tracking or SSM ๐Ÿ™ˆ

2.4. Key Findings ๐Ÿ”‘

PIM-SM is widely implemented and deployed for all kinds of uses ๐Ÿ”ฅ [RFC4601] specifies it well enough that operators get interoperable implementations ๐Ÿซถ

there are no deployments and only one known implementation of (*,*,RP) and PMBR as specified in [RFC4601] ๐Ÿ’€ so [RFC2026] and [RFC6410] mean these features have to be removed from the spec ๐Ÿ˜ญ

3. Security Considerations ๐Ÿ”

the PIM WG knows about at least three PIM-SM implementations that support IPsec for protecting PIM messages, and they believe there are more out there ๐Ÿ›ก๏ธ for at least one of them, IPsec isn't part of the PIM implementation itself. you just configure IPsec with Security Policy Databases (SPDs), where things like the interface and the ALL_PIM_ROUTERS multicast address can be selectors, per [RFC5796] ๐Ÿ’œ

4. Acknowledgements ๐Ÿซถ

the authors want to thank Tim Chown and Bill Atwood, who collected and anonymized the responses as the neutral third party ๐ŸŽ€ special shoutouts also go to Alexander Gall, William F. Maton Sotomayor, Steve Bauer, Sonum Mathur, Pavlin Radoslavov, Shuxue Fan, Sameer Gulrajani, and to all the anonymous responders ๐Ÿ’–โœจ

5. References ๐Ÿ“š

5.1. Normative References ๐Ÿงท

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

   [RFC6410]  Housley, R., Crocker, D., and E. Burger, "Reducing the
              Standards Track to Two Maturity Levels", BCP 9, RFC 6410,
              October 2011.

5.2. Informative References

Okay so this is the bibliography for the stuff that's helpful background but not required reading ๐Ÿ“š๐ŸŽ€ Everything from the PIM-SM family tree is here, from the 1997 original all the way to the 2006 revision.

[RFC2117]  Estrin, D., Farinacci, D., Helmy, A., Thaler, D., Deering,
           S., Handley, M., Jacobson, V., Liu, C., Sharma, P., and L.
           Wei, "Protocol Independent Multicast-Sparse Mode (PIM-SM):
           Protocol Specification", RFC 2117, June 1997.

[RFC2362]  Estrin, D., Farinacci, D., Helmy, A., Thaler, D., Deering,
           S., Handley, M., and V. Jacobson, "Protocol Independent
           Multicast-Sparse Mode (PIM-SM): Protocol Specification",
           RFC 2362, June 1998.

[RFC3446]  Kim, D., Meyer, D., Kilmer, H., and D. Farinacci, "Anycast
           Rendevous Point (RP) mechanism using Protocol Independent
           Multicast (PIM) and Multicast Source Discovery Protocol
           (MSDP)", RFC 3446, January 2003.

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

[RFC4610]  Farinacci, D. and Y. Cai, "Anycast-RP Using Protocol
           Independent Multicast (PIM)", RFC 4610, August 2006.

[RFC5796]  Atwood, W., Islam, S., and M. Siami, "Authentication and
           Confidentiality in Protocol Independent Multicast Sparse
           Mode (PIM-SM) Link-Local Messages", RFC 5796, March 2010.

Appendix A. Questionnaire ๐Ÿ’…

Bestie, this is the actual survey that went out to operators and implementors, copied word for word so nothing gets lost in translation ๐Ÿซถ Read it exactly as it was sent.

A.1. PIM Survey for Operators

This is the one for the people actually running PIM-SM in their networks ๐ŸŒโœจ

Introduction:

PIM-SM was first published as RFC2117 in 1997 and then again as
RFC2362 in 1998.  The protocol was classified as Experimental in
both of these documents.  The PIM-SM protocol specification was then
rewritten in whole and advanced to Proposed Standard as RFC4601 in
2006.  Considering the multiple independent implementations developed
and the successful operational experience gained, the IETF has
decided to advance the PIM-SM routing protocol to Draft Standard.
This survey intends to provide supporting documentation to advance
the Protocol Independent Multicast - Sparse Mode (PIM-SM) routing
protocol from IETF Proposed Standard to Draft Standard.  (Due to
RFC6410, now the intention is to progress it to Internet Standard.
Draft Standard is no longer used.)

This survey is issued on behalf of the IETF PIM Working Group.

The responses will be collected by a neutral third-party and kept
strictly confidential if requested in the response; only the final
combined results will be published.  Tim Chown and Bill Atwood have
agreed to anonymize the response to this Questionnaire.  They have a
long experience with multicast but have no direct financial interest
in this matter, nor ties to any of the vendors involved.  Tim is
working at University of Southampton, UK, and he has been active in
the IETF for many years, including the mboned working group, and he
is a co-chair of the 6renum working group.  Bill is at Concordia
University, Montreal, Canada, and he has been an active participant
in the IETF pim working group for over ten years, especially in the
area of security.

Please send questionnaire responses addressed to them both.  The
addresses are tjc@ecs.soton.ac.uk and william.atwood@concordia.ca.
Please include the string "RFC4601 bis Questionnaire" in the subject
field.

Before answering the questions, please complete the following
background information.

Name of the Respondent:

Affiliation/Organization:

Contact Email:

Provide description of PIM deployment:

Do you wish to keep the information provided confidential:

Questions:

1 Have you deployed PIM-SM in your network?

2 How long have you had PIM-SM deployed in your network?  Do you know
  if your deployment is based on the most recent RFC4601?

3 Have you deployed PIM-SM for IPv6 in your network?

4 Are you using equipment with different (multi-vendor) PIM-SM
  implementations for your deployment?

5 Have you encountered any inter-operability or backward-
  compatibility issues amongst differing implementations?  If yes,
  what are your concerns about these issues?

6 Have you deployed both dense mode and sparse mode in your network?
  If yes, do you route between these modes using features such as
  *,*,RP or PMBR?

7 To what extent have you deployed PIM functionality, like BSR, SSM,
  and Explicit Tracking?

8 Which RP mapping mechanism do you use: Static, AutoRP, or BSR?

9 How many RPs have you deployed in your network?

10 If you use Anycast-RP, is it Anycast-RP using MSDP (RFC 3446) or
   Anycast-RP using PIM (RFC4610)?

11 Do you have any other comments on PIM-SM deployment in your
   network?

A.2. PIM Survey for Implementors

And this is the version for the folks who actually built the PIM-SM code ๐Ÿ› ๏ธ๐Ÿ’œ

Introduction:

PIM-SM was first published as RFC2117 in 1997 and then again as
RFC2362 in 1998.  The protocol was classified as Experimental in both
of these documents.  The PIM-SM protocol specification was then
rewritten in whole and advanced to Proposed Standard as RFC4601 in
2006.  Considering the multiple independent implementations developed
and the successful operational experience gained, the IETF has
decided to advance the PIM-SM routing protocol to Draft Standard.
This survey intends to provide supporting documentation to advance
the Protocol Independent Multicast - Sparse Mode (PIM-SM) routing
protocol from IETF Proposed Standard to Draft Standard.  (Due to
RFC6410, now the intention is to progress it to Internet Standard.
Draft Standard is no longer used.)

This survey is issued on behalf of the IETF PIM Working Group.

The responses will be collected by a neutral third-party and kept
strictly confidential if requested in the response; only the final
combined results will be published.  Tim Chown and Bill Atwood have
agreed to anonymize the response to this Questionnaire.  They have a
long experience with multicast but have no direct financial interest
in this matter, nor ties to any of the vendors involved.  Tim is
working at University of Southampton, UK, and he has been active in
the IETF for many years, including the mboned working group, and he
is a co-chair of the 6renum working group.  Bill is at Concordia
University, Montreal, Canada, and he has been an active participant
in the IETF pim working group for over ten years, especially in the
area of security.

Please send questionnaire responses addressed to them both.  The
addresses are tjc@ecs.soton.ac.uk and william.atwood@concordia.ca.
Please include the string "RFC 4601 bis Questionnaire" in the subject
field.

Before answering the questions, please complete the following
background information.

Name of the Respondent:

Affiliation/Organization:

Contact Email:

Provide description of PIM implementation:

Do you wish to keep the information provided confidential:

Questions:

1 Have you implemented PIM-SM?

2 Is the PIM-SM implementation based on RFC2362 or RFC4601?

3 Have you implemented (*,*, RP) state of RFC4601?  What is the
  rationale behind implementing or omitting (*,*,RP)?

4 Have you implemented the PMBR as specified in RFC4601 and RFC2715?
  What is the rationale behind implementing or omitting PMBR?

5 Have you implemented other features and functions of RFC4601:

- SSM

- Join Suppression

- Explicit tracking

- Register mechanism

- SPT switchover at last-hop router

- Assert mechanism

- Hashing of group to RP mappings

6 Does your PIM-SM implementation support IPv6?

7 Have you encountered any inter-operability issues with other PIM
  implementations in trials or in the field?

8 Do you have any other comments or concerns about PIM-SM as
  specified in RFC4601?

Authors' Addresses ๐ŸŒธ

And last but not least, the three legends who wrote this whole thing, with their contact details so you can slide into their inboxes ๐Ÿ’Œโœจ

Lianshu Zheng
Huawei Technologies
China

EMail: vero.zheng@huawei.com


Zhaohui Zhang
Juniper Networks
USA

EMail: zzhang@juniper.net


Rishabh Parekh
Cisco Systems
USA

EMail: riparekh@cisco.com
๐Ÿ“ฆ where this page comes from