RFC 7737
Label Switched Path (LSP) Ping and Traceroute Reply Mode Simplification
RFC 7737: Label Switched Path (LSP) Ping and Traceroute Reply Mode Simplification ๐ฆ
Okay bestie, the title block tells us this is RFC 7737 from the IETF (Internet Engineering Task Force) ๐. It was written by N. Akiya of Big Switch Networks, G. Swallow and C. Pignataro of Cisco Systems, and L. Andersson and M. Chen of Huawei. It's dated January 2016 and it's a Standards Track document (ISSN 2070-1721). It updates RFC 7110, and the header doesn't list anything it obsoletes โจ.
Abstract ๐ธ
Okay so, MPLS LSP Ping and Traceroute use the Reply Mode field to signal which method gets used for the MPLS echo reply ๐ง. This doc updates the procedures for the "Reply via Specified Path" Reply Mode, which has the value 5. The update gives us a simple way to say that the reverse LSP should be used as the return path ๐ . It also adds an optional TLV that can carry an ordered list of Reply Mode values ๐ซถ.
This document updates RFC 7110.
Status of This Memo ๐
This is an Internet Standards Track document.
It's a product of the Internet Engineering Task Force (IETF), so it represents the consensus of the IETF community. It got public review and was approved for publication by the Internet Engineering Steering Group (IESG). If you want more on Internet Standards, check out Section 2 of RFC 5741 ๐.
For the current status, any errata, and how to give feedback, go to http://www.rfc-editor.org/info/rfc7737 ๐.
Copyright Notice ยฉ
Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, since they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they are provided without warranty as described in the Simplified BSD License ๐.
Table of Contents ๐
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3
2. Problem Statements . . . . . . . . . . . . . . . . . . . . . 4
3. Solution . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1. "Reply via Specified Path" Reply Mode Update . . . . . . 5
3.2. Reply Mode Order TLV . . . . . . . . . . . . . . . . . . 6
4. Relationships to Other LSP Ping and Traceroute Features . . . 8
4.1. Backwards Compatibility with "Reply via Specified Path"
Reply Mode . . . . . . . . . . . . . . . . . . . . . . . 8
4.2. Reply Path TLV . . . . . . . . . . . . . . . . . . . . . 8
4.2.1. Example 1: Reply Mode Order TLV Usage with Reply Path
TLV . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.2.2. Example 2: Reply Mode Order TLV Usage with Reply Path
TLV . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.3. Proxy LSP Ping . . . . . . . . . . . . . . . . . . . . . 10
4.3.1. Proxy LSR Sending an MPLS Echo Request . . . . . . . 10
4.3.2. Proxy LSR Sending an MPLS Proxy Ping Reply . . . . . 11
5. Security Considerations . . . . . . . . . . . . . . . . . . . 11
6. Manageability Considerations . . . . . . . . . . . . . . . . 11
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12
7.1. New Reply Mode Order TLV . . . . . . . . . . . . . . . . 12
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12
8.1. Normative References . . . . . . . . . . . . . . . . . . 12
8.2. Informative References . . . . . . . . . . . . . . . . . 13
Appendix A. Reply Mode Order TLV Beneficial Scenarios . . . . . 14
A.1. Incorrect Forwarding Scenario . . . . . . . . . . . . . . 14
A.2. Non-Co-Routed Bidirectional LSP Scenario . . . . . . . . 15
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 16
Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17
1. Introduction โจ
MPLS LSP Ping, as described in [RFC4379], lets an initiator Label Switching Router (LSR) encode instructions, called the Reply Mode, that tell a responder LSR how to send the response back to the initiator LSR ๐ฆ. [RFC7110] also lets the initiator LSR encode a TLV (the Reply Path TLV) that tells the responder LSR to use a specific LSP to send the response back. Both approaches are seriously powerful, since they let the initiator LSR control the return path ๐.
BUT here's the tea ๐ซ . It's getting harder and harder for an initiator LSR to pick a valid return path to encode in the MPLS LSP echo request packets. If the initiator LSR picks a bad one, the MPLS LSP echo reply never makes it back, and that causes a false failure of MPLS LSP Ping and Traceroute operations ๐. To cut down on those false failures, different implementations picked different default return path encodings for different LSP types and LSP operations. The problem is that the MPLS echo reply won't work in lots of cases, and the default might not be what operators actually want ๐ญ.
This document covers the following:
- In Section 2, more detail on the problems ๐ธ;
- In Section 3, a solution that cuts down on false failures while still respecting operator preferences ๐;
- In Section 4, how this connects to other LSP Ping and Traceroute features ๐ง;
- In Appendix A, examples of scenarios where the mechanism in this document is actually helpful ๐.
Quick recap: this document updates [RFC7110] by allowing the "Reply via Specified Path" (value=5) Reply Mode to be used without including the Reply Path TLV. That's a simple way to say the reverse LSP should be the return path ๐ .
1.1. Requirements Language ๐
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].
2. Problem Statements ๐ฅ
It's getting harder for implementations to automatically supply a workable return path encoding for all MPLS LSP Ping and Traceroute operations across all LSP types ๐ฉ. A few things make this messy.
- Some LSPs have a control channel and some don't. Some LSPs have a reverse LSP and some don't. Some LSPs have IP reachability in the reverse direction and some don't ๐.
- LSRs on some LSPs can have different available return paths. Those can depend on whether the responder LSR is a transit LSR or an egress LSR. For a bidirectional LSP, the available return paths on transit LSRs can also depend on whether the LSP is completely co-routed, partially co-routed, or associated (meaning the LSPs in the two directions are not co-routed) ๐ฆ.
- MPLS echo request packets can incorrectly terminate on an unintended target, and that target might have different available return paths than the intended one ๐.
- The MPLS LSP Ping operation is expected to terminate on an egress LSR. But MPLS LSP Ping operations with specific TTL values, and MPLS LSP Traceroute operations, can terminate on both transit LSR(s) and the egress LSR ๐ง.
Except for the case where the responder LSR doesn't have an IP route back to the initiator LSR, you can use the "Reply via an IPv4/IPv6 UDP packet" (value=2) Reply Mode value in every case ๐ . Still, some operators prefer the control channel and a reverse LSP as the default return path when both are available, even though that isn't always the best choice ๐.
When users or applications supply a specific return path encoding, there are no issues picking the return path encoding ๐ซถ. When they don't, implementations use extra logic to compute, and sometimes guess, the default return path encodings ๐ตโ๐ซ. If a responder LSR gets an MPLS echo request with return path instructions it can't accommodate because they're unavailable, it often drops the packet ๐. That failure mode means the initiator LSR never receives the intended MPLS LSP echo reply packets. This is kind of acceptable in some failure cases, like a broken LSP where the MPLS echo request ended up on an unintended target. But if the initiator LSR doesn't get an MPLS echo reply even though the responder LSR received the request and was able to verify it, information still gets sent back to the user(s), and that's considered a false failure ๐.
Lots of operators prefer particular return paths over others for specific LSP types ๐ธ. To handle that, implementations may default to operator-preferred return paths for particular operations, or let a default return path be configured. It wouldn't be beneficial to use a preferred return path for an intended target LSR if the initiator LSR already knows that return path isn't available, because the initiator LSR then wouldn't get the MPLS echo return packets ๐ญ. It would be beneficial, for given operations, if the sender of the MPLS echo request could figure out whether a return path is available before starting the operation ๐ฎ.
This document does two things: (1) it updates the procedures for the "Reply via Specified Path" Reply Mode so you can easily indicate the reverse LSP, and (2) it adds one optional TLV that describes an ordered list of Reply Modes โจ. Depending on what operators need, the TLV can list multiple Reply Mode values in preferred order, so the responder LSR can use the first available Reply Mode from the list ๐. That means the initiator LSR doesn't have to compute, or sometimes guess, the default return path encoding anymore ๐. This new mode of operation makes implementations simpler across the different vendors and improves both usability and operational needs ๐.
3. Solution ๐ฆ
This document updates the procedures for the "Reply via Specified Path" Reply Mode so you can easily indicate the reverse LSP ๐ . It also adds an optional TLV that can carry an ordered list of Reply Modes ๐ง.
3.1. "Reply via Specified Path" Reply Mode Update ๐ฆ
Okay bestie, so some LSP types can have a buddy LSP going the other way ๐, linked up through signaling or other association stuff. Examples are bidirectional RSVP-TE LSPs [RFC3473] and MPLS-TP LSPs [RFC5960]. This doc calls that other-way buddy the "reverse LSP" ๐. Quick note: we only mean reverse LSPs that are actually capable and allowed to carry the IP encapsulated MPLS echo reply โจ.
[RFC7110] already gave us the Reply Mode "Reply via Specified Path" ๐. It lets the initiator LSR tell the responder LSR to send the MPLS echo reply on the reverse LSP. The catch? The initiator also had to include a Reply Path TLV with the B bit (Bidirectional bit) set in the Flags field ๐. And [RFC7110] said that if you used "Reply via Specified Path", the Reply Path TLV MUST be present. Very strict, bestie ๐.
This doc updates the procedures for that Reply Mode like so:
- The "Reply via Specified Path" Reply Mode MAY be used without including a
Reply Path TLV. - Using it without a
Reply Path TLVimplies the reverse LSP. In other words, it has the same semantics as using it with aReply Path TLVthat has the B bit set in theFlagsfield ๐ธ.
This document updates the first sentence of Section 5.1 of [RFC7110] as follows:
- When sending an echo request, in addition to the rules and procedures defined in Section 4.3 of [RFC4379], the Reply Mode of the echo request MUST be set to "Reply via Specified Path", and a
Reply Path TLVSHOULD be carried in the echo request message correspondingly. If theReply Path TLVis not carried in the message, then it indicates the reverse LSP as the reply path ๐ง.
Note that the reverse LSP is in relation to the last Forwarding Equivalence Class (FEC) specified in the Target FEC Stack TLV. Keep that in your back pocket, it matters ๐.
3.2. Reply Mode Order TLV ๐
This document also introduces a brand new optional TLV ๐ to describe a list of Reply Mode values. The new TLV carries one or more Reply Mode values in preferred order. The first Reply Mode value is the most preferred, and the last one is the least preferred. These rules apply when using the Reply Mode Order TLV:
- The
Reply Mode Order TLVMUST NOT be included in any MPLS echo reply. If the initiator LSR receives an MPLS echo reply with theReply Mode Order TLV, the initiator LSR MUST ignore the wholeReply Mode Order TLVand MUST only use the value from theReply Modefield of the received MPLS echo reply. It may be beneficial for implementations to provide counters and/or logs, with appropriate log dampening, to record this error case ๐ โโ๏ธ. - The
Reply Mode Order TLVMAY be included in MPLS echo requests ๐. - The
Reply Modefield of an MPLS echo request MUST be set to a valid value even when supplying theReply Mode Order TLV. The initiator LSR SHOULD set theReply Modefield to a value that corresponds to a return path that is most likely to be available, in case the responder LSR does not understand theReply Mode Order TLV๐. - If a responder LSR understands the
Reply Mode Order TLVbut the TLV is not valid (due to the conditions described in items 6, 7, 8, and 9 below), then the responder LSR MUST ignore the wholeReply Mode Order TLVand MUST only use the value from theReply Modefield of the received MPLS echo request. It may be beneficial for implementations to provide counters and/or logs, with appropriate log dampening, to record this error case ๐. - If a responder LSR understands the
Reply Mode Order TLVand the TLV is valid, then the responder LSR MUST consider the Reply Mode values specified in the TLV and MUST NOT use the value specified in theReply Modefield of the received MPLS echo request. In other words, a validReply Mode Order TLVoverrides the value in theReply Modefield of the received MPLS echo request ๐. - The
Reply Mode Order TLVMUST contain at least one Reply Mode value ๐ซถ. - A Reply Mode value, except for Reply Mode value 5 (Reply via Specified Path), MUST NOT be repeated (i.e., MUST NOT appear multiple times) in the
Reply Mode Order TLV๐ซ. - Reply Mode value 5 (Reply via Specified Path) MAY be included more than once in the
Reply Mode Order TLV. However, in such a case, aReply Path TLVMUST be included for all instances of Reply Mode value 5 that are included in theReply Mode Order TLV. In other words, three instances of Reply Mode value 5 in theReply Mode Order TLVwill each require aReply Path TLV๐งฎ. - The Reply Mode value 1 (Do not reply) MUST NOT be used in the
Reply Mode Order TLV๐ .
The responder LSR SHOULD select the first available return path in this TLV. The Reply Mode value corresponding to the selected return path MUST be set in the Reply Mode field of the MPLS echo reply, so the initiator LSR knows which return path was chosen ๐ฏ.
The format of the TLV is as follows:
0 1 2 3
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reply Mode Order TLV Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Reply Mode 1 | Reply Mode 2 | Reply Mode 3 | Reply Mode 4 ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Reply Mode Order TLV
This is a variable-length optional TLV ๐ท. The Reply Mode Order TLV Type is 32770.
The Length field is 2 octets in length. It defines the length, in octets, of the list of Reply Mode values ๐.
Each Reply Mode field is 1 octet, and there is no padding โจ.
4. Relationships to Other LSP Ping and Traceroute Features ๐ฆ
4.1. Backwards Compatibility with "Reply via Specified Path" Reply Mode ๐ค
[RFC7110] introduces the "Reply via Specified Path" (value=5) Reply Mode ๐. [RFC7110] also specifies that if this Reply Mode is used, the Reply Path TLV MUST be included. This document relaxes that and specifies that this Reply Mode MAY be used without the Reply Path TLV. This MAY be done to indicate that the reverse LSP SHALL be used as the return path ๐ช.
If an initiator LSR that sent an MPLS echo request message with the "Reply via Specified Path" Reply Mode but without including the Reply Path TLV receives back an MPLS echo reply message with a return code of "Malformed echo request received", then the initiator LSR SHOULD assume that the responder LSR does not support the mechanism defined in this document ๐ฅบ.
4.2. Reply Path TLV ๐งญ
A Reply Path TLV [RFC7110] is defined to identify a single return path. When the initiator LSR wants to use the Reply Mode Order TLV to specify multiple return paths, then the initiator LSR SHOULD include multiple "Reply via Specified Path" (value=5) Reply Mode values and multiple corresponding Reply Path TLV objects (one Reply Path TLV corresponding to a "Reply via Specified Path" Reply Mode and one Reply Path TLV identifying a return path) ๐งฉ.
As described in Section 3.1, it is valid to use the "Reply via Specified Path" Reply Mode without inclusion in a Reply Path TLV. For the Reply Mode Order TLV, it is also valid to include a "Reply via Specified Path" Reply Mode value without a corresponding Reply Path TLV. This implies that the reverse LSP is the preferred return path ๐
. When multiple consecutive "Reply via Specified Path" Reply Mode values are included but fewer corresponding Reply Path TLV objects exist, the responder LSR SHOULD think that the former "Reply via Specified Path" Reply Mode values have corresponding Reply Path TLVs. The latter "Reply via Specified Path" Reply Mode values have no corresponding Reply Path TLVs. For example, if the Reply Mode Order TLV carries Reply Modes {5, 5, 5} and only two Reply Path TLVs carry FEC X and FEC Y, respectively, then the reply path order is as follows:
- Reply via Specified Path (FEC X)
- Reply via Specified Path (FEC Y)
- Reply via Specified Path (reverse LSP) ๐
4.2.1. Example 1: Reply Mode Order TLV Usage with Reply Path TLV ๐ฐ
If the initiator LSR was interested in encoding the following return paths:
- Reply via application level control channel
- FEC X
- FEC Y
- Reply via an IPv4/IPv6 UDP packet
Then the MPLS echo request message is to carry:
- The
Reply Mode Order TLVcarrying Reply Modes{4, 5, 5, 2} - One
Reply Path TLVcarrying FEC X - One
Reply Path TLVcarrying FEC Y
The encoding specified by the Reply Mode Order TLV and the Reply Path TLV in the MPLS echo request message will cause the responder LSR to prefer "Reply via application level control channel (4)", followed by FEC X, FEC Y, and then "Reply via an IPv4/IPv6 UDP packet (2)" ๐.
4.2.2. Example 2: Reply Mode Order TLV Usage with Reply Path TLV ๐
If the initiator LSR was interested in encoding the following return paths:
- Reverse LSP
- Reply via an IPv4/IPv6 UDP packet
- FEC X
- FEC Y
Then the MPLS echo request message is to carry:
- The
Reply Mode Order TLVcarrying Reply Modes{5, 2, 5, 5} - One
Reply Path TLVwith the B bit set - One
Reply Path TLVcarrying FEC X - One
Reply Path TLVcarrying FEC Y
The encoding specified by the Reply Mode Order TLV and the Reply Path TLV in the MPLS echo request message will cause the responder LSR to prefer the reverse LSP, followed by "Reply via an IPv4/IPv6 UDP packet (2)", FEC X, and then FEC Y ๐.
4.3. Proxy LSP Ping ๐ธ
The mechanism defined in this document will work with Proxy LSP Ping as defined by [RFC7555] ๐คฉ. The MPLS proxy ping request message can carry a Reply Mode value in the header and one or more Reply Mode values in the Reply Mode Order TLV. It is RECOMMENDED that Reply Mode 2 (Reply via an IPv4/IPv6 UDP packet) be used in the Reply Mode field of the MPLS proxy ping request message ๐.
4.3.1. Proxy LSR Sending an MPLS Echo Request ๐จ
If the proxy LSR is sending an MPLS echo request, then the proxy LSR MUST copy the following elements from the MPLS proxy ping request message to the MPLS echo request message:
- The
Reply Modefield. - The
Reply Mode Order TLV. - The
Reply Path TLV(s). If there is more than oneReply Path TLV, then the ordering of the TLVs MUST be preserved when copying ๐.
4.3.2. Proxy LSR Sending an MPLS Proxy Ping Reply ๐ฌ
If the proxy LSR is sending an MPLS proxy ping reply, then it is RECOMMENDED that the Reply Mode Order TLV be ignored and the Reply Mode field in the MPLS proxy ping request message be used ๐ซง.
Okay, bestie, let's keep going. ๐ ๐
5. Security Considerations โจ
The security considerations specified in [RFC4379] and [RFC7110] also apply for this document. ๐
In addition, this document introduces the Reply Mode Order TLV. Okay, so this is lowkey a big deal ๐: it gives an unauthorized source a new way to gather more network information, especially about the potential return path(s) of an LSP. ๐ญ To protect against unauthorized sources sending MPLS echo request messages with the Reply Mode Order TLV to dig up network info (same protection idea as in [RFC4379]), it is RECOMMENDED that implementations provide a means of checking the source addresses of MPLS echo request messages against an access list before accepting the message. Access lists are your bodyguards, periodt ๐ก๏ธ๐
Another potential security issue: MPLS echo request and reply messages are not encrypted, so their contents may be potentially exposed. ๐ Although the exposure is within the MPLS domain, if that's a concern, some encryption mechanisms [MPLS-OPP-ENCR] may be employed. ๐โจ
6. Manageability Considerations ๐
Section 2 described the problems that make operations and implementations more complicated. ๐งฉ To simplify operations and let LSP Ping and Traceroute work efficiently while keeping code simple, it is RECOMMENDED that implementations let devices have configuration options for operator-preferred Reply Modes. For example:
- For operators who care more about MPLS echo reply packets reaching the initiator LSR: ๐
- Reply via an IPv4/IPv6 UDP packet (2)
- Reply via application level control channel (4)
- Reply via Specified Path (5)
- For operators who care more about MPLS echo reply packets testing the paths related to the forward LSP: ๐
- Reply via Specified Path (5)
- Reply via application level control channel (4)
- Reply via an IPv4/IPv6 UDP packet (2)
7. IANA Considerations ๐
7.1. New Reply Mode Order TLV ๐ฆ
IANA has assigned a new TLV type value from the "TLVs" sub-registry within the "Multiprotocol Label Switching Architecture (MPLS) Label Switched Paths (LSPs) Ping Parameters" registry, for the Reply Mode Order TLV. ๐
The new TLV Type value has been assigned from the range 32768-49161, as specified in Sections 3 and 7.2 of [RFC4379]. This range is for optional TLVs that can be silently dropped if not recognized. ๐ซถ
Type Meaning Reference
----- ------- ---------
32770 Reply Mode Order TLV RFC 7737
8. References ๐
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC4379] Kompella, K. and G. Swallow, "Detecting Multi-Protocol
Label Switched (MPLS) Data Plane Failures", RFC 4379,
DOI 10.17487/RFC4379, February 2006,
<http://www.rfc-editor.org/info/rfc4379>.
[RFC7110] Chen, M., Cao, W., Ning, S., Jounay, F., and S. Delord,
"Return Path Specified Label Switched Path (LSP) Ping",
RFC 7110, DOI 10.17487/RFC7110, January 2014,
<http://www.rfc-editor.org/info/rfc7110>.
8.2. Informative References
[MPLS-OPP-ENCR]
Farrel, A. and S. Farrell, "Opportunistic Security in MPLS
Networks", Work in Progress, draft-ietf-mpls-
opportunistic-encrypt-00, July 2015.
[RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label
Switching (GMPLS) Signaling Resource ReserVation Protocol-
Traffic Engineering (RSVP-TE) Extensions", RFC 3473,
DOI 10.17487/RFC3473, January 2003,
<http://www.rfc-editor.org/info/rfc3473>.
[RFC5960] Frost, D., Ed., Bryant, S., Ed., and M. Bocci, Ed., "MPLS
Transport Profile Data Plane Architecture", RFC 5960,
DOI 10.17487/RFC5960, August 2010,
<http://www.rfc-editor.org/info/rfc5960>.
[RFC7555] Swallow, G., Lim, V., and S. Aldrin, "Proxy MPLS Echo
Request", RFC 7555, DOI 10.17487/RFC7555, June 2015,
<http://www.rfc-editor.org/info/rfc7555>.
Appendix A. Reply Mode Order TLV Beneficial Scenarios ๐
This section lists examples of how the Reply Mode Order TLV can be beneficial. โจ
A.1. Incorrect Forwarding Scenario ๐
As shown in Figure 2, a network has an LSP with the forwarding path A-B-C-D-E. The LSP has a control channel. ๐ค๏ธ
A------B------C------D------E
|
|
F
Forward Path: A-B-C-D-E
Figure 2: Incorrect Forwarding
If D is incorrectly label switching to F (instead of E), then LSP Traceroute with "Reply via application level control channel (4)" will result in the following:
Success (Reply from B)
Success (Reply from C)
Success (Reply from D)
Timeout...
Complete
This is because F does not have a control channel on which to send the MPLS echo reply message. ๐ฉ With the extensions described in this document, the same procedures can be performed with the Reply Mode Order TLV carrying {4, 2}. When LSP Traceroute is issued, the following output may be displayed without any unnecessary timeout:
Success (Reply from B, Reply Mode: 4)
Success (Reply from C, Reply Mode: 4)
Success (Reply from D, Reply Mode: 4)
FEC Mismatch (Reply from F, Reply Mode: 2)
Complete
The result provides more diagnostic information to the initiator LSR, and without any delay (i.e., timeout from one or more downstream LSRs). ๐ง ๐
A.2. Non-Co-Routed Bidirectional LSP Scenario ๐
As shown in Figure 3, a network has a bidirectional LSP where the forward LSP and the reverse LSP are not fully co-routed. ๐ช
+----C------D----+
/ \
A------B G------H
\ /
+----E------F----+
Forward Path: A-B-C-D-G-H (upper path)
Reverse Path: H-G-F-E-B-A (lower path)
Figure 3: Non-Co-Routed Bidirectional LSP
Some operators may prefer and configure "Reply via Specified Path" as the default Reply Mode, but without including the Reply Path TLV. This indicates that the reverse LSP is used as the return path when MPLS echo request messages are sent on bidirectional LSPs. Without the extensions described in this document, the following behaviors will be seen:
- When LSP Ping is issued from A, the reply will come back on the reverse LSP from H. ๐
- When LSP Traceroute is issued from A, the replies will come back on the reverse LSP from B, G, and H, but will encounter a timeout from C and D, as there are no reverse LSPs on those nodes. ๐ฌ
- When LSP Ping with a specific TTL value is issued from A, whether a timeout will be encountered depends on the value of the TTL used (i.e., whether or not the MPLS echo request terminates on a node that has a reverse LSP). ๐ค
One can argue that the initiator LSR can automatically generate the same MPLS echo request with a different Reply Mode value to those nodes that time out. However, such a mechanism will result in an extended time for the entire operation to complete (i.e., multiple seconds to multiple minutes). This is undesirable, and perhaps unacceptable if the "user" is an application. โณ๐
With the extensions described in this document, the same procedures can be performed with the Reply Mode Order TLV carrying {5, 2}. When LSP Traceroute is issued, the following output may be displayed without any unnecessary timeout:
Success (Reply Mode: 5)
Success (Reply Mode: 2)
Success (Reply Mode: 2)
Success (Reply Mode: 5)
Success (Reply Mode: 5)
Complete
Acknowledgements ๐ซถ
The authors especially thank Tom Taylor, who passed away close to the time of publication of this RFC. Tom did a careful review of the document and provided useful comments. ๐๏ธ๐
The authors would also like to thank Santiago Alvarez and Faisal Iqbal for discussions that motivated the creation of this document. They also thank Sam Aldrin, Curtis Villamizar, Ross Callon, Jeffrey Zhang, Jeremy Whittaker, Mustapha Alissaoui, Qin Wu, Jie Dong, and Adrian Farrel for providing valuable comments that influenced the content of the document, and Dan Frost, Victor Kuarsingh, and Deborah Brungard for reviewing the document and providing useful comments. ๐
Contributors ๐ธ
Shaleen Saxena Brocade
Email: ssaxena@brocade.com
Authors' Addresses ๐ง
Nobo Akiya Big Switch Networks
Email: nobo.akiya.dev@gmail.com
George Swallow Cisco Systems
Email: swallow@cisco.com
Carlos Pignataro Cisco Systems
Email: cpignata@cisco.com
Loa Andersson Huawei
Email: loa@mail01.huawei.com
Mach(Guoyi) Chen Huawei
Email: mach.chen@huawei.com
๐ฆ where this page comes from
- ietf: rfc7737 2016-01
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms