idnits 2.17.00 (12 Aug 2021) /tmp/idnits60776/draft-ietf-6man-multicast-addr-arch-update-07.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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year (Using the creation date from RFC3306, updated by this document, for RFC5378 checks: 2000-09-27) -- The document seems to contain a disclaimer for pre-RFC5378 work, and may have content which was first submitted before 10 November 2008. The disclaimer is necessary when there are original authors that you have been unable to contact, or if some do not wish to grant the BCP78 rights to the IETF Trust. If you are able to get all authors (current and original) to grant those rights, you can and should remove the disclaimer; otherwise, the disclaimer is needed and you can ignore this comment. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (July 07, 2014) is 2874 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) == Missing Reference: 'ADDRARCH' is mentioned on line 187, but not defined == Outdated reference: A later version (-06) exists of draft-ietf-mboned-64-multicast-address-format-05 Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 6man Working Group M. Boucadair 3 Internet-Draft France Telecom 4 Updates: 3306,3956,4291 (if approved) S. Venaas 5 Intended status: Standards Track Cisco 6 Expires: January 8, 2015 July 07, 2014 8 Updates to the IPv6 Multicast Addressing Architecture 9 draft-ietf-6man-multicast-addr-arch-update-07 11 Abstract 13 This document updates the IPv6 multicast addressing architecture by 14 re-defining the reserved bits as generic flag bits. The document 15 provides also some clarifications related to the use of these flag 16 bits. 18 This document updates RFC 3956, RFC 3306 and RFC 4291. 20 Requirements Language 22 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 23 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 24 document are to be interpreted as described in RFC 2119 [RFC2119]. 26 Status of This Memo 28 This Internet-Draft is submitted in full conformance with the 29 provisions of BCP 78 and BCP 79. 31 Internet-Drafts are working documents of the Internet Engineering 32 Task Force (IETF). Note that other groups may also distribute 33 working documents as Internet-Drafts. The list of current Internet- 34 Drafts is at http://datatracker.ietf.org/drafts/current/. 36 Internet-Drafts are draft documents valid for a maximum of six months 37 and may be updated, replaced, or obsoleted by other documents at any 38 time. It is inappropriate to use Internet-Drafts as reference 39 material or to cite them other than as "work in progress." 41 This Internet-Draft will expire on January 8, 2015. 43 Copyright Notice 45 Copyright (c) 2014 IETF Trust and the persons identified as the 46 document authors. All rights reserved. 48 This document is subject to BCP 78 and the IETF Trust's Legal 49 Provisions Relating to IETF Documents 50 (http://trustee.ietf.org/license-info) in effect on the date of 51 publication of this document. Please review these documents 52 carefully, as they describe your rights and restrictions with respect 53 to this document. Code Components extracted from this document must 54 include Simplified BSD License text as described in Section 4.e of 55 the Trust Legal Provisions and are provided without warranty as 56 described in the Simplified BSD License. 58 This document may contain material from IETF Documents or IETF 59 Contributions published or made publicly available before November 60 10, 2008. The person(s) controlling the copyright in some of this 61 material may not have granted the IETF Trust the right to allow 62 modifications of such material outside the IETF Standards Process. 63 Without obtaining an adequate license from the person(s) controlling 64 the copyright in such materials, this document may not be modified 65 outside the IETF Standards Process, and derivative works of it may 66 not be created outside the IETF Standards Process, except to format 67 it for publication as an RFC or to translate it into languages other 68 than English. 70 Table of Contents 72 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 73 2. Addressing Architecture Update . . . . . . . . . . . . . . . 3 74 3. Flag Bits: A Recommendation . . . . . . . . . . . . . . . . . 3 75 4. RFC Updates . . . . . . . . . . . . . . . . . . . . . . . . . 4 76 4.1. RFC 3306 . . . . . . . . . . . . . . . . . . . . . . . . 4 77 4.1.1. Update #1 . . . . . . . . . . . . . . . . . . . . . . 4 78 4.1.2. Update #2 . . . . . . . . . . . . . . . . . . . . . . 5 79 4.2. RFC 3956 . . . . . . . . . . . . . . . . . . . . . . . . 6 80 4.2.1. Update #1 . . . . . . . . . . . . . . . . . . . . . . 6 81 4.2.2. Update #2 . . . . . . . . . . . . . . . . . . . . . . 7 82 4.2.3. Update #3 . . . . . . . . . . . . . . . . . . . . . . 8 83 4.2.4. Update #4 . . . . . . . . . . . . . . . . . . . . . . 8 84 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 85 6. Security Considerations . . . . . . . . . . . . . . . . . . . 9 86 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 87 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 88 8.1. Normative References . . . . . . . . . . . . . . . . . . 9 89 8.2. Informative References . . . . . . . . . . . . . . . . . 9 90 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 92 1. Introduction 94 This document updates the IPv6 addressing architecture [RFC4291] by 95 re-defining reserved bits as generic flag bits (Section 2). The 96 document provides also some clarifications related to the use of 97 these flag bits (Section 3). 99 This document updates [RFC3956], [RFC3306], and [RFC4291]. These 100 updates are logical consequences of the recommendation on the flag 101 bits (Section 3). 103 Textual representation of IPv6 addresses included in the RFC updates 104 follows the recommendation in [RFC5952]. 106 2. Addressing Architecture Update 108 Bits 17-20 of a multicast address, where bit 1 is the most 109 significant bit, are defined in [RFC3956] and [RFC3306] as reserved 110 bits. This document defines these bits as generic flag bits so that 111 they apply to any multicast address. These bits are referred to as 112 ff2 (flag field 2) while the flgs bits in [RFC4291][RFC3956] are 113 renamed to ff1 (flag field 1). 115 Within this document, flag bits denote both ff1 and ff2. 117 Defining the bits 17-20 as flags for all IPv6 multicast addresses 118 allows addresses to be treated in a more uniform and generic way, and 119 allows for these bits to be defined in the future for different 120 purposes, irrespective of the specific type of multicast address. 121 For the record, this design choice was initially triggered by 122 specification in [I-D.ietf-mboned-64-multicast-address-format] which 123 proposed for associating a meaning with one of the reserved bits. 124 Moreover, [I-D.ietf-mboned-64-multicast-address-format] considered 125 also the use of the last remaining flag in ff1 but that approach was 126 abandoned because it is not clear at this stage whether there is 127 other usage scenarios of the flag. 129 Section 4 specifies the updated structure of the addressing 130 architecture. 132 Further specification documents may define a meaning for these flag 133 bits. 135 3. Flag Bits: A Recommendation 137 Some implementations and specification documents do not treat the 138 flag bits as separate bits but tend to use their combined value as a 139 4-bit integer. This practice is a hurdle for assigning a meaning to 140 the remaining flag bits. Below are listed some examples for 141 illustration purposes: 143 o the reading of [RFC3306] may lead to conclude that ff3x::/32 is 144 the only allowed Source Specific Multicast (SSM) IPv6 prefix 145 block. 147 o [RFC3956] states only ff70::/12 applies to Embedded-RP. 148 Particularly, implementations should not treat the fff0::/12 range 149 as Embedded-RP. 151 To avoid such confusion and to unambiguously associate a meaning with 152 the remaining flags, the following requirement is made: 154 Implementations MUST treat flag bits as separate bits. 156 4. RFC Updates 158 4.1. RFC 3306 160 4.1.1. Update #1 162 This document changes Section 4 of [RFC3306] as follows: 164 OLD: 166 | 8 | 4 | 4 | 8 | 8 | 64 | 32 | 167 +--------+----+----+--------+--------+----------------+----------+ 168 |11111111|flgs|scop|reserved| plen | network prefix | group ID | 169 +--------+----+----+--------+--------+----------------+----------+ 171 +-+-+-+-+ 172 flgs is a set of 4 flags: |0|0|P|T| 173 +-+-+-+-+ 175 o P = 0 indicates a multicast address that is not assigned 176 based on the network prefix. This indicates a multicast 177 address as defined in [ADDRARCH]. 179 o P = 1 indicates a multicast address that is assigned based 180 on the network prefix. 182 o If P = 1, T MUST be set to 1, otherwise the setting of the T 183 bit is defined in Section 2.7 of [ADDRARCH]. 185 The reserved field MUST be zero. 187 Note: [ADDRARCH] is a reference listed in [RFC3306]. [ADDRARCH] 188 has been since obsoleted by [RFC4291]. 190 NEW: 192 | 8 | 4 | 4 | 4 | 4 | 8 | 64 | 32 | 193 +--------+----+----+----+----+--------+----------------+----------+ 194 |11111111|ff1 |scop|ff2 |rsvd| plen | network prefix | group ID | 195 +--------+----+----+----+----+--------+----------------+----------+ 197 +-+-+-+-+ 198 ff1 (flag field 1) is a set of 4 flags: |X|Y|P|T| 199 +-+-+-+-+ 201 X and Y may each be set to 0 or 1. 203 o P = 0 indicates a multicast address that is not assigned 204 based on the network prefix. This indicates a multicast 205 address as defined in [RFC4291]. 207 o P = 1 indicates a multicast address that is assigned based 208 on the network prefix. 210 o If P = 1, T MUST be set to 1, otherwise the setting of the T 211 bit is defined in Section 2.7 of [RFC4291]. 213 +-+-+-+-+ 214 ff2 (flag field 2) is a set of 4 flags: |r|r|r|r| 215 +-+-+-+-+ 217 where "rrrr" are for future assignment as additional flag bits. 218 r bits MUST each be set to 0. 220 Flag bits denote both ff1 and ff2. 222 4.1.2. Update #2 224 This document changes Section 6 of [RFC3306] as follows: 226 OLD: 228 These settings create an SSM range of FF3x::/32 (where 'x' is any 229 valid scope value). The source address field in the IPv6 header 230 identifies the owner of the multicast address. 232 NEW: 234 If the flag bits in ff1 are set to 0011, these settings create an 235 SSM range of ff3x::/32 (where 'x' is any valid scope value). The 236 source address field in the IPv6 header identifies the owner of 237 the multicast address. ff3x::/32 is not the only allowed SSM 238 prefix range. For example if the most significant flag bit in ff1 239 is set, then we would get the SSM range ffbx::/32. 241 4.2. RFC 3956 243 4.2.1. Update #1 245 This document changes Section 2 of [RFC3956] as follows: 247 OLD: 249 As described in [RFC3306], the multicast address format is as 250 follows: 252 | 8 | 4 | 4 | 8 | 8 | 64 | 32 | 253 +--------+----+----+--------+----+----------------+----------+ 254 |11111111|flgs|scop|reserved|plen| network prefix | group ID | 255 +--------+----+----+--------+----+----------------+----------+ 257 Where flgs are "0011". (The first two bits are as yet undefined, 258 sent as zero and ignored on receipt.) 260 NEW: 262 The multicast address format is as 263 follows: 265 | 8 | 4 | 4 | 4 | 4 | 8 | 64 | 32 | 266 +--------+----+----+----+----+----+----------------+----------+ 267 |11111111|ff1 |scop|ff2 |rsvd|plen| network prefix | group ID | 268 +--------+----+----+----+----+----+----------------+----------+ 270 +-+-+-+-+ 271 ff1 (flag field 1) is a set of four flags: |X|R|P|T| 272 +-+-+-+-+ 273 X may be set to 0 or 1. 275 +-+-+-+-+ 276 ff2 (flag field 2) is a set of 4 flags: |r|r|r|r| 277 +-+-+-+-+ 278 where "rrrr" are for future assignment as additional flag bits. 279 r bits MUST each be set to 0. 281 Flag bits denote both ff1 and ff2. 283 4.2.2. Update #2 285 This document changes Section 3 of [RFC3956] as follows: 287 OLD: 289 | 8 | 4 | 4 | 4 | 4 | 8 | 64 | 32 | 290 +--------+----+----+----+----+----+----------------+----------+ 291 |11111111|flgs|scop|rsvd|RIID|plen| network prefix | group ID | 292 +--------+----+----+----+----+----+----------------+----------+ 293 +-+-+-+-+ 294 flgs is a set of four flags: |0|R|P|T| 295 +-+-+-+-+ 297 When the highest-order bit is 0, R = 1 indicates a multicast address 298 that embeds the address on the RP. Then P MUST be set to 1, and 299 consequently T MUST be set to 1, as specified in [RFC3306]. In 300 effect, this implies the prefix FF70::/12. In this case, the last 4 301 bits of the previously reserved field are interpreted as embedding 302 the RP interface ID, as specified in this memo. 304 The behavior is unspecified if P or T is not set to 1, as then the 305 prefix would not be FF70::/12. Likewise, the encoding and the 306 protocol mode used when the two high-order bits in "flgs" are set to 307 11 ("FFF0::/12") is intentionally unspecified until such time that 308 the highest-order bit is defined. Without further IETF 309 specification, implementations SHOULD NOT treat the FFF0::/12 range 310 as Embedded-RP. 312 NEW: 314 | 8 | 4 | 4 | 4 | 4 | 8 | 64 | 32 | 315 +--------+----+----+----+----+----+----------------+----------+ 316 |11111111|ff1 |scop|ff2 |RIID|plen| network prefix | group ID | 317 +--------+----+----+----+----+----+----------------+----------+ 318 +-+-+-+-+ 319 ff1 is a set of four flags: |X|R|P|T| 320 +-+-+-+-+ 321 X may be set to 0 or 1. 323 R = 1 indicates a multicast address that embeds the address of the 324 RP. Then P MUST be set to 1, and consequently T MUST be set to 1, 325 according to [RFC3306], as this is a special case of unicast-prefix 326 based addresses. This implies that, for instance, prefixes ff70::/12 327 and fff0::/12 are embedded RP prefixes. The behavior is unspecified 328 if P or T is not set to 1. When the R-bit is set, the last 4 bits of 329 the field that were reserved in [RFC3306] are interpreted as 330 embedding the RP interface ID, as specified in this memo. 332 4.2.3. Update #3 334 This document changes Section 4 of [RFC3956] as follows: 336 OLD: 338 It MUST be a multicast address with "flgs" set to 0111, that is, 339 to be of the prefix FF70::/12, 341 NEW: 343 It MUST be a multicast address with R-bit set to 1. 345 It MUST have P-bit and T-bit both set to 1 when using the 346 embedding in this document as it is a prefix-based address. 348 4.2.4. Update #4 350 This document changes Section 7.1 of [RFC3956] as follows: 352 OLD: 354 To avoid loops and inconsistencies, for addresses in the range 355 FF70::/12, the Embedded-RP mapping MUST be considered the longest 356 possible match and higher priority than any other mechanism. 358 NEW: 360 To avoid loops and inconsistencies, for addresses with R-bit set 361 to 1, the Embedded-RP mapping MUST be considered the longest 362 possible match and higher priority than any other mechanism. 364 5. IANA Considerations 366 This document does not require any action from IANA. 368 6. Security Considerations 370 The same security considerations as those discussed in [RFC3956], 371 [RFC3306] and [RFC4291] are to be taken into account. 373 7. Acknowledgements 375 Special thanks to Brian Haberman for the discussions prior to the 376 publication of this document. 378 Many thanks to Jouni Korhonen, Tatuya Jinmei, Charlie Kaufman, and 379 Ben Campbell for their review. 381 8. References 383 8.1. Normative References 385 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 386 Requirement Levels", BCP 14, RFC 2119, March 1997. 388 [RFC3306] Haberman, B. and D. Thaler, "Unicast-Prefix-based IPv6 389 Multicast Addresses", RFC 3306, August 2002. 391 [RFC3956] Savola, P. and B. Haberman, "Embedding the Rendezvous 392 Point (RP) Address in an IPv6 Multicast Address", RFC 393 3956, November 2004. 395 [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing 396 Architecture", RFC 4291, February 2006. 398 [RFC5952] Kawamura, S. and M. Kawashima, "A Recommendation for IPv6 399 Address Text Representation", RFC 5952, August 2010. 401 8.2. Informative References 403 [I-D.ietf-mboned-64-multicast-address-format] 404 Boucadair, M., Qin, J., Lee, Y., Venaas, S., Li, X., and 405 M. Xu, "IPv6 Multicast Address With Embedded IPv4 406 Multicast Address", draft-ietf-mboned-64-multicast- 407 address-format-05 (work in progress), April 2013. 409 Authors' Addresses 411 Mohamed Boucadair 412 France Telecom 413 Rennes 35000 414 France 416 Email: mohamed.boucadair@orange.com 418 Stig Venaas 419 Cisco 420 USA 422 Email: stig@cisco.com