idnits 2.17.1 draft-ietf-mpls-tp-on-demand-cv-07.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 27, 2011) is 4588 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) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group E. Gray 3 Internet-Draft Ericsson 4 Updates: 4379 (if approved) N. Bahadur 5 Intended status: Standards Track Juniper Networks, Inc. 6 Expires: March 30, 2012 S. Boutros 7 Cisco Systems, Inc. 8 R. Aggarwal 9 September 27, 2011 11 MPLS On-demand Connectivity Verification and Route Tracing 12 draft-ietf-mpls-tp-on-demand-cv-07 14 Abstract 16 Label Switched Path Ping (LSP-Ping) is an existing and widely 17 deployed Operations, Administration and Maintenance (OAM) mechanism 18 for Multi-Protocol Label Switching (MPLS) Label Switched Paths 19 (LSPs). This document describes extensions to LSP-Ping so that LSP- 20 Ping can be used for On-demand Connectivity Verification of MPLS 21 Transport Profile (MPLS-TP) LSPs and Pseudowires. This document also 22 clarifies procedures to be used for processing the related OAM 23 packets. Further, it describes procedures for using LSP-Ping to 24 perform Connectivity Verification and Route Tracing functions in 25 MPLS-TP networks. Finally this document updates RFC 4379 by adding a 26 new address type and requesting an IANA registry. 28 Status of this Memo 30 This Internet-Draft is submitted 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). Note that other groups may also distribute 35 working documents as Internet-Drafts. The list of current Internet- 36 Drafts is at http://datatracker.ietf.org/drafts/current/. 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 This Internet-Draft will expire on March 30, 2012. 45 Copyright Notice 47 Copyright (c) 2011 IETF Trust and the persons identified as the 48 document authors. All rights reserved. 50 This document is subject to BCP 78 and the IETF Trust's Legal 51 Provisions Relating to IETF Documents 52 (http://trustee.ietf.org/license-info) in effect on the date of 53 publication of this document. Please review these documents 54 carefully, as they describe your rights and restrictions with respect 55 to this document. Code Components extracted from this document must 56 include Simplified BSD License text as described in Section 4.e of 57 the Trust Legal Provisions and are provided without warranty as 58 described in the Simplified BSD License. 60 Table of Contents 62 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 63 1.1. Conventions used in this document . . . . . . . . . . . . 4 64 1.2. On-demand CV for MPLS-TP LSPs using IP encapsulation . . . 5 65 1.3. On-demand CV for MPLS-TP LSPs using non-IP 66 encapsulation . . . . . . . . . . . . . . . . . . . . . . 5 67 2. LSP-Ping Extensions . . . . . . . . . . . . . . . . . . . . . 5 68 2.1. New address type for Downstream Mapping TLV . . . . . . . 5 69 2.1.1. DSMAP/DDMAP Non-IP Address Information . . . . . . . . 6 70 2.2. Source/Destination Identifier TLV . . . . . . . . . . . . 7 71 2.2.1. Source/Destination Identifier TLV Format . . . . . . . 7 72 2.2.2. Source Identifier TLV . . . . . . . . . . . . . . . . 8 73 2.2.3. Destination Identifier TLV . . . . . . . . . . . . . . 8 74 2.3. Identifying Statically provisioned LSPs and PWs . . . . . 8 75 2.3.1. Static LSP Sub-TLV . . . . . . . . . . . . . . . . . . 9 76 2.3.2. Static Pseudowire Sub-TLV . . . . . . . . . . . . . . 9 77 3. Performing On-demand CV over MPLS-TP LSPs . . . . . . . . . . 10 78 3.1. LSP-Ping with IP encapsulation . . . . . . . . . . . . . . 11 79 3.2. On-demand CV with IP encapsulation, over ACH . . . . . . . 11 80 3.3. Non-IP based On-demand CV, using ACH . . . . . . . . . . . 12 81 3.4. Reverse Path Connectivity Verification . . . . . . . . . . 12 82 3.4.1. Requesting Reverse Path Connectivity Verification . . 13 83 3.4.2. Responder Procedures . . . . . . . . . . . . . . . . . 13 84 3.4.3. Requester Procedures . . . . . . . . . . . . . . . . . 14 85 3.5. P2MP Considerations . . . . . . . . . . . . . . . . . . . 14 86 3.6. Management Considerations for Operation with Static 87 MPLS-TP . . . . . . . . . . . . . . . . . . . . . . . . . 14 88 3.7. GAL Label Processing . . . . . . . . . . . . . . . . . . . 14 89 4. Performing on-demand Route Tracing over MPLS-TP LSPs . . . . . 15 90 4.1. On-demand LSP Route Tracing with IP encapsulation . . . . 15 91 4.2. Non-IP based On-demand LSP Route Tracing, using ACH . . . 15 92 4.2.1. Requester procedure for sending echo request 93 packets . . . . . . . . . . . . . . . . . . . . . . . 15 94 4.2.2. Requester procedure for receiving echo response 95 packets . . . . . . . . . . . . . . . . . . . . . . . 16 96 4.2.3. Responder procedure . . . . . . . . . . . . . . . . . 16 98 4.3. P2MP Considerations . . . . . . . . . . . . . . . . . . . 16 99 4.4. ECMP Considerations . . . . . . . . . . . . . . . . . . . 16 100 5. Applicability . . . . . . . . . . . . . . . . . . . . . . . . 16 101 6. Security Considerations . . . . . . . . . . . . . . . . . . . 16 102 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 103 7.1. New Source and Destination Identifier TLVs . . . . . . . . 17 104 7.2. New Target FEC Stack Sub-TLVs . . . . . . . . . . . . . . 17 105 7.3. New Reverse-path Target FEC Stack TLV . . . . . . . . . . 17 106 7.4. New Pseudowire Associated Channel Type . . . . . . . . . . 18 107 7.5. New RFC 4379 Registry . . . . . . . . . . . . . . . . . . 18 108 8. Contributing Authors and Acknowledgements . . . . . . . . . . 19 109 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 19 110 9.1. Normative References . . . . . . . . . . . . . . . . . . . 19 111 9.2. Informative References . . . . . . . . . . . . . . . . . . 20 112 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 21 114 1. Introduction 116 Label Switched Path Ping (LSP-Ping) [RFC4379] is an Operations, 117 Administration and Maintenance (OAM) mechanism for Multi-Protocol 118 Label Switching (MPLS) Label Switched Paths (LSPs). This document 119 describes extensions to LSP-Ping so that LSP-Ping can be used for on- 120 demand monitoring of MPLS Transport Profile (MPLS-TP) LSPs and 121 Pseudowires. It also clarifies the procedures to be used for 122 processing the related OAM packets. This document describes how LSP- 123 Ping can be used for on-demand Connectivity Verification (Section 3) 124 and Route Tracing (Section 4) functions required in [RFC5860] and 125 specified in [RFC6371]. 127 1.1. Conventions used in this document 129 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 130 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 131 "OPTIONAL" in this document are to be interpreted as described in 132 [RFC2119]. 134 There is considerable opportunity for confusion in use of the terms 135 "on-demand connectivity verification" (CV), "on-demand route tracing" 136 and "LSP-Ping." In this document, we try to use the terms 137 consistently as follows: 139 o LSP-Ping: refers to the mechanism - particularly as defined and 140 used in referenced material; 141 o On-demand CV: refers to on-demand connectivity verification and - 142 where both apply equally - on-demand route tracing, as implemented 143 using the LSP-Ping mechanism extended for support of MPLS-TP; 144 o On-demand route tracing: used in those cases where the LSP-Ping 145 mechanism (as extended) is used exclusively for route tracing. 147 From the perspective of on-demand CV and route tracing, we use the 148 concepts of "Requester" and "Responder" as follows: 150 o Requester: Originator of an OAM Request message, 151 o Responder: Entity responding to an OAM Request message. 153 Since - in this document - all messages are assumed to be carried in 154 an LSP, all Request messages would be injected at the ingress to an 155 LSP. A Responder might or might not be at the egress of this same 156 LSP, given that it could receive Request messages as a result of TTL 157 expiry. If a Reply is to be delivered via a reverse path LSP, the 158 message would again be inserted at the ingress of that LSP. 160 1.2. On-demand CV for MPLS-TP LSPs using IP encapsulation 162 LSP-Ping requires IP addressing on responding Label Switching Routers 163 (LSRs) for performing OAM on MPLS signaled LSPs and pseudowires. In 164 particular, in these cases, LSP-Ping packets generated by a Requester 165 are encapsulated in an IP/UDP header with the destination address 166 from the 127/8 range and then encapsulated in the MPLS label stack 167 ([RFC4379] , [RFC5884]). A Responder uses the presence of the 127/8 168 destination address to identify OAM packets and relies further on the 169 UDP port number to determine whether the packet is a LSP-Ping packet. 170 It is to be noted that this determination does not require IP 171 forwarding capabilities. It requires the presence of an IP host 172 stack which enables responding LSRs to process packets with a 173 destination address from the 127/8 range. [RFC1122] allocates the 174 127/8 range as "Internal host loopback address" and [RFC1812] states 175 that "a router SHOULD NOT forward, except over a loopback interface, 176 any packet that has a destination address on network 127". 178 1.3. On-demand CV for MPLS-TP LSPs using non-IP encapsulation 180 In certain MPLS-TP deployment scenarios IP addressing might not be 181 available or it might be preferred to use some form of non-IP 182 encapsulation for On-demand CV, route tracing and BFD packets. In 183 such scenarios, On-demand CV and/or route tracing SHOULD be run 184 without IP addressing, using the Associated Channel (ACH) channel 185 type specified in Section 3. 187 Section 3.3 and Section 4.2 describe the theory of operation for 188 performing On-demand CV over MPLS-TP LSPs with any non-IP 189 encapsulation. 191 2. LSP-Ping Extensions 193 2.1. New address type for Downstream Mapping TLV 195 [RFC4379] defines the Downstream Mapping (DSMAP) TLV. 196 [I-D.ietf-mpls-lsp-ping-enhanced-dsmap] further defines the 197 Downstream Detailed Mapping (DDMAP) TLV. This document defines the 198 following new address type which MAY be used in any DSMAP or DDMAP 199 TLV included in an On-demand CV message: 201 Type # Address Type K Octets 202 ------ -------------- -------- 203 5 Non IP 12 205 Figure 1: Downstream Mapping TLV new address type 207 The new address type indicates that no address is present in the 208 DSMAP or DDMAP TLV. However, IF_Num information (see definition of 209 "IF_NUM" in [RFC6370]) for both ingress and egress interfaces, as 210 well as multipath information is included in the format and MAY be 211 present. 213 IF_Num values of zero indicate that no IF_Num applies in the field in 214 which this value appears. 216 Multipath type SHOULD be set to 0 (no multipath) when using this 217 address type. 219 When this address type is used, on receipt of a LSP-Ping echo 220 request, interface verification MUST be bypassed. Thus the receiving 221 node SHOULD only perform MPLS label control-plane/data-plane 222 consistency checks. Note that these consistency checks include 223 checking of included identifier information. 225 The new address type is also applicable to the Detailed Downstream 226 Mapping (DDMAP) TLV defined in 227 [I-D.ietf-mpls-lsp-ping-enhanced-dsmap]. 229 2.1.1. DSMAP/DDMAP Non-IP Address Information 231 If the DSMAP (or DDMAP) TLV is included when sending On-demand CV 232 packets using ACH, without IP encapsulation, the following 233 information MUST be included in any DSMAP or DDMAP TLV that is 234 included in the packet. This information forms the address portion 235 of the DSMAP TLV (as defined in [RFC4379]) or DDMAP TLV (as defined 236 in [I-D.ietf-mpls-lsp-ping-enhanced-dsmap] using one of the address 237 information fields defined in [RFC4379] and extended to include 238 non-IP identifier types in this document). 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 | MTU | Address Type | DS Flags | 244 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 245 | Ingress IF_Num (4 octets) | 246 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 247 | Egress IF_Num (4 octets) | 248 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 249 | Multipath Type| Depth Limit | Multipath Length | 250 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 252 Figure 2: New DSMAP/DDMAP Address Format 254 Address Type will be 5 (as shown in Section 2.1 above. 256 Ingress IF_Num identifies the ingress interface on the target node. 257 A value of 0 indicates that the interface is not part of the 258 identifier. 260 Egress IF_Num identifies the egress interface on the target node. A 261 value of 0 indicates that the interface is not part of the 262 identifier. 264 Multipath type SHOULD be set to 0 (no multipath) when using this 265 address type. 267 Including this TLV, with one or the other IF_Num (but not both) set 268 to a non-zero value, in a request message that also includes a 269 destination identifier TLV (as described in section 2.2.3), is 270 sufficient to identify the "per-interface" MIP in section 7.3 of 271 [RFC6370]. 273 Inclusion of this TLV with both IF_Num fields set to zero would be 274 interpretted as specifying neither an ingress, nor an egress, 275 interface. Note that this is the same as not including the TLV, 276 hence including this TLV with both IF_Num values set to zero is NOT 277 RECOMMENDED. 279 Including this TLV with both IF_NUM fields set to a non-zero value 280 will result in the responder sending a Return Code of 5 ("Downstream 281 Mapping Mis-match") if either IF_Num is incorrect for this LSP or PW. 283 2.2. Source/Destination Identifier TLV 285 2.2.1. Source/Destination Identifier TLV Format 287 The format for the identifier TLV is the same for both Source and 288 Destination Identifier TLVs (only the type is different). The format 289 is as specified in the figure below. 291 0 1 2 3 292 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 293 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 294 | Type | Length = 8 | 295 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 296 | Global_ID (4 Octets) | 297 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 298 | Node_ID (4 Octets) | 299 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 301 Figure 3: New Source/Destination Identifier Format 303 Type will be one of either TBD-SRC or TBD-DST, depending on whether 304 the TLV in question is a Source or Destination Identifier TLV. 306 Global_ID is as defined in [RFC6370]. 308 Node_ID is as defined in [RFC6370]. 310 2.2.2. Source Identifier TLV 312 When sending On-demand CV packets using ACH, without IP 313 encapsulation, there MAY be a need to identify the source of the 314 packet. This source identifier will be specified via the Source 315 Identifier TLV, using the Identifier TLV defined in Section 2.2.1, 316 containing the information specified above. 318 An On-demand CV packet MUST NOT include more than 1 Source Identifier 319 TLV. The Source Identifier TLV MUST specify the identifier of the 320 originator of the packet. If more than 1 such TLV is present in an 321 On-demand CV request packet, then an error of 1 (Malformed echo 322 request received, Section 3.3 [RFC4379]) MUST be returned, if it is 323 possible to unambiguously identify the source of the packet. 325 2.2.3. Destination Identifier TLV 327 When sending On-demand CV packets using ACH, without IP 328 encapsulation, there MAY be a need to identify the destination of the 329 packet. This destination identifier will be specified via the 330 Destination Identifier TLV, using the Identifier TLV defined in 331 Section 2.2.1, containing the information specified above. 333 An On-demand CV packet MUST NOT include more than 1 Destination 334 Identifier TLV. The Destination Identifier TLV MUST specify the 335 destination node for the packet. If more than 1 such TLV is present 336 in an On-demand CV Request packet, then an error of 1 (Malformed echo 337 request received, Section 3.3 [RFC4379]) MUST be returned, if it is 338 possible to unambiguously identify the source of the packet. 340 2.3. Identifying Statically provisioned LSPs and PWs 342 [RFC4379] specifies how an MPLS LSP under test is identified in an 343 echo request. A Target FEC Stack TLV is used to identify the LSP. 344 In order to identify a statically provisioned LSP and PW, new target 345 FEC stack sub-TLVs are being defined. The new sub-TLVs are assigned 346 sub-type identifiers as follows, and are described in the following 347 sections. 349 Type # Sub-Type # Length Value Field 350 ------ ---------- ------ ----------- 351 1 22 24 Static LSP 352 1 23 32 Static Pseudowire 354 Figure 4: New target FEC sub-types 356 2.3.1. Static LSP Sub-TLV 358 The format of the Static LSP sub-TLV value field is specified in the 359 following figure. The value fields are taken from the definitions in 360 [RFC6370]. 362 0 1 2 3 363 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 364 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 365 | Source Global ID | 366 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 367 | Source Node ID | 368 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 369 | Source Tunnel Number | LSP Number | 370 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 371 | Destination Global ID | 372 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 373 | Destination Node ID | 374 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 375 | Destination Tunnel Number | Must be Zero | 376 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 378 Figure 5: Static LSP FEC Sub-TLV 380 The Source Global ID and Destination Global ID MAY be set to 0. When 381 set to zero, the field is not applicable. 383 2.3.2. Static Pseudowire Sub-TLV 385 The format of the Static PW sub-TLV value field is specified in the 386 following figure. 388 0 1 2 3 389 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 390 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 391 | | 392 + Service Identifier + 393 | | 394 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 395 | Source Global ID | 396 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 397 | Source Node ID | 398 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 399 | Source AC-ID | 400 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 401 | Destination Global ID | 402 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 403 | Destination Node ID | 404 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 405 | Destination AC-ID | 406 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 408 Figure 6: Static PW FEC Sub-TLV 410 Service Identifier is a 64-bit unsigned integer, that is included in 411 the first two words, as shown. The Service Identifier identifies the 412 service associated with the transport path under test. The value MAY 413 - for example - be an Attachment Group Identifier (AGI), type 0x01, 414 as defined in [RFC4446]. 416 The Source Global ID and Destination Global ID MAY be set to 0. When 417 either of these fields is set to zero, the corresponding Global ID is 418 not applicable. This might be done in a scenario where local scope 419 is sufficient for uniquely identifying services. 421 The Global ID and Node ID fields are defined in [RFC6370]. The AC-ID 422 fields are defined in [RFC5003]. 424 3. Performing On-demand CV over MPLS-TP LSPs 426 This section specifies how On-demand CV can be used in the context of 427 MPLS-TP LSPs. The On-demand CV function meets the On-demand 428 Connectivity Verification requirements specified in [RFC5860], 429 section 2.2.3. This function SHOULD NOT be performed except in the 430 on-demand mode. This function SHOULD be performed between End Points 431 (MEPs) and Intermediate Points (MIPs) of PWs and LSPs, and between 432 End Points of PWs, LSPs and Sections. In order for the On-demand CV 433 packet to be processed at the desired MIP, the TTL of the MPLS label 434 MUST be set such that it expires at the MIP to be probed. 436 [RFC5586] defines an ACH mechanism for MPLS LSPs. The mechanism is a 437 generalization of Associated Channel mechanism that [RFC4385] defined 438 for use with Pseudowires. As a result, it is possible to use a 439 single Associated Channel Type for either an LSP or Pseudowire. 441 A new Pseudowire Associated Channel Type (type TBD-2) is defined for 442 use in performing On-demand Connectivity Verification. Its use is 443 described in the following sections. 445 ACH TLVs SHALL NOT be associated with this channel type. 447 Except as specifically stated in the sections below, message and TLV 448 construction procedures for On-demand CV messages are as defined in 449 [RFC4379]. 451 3.1. LSP-Ping with IP encapsulation 453 LSP-Ping packets, as specified in [RFC4379], are sent over the MPLS 454 LSP for which OAM is being performed and contain an IP/UDP packet 455 within them. The IP header is not used for forwarding (since LSP 456 forwarding is done using MPLS label switching). The IP header is 457 used mainly for addressing and can be used in the context of MPLS-TP 458 LSPs. This form of On-demand CV OAM MUST be supported for MPLS-TP 459 LSPs when IP addressing is in use. 461 The On-demand CV echo response message MUST be sent on the reverse 462 path of the LSP. The reply MUST contain IP/UDP headers followed by 463 the On-demand CV payload. The destination address in the IP header 464 MUST be set to that of the sender of the echo request message. The 465 source address in the IP header MUST be set to a valid address of the 466 replying node. 468 3.2. On-demand CV with IP encapsulation, over ACH 470 IP encapsulated On-demand CV packets MAY be sent over the MPLS LSP 471 using the control channel (ACH). IP ACH type specified in [RFC4385] 472 MUST be used in such a case. The IP header is used mainly for 473 addressing and can be used in the context of MPLS-TP LSPs. 475 The On-demand CV echo response message MUST be sent on the reverse 476 path of the LSP. The response in this case SHOULD use ACH and SHOULD 477 be IP encapsulated. 479 If IP encapsulated, the destination address in the IP header MUST be 480 set to that of the sender of the echo request message, and the source 481 address in the IP header MUST be set to a valid address of the 482 replying node. 484 3.3. Non-IP based On-demand CV, using ACH 486 The OAM procedures defined in [RFC4379] require the use of IP 487 addressing, and in some cases IP routing, to perform OAM functions. 489 When the ACH header is used, IP addressing and routing is not needed. 490 This section describes procedures for performing on-demand CV without 491 a dependency on IP addressing and routing. 493 In the non-IP case, when using On-demand CV via LSP-Ping with the ACH 494 header, the On-demand CV request payload MUST directly follow the ACH 495 header, and the LSP-Ping Reply mode [RFC4379] in the LSP-Ping echo 496 request SHOULD be set to 4 (Reply via application level control 497 channel). 499 Note that the application level control channel in this case is the 500 reverse path of the LSP (or Pseudowire) using ACH. 502 The requesting node MAY attach a Source Identifier TLV (Section 2.2) 503 to identify the node originating the request. 505 If the Reply mode indicated in an On-demand CV Request is 4 (Reply 506 via application level control channel), the On-demand CV reply 507 message MUST be sent on the reverse path of the LSP using ACH. The 508 On-demand CV payload MUST directly follow the ACH header and IP 509 and/or UDP headers MUST NOT be attached. The responding node MAY 510 attach a Source Identifier TLV to identify the node sending the 511 response. 513 If a node receives an MPLS echo request packet over ACH, without IP/ 514 UDP headers, with a reply mode of 4, and if that node does not have a 515 return MPLS LSP path to the echo request source, then the node SHOULD 516 drop the echo request packet and not attempt to send a response. 518 If a node receives an MPLS echo request with a reply mode other than 519 4 (reply via application level control channel), and if the node 520 supports that reply mode, then it MAY respond using that reply mode. 521 If the node does not support the reply mode requested, or is unable 522 to reply using the requested reply mode in any specific instance, the 523 node MUST drop the echo request packet and not attempt to send a 524 response. 526 3.4. Reverse Path Connectivity Verification 527 3.4.1. Requesting Reverse Path Connectivity Verification 529 A new Global flag, Validate Reverse Path (R), is being defined in the 530 LSP-Ping packet header. When this flag is set in the echo request, 531 the Responder SHOULD return reverse path FEC information, as 532 described in Section 3.4.2. 534 The R flag MUST NOT be set in the echo response. 536 The Global Flags field is now a bit vector with the following format: 538 0 1 539 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 540 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 541 | MBZ |R|T|V| 542 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 544 Figure 7: Global Flags Field 546 The V flag is defined in [RFC4379]. The T flag is defined in 547 [I-D.ietf-mpls-p2mp-lsp-ping]. The R flag is defined in this draft. 549 The Validate FEC Stack (V) flag MAY be set in the echo response when 550 reverse path connectivity verification is being performed. 552 3.4.2. Responder Procedures 554 When the R flag is set in the echo request, the responding node 555 SHOULD attach a Reverse-path Target FEC Stack TLV in the echo 556 response. The requesting node (on receipt of the response) can use 557 the Reverse-path Target FEC Stack TLV to perform reverse path 558 connectivity verification. For co-routed bi-directional LSPs, the 559 Reverse-path Target FEC Stack used for On-demand CV will be the same 560 in both the forward and reverse path of the LSP. For associated bi- 561 directional LSPs, the target FEC stack MAY be different for the 562 reverse path. 564 The format of the Reverse-path Target FEC Stack TLV is the same as 565 that of the Target FEC stack TLV defined in [RFC4379]. The rules for 566 creating a Target FEC stack TLV also apply to the Reverse-path Target 567 FEC Stack TLV. 569 Value TLV 570 -------- ------------------------------------ 571 TBD-1 Reverse-path Target FEC Stack 572 Figure 8: Reverse-Path Target FEC Stack TLV Type 574 3.4.3. Requester Procedures 576 On receipt of the echo response, the requesting node MUST perform the 577 following checks: 579 1. Perform interface and label-stack validation to ensure that the 580 packet is received on the reverse path of the bi-directional LSP 581 2. If the Reverse-Path Target FEC Stack TLV is present in the echo 582 response, then perform FEC validation. 584 The verification in this case is performed as described for Target 585 FEC Stack in section 3.6 of [RFC4379]. 587 If any of the validations fail, then the requesting node MUST drop 588 the echo response and SHOULD log and/or report an error. 590 3.5. P2MP Considerations 592 [I-D.ietf-mpls-p2mp-lsp-ping] describes how LSP-Ping can be used for 593 OAM on P2MP LSPs with IP encapsulation. This MUST be supported for 594 MPLS-TP P2MP LSPs when IP addressing is used. When IP addressing is 595 not used, then the procedures described in Section 3.3 can be applied 596 to P2MP MPLS-TP LSPs as well. 598 3.6. Management Considerations for Operation with Static MPLS-TP 600 Support for static MPLS-TP LSP, or Pseudowire, usage and on-demand 601 CV, MAY require manageable objects to allow, for instance, 602 configuring operating parameters such as identifiers associated with 603 a statically configured LSP or PW. 605 The specifics of this manageability requirement are out-of-scope in 606 this document and SHOULD be addressed in appropriate management 607 specifications. 609 3.7. GAL Label Processing 611 At the Requester, when encapsulating the LSP echo request (LSP Ping) 612 packet (with the IP ACH, or the non IP ACH, codepoint), a GAL label 613 MUST be added before adding the MPLS LSP label, and sending the LSP 614 Ping echo request packet in-band in the MPLS LSP. 616 The GAL label MUST NOT be considered as part of the MPLS label stack 617 that requires verification by the Responder. For this reason, a NIL 618 FEC Stack TLV MUST NOT be added or associated with the GAL label. 620 The GAL Label MUST NOT be included in DSMAP or DDMAP TLVs. 622 Interface and label stack TLVs MUST include the whole label stack 623 including the GAL label. 625 4. Performing on-demand Route Tracing over MPLS-TP LSPs 627 This section specifies how On-demand CV route tracing can be used in 628 the context of MPLS-TP LSPs. The On-demand CV route tracing function 629 meets the Route Tracing requirement specified in [RFC5860], section 630 2.2.4. 632 This function SHOULD be performed on-demand. This function SHOULD be 633 performed between End Points and Intermediate Points of PWs and LSPs, 634 and between End Points of PWs, LSPs and Sections. 636 When performing On-demand CV route tracing, the requesting node 637 inserts a Downstream Mapping TLV to get the downstream node 638 information and to enable LSP verification along the transit nodes. 639 The Downstream Mapping TLV can be used as is for performing route 640 tracing. If IP addressing is not in use, then the Address Type field 641 in the Downstream Mapping TLV can be set to "Non IP" (Section 2.1). 642 The Downstream Mapping TLV address type field can be extended to 643 include other address types as need be. 645 4.1. On-demand LSP Route Tracing with IP encapsulation 647 The mechanics of On-demand CV route tracing are similar to those 648 described for ping in Section 3.1. On-demand Route Tracing packets 649 sent by the Requester MUST follow procedures described in [RFC4379]. 650 This form of On-demand CV OAM MUST be supported for MPLS-TP LSPs, 651 when IP addressing is used. 653 4.2. Non-IP based On-demand LSP Route Tracing, using ACH 655 This section describes procedures for performing LSP route tracing 656 when using LSP-Ping with the ACH header and without any dependency on 657 IP addressing. The procedures specified in Section 3.3 with regards 658 to Source Idenfier TLV apply to LSP route tracing as well. 660 4.2.1. Requester procedure for sending echo request packets 662 On-demand Route Tracing packets sent by the Requester MUST adhere to 663 the format described in Section 3.3. MPLS-TTL expiry (as described 664 in [RFC4379]) will be used to direct the packets to specific nodes 665 along the LSP path. 667 4.2.2. Requester procedure for receiving echo response packets 669 The On-demand CV route tracing responses will be received on the LSP 670 itself and the presence of an ACH header with channel type of On- 671 demand CV is an indicator that the packet contains an On-demand CV 672 payload. 674 4.2.3. Responder procedure 676 When a echo request reaches the Responder, the presence of the ACH 677 channel type of On-demand CV will indicate that the packet contains 678 On-demand CV data. The On-demand CV data, the label stack and the 679 destination identifier are sufficient to identify the LSP associated 680 with the echo request packet. If there is an error and the node is 681 unable to identify the LSP on which the echo response would be sent, 682 the node MUST drop the echo request packet and not send any response 683 back. All responses MUST always be sent on a LSP path using the ACH 684 header and ACH channel type of On-demand CV. 686 4.3. P2MP Considerations 688 [I-D.ietf-mpls-p2mp-lsp-ping] describes how LSP-Ping can be used for 689 OAM on P2MP LSPs. This MUST be supported for MPLS-TP P2MP LSPs when 690 IP addressing is used. When IP addressing is not used, then the 691 procedures described in Section 4.2 can be applied to P2MP MPLS-TP 692 LSPs as well. 694 4.4. ECMP Considerations 696 On-demand CV using ACH SHOULD NOT be used when there is ECMP (equal 697 cost multiple paths) for a given LSP. The addition of the additional 698 ACH header can modify the hashing behavior for OAM packets which 699 could result in incorrect monitoring of path taken by data traffic. 701 5. Applicability 703 The procedures specified in this document for non-IP encapsulation 704 apply to MPLS-TP Transport paths. This includes LSPs and PWs when IP 705 encapsulation is not desired. However, when IP addressing is used, 706 as in non MPLS-TP LSPs, procedures specified in [RFC4379] MUST be 707 used. 709 6. Security Considerations 711 The draft does not itself introduce any new security considerations. 712 Those discussed in [RFC4379] are also applicable to this document. 714 Unlike typical deployment scenarios identified in [RFC4379], however, 715 likely deployments of on-demand CV for transport paths involves a 716 strong possibility that the techniques in this document may be used 717 across MPLS administrative boundaries. Where this may occur, it is 718 RECOMMENDED that on-demand OAM is configured as necessary to ensure 719 that Source Identifier TLVs are included in on-demand CV messages. 720 This will allow implementations to filter OAM messages arriving from 721 an unexpected or unknown source. 723 7. IANA Considerations 725 7.1. New Source and Destination Identifier TLVs 727 IANA is requested to assign the following TLV types from the "Label 728 Switched Paths (LSPs) Ping Parameters - TLVs" Registry, "TLVs and 729 sub-TLVs" sub-registry (from "Standards Action" TLV type range): 731 Length 732 Type # TLV Name Octets Reference 733 ------ -------------------- ------ ------------------------ 734 TBD-SRC Source ID TLV 8 this document (sect 2.2) 735 TBD-DST Destination ID TLV 8 this document (sect 2.2) 737 Figure 9: New Source/Destination Identifier TLV Type 739 7.2. New Target FEC Stack Sub-TLVs 741 Section 2.3 defines 2 new sub-TLV types for inclusion within the LSP 742 Ping [RFC4379] Target FEC Stack TLV. 744 IANA is requested to assign sub-type values to the following sub-TLVs 745 from the "Multiprotocol Label Switching Architecture (MPLS) Label 746 Switched Paths (LSPs) Ping Parameters - TLVs" registry, "TLVs and 747 sub-TLVs" sub-registry. 749 Value Meaning Reference 750 ----- ------------------------- -------------------------- 751 22 Static LSP sub-TLV this document (sect 2.4.1) 752 23 Static Pseudowire sub-TLV this document (sect 2.4.2) 754 7.3. New Reverse-path Target FEC Stack TLV 756 Section 3.4.2 defines a new TLV type for inclusion in the LSP-Ping 757 packet. 759 IANA is requested to assign a type value to the TLV from the 760 "Multiprotocol Label Switching Architecture (MPLS) Label Switched 761 Paths (LSPs) Ping Parameters - TLVs" registry, "TLVs and sub-TLVs" 762 sub-registry. 764 Value Meaning Reference 765 ----- -------------------------- ------------------------ 766 TBD-1 Reverse-path Target FEC this document (sect 3.4) 767 Stack TLV 769 The sub-TLV space and assignments for this TLV will be the same as 770 that for the Target FEC Stack TLV. Sub-types for the Target FEC 771 Stack TLV and the Reverse-path Target FEC Stack TLV MUST be kept the 772 same. Any new sub-type added to the Target FEC Stack TLV MUST apply 773 to the Reverse-path Target FEC Stack TLV as well. 775 7.4. New Pseudowire Associated Channel Type 777 On-demand Connectivity Verification requires a unique Associated 778 Channel Type. IANA is requested to assign a PW ACh Type from the 779 "Pseudowire Associated Channel Types Registry" as describe below: 781 Value Description TLV Follows Reference 782 ------ ------------- ----------- ---------------------- 783 TBD-2 On-Demand CV No this document (sect 3) 785 ACH TLVs SHALL NOT be associated with this channel type. 787 7.5. New RFC 4379 Registry 789 [RFC4379] defined several registries. It also defined some value 790 assignments without explicitly asking for IANA to create a registry 791 to support additional value assingments. One such case is in 792 defining address types associated with the Downstream Mapping (DSMAP) 793 TLV. 795 This document extends RFC 4379 by defining a new address type for use 796 with the Downstream Mapping and Downstream Detailed Mapping TLVs. 798 Recognizing that the absence of a registry makes it possible to have 799 collisions of "address-type" usages, IANA is requested to establish a 800 new registry - associated with both [RFC4379] and this document - 801 that initially allocates the following assignments: 803 Type # Address Type K Octets Reference 804 ------ ------------ -------- -------------------------- 805 1 IPv4 Numbered 16 RFC 4379 806 2 IPv4 Unnumbered 16 RFC 4379 807 3 IPv6 Numbered 40 RFC 4379 808 4 IPv6 Unnumbered 28 RFC 4379 809 5 Non IP 12 this document (sect 2.1.1) 811 Downstream Mapping Address Type Registry 813 Because the field in this case is an 8-bit field, the allocation 814 policy for this registry is "Standards Action." 816 8. Contributing Authors and Acknowledgements 818 The following individuals contributed materially to this document: 820 o Thomas D. Nadeau, CA Technologies 821 o Nurit Sprecher, Nokia Siemens Networks 822 o Yaacov Weingarten, Nokia Siemens Networks 824 In addition, we would like to thank the following individuals for 825 their efforts in reviewing and commenting on the document: 827 o Adrian Farrel, 828 o Alexander Vaishtein, 829 o David Sinicrope (Routing Directorate), 830 o Greg Mirsky, 831 o Hideki Endo, 832 o Huub van Helvoort, 833 o Joel Halpern (Routing Directorate), 834 o Loa Andersson, 835 o Mach Chen, 836 o Mahesh Akula, 837 o Sam Aldrin, 838 o Sandra Murphy (Security Directorate), 839 o Yaacov Weingarten, 840 o Yoshinori Koike, 841 o Zhenlong Cui 843 9. References 845 9.1. Normative References 847 [I-D.ietf-mpls-lsp-ping-enhanced-dsmap] 848 Bahadur, N., Kompella, K., and G. Swallow, "Mechanism for 849 performing LSP-Ping over MPLS tunnels", 850 draft-ietf-mpls-lsp-ping-enhanced-dsmap-11 (work in 851 progress), September 2011. 853 [I-D.ietf-mpls-p2mp-lsp-ping] 854 Saxena, S., Swallow, G., Ali, Z., Farrel, A., Yasukawa, 855 S., and T. Nadeau, "Detecting Data Plane Failures in 856 Point-to-Multipoint Multiprotocol Label Switching (MPLS) - 857 Extensions to LSP Ping", draft-ietf-mpls-p2mp-lsp-ping-18 858 (work in progress), September 2011. 860 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 861 Requirement Levels", BCP 14, RFC 2119, March 1997. 863 [RFC4379] Kompella, K. and G. Swallow, "Detecting Multi-Protocol 864 Label Switched (MPLS) Data Plane Failures", RFC 4379, 865 February 2006. 867 [RFC4385] Bryant, S., Swallow, G., Martini, L., and D. McPherson, 868 "Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for 869 Use over an MPLS PSN", RFC 4385, February 2006. 871 [RFC5586] Bocci, M., Vigoureux, M., and S. Bryant, "MPLS Generic 872 Associated Channel", RFC 5586, June 2009. 874 [RFC6370] Bocci, M., Swallow, G., and E. Gray, "MPLS Transport 875 Profile (MPLS-TP) Identifiers", RFC 6370, September 2011. 877 9.2. Informative References 879 [RFC1122] Braden, R., "Requirements for Internet Hosts - 880 Communication Layers", STD 3, RFC 1122, October 1989. 882 [RFC1812] Baker, F., "Requirements for IP Version 4 Routers", 883 RFC 1812, June 1995. 885 [RFC4446] Martini, L., "IANA Allocations for Pseudowire Edge to Edge 886 Emulation (PWE3)", BCP 116, RFC 4446, April 2006. 888 [RFC5003] Metz, C., Martini, L., Balus, F., and J. Sugimoto, 889 "Attachment Individual Identifier (AII) Types for 890 Aggregation", RFC 5003, September 2007. 892 [RFC5860] Vigoureux, M., Ward, D., and M. Betts, "Requirements for 893 Operations, Administration, and Maintenance (OAM) in MPLS 894 Transport Networks", RFC 5860, May 2010. 896 [RFC5884] Aggarwal, R., Kompella, K., Nadeau, T., and G. Swallow, 897 "Bidirectional Forwarding Detection (BFD) for MPLS Label 898 Switched Paths (LSPs)", RFC 5884, June 2010. 900 [RFC6371] Busi, I. and D. Allan, "Operations, Administration, and 901 Maintenance Framework for MPLS-Based Transport Networks", 902 RFC 6371, September 2011. 904 Authors' Addresses 906 Eric Gray 907 Ericsson 908 900 Chelmsford Street 909 Lowell, MA 01851 910 US 912 Phone: +1 978 275 7470 913 Fax: 914 Email: eric.gray@ericsson.com 915 URI: 917 Nitin Bahadur 918 Juniper Networks, Inc. 919 1194 N. Mathilda Avenue 920 Sunnyvale, CA 94089 921 US 923 Phone: +1 408 745 2000 924 Email: nitinb@juniper.net 925 URI: www.juniper.net 927 Sami Boutros 928 Cisco Systems, Inc. 929 3750 Cisco Way 930 San Jose, CA 95134 931 US 933 Phone: 934 Fax: 935 Email: sboutros@cisco.com 936 URI: 938 Rahul Aggarwal 940 Email: raggarwa_1@yahoo.com