|
RFC Home |
Full RFC Index |
Recent RFCs |
RFC Standards |
Best Current Practice |
RFC Errata |
1 April RFC |
|
||||||
|
IETF RFC 9436
Last modified on Thursday, August 31st, 2023 Permanent link to RFC 9436 Search GitHub Wiki for RFC 9436 Show other RFCs mentioning RFC 9436 Internet Engineering Task Force (IETF) S. Venaas Request for Comments: 9436 Cisco Systems, Inc. Obsoletes: 8736 A. Retana Updates: 3973, 5015, 5059, 6754, 7761, Futurewei Technologies, Inc. 8364 August 2023 Category: Standards Track ISSN: 2070-1721 PIM Message Type Space Extension and Reserved Bits Abstract The PIM version 2 messages share a common message header format. The common header definition contains eight reserved bits. This document specifies how these bits may be used by individual message types and extends the PIM type space. This document updates RFCs 7761 and 3973 by defining the use of the Reserved field in the PIM common header. This document further updates RFCs 7761 and 3973, along with RFCs 5015, 5059, 6754, and 8364, by specifying the use of the bits for each PIM message. This document obsoletes RFC 8736. Status of This Memo This is an Internet Standards Track document. This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841. Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at https://www.rfc-editor.org/info/RFC 9436. Copyright Notice Copyright (c) 2023 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License. Table of Contents 1. Introduction 2. Conventions Used in This Document 3. PIM Header Common Format 4. Flag Bit Definitions 4.1. Flag Bits for Type 4 (Bootstrap) 4.2. Flag Bits for Type 10 (DF Election) 4.3. Flag Bits for Type 12 (PIM Flooding Mechanism) 4.4. Flag Bits for Types 13, 14, and 15 (Type Space Extension) 5. PIM Type Space Extension 6. Security Considerations 7. IANA Considerations 8. References 8.1. Normative References 8.2. Informative References Authors' Addresses 1. Introduction The PIM version 2 messages share a common message header format defined in the PIM Sparse Mode specification [RFC 7761]. The common header definition contains eight reserved bits. While all message types use this common header, there is no document formally specifying that these bits are to be used per message type. This document updates the definition of the Reserved field and refers to it as the "Flag Bits field". It specifies that the flag bits are to be separately used on a per-message-type basis. It updates the "PIM Message Types" registry to indicate the per-message-type usage. This document updates [RFC 7761] and [RFC 3973] by defining the use of the Reserved field in the PIM common header. This document further updates [RFC 7761] and [RFC 3973], along with [RFC 5015], [RFC 5059], [RFC 6754], and [RFC 8364], by specifying the use of the bits for each PIM message. The originally defined PIM message types were in the range from 0 to 15. Message type 15 had been reserved by [RFC 6166] for type space extension. In Section 5, this document specifies the use of the Flag Bits field for message types 13, 14, and 15 in order to extend the PIM type space. The type space extension in [RFC 6166] was made obsolete by [RFC 8736]. This document obsoletes [RFC 8736]. 2. Conventions Used in This Document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC 2119] [RFC 8174] when, and only when, they appear in all capitals, as shown here. 3. PIM Header Common Format The common PIM header is defined in Section 4.9 of [RFC 7761]. This document updates the definition of the Reserved field and refers to it as the "Flag Bits field". The updated common header format is as below. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |PIM Ver| Type | Flag Bits | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: Updated Common Header The Flag Bits field is defined in Section 4. All other fields remain unchanged. 4. Flag Bit Definitions Unless otherwise specified, all the flag bits for each PIM type are Unassigned [RFC 8126]. They MUST be set to zero on transmission, and they MUST be ignored upon receipt. The specification of a new PIM type MUST indicate whether the bits should be treated differently. When defining flag bits, it is helpful to have a well-defined way of referring to a particular bit. The most significant of the flag bits, the bit immediately following the Type field, is referred to as bit 7. The least significant, the bit right in front of the Checksum field, is referred to as bit 0. This is shown in the diagram below. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |PIM Ver| Type |7 6 5 4 3 2 1 0| Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2: Flag Bits 4.1. Flag Bits for Type 4 (Bootstrap) PIM message type 4 (Bootstrap) [RFC 5059] defines flag bit 7 as No- Forward. The usage of the bit is defined in that document. The remaining flag bits are unassigned. 4.2. Flag Bits for Type 10 (DF Election) PIM message type 10 (DF Election) [RFC 5015] specifies that the four most significant flag bits (bits 4-7) are to be used as a subtype. The usage of those bits is defined in that document. The remaining flag bits are unassigned. 4.3. Flag Bits for Type 12 (PIM Flooding Mechanism) PIM message type 12 (PIM Flooding Mechanism) [RFC 8364] defines flag bit 7 as No-Forward. The usage of the bit is defined in that document. The remaining flag bits are unassigned. 4.4. Flag Bits for Types 13, 14, and 15 (Type Space Extension) These types and the corresponding flag bits are defined in Section 5. 5. PIM Type Space Extension This document extends types 13, 14, and 15 such that each becomes 16 new types, resulting in 48 types available for future PIM extensions. This extension is achieved by defining a Subtype field (see Figure 3) using the four most significant flag bits (bits 4-7). The notation type.subtype is used to reference the new extended types. The remaining four flag bits (bits 0-3, abbreviated as FB below) are to be defined by each extended type. Each of the extended types is represented by the eight bits resulting from the concatenation of the Type and Subtype fields. No relationship is expected or implied between extended type messages with a common Type field. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |PIM Ver| Type |Subtype| FB | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3: Subtypes 6. Security Considerations This document clarifies the use of the flag bits in the common PIM header, and it extends the PIM type space. As such, there is no impact on security or changes to the considerations in [RFC 7761] and [RFC 3973]. 7. IANA Considerations This document updates the "PIM Message Types" registry to indicate which flag bits are defined for use by each of the PIM message types and changes their registration status to Unassigned except where the bits have already been specified, as shown in Table 1. The registration policy remains IETF Review [RFC 8126]. Assignments to this registry MUST define any non-default usage (see Section 4) of the flag bits in addition to the type. Extended type 15.15 is Reserved [RFC 8126] for future extensions. Because this document obsoletes [RFC 8736], IANA has changed the references to [RFC 8736] in the registry to point to this document instead. The updated "PIM Message Types" registry is shown below. +============+===============+=================+===========+ | Type | Name | Flag Bits | Reference | +============+===============+=================+===========+ | 0 | Hello | 0-7: Unassigned | [RFC 3973] | | | | | [RFC 7761] | +------------+---------------+-----------------+-----------+ | 1 | Register | 0-7: Unassigned | [RFC 7761] | +------------+---------------+-----------------+-----------+ | 2 | Register Stop | 0-7: Unassigned | [RFC 7761] | +------------+---------------+-----------------+-----------+ | 3 | Join/Prune | 0-7: Unassigned | [RFC 3973] | | | | | [RFC 7761] | +------------+---------------+-----------------+-----------+ | 4 | Bootstrap | 0-6: Unassigned | [RFC 5059] | | | | | [RFC 7761] | | | +-----------------+-----------+ | | | 7: No-Forward | [RFC 5059] | +------------+---------------+-----------------+-----------+ | 5 | Assert | 0-7: Unassigned | [RFC 3973] | | | | | [RFC 7761] | +------------+---------------+-----------------+-----------+ | 6 | Graft | 0-7: Unassigned | [RFC 3973] | +------------+---------------+-----------------+-----------+ | 7 | Graft-Ack | 0-7: Unassigned | [RFC 3973] | +------------+---------------+-----------------+-----------+ | 8 | Candidate RP | 0-7: Unassigned | [RFC 7761] | | | Advertisement | | | +------------+---------------+-----------------+-----------+ | 9 | State Refresh | 0-7: Unassigned | [RFC 3973] | +------------+---------------+-----------------+-----------+ | 10 | DF Election | 0-3: Unassigned | [RFC 5015] | | | +-----------------+-----------+ | | | 4-7: Subtype | [RFC 5015] | +------------+---------------+-----------------+-----------+ | 11 | ECMP Redirect | 0-7: Unassigned | [RFC 6754] | +------------+---------------+-----------------+-----------+ | 12 | PIM Flooding | 0-6: Unassigned | [RFC 8364] | | | Mechanism +-----------------+-----------+ | | | 7: No-Forward | [RFC 8364] | +------------+---------------+-----------------+-----------+ | 13.0-15.14 | Unassigned | 0-3: Unassigned | | +------------+---------------+-----------------+-----------+ | 15.15 | Reserved | 0-3: Reserved | RFC 9436 | +------------+---------------+-----------------+-----------+ Table 1: Updated PIM Message Types Registry The unassigned types above, as explained in Section 5, use the extended type notation of type.subtype. Each extended type only has 4 flag bits available. New extended message types should be assigned consecutively, starting with 13.0, then 13.1, etc. 8. References 8.1. Normative References [RFC 2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC 2119, March 1997, <https://www.rfc-editor.org/info/RFC 2119>. [RFC 7761] Fenner, B., Handley, M., Holbrook, H., Kouvelas, I., Parekh, R., Zhang, Z., and L. Zheng, "Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol Specification (Revised)", STD 83, RFC 7761, DOI 10.17487/RFC 7761, March 2016, <https://www.rfc-editor.org/info/RFC 7761>. [RFC 8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC 8126, June 2017, <https://www.rfc-editor.org/info/RFC 8126>. [RFC 8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC 8174, May 2017, <https://www.rfc-editor.org/info/RFC 8174>. 8.2. Informative References [RFC 3973] Adams, A., Nicholas, J., and W. Siadak, "Protocol Independent Multicast - Dense Mode (PIM-DM): Protocol Specification (Revised)", RFC 3973, DOI 10.17487/RFC 3973, January 2005, <https://www.rfc-editor.org/info/RFC 3973>. [RFC 5015] Handley, M., Kouvelas, I., Speakman, T., and L. Vicisano, "Bidirectional Protocol Independent Multicast (BIDIR- PIM)", RFC 5015, DOI 10.17487/RFC 5015, October 2007, <https://www.rfc-editor.org/info/RFC 5015>. [RFC 5059] Bhaskar, N., Gall, A., Lingard, J., and S. Venaas, "Bootstrap Router (BSR) Mechanism for Protocol Independent Multicast (PIM)", RFC 5059, DOI 10.17487/RFC 5059, January 2008, <https://www.rfc-editor.org/info/RFC 5059>. [RFC 6166] Venaas, S., "A Registry for PIM Message Types", RFC 6166, DOI 10.17487/RFC 6166, April 2011, <https://www.rfc-editor.org/info/RFC 6166>. [RFC 6754] Cai, Y., Wei, L., Ou, H., Arya, V., and S. Jethwani, "Protocol Independent Multicast Equal-Cost Multipath (ECMP) Redirect", RFC 6754, DOI 10.17487/RFC 6754, October 2012, <https://www.rfc-editor.org/info/RFC 6754>. [RFC 8364] Wijnands, IJ., Venaas, S., Brig, M., and A. Jonasson, "PIM Flooding Mechanism (PFM) and Source Discovery (SD)", RFC 8364, DOI 10.17487/RFC 8364, March 2018, <https://www.rfc-editor.org/info/RFC 8364>. [RFC 8736] Venaas, S. and A. Retana, "PIM Message Type Space Extension and Reserved Bits", RFC 8736, DOI 10.17487/RFC 8736, February 2020, <https://www.rfc-editor.org/info/RFC 8736>. Authors' Addresses Stig Venaas Cisco Systems, Inc. Tasman Drive San Jose, CA 95134 United States of America Email: stig@cisco.com Alvaro Retana Futurewei Technologies, Inc. 2330 Central Expressway Santa Clara, CA 95050 United States of America Email: alvaro.retana@futurewei.com RFC TOTAL SIZE: 15949 bytes PUBLICATION DATE: Thursday, August 31st, 2023 LEGAL RIGHTS: The IETF Trust (see BCP 78) |