idnits 2.17.1 draft-ietf-mpls-p2mp-lsp-ping-03.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 1221. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1104. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1111. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1117. 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 6251 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-03.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 onced 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 1. Introduction 151 Simple and efficient mechanisms that can be used to detect data plane 152 failures in point-to-point (P2P) MPLS LSP are described in 153 [RFC4379]. The techniques involve information carried in an MPLS 155 "echo request" and "echo reply", and mechanisms for transporting the 156 echo reply. The echo request and reply messages provide sufficient 157 information to check correct operation of the data plane, as well as 158 a mechanism to verify the data plane against the control plane, and 159 thereby localize faults. The use of reliable reply channels for echo 160 request messages as described in [RFC4379] enables more robust fault 161 isolation. This collection of mechanisms is commonly referred to as 162 "LSP Ping". 164 The requirements for point-to-multipoint (P2MP) MPLS traffic 165 engineered (TE) LSPs are stated in [RFC4461]. [P2MP-RSVP] specifies a 166 signaling solution for establishing P2MP MPLS TE LSPs. 168 The requirements for point-to-multipoint extensions to the Label 169 Distribution Protocol (LDP) are stated in [P2MP-LDP-REQ]. [P2MP-LDP] 170 specifies extensions to LDP for P2MP MPLS. 172 P2MP MPLS LSPs are at least as vulnerable to data plane faults or to 173 discrepancies between the control and data planes as their P2P 174 counterparts. Mechanisms are, therefore, desirable to detect such 175 data plane faults in P2MP MPLS LSPs as described in [RFC4687]. 177 This document extends the techniques described in [RFC4379] such 178 that they may be applied to P2MP MPLS LSPs and so that they can be 179 used to bootstrap other OAM procedures such as [MCAST-CV]. This 180 document stresses the reuse of existing LSP Ping mechanisms used for 181 P2P LSPs, and applies them to P2MP MPLS LSPs in order to simplify 182 implementation and network operation. 184 1.1 Design Considerations 186 An important consideration for designing LSP Ping for P2MP MPLS LSPs 187 is that every attempt is made to use or extend existing mechanisms 188 rather than invent new mechanisms. 190 As for P2P LSPs, a critical requirement is that the echo request 191 messages follow the same data path that normal MPLS packets would 192 traverse. However, it can be seen this notion needs to be extended 193 for P2MP MPLS LSPs, as in this case an MPLS packet is replicated so 194 that it arrives at each egress (or leaf) of the P2MP tree. 196 MPLS echo requests are meant primarily to validate the data plane, 197 and they can then be used to validate data plane state against the 198 control plane. They may also be used to bootsrap other OAM procedures 199 such as [MPLS-BFD] and [MCAST-CV]. As pointed out in [RFC4379], 200 mechanisms to check the liveness, function, and consistency of the 201 control plane are valuable, but such mechanisms are not a feature of 202 LSP Ping and are not covered in this document. 204 As is described in [RFC4379], to avoid potential Denial of Service 205 attacks, it is RECOMMENDED to regulate the LSP Ping traffic passed to 206 the control plane. A rate limiter should be applied to the well-known 207 UDP port defined for use by LSP Ping traffic. 209 2. Notes on Motivation 211 2.1. Basic Motivations for LSP Ping 213 The motivations listed in [RFC4379] are reproduced here for 214 completeness. 216 When an LSP fails to deliver user traffic, the failure cannot always 217 be detected by the MPLS control plane. There is a need to provide a 218 tool that would enable users to detect such traffic "black holes" or 219 misrouting within a reasonable period of time; and a mechanism to 220 isolate faults. 222 [RFC4379] describes a mechanism that accomplishes these goals. This 223 mechanism is modeled after the ping/traceroute paradigm: ping (ICMP 224 echo request [RFC792]) is used for connectivity checks, and 225 traceroute is used for hop-by-hop fault localization as well as path 226 tracing. [RFC4379] specifies a "ping mode" and a "traceroute" mode 227 for testing MPLS LSPs. 229 The basic idea as expressed in [RFC4379] is to test that the packets 230 that belong to a particular Forwarding Equivalence Class (FEC) 231 actually end their MPLS path on an LSR that is an egress for that 232 FEC. [RFC4379] achieves this test by sending a packet (called an 233 "MPLS echo request") along the same data path as other packets 234 belonging to this FEC. An MPLS echo request also carries information 235 about the FEC whose MPLS path is being verified. This echo request is 236 forwarded just like any other packet belonging to that FEC. In "ping" 237 mode (basic connectivity check), the packet should reach the end of 238 the path, at which point it is sent to the control plane of the 239 egress LSR, which then verifies that it is indeed an egress for the 240 FEC. In "traceroute" mode (fault isolation), the packet is sent to 241 the control plane of each transit LSR, which performs various checks 242 that it is indeed a transit LSR for this path; this LSR also returns 243 further information that helps to check the control plane against the 244 data plane, i.e., that forwarding matches what the routing protocols 245 determined as the path. 247 One way these tools can be used is to periodically ping a FEC to 248 ensure connectivity. If the ping fails, one can then initiate a 249 traceroute to determine where the fault lies. One can also 250 periodically traceroute FECs to verify that forwarding matches the 251 control plane; however, this places a greater burden on transit LSRs 252 and thus should be used with caution. 254 2.2. Motivations for LSP Ping for P2MP LSPs 256 As stated in [RFC4687], MPLS has been extended to encompass P2MP 257 LSPs. As with P2P MPLS LSPs, the requirement to detect, handle and 258 diagnose control and data plane defects is critical. For operators 259 deploying services based on P2MP MPLS LSPs the detection and 260 specification of how to handle those defects is important because 261 such defects may affect the fundamentals of an MPLS network, but also 262 because they may impact service level specification commitments for 263 customers of their network. 265 P2MP LDP [P2MP-LDP] uses the Label Distribution Protocol to establish 266 multicast LSPs. These LSPs distribute data from a single source to 267 one or more destinations across the network according to the next 268 hops indicated by the routing protocols. Each LSP is identified by an 269 MPLS multicast FEC. 271 P2MP MPLS TE LSPs [P2MP-RSVP] may be viewed as MPLS tunnels with a 272 single ingress and multiple egresses. The tunnels, built on P2MP 273 LSPs, are explicitly routed through the network. There is no concept 274 or applicability of a FEC in the context of a P2MP MPLS TE LSP. 276 MPLS packets inserted at the ingress of a P2MP LSP are delivered 277 equally (barring faults) to all egresses. In consequence, the basic 278 idea of LSP Ping for P2MP MPLS TE LSPs may be expressed as an 279 intention to test that packets that enter (at the ingress) a 280 particular P2MP LSP actually end their MPLS path on the LSRs that are 281 the (intended) egresses for that LSP. The idea may be extended to 282 check selectively that such packets reach specific egresses. 284 The technique in this document makes this test by sending an LSP Ping 285 echo request message along the same data path as the MPLS packets. An 286 echo request also carries the identification of the P2MP MPLS LSP 287 (multicast LSP or P2MP TE LSP) that it is testing. The echo request 288 is forwarded just as any other packet using that LSP and so is 289 replicated at branch points of the LSP and should be delivered to all 290 egresses. In "ping" mode (basic connectivity check), the echo request 291 should reach the end of the path, at which point it is sent to the 292 control plane of the egress LSRs, which verify that they are indeed 293 an egress (leaf) of the P2MP LSP. An echo response message is sent by 294 an egress to the ingress to confirm the successful receipt (or 295 announce the erroneous arrival) of the echo request. 297 In "traceroute" mode (fault isolation), the echo request is sent to 298 the control plane at each transit LSR, and the control plane checks 299 that it is indeed a transit LSR for this P2MP MPLS LSP. The transit 300 LSR also returns information on an echo response that helps verify 301 the control plane against the data plane. That is, the information 302 is used by the ingress to check that the data plane forwarding 303 matches what is signaled by the control plane. 305 P2MP MPLS LSPs may have many egresses, and it is not necessarily the 306 intention of the initiator of the ping or traceroute operation to 307 collect information about the connectivity or path to all egresses. 308 Indeed, in the event of pinging all egresses of a large P2MP MPLS 309 LSP, it might be expected that a large number of echo responses would 310 arrive at the ingress independently but at approximately the same 311 time. Under some circumstances this might cause congestion at or 312 around the ingress LSR. Therefore, the procedures described in this 313 document provide a mechanism that allows the responders to randomly 314 delay (or jitter) their responses so that the chances of swamping the 315 ingress are reduced. 317 Further, the procedures in this document allow the initiator to limit 318 the scope of an LSP Ping echo request (ping or traceroute mode) to 319 one specific intended egress or a set of egresses. 321 The scalability issues surrounding LSP Ping for P2MP MPLS LSPs may be 322 addressed by other mechanisms such as [MCAST-CV] that utilise the LSP 323 Ping procedures in this document to provide bootstrapping mechanisms 324 as described in Section 2.3. 326 LSP Ping can be used to periodically ping a P2MP MPLS LSP to ensure 327 connectivity to any or all of the egresses. If the ping fails, 328 the operator or an automated process can then initiate a traceroute 329 to determine where the fault is located within the network. A 330 traceroute may also be used periodically to verify that data plane 331 forwarding matches the control plane state; however, this places an 332 increased burden on transit LSRs and should be used infrequently and 333 with caution. 335 2.3 Bootstrapping other OAM Procedures using LSP Ping 337 [MPLS-BFD] describes a process where LSP Ping [RFC4379] is used to 338 bootstrap the Bidirectional Forwarding Detection (BFD) mechanism 339 [BFD] for use to track the liveliness of an MPLS LSP. In particular 340 BFD can be used to detect a data plane failure in the forwarding 341 path of an MPLS LSP. 343 Requirements for MPLS P2MP LSPs extend to hundreds or even thousands 344 of endpoints. If a protocol required explicit acknowledgments to 345 each probe for connectivity verification, the response load at the 346 root would be overwhelming. 348 A more scalable approach to monitoring P2MP LSP connectivity is 349 desribed in [MCAST-CV]. It relies on using the MPLS Echo 350 Request/Response messages of LSP Ping [RFC4379] to bootstrap the 351 monitoring mechanism in a manner similar to [MPLS-BFD]. The actual 352 monitoring is done using a separate process defined in [MCAST-CV]. 354 Note that while the approach described in [MCAST-CV] was developed in 355 response to the multicast scalability problem, it can be applied to 356 P2P LSPs as well. 358 3. Operation of LSP Ping for a P2MP LSP 360 This section describes how LSP Ping is applied to P2MP MPLS LSPs. 361 It covers the mechanisms and protocol fields applicable to both ping 362 mode and traceroute mode. It explains the responsibilities of the 363 initiator (ingress), transit LSRs and receivers (egresses). 365 3.1. Identifying the LSP Under Test 367 3.1.1. Identifying a P2MP MPLS TE LSP 369 [RFC4379] defines how an MPLS TE LSP under test may be identified in 370 an echo request. A Target FEC Stack TLV is used to carry either an 371 RSVP IPv4 Session or an RSVP IPv6 Session sub-TLV. 373 In order to identify the P2MP MPLS TE LSP under test, the echo 374 request message MUST carry a Target FEC Stack TLV, and this MUST 375 carry exactly one of two new sub-TLVs: either an RSVP P2MP IPv4 376 Session or an RSVP P2MP IPv6 Session sub-TLV. These sub-TLVs carry 377 fields from the RSVP-TE P2MP Session and Sender-Template objects 378 [P2MP-RSVP] and so provide sufficient information to uniquely 379 identify the LSP. 381 The new sub-TLVs are assigned sub-type identifiers as follows, and 382 are described in the following sections. 384 Sub-Type # Length Value Field 385 ---------- ------ ----------- 386 TBD 20 RSVP P2MP IPv4 Session 387 TBD 56 RSVP P2MP IPv6 Session 389 3.1.1.1. RSVP P2MP IPv4 Session Sub-TLV 391 The format of the RSVP P2MP IPv4 Session Sub-TLV value field is 392 specified in the following figure. The value fields are taken from 393 the definitions of the P2MP IPv4 LSP Session Object, and the P2MP 394 IPv4 Sender-Template Object in [P2MP-RSVP]. Note that the Sub-Group 395 ID of the Sender-Template is not required. 397 0 1 2 3 398 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 399 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 400 | P2MP ID | 401 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 402 | Must Be Zero | Tunnel ID | 403 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 404 | Extended Tunnel ID | 405 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 406 | IPv4 tunnel sender address | 407 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 408 | Must Be Zero | LSP ID | 409 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 411 3.1.1.2. RSVP P2MP IPv6 Session Sub-TLV 413 The format of the RSVP P2MP IPv6 Session Sub-TLV value field is 414 specified in the following figure. The value fields are taken from 415 the definitions of the P2MP IPv6 LSP Session Object, and the 416 P2MP IPv6 Sender-Template Object in [P2MP-RSVP]. Note that the 417 Sub-Group ID of the Sender-Template is not required. 419 0 1 2 3 420 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 421 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 422 | | 423 | P2MP ID | 424 | | 425 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 426 | Must Be Zero | Tunnel ID | 427 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 428 | | 429 | Extended Tunnel ID | 430 | | 431 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 432 | | 433 | IPv6 tunnel sender address | 434 | | 435 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 436 | Must Be Zero | LSP ID | 437 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 439 3.1.2. Identifying a Multicast LDP LSP 441 [RFC4379] defines how a P2P LDP LSP under test may be identified in 442 an echo request. A Target FEC Stack TLV is used to carry one or more 443 Sub-TLVs (for example, an IPv4 Prefix FEC Sub-TLV) that identify the 444 LSP. 446 In order to identify a multicast LDP LSP under test, the echo request 447 message MUST carry a Target FEC Stack TLV, and this MUST carry 448 exactly one new sub-TLVs: the Multicast LDP FEC Stack Sub-TLV. This 449 Sub-TLVs fields from the multicast LDP messages [P2MP-LDP] and so 450 provides sufficient information to uniquely identify the LSP. 452 The new sub-TLV is assigned a sub-type identifier as follows, and 453 is described in the following sections. 455 Sub-Type # Length Value Field 456 ---------- ------ ----------- 457 TBD Variable Multicast LDP FEC Stack 459 3.1.2.1. Multicast LDP FEC Stack Sub-TLV 461 The format of the Multicast LDP FEC Stack Sub-TLV is shown below. 463 0 1 2 3 464 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 465 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 466 | Address Family | Address Length| Root LSR Addr | 467 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 468 | | 469 ~ Root LSR Address (Cont.) ~ 470 | | 471 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 472 | Opaque Length | Opaque Value ... | 473 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + 474 ~ ~ 475 | | 476 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 477 | | 478 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 480 Address Family 482 A two octet quantity containing a value from ADDRESS FAMILY 483 NUMBERS in [IANA-PORT] that encodes the address family for the 484 Root LSR Address. 486 Address Length 488 The length of the Root LSR Address in octets. 490 Root LSR Address 492 An address of the LSR at the root of the P2MP LSP encoded 493 according to the Address Family field. 495 Opaque Length 497 The length of the Opaque Value, in octets. 499 Opaque Value 501 An opaque value elements of which uniquely identifies the P2MP LSP 502 in the context of the Root LSR. 504 If the Address Family is IPv4, the Address Length MUST be 4. If the 505 Address Family is IPv6, the Address Length MUST be 16. No other 506 Address Family values are defined at present. 508 3.2. Ping Mode Operation 510 3.2.1. Controlling Responses to LSP Pings 512 As described in Section 2.2, it may be desirable to restrict the 513 operation of LSP Ping to a single egress. Since echo requests are 514 forwarded through the data plane without interception by the control 515 plane (compare with traceroute mode), there is no facility to limit 516 the propagation of echo requests, and they will automatically be 517 forwarded to all (reachable) egresses. 519 However, the intended egress under test can be identified by the 520 inclusion of a P2MP Egress Identifier TLV containing an IPv4 P2MP 521 Egress Identifier sub-TLV or an IPv6 P2MP Egress Identifier sub-TLV. 522 The P2MP Egress Identifier TLV MUST contain at least one sub-TLV and 523 MAY contain more than one sub-TLV. If the P2MP Egress Identifier TLV 524 contains no sub-TLVs the echo request MUST be processed as if the TLV 525 were absent (causing all egresses to respond as described below). 527 If the P2MP Egress Identifier TLV contains more than one sub-TLV, 528 each MUST be processed in turn as described in this document. An 529 initiator sending a P2MP echo request MUST be aware that processing 530 a very large number of sub-TLVs within a P2MP Egress Identifier TLV 531 may represent a burden to an egress LSR, so the number of sub-TLVs 532 SHOULD be limited to a 'reasonable' number. An upper threshold of 533 50 sub-TLVs is RECOMMENDED. 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 in any of 558 its sub-TLVs that indicates any address that is local to the LSR, the 559 LSR MUST respond according to the setting of the Response Type field 560 in the echo message following the rules defined in [RFC4379]. If the 561 P2MP Egress Identifier TLV is present, but does none of its sub-TLVs 562 identifies the egress LSR, it MUST NOT respond to the echo request. 563 If the P2MP Egress Identifier TLV is not present (or, in the error 564 case, is present but contains no sub-TLVs), but the egress LSR that 565 received the echo request is an intended egress of the LSP, the LSR 566 MUST respond according to the setting of the Response Type field in 567 the echo message following the 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 each MUST be 628 processed as described. 630 The P2MP Egress Identifier TLV only has meaning on an echo request 631 message. If present on an echo response message, it SHOULD be 632 ignored. 634 Two Sub-TLVs are defined for inclusion in the P2MP Egress Identifier 635 TLV carried on the echo request message. These are: 637 Sub-Type # Length Value Field 638 ---------- ------ ----------- 639 1 4 IPv4 P2MP Egress Identifier 640 2 16 IPv6 P2MP Egress Identifier 642 The value of an IPv4 P2MP Egress Identifier consists of four octets 643 of an IPv4 address. The IPv4 address is in network byte order. 645 The value of an IPv6 P2MP Egress Identifier consists of sixteen 646 octets of an IPv6 address. The IPv6 address is in network byte order. 648 3.2.5. Echo Jitter TLV 650 A new TLV is defined for inclusion in the Echo request message. 652 The Echo Jitter TLV is assigned the TLV type value TBD and is encoded 653 as follows. 655 0 1 2 3 656 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 657 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 658 | Type = TBD (Jitter TLV) | Length = 4 | 659 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 660 | Jitter time | 661 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 663 Jitter time: 665 This field specifies the upper bound of the jitter period that 666 should be applied by a responding egress to determine how long 667 to wait before sending an echo response. An egress SHOULD wait 668 a random amount of time between zero seconds and the value 669 specified in this field. 671 Jitter time is specified in milliseconds. 673 The Echo Jitter TLV only has meaning on an echo request message. If 674 present on an echo response message, it SHOULD be ignored. 676 3.3. Traceroute Mode Operation 678 The traceroute mode of operation is described in [RFC4379]. Like 679 other traceroute operations, it relies on the expiration of the TTL 680 of the packet that carries the echo request. Echo requests may 681 include a Downstream Mapping TLV, and when the TTL expires the echo 682 request is passed to the control plane on the transit LSR which 683 responds according to the Response Type in the message. A responding 684 LSR fills in the fields of the Downstream Mapping TLV to indicate the 685 downstream interfaces and labels used by the reported LSP from the 686 responding LSR. In this way, by successively sending out echo 687 requests with increasing TTLs, the ingress may gain a picture of the 688 path and resources used by an LSP up to the point of failure when no 689 response is received, or an error response is generated by an LSR 690 where the control plane does not expect to be handling the LSP. 692 This mode of operation is equally applicable to P2MP MPLS TE LSPs 693 as described in the following sections. 695 The traceroute mode can be applied to all destinations of the P2MP 696 tree just as in the ping mode. In the case of P2MP MPLS TE LSPs, the 697 traceroute mode can also be applied to individual destinations 698 identified by the presence of a P2MP Egress Identifier TLV. However, 699 since a transit LSR of a multicast LDP LSP is unable to determine 700 whether it lies on the path to any one destination, the traceroute 701 mode limited to specific egresses of such an LSP MUST NOT be used. 703 In the absence of a P2MP Egress Identifier TLV, the echo request is 704 asking for traceroute information applicable to all egresses. 706 The echo response jitter technique described for the ping mode is 707 equally applicable to the traceroute mode and is not additionally 708 described in the procedures below. 710 3.3.1. Traceroute Responses at Non-Branch Nodes 712 When the TTL for the MPLS packet carrying an echo request expires the 713 packet MUST be passed to the control plane as specified in [RFC4379]. 715 If the LSP under test is a multicast LDP LSP and if the echo request 716 carries a P2MP Egress Identifier TLV the LSR MUST treat the echo 717 request as malformed and MUST process it according to the rules 718 specified in [RFC4379]. 720 Otherwise, the LSR MUST NOT return an echo response unless the 721 responding LSR lies on the path of the P2MP LSP to any of the 722 egresses identified by the P2MP Egress Identifier TLV carried on the 723 request, or if no such Sub-TLV is present. 725 If sent, the echo response MUST identifiy the next hop of the path of 726 the LSP in the data plane by including a Downstream Mapping TLV as 727 described in [RFC4379]. 729 3.3.1.1. Correlating Traceroute Responses 731 When traceroute is being simultaneously applied to multiple egresses, 732 it is important that the ingress should be able to correlate the echo 733 responses with the branches in the P2MP tree. Without this 734 information the ingress will be unable to determine the correct 735 ordering of transit nodes. One possibility is for the ingress to poll 736 the path to each egress in turn, but this may be inefficient, 737 undesirable, or (in the case of multicast LDP LSPs) illegal. 739 The Downstream Mapping TLV that MUST be included in the echo response 740 indicates the next hop from each responding LSR, and this information 741 supplied by a non-branch LSR can be pieced together by the ingress to 742 reconstruct the P2MP tree although it may be necessary to refer to 743 the routing information distributed by the IGP to correlate next hop 744 addresses and LSR reporting addresses in subsequent echo responses. 746 In order to facilitate more easy correlation of echo responses, the 747 Downstream Mapping TLV can also contain Multipath Information as 748 described in [RFC4379] to identify to which egress/egresses the echo 749 response applies, and indicates. This information: 751 - MUST NOT be present for multicast LDP LSPs 753 - SHOULD be present for P2MP MPLS TE LSPs when the echo request 754 applies to all egresses 756 - is RECCOMMENDED to be present for P2MP MPLS TE LSPs when the echo 757 request is limited to a single egress. 759 The format of the information in the Downstream Mapping TLV for 760 P2MP MPLS LSPs is described in section 3.3.5 and 3.3.6. 762 3.3.2. Traceroute Responses at Branch Nodes 764 A branch node may need to identify more than one downstream interface 765 in a traceroute echo response if some of the egresses that are being 766 traced lie on different branches. This will always be the case for 767 any branch node if all egresses are being traced. 769 [RFC4379] describes how multiple Downstream Mapping TLVs should be 770 included in an echo response, each identifying exactly one downstream 771 interface that is applicable to the LSP. 773 A branch node MUST follow the procedures described in Section 3.3.1 774 to determine whether it should respond to an echo request. The branch 775 node MUST add a Downstream Mapping TLV to the echo response for each 776 outgoing branch that it reports, but it MUST NOT report branches that 777 do not lie on the path to one of the destinations being traced. Thus 778 a branch node may sometimes only need to respond with a single 779 Downstream Mapping TLV, for example, consider the case where the 780 traceroute is directed to only a single egress node. Therefore, 781 the presence of only one Downstream Mapping TLV in an echo response 782 does not guarantee that the reporting LSR is not a branch node. 784 To report on the fact that an LSR is a branch node for the P2MP MPLS 785 LSP a new B-flag is added to the Downstream Mapping TLV. The flag is 786 set to zero to indicate that the reporting LSR is not a branch for 787 this LSP, and is set to one to indicate that it is a branch. The flag 788 is placed in the fourth byte of the TLV that was previously reserved. 790 The format of the information in the Downstream Mapping TLV for 791 P2MP MPLS LSPs is described in section 3.3.5 and 3.3.6. 793 3.3.2.1. Correlating Traceroute Responses 795 Just as with non-branches, it is important that the echo responses 796 from branch nodes provide correlation information that will allow the 797 ingress to work out to which branch of the LSP the response applies. 799 The P2MP tree can be determined by the ingress using the identity of 800 the reporting node and the next hop information from the previous 801 echo response, just as with echo responses from non-branch nodes. 803 As with non-branch nodes, in order to facilitate more easy 804 correlation of echo responses, the Downstream Mapping TLV can also 805 contain Multipath Information as described in [RFC4379] to identify 806 to which egress/egresses the echo response applies, and indicates. 807 This information: 809 - MUST NOT be present for multicast LDP LSPs 811 - SHOULD be present for P2MP MPLS TE LSPs when the echo request 812 applies to all egresses 814 - is RECCOMMENDED to be present for P2MP MPLS TE LSPs when the echo 815 request is limited to a single egress. 817 The format of the information in the Downstream Mapping TLV for 818 P2MP MPLS LSPs is described in section 3.3.5 and 3.3.6. 820 3.3.3. Traceroute Responses at Bud Nodes 822 Some nodes on a P2MP MPLS LSP may be egresses, but also have 823 downstream LSRs. Such LSRs are known as bud nodes [RFC4461]. 825 A bud node MUST respond to a traceroute echo request just as a branch 826 node would, but it MUST also indicates to the ingress that it is an 827 egress in its own right. This is achieved through the use of a new 828 E-flag in the Downstream Mapping TLV that indicates that the 829 reporting LSR is not a bud for this LSP (cleared to zero) or is a bud 830 (set to one). A normal egress MUST NOT set this flag. 832 The flag is placed in the fourth byte of the TLV that was previously 833 reserved. 835 3.3.4. Non-Response to Traceroute Echo Requests 837 The nature of P2MP MPLS TE LSPs in the data plane means that 838 traceroute echo requests may be delivered to the control plane of 839 LSRs that must not reply to the request because, although they lie 840 on the P2MP tree, they do not lie on the path to the egress that is 841 being traced. 843 Thus, an LSR on a P2MP MPLS LSP MUST NOT respond to an echo request 844 when the TTL has expired if any of the following applies: 846 - The Reply Type indicates that no reply is required 848 - There is a P2MP Egress Identifier TLV present on the echo request 849 (which means that the LSP is a P2MP MPLS TE LSP), but none of the 850 addresses identifies an egress that is reached through this LSR for 851 this particular P2MP MPLS LSP. 853 3.3.5. Modifications to the Downstream Mapping TLV 855 A new B-flag is added to the Downstream Mapping TLV to indicate that 856 the reporting LSR is not a branch for this LSP (cleared to zero) or 857 is a branch (set to one). 859 A new E-flag is added to the Downstream Mapping TLV to indicate that 860 the reporting LSR is not a bud node for this LSP (cleared to zero) or 861 is a bud node (set to one). 863 The flags are placed in the fourth byte of the TLV that was 864 previously reserved as shown below. All other fields are unchanged 865 from their definitions in [RFC4379] except for the additional 866 information that can be carried in the Multipath Information (see 867 Section 3.3.6). 869 0 1 2 3 870 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 871 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 872 | MTU | Address Type | Reserved |E|B| 873 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 874 | Downstream IP Address (4 or 16 octets) | 875 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 876 | Downstream Interface Address (4 or 16 octets) | 877 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 878 | Hash Key Type | Depth Limit | Multipath Length | 879 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 880 . . 881 . (Multipath Information) . 882 . . 883 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 884 | Downstream Label | Protocol | 885 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 886 . . 887 . . 888 . . 889 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 890 | Downstream Label | Protocol | 891 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 893 3.3.6. Additions to Downstream Mapping Multipath Information 895 A new value for the Multipath Type is defined to indicate that the 896 reported Multipath Information applies to a P2MP MPLS TE LSP and 897 may contain a list of egress identifiers that indicate the egress 898 nodes that can be reached through the reported interface. This 899 Multipath Type MUST NOT be used for a multicast LDP LSP. 901 Type # Address Type Multipath Information 902 --- ---------------- --------------------- 903 TBD P2MP egresses List of P2MP egresses 905 Note that a list of egresses may include IPv4 and IPv6 identifiers 906 since these may be mixed in the P2MP MPLS TE LSP. 908 The Multipath Length field continues to identify the length of the 909 Multipath Information just as in [RFC4379] (that is, not including 910 the downstream labels), and the downstream label (or potential 911 stack thereof) is also handled just as in [RFC4379]. The format 912 of the Multipath Information for a Multipath Type of P2MP Egresses 913 is as follows. 915 0 1 2 3 916 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 917 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 918 | Address Type | Egress Address (4 or 16 octets) | 919 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 920 | (continued) | : 921 +-+-+-+-+-+-+-+-+ : 922 : Further Address Types and Egress Addresses : 923 : : 924 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 926 Address Type 928 This field indicates whether the egress address that follows is 929 an IPv4 or IPv6 address, and so implicitly encodes the length of 930 the address. 932 Two values are defined and mirror the values used in the Address 933 Type field of the Downstream Mapping TLV itself. 935 Type # Address Type 936 ------ ------------ 937 1 IPv4 938 3 IPv6 940 Egress Address 942 An egress of this P2MP MPLS TE LSP that is reached through the 943 interface indicated by the Downstream Mapping TLV and for which 944 the traceroute echo request was enquiring. 946 4. Operation of LSP Ping for Bootstrapping Other OAM Mechanisms 948 Bootstrapping of other OAM procedures can be achieved using the 949 MPLS Echo Request/Response messages. The LSP(s) under test are 950 identified using the RSVP P2MP IPv4 or IPv6 Session Sub-TLVs 951 (see Section 3.1.1) or the Multicast LDP FEC Stack Sub-TLV 952 (see Section 3.1.2). 954 Other Sub-TLVs may be defined in other specifications to indicate 955 the OAM procedures being bootstrapped, and to describe the bootstrap 956 parameters. Further details of the bootstrapping processes and the 957 bootstrapped OAM processes are described in other documents. For 958 example, see [MPLS-BFD] and [MCAST-CV]. 960 5. Non-compliant Routers 962 If an egress for a P2MP LSP does not support MPLS LSP ping, then no 963 reply will be sent, resulting in a "false negative" result. There is 964 no protection for this situation, and operators may wish to ensure 965 that end points for P2MP LSPs are all equally capable of supporting 966 this function. Alternatively, the traceroute option can be used to 967 verify the LSP nearly all the way to the egress, leaving the final 968 hop to be verified manually. 970 If, in "traceroute" mode, a transit LSR does not support LSP ping, 971 then no reply will be forthcoming from that LSR for some TTL, say n. 972 The LSR originating the echo request SHOULD continue to send echo 973 requests with TTL=n+1, n+2, ..., n+k in the hope that some transit 974 LSR further downstream may support MPLS echo requests and reply. In 975 such a case, the echo request for TTL > n MUST NOT have Downstream 976 Mapping TLVs, until a reply is received with a Downstream Mapping. 978 Note that the settings of the new bit flags in the Downstream Mapping 979 TLV are such that a legacy LSR would return them with value zero 980 which most closely matches the likely default behavior of a legacy 981 LSR. 983 6. OAM Considerations 985 The procedures in this document provide OAM functions for P2MP MPLS 986 LSPs and may be used to enable bootstrapping of other OAM procedures. 988 In order to be fully operational several considerations must be made. 990 - Scaling concerns dictate that only cautious use of LSP Ping should 991 be made. In particular, sending an LSP Ping to all egresses of a 992 P2MP MPLS LSP could result in congestion at or near the ingress 993 when the responses arrive. 995 Further, incautious use of timers to generate LSP Ping echo 996 requests either in ping mode or especially in traceroute may lead 997 to significant degradation of network performance. 999 - Management interfaces should allow an operator full control over 1000 the operation of LSP Ping. In particular, it SHOULD provide the 1001 ability to limit the scope of an LSP Ping echo request for a P2MP 1002 MPLS LSP to a single egress. 1004 Such an interface SHOULD also provide the ability to disable all 1005 active LSP Ping operations to provide a quick escape if the network 1006 becomes congested. 1008 - A MIB module is required for the control and management of LSP Ping 1009 operations, and to enable the reported information to be inspected. 1011 There is no reason to believe this should not be a simple extension 1012 of the LSP Ping MIB module used for P2P LSPs. 1014 7. IANA Considerations 1016 7.1. New Sub-TLV Types 1018 Three new Sub-TLV types are defined for inclusion within the LSP Ping 1019 [RFC4379] Target FEC Stack TLV (TLV type 1). 1021 IANA is requested to assign sub-type values to the following 1022 Sub-TLVs from the Multiprotocol Label Switching Architecture (MPLS) 1023 Label Switched Paths (LSPs) Parameters - TLVs registry. 1025 RSVP P2MP IPv4 Session (see Section 3.1.1) 1026 RSVP P2MP IPv6 Session (see Section 3.1.1) 1027 Multicast LDP FEC Stack (see Section 3.1.2) 1029 7.2. New Multipath Type 1031 Section 3.3 of [RFC4379] defines a set of values for the LSP Ping 1032 Multipath Type. These values are currently not tracked by IANA. 1034 A new value for the LSP Ping Multipath Type is defined in Section 1035 3.3.6 of this document to indicate that the reported Multipath 1036 Information applies to a P2MP MPLS TE LSP. 1038 IANA is requested to create a new registry as follows: 1040 Multiprotocol Label Switching Architecture (MPLS) Label Switched 1041 Paths (LSPs) - Multipath Types 1042 Key Type Multipath Information 1043 --- ---------------- --------------------- 1044 0 no multipath Empty (Multipath Length = 0) [RFC4379] 1045 2 IP address IP addresses [RFC4379] 1046 4 IP address range low/high address pairs [RFC4379] 1047 8 Bit-masked IP IP address prefix and bit mask [RFC4379] 1048 address set 1049 9 Bit-masked label set Label prefix and bit mask [RFC4379] 1050 xx P2MP egress IP List of P2MP egresses [thisDoc] 1051 addresses 1053 A suggested value of xx is TBD by the MPLS Working Group. 1055 New values from this registry are to be assigned only by Standards 1056 Action. 1058 7.3. New TLVs 1060 Two new LSP Ping TLV types are defined for inclusion in LSP Ping 1061 messages. 1063 IANA is reuqested to assign a new value from the Multiprotocol Label 1064 Switching Architecture (MPLS) Label Switched Paths (LSPs) Parameters 1065 - TLVs registry as follows using a Standards Action value. 1067 P2MP Egress Identifier TLV (see Section 3.2.4) 1068 Two sub-TLVs are defined 1069 - Type 1: IPv4 P2MP Egress Identifier (see Section 3.2.4) 1070 - Type 2: IPv6 P2MP Egress Identifier (see Section 3.2.4) 1072 Echo Jitter TLV (see Section 3.2.5) 1074 8. Security Considerations 1076 This document does not introduce security concerns over and above 1077 those described in [RFC4379]. Note that because of the scalability 1078 implications of many egresses to P2MP MPLS LSPs, there is a 1079 stronger concern to regulate the LSP Ping traffic passed to the 1080 control plane by the use of a rate limiter applied to the LSP Ping 1081 well-known UDP port. Note that this rate limiting might lead to 1082 false positives. 1084 9. Acknowledgements 1086 The authors would like to acknowledge the authors of [RFC4379] for 1087 their work which is substantially re-used in this document. Also 1088 thanks to the members of the MBONED working group for their review 1089 of this material, to Daniel King for his review, and to Yakov Rekhter 1090 for useful discussions. 1092 The authors would like to thank Vanson Lim, Danny Prairie, Reshad 1093 Rahman, and Ben Niven-Jenkins for their comments and suggestions. 1095 10. Intellectual Property Considerations 1097 The IETF takes no position regarding the validity or scope of any 1098 Intellectual Property Rights or other rights that might be claimed to 1099 pertain to the implementation or use of the technology described in 1100 this document or the extent to which any license under such rights 1101 might or might not be available; nor does it represent that it has 1102 made any independent effort to identify any such rights. Information 1103 on the procedures with respect to rights in RFC documents can be 1104 found in BCP 78 and BCP 79. 1106 Copies of IPR disclosures made to the IETF Secretariat and any 1107 assurances of licenses to be made available, or the result of an 1108 attempt made to obtain a general license or permission for the use of 1109 such proprietary rights by implementers or users of this 1110 specification can be obtained from the IETF on-line IPR repository at 1111 http://www.ietf.org/ipr. 1113 The IETF invites any interested party to bring to its attention any 1114 copyrights, patents or patent applications, or other proprietary 1115 rights that may cover technology that may be required to implement 1116 this standard. Please address the information to the IETF at ietf- 1117 ipr@ietf.org. 1119 11. Normative References 1121 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1122 Requirement Levels", BCP 14, RFC 2119, March 1997. 1124 [RFC4379] Kompella, K., and Swallow, G., "Detecting Multi-Protocol 1125 Label Switched (MPLS) Data Plane Failures", RFC 4379, 1126 February 2006. 1128 12. Informative References 1130 [RFC792] Postel, J., "Internet Control Message Protocol", RFC 792. 1132 [RFC4461] Yasukawa, S., "Signaling Requirements for Point to 1133 Multipoint Traffic Engineered Multiprotocol Label 1134 Switching (MPLS) Label Switched Paths (LSPs)", 1135 RFC 4461, April 2006. 1137 [RFC4687] Yasukawa, S., Farrel, A., King, D., and Nadeau, T., 1138 "Operations and Management (OAM) Requirements for 1139 Point-to-Multipoint MPLS Networks", RFC 4687, September 1140 2006. 1142 [P2MP-RSVP] R. Aggarwal, et. al., "Extensions to RSVP-TE for Point to 1143 Multipoint TE LSPs", draft-ietf-mpls-rsvp-te-p2mp, 1144 work in progress. 1146 [P2MP-LDP-REQ] J.-L. Le Roux, et al., "Requirements for 1147 point-to-multipoint extensions to the Label Distribution 1148 Protocol", draft-ietf-mpls-mp-ldp-reqs, work in progress. 1150 [P2MP-LDP] Minei, I., and Wijnands, I., "Label Distribution Protocol 1151 Extensions for Point-to-Multipoint and 1152 Multipoint-to-Multipoint Label Switched Paths", 1153 draft-ietf-mpls-ldp-p2mp, work in progress. 1155 [MCAST-CV] Swallow, G., and Nadeau, T., "Connectivity Verification 1156 for Multicast Label Switched Paths", 1157 draft-swallow-mpls-mcast-cv, work in progress. 1159 [BFD] Katz, D., and Ward, D., "Bidirectional Forwarding 1160 Detection", draft-ietf-bfd-base, work in progress. 1162 [MPLS-BFD] Aggarwal, R., Kompella, K., Nadeau, T., and Swallow, G., 1163 "BFD For MPLS LSPs", draft-ietf-bfd-mpls, work in 1164 progress. 1166 [IANA-PORT] IANA Assigned Port Numbers, http://www.iana.org 1168 13. Authors' Addresses 1170 Seisho Yasukawa 1171 NTT Corporation 1172 (R&D Strategy Department) 1173 3-1, Otemachi 2-Chome Chiyodaku, Tokyo 100-8116 Japan 1174 Phone: +81 3 5205 5341 1175 Email: s.yasukawa@hco.ntt.co.jp 1177 Adrian Farrel 1178 Old Dog Consulting 1179 EMail: adrian@olddog.co.uk 1181 Zafar Ali 1182 Cisco Systems Inc. 1183 2000 Innovation Drive 1184 Kanata, ON, K2K 3E8, Canada. 1185 Phone: 613-889-6158 1186 Email: zali@cisco.com 1188 Bill Fenner 1189 AT&T Labs -- Research 1190 75 Willow Rd. 1191 Menlo Park, CA 94025 1192 United States 1193 Email: fenner@research.att.com 1195 George Swallow 1196 Cisco Systems, Inc. 1197 1414 Massachusetts Ave 1198 Boxborough, MA 01719 1199 Email: swallow@cisco.com 1201 Thomas D. Nadeau 1202 Cisco Systems, Inc. 1203 1414 Massachusetts Ave 1204 Boxborough, MA 01719 1205 Email: tnadeau@cisco.com 1207 14. Full Copyright Statement 1209 Copyright (C) The IETF Trust (2007). 1211 This document is subject to the rights, licenses and restrictions 1212 contained in BCP 78, and except as set forth therein, the authors 1213 retain all their rights. 1215 This document and the information contained herein are provided on an 1216 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1217 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 1218 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 1219 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1220 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1221 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.