idnits 2.17.00 (12 Aug 2021) /tmp/idnits31113/draft-ietf-bier-ospf-bier-extensions-08.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 : ---------------------------------------------------------------------------- == There are 6 instances of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 3, 2017) is 1691 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: draft-ietf-bier-architecture has been published as RFC 8279 == Outdated reference: draft-ietf-bier-mpls-encapsulation has been published as RFC 8296 Summary: 0 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 OSPF P. Psenak, Ed. 3 Internet-Draft N. Kumar 4 Intended status: Standards Track IJ. Wijnands 5 Expires: April 6, 2018 Cisco 6 A. Dolganow 7 Nokia 8 T. Przygienda 9 J. Zhang 10 Juniper Networks, Inc. 11 S. Aldrin 12 Google, Inc. 13 October 3, 2017 15 OSPF Extensions for BIER 16 draft-ietf-bier-ospf-bier-extensions-08.txt 18 Abstract 20 Bit Index Explicit Replication (BIER) is an architecture that 21 provides multicast forwarding through a "BIER domain" without 22 requiring intermediate routers to maintain multicast related per-flow 23 state. Neither does BIER require an explicit tree-building protocol 24 for its operation. A multicast data packet enters a BIER domain at a 25 "Bit-Forwarding Ingress Router" (BFIR), and leaves the BIER domain at 26 one or more "Bit-Forwarding Egress Routers" (BFERs). The BFIR router 27 adds a BIER header to the packet. Such header contains a bit-string 28 in which each bit represents exactly one BFER to forward the packet 29 to. The set of BFERs to which the multicast packet needs to be 30 forwarded is expressed by the according set of bits set in BIER 31 packet header. 33 This document describes the OSPF protocol extension required for BIER 34 with MPLS encapsulation. 36 Status of This Memo 38 This Internet-Draft is submitted in full conformance with the 39 provisions of BCP 78 and BCP 79. 41 Internet-Drafts are working documents of the Internet Engineering 42 Task Force (IETF). Note that other groups may also distribute 43 working documents as Internet-Drafts. The list of current Internet- 44 Drafts is at https://datatracker.ietf.org/drafts/current/. 46 Internet-Drafts are draft documents valid for a maximum of six months 47 and may be updated, replaced, or obsoleted by other documents at any 48 time. It is inappropriate to use Internet-Drafts as reference 49 material or to cite them other than as "work in progress." 51 This Internet-Draft will expire on April 6, 2018. 53 Copyright Notice 55 Copyright (c) 2017 IETF Trust and the persons identified as the 56 document authors. All rights reserved. 58 This document is subject to BCP 78 and the IETF Trust's Legal 59 Provisions Relating to IETF Documents 60 (https://trustee.ietf.org/license-info) in effect on the date of 61 publication of this document. Please review these documents 62 carefully, as they describe your rights and restrictions with respect 63 to this document. Code Components extracted from this document must 64 include Simplified BSD License text as described in Section 4.e of 65 the Trust Legal Provisions and are provided without warranty as 66 described in the Simplified BSD License. 68 Table of Contents 70 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 71 2. Flooding of the BIER Information in OSPF . . . . . . . . . . 3 72 2.1. BIER Sub-TLV . . . . . . . . . . . . . . . . . . . . . . 3 73 2.2. BIER MPLS Encapsulation Sub-TLV . . . . . . . . . . . . . 4 74 2.3. Optional BIER Tree Type Sub-TLV . . . . . . . . . . . . . 5 75 2.4. Optional BIER sub-domain BSL conversion Sub-TLV . . . . . 6 76 2.5. Flooding scope of BIER Information . . . . . . . . . . . 7 77 3. Security Considerations . . . . . . . . . . . . . . . . . . . 8 78 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 79 4.1. BIER Tree Type Registry . . . . . . . . . . . . . . . . . 8 80 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 81 6. Normative References . . . . . . . . . . . . . . . . . . . . 9 82 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 84 1. Introduction 86 Bit Index Explicit Replication (BIER) is an architecture that 87 provides optimal multicast forwarding through a "BIER domain" without 88 requiring intermediate routers to maintain any multicast related per- 89 flow state. Neither does BIER explicitly require a tree-building 90 protocol for its operation. A multicast data packet enters a BIER 91 domain at a "Bit-Forwarding Ingress Router" (BFIR), and leaves the 92 BIER domain at one or more "Bit-Forwarding Egress Routers" (BFERs). 93 The BFIR router adds a BIER header to the packet. The BIER header 94 contains a bit-string in which each bit represents exactly one BFER 95 to forward the packet to. The set of BFERs to which the multicast 96 packet needs to be forwarded is expressed by setting the bits that 97 correspond to those routers in the BIER header. 99 BIER architecture requires routers participating in BIER to exchange 100 BIER related information within a given domain. BIER architecture 101 permits link-state routing protocols to perform distribution of such 102 information. This document describes extensions to OSPF necessary to 103 advertise BIER specific information in the case where BIER uses MPLS 104 encapsulation as described in [I-D.ietf-bier-mpls-encapsulation]. 106 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 107 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 108 document are to be interpreted as described in [RFC2119]. 110 2. Flooding of the BIER Information in OSPF 112 All BIER specific information that a Bit-Forwarding Router (BFR) 113 needs to advertise to other BFRs is associated with a BFR-Prefix. A 114 BFR prefix is a unique (within a given BIER domain) routable IP 115 address that is assigned to each BFR as described in more detail in 116 section 2 of [I-D.ietf-bier-architecture]. 118 Given that BIER information must be associated with a BFR prefix, the 119 OSPF Extended Prefix Opaque LSA [RFC7684] has been chosen for 120 advertisement. 122 2.1. BIER Sub-TLV 124 A Sub-TLV of the Extended Prefix TLV (defined in [RFC7684]) is 125 defined for distributing BIER information. The Sub-TLV is called the 126 BIER Sub-TLV. Multiple BIER Sub-TLVs may be included in the Extended 127 Prefix TLV. 129 The BIER Sub-TLV has the following format: 131 0 1 2 3 132 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 133 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 134 | Type | Length | 135 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 136 | Sub-domain-ID | MT-ID | BFR-id | 137 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 138 | Sub-TLVs (variable) | 139 +- -+ 140 | | 142 Type: TBD1 143 Length: Variable, dependent on sub-TLVs. 145 Sub-domain-ID: Unique value identifying the BIER sub-domain within 146 the BIER domain, as described in section 1 of 147 [I-D.ietf-bier-architecture]. 149 MT-ID: Multi-Topology ID (as defined in [RFC4915]) that identifies 150 the topology that is associated with the BIER sub-domain. 152 BFR-id: A 2 octet field encoding the BFR-id, as documented in 153 section 2 of [I-D.ietf-bier-architecture]. If the BFR is not 154 locally configured with a valid BFR-id, the value of this field is 155 set to invalid BFR-id per [I-D.ietf-bier-architecture]. 157 Each BFR sub-domain MUST be associated with one and only one OSPF 158 topology that is identified by the MT-ID. If the association between 159 BIER sub-domain and OSPF topology advertised in the BIER sub-TLV by 160 other BFRs is in conflict with the association locally configured on 161 the receiving router, the BIER Sub-TLV MUST be ignored. 163 If a BFR advertises the same Sub-domain-ID in multiple BIER sub-TLVs, 164 the BRF MUST be treated as if it did not advertise a BIER sub-TLV for 165 such sub-domain. 167 All BFRs MUST detect advertisement of duplicate valid BFR-IDs for a 168 given MT-ID and Sub-domain-ID. When such duplication is detected all 169 BFRs advertising duplicates MUST be treated as if they did not 170 advertise a valid BFR-id. 172 2.2. BIER MPLS Encapsulation Sub-TLV 174 The BIER MPLS Encapsulation Sub-TLV is a Sub-TLV of the BIER Sub-TLV. 175 The BIER MPLS Encapsulation Sub-TLV is used in order to advertise 176 MPLS specific information used for BIER. It MAY appear multiple 177 times in the BIER Sub-TLV. 179 The BIER MPLS Encapsulation Sub-TLV has the following format: 181 0 1 2 3 182 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 183 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 184 | Type | Length | 185 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 186 |Lbl Range Size | Label Range Base | 187 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 188 |BS Len | Reserved | 189 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 190 Type: TBD2 192 Length: 4 octets 194 Label Range Size: A 1 octet field encoding the label range size of 195 the label range. It MUST be greater then 0, otherwise the 196 advertising router MUST be treated as if it did not advertise a 197 BIER sub-TLV. 199 Label Range Base: A 3 octet field, where the 20 rightmost bits 200 represent the first label in the label range. The 4 leftmost bits 201 MUST be ignored. 203 Bit String Length: A 4 bits field encoding the supported BitString 204 length associated with this BFR-prefix. The values allowed in 205 this field are specified in section 2 of 206 [I-D.ietf-bier-mpls-encapsulation]. 208 The "label range" is the set of labels beginning with the label 209 range base and ending with ((label range base)+(label range size)- 210 1). A unique label range is allocated for each BitStream length 211 and Sub-domain-ID. These labels are used for BIER forwarding as 212 described in [I-D.ietf-bier-architecture] and 213 [I-D.ietf-bier-mpls-encapsulation]. 215 The size of the label range is determined by the number of Set 216 Identifiers (SI) (section 1 of [I-D.ietf-bier-architecture]) that 217 are used in the network. Each SI maps to a single label in the 218 label range. The first label is for SI=0, the second label is for 219 SI=1, etc. 221 If same BS length is repeated in multiple BIER MPLS Encapsulation 222 Sub-TLV inside the same BIER Sub-TLV, the BIER sub-TLV MUST be 223 ignored. 225 Label ranges within all BIER MPLS Encapsulation Sub-TLV inside the 226 same BIER Sub-TLV MUST NOT overlap. If the overlap is detected, the 227 advertising router MUST be treated as if it did not advertise a BIER 228 sub-TLV. 230 All advertised labels MUST be valid, otherwise the BIER sub-TLV MUST 231 be ignored. 233 2.3. Optional BIER Tree Type Sub-TLV 235 The BIER Tree Type Sub-TLV is a Sub-TLV of the BIER Sub-TLV. This 236 Sub-TLV carries the information associated with the supported BIER 237 tree type for a sub-domain. This Sub-TLV is optional and its absence 238 has the same semantics as its presence with Tree Type value 0 (SPF). 239 When Tree Type 0 is used, it is RECOMMENDED that this Sub-TLV is 240 omitted in order to reduce the space consumed in the parent TLV. 242 This Sub-TLV MAY occur no more than once in a BIER sub-TLV. If 243 multiple occurences of this Sub-TLV are present in a single BIER Sub- 244 TLV, the BIER sub-TLV MUST be ignored. 246 If the tree type (implied or explicitly advertised) does not match 247 the locally configured tree type associated with the matching sub- 248 domain, the BIER sub-TLV MUST be ignored. 250 0 1 2 3 251 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 252 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 253 | Type | Length | 254 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 255 | Tree Type | 256 +-+-+-+-+-+-+-+-+ 258 Type: TBD3. 260 Length: 1 octet. 262 Tree Type: 1 octet field describing the Tree Type. The following 263 value is defined by this document: 265 0: Shortest Path First (SPF) algorithm based on IGP link 266 metric. This is the standard shortest path algorithm as 267 computed by the OSPF protocol. 269 2.4. Optional BIER sub-domain BSL conversion Sub-TLV 271 The BIER sub-domain BSL conversion Sub-TLV is a Sub-TLV of the BIER 272 Sub-TLV. This sub-TLV indicates whether the BFR is capable of 273 imposing a different Bit String Length (BSL) than the one it received 274 in a BIER encapsulated packet. Such a capability may allow future, 275 advanced tree types which ensure simple migration procedures from one 276 BSL to another in a given MT-ID and Sub-domain-ID or prevent stable 277 blackholes in scenarios where not all routers support the same set of 278 BSLs in a given MT-ID and Sub-domain-ID. 280 The BIER sub-domain BSL conversion Sub-TLV is optional and its 281 absence indicates that the router is NOT capable of imposing 282 different BSLs but will always forward the packet with the BSL 283 unchanged. This sub-TLV MAY occur at most once in a given BIER sub- 284 TLV. If multiple occurrences of this sub-TLV are received in a given 285 BIER sub-TLV, the BIER sub-TLV MUST be ignored. 287 The BIER sub-domain BSL conversion Sub-TLV has following format: 289 0 1 2 3 290 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 291 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 292 | Type | Length | 293 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 295 Type: TBD4. 297 Length: 0 octets. 299 2.5. Flooding scope of BIER Information 301 The flooding scope of the OSPF Extended Prefix Opaque LSA [RFC7684] 302 that is used for advertising the BIER Sub-TLV is set to area-local. 303 To allow BIER deployment in a multi-area environment, OSPF must 304 propagate BIER information between areas. 306 ( ) ( ) ( ) 307 ( ) ( ) ( ) 308 R1 Area 1 R2 Area 0 R3 Area 2 R4 309 ( ) ( ) ( ) 310 ( ) ( ) ( ) 312 Figure 1: BIER propagation between areas 314 The following procedure is used in order to propagate BIER related 315 information between areas: 317 When an OSPF Area Border Router (ABR) advertises a Type-3 Summary 318 LSA from an intra-area or inter-area prefix to all its attached 319 areas, it will also originate an Extended Prefix Opaque LSA, as 320 described in [RFC7684]. The flooding scope of the Extended Prefix 321 Opaque LSA type will be set to area-local. The route-type in the 322 OSPF Extended Prefix TLV is set to inter-area. When determining 323 whether a BIER Sub-TLV should be included in this LSA, an OSPF ABR 324 will: 326 - Examine its best path to the prefix in the source area and 327 find the advertising router associated with the best path to 328 that prefix. 330 - Determine if such advertising router advertised a BIER Sub- 331 TLV for the prefix. If yes, the ABR will copy the information 332 from such BIER Sub-TLV when advertising BIER Sub-TLV to each 333 attached area. 335 In the Figure 1, R1 advertises a prefix 192.0.0.1/32 in Area 1. 336 It also advertises Extended Prefix Opaque LSA for prefix 337 192.0.0.1/32 and includes BIER Sub-TLV in it. Area Border Router 338 (ABR) R2 calculates the reachability for prefix 192.0.0.1/32 339 inside Area 1 and propagates it to Area 0. When doing so, it 340 copies the entire BIER Sub-TLV (including all its Sub-TLVs) it 341 received from R1 in Area 1 and includes it in the Extended Prefix 342 Opaque LSA it generates for 192.0.0.1/32 in Area 0. ABR R3 343 calculates the reachability for prefix 192.0.0.1/32 inside Area 0 344 and propagates it to Area 2. When doing so, it copies the entire 345 BIER Sub-TLV (including all its Sub-TLVs) it received from R2 in 346 Area 0 and includes it in the Extended Prefix Opaque LSA it 347 generates for 192.0.0.1/32 in Area 2. 349 3. Security Considerations 351 Implementations must assure that malformed TLV and Sub-TLV 352 permutations do not result in errors which cause hard OSPF failures. 354 4. IANA Considerations 356 The document requests three new allocations from the OSPF Extended 357 Prefix sub-TLV registry as defined in [RFC7684]. 359 BIER Sub-TLV: TBD1 361 BIER MPLS Encapsulation Sub-TLV: TBD2 363 BIER Tree Type Sub-TLV: TBD3 365 BIER sub-domain BSL conversion Sub-TLV 367 4.1. BIER Tree Type Registry 369 IANA is requested to set up a registry called "BIER Tree Type". The 370 registration policy for this registry is "Standards Action" 371 ([RFC8126] and [RFC7120]). 373 Values in this registry must come from the range 0-255. 375 The initial value in the BIER Tree Type registry is: 377 0: Shortest Path First (SPF) algorithm based on standard IGP link 378 metric. 380 5. Acknowledgments 382 The authors would like to thank Rajiv Asati, Christian Martin, Greg 383 Shepherd and Eric Rosen for their contribution. 385 6. Normative References 387 [I-D.ietf-bier-architecture] 388 Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and 389 S. Aldrin, "Multicast using Bit Index Explicit 390 Replication", draft-ietf-bier-architecture-06 (work in 391 progress), April 2017. 393 [I-D.ietf-bier-mpls-encapsulation] 394 Wijnands, I., Rosen, E., Dolganow, A., Tantsura, J., 395 Aldrin, S., and I. Meilik, "Encapsulation for Bit Index 396 Explicit Replication in MPLS and non-MPLS Networks", 397 draft-ietf-bier-mpls-encapsulation-07 (work in progress), 398 June 2017. 400 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 401 Requirement Levels", BCP 14, RFC 2119, 402 DOI 10.17487/RFC2119, March 1997, 403 . 405 [RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P. 406 Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF", 407 RFC 4915, DOI 10.17487/RFC4915, June 2007, 408 . 410 [RFC7120] Cotton, M., "Early IANA Allocation of Standards Track Code 411 Points", BCP 100, RFC 7120, DOI 10.17487/RFC7120, January 412 2014, . 414 [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., 415 Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute 416 Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 417 2015, . 419 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 420 Writing an IANA Considerations Section in RFCs", BCP 26, 421 RFC 8126, DOI 10.17487/RFC8126, June 2017, 422 . 424 Authors' Addresses 426 Peter Psenak (editor) 427 Cisco 428 Apollo Business Center 429 Mlynske nivy 43 430 Bratislava 821 09 431 Slovakia 433 Email: ppsenak@cisco.com 435 Nagendra Kumar 436 Cisco 437 7200 Kit Creek Road 438 Research Triangle Park, NC 27709 439 US 441 Email: naikumar@cisco.com 443 IJsbrand Wijnands 444 Cisco 445 De Kleetlaan 6a 446 Diegem 1831 447 Belgium 449 Email: ice@cisco.com 451 Andrew Dolganow 452 Nokia 453 750 Chai Chee Rd 454 06-06 Viva Business Park 455 Singapore 469004 457 Email: andrew.dolganow@alcatel-lucent.com 459 Tony Przygienda 460 Juniper Networks, Inc. 461 10 Technology Park Drive 462 Westford, MA 01886 463 USA 465 Email: prz@juniper.net 466 Jeffrey Zhang 467 Juniper Networks, Inc. 468 10 Technology Park Drive 469 Westford, MA 01886 470 USA 472 Email: zzhang@juniper.net 474 Sam Aldrin 475 Google, Inc. 476 1600 Amphitheatre Parkway 477 Mountain View, CA 478 USA 480 Email: aldrin.ietf@gmail.com