idnits 2.17.1 draft-ietf-idr-sr-policy-path-mtu-05.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 11 instances of too long lines in the document, the longest one being 5 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (22 April 2022) is 734 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-idr-segment-routing-te-policy-17 == Outdated reference: A later version (-22) exists of draft-ietf-spring-mpls-path-segment-07 == Outdated reference: A later version (-07) exists of draft-ietf-spring-srv6-path-segment-03 Summary: 1 error (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Interdomain Routing Working Group C. Li 3 Internet-Draft Huawei Technologies 4 Intended status: Standards Track Y. Zhu 5 Expires: 24 October 2022 China Telecom 6 A. Sawaf 7 Saudi Telecom Company 8 Z. Li 9 Huawei Technologies 10 22 April 2022 12 Segment Routing Path MTU in BGP 13 draft-ietf-idr-sr-policy-path-mtu-05 15 Abstract 17 Segment Routing is a source routing paradigm that explicitly 18 indicates the forwarding path for packets at the ingress node. An SR 19 policy is a set of candidate SR paths consisting of one or more 20 segment lists with necessary path attributes. However, the path 21 maximum transmission unit (MTU) information for SR path is not 22 available in the SR policy since the SR does not require signaling. 23 This document defines extensions to BGP to distribute path MTU 24 information within SR policies. 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 24 October 2022. 43 Copyright Notice 45 Copyright (c) 2022 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 (https://trustee.ietf.org/ 50 license-info) in effect on the date of publication of this document. 51 Please review these documents carefully, as they describe your rights 52 and restrictions with respect to this document. Code Components 53 extracted from this document must include Revised BSD License text as 54 described in Section 4.e of the Trust Legal Provisions and are 55 provided without warranty as described in the Revised BSD License. 57 Table of Contents 59 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 60 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 61 2.1. Requirements Language . . . . . . . . . . . . . . . . . . 5 62 3. SR Policy for Path MTU . . . . . . . . . . . . . . . . . . . 5 63 3.1. Path MTU Sub-TLV . . . . . . . . . . . . . . . . . . . . 6 64 4. Operations . . . . . . . . . . . . . . . . . . . . . . . . . 7 65 5. Implementation Status . . . . . . . . . . . . . . . . . . . . 7 66 5.1. Huawei's Commercial Delivery . . . . . . . . . . . . . . 8 67 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 68 7. Security Considerations . . . . . . . . . . . . . . . . . . . 8 69 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 8 70 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 71 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 72 10.1. Normative References . . . . . . . . . . . . . . . . . . 9 73 10.2. Informative References . . . . . . . . . . . . . . . . . 9 74 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 76 1. Introduction 78 Segment routing (SR) [RFC8402] is a source routing paradigm that 79 explicitly indicates the forwarding path for packets at the ingress 80 node. The ingress node steers packets into a specific path according 81 to the Segment Routing Policy ( SR Policy) as defined in 82 [I-D.ietf-spring-segment-routing-policy]. In order to distribute SR 83 policies to the headend, [I-D.ietf-idr-segment-routing-te-policy] 84 specifies a mechanism by using BGP. 86 The maximum transmission unit (MTU) is the largest size packet or 87 frame, in bytes, that can be sent in a network. An MTU that is too 88 large might cause retransmissions. Too small an MTU might cause the 89 router to send and handle relatively more header overhead and 90 acknowledgments. 92 When an LSP is created across a set of links with different MTU 93 sizes, the ingress router needs to know what the smallest MTU is on 94 the LSP path. If this MTU is larger than the MTU of one of the 95 intermediate links, traffic might be dropped, because MPLS packets 96 cannot be fragmented. Also, the ingress router may not be aware of 97 this type of traffic loss, because the control plane for the LSP 98 would still function normally. [RFC3209] specify the mechanism of 99 MTU signaling in RSVP. Likewise, SRv6 pakcets will be dropped if the 100 packet size is larger than path MTU, since IPv6 packet can not be 101 fragmented on transmission [RFC8200] . 103 The host may discover the PMTU by Path MTU Discovery (PMTUD) 104 [RFC8201] or other mechanisms. But the ingress still needs to 105 examine the packet size for dropping too large packets to avoid 106 malicious traffic or error traffic. Also, the packet size may 107 exceeds the PMTU because of the new encapsulation of SR-MPLS or SRv6 108 packet at the ingress. 110 In order to check whether the Packet size exceeds the PMTU or not, 111 the ingress node needs to know the Path MTU associated to the 112 forwarding path. However, the path maximum transmission unit (MTU) 113 information for SR path is not available since the SR does not 114 require signaling. 116 This document defines extensions to BGP to distribute path MTU 117 information within SR policies. The Link MTU information can be 118 obtained via BGP-LS [I-D.zhu-idr-bgp-ls-path-mtu] or some other 119 means. With the Link MTU, the controller can compute the PMTU and 120 convey the information via the BGP SR policy. 122 2. Terminology 124 This memo makes use of the terms defined in [RFC8402] and [RFC3209]. 126 MTU: Maximum Transmission Unit, the size in bytes of the largest IP 127 packet, including the IP header and payload, that can be 128 transmitted on a link or path. Note that this could more properly 129 be called the IP MTU, to be consistent with how other standards 130 organizations use the acronym MTU. 132 Link MTU: The Maximum Transmission Unit, i.e., maximum IP packet 133 size in bytes, that can be conveyed in one piece over a link. Be 134 aware that this definition is different from the definition used 135 by other standards organizations. 137 For IETF documents, link MTU is uniformly defined as the IP MTU 138 over the link. This includes the IP header, but excludes link 139 layer headers and other framing that is not part of IP or the IP 140 payload. 142 Be aware that other standards organizations generally define link 143 MTU to include the link layer headers. 145 For the MPLS data plane, this size includes the IP header and data (or 146 other payload) and the label stack but does not include any lower-layer 147 headers. A link may be an interface (such as Ethernet or Packet-over- 148 SONET), a tunnel (such as GRE or IPsec), or an LSP. 150 Path: The set of links traversed by a packet between a source node 151 and a destination node. 153 Path MTU, or PMTU: The minimum link MTU of all the links in a path 154 between a source node and a destination node. 156 For the MPLS data plane, it is the MTU of an LSP from a given LSR to 157 the egress(es), over each valid (forwarding) path. This size includes 158 the IP header and data (or other payload) and any part of the label 159 stack that was received by the ingress LSR before it placed the packet 160 into the LSP (this part of the label stack is considered part of the 161 payload for this LSP). The size does not include any lower-level 162 headers. 164 Note that: The PMTU value may be modified by subtracting some overhead 165 introduced by protection mechanism, like TI-LFA. Therefore, the value 166 of PMTU dilivered to the ingress node MAY be smaller than the minimum 167 link MTU of all the links in a path between a source node and a 168 destination node. 170 2.1. Requirements Language 172 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 173 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 174 "OPTIONAL" in this document are to be interpreted as described in BCP 175 14 [RFC2119] [RFC8174] when, and only when, they appear in all 176 capitals, as shown here. 178 3. SR Policy for Path MTU 180 As defined in [I-D.ietf-idr-segment-routing-te-policy] , the SR 181 policy encoding structure is as follows: 183 SR Policy SAFI NLRI: 184 Attributes: 185 Tunnel Encaps Attribute (23) 186 Tunnel Type: SR Policy 187 Binding SID 188 Preference 189 Priority 190 Policy Name 191 Explicit NULL Label Policy (ENLP) 192 Segment List 193 Weight 194 Segment 195 Segment 196 ... 197 ... 199 As introduced in Section 1, each SR path has it's path MTU. SR 200 policy with SR path MTU information is expressed as below: 202 SR Policy SAFI NLRI: 203 Attributes: 204 Tunnel Encaps Attribute (23) 205 Tunnel Type: SR Policy 206 Binding SID 207 Preference 208 Priority 209 Policy Name 210 Explicit NULL Label Policy (ENLP) 211 Segment List 212 Weight 213 Path MTU 214 Segment 215 Segment 216 ... 217 ... 219 3.1. Path MTU Sub-TLV 221 A Path MTU sub-TLV is an Optional sub-TLV. When it appears, it must 222 appear only once at most within a Segment List sub-TLV. If multiple 223 Path MTU sub-TLVs appear within a Segment List sub-TLV, the NLRI MUST 224 be treated as a malformed NLRI. 226 As per [I-D.ietf-idr-segment-routing-te-policy], when the error 227 determined allows for the router to skip the malformed NLRI(s) and 228 continue processing of the rest of the update message, then it MUST 229 handle such malformed NLRIs as 'Treat-as-withdraw'. This document 230 does not define new error handling rules for Path MTU sub-TLV, and 231 the error handling rules defined in 232 [I-D.ietf-idr-segment-routing-te-policy] apply to this document. 234 A Path MTU sub-TLV is associated with an SR path specified by a 235 segment list sub-TLV or a path segment 236 [I-D.ietf-spring-mpls-path-segment] 237 [I-D.ietf-spring-srv6-path-segment]. The Path MTU sub-TLV has the 238 following format: 240 0 1 2 3 241 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 242 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 243 | Type | Length | RESERVED | 244 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 245 | Path MTU | 246 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 247 Figure 1. Path MTU sub-TLV 249 Where: 251 Type: to be assigned by IANA. 253 Length: the total length of the value field not including Type and 254 Length fields. 256 Reserved: 16 bits reserved and MUST be set to 0 on transmission and 257 MUST be ignored on receipt. 259 Path MTU: 4 bytes value of path MTU in octets. The value can be 260 calculated by a central controller or other devices based on the 261 information that learned via IGP of BGP-LS or other means. 263 Whenever the path MTU of a physical or logical interface is changed, 264 a new SR policy with new path MTU information should be updated 265 accordingly by BGP. 267 4. Operations 269 The document does not bring new operation beyond the description of 270 operations defined in [I-D.ietf-idr-segment-routing-te-policy]. The 271 existing operations defined in 272 [I-D.ietf-idr-segment-routing-te-policy] can apply to this document 273 directly. 275 Typically but not limit to, the SR policies carrying path MTU 276 infomation are configured by a controller. 278 After configuration, the SR policies carrying path MTU infomation 279 will be advertised by BGP update messages. The operation of 280 advertisement is the same as defined in 281 [I-D.ietf-idr-segment-routing-te-policy], as well as the receiption. 283 The consumer of the SR policies is not the BGP process. The 284 operation of sending information to consumers is out of scope of this 285 document. 287 5. Implementation Status 289 [Note to the RFC Editor - remove this section before publication, as 290 well as remove the reference to [RFC7942]. 292 This section records the status of known implementations of the 293 protocol defined by this specification at the time of posting of this 294 Internet-Draft, and is based on a proposal described in [RFC7942]. 295 The description of implementations in this section is intended to 296 assist the IETF in its decision processes in progressing drafts to 297 RFCs. Please note that the listing of any individual implementation 298 here does not imply endorsement by the IETF. Furthermore, no effort 299 has been spent to verify the information presented here that was 300 supplied by IETF contributors. This is not intended as, and must not 301 be construed to be, a catalog of available implementations or their 302 features. Readers are advised to note that other implementations may 303 exist. 305 According to [RFC7942], "this will allow reviewers and working groups 306 to assign due consideration to documents that have the benefit of 307 running code, which may serve as evidence of valuable experimentation 308 and feedback that have made the implemented protocols more mature. 309 It is up to the individual working groups to use this information as 310 they see fit". 312 5.1. Huawei's Commercial Delivery 314 The feature has been implemented on Huawei VRP8. 316 * Organization: Huawei 318 * Implementation: Huawei's Commercial Delivery implementation based 319 on VRP8. 321 * Description: The implementation has been done. 323 * Maturity Level: Product 325 * Contact: guokeqiang@huawei.com 327 6. IANA Considerations 329 This document defines a new Sub-TLV in registries "SR Policy List 330 Sub- TLVs" [I-D.ietf-idr-segment-routing-te-policy]: 332 Value Description Reference 333 --------------------------------------------------------------------- 334 TBA Path MTU sub-TLV This document 336 7. Security Considerations 338 TBA 340 8. Contributors 342 Jun Qiu 344 Huawei Technologies 346 China 348 Email: qiujun8@huawei.com 350 9. Acknowledgements 352 Authors would like to thank Ketan Talaulikar, Aijun Wang, Weiqiang 353 Cheng, Huanan Chen, Chongfeng Xie, Stefano Previdi, Taishan Tang, 354 Keqiang Guo, Chen Zhang, Susan Hares, Weiguo Hao, Gong Xia, Bing 355 Yang, Linda Dunbar, Shunwan Zhuang, Huaimo Chen, Mach Chen, Jingring 356 Xie, Zhibo Hu, Jimmy Dong and Jianwei Mao for their proprefessional 357 comments and help. 359 10. References 361 10.1. Normative References 363 [I-D.ietf-idr-segment-routing-te-policy] 364 Previdi, S., Filsfils, C., Talaulikar, K., Mattes, P., 365 Jain, D., and S. Lin, "Advertising Segment Routing 366 Policies in BGP", Work in Progress, Internet-Draft, draft- 367 ietf-idr-segment-routing-te-policy-17, 14 April 2022, 368 . 371 [I-D.ietf-spring-segment-routing-policy] 372 Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and 373 P. Mattes, "Segment Routing Policy Architecture", Work in 374 Progress, Internet-Draft, draft-ietf-spring-segment- 375 routing-policy-22, 22 March 2022, 376 . 379 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 380 Requirement Levels", BCP 14, RFC 2119, 381 DOI 10.17487/RFC2119, March 1997, 382 . 384 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 385 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 386 May 2017, . 388 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 389 Decraene, B., Litkowski, S., and R. Shakir, "Segment 390 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 391 July 2018, . 393 10.2. Informative References 395 [I-D.ietf-spring-mpls-path-segment] 396 Cheng, W., Li, H., Chen, M., Gandhi, R., and R. Zigler, 397 "Path Segment in MPLS Based Segment Routing Network", Work 398 in Progress, Internet-Draft, draft-ietf-spring-mpls-path- 399 segment-07, 20 December 2021, 400 . 403 [I-D.ietf-spring-srv6-path-segment] 404 Li, C., Cheng, W., Chen, M., Dhody, D., and Y. Zhu, "Path 405 Segment for SRv6 (Segment Routing in IPv6)", Work in 406 Progress, Internet-Draft, draft-ietf-spring-srv6-path- 407 segment-03, 27 November 2021, 408 . 411 [I-D.zhu-idr-bgp-ls-path-mtu] 412 Zhu, Y., Hu, Z., Peng, S., and R. Mwehaire, "Signaling 413 Maximum Transmission Unit (MTU) using BGP-LS", Work in 414 Progress, Internet-Draft, draft-zhu-idr-bgp-ls-path-mtu- 415 05, 17 November 2020, . 418 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., 419 and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP 420 Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, 421 . 423 [RFC7942] Sheffer, Y. and A. Farrel, "Improving Awareness of Running 424 Code: The Implementation Status Section", BCP 205, 425 RFC 7942, DOI 10.17487/RFC7942, July 2016, 426 . 428 [RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6 429 (IPv6) Specification", STD 86, RFC 8200, 430 DOI 10.17487/RFC8200, July 2017, 431 . 433 [RFC8201] McCann, J., Deering, S., Mogul, J., and R. Hinden, Ed., 434 "Path MTU Discovery for IP version 6", STD 87, RFC 8201, 435 DOI 10.17487/RFC8201, July 2017, 436 . 438 Authors' Addresses 440 Cheng Li 441 Huawei Technologies 442 Huawei Campus, No. 156 Beiqing Rd. 443 Beijing 444 100095 445 China 446 Email: c.l@huawei.com 448 YongQing Zhu 449 China Telecom 450 109, West Zhongshan Road, Tianhe District. 451 Guangzhou 452 China 453 Email: zhuyq8@chinatelecom.cn 454 Ahmed El Sawaf 455 Saudi Telecom Company 456 Riyadh 457 Saudi Arabia 458 Email: aelsawaf.c@stc.com.sa 460 Zhenbin Li 461 Huawei Technologies 462 Huawei Campus, No. 156 Beiqing Rd. 463 Beijing 464 100095 465 China 466 Email: lizhenbin@huawei.com