idnits 2.17.1 draft-ietf-mpls-lsp-ping-reply-mode-simple-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 (Using the creation date from RFC4379, updated by this document, for RFC5378 checks: 2002-03-27) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (September 5, 2014) is 3515 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) ** Obsolete normative reference: RFC 4379 (Obsoleted by RFC 8029) == Outdated reference: A later version (-05) exists of draft-ietf-mpls-proxy-lsp-ping-02 Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force N. Akiya 3 Internet-Draft G. Swallow 4 Updates: 4379 (if approved) C. Pignataro 5 Intended status: Standards Track Cisco Systems 6 Expires: March 9, 2015 L. Andersson 7 M. Chen 8 Huawei 9 September 5, 2014 11 Label Switched Path (LSP) Ping/Traceroute Reply Mode Simplification 12 draft-ietf-mpls-lsp-ping-reply-mode-simple-00 14 Abstract 16 The Multiprotocol Label Switching (MPLS) Label Switched Path (LSP) 17 Ping and Traceroute use the Reply Mode field to signal the method to 18 be used in the MPLS echo reply. This document adds one value to the 19 Reply Mode field to indicate reverse LSP. This document also adds an 20 optional TLV which can carry ordered list of Reply Mode values. 22 This document updates RFC4379. 24 Requirements Language 26 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 27 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 28 document are to be interpreted as described in RFC 2119 [RFC2119]. 30 Status of This Memo 32 This Internet-Draft is submitted in full conformance with the 33 provisions of BCP 78 and BCP 79. 35 Internet-Drafts are working documents of the Internet Engineering 36 Task Force (IETF). Note that other groups may also distribute 37 working documents as Internet-Drafts. The list of current Internet- 38 Drafts is at http://datatracker.ietf.org/drafts/current/. 40 Internet-Drafts are draft documents valid for a maximum of six months 41 and may be updated, replaced, or obsoleted by other documents at any 42 time. It is inappropriate to use Internet-Drafts as reference 43 material or to cite them other than as "work in progress." 45 This Internet-Draft will expire on March 9, 2015. 47 Copyright Notice 49 Copyright (c) 2014 IETF Trust and the persons identified as the 50 document authors. All rights reserved. 52 This document is subject to BCP 78 and the IETF Trust's Legal 53 Provisions Relating to IETF Documents 54 (http://trustee.ietf.org/license-info) in effect on the date of 55 publication of this document. Please review these documents 56 carefully, as they describe your rights and restrictions with respect 57 to this document. Code Components extracted from this document must 58 include Simplified BSD License text as described in Section 4.e of 59 the Trust Legal Provisions and are provided without warranty as 60 described in the Simplified BSD License. 62 Table of Contents 64 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 65 2. Problem Statements . . . . . . . . . . . . . . . . . . . . . 3 66 3. Solution . . . . . . . . . . . . . . . . . . . . . . . . . . 4 67 3.1. Reply via reverse LSP . . . . . . . . . . . . . . . . . . 5 68 3.2. Reply Mode Order TLV . . . . . . . . . . . . . . . . . . 5 69 4. Relations to Other LSP Ping/Trace Features . . . . . . . . . 6 70 4.1. Reply Path TLV . . . . . . . . . . . . . . . . . . . . . 6 71 4.1.1. Reply Mode Order TLV Usage Example with Reply Path 72 TLV . . . . . . . . . . . . . . . . . . . . . . . . . 7 73 4.2. Proxy LSP Ping . . . . . . . . . . . . . . . . . . . . . 7 74 5. Security Considerations . . . . . . . . . . . . . . . . . . . 7 75 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 76 6.1. New Reply Mode . . . . . . . . . . . . . . . . . . . . . 8 77 6.2. New Reply Mode Order TLV . . . . . . . . . . . . . . . . 8 78 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 79 8. Contributing Authors . . . . . . . . . . . . . . . . . . . . 8 80 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 81 9.1. Normative References . . . . . . . . . . . . . . . . . . 8 82 9.2. Informative References . . . . . . . . . . . . . . . . . 9 83 Appendix A. Reply Mode Order TLV Beneficial Scenarios . . . . . 9 84 A.1. Incorrect Forwarding Scenario . . . . . . . . . . . . . . 9 85 A.2. Non-Co-Routed Bidirectional LSP Scenario . . . . . . . . 10 86 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 88 1. Introduction 90 The MPLS LSP Ping, described in [RFC4379], allows an initiator to 91 encode instructions (Reply Mode) on how a responder should send the 92 response back to the initiator. [RFC7110] also allows the initiator 93 to encode a TLV (Reply Path TLV) which can instruct the responder to 94 use specific LSP to send the response back to the initiator. Both 95 approaches are powerful as they provide the ability for the initiator 96 to control the return path. 98 However, it is becoming increasingly difficult for an initiator to 99 select a valid return path to encode in the MPLS LSP echo request 100 packets. If the initiator does not select a valid return path, the 101 MPLS LSP echo reply will not get back to the initiator. This results 102 in a false failure of MPLS LSP Ping and Traceroute operation. In an 103 effort to minimize such false failures, different implementations 104 have chosen different default return path encoding for different LSP 105 types and LSP operations. The problem with implementations having 106 different default return path encoding is that the MPLS echo reply 107 will not work in many cases, and the default value may not be the 108 preferred choice by the operators. 110 This document further describes the problem in Section 2, and 111 proposes a solution in Section 3 to minimizes false failure scenarios 112 while accommodating operator preferences. Additionally, Appendix A 113 provides examples of scenarios where the mechanism described in this 114 document provides benefits. 116 2. Problem Statements 118 It is becoming increasingly difficult for implementations to 119 automatically supply a workable return path encoding for all MPLS LSP 120 Ping and Traceroute operations across all LSP types. There are 121 several factors which are contributing to this complication. 123 o Some LSPs have a control-channel, and some do not. Some LSPs have 124 a reverse LSP, and some do not. Some LSPs have IP reachability in 125 the reverse direction, and some do not. 127 o LSRs on some LSPs can have different available return path(s). 128 Available return path(s) can depend on whether the responder is a 129 transit LSR or an egress LSR. In case of a bi-directional LSP, 130 available return path(s) on transit LSRs can also depend on 131 whether LSP is completely co-routed, partially co-routed or 132 associated (i.e., LSPs in the two directions are not co-routed). 134 o MPLS echo request packets may incorrectly terminate on an 135 unintended target, which can have different available return 136 path(s) than the intended target. 138 o The MPLS LSP Ping operation is expected to terminate on egress 139 LSR. However, the MPLS LSP Ping operation with specific TTL 140 values and MPLS LSP Traceroute operation can terminate on both 141 transit LSR(s) and the egress LSR. 143 Except for the case where the responder node does not have an IP 144 route back to the initiator, it is possible to use Reply Mode of 145 value 2 (Reply via an IPv4/IPv6 UDP packet) in all cases. However, 146 some operators are preferring control-channel and reverse LSP as 147 default return path if they are available, which is not always the 148 case. 150 When specific return path encoding is supplied by users or 151 applications, then there are no issues in choosing the return path 152 encoding. When specific return path encoding is not supplied by 153 users or applications, then implementations use extra logic to 154 compute, and sometimes guess, the default return path encodings. If 155 a responder node receives an MPLS echo request containing return path 156 instructions which cannot be accommodated due to unavailability, then 157 the responder often drops such packets. This results in the 158 initiator not receiving the MPLS LSP echo reply packets back. This 159 consequence may be acceptable for failure cases (e.g., broken LSPs) 160 where the MPLS echo request terminated on unintended target. 161 However, the initiator not receiving back MPLS echo reply packets, 162 even when the intended target received and verified the requests, is 163 not desirable as false failures will be conveyed to users. 165 Many operators prefer some return path(s) over others for specific 166 LSP types. To accommodate this, implementations may default to 167 operator preferred return path (or allow default return path to be 168 configured) for a specific operation. However, if the sender of MPLS 169 echo request knew that preferred return path will not be available at 170 the intended target node, then it is not very beneficial to use a 171 Reply Mode corresponding to preferred return path (i.e., the sender 172 of the MPLS echo request will not receive the MPLS echo reply in the 173 successful case). What would be beneficial, for a given operation, 174 is for the sender of the MPLS echo request to determine which return 175 path(s) can and cannot be used ahead of time. 177 This document adds one Reply Mode value to describe the reverse LSP, 178 and one optional TLV to describe an ordered list of reply modes. 179 Based on operational needs, the TLV can describe multiple Reply Mode 180 values in a preferred order to allow the responder to use the first 181 available Reply Mode from the list. This eliminates the need for the 182 initiator to compute, or sometimes guess, the default return path 183 encoding. And that will result in simplified implementations across 184 vendors, and result in improved usability to fit operational needs. 186 3. Solution 188 This document adds one reply mode to indicate reverse LSP, to be used 189 by the MPLS LSP Ping and Traceroute. This document also adds an 190 optional TLV which can carry ordered list of reply modes. 192 3.1. Reply via reverse LSP 194 Some LSP types are capable of having related LSP in reverse 195 direction, through signaling or other association mechanisms. 196 Examples of such LSP types are RSVP LSPs and TP LSPs. This document 197 uses the term "Reverse LSP" to refer to the LSP in reverse direction 198 of such LSP types. Note that this document restricts the scope of 199 "Reverse LSP" applicability to those reverse LSPs which are capable 200 and allowed to carry the IP encapsulated MPLS echo reply. 202 This document adds one Reply Mode to be used by MPLS LSP Ping and 203 Traceroute operations. 205 Value Meaning 206 ----- ------- 207 TBD1 Reply via reverse LSP 209 MPLS echo request with TBD1 (Reply via reverse LSP) in the Reply Mode 210 field may be used to instruct responder to use reverse LSP to send 211 MPLS echo reply. Reverse LSP is in relation to the last FEC 212 specified in the Target FEC Stack TLV. 214 When a responder is using this Reply Mode, transmitting MPLS echo 215 reply packet MUST use IP destination address of 127/8 for IPv4 and 216 0:0:0:0:0:FFFF:7F00/104 for IPv6. 218 3.2. Reply Mode Order TLV 220 This document also introduces a new optional TLV to describe list of 221 Reply Mode values. The new TLV will contain one or more Reply Mode 222 value(s) in preferred order. The first Reply Mode value is the most 223 preferred and the last Reply Mode value is the least preferred. 224 Following rules apply when using Reply Mode Order TLV. 226 1. Reply Mode Order TLV MAY be included in MPLS echo request. 228 2. Reply Mode Order TLV MUST NOT be included in MPLS echo reply. 230 3. Reply Mode field of MPLS echo request MUST be set to a valid 231 value when supplying Reply Mode Order TLV in transmitting MPLS 232 echo request. The initiator SHOULD set Reply Mode field of MPLS 233 echo request to a value that corresponds to a return path which 234 most likely to be available, in case responder does not 235 understand the Reply Mode Order TLV. 237 4. If a responder node understands the Reply Mode Order TLV and the 238 TLV is valid, then the responder MUST consider Reply Mode values 239 described in the TLV and MUST NOT use the value described in the 240 Reply Mode field of received MPLS echo request. 242 5. If a responder node understands the Reply Mode Order TLV but the 243 TLV is not valid (due to conditions listed below), then the 244 responder MUST only use the value described in the Reply Mode 245 field of received MPLS echo request. 247 6. Reply Mode Order TLV MUST contain at least one Reply Mode value, 248 and SHOULD contain at least two Reply Mode values. 250 7. A Reply Mode value MUST NOT be repeated (i.e. MUST NOT appear 251 multiple times) in the Reply Mode Order TLV. 253 8. Reply Mode value 1 (Do not reply) SHOULD NOT be used in the Reply 254 Mode Order TLV. 256 The responding node is to select the first available return path in 257 this TLV. Reply Mode value corresponding to selected return path 258 MUST be set in Reply Mode field of MPLS echo reply to communicate 259 back to the initiator which return path was chosen. 261 The format of the TLV is as follows: 263 0 1 2 3 264 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 265 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 266 | Reply Mode Order TLV Type | Length | 267 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 268 | Reply mode 1 | Reply mode 2 | Reply mode 3 | Reply mode 4 | 269 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 270 Figure 1 Reply Mode Order TLV 272 This is a variable length optional TLV. Each Reply Mode field is 1 273 octet. 275 4. Relations to Other LSP Ping/Trace Features 277 4.1. Reply Path TLV 279 [RFC7110] defines a new Reply Mode (5 - Reply via Specified Path). 280 This Reply Mode specified in MPLS echo request indicates that MPLS 281 echo reply be sent on one specific path described by the Reply Path 282 TLV. The Flags field of the Reply Path TLV can indicate B 283 (Bidirectional) bit to describe reverse direction of the tested 284 bidirectional LSP. However, it is desired to have a new Reply Mode 285 (TBD1 - Reply via reverse LSP) to indicate reverse direction of the 286 tested bidirectional LSP without requiring to include additional TLV 287 (i.e. Reply Path TLV). Therefore, a new Reply Mode (TBD1 - Reply 288 via reverse LSP) has been added. 290 4.1.1. Reply Mode Order TLV Usage Example with Reply Path TLV 292 If the initiator was interested in encoding following return paths: 294 1. Reply via application level control channel 296 2. FEC X 298 3. FEC Y 300 4. Reply via an IPv4/IPv6 UDP packet 302 Then the MPLS echo request message is to carry: 304 o The Reply Mode Order TLV carrying Reply Modes {4, 5, 2} 306 o The Reply Path TLV carrying {FEC X, FEC Y} 308 Described encoding of the Reply Mode Order TLV and the Reply Path TLV 309 in the MPLS echo request message will result in the responder to 310 prefer "Reply via application level control channel (4)", followed by 311 FEC X, FEC Y and then "Reply via an IPv4/IPv6 UDP packet (2)". 313 4.2. Proxy LSP Ping 315 The mechanism defined in this document will work with Proxy LSP Ping 316 defined by [I-D.ietf-mpls-proxy-lsp-ping]. MPLS proxy ping request 317 can carry a Reply Mode value and the Reply Mode Order TLV with list 318 of Reply Mode values. Proxy LSR MUST copy both Reply Mode value and 319 the Reply Mode Order TLV into MPLS echo request. Proxy LSR, upon 320 receiving MPLS echo reply, MUST copy Reply Mode value into MPLS proxy 321 ping reply. With these procedures, Reply Mode used by the MPLS echo 322 reply sender is propagated in the Reply Mode field to the sender of 323 MPLS proxy ping request. 325 5. Security Considerations 327 Beyond those specified in [RFC4379], there are no further security 328 measures required. 330 6. IANA Considerations 331 6.1. New Reply Mode 333 IANA is requested to assign one reply modes from the "Reply Mode" 334 sub-registry within the "Multiprotocol Label Switching Architecture 335 (MPLS)" registry. 337 Value Meaning Reference 338 ----- ------- --------- 339 TBD1 Reply via reverse LSP this document 341 6.2. New Reply Mode Order TLV 343 IANA is requested to assign a new TLV type value from the "TLVs" sub- 344 registry within the "Multiprotocol Label Switching Architecture 345 (MPLS)" registry, for the "Reply Mode Order TLV". 347 The new TLV Type value should be assigned from the range 348 (32768-49161) specified in [RFC4379] section 3 that allows the TLV 349 type to be silently dropped if not recognized. 351 Type Meaning Reference 352 ---- ------- --------- 353 TBD2 Reply Mode Order TLV this document 355 7. Acknowledgements 357 Authors would like to thank Santiago Alvarez and Faisal Iqbal for 358 discussions which motivated creation of this document. Authors would 359 also like to thank Sam Aldrin, Curtis Villamizar, Ross Callon, 360 Jeffrey Zhang, Jeremy Whittaker and Mustapha Alissaoui for providing 361 valuable comments to influence the contents of the draft. 363 8. Contributing Authors 365 Shaleen Saxena 366 Cisco Systems 367 Email: ssaxena@cisco.com 369 9. References 371 9.1. Normative References 373 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 374 Requirement Levels", BCP 14, RFC 2119, March 1997. 376 [RFC4379] Kompella, K. and G. Swallow, "Detecting Multi-Protocol 377 Label Switched (MPLS) Data Plane Failures", RFC 4379, 378 February 2006. 380 9.2. Informative References 382 [I-D.ietf-mpls-proxy-lsp-ping] 383 Swallow, G., Lim, V., and S. Aldrin, "Proxy MPLS Echo 384 Request", draft-ietf-mpls-proxy-lsp-ping-02 (work in 385 progress), July 2014. 387 [RFC7110] Chen, M., Cao, W., Ning, S., Jounay, F., and S. Delord, 388 "Return Path Specified Label Switched Path (LSP) Ping", 389 RFC 7110, January 2014. 391 Appendix A. Reply Mode Order TLV Beneficial Scenarios 393 This section lists examples of how the Reply Mode Order TLV can 394 benefit. 396 A.1. Incorrect Forwarding Scenario 398 A network has a following LSP, and the LSP has a control channel. 400 A------B------C------D------E 401 | 402 | 403 F 405 Forward Paths: A-B-C-D-E 407 Figure 2: Incorrect Forwarding 409 Imagine that D is incorrectly label switching to F (instead of E). 410 In this scenario, LSP Traceroute with "Reply via application level 411 control channel (4)" will result in following result. 413 Success (Reply from B) 414 Success (Reply from C) 415 Success (Reply from D) 416 Timeout... 417 Complete 419 This is because F does not have a control channel to send the MPLS 420 echo reply message. With the extension described in this document, 421 same procedures can be performed with the Reply Mode Order TLV 422 carrying {4, 2}. When LSP Traceroute is issued, then following output 423 may be displayed without any unnecessary timeout. 425 Success (Reply from B, Reply Mode: 4) 426 Success (Reply from C, Reply Mode: 4) 427 Success (Reply from D, Reply Mode: 4) 428 FEC Mismatch (Reply from F, Reply Mode: 2) 429 Complete 431 The result provides more diagnostic information to the initiator, and 432 without any delay (i.e. timeout from one or more downstream LSRs). 434 A.2. Non-Co-Routed Bidirectional LSP Scenario 436 A network has a following bidirectional LSP where the forward LSP and 437 the reverse LSP are not fully co-routed. 439 +----C------D----+ 440 / \ 441 A------B G------H 442 \ / 443 +----E------F----+ 445 Forward Paths: A-B-C-D-G-H (upper path) 446 Reverse Paths: H-G-F-E-B-A (lower path) 448 Figure 3: Non-Co-Routed Bidirectional LSP 450 Some operators may prefer and configure the system to default the 451 Reply Mode to "Reply via reverse LSP (TBD1)" when MPLS echo request 452 messages are sent on bidirectional LSPs. Without extensions 453 described in this document, following behaviors will be seen: 455 o When LSP Ping is issued from A, reply will come back on the 456 reverse LSP from H. 458 o When LSP Traceroute is issued from A, reply will come back on the 459 reverse LSP from B, G and H, but will encounter a timeout from C 460 and D as there are no reverse LSP on those nodes. 462 o When LSP Ping with specific TTL value is issued from A, whether a 463 timeout will be encountered depends on the value of the TTL used 464 (i.e. whether or not MPLS echo request terminates on a node that 465 has reverse LSP). 467 One can argue that the initiator can automatically generate a same 468 MPLS echo request with different Reply Mode value to those nodes that 469 timeout. However, such mechanism will result in extended time for 470 the entire operation to complete (i.e. multiple seconds to multiple 471 minutes). This is undesirable, and perhaps unacceptable if the 472 "user" is an application. 474 With the extension described in this document, same procedures can be 475 performed with the Reply Mode Order TLV carrying {TBD1, 2}. When LSP 476 Traceroute is issued, then following output may be displayed without 477 any unnecessary timeout. 479 Success (Reply Mode: TBD1) 480 Success (Reply Mode: 2) 481 Success (Reply Mode: 2) 482 Success (Reply Mode: TBD1) 483 Success (Reply Mode: TBD1) 484 Complete 486 Authors' Addresses 488 Nobo Akiya 489 Cisco Systems 491 Email: nobo@cisco.com 493 George Swallow 494 Cisco Systems 496 Email: swallow@cisco.com 498 Carlos Pignataro 499 Cisco Systems 501 Email: cpignata@cisco.com 503 Loa Andersson 504 Huawei 506 Email: loa@mail01.huawei.com 508 Mach(Guoyi) Chen 509 Huawei 511 Email: mach.chen@huawei.com