idnits 2.17.1 draft-ietf-mpls-lsp-ping-ttl-tlv-04.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 == Line 109 has weird spacing: '... The scope ...' == Line 227 has weird spacing: '...ntended dest...' -- The document date (October 20, 2012) is 4206 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) -- Looks like a reference, but probably isn't: 'RFC2119' on line 117 == Unused Reference: '1' is defined on line 269, but no explicit reference was found in the text == Unused Reference: '2' is defined on line 272, but no explicit reference was found in the text == Unused Reference: '3' is defined on line 276, but no explicit reference was found in the text ** Obsolete normative reference: RFC 4379 (ref. '1') (Obsoleted by RFC 8029) Summary: 1 error (**), 0 flaws (~~), 6 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group Sami Boutros 3 INTERNET-DRAFT Siva Sivabalan 4 Intended Status: Standards Track George Swallow 5 Shaleen Saxena 6 Cisco Systems 8 Vishwas Manral 9 Hewlett Packard Co. 11 Sam Aldrin 12 Huawei Technologies, Inc. 14 Expires: April 23, 2013 October 20, 2012 16 Definition of Time-to-Live TLV for LSP-Ping Mechanisms 17 draft-ietf-mpls-lsp-ping-ttl-tlv-04.txt 19 Abstract 21 LSP-Ping is a widely deployed Operation, Administration, and 22 Maintenance (OAM) mechanism in MPLS networks. However, in the present 23 form, this mechanism is inadequate to verify connectivity of a 24 segment of a Multi-Segment PseudoWire (MS-PW) from any node on the 25 path of the MS-PW. This document defines a TLV to address this 26 shortcoming. 28 Status of this Memo 30 This Internet-Draft is submitted to IETF in full conformance with the 31 provisions of BCP 78 and BCP 79. 33 Internet-Drafts are working documents of the Internet Engineering 34 Task Force (IETF), its areas, and its working groups. Note that 35 other groups may also distribute working documents as 36 Internet-Drafts. 38 Internet-Drafts are draft documents valid for a maximum of six months 39 and may be updated, replaced, or obsoleted by other documents at any 40 time. It is inappropriate to use Internet-Drafts as reference 41 material or to cite them other than as "work in progress." 43 The list of current Internet-Drafts can be accessed at 44 http://www.ietf.org/1id-abstracts.html 46 The list of Internet-Draft Shadow Directories can be accessed at 47 http://www.ietf.org/shadow.html 49 Copyright and License Notice 51 Copyright (c) 2012 IETF Trust and the persons identified as the 52 document authors. All rights reserved. 54 This document is subject to BCP 78 and the IETF Trust's Legal 55 Provisions Relating to IETF Documents 56 (http://trustee.ietf.org/license-info) in effect on the date of 57 publication of this document. Please review these documents 58 carefully, as they describe your rights and restrictions with respect 59 to this document. Code Components extracted from this document must 60 include Simplified BSD License text as described in Section 4.e of 61 the Trust Legal Provisions and are provided without warranty as 62 described in the Simplified BSD License. 64 Table of Contents 66 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 67 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 68 3. Time To Live TLV . . . . . . . . . . . . . . . . . . . . . . . 4 69 3.1. TTL TLV Format . . . . . . . . . . . . . . . . . . . . . . 4 70 3.2. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 71 4. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 72 4.1. Traceroute mode . . . . . . . . . . . . . . . . . . . . . . 5 73 4.2. Error scenario . . . . . . . . . . . . . . . . . . . . . . 6 74 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 75 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 76 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6 77 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 7 78 8.1 Normative References . . . . . . . . . . . . . . . . . . . 7 79 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 81 1. Introduction 83 A MS-PW can span across multiple service provider networks. In order 84 to allow Service Providers (SP) to verify segments of such MS-PW from 85 any node on the path of the MS-PW, any node along the path of the MS- 86 PW, should be able to originate an LSP-Ping echo request packet to 87 any another node along the path of the MS-PW and receive the 88 corresponding echo reply. If the originator of the echo request is at 89 the end of a MS-PW, the receiver of the request can send the reply 90 back to the sender without knowing the hop-count distance of the 91 originator. For example, the reply will be intercepted by the 92 originator regardless of the TTL value on the reply packet. But, if 93 the originator is not at the end of the MS-PW, the receiver of the 94 echo request MAY need to know how many hops away the originator of 95 the echo request is so that it can set the TTL value on the MPLS 96 header for the echo reply to be intercepted at the originator node. 98 In MPLS networks, for bidirectional co-routed LSPs, if it is desired 99 to verify connectivity from any intermediate node (LSR) on the LSP to 100 the any other LSR on the LSP the receiver may need to know the TTL to 101 send the Echo reply with, so as the packet is intercepted by the 102 originator node. 104 A new optional TTL TLV is being proposed in this document this TLV 105 will be added by the originator of the echo request to inform the 106 receiver how many hops away the originator is on the path of the MS- 107 PW or Bidirectional LSP. 109 The scope of this TTL TLV is currently limited to MS-PW or 110 Bidirectional co-routed MPLS LSPs. 112 2. Terminology 114 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 115 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 116 document are to be interpreted as described in RFC 2119 [RFC2119]. 118 LSR: Label Switching Router 120 MPLS-OAM: MPLS Operations, Administration and Maintenance 122 MPLS-TP: MPLS Transport Profile 124 MS-PW: Multi-Segment PseudoWire 126 PW: PseudoWire 128 TLV: Type Length Value 129 TTL: Time To Live 131 3. Time To Live TLV 133 3.1. TTL TLV Format 135 0 1 2 3 136 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 137 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 138 | Type = TBD | Length = 8 | 139 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 140 | Value | Reserved | Flags | 141 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 142 Figure 1: Time To Live TLV format 144 The TTL TLV has the format shown in Figure 1. 146 Value 148 The value of the TTL as specified by this TLV 150 Flags 152 The Flags field is a bit vector with the following format: 154 0 1 155 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 156 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 157 | MBZ |R| 158 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 160 One flag is defined for now, the R bit; the rest MUST be set 161 to zero when sending and ignored on receipt. 163 The R flag (Reply TTL) is set signify that the value is 164 meant to be used as the TTL for the reply packet. Other bits 165 may be defined later to enhance the scope of this TLV. 167 3.2. Usage 169 This TLV shall be included in the echo request by the originator of 170 request. The use of this TLV is optional. If a receiver does not 171 understand the TTL TLV, it will simply ignore the TLV (Type value of 172 TLV is assumed to be in the range of optional TLV's which SHOULD be 173 ignored if an implementation does not support or understand them). In 174 the absence of TTL TLV or if TTL TLV is ignored by a receiver, the 175 determination of the TTL value used in the MPLS label on the echo 176 reply is beyond the scope of this document. 178 If a receiver understands the TTL TLV, and the TTL TLV is present in 179 the echo request, and if the value field is zero, the LSP Ping Echo 180 request packet SHOULD be dropped. 182 If a receiver understands the TTL TLV, and the TTL TLV is present in 183 the echo request, the receiver MUST use the TTL value specified in 184 TLV in the MPLS header of the echo reply. In other words, if the 185 value of the TTL provided by this TLV does not match the TTL 186 determined by other means, such as Switching Point TLV in MS-PW, then 187 TTL TLV must be used. This will aid the originator of the echo 188 request in analyzing the return path. 190 4. Operation 192 In this section, we explain a use case for the TTL TLV with an MPLS 193 MS-PW. 194 <------------------MS-PW ---------------------> 196 A B C D E 197 o -------- o -------- o --------- o --------- o 198 ------Echo Request-----> 199 <-----Echo Reply-------- 201 Figure 2: Use-case with MS-PWs 203 Let us assume a MS-PW going through LSRs A, B, C, D, and E. 204 Furthermore, assume that an operator wants to perform a connectivity 205 check between B and D from B. Thus, an LSP-Ping request with the TTL 206 TLV is originated from B and sent towards D. The echo request packet 207 contains the FEC of the PW Segment between C and D. The value field 208 of the TTL TLV and the TTL field of the MPLS label are set to 2. The 209 echo request is intercepted at D because of TTL expiry. D detects the 210 TTL TLV in the request, and use the TTL value (i.e., 2) specified in 211 the TLV on the MPLS label of the echo reply. The echo reply will be 212 intercepted by B because of TTL expiry. 214 The same operation will apply in the case a co-routed bidirectional 215 LSP and we want to check connectivity from an intermediate LSR B to 216 another LSR D, from B. 218 4.1. Traceroute mode 220 In the traceroute mode TTL value in the TLV is successively set to 1, 221 2, and so on. This is similar to the TTL values used for the label 222 set on the packet. 224 4.2. Error scenario 226 It is possible that the echo request packet was punted before the 227 intended destination. This could be due network faults, 228 misconfiguration or other reasons. In such cases, if the return TTL 229 is set to the value specified in the TTL TLV then the echo response 230 packet will continue beyond the originating node. This becomes a 231 security issue. 233 To prevent this issue, the TTL value used must be modified by 234 deducting the incoming label TTL. If the echo request packet is 235 punted before the incoming TTL is deducted, then another 1 must be 236 deducted. In other words: 238 Return TTL Value = (TTL TLV Value)-(Incoming Label TTL) + 1 240 5. Security Considerations 242 This draft allows the setting of the TTL value in the MPLS Label of 243 an echo reply, so that it can be intercepted by an intermediate 244 device. This can cause a device to get a lot of LSP Ping packets 245 which get redirected to the CPU. 247 However the same is possible even without the changes mentioned in 248 this document. A device should rate limit the LSP ping packets 249 redirected to the CPU so that the CPU is not overwhelmed. 251 6. IANA Considerations 253 IANA is requested to assign TLV type value to the following TLV from 254 the "Multiprotocol Label Switching Architecture (MPLS) Label Switched 255 Paths (LSPs) Parameters - TLVs" registry, "TLVs and sub-TLVs" sub- 256 registry. 258 Time To Live TLV (See Section 3). The Suggested value is 32769 as 259 suggested by RFC 4379 Section 3. 261 7. Acknowledgements 263 The authors would like to thank Greg Mirsky for his comments. 265 8. References 267 8.1 Normative References 269 [1] K. Kompella, G. Swallow, "Detecting Multi-Protocol Label Switched 270 (MPLS) Data Plane Failures", RFC 4379, February 2006. 272 [2] T. Nadeau, et. al, "Pseudowire Virtual Circuit Connectivity 273 Verification (VCCV): A Control Channel for Pseudowires ", RFC 5085, 274 December 2007. 276 [3] Bradner, S., "Key words for use in RFCs to Indicate Requirement 277 Levels", BCP 14, RFC 2119, March 1997. 279 Authors' Addresses 281 Siva Sivabalan 282 Cisco Systems, Inc. 283 2000 Innovation Drive 284 Kanata, Ontario, K2K 3E8 285 Canada 286 Email: msiva@cisco.com 288 Sami Boutros 289 Cisco Systems, Inc. 290 3750 Cisco Way 291 San Jose, California 95134 292 USA 293 Email: sboutros@cisco.com 295 George Swallow 296 Cisco Systems, Inc. 297 300 Beaver Brook Road 298 Boxborough , MASSACHUSETTS 01719 299 United States 300 Email: swallow@cisco.com 302 Shaleen Saxena 303 Cisco Systems, Inc. 304 1414 Massachusetts Avenue 305 Boxborough , MASSACHUSETTS 01719 306 United States 307 Email: ssaxena@cisco.com 308 Vishwas Manral 309 Hewlett Packard Co. 310 19111 Pruneridge Ave, 311 Cupertino, CA 95014 USA 312 United States 313 EMail: vishwas.manral@hp.com 315 Michael Wildt 316 Cisco Systems, Inc. 317 1414 Massachusetts Avenue 318 Boxborough , MASSACHUSETTS 01719 319 United States 320 Email: mwildt@cisco.com 322 Sam Aldrin 323 Huawei Technologies, Inc. 324 1188 Central Express Way, 325 Santa Clara, CA 95051 326 United States 327 Email: aldrin.ietf@gmail.com