idnits 2.17.1 draft-ietf-pim-reserved-bits-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The draft header indicates that this document updates RFC8364, but the abstract doesn't seem to directly say this. It does mention RFC8364 though, so this could be OK. -- The draft header indicates that this document updates RFC5015, but the abstract doesn't seem to directly say this. It does mention RFC5015 though, so this could be OK. -- The draft header indicates that this document updates RFC6754, but the abstract doesn't seem to directly say this. It does mention RFC6754 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year (Using the creation date from RFC3973, updated by this document, for RFC5378 checks: 2002-01-03) (Using the creation date from RFC5015, updated by this document, for RFC5378 checks: 2000-03-09) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (May 28, 2019) is 1794 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Downref: Normative reference to an Experimental RFC: RFC 3973 ** Downref: Normative reference to an Experimental RFC: RFC 8364 -- Obsolete informational reference (is this intentional?): RFC 6166 (Obsoleted by RFC 8736) Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 6 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group S. Venaas 3 Internet-Draft Cisco Systems, Inc. 4 Updates: 3973, 5015, 6754, 7761, 8364 A. Retana 5 (if approved) Huawei R&D USA 6 Intended status: Standards Track May 28, 2019 7 Expires: November 29, 2019 9 PIM reserved bits and type space extension 10 draft-ietf-pim-reserved-bits-01 12 Abstract 14 The currently defined PIM version 2 messages share a common message 15 header format. The common header definition contains eight reserved 16 bits. This document specifies how these bits may be used by 17 individual message types, and creates a registry containing the per 18 message type usage. This document also extends the PIM type space by 19 defining three new message types. For each of the new types, four of 20 the previously reserved bits are used to form an extended type range. 22 This document Updates RFC7761 and RFC3973 by defining the use of the 23 currently Reserved field in the PIM common header. This document 24 further updates RFC7761 and RFC3973, along with RFC5015, RFC6754 and 25 RFC8364, by specifying the use of the currently Reserved bits for 26 each PIM message. 28 Status of This Memo 30 This Internet-Draft is submitted in full conformance with the 31 provisions of BCP 78 and BCP 79. 33 Internet-Drafts are working documents of the Internet Engineering 34 Task Force (IETF). Note that other groups may also distribute 35 working documents as Internet-Drafts. The list of current Internet- 36 Drafts is at https://datatracker.ietf.org/drafts/current/. 38 Internet-Drafts are draft documents valid for a maximum of six months 39 and may be updated, replaced, or obsoleted by other documents at any 40 time. It is inappropriate to use Internet-Drafts as reference 41 material or to cite them other than as "work in progress." 43 This Internet-Draft will expire on November 29, 2019. 45 Copyright Notice 47 Copyright (c) 2019 IETF Trust and the persons identified as the 48 document authors. All rights reserved. 50 This document is subject to BCP 78 and the IETF Trust's Legal 51 Provisions Relating to IETF Documents 52 (https://trustee.ietf.org/license-info) in effect on the date of 53 publication of this document. Please review these documents 54 carefully, as they describe your rights and restrictions with respect 55 to this document. Code Components extracted from this document must 56 include Simplified BSD License text as described in Section 4.e of 57 the Trust Legal Provisions and are provided without warranty as 58 described in the Simplified BSD License. 60 Table of Contents 62 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 63 2. Conventions used in this document . . . . . . . . . . . . . . 3 64 3. PIM header common format . . . . . . . . . . . . . . . . . . 3 65 4. Flag Bit definitions . . . . . . . . . . . . . . . . . . . . 3 66 4.1. Flag Bits for Type 4 (Bootstrap) . . . . . . . . . . . . 4 67 4.2. Flag Bits for Type 10 (DF Election) . . . . . . . . . . . 4 68 4.3. Flag Bits for Type 12 (PFM) . . . . . . . . . . . . . . . 4 69 4.4. Flag Bits for Type 13 (Type Space Extension) . . . . . . 4 70 4.5. Flag Bits for Type 14 (Type Space Extension) . . . . . . 4 71 4.6. Flag Bits for Type 15 (Type Space Extension) . . . . . . 4 72 5. PIM Type Space Extension . . . . . . . . . . . . . . . . . . 5 73 6. Security Considerations . . . . . . . . . . . . . . . . . . . 5 74 7. IANA considerations . . . . . . . . . . . . . . . . . . . . . 5 75 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 76 8.1. Normative References . . . . . . . . . . . . . . . . . . 6 77 8.2. Informative References . . . . . . . . . . . . . . . . . 7 78 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7 80 1. Introduction 82 The currently defined PIM version 2 messages share a common message 83 header format defined in the PIM Sparse Mode [RFC7761] and Dense Mode 84 [RFC3973] specifications. The common header definition contains 85 eight reserved bits. The message types defined in these documents 86 all use this common header. However, several messages already make 87 use of one or more bits, including the Bootstrap [RFC5059], DF- 88 Election [RFC5015], and PIM Flooding Mechanism (PFM) [RFC8364] 89 messages. There is no document formally specifying that these bits 90 are to be used per message type. 92 This document refers to the bits specified as Reserved in the common 93 PIM header [RFC7761] [RFC3973] as PIM message type flag bits, or 94 simply flag bits, and it specifies that they are to be separately 95 used on a per message type basis. It creates a registry containing 96 the the per message type usage. For a particular message type, the 97 usage of the flag bits can be defined in the document defining the 98 message type, or a new document that updates that document. 100 The PIM message types as defined in the PIM Sparse Mode [RFC7761] and 101 Dense Mode [RFC3973] specifications are in the range from 0 to 15. 102 That type space is almost exhausted. Message type 15 was reserved by 103 [RFC6166] for type space extension. In Section 5, this document 104 specifies the use of the flag bits for message types 13, 14 and 15 in 105 order to extend the PIM type space. The registration procedure for 106 the extended type space is the same as for the existing type space, 107 and the existing PIM message type registry is updated to include the 108 extended type space. 110 2. Conventions used in this document 112 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 113 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 114 "OPTIONAL" in this document are to be interpreted as described in BCP 115 14 [RFC2119] [RFC8174] when, and only when, they appear in all 116 capitals, as shown here. 118 3. PIM header common format 120 The common PIM header is defined in section 4.9 of [RFC7761] and 121 section 4.7.1 of [RFC3973]. This document updates the definition of 122 the Reserved field and refers to that field as PIM message type flag 123 bits, or simply flag bits. The new common header format is as below. 125 0 1 2 3 126 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 127 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 128 |PIM Ver| Type | Flags Bits | Checksum | 129 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 131 The Flags Bits field is defined in Section 4. All other fields 132 remain unchanged. 134 4. Flag Bit definitions 136 Unless otherwise specified, all the flag bits for each PIM type are 137 Reserved [RFC8126]. They MUST be set to zero on transmission, and 138 they MUST be ignored upon receipt. The specification of a new PIM 139 type, MUST indicate whether the bits should be treated differently. 141 Currently for the message types 0 (Hello), 1 (Register), 2 (Register 142 Stop), 3 (Join/Prune), 5 (Assert), 6 (Graft), 7 (Graft-Ack), 8 143 (Candidate RP Advertisement), 9 (State Refresh) and 11 (ECMP 144 Redirect), all flag bits are Reserved. 146 When defining flag bits it is helpful to have a well defined way of 147 referring to a particular bit. The most significant of the flag 148 bits, the bit immediately following the type field is referred to as 149 bit 7. The least significant, the bit right in front of the checksum 150 field is referred to as bit 0. This is shown in the diagram below. 152 0 1 2 3 153 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 154 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 155 |PIM Ver| Type |7 6 5 4 3 2 1 0| Checksum | 156 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 158 4.1. Flag Bits for Type 4 (Bootstrap) 160 PIM message type 4 (Bootstrap) [RFC5059] defines flag bit 7 as No- 161 Forward. The usage of the bit is defined in that document. The 162 remaining flag bits are Reserved. 164 4.2. Flag Bits for Type 10 (DF Election) 166 PIM message type 10 (DF Election) [RFC5015] specifies that the four 167 most significant flag bits (bits 4-7) are to be used as a sub-type. 168 The remaining flag bits are currently Reserved. 170 4.3. Flag Bits for Type 12 (PFM) 172 PIM message type 12 (PFM) [RFC8364] defines flag bit 7 as No-Forward. 173 The usage of the bit is defined in that document. The remaining flag 174 bits are Reserved. 176 4.4. Flag Bits for Type 13 (Type Space Extension) 178 This type and the flag bit usage is defined in Section 5. 180 4.5. Flag Bits for Type 14 (Type Space Extension) 182 This type and the flag bit usage is defined in Section 5. 184 4.6. Flag Bits for Type 15 (Type Space Extension) 186 This type and the flag bit usage is defined in Section 5. 188 5. PIM Type Space Extension 190 The type space defined by the existing PIM specifications is almost 191 exhausted. This document defines types 13, 14 and 15 (Type Space 192 Extension) allowing for 48 additional types by for each of the three 193 types, using the four most significant flag bits (bits 4-7) as a new 194 field to store the extended type. These types are referred to as 195 types 13.0 to 13.15, 14.0 to 14.15 and 15.0 to 15.15 where the last 196 number denotes the value stored in the new field. The remaining four 197 flag bits (bits 0-3) are Reserved to be used by each extended type. 198 The specification of a new PIM extended type MUST indicate whether 199 the bits should be treated differently. The common header for the 200 new types is shown in the diagram below. The "Type" field is set to 201 13, 14 or 15, and the extended type field "SubType" denotes the value 202 after the dot. 204 0 1 2 3 205 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 206 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 207 |PIM Ver| Type |SubType| Rsvd | Checksum | 208 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 210 6. Security Considerations 212 This document clarifies the use of the flag bits in the common PIM 213 header and it extends the PIM type space. As such, there is no 214 impact on security or changes to the considerations in [RFC7761] and 215 [RFC3973]. 217 7. IANA considerations 219 This document updates the PIM Message Types registry and also creates 220 a PIM Message Type Flag Bits registry that shows which flag bits are 221 defined for use by each of the PIM message types. 223 The following changes should be made to the existing PIM Message 224 Types registry. For types 4 (Bootstrap) and 8 (Candidate RP 225 Advertisement) a reference to RFC5059 should be added. For the 226 currently unassigned types 13 and 14, and the reserved type 15, the 227 name should be changed to "Type Space Extension", and reference this 228 document. In addition, right underneath each of the rows for types 229 13, 14 and 15, there should be a new row where it says "13.0-13.15 230 Unassigned", "14.0-14.15 Unassigned" and "15.0-15.15 Unassigned", 231 respectively. 233 A new registry called "PIM Message Type Flag Bits" should be created 234 in the pim-paremeters section with registration procedure "IETF 235 Review" as defined in [RFC8126] with this document as a reference. 236 The initial content of the registry should be as below. 238 Type bit(s) Name Reference 239 -------------------------------------------------------------- 240 0 0-7 Reserved [RFC3973][RFC7761] 241 1 0-7 Reserved [RFC3973][RFC7761] 242 2 0-7 Reserved [RFC3973][RFC7761] 243 3 0-7 Reserved [RFC3973][RFC7761] 244 4 0-6 Reserved [RFC3973][RFC7761] 245 4 7 No-Forward [RFC5059] 246 5 0-7 Reserved [RFC3973][RFC7761] 247 6 0-7 Reserved [RFC3973][RFC7761] 248 7 0-7 Reserved [RFC3973][RFC7761] 249 8 0-7 Reserved [RFC3973][RFC7761] 250 9 0-7 Reserved [RFC3973][RFC7761] 251 10 0-3 Reserved [RFC3973][RFC7761] 252 10 4-7 Sub-type [RFC5015] 253 11 0-7 Reserved [RFC6754] 254 12 0-6 Reserved [RFC3973][RFC7761] 255 12 7 No-Forward [RFC8364] 256 13 0-3 N/A (used by 13.0-13.15) [this document] 257 13 4-7 Extended type [this document] 258 13.0-13.15 0-3 Reserved [this document] 259 14 0-3 N/A (used by 14.0-14.15) [this document] 260 14 4-7 Extended type [this document] 261 14.0-14.15 0-3 Reserved [this document] 262 15 0-3 N/A (used by 15.0-15.15) [this document] 263 15 4-7 Extended type [this document] 264 15.0-15.15 0-3 Reserved [this document] 266 8. References 268 8.1. Normative References 270 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 271 Requirement Levels", BCP 14, RFC 2119, 272 DOI 10.17487/RFC2119, March 1997, 273 . 275 [RFC3973] Adams, A., Nicholas, J., and W. Siadak, "Protocol 276 Independent Multicast - Dense Mode (PIM-DM): Protocol 277 Specification (Revised)", RFC 3973, DOI 10.17487/RFC3973, 278 January 2005, . 280 [RFC5015] Handley, M., Kouvelas, I., Speakman, T., and L. Vicisano, 281 "Bidirectional Protocol Independent Multicast (BIDIR- 282 PIM)", RFC 5015, DOI 10.17487/RFC5015, October 2007, 283 . 285 [RFC5059] Bhaskar, N., Gall, A., Lingard, J., and S. Venaas, 286 "Bootstrap Router (BSR) Mechanism for Protocol Independent 287 Multicast (PIM)", RFC 5059, DOI 10.17487/RFC5059, January 288 2008, . 290 [RFC6754] Cai, Y., Wei, L., Ou, H., Arya, V., and S. Jethwani, 291 "Protocol Independent Multicast Equal-Cost Multipath 292 (ECMP) Redirect", RFC 6754, DOI 10.17487/RFC6754, October 293 2012, . 295 [RFC7761] Fenner, B., Handley, M., Holbrook, H., Kouvelas, I., 296 Parekh, R., Zhang, Z., and L. Zheng, "Protocol Independent 297 Multicast - Sparse Mode (PIM-SM): Protocol Specification 298 (Revised)", STD 83, RFC 7761, DOI 10.17487/RFC7761, March 299 2016, . 301 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 302 Writing an IANA Considerations Section in RFCs", BCP 26, 303 RFC 8126, DOI 10.17487/RFC8126, June 2017, 304 . 306 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 307 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 308 May 2017, . 310 [RFC8364] Wijnands, IJ., Venaas, S., Brig, M., and A. Jonasson, "PIM 311 Flooding Mechanism (PFM) and Source Discovery (SD)", 312 RFC 8364, DOI 10.17487/RFC8364, March 2018, 313 . 315 8.2. Informative References 317 [RFC6166] Venaas, S., "A Registry for PIM Message Types", RFC 6166, 318 DOI 10.17487/RFC6166, April 2011, 319 . 321 Authors' Addresses 322 Stig Venaas 323 Cisco Systems, Inc. 324 Tasman Drive 325 San Jose CA 95134 326 USA 328 Email: stig@cisco.com 330 Alvaro Retana 331 Huawei R&D USA 332 2330 Central Expressway 333 Santa Clara CA 95050 334 USA 336 Email: alvaro.retana@huawei.com