idnits 2.17.00 (12 Aug 2021) /tmp/idnits53686/draft-chen-bier-te-lan-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 : ---------------------------------------------------------------------------- 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 (13 November 2021) is 188 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) -- Looks like a reference, but probably isn't: '1' on line 131 -- Looks like a reference, but probably isn't: '65535' on line 131 == Unused Reference: 'RFC5226' is defined on line 844, but no explicit reference was found in the text == Unused Reference: 'RFC5250' is defined on line 849, but no explicit reference was found in the text == Unused Reference: 'RFC5286' is defined on line 853, but no explicit reference was found in the text == Unused Reference: 'RFC5714' is defined on line 858, but no explicit reference was found in the text == Unused Reference: 'RFC5880' is defined on line 862, but no explicit reference was found in the text == Unused Reference: 'RFC7356' is defined on line 866, but no explicit reference was found in the text == Unused Reference: 'RFC7490' is defined on line 871, but no explicit reference was found in the text == Unused Reference: 'RFC7684' is defined on line 876, but no explicit reference was found in the text == Unused Reference: 'RFC7770' is defined on line 881, but no explicit reference was found in the text == Unused Reference: 'RFC8279' is defined on line 890, but no explicit reference was found in the text == Unused Reference: 'RFC8556' is defined on line 896, but no explicit reference was found in the text == Unused Reference: 'I-D.eckert-bier-te-frr' is defined on line 903, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-rtgwg-segment-routing-ti-lfa' is defined on line 910, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-spring-segment-protection-sr-te-paths' is defined on line 918, but no explicit reference was found in the text == Unused Reference: 'RFC8296' is defined on line 926, but no explicit reference was found in the text == Unused Reference: 'RFC8401' is defined on line 932, but no explicit reference was found in the text == Unused Reference: 'RFC8444' is defined on line 937, but no explicit reference was found in the text == Outdated reference: A later version (-13) exists of draft-ietf-bier-te-arch-10 ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) ** Downref: Normative reference to an Informational RFC: RFC 5714 == Outdated reference: A later version (-08) exists of draft-ietf-rtgwg-segment-routing-ti-lfa-07 == Outdated reference: A later version (-03) exists of draft-ietf-spring-segment-protection-sr-te-paths-01 Summary: 2 errors (**), 0 flaws (~~), 22 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group H. Chen 3 Internet-Draft M. McBride 4 Intended status: Standards Track Futurewei 5 Expires: 17 May 2022 A. Wang 6 China Telecom 7 G. Mishra 8 Verizon Inc. 9 L. Liu 10 Fujitsu 11 X. Liu 12 Volta Networks 13 13 November 2021 15 BIER-TE for Broadcast Link 16 draft-chen-bier-te-lan-01 18 Abstract 20 This document describes extensions to "Bit Index Explicit Replication 21 Traffic Engineering" (BIER-TE) for supporting LANs (i.e., broadcast 22 links). For a multicast packet with an explicit point-to-multipoint 23 (P2MP) path traversing LANs, the packet is replicated and forwarded 24 statelessly along the path. 26 Requirements Language 28 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 29 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 30 document are to be interpreted as described in [RFC2119] [RFC8174] 31 when, and only when, they appear in all capitals, as shown here. 33 Status of This Memo 35 This Internet-Draft is submitted in full conformance with the 36 provisions of BCP 78 and BCP 79. 38 Internet-Drafts are working documents of the Internet Engineering 39 Task Force (IETF). Note that other groups may also distribute 40 working documents as Internet-Drafts. The list of current Internet- 41 Drafts is at https://datatracker.ietf.org/drafts/current/. 43 Internet-Drafts are draft documents valid for a maximum of six months 44 and may be updated, replaced, or obsoleted by other documents at any 45 time. It is inappropriate to use Internet-Drafts as reference 46 material or to cite them other than as "work in progress." 48 This Internet-Draft will expire on 17 May 2022. 50 Copyright Notice 52 Copyright (c) 2021 IETF Trust and the persons identified as the 53 document authors. All rights reserved. 55 This document is subject to BCP 78 and the IETF Trust's Legal 56 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 57 license-info) in effect on the date of publication of this document. 58 Please review these documents carefully, as they describe your rights 59 and restrictions with respect to this document. Code Components 60 extracted from this document must include Simplified BSD License text 61 as described in Section 4.e of the Trust Legal Provisions and are 62 provided without warranty as described in the Simplified BSD License. 64 Table of Contents 66 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 67 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 68 2. Example Application of Current BIER-TE with LAN . . . . . . . 4 69 2.1. Example BIER-TE Topology with LAN . . . . . . . . . . . . 4 70 2.2. BIER-TE BIFT on BFR . . . . . . . . . . . . . . . . . . . 5 71 2.3. Example P2MP Path with LAN . . . . . . . . . . . . . . . 10 72 3. Improved BIER-TE with LAN . . . . . . . . . . . . . . . . . . 11 73 3.1. New BP Assignments for LAN . . . . . . . . . . . . . . . 11 74 3.2. Improved BIER-TE BIFT on BFR . . . . . . . . . . . . . . 13 75 3.3. Updated Forwarding Procedure . . . . . . . . . . . . . . 17 76 4. Example Application of Improved BIER-TE . . . . . . . . . . . 18 77 5. Security Considerations . . . . . . . . . . . . . . . . . . . 19 78 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 79 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20 80 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 81 8.1. Normative References . . . . . . . . . . . . . . . . . . 20 82 8.2. Informative References . . . . . . . . . . . . . . . . . 21 83 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 85 1. Introduction 87 [I-D.ietf-bier-te-arch] introduces Bit Index Explicit Replication 88 (BIER) Traffic/Tree Engineering (BIER-TE). It is an architecture for 89 per-packet stateless explicit point to multipoint (P2MP) multicast 90 path/tree. A Bit-Forwarding Router (BFR) in a BIER-TE domain has a 91 BIER-TE Bit Index Forwarding Table (BIFT). A BIER-TE BIFT on a BFR 92 comprises a forwarding entry for a BitPosition (BP) assigned to each 93 of the adjacencies of the BFR. If the BP represents a forward 94 connected adjacency, the forwarding entry for the BP forwards the 95 multicast packet with the BP to the directly connected BFR neighbor 96 of the adjacency. If the BP represents a BFER (i.e., egress node) or 97 say a local decap adjacency, the forwarding entry for the BP 98 decapsulates the multicast packet with the BP and passes a copy of 99 the payload of the packet to the packet's NextProto within the BFR. 101 In [I-D.ietf-bier-te-arch], for a LAN, the adjacency to each 102 neighboring BFR on the LAN is given a unique BitPosition. The 103 adjacency of this BitPosition is a forward connected adjacency 104 towards the BFR and this BitPosition is populated into the BIFT of 105 all the other BFRs on that LAN. This solution for a LAN does not 106 work in some cases. 108 For a packet with an explicit point-to-multipoint (P2MP) path, if the 109 path traverses some BFRs/nodes on a LAN, each of these BFRs/nodes on 110 the LAN may receive duplicated packets. Thus some of the egress 111 nodes will receive duplicated packets. 113 This document proposes a solution for LANs to resolve this issue. 114 For a packet with an explicit P2MP path traversing LANs (i.e., 115 broadcast links), the packet is replicated and forwarded statelessly 116 along the path. Each of the egress nodes of the path will not 117 receive any duplicated packet. 119 1.1. Terminology 121 BIER: Bit Index Explicit Replication. 123 BIER-TE: BIER Traffic Engineering. 125 BFR: Bit-Forwarding Router. 127 BFIR: Bit-Forwarding Ingress Router. 129 BFER: Bit-Forwarding Egress Router. 131 BFR-id: BFR Identifier. It is a number in the range [1,65535]. 133 BFR-NBR: BFR Neighbor. 135 BFR-prefix: An IP address (either IPv4 or IPv6) of a BFR. 137 BIRT: Bit Index Routing Table. It is a table that maps from the 138 BFR-id (in a particular sub-domain) of a BFER to the BFR-prefix 139 of that BFER, and to the BFR-NBR on the path to that BFER. 141 BIFT: Bit Index Forwarding Table. 143 IGP: Interior Gateway Protocol. 145 LSDB: Link State DataBase. 147 OSPF: Open Shortest Path First. 149 IS-IS: Intermediate System to Intermediate System. 151 2. Example Application of Current BIER-TE with LAN 153 This section illustrates an example application of the current BIER- 154 TE defined in [I-D.ietf-bier-te-arch] to the BIER-TE topology with 155 LAN in Figure 1. 157 2.1. Example BIER-TE Topology with LAN 159 An example BIER-TE topology with a LAN for a BIER-TE domain is shown 160 in Figure 1. It has 9 nodes/BFRs A, B, C, D, E, F, G, H and K. 161 Nodes/BFRs D, F, E, H, A and K are BFERs and have local decap 162 adjacency BitPositions (BPs for short) 1, 2, 3, 4, 5 and 6 163 respectively. For simplicity, these BPs are represented by 164 (SI:BitString), where SI = 0 and BitString is of 8 bits. BPs 1, 2, 165 3, 4, 5 and 6 are represented by 1 (0:00000001), 2 (0:00000010), 3 166 (0:00000100), 4 (0:00001000), 5 (0:00010000) and 6 (0:00100000) 167 respectively. 169 6 170 ( K ) 171 /14' 172 / 173 4' /13' | 4 174 /-----------( G )--------+ ( H ) 175 / 16' |________/ 176 / | 17' 177 /3' _________| 178 1' 2' / 6' /15' | 18' 179 ( A )------------( B )--------------( C ) +--------( D ) 180 5 7'\ 5' \11' | 1 181 \ \ LAN 182 \ \ 183 \8' 10' \12' 184 ( E )--------------( F ) 185 3 9' 2 187 Figure 1: Example BIER-TE Topology with BP to BFR on LAN 189 The BitPositions for the forward connected adjacencies are 190 represented by i', where i is from 1 to 18. In one option, they are 191 encoded as (n+i), where n is a power of 2 such as 32768. For 192 simplicity, these BitPositions are represented by (SI:BitString), 193 where SI = (6 + (i-1)/8) and BitString is of 8 bits. BitPositions i' 194 (i from 1 to 18) are represented by 1'(6:00000001), 2'(6:00000010), 195 3'(6:00000100), 4'(6:00001000), 5'(6:00010000), 6'(6:00100000), 196 7'(6:01000000), 8'(6:10000000), 9'(7:00000001), 10'(7:00000010), . . 197 . , 16'(7:10000000), 17'(8:00000001), 18'(8:00000010). 199 For a link between two nodes X and Y, there are two BitPositions for 200 two forward connected adjacencies. These two forward connected 201 adjacency BitPositions are assigned on nodes X and Y respectively. 202 The BitPosition assigned on X is the forward connected adjacency of 203 Y. The BitPosition assigned on Y is the forward connected adjacency 204 of X. 206 For example, for the link between nodes B and C in the figure, two 207 forward connected adjacency BitPositions 5' and 6' are assigned to 208 two ends of the link. BitPosition 5' is assigned on node B to B's 209 end of the link. It is the forward connected adjacency of node C. 210 BitPosition 6' is assigned on node C to C's end of the link. It is 211 the forward connected adjacency of node B. 213 For a LAN (i.e., broadcast link) connecting nodes X1, X2, ..., Xm, 214 there are m BitPositions for m forward connected adjacencies. These 215 m forward connected adjacency BitPositions are assigned on nodes X1, 216 X2, ..., Xm respectively. 218 For the LAN connecting 4 nodes C, G, H and D in the figure, 4 forward 219 connected adjacency BitPositions 15', 16', 17' and 18' are assigned 220 to C, G, H and D respectively. 222 2.2. BIER-TE BIFT on BFR 224 Every BFR in a BIER-TE domain/topology has a BIER-TE BIFT. This 225 section shows the BIER-TE BIFT on every BFR/node of the BIER-TE 226 topology with LAN in Figure 1. 228 For the BIER-TE topology in Figure 1, each of 9 nodes/BFRs A, B, C, 229 D, E, F, G, H and K has its BIER-TE BIFT for the topology. The BIFT 230 on a BFR comprises a forwarding entry for each of the adjacencies of 231 the BFR. 233 The BIER-TE BIFT on BFR A (i.e., node A) is shown in Figure 2. There 234 are two adjacencies of A. One is the forward connected adjacency 235 from A to B (represented by BP 2'); the other is the local decap 236 adjacency (represented by BP 5) for BFER (i.e., egress) A. The BIFT 237 on A has two forwarding entries. 239 +-----------------+--------------+------------+ 240 | Adjacency BP | Action | BFR-NBR | 241 | (SI:BitString) | | (Next Hop) | 242 +=================+==============+============+ 243 | 2'(6:00000010) | fw-connected | B | 244 +-----------------+--------------+------------+ 245 | 5 (0:00010000) | local-decap | | 246 +-----------------+--------------+------------+ 248 Figure 2: BIER-TE BIFT on BFR A 250 The 1st forwarding entry in the BIFT is for BitPosition 2', which is 251 the forward connected adjacency from A to B. For a multicast packet 252 with BitPosition 2', which indicates that the P2MP path in the packet 253 traverses the adjacency from A to B, the forwarding entry forwards 254 the packet to B along the link from A to B. 256 The 2nd forwarding entry in the BIFT locally decapsulates a multicast 257 packet with BitPosition 5 and passes a copy of the payload of the 258 packet to the packet's NextProto. It is for BitPosition 5, which is 259 the local decap adjacency for BFER (i.e., egress) A. For a multicast 260 packet with BitPosition 5, which indicates that the P2MP path in the 261 packet has node A as one of its destinations (i.e., egress nodes), 262 the forwarding entry decapsulates the packet and passes a copy of the 263 payload of the packet to the packet's NextProto within node A. 265 The BIER-TE BIFT on BFR B (i.e., node B) is shown in Figure 3. There 266 are four forward connected adjacencies of B. They are the forward 267 connected adjacencies from B to A (represented by BP 1'), B to G 268 (represented by BP 4'), B to C (represented by BP 6') and B to E 269 (represented by BP 8') respectively. The BIFT on B has four 270 forwarding entries for these adjacencies. 272 +----------------+--------------+------------+ 273 | Adjacency BP | Action | BFR-NBR | 274 | (SI:BitString) | | (Next Hop) | 275 +================+==============+============+ 276 | 1'(6:00000001) | fw-connected | A | 277 +----------------+--------------+------------+ 278 | 4'(6:00001000) | fw-connected | G | 279 +----------------+--------------+------------+ 280 | 6'(6:00100000) | fw-connected | C | 281 +----------------+--------------+------------+ 282 | 8'(6:10000000) | fw-connected | E | 283 +----------------+--------------+------------+ 285 Figure 3: BIER-TE BIFT on BFR B 287 The 1st forwarding entry in the BIFT is for BitPosition 1', which is 288 the forward connected adjacency from B to A. For a multicast packet 289 with BitPosition 1', which indicates that the P2MP path in the packet 290 traverses the adjacency from B to A, the forwarding entry forwards 291 the packet to A along the link from B to A. 293 The 2nd forwarding entry in the BIFT is for BitPosition 4', which is 294 the forward connected adjacency from B to G. For a multicast packet 295 with BitPosition 4', which indicates that the P2MP path in the packet 296 traverses the adjacency from B to G, the forwarding entry forwards 297 the packet to G along the link from B to G. 299 The 3rd forwarding entry in the BIFT is for BitPosition 6', which is 300 the forward connected adjacency from B to C. For a multicast packet 301 with BitPosition 6', which indicates that the P2MP path in the packet 302 traverses the adjacency from B to C, the forwarding entry forwards 303 the packet to C along the link from B to C. 305 The 4-th forwarding entry in the BIFT is for BitPosition 8', which is 306 the forward connected adjacency from B to E. For a multicast packet 307 with BitPosition 8', which indicates that the P2MP path in the packet 308 traverses the adjacency from B to E, the forwarding entry forwards 309 the packet to E along the link from B to E. 311 The BIER-TE BIFT on BFR C (i.e., node C) is shown in Figure 4. There 312 are five forward connected adjacencies of C. They are the forward 313 connected adjacencies from C to B (represented by BP 5'), C to F 314 (represented by BP 12'), C to G (represented by BP 14'), C to H 315 (represented by BP 15') and C to D (represented by BP 16') 316 respectively. The BIFT on C has five forwarding entries for these 317 adjacencies. 319 +-----------------+--------------+------------+ 320 | Adjacency BP | Action | BFR-NBR | 321 | (SI:BitString) | | (Next Hop) | 322 +=================+==============+============+ 323 | 5'(6:00010000) | fw-connected | B | 324 +-----------------+--------------+------------+ 325 | 12'(7:00001000) | fw-connected | F | 326 +-----------------+--------------+------------+ 327 | 16'(7:10000000) | fw-connected | G | 328 +-----------------+--------------+------------+ 329 | 17'(8:00000001) | fw-connected | H | 330 +-----------------+--------------+------------+ 331 | 18'(8:00000010) | fw-connected | D | 332 +-----------------+--------------+------------+ 333 Figure 4: BIER-TE BIFT on BFR C 335 The BIER-TE BIFT on BFR D (i.e., node D) is shown in Figure 5. There 336 are four adjacencies of D. Three of them are the forward connected 337 adjacencies from D to C (represented by BP 13'), D to G (represented 338 by BP 14') and D to H (represented by BP 15') respectively; the other 339 is the local decap adjacency (represented by BP 1) for BFER (i.e., 340 egress) D. The BIFT on D has four forwarding entries for these 341 adjacencies. 343 +-----------------+--------------+------------+ 344 | Adjacency BP | Action | BFR-NBR | 345 | (SI:BitString) | | (Next Hop) | 346 +=================+==============+============+ 347 | 15'(7:01000000) | fw-connected | C | 348 +-----------------+--------------+------------+ 349 | 16'(7:10000000) | fw-connected | G | 350 +-----------------+--------------+------------+ 351 | 17'(8:00000001) | fw-connected | H | 352 +-----------------+--------------+------------+ 353 | 1 (0:00000001) | local-decap | | 354 +-----------------+--------------+------------+ 356 Figure 5: BIER-TE BIFT on BFR D 358 The BIER-TE BIFT on BFR E (i.e., node E) is shown in Figure 6. There 359 are three adjacencies of E. Two of them are the forward connected 360 adjacencies from E to B (represented by BP 7') and E to F 361 (represented by BP 10') respectively; the other is the local decap 362 adjacency (represented by BP 3) for BFER (i.e., egress) E. The BIFT 363 on E has three forwarding entries for these adjacencies. 365 +-----------------+--------------+------------+ 366 | Adjacency BP | Action | BFR-NBR | 367 | (SI:BitString) | | (Next Hop) | 368 +=================+==============+============+ 369 | 7'(6:01000000) | fw-connected | B | 370 +-----------------+--------------+------------+ 371 | 10'(7:00000010) | fw-connected | F | 372 +-----------------+--------------+------------+ 373 | 3 (0:00000100) | local-decap | | 374 +-----------------+--------------+------------+ 376 Figure 6: BIER-TE BIFT on BFR E 378 The BIER-TE BIFT on BFR F (i.e., node F) is shown in Figure 7. There 379 are three adjacencies of F. Two of them are the forward connected 380 adjacencies from F to E (represented by BP 9') and F to C 381 (represented by BP 11') respectively; the other is the local decap 382 adjacency (represented by BP 2) for BFER (i.e., egress) F. The BIFT 383 on F has three forwarding entries for these adjacencies. 385 +-----------------+--------------+------------+ 386 | Adjacency BP | Action | BFR-NBR | 387 | (SI:BitString) | | (Next Hop) | 388 +=================+==============+============+ 389 | 9'(7:00000001) | fw-connected | E | 390 +-----------------+--------------+------------+ 391 | 11'(7:00000100) | fw-connected | C | 392 +-----------------+--------------+------------+ 393 | 2 (0:00000010) | local-decap | | 394 +-----------------+--------------+------------+ 396 Figure 7: BIER-TE BIFT on BFR F 398 The BIER-TE BIFT on BFR G (i.e., node G) is shown in Figure 8. There 399 are four forward connected adjacencies of G. They are the 400 adjacencies from G to B (represented by BP 3'), G to C (represented 401 by BP 13'), G to H (represented by BP 15') and G to D (represented by 402 BP 16') respectively. The BIFT on G has four forwarding entries for 403 these adjacencies. 405 +-----------------+--------------+------------+ 406 | Adjacency BP | Action | BFR-NBR | 407 | (SI:BitString) | | (Next Hop) | 408 +=================+==============+============+ 409 | 3'(6:00000100) | fw-connected | B | 410 +-----------------+--------------+------------+ 411 | 14'(7:00100000) | fw-connected | K | 412 +-----------------+--------------+------------+ 413 | 15'(7:01000000) | fw-connected | C | 414 +-----------------+--------------+------------+ 415 | 17'(8:00000001) | fw-connected | H | 416 +-----------------+--------------+------------+ 417 | 18'(8:00000010) | fw-connected | D | 418 +-----------------+--------------+------------+ 420 Figure 8: BIER-TE BIFT on BFR G 422 The BIER-TE BIFT on BFR H (i.e., node H) is shown in Figure 9. There 423 are four adjacencies of H. Three of them are the forward connected 424 adjacencies from H to C (represented by BP 13'), H to G (represented 425 by BP 14') and H to D (represented by BP 16') respectively; the other 426 is the local decap adjacency (represented by BP 4) for BFER (i.e., 427 egress) H. The BIFT on H has four forwarding entries for these 428 adjacencies. 430 +-----------------+--------------+------------+ 431 | Adjacency BP | Action | BFR-NBR | 432 | (SI:BitString) | | (Next Hop) | 433 +=================+==============+============+ 434 | 15'(7:01000000) | fw-connected | C | 435 +-----------------+--------------+------------+ 436 | 16'(7:10000000) | fw-connected | G | 437 +-----------------+--------------+------------+ 438 | 18'(8:00000010) | fw-connected | D | 439 +-----------------+--------------+------------+ 440 | 4 (0:00001000) | local-decap | | 441 +-----------------+--------------+------------+ 443 Figure 9: BIER-TE BIFT on BFR H 445 2.3. Example P2MP Path with LAN 447 This section presents the forwarding behaviors along an explicit P2MP 448 path in Figure 1 going through the LAN in the figure. The path is 449 from BFIR A to BFERs K, H and F 451 The explicit P2MP path traverses the link/adjacency from A to B 452 (indicated by BP 2'), the link/adjacency from B to G (indicated by BP 453 4') and the link/adjacency from B to C (indicated by BP 6'), the 454 link/adjacency from G to K (indicated by BP 14'), the link/adjacency 455 from G to H (indicated by BP 17'), and the link/adjacency from C to F 456 (indicated by BP 12'). This path is represented by {2', 4', 6', 12', 457 14', 17', 2, 4, 6}. The packet at A has this path. 459 For the packet with the P2MP path, A forwards the packet to B 460 according to the forwarding entry for BP 2' in its BIFT. 462 After receiving the packet from A, B forwards the packet to G and C 463 according to the forwarding entries for BPs 4' and 6' in B's BIFT 464 respectively. The packet received by G has path {12', 14', 17', 2, 465 4, 6}. The packet received by C has path {12', 14', 17', 2, 4, 6}. 467 After receiving the packet from B, G sends a copy of the packet to K 468 according to the forwarding entry for BP 14' in G's BIFT, and another 469 copy of the packet to H according to the forwarding entry for BP 17' 470 in G's BIFT. 472 After receiving the packet from B, C copies and sends the packet to H 473 and F according to the forwarding entries for BPs 17' and 12' in C's 474 BIFT respectively. 476 Egress node H of the P2MP path receives the duplicated packets. One 477 packet is from G, and the same copy is from C. 479 The solution proposed for LANs in this document resolve this issue. 480 For a packet with an explicit P2MP path traversing LANs (i.e., 481 broadcast links), the packet is replicated and forwarded statelessly 482 along the path. Each of the egress nodes of the path will not 483 receive any duplicated packet. 485 3. Improved BIER-TE with LAN 487 3.1. New BP Assignments for LAN 489 For all the nodes/BFRs attached to a LAN (i.e., broadcast link), it 490 is assumed that they are connected a pseudo node. In one 491 implementation, the pseudo node is the Designated Router (DR) of the 492 LAN in OSPF or the Designated Intermediate System (DIS) of the LAN in 493 IS-IS. 495 For the connection between the pseudo node and each of the nodes/BFRs 496 attached to a LAN, two BPs are assigned to it. One is for the 497 adjacency from the BFR to the pseudo node, the other is for the 498 adjacency from the pseudo node to the BFR. 500 The adjacency from a BFR to the pseudo node is called a LAN 501 adjacency. The adjacency from the pseudo node to a BFR is a forward 502 connected adjacency. 504 For example, suppose that the pseudo node for the LAN in Figure 1 is 505 Px. The BP assignments for the LAN (i.e., connections between Px and 506 BFRs C, G, H and D) are illustrated in Figure 10. 508 6 509 ( K ) 510 /14' 511 / 512 4' /13' | 4 513 /-----------( G )---------+ ( H ) 514 / 17' | ________/ 515 / 18'| /20' 19' 516 /3' _________ Px 517 1' 2' / 6' /15' 16' |22' 21' 518 ( A )------------( B )--------------( C ) +---------( D ) 519 5 7'\ 5' \11' 1 520 \ \ 521 \ \ 522 \8' 10' \12' 523 ( E )--------------( F ) 524 3 9' 2 526 Figure 10: Example BIER-TE Topology with BPs for LAN 528 The connection/adjacency from Px to C is assigned BP 15', and the 529 connection/adjacency from C to Px is assigned BP 16'. 531 The connection/adjacency from Px to G is assigned BP 17', and the 532 connection/adjacency from G to Px is assigned BP 18'. 534 The connection/adjacency from Px to H is assigned BP 19', and the 535 connection/adjacency from H to Px is assigned BP 20'. 537 The connection/adjacency from Px to D is assigned BP 21', and the 538 connection/adjacency from D to Px is assigned BP 22'. 540 In an alternative, all the nodes/BFRs attached to a LAN are assumed 541 fully connected each other (i.e., they are fully meshed). For a 542 connection between any two BFRs on the LAN, two forward connected 543 adjacencies are assigned to the two ends of the connection. 545 For example, there are four BFRs C, G, H and D attached to the LAN in 546 Figure 1. There are six connections among these four BFRs. They are 547 connections between C and G, C and H, C and D, G and H, G and D, H 548 and D. Twelve BPs are needed for these six connections. 550 In general, for n BFRs attached to a LAN, there are n*(n-1)/2 551 connections among these n BFRs and n*(n-1) BPs are needed for these 552 connections. This may not be scalable. But for this alternative, 553 the BIER-TE BIFT on a BFR needs not to be changed except for 554 considering the full mesh connections among the BFRs attached to a 555 LAN. 557 3.2. Improved BIER-TE BIFT on BFR 559 Each BFR in a BIER-TE domain has a BIER-TE BIFT. For a BFR not 560 attached to any LAN, the BIER-TE BIFT on the BFR is the same as 561 before. For a BFR attached to a LAN, its BIER-TE BIFT is changed for 562 considering the LAN. 564 For example, BFRs C, G, H and D are attached to a LAN in Figure 1. 565 The BIER-TE BIFT on each of these four BFRs is changed for the new BP 566 assignments for the LAN in Figure 10. 568 For a BFR attached to a LAN, suppose that the pseudo node for the LAN 569 is Px. The improved BIER-TE BIFT on the BFR comprises a forwarding 570 entry for the LAN adjacency from the BFR to Px and a secondary BIFT 571 for Px. The secondary BIFT for Px on the BFR contains a forwarding 572 entry for each of the forward connected adjacencies from Px to the 573 BFRs attached to the LAN except for the adjacency from Px to the BFR. 575 For example, the improved BIER-TE BIFT on BFR C is illustrated in 576 Figure 11. It comprises the forwarding entry for the LAN adjacency 577 from C to Px (indicated by BP 16') and the secondary BIFT for Px on 578 BFR C. The secondary BIFT contains three forwarding entries for 579 three forward connected adjacencies from Px to G (indicated by 17'), 580 Px to H (indicated by 19') and Px to D (indicated by 21') 581 respectively. 583 +-----------------+--------------+------------+ 584 | Adjacency BP | Action | BFR-NBR | 585 | (SI:BitString) | | (Next Hop) | 586 +=================+==============+============+ 587 | 17'(8:00000001) | fw-connected | G | 588 +-----------------+--------------+------------+ 589 | 19'(8:00000100) | fw-connected | H | 590 +-----------------+--------------+------------+ 591 | 21'(8:00010000) | fw-connected | D | 592 +-----------------+--------------+------------+ 593 Secondary BIFT for Px on BFR C 595 +-----------------+--------------+------------+ 596 | Adjacency BP | Action | BFR-NBR | 597 | (SI:BitString) | | (Next Hop) | 598 +=================+==============+============+ 599 | 5'(6:00010000) | fw-connected | B | 600 +-----------------+--------------+------------+ 601 | 12'(7:00001000) | fw-connected | F | 602 +-----------------+--------------+------------+ 603 | 16'(7:10000000) |lan-connected | Px | 604 +-----------------+--------------+------------+ 606 Figure 11: Improved BIER-TE BIFT on BFR C 608 The improved BIER-TE BIFT on BFR G is illustrated in Figure 12. It 609 comprises the forwarding entry for the LAN adjacency from G to Px 610 (indicated by BP 18') and the secondary BIFT for Px on BFR G. The 611 secondary BIFT contains three forwarding entries for three forward 612 connected adjacencies from Px to C (indicated by 15'), Px to H 613 (indicated by 19') and Px to D (indicated by 21') respectively. 615 +-----------------+--------------+------------+ 616 | Adjacency BP | Action | BFR-NBR | 617 | (SI:BitString) | | (Next Hop) | 618 +=================+==============+============+ 619 | 15'(7:01000000) | fw-connected | C | 620 +-----------------+--------------+------------+ 621 | 19'(8:00000100) | fw-connected | H | 622 +-----------------+--------------+------------+ 623 | 21'(8:00010000) | fw-connected | D | 624 +-----------------+--------------+------------+ 625 Secondary BIFT for Px on BFR G 627 +-----------------+--------------+------------+ 628 | Adjacency BP | Action | BFR-NBR | 629 | (SI:BitString) | | (Next Hop) | 630 +=================+==============+============+ 631 | 3'(6:00000100) | fw-connected | B | 632 +-----------------+--------------+------------+ 633 | 14'(7:00100000) | fw-connected | K | 634 +-----------------+--------------+------------+ 635 | 18'(8:00000010) |lan-connected | Px | 636 +-----------------+--------------+------------+ 638 Figure 12: Improved BIER-TE BIFT on BFR G 640 The improved BIER-TE BIFT on BFR H is illustrated in Figure 13. It 641 comprises the forwarding entry for the LAN adjacency from H to Px 642 (indicated by BP 20') and the secondary BIFT for Px on BFR H. The 643 secondary BIFT contains three forwarding entries for three forward 644 connected adjacencies from Px to C (indicated by 15'), Px to G 645 (indicated by 17') and Px to D (indicated by 21') respectively. 647 +-----------------+--------------+------------+ 648 | Adjacency BP | Action | BFR-NBR | 649 | (SI:BitString) | | (Next Hop) | 650 +=================+==============+============+ 651 | 15'(7:01000000) | fw-connected | C | 652 +-----------------+--------------+------------+ 653 | 17'(8:00000001) | fw-connected | G | 654 +-----------------+--------------+------------+ 655 | 21'(8:00010000) | fw-connected | D | 656 +-----------------+--------------+------------+ 657 Secondary BIFT for Px on BFR H 659 +-----------------+--------------+------------+ 660 | Adjacency BP | Action | BFR-NBR | 661 | (SI:BitString) | | (Next Hop) | 662 +=================+==============+============+ 663 | 4 (0:00001000) | local-decap | | 664 +-----------------+--------------+------------+ 665 | 20'(8:00001000) |lan-connected | Px | 666 +-----------------+--------------+------------+ 668 Figure 13: Improved BIER-TE BIFT on BFR H 670 The improved BIER-TE BIFT on BFR D is illustrated in Figure 14. It 671 comprises the forwarding entry for the LAN adjacency from D to Px 672 (indicated by BP 22') and the secondary BIFT for Px on BFR D. The 673 secondary BIFT contains three forwarding entries for three forward 674 connected adjacencies from Px to C (indicated by 15'), Px to G 675 (indicated by 17') and Px to H (indicated by 19') respectively. 677 +-----------------+--------------+------------+ 678 | Adjacency BP | Action | BFR-NBR | 679 | (SI:BitString) | | (Next Hop) | 680 +=================+==============+============+ 681 | 15'(7:01000000) | fw-connected | C | 682 +-----------------+--------------+------------+ 683 | 17'(8:00000001) | fw-connected | G | 684 +-----------------+--------------+------------+ 685 | 19'(8:00000100) | fw-connected | H | 686 +-----------------+--------------+------------+ 687 Secondary BIFT for Px on BFR D 689 +-----------------+--------------+------------+ 690 | Adjacency BP | Action | BFR-NBR | 691 | (SI:BitString) | | (Next Hop) | 692 +=================+==============+============+ 693 | 1 (0:00000001) | local-decap | | 694 +-----------------+--------------+------------+ 695 | 22'(8:00000100) |lan-connected | Px | 696 +-----------------+--------------+------------+ 698 Figure 14: Improved BIER-TE BIFT on BFR D 700 3.3. Updated Forwarding Procedure 702 The forwarding procedure defined in [I-D.ietf-bier-te-arch] is 703 updated/enhanced for using an improved BIER-TE BIFT to support BIER- 704 TE with LAN. 706 The updated procedure is described in Figure 15. For a multicast 707 packet containing the BitString encoding an explicit P2MP path, if 708 the BP in the BitString is for a LAN adjacency to pseudo node Px for 709 the LAN, the updated forwarding procedure on a BFR sends the packet 710 towards Px's next hop nodes on the P2MP path encoded in the packet. 712 The procedure on a BFR "sends" (i.e., works as sending) the packet 713 with the BP for the LAN adjacency to Px according to the forwarding 714 entry for the BP in the improved BIER-TE BIFT on the BFR. And then 715 it acts on Px to "send" (i.e., works as sending) the packet to each 716 of the Px's next hop nodes that are on the P2MP path using the 717 secondary BIFT for Px. 719 It obtains the secondary BIFT for Px on the BFR, clears all the BPs 720 for the adjacencies of the BFR including the adjacency from the BFR 721 to Px, copies and sends the packet to each of the Px's next hop nodes 722 on the P2MP path using the secondary BIFT for Px. 724 For each Px's next hop node on the P2MP path, which is represented by 725 BP j in the packet's BitString, it gets the forwarding entry for BP j 726 from the secondary BIFT for Px, copies the packet, updates the copy's 727 BitString by clearing all the BPs for Px's adjacencies, and sends the 728 updated copy to the next hop node according to the forwarding entry. 730 Packet = the packet received by BFR; 731 FOR each BP k (from the rightmost in Packet's BitString) { 732 IF BP k is local decap adjacency (or say BP of BFER) { 733 Copies Packet, sends the copy to the multicast 734 flow overlay and clears bit k in Packet's BitString 735 } ELSE IF BP k is forward connected adjacency of the BFR { 736 Finds the forwarding entry in the BIER-TE BIFT using BP k, 737 Copies Packet, updates the copy's BitString by 738 clearing all the BPs for the adjacencies of the BFR, 739 and sends the updated copy to BFR-NBR 740 } ELSE IF BP k is LAN adjacency to Px { 741 Obtains the secondary BIFT for Px, 742 Clears all the BPs for the adjacencies of the BFR, 743 FOR each BP j (from the rightmost in Packet's BitString) { 744 IF BP j is Px's forward connected adjacency { 745 Gets the forwarding entry for BP j in the 746 secondary BIFT for Px, 747 Copies Packet, updates the copy's BitString by 748 clearing all the BPs for Px's adjacencies, 749 and sends the updated copy to BFR-NBR 750 } 751 } 752 } 753 } 755 Figure 15: Updated Forwarding Procedure 757 4. Example Application of Improved BIER-TE 759 This section illustrates an example application of improved BIER-TE 760 to Figure 1. It shows the forwarding behaviors along an explicit 761 P2MP path in Figure 10 going through the LAN in the figure. 763 The new BP assignments for the LAN in Figure 1 is shown in Figure 10. 764 The improved BIER-TE BIFT on each of the BFRs attached to the LAN is 765 given in Section 3.2. 767 The explicit P2MP path traverses the link/adjacency from A to B 768 (indicated by BP 2'), the link/adjacency from B to G (indicated by BP 769 4') and the link/adjacency from B to C (indicated by BP 6'), the 770 link/adjacency from G to K (indicated by BP 14'), the link/adjacency 771 from G to Px (indicated by BP 18'), the link/adjacency from C to F 772 (indicated by BP 12'), and the link/adjacency from Px to H (indicated 773 by BP 19'). This path is represented by {2', 4', 6', 12', 14', 18', 774 19', 2, 4, 6}. The packet at A has this path. 776 For the packet with the P2MP path, A forwards the packet to B 777 according to the forwarding entry for BP 2' in its BIFT. 779 After receiving the packet from A, B forwards the packet to G and C 780 according to the forwarding entries for BPs 4' and 6' in B's BIFT 781 respectively. The packet received by G has path {12', 14', 18', 19', 782 2, 4, 6}. The packet received by C has path {12', 14', 18', 19', 2, 783 4, 6}. 785 After receiving the packet from B, G sends a copy of the packet to K 786 according to the forwarding entry for BP 14' in G's improved BIER-TE 787 BIFT and "sends" another copy of the packet to Px according to the 788 forwarding entry for BP 18' in G's improved BIER-TE BIFT. After 789 receiving the packet from G, which has path {12', 19', 2, 4, 6}, Px 790 "sends" the packet to H according to the forwarding entry for BP 19' 791 in the secondary BIFT for Px (a part of G's improved BIER-TE BIFT). 793 After receiving the packet from G, which has path {12', 19', 2, 4, 794 6}, K decapsulates the packet and passes a copy of the payload of the 795 packet to the packet's NextProto within node K according to the 796 forwarding entry for BP 6 in K's BIFT. 798 After receiving the packet from G, which has path {12', 2, 4, 6}, H 799 decapsulates the packet and passes a copy of the payload of the 800 packet to the packet's NextProto within node H according to the 801 forwarding entry for BP 4 in H's improved BIER-TE BIFT. 803 After receiving the packet from B, which has path {12', 14', 18', 804 19', 2, 4, 6}, C sends the packet to F according to the forwarding 805 entry for BP 12' in C's improved BIER-TE BIFT. 807 After receiving the packet from C, which has path {14', 18', 19', 2, 808 4, 6}, F decapsulates the packet and passes a copy of the payload of 809 the packet to the packet's NextProto within node F according to the 810 forwarding entry for BP 2 in F's BIER-TE BIFT. 812 Egress node H of the P2MP path does not receive any duplicated 813 packet. 815 5. Security Considerations 817 TBD. 819 6. IANA Considerations 821 No requirements for IANA. 823 7. Acknowledgements 825 The authors would like to thank people for their comments to this 826 work. 828 8. References 830 8.1. Normative References 832 [I-D.ietf-bier-te-arch] 833 Eckert, T., Cauchie, G., and M. Menth, "Tree Engineering 834 for Bit Index Explicit Replication (BIER-TE)", Work in 835 Progress, Internet-Draft, draft-ietf-bier-te-arch-10, 9 836 July 2021, . 839 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 840 Requirement Levels", BCP 14, RFC 2119, 841 DOI 10.17487/RFC2119, March 1997, 842 . 844 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 845 IANA Considerations Section in RFCs", RFC 5226, 846 DOI 10.17487/RFC5226, May 2008, 847 . 849 [RFC5250] Berger, L., Bryskin, I., Zinin, A., and R. Coltun, "The 850 OSPF Opaque LSA Option", RFC 5250, DOI 10.17487/RFC5250, 851 July 2008, . 853 [RFC5286] Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for 854 IP Fast Reroute: Loop-Free Alternates", RFC 5286, 855 DOI 10.17487/RFC5286, September 2008, 856 . 858 [RFC5714] Shand, M. and S. Bryant, "IP Fast Reroute Framework", 859 RFC 5714, DOI 10.17487/RFC5714, January 2010, 860 . 862 [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection 863 (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, 864 . 866 [RFC7356] Ginsberg, L., Previdi, S., and Y. Yang, "IS-IS Flooding 867 Scope Link State PDUs (LSPs)", RFC 7356, 868 DOI 10.17487/RFC7356, September 2014, 869 . 871 [RFC7490] Bryant, S., Filsfils, C., Previdi, S., Shand, M., and N. 872 So, "Remote Loop-Free Alternate (LFA) Fast Reroute (FRR)", 873 RFC 7490, DOI 10.17487/RFC7490, April 2015, 874 . 876 [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., 877 Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute 878 Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 879 2015, . 881 [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and 882 S. Shaffer, "Extensions to OSPF for Advertising Optional 883 Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, 884 February 2016, . 886 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 887 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 888 May 2017, . 890 [RFC8279] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., 891 Przygienda, T., and S. Aldrin, "Multicast Using Bit Index 892 Explicit Replication (BIER)", RFC 8279, 893 DOI 10.17487/RFC8279, November 2017, 894 . 896 [RFC8556] Rosen, E., Ed., Sivakumar, M., Przygienda, T., Aldrin, S., 897 and A. Dolganow, "Multicast VPN Using Bit Index Explicit 898 Replication (BIER)", RFC 8556, DOI 10.17487/RFC8556, April 899 2019, . 901 8.2. Informative References 903 [I-D.eckert-bier-te-frr] 904 Eckert, T., Cauchie, G., Braun, W., and M. Menth, 905 "Protection Methods for BIER-TE", Work in Progress, 906 Internet-Draft, draft-eckert-bier-te-frr-03, 5 March 2018, 907 . 910 [I-D.ietf-rtgwg-segment-routing-ti-lfa] 911 Litkowski, S., Bashandy, A., Filsfils, C., Francois, P., 912 Decraene, B., and D. Voyer, "Topology Independent Fast 913 Reroute using Segment Routing", Work in Progress, 914 Internet-Draft, draft-ietf-rtgwg-segment-routing-ti-lfa- 915 07, 29 June 2021, . 918 [I-D.ietf-spring-segment-protection-sr-te-paths] 919 Hegde, S., Bowers, C., Litkowski, S., Xu, X., and F. Xu, 920 "Segment Protection for SR-TE Paths", Work in Progress, 921 Internet-Draft, draft-ietf-spring-segment-protection-sr- 922 te-paths-01, 11 July 2021, 923 . 926 [RFC8296] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., 927 Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation 928 for Bit Index Explicit Replication (BIER) in MPLS and Non- 929 MPLS Networks", RFC 8296, DOI 10.17487/RFC8296, January 930 2018, . 932 [RFC8401] Ginsberg, L., Ed., Przygienda, T., Aldrin, S., and Z. 933 Zhang, "Bit Index Explicit Replication (BIER) Support via 934 IS-IS", RFC 8401, DOI 10.17487/RFC8401, June 2018, 935 . 937 [RFC8444] Psenak, P., Ed., Kumar, N., Wijnands, IJ., Dolganow, A., 938 Przygienda, T., Zhang, J., and S. Aldrin, "OSPFv2 939 Extensions for Bit Index Explicit Replication (BIER)", 940 RFC 8444, DOI 10.17487/RFC8444, November 2018, 941 . 943 Authors' Addresses 945 Huaimo Chen 946 Futurewei 947 Boston, MA, 948 United States of America 950 Email: Huaimo.chen@futurewei.com 952 Mike McBride 953 Futurewei 955 Email: michael.mcbride@futurewei.com 957 Aijun Wang 958 China Telecom 959 Beiqijia Town, Changping District 960 Beijing 961 102209 962 China 964 Email: wangaj3@chinatelecom.cn 966 Gyan S. Mishra 967 Verizon Inc. 968 13101 Columbia Pike 969 Silver Spring, MD 20904 970 United States of America 972 Phone: 301 502-1347 973 Email: gyan.s.mishra@verizon.com 975 Lei Liu 976 Fujitsu 977 United States of America 979 Email: liulei.kddi@gmail.com 981 Xufeng Liu 982 Volta Networks 983 McLean, VA 984 United States of America 986 Email: xufeng.liu.ietf@gmail.com