idnits 2.17.1 draft-ietf-mpls-sr-over-ip-03.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 (March 3, 2019) is 1880 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 (-22) exists of draft-ietf-spring-segment-routing-mpls-18 ** Obsolete normative reference: RFC 6347 (Obsoleted by RFC 9147) == Outdated reference: A later version (-26) exists of draft-ietf-6man-segment-routing-header-16 == Outdated reference: A later version (-25) exists of draft-ietf-isis-segment-routing-extensions-22 Summary: 1 error (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group X. Xu 3 Internet-Draft Alibaba, Inc 4 Intended status: Standards Track S. Bryant 5 Expires: September 4, 2019 Huawei 6 A. Farrel 7 Old Dog Consulting 8 S. Hassan 9 Cisco 10 W. Henderickx 11 Nokia 12 Z. Li 13 Huawei 14 March 3, 2019 16 SR-MPLS over IP 17 draft-ietf-mpls-sr-over-ip-03 19 Abstract 21 MPLS Segment Routing (SR-MPLS) is an MPLS data plane-based source 22 routing paradigm in which the sender of a packet is allowed to 23 partially or completely specify the route the packet takes through 24 the network by imposing stacked MPLS labels on the packet. SR-MPLS 25 could be leveraged to realize a source routing mechanism across MPLS, 26 IPv4, and IPv6 data planes by using an MPLS label stack as a source 27 routing instruction set while preserving backward compatibility with 28 SR-MPLS. 30 This document describes how SR-MPLS capable routers and IP-only 31 routers can seamlessly co-exist and interoperate through the use of 32 SR-MPLS label stacks and IP encapsulation/tunneling such as MPLS-in- 33 UDP as defined in RFC 7510. 35 Status of This Memo 37 This Internet-Draft is submitted in full conformance with the 38 provisions of BCP 78 and BCP 79. 40 Internet-Drafts are working documents of the Internet Engineering 41 Task Force (IETF). Note that other groups may also distribute 42 working documents as Internet-Drafts. The list of current Internet- 43 Drafts is at https://datatracker.ietf.org/drafts/current/. 45 Internet-Drafts are draft documents valid for a maximum of six months 46 and may be updated, replaced, or obsoleted by other documents at any 47 time. It is inappropriate to use Internet-Drafts as reference 48 material or to cite them other than as "work in progress." 49 This Internet-Draft will expire on September 4, 2019. 51 Copyright Notice 53 Copyright (c) 2019 IETF Trust and the persons identified as the 54 document authors. All rights reserved. 56 This document is subject to BCP 78 and the IETF Trust's Legal 57 Provisions Relating to IETF Documents 58 (https://trustee.ietf.org/license-info) in effect on the date of 59 publication of this document. Please review these documents 60 carefully, as they describe your rights and restrictions with respect 61 to this document. Code Components extracted from this document must 62 include Simplified BSD License text as described in Section 4.e of 63 the Trust Legal Provisions and are provided without warranty as 64 described in the Simplified BSD License. 66 Table of Contents 68 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 69 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 70 2. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 3 71 3. Procedures of SR-MPLS over IP . . . . . . . . . . . . . . . . 5 72 3.1. Forwarding Entry Construction . . . . . . . . . . . . . . 5 73 3.2. Packet Forwarding Procedures . . . . . . . . . . . . . . 7 74 3.2.1. Packet Forwarding with Penultimate Hop Popping . . . 8 75 3.2.2. Packet Forwarding without Penultimate Hop Popping . . 9 76 3.2.3. Additional Forwarding Procedures . . . . . . . . . . 10 77 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 78 5. Security Considerations . . . . . . . . . . . . . . . . . . . 12 79 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 12 80 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 13 81 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 82 8.1. Normative References . . . . . . . . . . . . . . . . . . 13 83 8.2. Informative References . . . . . . . . . . . . . . . . . 14 84 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 86 1. Introduction 88 MPLS Segment Routing (SR-MPLS) [I-D.ietf-spring-segment-routing-mpls] 89 is an MPLS data plane-based source routing paradigm in which the 90 sender of a packet is allowed to partially or completely specify the 91 route the packet takes through the network by imposing stacked MPLS 92 labels on the packet. SR-MPLS uses an MPLS label stack to encode a 93 source routing instruction set. This can be used to realize a source 94 routing mechanism that can operate across MPLS, IPv4, and IPv6 data 95 planes. This approach preserves backward compatibility with SR-MPLS. 96 More specifically, the source routing instruction set information 97 contained in a source routed packet could be uniformly encoded as an 98 MPLS label stack no matter whether the underlay is IPv4, IPv6, or 99 MPLS. 101 This document describes how SR-MPLS capable routers and IP-only 102 routers can seamlessly co-exist and interoperate through the use of 103 SR-MPLS label stacks and IP encapsulation/tunneling such as MPLS-in- 104 UDP [RFC7510]. 106 Section 2 describes various use cases for the tunneling SR-MPLS over 107 IP. Section 3 describes a typical application scenario and how the 108 packet forwarding happens. 110 1.1. Terminology 112 This memo makes use of the terms defined in [RFC3031] and 113 [I-D.ietf-spring-segment-routing-mpls]. 115 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 116 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 117 "OPTIONAL" in this document are to be interpreted as described in BCP 118 14 [RFC2119] [RFC8174] when, and only when, they appear in all 119 capitals, as shown here. 121 2. Use Cases 123 Tunneling SR-MPLS using IPv4 and/or IPv6 tunnels is useful at least 124 in the following use cases: 126 o Incremental deployment of the SR-MPLS technology may be 127 facilitated by tunneling SR-MPLS packets across parts of a network 128 that are not SR-MPLS enabled using an IP tunneling mechanism such 129 as MPLS-in-UDP [RFC7510]. The tunnel selected MUST have its 130 remote end point (destination) address equal to the address of the 131 next SR-MPLS capable node along the path (i.e., the egress of the 132 active node segment). This is shown in Figure 1. 134 ________________________ 135 _______ ( ) _______ 136 ( ) ( IP Network ) ( ) 137 ( SR-MPLS ) ( ) ( SR-MPLS ) 138 ( Network ) ( ) ( Network ) 139 ( -------- -------- ) 140 ( | Border | SR-in-UDP Tunnel | Border | ) 141 ( | Router |========================| Router | ) 142 ( | R1 | | R2 | ) 143 ( -------- -------- ) 144 ( ) ( ) ( ) 145 ( ) ( ) ( ) 146 (_______) ( ) (_______) 147 (________________________) 149 Figure 1: SR-MPLS in UDP to Tunnel Between SR-MPLS Sites 151 o If encoding of entropy ([RFC6790] is desired, IP tunneling 152 mechanisms that allow encoding of entropy, such as MPLS-in-UDP 153 encapsulation [RFC7510] where the source port of the UDP header is 154 used as an entropy field, may be used to maximize the utilization 155 of ECMP and/or LAG, especially when it is difficult to make use of 156 the entropy label mechanism. Refer to 157 [I-D.ietf-mpls-spring-entropy-label]) for more discussion about 158 using entropy labels in SR-MPLS. 160 o Tunneling MPLS into IP provides a technology that enables SR in an 161 IPv4 and/or IPv6 network where the routers do not support SRv6 162 capabilities [I-D.ietf-6man-segment-routing-header] and where MPLS 163 forwarding is not an option. This is shown in Figure 2. 165 __________________________________ 166 __( IP Network )__ 167 __( )__ 168 ( -- -- -- ) 169 -------- -- -- |SR| -- |SR| -- |SR| -- -------- 170 | Ingress| |IR| |IR| | | |IR| | | |IR| | | |IR| | Egress | 171 --->| Router |===========| |======| |======| |======| Router |---> 172 | SR | | | | | | | | | | | | | | | | | | SR | 173 -------- -- -- | | -- | | -- | | -- -------- 174 (__ -- -- -- __) 175 (__ __) 176 (__________________________________) 178 Key: 179 IR : IP-only Router 180 SR : SR-MPLS-capable Router 181 == : SR-MPLS in UDP Tunnel 183 Figure 2: SR-MPLS Enabled Within an IP Network 185 3. Procedures of SR-MPLS over IP 187 This section describes the construction of forwarding information 188 base (FIB) entries and the forwarding behavior that allow the 189 deployment of SR-MPLS when some routers in the network are IP only 190 (i.e., do not support SR-MPLS). Note that the examples in 191 Section 3.1 and Section 3.2 assume that OSPF or ISIS is enabled: in 192 fact, other mechanisms of discovery and advertisement could be used 193 including other routing protocols (such as BGP) or a central 194 controller. 196 3.1. Forwarding Entry Construction 198 This sub-section describes the how to construct the forwarding 199 information base (FIB) entry on an SR-MPLS-capable router when some 200 or all of the next-hops along the shortest path towards a prefix 201 Segment Identifier (prefix-SID) are IP-only routers. 203 Consider router A that receives a labeled packet with top label L(E) 204 that corresponds to the prefix-SID SID(E) of prefix P(E) advertised 205 by router E. Suppose the i-th next-hop router (termed NHi) along the 206 shortest path from router A toward SID(E) is not SR-MPLS capable 207 while both routers A and E are SR-MPLS capable. The following 208 processing steps apply: 210 o The Segment Routing Global Block (SRGB) is defined in [RFC8402]. 211 Router E is SR-MPLS capable, so it advertises an SRGB as described 212 in [I-D.ietf-ospf-segment-routing-extensions] and 213 [I-D.ietf-isis-segment-routing-extensions]. 215 o When Router E advertises the prefix-SID SID(E) of prefix P(E) it 216 MUST also advertise the encapsulation endpoint and the tunnel type 217 of any tunnel used to reach E. It does this using the mechanisms 218 described in [I-D.ietf-isis-encapsulation-cap] or 219 [I-D.ietf-ospf-encapsulation-cap]. 221 o If A and E are in different IGP areas/levels, then: 223 * The OSPF Tunnel Encapsulation TLV 224 [I-D.ietf-ospf-encapsulation-cap] or the ISIS Tunnel 225 Encapsulation sub-TLV [I-D.ietf-isis-encapsulation-cap] is 226 flooded domain-wide. 228 * The OSPF SID/label range TLV 229 [I-D.ietf-ospf-segment-routing-extensions] or the ISIS SR- 230 Capabilities Sub-TLV [I-D.ietf-isis-segment-routing-extensions] 231 is advertised domain-wide. This way router A knows the 232 characteristics of the router that originated the advertisement 233 of SID(E) (i.e., router E). 235 * When router E advertises the prefix P(E): 237 + If router E is running ISIS it uses the extended 238 reachability TLV (TLVs 135, 235, 236, 237) and associates 239 the IPv4/IPv6 or IPv4/IPv6 source router ID sub-TLV(s) 240 [RFC7794]. 242 + If router E is running OSPF it uses the OSPFv2 Extended 243 Prefix Opaque LSA [RFC7684] and sets the flooding scope to 244 AS-wide. 246 * If router E is running ISIS and advertises the ISIS 247 capabilities TLV (TLV 242) [RFC7981], it MUST set the "router- 248 ID" field to a valid value or include an IPV6 TE router-ID sub- 249 TLV (TLV 12), or do both. The "S" bit (flooding scope) of the 250 ISIS capabilities TLV (TLV 242) MUST be set to "1" . 252 o Router A programs the FIB entry for prefix P(E) corresponding to 253 the SID(E) as follows: 255 * If the NP flag in OSPF or the P flag in ISIS is clear: 257 pop the top label 259 * If the NP flag in OSPF or the P flag in ISIS is set: 261 swap the top label to a value equal to SID(E) plus the lower 262 bound of the SRGB of E 264 Once constructed, the FIB can be used to tell a router how to process 265 packets. It encapsulates the packets according to the encapsulation 266 advertised in [I-D.ietf-isis-encapsulation-cap] or 267 [I-D.ietf-ospf-encapsulation-cap]. Then it sends the packets towards 268 the next hop NHi. 270 3.2. Packet Forwarding Procedures 272 [RFC7510] specifies an IP-based encapsulation for MPLS, i.e., MPLS- 273 in-UDP. This approach is applicable where IP-based encapsulation for 274 MPLS is required and further fine-grained load balancing of MPLS 275 packets over IP networks over Equal-Cost Multipath (ECMP) and/or Link 276 Aggregation Groups (LAGs) is also required. This section provides 277 details about the forwarding procedure when when UDP encapsulation is 278 adopted for SR-MPLS over IP. 280 Nodes that are SR-MPLS capable can process SR-MPLS packets. Not all 281 of the nodes in an SR-MPLS domain are SR-MPLS capable. Some nodes 282 may be "legacy routers" that cannot handle SR-MPLS packets but can 283 forward IP packets. An SR-MPLS-capable node MAY advertise its 284 capabilities using the IGP as described in Section 3. There are six 285 types of node in an SR-MPLS domain: 287 o Domain ingress nodes that receive packets and encapsulate them for 288 transmission across the domain. Those packets may be any payload 289 protocol including native IP packets or packets that are already 290 MPLS encapsulated. 292 o Legacy transit nodes that are IP routers but that are not SR-MPLS 293 capable (i.e., are not able to perform segment routing). 295 o Transit nodes that are SR-MPLS capable but that are not identified 296 by a SID in the SID stack. 298 o Transit nodes that are SR-MPLS capable and need to perform SR-MPLS 299 routing because they are identified by a SID in the SID stack. 301 o The penultimate SR-MPLS capable node on the path that processes 302 the last SID on the stack on behalf of the domain egress node. 304 o The domain egress node that forwards the payload packet for 305 ultimate delivery. 307 3.2.1. Packet Forwarding with Penultimate Hop Popping 309 The description in this section assumes that the label associated 310 with each prefix-SID is advertised by the owner of the prefix-SID is 311 a Penultimate Hop Popping (PHP) label. That is, the NP flag in OSPF 312 or the P flag in ISIS associated with the prefix SID is not set. 314 +-----+ +-----+ +-----+ +-----+ +-----+ 315 | A +-------+ B +-------+ C +-------+ D +-------+ H | 316 +-----+ +--+--+ +--+--+ +--+--+ +-----+ 317 | | | 318 | | | 319 +--+--+ +--+--+ +--+--+ 320 | E +-------+ F +-------+ G | 321 +-----+ +-----+ +-----+ 323 +--------+ 324 |IP(A->E)| 325 +--------+ +--------+ +--------+ 326 | UDP | |IP(E->G)| |IP(G->H)| 327 +--------+ +--------+ +--------+ 328 | L(G) | | UDP | | UDP | 329 +--------+ +--------+ +--------+ 330 | L(H) | | L(H) | |Exp Null| 331 +--------+ +--------+ +--------+ 332 | Packet | ---> | Packet | ---> | Packet | 333 +--------+ +--------+ +--------+ 335 Figure 3: Packet Forwarding Example with PHP 337 In the example shown in Figure 3, assume that routers A, E, G and H 338 are SR-MPLS-capable while the remaining routers (B, C, D and F) are 339 only capable of forwarding IP packets. Routers A, E, G, and H 340 advertise their Segment Routing related information via IS-IS or 341 OSPF. 343 Now assume that router A (the Domain ingress) wants to send a packet 344 to router H (the Domain egress) via the explicit path {E->G->H}. 345 Router A will impose an MPLS label stack on the packet that 346 corresponds to that explicit path. Since the next hop toward router 347 E is only IP-capable (B is a legacy transit node), router A replaces 348 the top label (that indicated router E) with a UDP-based tunnel for 349 MPLS (i.e., MPLS-over-UDP [RFC7510]) to router E and then sends the 350 packet. In other words, router A pops the top label and then 351 encapsulates the MPLS packet in a UDP tunnel to router E. 353 When the IP-encapsulated MPLS packet arrives at router E (which is an 354 SR-MPLS-capable transit node), router E strips the IP-based tunnel 355 header and then processes the decapsulated MPLS packet. The top 356 label indicates that the packet must be forwarded toward router G. 357 Since the next hop toward router G is only IP-capable, router E 358 replaces the current top label with an MPLS-over-UDP tunnel toward 359 router G and sends it out. That is, router E pops the top label and 360 then encapsulates the MPLS packet in a UDP tunnel to router G. 362 When the packet arrives at router G, router G will strip the IP-based 363 tunnel header and then process the decapsulated MPLS packet. The top 364 label indicates that the packet must be forwarded toward router H. 365 Since the next hop toward router H is only IP-capable (D is a legacy 366 transit router), router G would replace the current top label with an 367 MPLS-over-UDP tunnel toward router H and send it out. However, since 368 router G reaches the bottom of the label stack (G is the penultimate 369 SR-MPLS capable node on the path) this would leave the original 370 packet that router A wanted to send to router H encapsulated in UDP 371 as if it was MPLS (i.e., with a UDP header and destination port 372 indicating MPLS) even though the original packet could have been any 373 protocol. That is, the final SR-MPLS has been popped exposing the 374 payload packet. 376 To handle this, when a router (here it is router G) pops the final 377 SR-MPLS label, it inserts an explicit null label [RFC3032] before 378 encapsulating the packet in an MPLS-over-UDP tunnel toward router H 379 and sending it out. That is, router G pops the top label, discovers 380 it has reached the bottom of stack, pushes an explicit null label, 381 and then encapsulates the MPLS packet in a UDP tunnel to router H. 383 3.2.2. Packet Forwarding without Penultimate Hop Popping 385 Figure 4 demonstrates the packet walk in the case where the label 386 associated with each prefix-SID advertised by the owner of the 387 prefix-SID is not a Penultimate Hop Popping (PHP) label (i.e., the 388 the NP flag in OSPF or the P flag in ISIS associated with the prefix 389 SID is set). Apart from the PHP function the roles of the routers is 390 unchanged from Section 3.2.1. 392 +-----+ +-----+ +-----+ +-----+ +-----+ 393 | A +-------+ B +-------+ C +--------+ D +--------+ H | 394 +-----+ +--+--+ +--+--+ +--+--+ +-----+ 395 | | | 396 | | | 397 +--+--+ +--+--+ +--+--+ 398 | E +-------+ F +--------+ G | 399 +-----+ +-----+ +-----+ 401 +--------+ 402 |IP(A->E)| 403 +--------+ +--------+ 404 | UDP | |IP(E->G)| 405 +--------+ +--------+ +--------+ 406 | L(E) | | UDP | |IP(G->H)| 407 +--------+ +--------+ +--------+ 408 | L(G) | | L(G) | | UDP | 409 +--------+ +--------+ +--------+ 410 | L(H) | | L(H) | | L(H) | 411 +--------+ +--------+ +--------+ 412 | Packet | ---> | Packet | ---> | Packet | 413 +--------+ +--------+ +--------+ 415 Figure 4: Packet Forwarding Example without PHP 417 As can be seen from the figure, the SR-MPLS label for each segment is 418 left in place until the end of the segment where it is popped and the 419 next instruction is processed. 421 3.2.3. Additional Forwarding Procedures 423 Non-MPLS Interfaces: Although the description in the previous two 424 sections is based on the use of prefix-SIDs, tunneling SR-MPLS 425 packets is useful when the top label of a received SR-MPLS packet 426 indicates an adjacency-SID and the corresponding adjacent node to 427 that adjacency-SID is not capable of MPLS forwarding but can still 428 process SR-MPLS packets. In this scenario the top label would be 429 replaced by an IP tunnel toward that adjacent node and then 430 forwarded over the corresponding link indicated by the adjacency- 431 SID. 433 When to use IP-based Tunnel: The description in the previous two 434 sections is based on the assumption that MPLS-over-UDP tunnel is 435 used when the nexthop towards the next segment is not MPLS- 436 enabled. However, even in the case where the nexthop towards the 437 next segment is MPLS-capable, an MPLS-over-UDP tunnel towards the 438 next segment could still be used instead due to local policies. 439 For instance, in the example as described in Figure 4, assume F is 440 now an SR-MPLS-capable transit node while all the other 441 assumptions keep unchanged, since F is not identified by a SID in 442 the stack and an MPLS-over-UDP tunnel is preferred to an MPLS LSP 443 according to local policies, router E would replace the current 444 top label with an MPLS-over-UDP tunnel toward router G and send it 445 out. 447 IP Header Fields: When encapsulating an MPLS packet in UDP, the 448 resulting packet is further encapsulated in IP for transmission. 449 IPv4 or IPv6 may be used according to the capabilities of the 450 network. The address fields are set as described in Section 2. 451 The other IP header fields (such as DSCP code point, or IPv6 Flow 452 Label) on each UDP-encapsulated segment SHOULD be configurable 453 according to the operator's policy: they may be copied from the 454 header of the incoming packet; they may be promoted from the 455 header of the payload packet; they may be set according to 456 instructions programmed to be associated with the SID; or they may 457 be configured dependent on the outgoing interface and payload. 459 Entropy and ECMP: When encapsulating an MPLS packet with an IP 460 tunnel header that is capable of encoding entropy (such as 461 [RFC7510]), the corresponding entropy field (the source port in 462 case UDP tunnel) MAY be filled with an entropy value that is 463 generated by the encapsulator to uniquely identify a flow. 464 However, what constitutes a flow is locally determined by the 465 encapsulator. For instance, if the MPLS label stack contains at 466 least one entropy label and the encapsulator is capable of reading 467 that entropy label, the entropy label value could be directly 468 copied to the source port of the UDP header. Otherwise, the 469 encapsulator may have to perform a hash on the whole label stack 470 or the five-tuple of the SR-MPLS payload if the payload is 471 determined as an IP packet. To avoid re-performing the hash or 472 hunting for the entropy label each time the packet is encapsulated 473 in a UDP tunnel it MAY be desirable that the entropy value 474 contained in the incoming packet (i.e., the UDP source port value) 475 is retained when stripping the UDP header and is re-used as the 476 entropy value of the outgoing packet. 478 4. IANA Considerations 480 This document makes no requests for IANA action. 482 5. Security Considerations 484 The security consideration of [RFC8354] and [RFC7510] apply. DTLS 485 [RFC6347] SHOULD be used where security is needed on an MPLS-SR-over- 486 UDP segment. 488 It is difficult for an attacker to pass a raw MPLS encoded packet 489 into a network and operators have considerable experience at 490 excluding such packets at the network boundaries. 492 It is easy for an ingress node to detect any attempt to smuggle an IP 493 packet into the network since it would see that the UDP destination 494 port was set to MPLS. SR packets not having a destination address 495 terminating in the network would be transparently carried and would 496 pose no security risk to the network under consideration. 498 Where control plane techniques are used (as described in Section 3), 499 it is important that these protocols are adequately secured for the 500 environment in which they are run. 502 6. Contributors 504 Ahmed Bashandy 505 Individual 506 Email: abashandy.ietf@gmail.com 508 Clarence Filsfils 509 Cisco 510 Email: cfilsfil@cisco.com 512 John Drake 513 Juniper 514 Email: jdrake@juniper.net 516 Shaowen Ma 517 Juniper 518 Email: mashao@juniper.net 520 Mach Chen 521 Huawei 522 Email: mach.chen@huawei.com 524 Hamid Assarpour 525 Broadcom 526 Email:hamid.assarpour@broadcom.com 528 Robert Raszuk 529 Bloomberg LP 530 Email: robert@raszuk.net 532 Uma Chunduri 533 Huawei 534 Email: uma.chunduri@gmail.com 536 Luis M. Contreras 537 Telefonica I+D 538 Email: luismiguel.contrerasmurillo@telefonica.com 540 Luay Jalil 541 Verizon 542 Email: luay.jalil@verizon.com 544 Gunter Van De Velde 545 Nokia 546 Email: gunter.van_de_velde@nokia.com 548 Tal Mizrahi 549 Marvell 550 Email: talmi@marvell.com 552 Jeff Tantsura 553 Individual 554 Email: jefftant@gmail.com 556 7. Acknowledgements 558 Thanks to Joel Halpern, Bruno Decraene, Loa Andersson, Ron Bonica, 559 Eric Rosen, Jim Guichard, Gunter Van De Velde, Andy Malis, Robert 560 Sparks, and Al Morton for their insightful comments on this draft. 562 8. References 564 8.1. Normative References 566 [I-D.ietf-spring-segment-routing-mpls] 567 Bashandy, A., Filsfils, C., Previdi, S., Decraene, B., 568 Litkowski, S., and R. Shakir, "Segment Routing with MPLS 569 data plane", draft-ietf-spring-segment-routing-mpls-18 570 (work in progress), December 2018. 572 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 573 Requirement Levels", BCP 14, RFC 2119, 574 DOI 10.17487/RFC2119, March 1997, 575 . 577 [RFC3031] Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol 578 Label Switching Architecture", RFC 3031, 579 DOI 10.17487/RFC3031, January 2001, 580 . 582 [RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., 583 Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack 584 Encoding", RFC 3032, DOI 10.17487/RFC3032, January 2001, 585 . 587 [RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer 588 Security Version 1.2", RFC 6347, DOI 10.17487/RFC6347, 589 January 2012, . 591 [RFC7510] Xu, X., Sheth, N., Yong, L., Callon, R., and D. Black, 592 "Encapsulating MPLS in UDP", RFC 7510, 593 DOI 10.17487/RFC7510, April 2015, 594 . 596 [RFC7684] Psenak, P., Gredler, H., Shakir, R., Henderickx, W., 597 Tantsura, J., and A. Lindem, "OSPFv2 Prefix/Link Attribute 598 Advertisement", RFC 7684, DOI 10.17487/RFC7684, November 599 2015, . 601 [RFC7794] Ginsberg, L., Ed., Decraene, B., Previdi, S., Xu, X., and 602 U. Chunduri, "IS-IS Prefix Attributes for Extended IPv4 603 and IPv6 Reachability", RFC 7794, DOI 10.17487/RFC7794, 604 March 2016, . 606 [RFC7981] Ginsberg, L., Previdi, S., and M. Chen, "IS-IS Extensions 607 for Advertising Router Information", RFC 7981, 608 DOI 10.17487/RFC7981, October 2016, 609 . 611 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 612 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 613 May 2017, . 615 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 616 Decraene, B., Litkowski, S., and R. Shakir, "Segment 617 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 618 July 2018, . 620 8.2. Informative References 622 [I-D.ietf-6man-segment-routing-header] 623 Filsfils, C., Previdi, S., Leddy, J., Matsushima, S., and 624 d. daniel.voyer@bell.ca, "IPv6 Segment Routing Header 625 (SRH)", draft-ietf-6man-segment-routing-header-16 (work in 626 progress), February 2019. 628 [I-D.ietf-isis-encapsulation-cap] 629 Xu, X., Decraene, B., Raszuk, R., Chunduri, U., Contreras, 630 L., and L. Jalil, "Advertising Tunnelling Capability in 631 IS-IS", draft-ietf-isis-encapsulation-cap-01 (work in 632 progress), April 2017. 634 [I-D.ietf-isis-segment-routing-extensions] 635 Previdi, S., Ginsberg, L., Filsfils, C., Bashandy, A., 636 Gredler, H., and B. Decraene, "IS-IS Extensions for 637 Segment Routing", draft-ietf-isis-segment-routing- 638 extensions-22 (work in progress), December 2018. 640 [I-D.ietf-mpls-spring-entropy-label] 641 Kini, S., Kompella, K., Sivabalan, S., Litkowski, S., 642 Shakir, R., and J. Tantsura, "Entropy label for SPRING 643 tunnels", draft-ietf-mpls-spring-entropy-label-12 (work in 644 progress), July 2018. 646 [I-D.ietf-ospf-encapsulation-cap] 647 Xu, X., Decraene, B., Raszuk, R., Contreras, L., and L. 648 Jalil, "The Tunnel Encapsulations OSPF Router 649 Information", draft-ietf-ospf-encapsulation-cap-09 (work 650 in progress), October 2017. 652 [I-D.ietf-ospf-segment-routing-extensions] 653 Psenak, P., Previdi, S., Filsfils, C., Gredler, H., 654 Shakir, R., Henderickx, W., and J. Tantsura, "OSPF 655 Extensions for Segment Routing", draft-ietf-ospf-segment- 656 routing-extensions-27 (work in progress), December 2018. 658 [RFC6790] Kompella, K., Drake, J., Amante, S., Henderickx, W., and 659 L. Yong, "The Use of Entropy Labels in MPLS Forwarding", 660 RFC 6790, DOI 10.17487/RFC6790, November 2012, 661 . 663 [RFC8354] Brzozowski, J., Leddy, J., Filsfils, C., Maglione, R., 664 Ed., and M. Townsley, "Use Cases for IPv6 Source Packet 665 Routing in Networking (SPRING)", RFC 8354, 666 DOI 10.17487/RFC8354, March 2018, 667 . 669 Authors' Addresses 671 Xiaohu Xu 672 Alibaba, Inc 674 Email: xiaohu.xxh@alibaba-inc.com 676 Stewart Bryant 677 Huawei 679 Email: stewart.bryant@gmail.com 681 Adrian Farrel 682 Old Dog Consulting 684 Email: adrian@olddog.co.uk 686 Syed Hassan 687 Cisco 689 Email: shassan@cisco.com 691 Wim Henderickx 692 Nokia 694 Email: wim.henderickx@nokia.com 696 Zhenbin Li 697 Huawei 699 Email: lizhenbin@huawei.com