idnits 2.17.1 draft-ietf-lsr-algorithm-related-adjacency-sid-00.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 date (June 11, 2021) is 1049 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 (-26) exists of draft-ietf-lsr-flex-algo-15 Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 LSR Shaofu. Peng 3 Internet-Draft Ran. Chen 4 Intended status: Standards Track ZTE Corporation 5 Expires: December 13, 2021 Ketan. Talaulikar 6 Peter. Psenak 7 Cisco Systems 8 June 11, 2021 10 Algorithm Related IGP-Adjacency SID Advertisement 11 draft-ietf-lsr-algorithm-related-adjacency-sid-00 13 Abstract 15 Segment Routing architecture supports the use of multiple routing 16 algorithms, i.e, different constraint-based shortest-path 17 calculations can be supported. There are two standard algorithms: 18 SPF and Strict-SPF, defined in Segment Routing architecture. There 19 are also other user defined algorithms according to Flex-algo 20 applicaiton. However, an algorithm identifier is often included as 21 part of a Prefix-SID advertisement, that maybe not satisfy some 22 scenarios where multiple algorithm share the same link resource. 23 This document complement that the algorithm identifier can be also 24 included as part of a Adjacency-SID advertisement 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 https://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 December 13, 2021. 43 Copyright Notice 45 Copyright (c) 2021 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 (https://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 Table of Contents 60 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 61 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 62 3. Use-cases . . . . . . . . . . . . . . . . . . . . . . . . . . 3 63 4. Adjacency Segment Identifier per Algorithm . . . . . . . . . 4 64 4.1. ISIS Adjacency Segment Identifier per Algorithm . . . . . 4 65 4.1.1. ISIS Adjacency Segment Identifier (Adj-SID) per 66 Algorithm Sub-TLV . . . . . . . . . . . . . . . . . . 4 67 4.1.2. ISIS Adjacency Segment Identifier (LAN-Adj-SID) per 68 Algorithm Sub-TLV . . . . . . . . . . . . . . . . . . 5 69 4.2. OSPFv2 Adjacency Segment Identifier per Algorithm . . . . 6 70 4.2.1. OSPFv2 Adj-SID per Algorithm Sub-TLV . . . . . . . . 6 71 4.2.2. OSPFv2 LAN Adj-SID per Algorithm Sub-TLV . . . . . . 7 72 4.3. OSPFv3 Adjacency Segment Identifier per Algorithm . . . . 8 73 4.3.1. OSPFv3 Adj-SID per Algorithm Sub-TLV . . . . . . . . 8 74 4.3.2. OSPFv3 LAN Adj-SID per Algorithm Sub-TLV . . . . . . 9 75 5. Operations . . . . . . . . . . . . . . . . . . . . . . . . . 9 76 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 77 6.1. IANA ISIS Considerations . . . . . . . . . . . . . . . . 11 78 6.2. IANA OSPFv2 Considerations . . . . . . . . . . . . . . . 11 79 6.3. IANA OSPFv3 Considerations . . . . . . . . . . . . . . . 11 80 7. Security Considerations . . . . . . . . . . . . . . . . . . . 12 81 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 12 82 9. Normative References . . . . . . . . . . . . . . . . . . . . 12 83 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 85 1. Introduction 87 Segment Routing architecture [RFC8402] supports the use of multiple 88 routing algorithms, i.e, different constraint-based shortest-path 89 calculations can be supported. There are two standard algorithms, 90 i.e, SPF and Strict-SPF, that defined in Segment Routing 91 architecture. For SPF, the packet is forwarded along the well known 92 ECMP-aware Shortest Path First (SPF) algorithm employed by the IGPs. 93 However, it is explicitly allowed for a midpoint to implement another 94 forwarding based on local policy. For Strict Shortest Path First 95 (Strict-SPF), it mandates that the packet be forwarded according to 96 the ECMP-aware SPF algorithm and instructs any router in the path to 97 ignore any possible local policy overriding the SPF decision. 99 There are also other user defined algorithms according to IGP Flex 100 Algorithm [I-D.ietf-lsr-flex-algo]. IGP Flex Algorithm proposes a 101 solution that allows IGPs themselves to compute constraint based 102 paths over the network, and it also specifies a way of using Segment 103 Routing (SR) Prefix-SIDs and SRv6 locators to steer packets along the 104 constraint-based paths. It specifies a set of extensions to ISIS, 105 OSPFv2 and OSPFv3 that enable a router to send TLVs that identify (a) 106 calculation-type, (b) specify a metric-type, and (c )describe a set 107 of constraints on the topology, that are to be used to compute the 108 best paths along the constrained topology. A given combination of 109 calculation-type, metric-type, and constraints is known as an FAD 110 (Flexible Algorithm Definition). 112 However, an algorithm identifier is often included as part of a 113 Prefix-SID advertisement, that maybe not satisfy some scenarios where 114 multiple algorithm share the same link resource. This document 115 complement that the algorithm identifier can be also included as part 116 of an Adjacency-SID advertisement for SR-MPLS. 118 2. Requirements Language 120 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 121 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 122 "OPTIONAL" in this document are to be interpreted as described in BCP 123 14 [RFC2119] [RFC8174] when, and only when, they appear in all 124 capitals, as shown here. 126 3. Use-cases 128 There are several use-cases for the algorithm-aware Adjacency-SID: 130 case-1: an SR-TE policy may be instantiated within specific Flex- 131 algo plane, i.e., the SID list may contain algorithm related SIDs. 132 An algorithm-aware Adjacency-SID included in the SID list can not 133 only steer the traffic towards the link, but also apply specific 134 QoS policy for that algorithm. 136 case-2: a TI-LFA backup path computed in Flex-algo plane may 137 contain Adjacency Segments and require to contain an algorithm- 138 aware Adjacency-SID. An algorithm-aware Adjacency-SID included in 139 the TI-LFA SID list can not only steer the traffic towards the 140 link, but also distinguish traffic between different algorithms. 142 case-3: for the protected Adjacency-SID which belongs to SR-TE 143 path within specific Flex-algo plane, the backup path of such 144 Adjacency-SID need follow the algorithm specific constraints that 145 is consistent with the primary SR-TE path. 147 4. Adjacency Segment Identifier per Algorithm 149 4.1. ISIS Adjacency Segment Identifier per Algorithm 151 [RFC8667] describes the IS-IS extensions that need to be introduced 152 for Segment Routing operating on an MPLS data plane. It defined 153 Adjacency Segment Identifier (Adj-SID) sub-TLV advertised with TLV- 154 22/222/23/223/141, and Adjacency Segment Identifier (LAN-Adj-SID) 155 Sub-TLV advetised with TLV-22/222/23/223. Accordingly, this document 156 defines two new optional Sub-TLVs, "ISIS Adjacency Segment Identifier 157 (Adj-SID) per Algorithm Sub-TLV" and "ISIS Adjacency Segment 158 Identifier (LAN-Adj-SID) per Algorithm Sub-TLV". 160 4.1.1. ISIS Adjacency Segment Identifier (Adj-SID) per Algorithm Sub- 161 TLV 163 ISIS Adjacency Segment Identifier (Adj-SID) per Algorithm Sub-TLV has 164 the following format: 166 0 1 2 3 167 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 168 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 169 | Type | Length | Flags | Weight | 170 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 171 | Algorithm | 172 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 173 | SID/Label/Index (variable) | 174 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 176 Figure 1: ISIS Adjacency Segment Identifier (Adj-SID) per Algorithm 177 Format 179 where: 181 Type: TBA1. 183 Length: 6 or 7 depending on size of the SID. 185 Flags: Refer to Adjacency Segment Identifier (Adj-SID) sub-TLV. 187 Weight: Refer to Adjacency Segment Identifier (Adj-SID) sub-TLV. 189 Algorithm: The Algorithm field contains the identifier of the 190 algorithm the router uses to apply algorithm specific treatment 191 configured on the adjacency. 193 SID/Label/Index: Refer to Adjacency Segment Identifier (Adj-SID) sub- 194 TLV. 196 For a P2P link, an SR-capable router MAY allocate different Adj-SID 197 for different algorithm, if this link joins different algorithm 198 related plane. 200 4.1.2. ISIS Adjacency Segment Identifier (LAN-Adj-SID) per Algorithm 201 Sub-TLV 203 ISIS Adjacency Segment Identifier (LAN-Adj-SID) per Algorithm Sub-TLV 204 has the following format: 206 0 1 2 3 207 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 208 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 209 | Type | Length | Flags | Weight | 210 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 211 | Algorithm | 212 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 213 | Neighbor System-ID (ID length octets) | 214 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 215 | | 216 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 218 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 219 | SID/Label/Index (variable) | 220 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 222 Figure 2: ISIS Adjacency Segment Identifier (LAN-Adj-SID) per 223 Algorithm Format 225 where: 227 Type: TBA2. 229 Length: Variable. 231 Flags: Refer to Adjacency Segment Identifier (LAN-Adj-SID) Sub-TLV. 233 Weight: Refer to Adjacency Segment Identifier (LAN-Adj-SID) Sub-TLV. 235 Algorithm: The Algorithm field contains the identifier of the 236 algorithm the router uses to apply algorithm specific treatment 237 configured on the adjacency. 239 SID/Label/Index: Refer to Adjacency Segment Identifier (LAN-Adj-SID) 240 Sub-TLV. 242 For a broadcast link, an SR-capable router MAY allocate different 243 Adj-SID for different algorithm, if this link joins different 244 algorithm related plane. 246 4.2. OSPFv2 Adjacency Segment Identifier per Algorithm 248 [RFC8665] describes the OSPFv2 extensions that need to be introduced 249 for Segment Routing operating on an MPLS data plane. It defined Adj- 250 SID Sub-TLV and LAN Adj-SID Sub-TLV advertised with Extended Link TLV 251 defined in [RFC7684]. Accordingly, this document defines two new 252 optional Sub-TLVs, "OSPFv2 Adj-SID per Algorithm Sub-TLV" and "OSPFv2 253 LAN Adj-SID per Algorithm Sub-TLV". 255 4.2.1. OSPFv2 Adj-SID per Algorithm Sub-TLV 257 OSPFv2 Adj-SID per Algorithm Sub-TLV has the following format: 259 0 1 2 3 260 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 261 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 262 | Type | Length | 263 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 264 | Flags | Algorithm | MT-ID | Weight | 265 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 266 | SID/Label/Index (variable) | 267 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 269 Figure 3: OSPFv2 Adj-SID per Algorithm Format 271 where: 273 Type: TBA3 275 Length: 7 or 8 octets, depending on the V-Flag. 277 Flags: Refer to OSPFv2 Adj-SID Sub-TLV. 279 Algorithm: The Algorithm field contains the identifier of the 280 algorithm the router uses to apply algorithm specific treatment 281 configured on the adjacency. 283 MT-ID: Refer to OSPFv2 Adj-SID Sub-TLV. 285 Weight: Refer to OSPFv2 Adj-SID Sub-TLV. 287 SID/Index/Label: Refer to OSPFv2 Adj-SID Sub-TLV. 289 For a P2P link, an SR-capable router MAY allocate different Adj-SID 290 for different algorithm, if this link joins different algorithm 291 related plane. 293 4.2.2. OSPFv2 LAN Adj-SID per Algorithm Sub-TLV 295 OSPFv2 LAN Adj-SID per Algorithm Sub-TLV has the following format: 297 0 1 2 3 298 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 299 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 300 | Type | Length | 301 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 302 | Flags | Algorithm | MT-ID | Weight | 303 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 304 | Neighbor ID | 305 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 306 | SID/Label/Index (variable) | 307 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 309 Figure 4: OSPFv2 LAN Adj-SID per Algorithm Format 311 where: 313 Type: TBA4 315 Length: 11 or 12 octets, depending on the V-Flag. 317 Flags: Refer to OSPFv2 LAN Adj-SID Sub-TLV. 319 Algorithm: The Algorithm field contains the identifier of the 320 algorithm the router uses to apply algorithm specific treatment 321 configured on the adjacency. 323 MT-ID: Refer to OSPFv2 LAN Adj-SID Sub-TLV. 325 Weight: Refer to OSPFv2 LAN Adj-SID Sub-TLV. 327 Neighbor ID: Refer to OSPFv2 LAN Adj-SID Sub-TLV. 329 SID/Index/Label: Refer to OSPFv2 LAN Adj-SID Sub-TLV. 331 For a broadcast link, an SR-capable router MAY allocate different 332 Adj-SID for different algorithm, if this link joins different 333 algorithm related plane. 335 4.3. OSPFv3 Adjacency Segment Identifier per Algorithm 337 [RFC8666] describes the OSPFv3 extensions that need to be introduced 338 for Segment Routing operating on an MPLS data plane. It defined Adj- 339 SID Sub-TLV and LAN Adj-SID Sub-TLV advertised with Router-Link TLV 340 as defined in [RFC8362]. Accordingly, this document defines two new 341 optional Sub-TLVs, "OSPFv3 Adj-SID per Algorithm Sub-TLV" and "OSPFv3 342 LAN Adj-SID per Algorithm Sub-TLV". 344 4.3.1. OSPFv3 Adj-SID per Algorithm Sub-TLV 346 OSPFv3 Adj-SID per Algorithm Sub-TLV has the following format: 348 0 1 2 3 349 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 350 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 351 | Type | Length | 352 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 353 | Flags | Weight | Algorithm | Reserved | 354 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 355 | SID/Label/Index (variable) | 356 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 358 Figure 5: OSPFv3 Adj-SID per Algorithm Format 360 where: 362 Type: TBA5 364 Length: 7 or 8 octets, depending on the V-Flag. 366 Flags: Refer to OSPFv3 Adj-SID Sub-TLV. 368 Weight: Refer to OSPFv3 Adj-SID Sub-TLV. 370 Algorithm: The Algorithm field contains the identifier of the 371 algorithm the router uses to apply algorithm specific treatment 372 configured on the adjacency. 374 Reserved: SHOULD be set to 0 on transmission and MUST be ignored on 375 reception. 377 SID/Index/Label: Refer to OSPFv3 Adj-SID Sub-TLV. 379 For a P2P link, an SR-capable router MAY allocate different Adj-SID 380 for different algorithm, if this link joins different algorithm 381 related plane. 383 4.3.2. OSPFv3 LAN Adj-SID per Algorithm Sub-TLV 385 OSPFv3 LAN Adj-SID per Algorithm Sub-TLV has the following format: 387 0 1 2 3 388 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 389 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 390 | Type | Length | 391 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 392 | Flags | Weight | Algorithm | Reserved | 393 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 394 | Neighbor ID | 395 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 396 | SID/Label/Index (variable) | 397 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 399 Figure 6: OSPFv3 LAN Adj-SID per Algorithm Format 401 where: 403 Type: TBA6 405 Length: 11 or 12 octets, depending on the V-Flag. 407 Flags: Refer to OSPFv3 LAN Adj-SID Sub-TLV. 409 Weight: Refer to OSPFv3 LAN Adj-SID Sub-TLV. 411 Algorithm: The Algorithm field contains the identifier of the 412 algorithm the router uses to apply algorithm specific treatment 413 configured on the adjacency. 415 Reserved: SHOULD be set to 0 on transmission and MUST be ignored on 416 reception. 418 Neighbor ID: Refer to OSPFv3 LAN Adj-SID Sub-TLV. 420 SID/Index/Label: Refer to OSPFv3 LAN Adj-SID Sub-TLV. 422 For a broadcast link, an SR-capable router MAY allocate different 423 Adj-SID for different algorithm, if this link joins different 424 algorithm related plane. 426 5. Operations 428 The method introduced in this document enables the traffic of 429 different flex-algo plane to be distinguished on the same link, so 430 that these traffic can be applied with different local treatment per 431 algorithm. 433 For example,the endpoint of a link shared by multiple flex-algo plane 434 can reserve different queue resources for different algorithms 435 locally, and perform priority based queue scheduling and traffic 436 shaping. This algorithm related reserved information can be 437 advertised to other nodes in the network through some mechanism, 438 therefore it has an impact on the constraint based path calculation 439 of the flex-algo plane. How to allocate algorithm related resouce 440 and advertise it in the network is out the scope of this document. 442 Depending on the implementation, operators can configure multiple 443 Adacency-SIDs each for different algorithm on the same link. One of 444 the difficulties is that during this configuration phase it is not 445 straightforward for a link to be included in an FA plane, as this can 446 only be determined after all nodes in the network have negotiated the 447 FAD. A simple way is that as long as an IGP instance enable an 448 algorithm for a level/area, all links joined to that level/area 449 should allocate Adjacency-SIDs for that algorithm statically. 450 Another way is to allocate and withdraw Adjacency-SID per algorithm 451 dynamically according to the result of FAD negotiation. 453 The following figure shows an example of Adjacency-SID per algorithm. 455 [S1]--------[D]--------[S2] 456 | | | 457 | | | 458 | | | 459 [A]---------[B]--------[C] 461 Figure 7: Flex-algo LFA Path with Adjacency-SID per Algorithm 463 Suppose that node S1, A, B, D and their inter-connected links belongs 464 to FA-id 128 plane, and S2, B, C, D and their inter-connected links 465 belongs to FA-id 129 plane. The IGP metric of link B-D is 100, and 466 all other links have IGP metric 1. Both FA-id 128 and 129 use IGP 467 default metric type for path calculation. In FA-id 128 plane, from 468 S1 to destination D, the primary path is S1-D, and the TI-LFA backup 469 path is segment list {node(B), adjacency(B-D)}. Similarly, In FA-id 470 129 plane, from S2 to destination D, the primary path is S2-D, and 471 the TI-LFA backup path is segment list {node(B), adjacency(B-D)}. The 472 above TI-LFA path of FA-id 128 plane can be translated to {node- 473 SID(B)@FA-id128, adjacency-SID(B-D)@FA-id128}, and TI-LFA path of FA- 474 id 129 plane will be translate to {node-SID(B)@FA-id129, adjacency- 475 SID(B-D)@FA-id129}. So that node B can distinguish the flow of FA-id 476 128 and FA-id 129 based on different adjacency-SID(B-D), and take 477 different treatment (e.g., QoS policy) of them when they are send to 478 the same outgoing link B-D. 480 More clarifications would be added in future versions. 482 6. IANA Considerations 484 6.1. IANA ISIS Considerations 486 This document makes the following registrations in the "Sub-TLVs for 487 TLV 22, 23, 25, 141, 222, and 223" registry. 489 +------+--------------------+----+----+----+-----+-----+-----+ 490 | Type | Description | 22 | 23 | 25 | 141 | 222 | 223 | 491 +======+====================+====+====+====+=====+=====+=====+ 492 | | Adjacency Segment | | | | | | | 493 | TBA1 | Identifier per | y | y | n | y | y | y | 494 | | Algorithm | | | | | | | 495 +------+--------------------+----+----+----+-----+-----+-----+ 496 | | LAN Adjacency | | | | | | | 497 | TBA2 | Segment Identifier | y | y | n | y | y | y | 498 | | per Algorithm | | | | | | | 499 +------+--------------------+----+----+----+-----+-----+-----+ 501 6.2. IANA OSPFv2 Considerations 503 This document makes the following registrations in the OSPFv2 504 Extended Link TLV Sub-TLVs Registry. 506 +-------+------------------------------------------+---------------+ 507 | Value | Description | Reference | 508 +=======+==========================================+===============+ 509 | TBA3 | OSPFv2 Adj-SID per Algorithm Sub-TLV | This document | 510 +-------+------------------------------------------+---------------+ 511 | TBA4 | OSPFv2 LAN Adj-SID per Algorithm Sub-TLV | This document | 512 +-------+------------------------------------------+---------------+ 514 6.3. IANA OSPFv3 Considerations 516 This document makes the following registrations in the "OSPFv3 517 Extended-LSA Sub-TLVs" Registry. 519 +-------+------------------------------------------+---------------+ 520 | Value | Description | Reference | 521 +=======+==========================================+===============+ 522 | TBA5 | OSPFv3 Adj-SID per Algorithm Sub-TLV | This document | 523 +-------+------------------------------------------+---------------+ 524 | TBA6 | OSPFv3 LAN Adj-SID per Algorithm Sub-TLV | This document | 525 +-------+------------------------------------------+---------------+ 527 7. Security Considerations 529 There are no new security issues introduced by the extensions in this 530 document. Refer to [RFC8665], [RFC8666], [RFC8667] for other 531 security considerations. 533 8. Acknowledgements 535 TBD 537 9. Normative References 539 [I-D.ietf-lsr-flex-algo] 540 Psenak, P., Hegde, S., Filsfils, C., Talaulikar, K., and 541 A. Gulko, "IGP Flexible Algorithm", draft-ietf-lsr-flex- 542 algo-15 (work in progress), April 2021. 544 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 545 Requirement Levels", BCP 14, RFC 2119, 546 DOI 10.17487/RFC2119, March 1997, 547 . 549 [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., 550 Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute 551 Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 552 2015, . 554 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 555 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 556 May 2017, . 558 [RFC8362] Lindem, A., Roy, A., Goethals, D., Reddy Vallem, V., and 559 F. Baker, "OSPFv3 Link State Advertisement (LSA) 560 Extensibility", RFC 8362, DOI 10.17487/RFC8362, April 561 2018, . 563 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 564 Decraene, B., Litkowski, S., and R. Shakir, "Segment 565 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 566 July 2018, . 568 [RFC8665] Psenak, P., Ed., Previdi, S., Ed., Filsfils, C., Gredler, 569 H., Shakir, R., Henderickx, W., and J. Tantsura, "OSPF 570 Extensions for Segment Routing", RFC 8665, 571 DOI 10.17487/RFC8665, December 2019, 572 . 574 [RFC8666] Psenak, P., Ed. and S. Previdi, Ed., "OSPFv3 Extensions 575 for Segment Routing", RFC 8666, DOI 10.17487/RFC8666, 576 December 2019, . 578 [RFC8667] Previdi, S., Ed., Ginsberg, L., Ed., Filsfils, C., 579 Bashandy, A., Gredler, H., and B. Decraene, "IS-IS 580 Extensions for Segment Routing", RFC 8667, 581 DOI 10.17487/RFC8667, December 2019, 582 . 584 Authors' Addresses 586 Shaofu Peng 587 ZTE Corporation 588 China 590 Email: peng.shaofu@zte.com.cn 592 Ran Chen 593 ZTE Corporation 594 China 596 Email: chen.ran@zte.com.cn 598 Ketan Talaulikar 599 Cisco Systems 600 India 602 Email: ketant@cisco.com 604 Peter Psenak 605 Cisco Systems 606 Slovakia 608 Email: ppsenak@cisco.com