idnits 2.17.1 draft-ietf-mpls-p2mp-lsp-ping-04.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 18. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 1222. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1105. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1112. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1118. 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 Copyright Line does not match the current year -- 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 (March 2007) is 6244 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: 2 errors (**), 0 flaws (~~), 1 warning (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Network Working Group Seisho Yasukawa (Editor) 2 Internet-Draft NTT 3 Intended Status: Standards Track Adrian Farrel (Editor) 4 Expires: September 2007 Old Dog Consulting 6 March 2007 8 Detecting Data Plane Failures in Point-to-Multipoint Multiprotocol 9 Label Switching (MPLS) - Extensions to LSP Ping 11 draft-ietf-mpls-p2mp-lsp-ping-04.txt 13 Status of this Memo 15 By submitting this Internet-Draft, each author represents that any 16 applicable patent or other IPR claims of which he or she is aware 17 have been or will be disclosed, and any of which he or she becomes 18 aware will be disclosed, in accordance with Section 6 of BCP 79. 20 Internet-Drafts are working documents of the Internet Engineering 21 Task Force (IETF), its areas, and its working groups. Note that 22 other groups may also distribute working documents as 23 Internet-Drafts. 25 Internet-Drafts are draft documents valid for a maximum of six months 26 and may be updated, replaced, or obsoleted by other documents at any 27 time. It is inappropriate to use Internet-Drafts as reference 28 material or to cite them other than as "work in progress." 30 The list of current Internet-Drafts can be accessed at 31 http://www.ietf.org/1id-abstracts.txt. 33 The list of Internet-Draft Shadow Directories can be accessed at 34 http://www.ietf.org/shadow.html. 36 Abstract 38 Recent proposals have extended the scope of Multiprotocol Label 39 Switching (MPLS) Label Switched Paths (LSPs) to encompass 40 point-to-multipoint (P2MP) LSPs. 42 The requirement for a simple and efficient mechanism that can be 43 used to detect data plane failures in point-to-point (P2P) MPLS LSPs 44 has been recognised and has led to the development of techniques 45 for fault detection and isolation commonly referred to as "LSP Ping". 47 The scope of this document is fault detection and isolation for P2MP 48 MPLS LSPs. This documents does not replace any of the mechanism of 49 LSP Ping, but clarifies their applicability to MPLS P2MP LSPs, and 50 extends the techniques and mechanisms of LSP Ping to the MPLS P2MP 51 environment. 53 Conventions used in this document 55 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 56 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 57 document are to be interpreted as described in RFC 2119 [RFC2119]. 59 Contents 61 1. Introduction ................................................... 4 62 1.1 Design Considerations ......................................... 4 63 2. Notes on Motivation ............................................ 5 64 2.1. Basic Motivations for LSP Ping ............................... 5 65 2.2. Motivations for LSP Ping for P2MP LSPs ....................... 6 66 2.3 Bootstrapping other OAM Procedures using LSP Ping ............. 7 67 3. Operation of LSP Ping for a P2MP LSP ........................... 8 68 3.1. Identifying the LSP Under Test ............................... 8 69 3.1.1. Identifying a P2MP MPLS TE LSP ............................. 8 70 3.1.1.1. RSVP P2MP IPv4 Session Sub-TLV ........................... 8 71 3.1.1.2. RSVP P2MP IPv6 Session Sub-TLV ........................... 9 72 3.1.2. Identifying a Multicast LDP LSP ............................ 9 73 3.1.2.1. Multicast LDP FEC Stack Sub-TLV ......................... 10 74 3.2. Ping Mode Operation ......................................... 11 75 3.2.1. Controlling Responses to LSP Pings ........................ 11 76 3.2.2. Ping Mode Egress Procedures ............................... 12 77 3.2.3. Jittered Responses ........................................ 12 78 3.2.4. P2MP Egress Identifier TLV and Sub-TLVs ................... 13 79 3.2.5. Echo Jitter TLV ........................................... 14 80 3.3. Traceroute Mode Operation ................................... 14 81 3.3.1. Traceroute Responses at Non-Branch Nodes .................. 15 82 3.3.1.1. Correlating Traceroute Responses ........................ 15 83 3.3.2. Traceroute Responses at Branch Nodes ..................... 16 84 3.3.2.1. Correlating Traceroute Responses ........................ 17 85 3.3.3. Traceroute Responses at Bud Nodes ......................... 17 86 3.3.4. Non-Response to Traceroute Echo Requests .................. 17 87 3.3.5. Modifications to the Downstream Mapping TLV ............... 18 88 3.3.6. Additions to Downstream Mapping Multipath Information ..... 19 89 4. Operation of LSP Ping for Bootstrapping Other OAM Mechanisms .. 20 90 5. Non-compliant Routers ......................................... 20 91 6. OAM Considerations ............................................ 20 92 7. IANA Considerations ........................................... 21 93 7.1. New Sub-TLV Types ........................................... 21 94 7.2. New Multipath Type .......................................... 21 95 7.3. New TLVs .................................................... 22 96 8. Security Considerations ....................................... 22 97 9. Acknowledgements .............................................. 22 98 10. Intellectual Property Considerations ......................... 23 99 11. Normative References ......................................... 23 100 12. Informative References ....................................... 23 101 13. Authors' Addresses ........................................... 24 102 14. Full Copyright Statement ..................................... 25 104 0. Change Log 106 This section to be removed before publication as an RFC. 108 0.1 Changes from 00 to 01 110 - Update references. 112 - Fix boilerplate. 114 0.2 Changes from 01 to 02 116 - Update entire document so that it is not specific to MPLS-TE, but 117 also includes multicast LDP LSPs. 119 - Move the egress identifier sub-TLVs from the FEC Stack TLV to a new 120 egress identifier TLV. 122 - Include Multicast LDP FEC Stack Sub-TLV definition from [MCAST-CV]. 124 - Add brief section on use of LSP Ping for bootstrapping. 126 - Add new references to References section. 128 - Add details of two new authors. 130 0.3 Changes from 02 to 03 132 - Update references. 134 - Update boilerplate. 136 - Fix typos. 138 - Clarify in 3.2.2 that a recipient of an echo request must reply 139 only once it has applied incoming rate limiting. 141 - Tidy references to bootstrapping for [MCAST-CV] in 1.1. 143 - Allow multiple sub-TLVs in the P2MP Egress Identifier TLV in 144 sections 3.2.1, 3.2.2, 3.2.4, 3.3.1, and 3.3.4. 146 - Clarify how to handle a P2MP Egress Identifier TLV with no sub-TLVs 147 in sections 3.2.1 and 3.2.2. 149 0.4 Changes from 03 to 04 151 - Revert to previous text in sections 3.2.1, 3.2.2, 3.2.4, 3.3.1, and 152 3.3.4 with respect to multiple sub-TLVs in the P2MP Egress 153 Identifier TLV. 155 1. Introduction 157 Simple and efficient mechanisms that can be used to detect data plane 158 failures in point-to-point (P2P) MPLS LSP are described in 159 [RFC4379]. The techniques involve information carried in an MPLS 161 "echo request" and "echo reply", and mechanisms for transporting the 162 echo reply. The echo request and reply messages provide sufficient 163 information to check correct operation of the data plane, as well as 164 a mechanism to verify the data plane against the control plane, and 165 thereby localize faults. The use of reliable reply channels for echo 166 request messages as described in [RFC4379] enables more robust fault 167 isolation. This collection of mechanisms is commonly referred to as 168 "LSP Ping". 170 The requirements for point-to-multipoint (P2MP) MPLS traffic 171 engineered (TE) LSPs are stated in [RFC4461]. [P2MP-RSVP] specifies a 172 signaling solution for establishing P2MP MPLS TE LSPs. 174 The requirements for point-to-multipoint extensions to the Label 175 Distribution Protocol (LDP) are stated in [P2MP-LDP-REQ]. [P2MP-LDP] 176 specifies extensions to LDP for P2MP MPLS. 178 P2MP MPLS LSPs are at least as vulnerable to data plane faults or to 179 discrepancies between the control and data planes as their P2P 180 counterparts. Mechanisms are, therefore, desirable to detect such 181 data plane faults in P2MP MPLS LSPs as described in [RFC4687]. 183 This document extends the techniques described in [RFC4379] such 184 that they may be applied to P2MP MPLS LSPs and so that they can be 185 used to bootstrap other OAM procedures such as [MCAST-CV]. This 186 document stresses the reuse of existing LSP Ping mechanisms used for 187 P2P LSPs, and applies them to P2MP MPLS LSPs in order to simplify 188 implementation and network operation. 190 1.1 Design Considerations 192 An important consideration for designing LSP Ping for P2MP MPLS LSPs 193 is that every attempt is made to use or extend existing mechanisms 194 rather than invent new mechanisms. 196 As for P2P LSPs, a critical requirement is that the echo request 197 messages follow the same data path that normal MPLS packets would 198 traverse. However, it can be seen this notion needs to be extended 199 for P2MP MPLS LSPs, as in this case an MPLS packet is replicated so 200 that it arrives at each egress (or leaf) of the P2MP tree. 202 MPLS echo requests are meant primarily to validate the data plane, 203 and they can then be used to validate data plane state against the 204 control plane. They may also be used to bootsrap other OAM procedures 205 such as [MPLS-BFD] and [MCAST-CV]. As pointed out in [RFC4379], 206 mechanisms to check the liveness, function, and consistency of the 207 control plane are valuable, but such mechanisms are not a feature of 208 LSP Ping and are not covered in this document. 210 As is described in [RFC4379], to avoid potential Denial of Service 211 attacks, it is RECOMMENDED to regulate the LSP Ping traffic passed to 212 the control plane. A rate limiter should be applied to the well-known 213 UDP port defined for use by LSP Ping traffic. 215 2. Notes on Motivation 217 2.1. Basic Motivations for LSP Ping 219 The motivations listed in [RFC4379] are reproduced here for 220 completeness. 222 When an LSP fails to deliver user traffic, the failure cannot always 223 be detected by the MPLS control plane. There is a need to provide a 224 tool that would enable users to detect such traffic "black holes" or 225 misrouting within a reasonable period of time; and a mechanism to 226 isolate faults. 228 [RFC4379] describes a mechanism that accomplishes these goals. This 229 mechanism is modeled after the ping/traceroute paradigm: ping (ICMP 230 echo request [RFC792]) is used for connectivity checks, and 231 traceroute is used for hop-by-hop fault localization as well as path 232 tracing. [RFC4379] specifies a "ping mode" and a "traceroute" mode 233 for testing MPLS LSPs. 235 The basic idea as expressed in [RFC4379] is to test that the packets 236 that belong to a particular Forwarding Equivalence Class (FEC) 237 actually end their MPLS path on an LSR that is an egress for that 238 FEC. [RFC4379] achieves this test by sending a packet (called an 239 "MPLS echo request") along the same data path as other packets 240 belonging to this FEC. An MPLS echo request also carries information 241 about the FEC whose MPLS path is being verified. This echo request is 242 forwarded just like any other packet belonging to that FEC. In "ping" 243 mode (basic connectivity check), the packet should reach the end of 244 the path, at which point it is sent to the control plane of the 245 egress LSR, which then verifies that it is indeed an egress for the 246 FEC. In "traceroute" mode (fault isolation), the packet is sent to 247 the control plane of each transit LSR, which performs various checks 248 that it is indeed a transit LSR for this path; this LSR also returns 249 further information that helps to check the control plane against the 250 data plane, i.e., that forwarding matches what the routing protocols 251 determined as the path. 253 One way these tools can be used is to periodically ping a FEC to 254 ensure connectivity. If the ping fails, one can then initiate a 255 traceroute to determine where the fault lies. One can also 256 periodically traceroute FECs to verify that forwarding matches the 257 control plane; however, this places a greater burden on transit LSRs 258 and thus should be used with caution. 260 2.2. Motivations for LSP Ping for P2MP LSPs 262 As stated in [RFC4687], MPLS has been extended to encompass P2MP 263 LSPs. As with P2P MPLS LSPs, the requirement to detect, handle and 264 diagnose control and data plane defects is critical. For operators 265 deploying services based on P2MP MPLS LSPs the detection and 266 specification of how to handle those defects is important because 267 such defects may affect the fundamentals of an MPLS network, but also 268 because they may impact service level specification commitments for 269 customers of their network. 271 P2MP LDP [P2MP-LDP] uses the Label Distribution Protocol to establish 272 multicast LSPs. These LSPs distribute data from a single source to 273 one or more destinations across the network according to the next 274 hops indicated by the routing protocols. Each LSP is identified by an 275 MPLS multicast FEC. 277 P2MP MPLS TE LSPs [P2MP-RSVP] may be viewed as MPLS tunnels with a 278 single ingress and multiple egresses. The tunnels, built on P2MP 279 LSPs, are explicitly routed through the network. There is no concept 280 or applicability of a FEC in the context of a P2MP MPLS TE LSP. 282 MPLS packets inserted at the ingress of a P2MP LSP are delivered 283 equally (barring faults) to all egresses. In consequence, the basic 284 idea of LSP Ping for P2MP MPLS TE LSPs may be expressed as an 285 intention to test that packets that enter (at the ingress) a 286 particular P2MP LSP actually end their MPLS path on the LSRs that are 287 the (intended) egresses for that LSP. The idea may be extended to 288 check selectively that such packets reach specific egresses. 290 The technique in this document makes this test by sending an LSP Ping 291 echo request message along the same data path as the MPLS packets. An 292 echo request also carries the identification of the P2MP MPLS LSP 293 (multicast LSP or P2MP TE LSP) that it is testing. The echo request 294 is forwarded just as any other packet using that LSP and so is 295 replicated at branch points of the LSP and should be delivered to all 296 egresses. In "ping" mode (basic connectivity check), the echo request 297 should reach the end of the path, at which point it is sent to the 298 control plane of the egress LSRs, which verify that they are indeed 299 an egress (leaf) of the P2MP LSP. An echo response message is sent by 300 an egress to the ingress to confirm the successful receipt (or 301 announce the erroneous arrival) of the echo request. 303 In "traceroute" mode (fault isolation), the echo request is sent to 304 the control plane at each transit LSR, and the control plane checks 305 that it is indeed a transit LSR for this P2MP MPLS LSP. The transit 306 LSR also returns information on an echo response that helps verify 307 the control plane against the data plane. That is, the information 308 is used by the ingress to check that the data plane forwarding 309 matches what is signaled by the control plane. 311 P2MP MPLS LSPs may have many egresses, and it is not necessarily the 312 intention of the initiator of the ping or traceroute operation to 313 collect information about the connectivity or path to all egresses. 314 Indeed, in the event of pinging all egresses of a large P2MP MPLS 315 LSP, it might be expected that a large number of echo responses would 316 arrive at the ingress independently but at approximately the same 317 time. Under some circumstances this might cause congestion at or 318 around the ingress LSR. Therefore, the procedures described in this 319 document provide a mechanism that allows the responders to randomly 320 delay (or jitter) their responses so that the chances of swamping the 321 ingress are reduced. 323 Further, the procedures in this document allow the initiator to limit 324 the scope of an LSP Ping echo request (ping or traceroute mode) to 325 one specific intended egress or a set of egresses. 327 The scalability issues surrounding LSP Ping for P2MP MPLS LSPs may be 328 addressed by other mechanisms such as [MCAST-CV] that utilise the LSP 329 Ping procedures in this document to provide bootstrapping mechanisms 330 as described in Section 2.3. 332 LSP Ping can be used to periodically ping a P2MP MPLS LSP to ensure 333 connectivity to any or all of the egresses. If the ping fails, 334 the operator or an automated process can then initiate a traceroute 335 to determine where the fault is located within the network. A 336 traceroute may also be used periodically to verify that data plane 337 forwarding matches the control plane state; however, this places an 338 increased burden on transit LSRs and should be used infrequently and 339 with caution. 341 2.3 Bootstrapping other OAM Procedures using LSP Ping 343 [MPLS-BFD] describes a process where LSP Ping [RFC4379] is used to 344 bootstrap the Bidirectional Forwarding Detection (BFD) mechanism 345 [BFD] for use to track the liveliness of an MPLS LSP. In particular 346 BFD can be used to detect a data plane failure in the forwarding 347 path of an MPLS LSP. 349 Requirements for MPLS P2MP LSPs extend to hundreds or even thousands 350 of endpoints. If a protocol required explicit acknowledgments to 351 each probe for connectivity verification, the response load at the 352 root would be overwhelming. 354 A more scalable approach to monitoring P2MP LSP connectivity is 355 desribed in [MCAST-CV]. It relies on using the MPLS Echo 356 Request/Response messages of LSP Ping [RFC4379] to bootstrap the 357 monitoring mechanism in a manner similar to [MPLS-BFD]. The actual 358 monitoring is done using a separate process defined in [MCAST-CV]. 360 Note that while the approach described in [MCAST-CV] was developed in 361 response to the multicast scalability problem, it can be applied to 362 P2P LSPs as well. 364 3. Operation of LSP Ping for a P2MP LSP 366 This section describes how LSP Ping is applied to P2MP MPLS LSPs. 367 It covers the mechanisms and protocol fields applicable to both ping 368 mode and traceroute mode. It explains the responsibilities of the 369 initiator (ingress), transit LSRs and receivers (egresses). 371 3.1. Identifying the LSP Under Test 373 3.1.1. Identifying a P2MP MPLS TE LSP 375 [RFC4379] defines how an MPLS TE LSP under test may be identified in 376 an echo request. A Target FEC Stack TLV is used to carry either an 377 RSVP IPv4 Session or an RSVP IPv6 Session sub-TLV. 379 In order to identify the P2MP MPLS TE LSP under test, the echo 380 request message MUST carry a Target FEC Stack TLV, and this MUST 381 carry exactly one of two new sub-TLVs: either an RSVP P2MP IPv4 382 Session or an RSVP P2MP IPv6 Session sub-TLV. These sub-TLVs carry 383 fields from the RSVP-TE P2MP Session and Sender-Template objects 384 [P2MP-RSVP] and so provide sufficient information to uniquely 385 identify the LSP. 387 The new sub-TLVs are assigned sub-type identifiers as follows, and 388 are described in the following sections. 390 Sub-Type # Length Value Field 391 ---------- ------ ----------- 392 TBD 20 RSVP P2MP IPv4 Session 393 TBD 56 RSVP P2MP IPv6 Session 395 3.1.1.1. RSVP P2MP IPv4 Session Sub-TLV 397 The format of the RSVP P2MP IPv4 Session Sub-TLV value field is 398 specified in the following figure. The value fields are taken from 399 the definitions of the P2MP IPv4 LSP Session Object, and the P2MP 400 IPv4 Sender-Template Object in [P2MP-RSVP]. Note that the Sub-Group 401 ID of the Sender-Template is not required. 403 0 1 2 3 404 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 405 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 406 | P2MP ID | 407 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 408 | Must Be Zero | Tunnel ID | 409 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 410 | Extended Tunnel ID | 411 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 412 | IPv4 tunnel sender address | 413 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 414 | Must Be Zero | LSP ID | 415 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 417 3.1.1.2. RSVP P2MP IPv6 Session Sub-TLV 419 The format of the RSVP P2MP IPv6 Session Sub-TLV value field is 420 specified in the following figure. The value fields are taken from 421 the definitions of the P2MP IPv6 LSP Session Object, and the 422 P2MP IPv6 Sender-Template Object in [P2MP-RSVP]. Note that the 423 Sub-Group ID of the Sender-Template is not required. 425 0 1 2 3 426 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 427 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 428 | | 429 | P2MP ID | 430 | | 431 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 432 | Must Be Zero | Tunnel ID | 433 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 434 | | 435 | Extended Tunnel ID | 436 | | 437 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 438 | | 439 | IPv6 tunnel sender address | 440 | | 441 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 442 | Must Be Zero | LSP ID | 443 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 445 3.1.2. Identifying a Multicast LDP LSP 447 [RFC4379] defines how a P2P LDP LSP under test may be identified in 448 an echo request. A Target FEC Stack TLV is used to carry one or more 449 Sub-TLVs (for example, an IPv4 Prefix FEC Sub-TLV) that identify the 450 LSP. 452 In order to identify a multicast LDP LSP under test, the echo request 453 message MUST carry a Target FEC Stack TLV, and this MUST carry 454 exactly one new sub-TLVs: the Multicast LDP FEC Stack Sub-TLV. This 455 Sub-TLVs fields from the multicast LDP messages [P2MP-LDP] and so 456 provides sufficient information to uniquely identify the LSP. 458 The new sub-TLV is assigned a sub-type identifier as follows, and 459 is described in the following sections. 461 Sub-Type # Length Value Field 462 ---------- ------ ----------- 463 TBD Variable Multicast LDP FEC Stack 465 3.1.2.1. Multicast LDP FEC Stack Sub-TLV 467 The format of the Multicast LDP FEC Stack Sub-TLV is shown below. 469 0 1 2 3 470 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 471 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 472 | Address Family | Address Length| Root LSR Addr | 473 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 474 | | 475 ~ Root LSR Address (Cont.) ~ 476 | | 477 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 478 | Opaque Length | Opaque Value ... | 479 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + 480 ~ ~ 481 | | 482 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 483 | | 484 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 486 Address Family 488 A two octet quantity containing a value from ADDRESS FAMILY 489 NUMBERS in [IANA-PORT] that encodes the address family for the 490 Root LSR Address. 492 Address Length 494 The length of the Root LSR Address in octets. 496 Root LSR Address 498 An address of the LSR at the root of the P2MP LSP encoded 499 according to the Address Family field. 501 Opaque Length 503 The length of the Opaque Value, in octets. 505 Opaque Value 507 An opaque value elements of which uniquely identifies the P2MP LSP 508 in the context of the Root LSR. 510 If the Address Family is IPv4, the Address Length MUST be 4. If the 511 Address Family is IPv6, the Address Length MUST be 16. No other 512 Address Family values are defined at present. 514 3.2. Ping Mode Operation 516 3.2.1. Controlling Responses to LSP Pings 518 As described in Section 2.2, it may be desirable to restrict the 519 operation of LSP Ping to a single egress. Since echo requests are 520 forwarded through the data plane without interception by the control 521 plane (compare with traceroute mode), there is no facility to limit 522 the propagation of echo requests, and they will automatically be 523 forwarded to all (reachable) egresses. 525 However, the intended egress under test can be identified by the 526 inclusion of a P2MP Egress Identifier TLV containing an IPv4 P2MP 527 Egress Identifier sub-TLV or an IPv6 P2MP Egress Identifier sub-TLV. 528 The P2MP Egress Identifier TLV SHOULD contain precisely one sub-TLV. 529 If the TLV contains no sub-TLVs it SHOULD be processed as if the 530 whole TLV were absent (causing all egresses to respond as described 531 below). If the TLV contains more than one sub-TLV, the first MUST be 532 precessed as described in this document, and subsequent sub-TLVs 533 SHOULD be ignored. 535 An initiator may indicate that it wishes all egresses to respond to 536 an echo request by omitting the P2MP Egress Identifier TLV. 538 Note that the ingress of a multicast LDP LSP will not know the 539 identities of the egresses of the LSP except by some external means 540 such as running P2MP LSP Ping to all egresses. 542 3.2.2. Ping Mode Egress Procedures 544 An egress LSR is RECOMMENDED to rate limit its receipt of echo 545 request messages as described in [RFC4379]. After rate limiting, an 546 egress LSR that receives an echo request carrying an RSVP P2MP IPv4 547 Session sub-TLV, an RSVP P2MP IPv6 Session sub-TLV, or a Multicast 548 LDP FEC Stack Sub-TLV MUST determine whether it is an intended egress 549 of the P2MP LSP in question by checking with the control plane. If it 550 is not supposed to be an egress, it MUST respond according to the 551 setting of the Response Type field in the echo message following the 552 rules defined in [RFC4379]. 554 If the egress LSR that receives an echo request and allows it through 555 its rate limiting is an intended egress of the P2MP LSP, the LSR MUST 556 check to see whether it is an intended Ping recipient. If a P2MP 557 Egress Identifier TLV is present and contains an address that 558 indicates any address that is local to the LSR, the LSR MUST respond 559 according to the setting of the Response Type field in the echo 560 message following the rules defined in [RFC4379]. If the P2MP Egress 561 Identifier TLV is present, but does not identify the egress LSR, it 562 MUST NOT respond to the echo request. If the P2MP Egress Identifier 563 TLV is not present (or, in the error case, is present but does not 564 a sub-TLVs), but the egress LSR that received the echo request is an 565 intended egress of the LSP, the LSR MUST respond according to the 566 setting of the Response Type field in the echo message following the 567 rules defined in [RFC4379]. 569 3.2.3. Jittered Responses 571 The initiator (ingress) of a ping request MAY request the responding 572 egress to introduce a random delay (or jitter) before sending the 573 response. The randomness of the delay allows the responses from 574 multiple egresses to be spread over a time period. Thus this 575 technique is particularly relevant when the entire LSP tree is being 576 pinged since it helps prevent the ingress (or nearby routers) from 577 being swamped by responses, or from discarding responses due to rate 578 limits that have been applied. 580 It is desirable for the ingress to be able to control the bounds 581 within which the egress delays the response. If the tree size is 582 small only a small amount of jitter is required, but if the tree is 583 large greater jitter is needed. The ingress informs the egresses of 584 the jitter bound by supplying a value in a new TLV (the Echo Jitter 585 TLV) carried on the Echo request message. If this TLV is present, 586 the responding egress MUST delay sending a response for a random 587 amount of time between zero seconds and the value indicated in the 588 TLV. If the TLV is absent, the responding egress SHOULD NOT introduce 589 any additional delay in responding to the echo request. 591 LSP ping SHOULD NOT be used to attempt to measure the round-trip 592 time for data delivery. This is because the LSPs are unidirectional, 593 and the echo response is often sent back through the control plane. 594 The timestamp fields in the echo request/response MAY be used to 595 deduce some information about delivery times and particularly the 596 variance in delivery times. 598 The use of echo jittering does not change the processes for gaining 599 information, but note that the responding egress MUST set the value 600 in the Timestamp Received fields before applying any delay. 602 It is RECOMMENDED that echo response jittering is not used except in 603 the case of P2MP LSPs. If the Echo Jitter TLV is present in an echo 604 request for any other type of TLV, the responding egress MAY apply 605 the jitter behavior described here. 607 3.2.4. P2MP Egress Identifier TLV and Sub-TLVs 609 A new TLV is defined for inclusion in the Echo request message. 611 The P2MP Egress Identifier TLV is assigned the TLV type value TBD and 612 is encoded as follows. 614 0 1 2 3 615 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 616 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 617 |Type = TBD (P2MP Egress ID TLV)| Length = Variable | 618 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 619 ~ Sub-TLVs ~ 620 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 622 Sub-TLVs: 624 Zero, one or more sub-TLVs as defined below. 626 If no sub-TLVs are present, the TLV MUST be processed as if it 627 were absent. If more than one sub-TLV is present the first MUST 628 be processed as described in this document, and subsequent 629 sub-TLVs SHOULD be ignored. 631 The P2MP Egress Identifier TLV only has meaning on an echo request 632 message. If present on an echo response message, it SHOULD be 633 ignored. 635 Two Sub-TLVs are defined for inclusion in the P2MP Egress Identifier 636 TLV carried on the echo request message. These are: 638 Sub-Type # Length Value Field 639 ---------- ------ ----------- 640 1 4 IPv4 P2MP Egress Identifier 641 2 16 IPv6 P2MP Egress Identifier 643 The value of an IPv4 P2MP Egress Identifier consists of four octets 644 of an IPv4 address. The IPv4 address is in network byte order. 646 The value of an IPv6 P2MP Egress Identifier consists of sixteen 647 octets of an IPv6 address. The IPv6 address is in network byte order. 649 3.2.5. Echo Jitter TLV 651 A new TLV is defined for inclusion in the Echo request message. 653 The Echo Jitter TLV is assigned the TLV type value TBD and is encoded 654 as follows. 656 0 1 2 3 657 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 658 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 659 | Type = TBD (Jitter TLV) | Length = 4 | 660 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 661 | Jitter time | 662 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 664 Jitter time: 666 This field specifies the upper bound of the jitter period that 667 should be applied by a responding egress to determine how long 668 to wait before sending an echo response. An egress SHOULD wait 669 a random amount of time between zero seconds and the value 670 specified in this field. 672 Jitter time is specified in milliseconds. 674 The Echo Jitter TLV only has meaning on an echo request message. If 675 present on an echo response message, it SHOULD be ignored. 677 3.3. Traceroute Mode Operation 679 The traceroute mode of operation is described in [RFC4379]. Like 680 other traceroute operations, it relies on the expiration of the TTL 681 of the packet that carries the echo request. Echo requests may 682 include a Downstream Mapping TLV, and when the TTL expires the echo 683 request is passed to the control plane on the transit LSR which 684 responds according to the Response Type in the message. A responding 685 LSR fills in the fields of the Downstream Mapping TLV to indicate the 686 downstream interfaces and labels used by the reported LSP from the 687 responding LSR. In this way, by successively sending out echo 688 requests with increasing TTLs, the ingress may gain a picture of the 689 path and resources used by an LSP up to the point of failure when no 690 response is received, or an error response is generated by an LSR 691 where the control plane does not expect to be handling the LSP. 693 This mode of operation is equally applicable to P2MP MPLS TE LSPs 694 as described in the following sections. 696 The traceroute mode can be applied to all destinations of the P2MP 697 tree just as in the ping mode. In the case of P2MP MPLS TE LSPs, the 698 traceroute mode can also be applied to individual destinations 699 identified by the presence of a P2MP Egress Identifier TLV. However, 700 since a transit LSR of a multicast LDP LSP is unable to determine 701 whether it lies on the path to any one destination, the traceroute 702 mode limited to specific egresses of such an LSP MUST NOT be used. 704 In the absence of a P2MP Egress Identifier TLV, the echo request is 705 asking for traceroute information applicable to all egresses. 707 The echo response jitter technique described for the ping mode is 708 equally applicable to the traceroute mode and is not additionally 709 described in the procedures below. 711 3.3.1. Traceroute Responses at Non-Branch Nodes 713 When the TTL for the MPLS packet carrying an echo request expires the 714 packet MUST be passed to the control plane as specified in [RFC4379]. 716 If the LSP under test is a multicast LDP LSP and if the echo request 717 carries a P2MP Egress Identifier TLV the LSR MUST treat the echo 718 request as malformed and MUST process it according to the rules 719 specified in [RFC4379]. 721 Otherwise, the LSR MUST NOT return an echo response unless the 722 responding LSR lies on the path of the P2MP LSP to the egress 723 identified by the P2MP Egress Identifier TLV carried on the request, 724 or if no such Sub-TLV is present. 726 If sent, the echo response MUST identifiy the next hop of the path of 727 the LSP in the data plane by including a Downstream Mapping TLV as 728 described in [RFC4379]. 730 3.3.1.1. Correlating Traceroute Responses 732 When traceroute is being simultaneously applied to multiple egresses, 733 it is important that the ingress should be able to correlate the echo 734 responses with the branches in the P2MP tree. Without this 735 information the ingress will be unable to determine the correct 736 ordering of transit nodes. One possibility is for the ingress to poll 737 the path to each egress in turn, but this may be inefficient, 738 undesirable, or (in the case of multicast LDP LSPs) illegal. 740 The Downstream Mapping TLV that MUST be included in the echo response 741 indicates the next hop from each responding LSR, and this information 742 supplied by a non-branch LSR can be pieced together by the ingress to 743 reconstruct the P2MP tree although it may be necessary to refer to 744 the routing information distributed by the IGP to correlate next hop 745 addresses and LSR reporting addresses in subsequent echo responses. 747 In order to facilitate more easy correlation of echo responses, the 748 Downstream Mapping TLV can also contain Multipath Information as 749 described in [RFC4379] to identify to which egress/egresses the echo 750 response applies, and indicates. This information: 752 - MUST NOT be present for multicast LDP LSPs 754 - SHOULD be present for P2MP MPLS TE LSPs when the echo request 755 applies to all egresses 757 - is RECCOMMENDED to be present for P2MP MPLS TE LSPs when the echo 758 request is limited to a single egress. 760 The format of the information in the Downstream Mapping TLV for 761 P2MP MPLS LSPs is described in section 3.3.5 and 3.3.6. 763 3.3.2. Traceroute Responses at Branch Nodes 765 A branch node may need to identify more than one downstream interface 766 in a traceroute echo response if some of the egresses that are being 767 traced lie on different branches. This will always be the case for 768 any branch node if all egresses are being traced. 770 [RFC4379] describes how multiple Downstream Mapping TLVs should be 771 included in an echo response, each identifying exactly one downstream 772 interface that is applicable to the LSP. 774 A branch node MUST follow the procedures described in Section 3.3.1 775 to determine whether it should respond to an echo request. The branch 776 node MUST add a Downstream Mapping TLV to the echo response for each 777 outgoing branch that it reports, but it MUST NOT report branches that 778 do not lie on the path to one of the destinations being traced. Thus 779 a branch node may sometimes only need to respond with a single 780 Downstream Mapping TLV, for example, consider the case where the 781 traceroute is directed to only a single egress node. Therefore, 782 the presence of only one Downstream Mapping TLV in an echo response 783 does not guarantee that the reporting LSR is not a branch node. 785 To report on the fact that an LSR is a branch node for the P2MP MPLS 786 LSP a new B-flag is added to the Downstream Mapping TLV. The flag is 787 set to zero to indicate that the reporting LSR is not a branch for 788 this LSP, and is set to one to indicate that it is a branch. The flag 789 is placed in the fourth byte of the TLV that was previously reserved. 791 The format of the information in the Downstream Mapping TLV for 792 P2MP MPLS LSPs is described in section 3.3.5 and 3.3.6. 794 3.3.2.1. Correlating Traceroute Responses 796 Just as with non-branches, it is important that the echo responses 797 from branch nodes provide correlation information that will allow the 798 ingress to work out to which branch of the LSP the response applies. 800 The P2MP tree can be determined by the ingress using the identity of 801 the reporting node and the next hop information from the previous 802 echo response, just as with echo responses from non-branch nodes. 804 As with non-branch nodes, in order to facilitate more easy 805 correlation of echo responses, the Downstream Mapping TLV can also 806 contain Multipath Information as described in [RFC4379] to identify 807 to which egress/egresses the echo response applies, and indicates. 808 This information: 810 - MUST NOT be present for multicast LDP LSPs 812 - SHOULD be present for P2MP MPLS TE LSPs when the echo request 813 applies to all egresses 815 - is RECCOMMENDED to be present for P2MP MPLS TE LSPs when the echo 816 request is limited to a single egress. 818 The format of the information in the Downstream Mapping TLV for 819 P2MP MPLS LSPs is described in section 3.3.5 and 3.3.6. 821 3.3.3. Traceroute Responses at Bud Nodes 823 Some nodes on a P2MP MPLS LSP may be egresses, but also have 824 downstream LSRs. Such LSRs are known as bud nodes [RFC4461]. 826 A bud node MUST respond to a traceroute echo request just as a branch 827 node would, but it MUST also indicates to the ingress that it is an 828 egress in its own right. This is achieved through the use of a new 829 E-flag in the Downstream Mapping TLV that indicates that the 830 reporting LSR is not a bud for this LSP (cleared to zero) or is a bud 831 (set to one). A normal egress MUST NOT set this flag. 833 The flag is placed in the fourth byte of the TLV that was previously 834 reserved. 836 3.3.4. Non-Response to Traceroute Echo Requests 838 The nature of P2MP MPLS TE LSPs in the data plane means that 839 traceroute echo requests may be delivered to the control plane of 840 LSRs that must not reply to the request because, although they lie 841 on the P2MP tree, they do not lie on the path to the egress that is 842 being traced. 844 Thus, an LSR on a P2MP MPLS LSP MUST NOT respond to an echo request 845 when the TTL has expired if any of the following applies: 847 - The Reply Type indicates that no reply is required 849 - There is a P2MP Egress Identifier TLV present on the echo request 850 (which means that the LSP is a P2MP MPLS TE LSP), but the address 851 does not identify an egress that is reached through this LSR for 852 this particular P2MP MPLS LSP. 854 3.3.5. Modifications to the Downstream Mapping TLV 856 A new B-flag is added to the Downstream Mapping TLV to indicate that 857 the reporting LSR is not a branch for this LSP (cleared to zero) or 858 is a branch (set to one). 860 A new E-flag is added to the Downstream Mapping TLV to indicate that 861 the reporting LSR is not a bud node for this LSP (cleared to zero) or 862 is a bud node (set to one). 864 The flags are placed in the fourth byte of the TLV that was 865 previously reserved as shown below. All other fields are unchanged 866 from their definitions in [RFC4379] except for the additional 867 information that can be carried in the Multipath Information (see 868 Section 3.3.6). 870 0 1 2 3 871 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 872 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 873 | MTU | Address Type | Reserved |E|B| 874 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 875 | Downstream IP Address (4 or 16 octets) | 876 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 877 | Downstream Interface Address (4 or 16 octets) | 878 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 879 | Hash Key Type | Depth Limit | Multipath Length | 880 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 881 . . 882 . (Multipath Information) . 883 . . 884 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 885 | Downstream Label | Protocol | 886 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 887 . . 888 . . 889 . . 890 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 891 | Downstream Label | Protocol | 892 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 894 3.3.6. Additions to Downstream Mapping Multipath Information 896 A new value for the Multipath Type is defined to indicate that the 897 reported Multipath Information applies to a P2MP MPLS TE LSP and 898 may contain a list of egress identifiers that indicate the egress 899 nodes that can be reached through the reported interface. This 900 Multipath Type MUST NOT be used for a multicast LDP LSP. 902 Type # Address Type Multipath Information 903 --- ---------------- --------------------- 904 TBD P2MP egresses List of P2MP egresses 906 Note that a list of egresses may include IPv4 and IPv6 identifiers 907 since these may be mixed in the P2MP MPLS TE LSP. 909 The Multipath Length field continues to identify the length of the 910 Multipath Information just as in [RFC4379] (that is, not including 911 the downstream labels), and the downstream label (or potential 912 stack thereof) is also handled just as in [RFC4379]. The format 913 of the Multipath Information for a Multipath Type of P2MP Egresses 914 is as follows. 916 0 1 2 3 917 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 918 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 919 | Address Type | Egress Address (4 or 16 octets) | 920 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 921 | (continued) | : 922 +-+-+-+-+-+-+-+-+ : 923 : Further Address Types and Egress Addresses : 924 : : 925 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 927 Address Type 929 This field indicates whether the egress address that follows is 930 an IPv4 or IPv6 address, and so implicitly encodes the length of 931 the address. 933 Two values are defined and mirror the values used in the Address 934 Type field of the Downstream Mapping TLV itself. 936 Type # Address Type 937 ------ ------------ 938 1 IPv4 939 3 IPv6 941 Egress Address 943 An egress of this P2MP MPLS TE LSP that is reached through the 944 interface indicated by the Downstream Mapping TLV and for which 945 the traceroute echo request was enquiring. 947 4. Operation of LSP Ping for Bootstrapping Other OAM Mechanisms 949 Bootstrapping of other OAM procedures can be achieved using the 950 MPLS Echo Request/Response messages. The LSP(s) under test are 951 identified using the RSVP P2MP IPv4 or IPv6 Session Sub-TLVs 952 (see Section 3.1.1) or the Multicast LDP FEC Stack Sub-TLV 953 (see Section 3.1.2). 955 Other Sub-TLVs may be defined in other specifications to indicate 956 the OAM procedures being bootstrapped, and to describe the bootstrap 957 parameters. Further details of the bootstrapping processes and the 958 bootstrapped OAM processes are described in other documents. For 959 example, see [MPLS-BFD] and [MCAST-CV]. 961 5. Non-compliant Routers 963 If an egress for a P2MP LSP does not support MPLS LSP ping, then no 964 reply will be sent, resulting in a "false negative" result. There is 965 no protection for this situation, and operators may wish to ensure 966 that end points for P2MP LSPs are all equally capable of supporting 967 this function. Alternatively, the traceroute option can be used to 968 verify the LSP nearly all the way to the egress, leaving the final 969 hop to be verified manually. 971 If, in "traceroute" mode, a transit LSR does not support LSP ping, 972 then no reply will be forthcoming from that LSR for some TTL, say n. 973 The LSR originating the echo request SHOULD continue to send echo 974 requests with TTL=n+1, n+2, ..., n+k in the hope that some transit 975 LSR further downstream may support MPLS echo requests and reply. In 976 such a case, the echo request for TTL > n MUST NOT have Downstream 977 Mapping TLVs, until a reply is received with a Downstream Mapping. 979 Note that the settings of the new bit flags in the Downstream Mapping 980 TLV are such that a legacy LSR would return them with value zero 981 which most closely matches the likely default behavior of a legacy 982 LSR. 984 6. OAM Considerations 986 The procedures in this document provide OAM functions for P2MP MPLS 987 LSPs and may be used to enable bootstrapping of other OAM procedures. 989 In order to be fully operational several considerations must be made. 991 - Scaling concerns dictate that only cautious use of LSP Ping should 992 be made. In particular, sending an LSP Ping to all egresses of a 993 P2MP MPLS LSP could result in congestion at or near the ingress 994 when the responses arrive. 996 Further, incautious use of timers to generate LSP Ping echo 997 requests either in ping mode or especially in traceroute may lead 998 to significant degradation of network performance. 1000 - Management interfaces should allow an operator full control over 1001 the operation of LSP Ping. In particular, it SHOULD provide the 1002 ability to limit the scope of an LSP Ping echo request for a P2MP 1003 MPLS LSP to a single egress. 1005 Such an interface SHOULD also provide the ability to disable all 1006 active LSP Ping operations to provide a quick escape if the network 1007 becomes congested. 1009 - A MIB module is required for the control and management of LSP Ping 1010 operations, and to enable the reported information to be inspected. 1012 There is no reason to believe this should not be a simple extension 1013 of the LSP Ping MIB module used for P2P LSPs. 1015 7. IANA Considerations 1017 7.1. New Sub-TLV Types 1019 Three new Sub-TLV types are defined for inclusion within the LSP Ping 1020 [RFC4379] Target FEC Stack TLV (TLV type 1). 1022 IANA is requested to assign sub-type values to the following 1023 Sub-TLVs from the Multiprotocol Label Switching Architecture (MPLS) 1024 Label Switched Paths (LSPs) Parameters - TLVs registry. 1026 RSVP P2MP IPv4 Session (see Section 3.1.1) 1027 RSVP P2MP IPv6 Session (see Section 3.1.1) 1028 Multicast LDP FEC Stack (see Section 3.1.2) 1030 7.2. New Multipath Type 1032 Section 3.3 of [RFC4379] defines a set of values for the LSP Ping 1033 Multipath Type. These values are currently not tracked by IANA. 1035 A new value for the LSP Ping Multipath Type is defined in Section 1036 3.3.6 of this document to indicate that the reported Multipath 1037 Information applies to a P2MP MPLS TE LSP. 1039 IANA is requested to create a new registry as follows: 1041 Multiprotocol Label Switching Architecture (MPLS) Label Switched 1042 Paths (LSPs) - Multipath Types 1043 Key Type Multipath Information 1044 --- ---------------- --------------------- 1045 0 no multipath Empty (Multipath Length = 0) [RFC4379] 1046 2 IP address IP addresses [RFC4379] 1047 4 IP address range low/high address pairs [RFC4379] 1048 8 Bit-masked IP IP address prefix and bit mask [RFC4379] 1049 address set 1050 9 Bit-masked label set Label prefix and bit mask [RFC4379] 1051 xx P2MP egress IP List of P2MP egresses [thisDoc] 1052 addresses 1054 A suggested value of xx is TBD by the MPLS Working Group. 1056 New values from this registry are to be assigned only by Standards 1057 Action. 1059 7.3. New TLVs 1061 Two new LSP Ping TLV types are defined for inclusion in LSP Ping 1062 messages. 1064 IANA is reuqested to assign a new value from the Multiprotocol Label 1065 Switching Architecture (MPLS) Label Switched Paths (LSPs) Parameters 1066 - TLVs registry as follows using a Standards Action value. 1068 P2MP Egress Identifier TLV (see Section 3.2.4) 1069 Two sub-TLVs are defined 1070 - Type 1: IPv4 P2MP Egress Identifier (see Section 3.2.4) 1071 - Type 2: IPv6 P2MP Egress Identifier (see Section 3.2.4) 1073 Echo Jitter TLV (see Section 3.2.5) 1075 8. Security Considerations 1077 This document does not introduce security concerns over and above 1078 those described in [RFC4379]. Note that because of the scalability 1079 implications of many egresses to P2MP MPLS LSPs, there is a 1080 stronger concern to regulate the LSP Ping traffic passed to the 1081 control plane by the use of a rate limiter applied to the LSP Ping 1082 well-known UDP port. Note that this rate limiting might lead to 1083 false positives. 1085 9. Acknowledgements 1087 The authors would like to acknowledge the authors of [RFC4379] for 1088 their work which is substantially re-used in this document. Also 1089 thanks to the members of the MBONED working group for their review 1090 of this material, to Daniel King for his review, and to Yakov Rekhter 1091 for useful discussions. 1093 The authors would like to thank Vanson Lim, Danny Prairie, Reshad 1094 Rahman, and Ben Niven-Jenkins for their comments and suggestions. 1096 10. Intellectual Property Considerations 1098 The IETF takes no position regarding the validity or scope of any 1099 Intellectual Property Rights or other rights that might be claimed to 1100 pertain to the implementation or use of the technology described in 1101 this document or the extent to which any license under such rights 1102 might or might not be available; nor does it represent that it has 1103 made any independent effort to identify any such rights. Information 1104 on the procedures with respect to rights in RFC documents can be 1105 found in BCP 78 and BCP 79. 1107 Copies of IPR disclosures made to the IETF Secretariat and any 1108 assurances of licenses to be made available, or the result of an 1109 attempt made to obtain a general license or permission for the use of 1110 such proprietary rights by implementers or users of this 1111 specification can be obtained from the IETF on-line IPR repository at 1112 http://www.ietf.org/ipr. 1114 The IETF invites any interested party to bring to its attention any 1115 copyrights, patents or patent applications, or other proprietary 1116 rights that may cover technology that may be required to implement 1117 this standard. Please address the information to the IETF at ietf- 1118 ipr@ietf.org. 1120 11. Normative References 1122 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1123 Requirement Levels", BCP 14, RFC 2119, March 1997. 1125 [RFC4379] Kompella, K., and Swallow, G., "Detecting Multi-Protocol 1126 Label Switched (MPLS) Data Plane Failures", RFC 4379, 1127 February 2006. 1129 12. Informative References 1131 [RFC792] Postel, J., "Internet Control Message Protocol", RFC 792. 1133 [RFC4461] Yasukawa, S., "Signaling Requirements for Point to 1134 Multipoint Traffic Engineered Multiprotocol Label 1135 Switching (MPLS) Label Switched Paths (LSPs)", 1136 RFC 4461, April 2006. 1138 [RFC4687] Yasukawa, S., Farrel, A., King, D., and Nadeau, T., 1139 "Operations and Management (OAM) Requirements for 1140 Point-to-Multipoint MPLS Networks", RFC 4687, September 1141 2006. 1143 [P2MP-RSVP] R. Aggarwal, et. al., "Extensions to RSVP-TE for Point to 1144 Multipoint TE LSPs", draft-ietf-mpls-rsvp-te-p2mp, 1145 work in progress. 1147 [P2MP-LDP-REQ] J.-L. Le Roux, et al., "Requirements for 1148 point-to-multipoint extensions to the Label Distribution 1149 Protocol", draft-ietf-mpls-mp-ldp-reqs, work in progress. 1151 [P2MP-LDP] Minei, I., and Wijnands, I., "Label Distribution Protocol 1152 Extensions for Point-to-Multipoint and 1153 Multipoint-to-Multipoint Label Switched Paths", 1154 draft-ietf-mpls-ldp-p2mp, work in progress. 1156 [MCAST-CV] Swallow, G., and Nadeau, T., "Connectivity Verification 1157 for Multicast Label Switched Paths", 1158 draft-swallow-mpls-mcast-cv, work in progress. 1160 [BFD] Katz, D., and Ward, D., "Bidirectional Forwarding 1161 Detection", draft-ietf-bfd-base, work in progress. 1163 [MPLS-BFD] Aggarwal, R., Kompella, K., Nadeau, T., and Swallow, G., 1164 "BFD For MPLS LSPs", draft-ietf-bfd-mpls, work in 1165 progress. 1167 [IANA-PORT] IANA Assigned Port Numbers, http://www.iana.org 1169 13. Authors' Addresses 1171 Seisho Yasukawa 1172 NTT Corporation 1173 (R&D Strategy Department) 1174 3-1, Otemachi 2-Chome Chiyodaku, Tokyo 100-8116 Japan 1175 Phone: +81 3 5205 5341 1176 Email: s.yasukawa@hco.ntt.co.jp 1178 Adrian Farrel 1179 Old Dog Consulting 1180 EMail: adrian@olddog.co.uk 1182 Zafar Ali 1183 Cisco Systems Inc. 1184 2000 Innovation Drive 1185 Kanata, ON, K2K 3E8, Canada. 1186 Phone: 613-889-6158 1187 Email: zali@cisco.com 1189 Bill Fenner 1190 AT&T Labs -- Research 1191 75 Willow Rd. 1192 Menlo Park, CA 94025 1193 United States 1194 Email: fenner@research.att.com 1196 George Swallow 1197 Cisco Systems, Inc. 1198 1414 Massachusetts Ave 1199 Boxborough, MA 01719 1200 Email: swallow@cisco.com 1202 Thomas D. Nadeau 1203 Cisco Systems, Inc. 1204 1414 Massachusetts Ave 1205 Boxborough, MA 01719 1206 Email: tnadeau@cisco.com 1208 14. Full Copyright Statement 1210 Copyright (C) The IETF Trust (2007). 1212 This document is subject to the rights, licenses and restrictions 1213 contained in BCP 78, and except as set forth therein, the authors 1214 retain all their rights. 1216 This document and the information contained herein are provided on an 1217 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1218 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 1219 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 1220 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1221 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1222 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.