idnits 2.17.1 draft-wang-bier-rh-bier-05.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 == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (March 21, 2022) is 767 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) == Outdated reference: A later version (-07) exists of draft-chen-pim-mrh6-01 == Outdated reference: A later version (-09) exists of draft-ietf-bier-bierin6-04 Summary: 0 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 BIER Working Group W. Wang 3 Internet-Draft A. Wang 4 Intended status: Standards Track China Telecom 5 Expires: September 22, 2022 H. Chen 6 Futurewei 7 G. Mishra 8 Verizon Inc. 9 B. Xu 10 Huawei Technologies (2012Lab) 11 March 21, 2022 13 Routing Header Based BIER Information Encapsulation 14 draft-wang-bier-rh-bier-05 16 Abstract 18 This draft proposes one new encapsulation schema of Bit Index 19 Explicit Replication (BIER) information to transfer the multicast 20 packets within the IPv6 network. By using a new type of IPv6 Routing 21 Header to forward the packet, the original source address and 22 destination address of the multicast packet is kept unchanged along 23 the forwarding path. Such encapsulation schema can make full use of 24 the existing IPv6 quality assurance solutions to provide high-quality 25 multicast service. 27 Status of This Memo 29 This Internet-Draft is submitted in full conformance with the 30 provisions of BCP 78 and BCP 79. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF). Note that other groups may also distribute 34 working documents as Internet-Drafts. The list of current Internet- 35 Drafts is at https://datatracker.ietf.org/drafts/current/. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 This Internet-Draft will expire on September 22, 2022. 44 Copyright Notice 46 Copyright (c) 2022 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents 51 (https://trustee.ietf.org/license-info) in effect on the date of 52 publication of this document. Please review these documents 53 carefully, as they describe your rights and restrictions with respect 54 to this document. Code Components extracted from this document must 55 include Simplified BSD License text as described in Section 4.e of 56 the Trust Legal Provisions and are provided without warranty as 57 described in the Simplified BSD License. 59 Table of Contents 61 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 62 2. Conventions used in this document . . . . . . . . . . . . . . 3 63 3. BIER Routing Header . . . . . . . . . . . . . . . . . . . . . 3 64 4. Multicast Packet Forwarding Procedures . . . . . . . . . . . 4 65 4.1. All nodes in BIER domain support BIER Routing Header . . 5 66 4.2. Some nodes in BIER domain do not support BIER Routing 67 Header . . . . . . . . . . . . . . . . . . . . . . . . . 7 68 5. Security Considerations . . . . . . . . . . . . . . . . . . . 9 69 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 70 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 71 7.1. Normative References . . . . . . . . . . . . . . . . . . 9 72 7.2. Informative References . . . . . . . . . . . . . . . . . 9 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 75 1. Introduction 77 Bit Index Explicit Replication (BIER) is a new multicast technology 78 based on IPv6 defined in [RFC8279]. In BIER domain, the set of 79 destination nodes of multicast message is mapped into a BitString and 80 encapsulated into the BIER header. The position of each bit in the 81 BitString represents an BFER. Compared with the traditional 82 multicast technologies, the nodes in BIER domain do not need to 83 maintain a multicast tree and keep the multicast flow state for each 84 multicast flow. 86 Currently, there are two methods for encapsulating BIER information 87 based on IPv6 in IETF: BIERin6([I-D.ietf-bier-bierin6]) and 88 BIERv6([I-D.xie-bier-ipv6-encapsulation]). 90 BIERin6 carries BIER information by defining a new IPv6 next header 91 type. During the forwarding process, the source address and 92 destination address in the header will be changed. 94 BIERv6 carries bier related information by defining an new type of 95 destination options header (i.e. bier option). The source address in 96 the header remains unchanged but the destination address will be 97 changed along the forwarding path. 99 The differences between the above two BIER encapsulation and 100 forwarding schemes are unfavorable for the development of BIER and 101 its derivatives. In addition, when there is error in the forward 102 process of the multicast packet, the change of source address and 103 destination address during transmission will increase the difficulty 104 of fault location and traceability. 106 This draft proposes a BIER information transmission scheme without 107 changing the multicast source and destination addresses in the outer 108 IPv6 header. The relevant BIER information is encapsulated within 109 the newly defined IPv6 Routing Header type, each intermediate BIER 110 router will route the multicast packet based on the BitString 111 information and its associated BIFT. The multicast source and 112 destination address are not changed along the forwarding path. 114 The characteristics of such schema are helpful to the rapid fault 115 location and traceability, and can make full use of the existing IPv6 116 quality assurance technologies to provide high-quality multicast 117 service. 119 2. Conventions used in this document 121 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 122 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 123 document are to be interpreted as described in [RFC2119] . 125 3. BIER Routing Header 127 One new type of IPv6 Routing Header is defined according to 128 [RFC8200]. The message format is shown in Figure 1. 130 0 1 2 3 131 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 132 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 133 | Next Header | Hdr Ext Len | Routing Type | BIER-TE Algo | 134 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 135 | BIER-TE Algorithm specified part | 136 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 138 Figure 1: The format of BIER Routing Header 140 Where: 142 o Next Header (8 bits): indicating the message header type 143 immediately after the Routing Header. 145 o HDR Ext Len (8 bits): indicating the length of the Routing Header. 147 o Routing Type (8 bits): TBD. Identifying the newly defined Routing 148 Header to encode BIER information. 150 o BIER-TE Algo (8 bits): indicating the BIER-TE Algorithm for RH- 151 BIER packets. Different values of this field refer to different 152 BIER-TE Algorithm: 154 * Value 0: reserved. 156 * Value 1: IGP 158 * Value 2: CGM2 (see [I-D.eckert-bier-cgm2-rbs]) 160 * Value 3: MRH (see [I-D.chen-pim-mrh6]) 162 * Value 4-127: Expert Reviews 164 * Value 128-255: Flexible Algorithms 166 o BIER-TE Algorithm specified part (variable): the encoding of this 167 part depends on the value of BIER-TE Algo field: 169 * Value 1: The BIER-TE Algorithm is IGP, the encoding format of 170 this part is described in [RFC8296]. 172 * Value 2: The BIER-TE Algorithm is CGM2, the encoding format of 173 this part is described in [I-D.eckert-bier-cgm2-rbs]. 175 * Value 3: The BIER-TE Algorithm is MRH6, the encoding format of 176 this part is described in [I-D.chen-pim-mrh6]. 178 4. Multicast Packet Forwarding Procedures 180 Based on the newly defined BIER Routing Header, the nodes support 181 BIER Routing Header will perform the following steps to forward the 182 multicast packets: 184 1) When a BFIR receive a multicast packet, it will find out the 185 destination address and RD that relate to the source interface of the 186 packet. BFIR looks up its End.MVPN mapping table to find the 187 associated End.MVPN, and encapsulate a IPv6 Header with BIER Routing 188 Header. The payload is user data, the source address is the IPv6 189 address of BFIR, and destination address is End.MVPN. BitString in 190 BIER Routing Header indicates the BFERs that want to receives such 191 multicast packet. 193 2) BFIR checks whether there is BIFT corresponding to the BIFT-id 194 locally. If not, it will discard the packet; otherwise, it will 195 check whether the direct-connected node support BIER Routing Header. 196 If the direct-connected node supports BIER Routing Header, proceeding 197 to step 3). If the direct-connected node doesn't support BIER 198 Routing Header, proceeding to step 2.1) . 200 2.1) BFIR Calculates the IPv6 address of next hop that support BIER 201 Routing Header. 203 2.2) Encapsulating an outer IPv6 Header to the multicast packet. The 204 calculated IPv6 address is used as the destination address of the 205 outer IPv6 Header, and its own IPv6 address is used as the source 206 address of the outer IPv6 Header. BitString will not be changed. 208 2.3) Sending the encapsulated packet to the direct-connected node, 209 the node will perform normal IPv6 forwarding according to the outer 210 IPv6 Header. 212 3) Performing the normal BIER forwarding process as described in 213 [RFC8279]. 215 For a BFR, it performs as described in Section 4.2. 217 The detail procedures for forwarding the multicast packets based on 218 the newly defined Routing Header are described in the following 219 sections. 221 4.1. All nodes in BIER domain support BIER Routing Header 223 +---+ 224 +-----------+ B +----------+ 225 | +---+ | 226 | 0:01000000 | 227 | | 228 | | 229 | | 230 +-+-+ +-+-+ (Packet 2) +---+ (Packet 3)+---+ 231 | A |0:10000000 0:00100000| C +------------+ E +-----------+ F | 232 +-+-+ +-+-+ +---+ +---+ 233 | | 0:00001000 0:00000100 234 | | 235 | | 236 | | 237 | 0:00010000 | 238 | +---+ | 239 +-----------+ D +----------+ 240 (Packet 1) +---+ 241 Packet 1 242 +------------------------------------+ 243 IPv6 | IPv6 Address of A | 244 Header +------------------------------------+ 245 with | IPv6 Multicast Destination Address | 246 BIER +------------------------------------+ 247 Routing| BIER RH(BitString = 00101100) | 248 Header +------------------------------------+ 249 | Original multicast packet | 250 +------------------------------------+ 252 Packet 2 253 +------------------------------------+ 254 IPv6 | IPv6 Address of A | 255 Header +------------------------------------+ 256 with | IPv6 Multicast Destination Address | 257 BIER +------------------------------------+ 258 Routing| BIER RH(BitString = 00001100) | 259 Header +------------------------------------+ 260 | Original multicast packet | 261 +------------------------------------+ 263 Packet 3 264 +------------------------------------+ 265 IPv6 | IPv6 Address of A | 266 Header +------------------------------------+ 267 with | IPv6 Multicast Destination Address | 268 BIER +------------------------------------+ 269 Routing| BIER RH(BitString = 00000100) | 270 Header +------------------------------------+ 271 | Original multicast packet | 272 +------------------------------------+ 274 Figure 2: All nodes in BIER domain support BIER Routing Header 276 The topology is shown in Figure 2, node A-F support BIER Routing 277 Header. The packet need to be transmitted from A to F. The changes 278 of the Routing Header have been given in Figure 2. 280 1). Node A is BFIR, when it receives a multicast packet, it will 281 encapsulate a IPv6 Header with BIER Routing Header to the packet. 283 2). Node A checks whether there is BIFT corresponding to the BIFT-id 284 locally. If not, discarding the packet; otherwise, forwarding the 285 packet according to the BIFT related to the BIFT-id. 287 3). Node D-E repeat the step 2). 289 4). Node F looks up the associated table and submits the packet to 290 the new multicast downstreams. 292 During the forwarding procedures, the source & destination address in 293 IPv6 header are not changed, only the BitString in BIER Routing 294 Header is updated. 296 4.2. Some nodes in BIER domain do not support BIER Routing Header 298 +---+ 299 +-----------+ B +-----------+ 300 | +---+ | 301 | 0:01000000 | 302 | | 303 | | 304 | | 305 +-+-+ +-+-+ +---+ (Packet 3) +---+ 306 | A |0:10000000 | C +------------+ E +------------+ F | 307 +-+-+ +-+-+ +---+ +---+ 308 | | 0:00001000 0:00000100 309 | | 310 | | 311 | | 312 | 0:00010000 | 313 | +---+ | 314 +-----------+ D +-----------+ 315 (Packet 1) +---+ (Packet 2) 317 Packet 1 318 +------------------------------------+ 319 IPv6 | IPv6 Address of A | 320 Header +------------------------------------+ 321 with | IPv6 Multicast Destination Address | 322 BIER +------------------------------------+ 323 Routing| BIER RH(BitString = 00001100) | 324 Header +------------------------------------+ 325 | Original multicast packet | 326 +------------------------------------+ 328 Packet 2 329 +------------------------------------+ 330 Outer | Source IP Address = D | 331 IPv6 +------------------------------------+ 332 Header | Destination IP Address = E | 333 +------------------------------------+ 334 Inner | IPv6 Address of A | 335 IPv6 +------------------------------------+ 337 Header | IPv6 Multicast Destination Address | 338 with +------------------------------------+ 339 BIER | BIER RH(BitString = 00001100) | 340 Routing+------------------------------------+ 341 Header | Original multicast packet | 342 +------------------------------------+ 344 Packet 3 345 +-------------------------------------+ 346 IPv6 | IPv6 Address of A | 347 Header +-------------------------------------+ 348 with | IPv6 Multicast Destination Address | 349 BIER +-------------------------------------+ 350 Routing| BIER RH(BitString = 00000100) | 351 Header +-------------------------------------+ 352 | Original multicast packet | 353 +-------------------------------------+ 355 Figure 3: Some nodes in BIER domain do not support BIER Routing Header 357 The topology is shown in Figure 3, all nodes expect node C support 358 BIER Routing Header. The packet need to be transmitted from A to F. 359 The change of the Header has been given in the Figure 3. 361 1). After receiving a multicast packet, node A encapsulates a IPv6 362 Header with BIER Routing Header to it, and forwards the packet to 363 node D according to the BIFT. 365 2). Node D calculates the IPv6 address of next hop node(Node E) that 366 supports BIER Routing Header, and encapsulates an outer IPv6 Header 367 to the packet. The source IPv6 address is the IPv6 address of 368 itself, and the destination IPv6 address is the IPv6 address of node 369 E. Then, sending the packet to node C. 371 3). Node C performs normal IPv6 forwarding according to the outer 372 IPv6 header and sends the packet to node E. 374 4). Node E decapsulates the outer IPv6 header and forwards the 375 packet according to the BIFT to node F. 377 5). Node F looks up the associated table and submits the packet to 378 the new multicast downstreams. 380 In the forwarding procedures, the source address and destination 381 address in the Inner IPv6 Header are not changed, only the BitString 382 in BIER Routing Header is updated. 384 5. Security Considerations 386 TBD 388 6. IANA Considerations 390 This document defines a new type of IPv6 Routing Header - BIER 391 Routing Header. The code point is from the "Internet Protocol 392 Version 6 (IPv6) Parameters - Routing Types". It is recommended to 393 set the code point of BIER Routing Header to 7. 395 7. References 397 7.1. Normative References 399 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 400 Requirement Levels", BCP 14, RFC 2119, 401 DOI 10.17487/RFC2119, March 1997, 402 . 404 [RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6 405 (IPv6) Specification", STD 86, RFC 8200, 406 DOI 10.17487/RFC8200, July 2017, 407 . 409 [RFC8279] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., 410 Przygienda, T., and S. Aldrin, "Multicast Using Bit Index 411 Explicit Replication (BIER)", RFC 8279, 412 DOI 10.17487/RFC8279, November 2017, 413 . 415 [RFC8296] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., 416 Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation 417 for Bit Index Explicit Replication (BIER) in MPLS and Non- 418 MPLS Networks", RFC 8296, DOI 10.17487/RFC8296, January 419 2018, . 421 7.2. Informative References 423 [I-D.chen-pim-mrh6] 424 Chen, H., McBride, M., Fan, Y., Li, Z., Geng, X., Toy, M., 425 Mishra, G. S., Liu, Y., Wang, A., Liu, L., and X. Liu, 426 "Multicast using Multicast Routing Header", draft-chen- 427 pim-mrh6-01 (work in progress), March 2022. 429 [I-D.eckert-bier-cgm2-rbs] 430 Eckert, T. and B. (. Xu, "Carrier Grade Minimalist 431 Multicast (CGM2) using Bit Index Explicit Replication 432 (BIER) with Recursive BitString Structure (RBS) 433 Addresses", draft-eckert-bier-cgm2-rbs-01 (work in 434 progress), February 2022. 436 [I-D.ietf-bier-bierin6] 437 Zhang, Z., Zhang, Z., Wijnands, I., Mishra, M., Bidgoli, 438 H., and G. Mishra, "Supporting BIER in IPv6 Networks 439 (BIERin6)", draft-ietf-bier-bierin6-04 (work in progress), 440 March 2022. 442 [I-D.xie-bier-ipv6-encapsulation] 443 Xie, J., Geng, L., McBride, M., Asati, R., Dhanaraj, S., 444 Zhu, Y., Qin, Z., Shin, M., Mishra, G., and X. Geng, 445 "Encapsulation for BIER in Non-MPLS IPv6 Networks", draft- 446 xie-bier-ipv6-encapsulation-10 (work in progress), 447 February 2021. 449 Authors' Addresses 451 Wei Wang 452 China Telecom 453 Beiqijia Town, Changping District 454 Beijing, Beijing 102209 455 China 457 Email: weiwang94@foxmail.com 459 Aijun Wang 460 China Telecom 461 Beiqijia Town, Changping District 462 Beijing, Beijing 102209 463 China 465 Email: wangaj3@chinatelecom.cn 467 Huaimo Chen 468 Futurewei 469 Beiqijia Town, Changping District 470 Boston, MA 471 USA 473 Email: Huaimo.chen@futurewei.com 474 Gyan S. Mishra 475 Verizon Inc. 476 13101 Columbia Pike 477 Silver Spring MD 20904 478 United States of America 480 Phone: 301 502-1347 481 Email: gyan.s.mishra@verizon.com 483 Bing (Robin) Xu 484 Huawei Technologies (2012Lab) 485 Huawei Building, No.156 Beiqing Rd. 486 Beijing, Beijing 100095 487 China 489 Email: bing.xu@huawei.com