draft-ietf-mpls-lsp-ping-reply-mode-simple-03.txt | draft-ietf-mpls-lsp-ping-reply-mode-simple-04.txt | |||
---|---|---|---|---|
Internet Engineering Task Force N. Akiya | Internet Engineering Task Force N. Akiya | |||
Internet-Draft Big Switch Networks | Internet-Draft Big Switch Networks | |||
Updates: 7110 (if approved) G. Swallow | Updates: 7110 (if approved) G. Swallow | |||
Intended status: Standards Track C. Pignataro | Intended status: Standards Track C. Pignataro | |||
Expires: November 2, 2015 Cisco Systems | Expires: March 16, 2016 Cisco Systems | |||
L. Andersson | L. Andersson | |||
M. Chen | M. Chen | |||
Huawei | Huawei | |||
May 1, 2015 | September 13, 2015 | |||
Label Switched Path (LSP) Ping/Traceroute Reply Mode Simplification | Label Switched Path (LSP) Ping/Traceroute Reply Mode Simplification | |||
draft-ietf-mpls-lsp-ping-reply-mode-simple-03 | draft-ietf-mpls-lsp-ping-reply-mode-simple-04 | |||
Abstract | Abstract | |||
The Multiprotocol Label Switching (MPLS) Label Switched Path (LSP) | The Multiprotocol Label Switching (MPLS) Label Switched Path (LSP) | |||
Ping and Traceroute use the Reply Mode field to signal the method to | Ping and Traceroute use the Reply Mode field to signal the method to | |||
be used in the MPLS echo reply. This document updates the "Reply via | be used in the MPLS echo reply. This document updates the "Reply via | |||
Specified Path (5)" Reply Mode value to easily indicate the reverse | Specified Path (5)" Reply Mode value to easily indicate the reverse | |||
LSP. This document also adds an optional TLV which can carry ordered | LSP. This document also adds an optional TLV which can carry ordered | |||
list of Reply Mode values. | list of Reply Mode values. | |||
skipping to change at page 1, line 48 | skipping to change at page 1, line 48 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on November 2, 2015. | This Internet-Draft will expire on March 16, 2016. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2015 IETF Trust and the persons identified as the | Copyright (c) 2015 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 2, line 27 | skipping to change at page 2, line 27 | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
2. Problem Statements . . . . . . . . . . . . . . . . . . . . . 3 | 2. Problem Statements . . . . . . . . . . . . . . . . . . . . . 3 | |||
3. Solution . . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. Solution . . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
3.1. Reply via Specified Path Update . . . . . . . . . . . . . 5 | 3.1. Reply via Specified Path Update . . . . . . . . . . . . . 5 | |||
3.2. Reply Mode Order TLV . . . . . . . . . . . . . . . . . . 6 | 3.2. Reply Mode Order TLV . . . . . . . . . . . . . . . . . . 6 | |||
4. Relations to Other LSP Ping/Trace Features . . . . . . . . . 7 | 4. Relations to Other LSP Ping/Trace Features . . . . . . . . . 8 | |||
4.1. Reply Path TLV . . . . . . . . . . . . . . . . . . . . . 7 | 4.1. Backwards Compatibility with Reply via Specified Path (5) | |||
4.1.1. Example 1: Reply Mode Order TLV Usage with Reply Path | Reply Mode . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
TLV . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 4.2. Reply Path TLV . . . . . . . . . . . . . . . . . . . . . 8 | |||
4.1.2. Example 2: Reply Mode Order TLV Usage with Reply Path | 4.2.1. Example 1: Reply Mode Order TLV Usage with Reply Path | |||
TLV . . . . . . . . . . . . . . . . . . . . . . . . . 8 | TLV . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
4.2. Proxy LSP Ping . . . . . . . . . . . . . . . . . . . . . 9 | 4.2.2. Example 2: Reply Mode Order TLV Usage with Reply Path | |||
4.2.1. Proxy LSR Sending an MPLS Echo Request . . . . . . . 9 | TLV . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
4.2.2. Proxy LSR Sending an MPLS Proxy Ping Reply . . . . . 9 | 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 . . . . . 10 | ||||
5. Security Considerations . . . . . . . . . . . . . . . . . . . 10 | 5. Security Considerations . . . . . . . . . . . . . . . . . . . 10 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | 6. Manageability Considerations . . . . . . . . . . . . . . . . 10 | |||
6.1. New Reply Mode Order TLV . . . . . . . . . . . . . . . . 10 | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 | |||
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10 | 7.1. New Reply Mode Order TLV . . . . . . . . . . . . . . . . 11 | |||
8. Contributing Authors . . . . . . . . . . . . . . . . . . . . 10 | 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 11 | |||
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 9. Contributing Authors . . . . . . . . . . . . . . . . . . . . 12 | |||
9.1. Normative References . . . . . . . . . . . . . . . . . . 10 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
9.2. Informative References . . . . . . . . . . . . . . . . . 11 | 10.1. Normative References . . . . . . . . . . . . . . . . . . 12 | |||
Appendix A. Reply Mode Order TLV Beneficial Scenarios . . . . . 11 | 10.2. Informative References . . . . . . . . . . . . . . . . . 12 | |||
A.1. Incorrect Forwarding Scenario . . . . . . . . . . . . . . 11 | Appendix A. Reply Mode Order TLV Beneficial Scenarios . . . . . 12 | |||
A.2. Non-Co-Routed Bidirectional LSP Scenario . . . . . . . . 12 | A.1. Incorrect Forwarding Scenario . . . . . . . . . . . . . . 13 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 | A.2. Non-Co-Routed Bidirectional LSP Scenario . . . . . . . . 13 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 | ||||
1. Introduction | 1. Introduction | |||
The MPLS LSP Ping, described in [RFC4379], allows an initiator LSR to | The Multiprotocol Label Switching (MPLS) Label Switched Path (LSP) | |||
encode instructions (Reply Mode) on how a responder LSR should send | Ping, described in [RFC4379], allows an initiator LSR to encode | |||
the response back to the initiator LSR. [RFC7110] also allows the | instructions (Reply Mode) on how a responder LSR should send the | |||
response back to the initiator LSR. [RFC7110] also allows the | ||||
initiator LSR to encode a TLV (Reply Path TLV) which can instruct the | initiator LSR to encode a TLV (Reply Path TLV) which can instruct the | |||
responder LSR to use specific LSP to send the response back to the | responder LSR to use a specific LSP to send the response back to the | |||
initiator LSR. Both approaches are powerful as they provide the | initiator LSR. Both approaches are powerful as they provide the | |||
ability for the initiator LSR to control the return path. | ability for the initiator LSR to control the return path. | |||
However, it is becoming increasingly difficult for an initiator LSR | However, it is becoming increasingly difficult for an initiator LSR | |||
to select a valid return path to encode in the MPLS LSP echo request | to select a valid return path to encode in the MPLS LSP echo request | |||
packets. If the initiator LSR does not select a valid return path, | packets. If the initiator LSR does not select a valid return path, | |||
the MPLS LSP echo reply will not get back to the initiator LSR. This | the MPLS LSP echo reply will not get back to the initiator LSR. This | |||
results in a false failure of MPLS LSP Ping and Traceroute operation. | results in a false failure of MPLS LSP Ping and Traceroute operation. | |||
In an effort to minimize such false failures, different | In an effort to minimize such false failures, different | |||
implementations have chosen different default return path encoding | implementations have chosen different default return path encoding | |||
skipping to change at page 4, line 9 | skipping to change at page 4, line 13 | |||
several factors which are contributing to this complication. | several factors which are contributing to this complication. | |||
o Some LSPs have a control-channel, and some do not. Some LSPs have | o Some LSPs have a control-channel, and some do not. Some LSPs have | |||
a reverse LSP, and some do not. Some LSPs have IP reachability in | a reverse LSP, and some do not. Some LSPs have IP reachability in | |||
the reverse direction, and some do not. | the reverse direction, and some do not. | |||
o LSRs on some LSPs can have different available return path(s). | o LSRs on some LSPs can have different available return path(s). | |||
Available return path(s) can depend on whether the responder LSR | Available return path(s) can depend on whether the responder LSR | |||
is a transit LSR or an egress LSR. In case of a bi-directional | is a transit LSR or an egress LSR. In case of a bi-directional | |||
LSP, available return path(s) on transit LSRs can also depend on | LSP, available return path(s) on transit LSRs can also depend on | |||
whether LSP is completely co-routed, partially co-routed or | whether the LSP is completely co-routed, partially co-routed or | |||
associated (i.e., LSPs in the two directions are not co-routed). | associated (i.e., the LSPs in the two directions are not co- | |||
routed). | ||||
o MPLS echo request packets may incorrectly terminate on an | o MPLS echo request packets may incorrectly terminate on an | |||
unintended target, which can have different available return | unintended target, which can have different available return | |||
path(s) than the intended target. | path(s) than the intended target. | |||
o The MPLS LSP Ping operation is expected to terminate on egress | o The MPLS LSP Ping operation is expected to terminate on an egress | |||
LSR. However, the MPLS LSP Ping operation with specific TTL | LSR. However, the MPLS LSP Ping operation with specific TTL | |||
values and MPLS LSP Traceroute operation can terminate on both | values and MPLS LSP Traceroute operation can terminate on both | |||
transit LSR(s) and the egress LSR. | transit LSR(s) and the egress LSR. | |||
Except for the case where the responder LSR does not have an IP route | Except for the case where the responder LSR does not have an IP route | |||
back to the initiator LSR, it is possible to use the "Reply via an | back to the initiator LSR, it is possible to use the "Reply via an | |||
IPv4/IPv6 UDP packet (2)" Reply Mode value in all cases. However, | IPv4/IPv6 UDP packet (2)" Reply Mode value in all cases. However, | |||
some operators are preferring control-channel and reverse LSP as | some operators are preferring control-channel and reverse LSP as | |||
default return path if they are available, which is not always the | default return path if they are available, which is not always the | |||
case. | case. | |||
When specific return path encoding is supplied by users or | When specific return path encoding is supplied by users or | |||
applications, then there are no issues in choosing the return path | applications, then there are no issues in choosing the return path | |||
encoding. When specific return path encoding is not supplied by | encoding. When specific return path encoding is not supplied by | |||
users or applications, then implementations use extra logic to | users or applications, then implementations use extra logic to | |||
compute, and sometimes guess, the default return path encodings. If | compute, and sometimes guess, the default return path encodings. If | |||
a responder LSR receives an MPLS echo request containing return path | a responder LSR receives an MPLS echo request containing return path | |||
instructions which cannot be accommodated due to unavailability, then | instructions which cannot be accommodated due to unavailability, then | |||
the responder LSR often drops such packets. This results in the | the responder LSR often drops such packets. This failure mode | |||
initiator LSR not receiving the MPLS LSP echo reply packets back. | results in the initiator LSR not receiving the intended MPLS LSP echo | |||
This consequence may be acceptable for failure cases (e.g., broken | reply packets. The scenario described here is a potentially | |||
LSPs) where the MPLS echo request terminated on unintended target. | acceptable result in some failure cases, like a broken LSP, where the | |||
However, the initiator LSR not receiving back MPLS echo reply | MPLS echo request terminated on an unintended target. However, if | |||
packets, even when the intended target received and verified the | the initiator LSR does not receive an MPLS echo replay, even after | |||
requests, is not desirable as false failures will be conveyed to | the responder LSR receives the MPLS echo request and is able to | |||
users. | verify the request, information is sent back to the user(s) which is | |||
considered a false failure. | ||||
Many operators prefer some return path(s) over others for specific | Many operators prefer particular return path(s) over others return | |||
LSP types. To accommodate this, implementations may default to | path(s) for specific LSP types. To accommodate operator preferred | |||
operator preferred return path (or allow default return path to be | paths, implementations may default to operator preferred return paths | |||
configured) for a specific operation. However, if the sender of MPLS | for particular operations, or allow a default return path to be | |||
echo request knew that preferred return path will not be available at | configured. It would not be considered beneficial to use a preferred | |||
the intended target node, then it is not very beneficial to use a | return path for an intended target LSR if there is previous knowledge | |||
Reply Mode corresponding to preferred return path (i.e., the sender | at the initiator LSR that the return path is not available. Using a | |||
of the MPLS echo request will not receive the MPLS echo reply in the | unavailable preferred return path would undesirably result in the | |||
successful case). What would be beneficial, for a given operation, | initiator LSR not receiving the MPLS echo return packets. It would | |||
is for the sender of the MPLS echo request to determine which return | be considered beneficial, for given operations, if the sender of the | |||
path(s) can and cannot be used ahead of time. | MPLS echo request would be able to determined return path | |||
availability before the operation is initiated. | ||||
This document adds one Reply Mode value to describe the reverse LSP, | This document updates the "Reply via Specified Path (5)" Reply Mode | |||
and one optional TLV to describe an ordered list of reply modes. | to easily indicate the reverse the reverse LSP, and adds one optional | |||
Based on operational needs, the TLV can describe multiple Reply Mode | TLV to describe an ordered list of reply modes. Based on operational | |||
values in a preferred order to allow the responder LSR to use the | needs, the TLV can describe multiple Reply Mode values in a preferred | |||
first available Reply Mode from the list. This eliminates the need | order to allow the responder LSR to use the first available Reply | |||
for the initiator LSR to compute, or sometimes guess, the default | Mode from the list. This eliminates the need for the initiator LSR | |||
return path encoding. And that will result in simplified | to compute, or sometimes guess, the default return path encoding. | |||
implementations across vendors, and result in improved usability to | This new mode of operation would resulted in a simplification to | |||
fit operational needs. | implementations across the various vendors and improve both usability | |||
and operational needs. | ||||
3. Solution | 3. Solution | |||
This document updates "Reply via Specified Path (5)" Reply Mode to | This document updates the "Reply via Specified Path (5)" Reply Mode | |||
easily indicate the reverse LSP. This document also adds an optional | to easily indicate the reverse LSP. This document also adds an | |||
TLV which can carry ordered list of reply modes. | optional TLV which can carry an ordered list of reply modes. | |||
3.1. Reply via Specified Path Update | 3.1. Reply via Specified Path Update | |||
Some LSP types are capable of having related LSP in reverse | Some LSP types are capable of having a related LSP in reverse | |||
direction, through signaling or other association mechanisms. | direction, through signaling or other association mechanisms. | |||
Examples of such LSP types are RSVP LSPs and TP LSPs. This document | Examples of such LSP types are bidirectional Resource ReserVation | |||
uses the term "Reverse LSP" to refer to the LSP in reverse direction | Protocol-Traffic Engineering (RSVP-TE) LSPs [RFC3473] and MPLS | |||
of such LSP types. Note that this document restricts the scope of | Transport Profile (MPLS-TP) LSPs ([RFC5960]). This document uses the | |||
term "Reverse LSP" to refer to the LSP in the reverse direction of | ||||
such LSP types. Note that this document restricts the scope of | ||||
"Reverse LSP" applicability to those reverse LSPs which are capable | "Reverse LSP" applicability to those reverse LSPs which are capable | |||
and allowed to carry the IP encapsulated MPLS echo reply. | and allowed to carry the IP encapsulated MPLS echo reply. | |||
[RFC7110] has defined the Reply Mode "Reply via Specified Path (5)" | [RFC7110] has defined the Reply Mode "Reply via Specified Path (5)" | |||
which allows the initiator LSR to instruct the responder LSR to send | which allows the initiator LSR to instruct the responder LSR to send | |||
the MPLS echo reply message on the reverse LSP. However, the | the MPLS echo reply message on the reverse LSP. However, the | |||
instruction also requires the initiator LSR to include the "Reply | instruction also requires the initiator LSR to include the "Reply | |||
Path TLV" with the B bit (Bidirectional bit) set in the Flags field. | Path TLV" with the B bit (Bidirectional bit) set in the Flags field. | |||
Additionally, [RFC7110] defines the usage of the "Reply via Specified | Additionally, [RFC7110] defines the usage of the "Reply via Specified | |||
Path (5)" Reply Mode without inclusion of the "Reply Path TLV" to be | Path (5)" Reply Mode without inclusion of the "Reply Path TLV" to be | |||
skipping to change at page 6, line 10 | skipping to change at page 6, line 21 | |||
o The usage of the "Reply via Specified Path (5)" without inclusion | o The usage of the "Reply via Specified Path (5)" without inclusion | |||
of a "Reply Path TLV" implies the reverse LSP. In other words, | of a "Reply Path TLV" implies the reverse LSP. In other words, | |||
the usage of the "Reply via Specified Path (5)" without inclusion | the usage of the "Reply via Specified Path (5)" without inclusion | |||
of a "Reply Path TLV" has the same semantics as the usage of the | of a "Reply Path TLV" has the same semantics as the usage of the | |||
"Reply via Specified Path (5)" with inclusion of a "Reply Path | "Reply via Specified Path (5)" with inclusion of a "Reply Path | |||
TLV" with the B bit set in the Flags field. | TLV" with the B bit set in the Flags field. | |||
Note that the reverse LSP is in relation to the last FEC specified in | Note that the reverse LSP is in relation to the last FEC specified in | |||
the Target FEC Stack TLV. | the Target FEC Stack TLV. | |||
When a responder LSR is using this Reply Mode, transmitting MPLS echo | ||||
reply packet MUST use IP destination address of 127/8 for IPv4 and | ||||
0:0:0:0:0:FFFF:7F00/104 for IPv6. | ||||
3.2. Reply Mode Order TLV | 3.2. Reply Mode Order TLV | |||
This document also introduces a new optional TLV to describe list of | This document also introduces a new optional TLV to describe a list | |||
Reply Mode values. The new TLV will contain one or more Reply Mode | of Reply Mode values. The new TLV will contain one or more Reply | |||
value(s) in preferred order. The first Reply Mode value is the most | Mode value(s) in preferred order. The first Reply Mode value is the | |||
preferred and the last Reply Mode value is the least preferred. | most preferred and the last Reply Mode value is the least preferred. | |||
Following rules apply when using Reply Mode Order TLV. | Following rules apply when using Reply Mode Order TLV. | |||
1. The Reply Mode Order TLV MUST NOT be included in MPLS echo reply. | 1. The Reply Mode Order TLV MUST NOT be included in any MPLS echo | |||
If the initiator LSR receives an MPLS echo reply with the Reply | reply. If the initiator LSR receives an MPLS echo reply with the | |||
Mode Order TLV, the initiator LSR MUST ignore the whole Reply | Reply Mode Order TLV, the initiator LSR MUST ignore the whole | |||
Mode Order TLV and MUST only use the value from the Reply Mode | Reply Mode Order TLV and MUST only use the value from the Reply | |||
field of the received MPLS echo reply. It may be beneficial for | Mode field of the received MPLS echo reply. It may be beneficial | |||
implementations to provide counters and/or loggings, with | for implementations to provide counters and/or loggings, with | |||
appropriate log dampening, to record this error case. | appropriate log dampening, to record this error case. | |||
2. The Reply Mode Order TLV MAY be included in MPLS echo request. | 2. The Reply Mode Order TLV MAY be included in MPLS echo request. | |||
3. The Reply Mode field of an MPLS echo request MUST be set to a | 3. The Reply Mode field of an MPLS echo request MUST be set to a | |||
valid value even when supplying the Reply Mode Order TLV. The | valid value even when supplying the Reply Mode Order TLV. The | |||
initiator LSR SHOULD set the Reply Mode field of MPLS echo | initiator LSR SHOULD set the Reply Mode field of an MPLS echo | |||
request to a value that corresponds to a return path which most | request to a value that corresponds to a return path which most | |||
likely to be available, in case the responder LSR does not | likely to be available, in case the responder LSR does not | |||
understand the Reply Mode Order TLV. | understand the Reply Mode Order TLV. | |||
4. If a responder LSR understands the Reply Mode Order TLV but the | 4. If a responder LSR understands the Reply Mode Order TLV but the | |||
TLV is not valid (due to conditions described in the items 6, 7, | TLV is not valid (due to conditions described in the items 6, 7, | |||
8 and 9 immediately below), then the responder LSR MUST ignore | 8 and 9 immediately below), then the responder LSR MUST ignore | |||
the whole Reply Mode Order TLV and MUST only use the value from | the whole Reply Mode Order TLV and MUST only use the value from | |||
the Reply Mode field of the received MPLS echo request. It may | the Reply Mode field of the received MPLS echo request. It may | |||
be beneficial for implementations to provide counters and/or | be beneficial for implementations to provide counters and/or | |||
loggings, with appropriate log dampening, to record this error | loggings, with appropriate log dampening, to record this error | |||
case. | case. | |||
5. If a responder LSR understands the Reply Mode Order TLV and the | 5. If a responder LSR understands the Reply Mode Order TLV and the | |||
TLV is valid, then the responder LSR MUST consider the Reply Mode | TLV is valid, then the responder LSR MUST consider the Reply Mode | |||
values described in the TLV and MUST NOT use the value described | values described in the TLV and MUST NOT use the value described | |||
in the Reply Mode field of received MPLS echo request. In other | in the Reply Mode field of the received MPLS echo request. In | |||
words, a valid Reply Mode Order TLV overrides the value specified | other words, a valid Reply Mode Order TLV overrides the value | |||
in the Reply Mode field of received MPLS echo request. | specified in the Reply Mode field of the received MPLS echo | |||
request. | ||||
6. Reply Mode Order TLV MUST contain at least one Reply Mode value. | 6. Reply Mode Order TLV MUST contain at least one Reply Mode value. | |||
7. A Reply Mode value, except for Reply Mode value 5 (Reply via | 7. A Reply Mode value, except for Reply Mode value 5 (Reply via | |||
Specified Path), MUST NOT be repeated (i.e., MUST NOT appear | Specified Path), MUST NOT be repeated (i.e., MUST NOT appear | |||
multiple times) in the Reply Mode Order TLV. | multiple times) in the Reply Mode Order TLV. | |||
8. The Reply Mode value 5 (Reply via Specified Path) MAY be included | 8. The Reply Mode value 5 (Reply via Specified Path) MAY be included | |||
more than once in the Reply Mode Order TLV. However, in such | more than once in the Reply Mode Order TLV. However, in such | |||
case a Reply Path TLV MUST be included for all instances of the | case a Reply Path TLV MUST be included for all instances of the | |||
Reply Mode value 5 included in the Reply Mode Order TLV. In | Reply Mode value 5 included in the Reply Mode Order TLV. In | |||
other words, 3 instances of the Reply Mode value 5 in the Reply | other words, 3 instances of the Reply Mode value 5 in the Reply | |||
Mode Order TLV will require 3 instances of the Reply Path TLVs. | Mode Order TLV will require 3 instances of the Reply Path TLVs. | |||
9. The Reply Mode value 1 (Do not reply) MUST NOT be used in the | 9. The Reply Mode value 1 (Do not reply) MUST NOT be used in the | |||
Reply Mode Order TLV. | Reply Mode Order TLV. | |||
The responder LSR is to select the first available return path in | The responder LSR SHOULD select the first available return path in | |||
this TLV. Reply Mode value corresponding to the selected return path | this TLV. The Reply Mode value corresponding to the selected return | |||
MUST be set in Reply Mode field of MPLS echo reply to communicate | path MUST be set in Reply Mode field of the MPLS echo reply to | |||
back to the initiator LSR which return path was chosen. | communicate back to the initiator LSR which return path was chosen. | |||
The format of the TLV is as follows: | The format of the TLV is as follows: | |||
0 1 2 3 | 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 | 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 Order TLV Type | Length | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
~ Reply mode 1 | Reply mode 2 | Reply mode 3 | Reply mode 4 ~ | ~ Reply mode 1 | Reply mode 2 | Reply mode 3 | Reply mode 4 ~ | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Figure 1 Reply Mode Order TLV | Figure 1 Reply Mode Order TLV | |||
This is a variable length optional TLV. Each Reply Mode field is 1 | This is a variable length optional TLV. Each Reply Mode field is 1 | |||
octet. | octet. | |||
4. Relations to Other LSP Ping/Trace Features | 4. Relations to Other LSP Ping/Trace Features | |||
4.1. Reply Path TLV | 4.1. Backwards Compatibility with Reply via Specified Path (5) Reply | |||
Mode | ||||
[RFC7110] has defined that the "Reply Path TLV" can include Sub-TLVs | [RFC7110] has introduced the "Reply via Specified path (5)" Reply | |||
describing multiple FECs, from which the responder LSR can choose the | Mode, and defined that usage of the "Reply via Specified path (5)" | |||
FEC to send the MPLS echo reply message. [RFC7110] has also defined | Reply Mode without also including the "Reply Path TLV" to be invalid. | |||
that Sub-TLVs, within the "Reply Path TLV", describing FECs for | This document relaxes this semantic by defining the use of the "Reply | |||
return paths SHOULD be ignored when the B bit is set in the Flags | via Specified path (5)" Reply Mode without the "Reply via Specified | |||
field. Therefore, when the initiator LSR wants to use the Reply Mode | path (5)" to indicate the reverse LSP. In other words, what was | |||
Order TLV to describe the reverse LSP and other FECs for return | considered invalid is now valid. If the initiator LSR, which sent an | |||
paths, then the initiator SHOULD include two "Reply via Specified | MPLS echo request message with the "Reply via Specified path (5)" | |||
Path (5)" Reply Mode values and two "Reply Path TLV" objects (one | Reply Mode but without including the "Reply Path TLV", receives back | |||
"Reply Path TLV" corresponding to each "Reply via Specified Path | an MPLS echo reply message with the return code being "Malformed echo | |||
(5)"). | request received", then the initiator LSR SHOULD assume that the | |||
responder LSR does not support the mechanism defined in this | ||||
document. | ||||
o The reverse LSP is described by the "Reply via Specified Path (5)" | 4.2. Reply Path TLV | |||
Reply Mode value and the corresponding "Reply Path TLV" with the B | ||||
bit set in the Flags field. In this "Reply Path TLV", no Sub-TLVs | ||||
are present. | ||||
o Other return FECs are described by the "Reply via Specified Path | A "Reply Path TLV" [RFC7110] is defined to identify a single return | |||
(5)" Reply Mode value and the corresponding "Reply Path TLV" | path. When the initiator LSR wants to use the Reply Mode Order TLV | |||
describing the FECs for return paths. In this "Reply Path TLV", | to describe multiple return paths, then the initiator SHOULD include | |||
the B bit is cleared in the Flags field. | multiple "Reply via Specified Path (5)" Reply mode values and | |||
multiple corresponding "Reply Path TLV" objects (one "Reply Path TLV" | ||||
corresponding to a "Reply via Specified Path (5)" Reply mode, and one | ||||
"Reply Path TLV" identifies a return path). | ||||
4.1.1. Example 1: Reply Mode Order TLV Usage with Reply Path TLV | As described in Section 3.1, it's valid to use the "Reply via | |||
Specified Path (5)" Reply mode without inclusion a "Reply Path TLV". | ||||
For the Reply Mode Order TLV, it's also valid to include a "Reply via | ||||
Specified Path (5)" 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 (5)" Reply | ||||
mode values are included but less corresponding "Reply Path TLV" | ||||
objects exist, the responder LSR SHOULD think that the former "Reply | ||||
via Specified Path (5)" Reply mode values have corresponding "Reply | ||||
Path TLV", the latter "Reply via Specified Path (5)" Reply mode | ||||
values have no corresponding "Reply Path TLV". For example, if the | ||||
Reply Mode Order TLV carrying Reply Modes {5, 5, 5} and only two | ||||
Reply Path TLVs carrying FEC X and FEC Y respectively. The reply | ||||
path order is as follows: | ||||
1. Reply via Specified Path (FEC X) | ||||
2. Reply via Specified Path (FEC Y) | ||||
3. 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 following return | If the initiator LSR was interested in encoding following return | |||
paths: | paths: | |||
1. Reply via application level control channel | 1. Reply via application level control channel | |||
2. FEC X | 2. FEC X | |||
3. FEC Y | 3. FEC Y | |||
4. Reply via an IPv4/IPv6 UDP packet | 4. Reply via an IPv4/IPv6 UDP packet | |||
Then the MPLS echo request message is to carry: | Then the MPLS echo request message is to carry: | |||
o The Reply Mode Order TLV carrying Reply Modes {4, 5, 2} | o The Reply Mode Order TLV carrying Reply Modes {4, 5, 5, 2} | |||
o The Reply Path TLV carrying {FEC X, FEC Y} | o One Reply Path TLV carrying FEC X | |||
o One Reply Path TLV carrying FEC Y | ||||
Described encoding of the Reply Mode Order TLV and the Reply Path TLV | Described encoding of the Reply Mode Order TLV and the Reply Path TLV | |||
in the MPLS echo request message will result in the responder LSR to | in the MPLS echo request message will result in the responder LSR to | |||
prefer "Reply via application level control channel (4)", followed by | prefer "Reply via application level control channel (4)", followed by | |||
FEC X, FEC Y and then "Reply via an IPv4/IPv6 UDP packet (2)". | FEC X, FEC Y and then "Reply via an IPv4/IPv6 UDP packet (2)". | |||
4.1.2. Example 2: Reply Mode Order TLV Usage with Reply Path TLV | 4.2.2. Example 2: Reply Mode Order TLV Usage with Reply Path TLV | |||
If the initiator LSR was interested in encoding following return | If the initiator LSR was interested in encoding following return | |||
paths: | paths: | |||
1. Reverse LSP | 1. Reverse LSP | |||
2. Reply via an IPv4/IPv6 UDP packet | 2. Reply via an IPv4/IPv6 UDP packet | |||
3. FEC X | 3. FEC X | |||
4. FEC Y | 4. FEC Y | |||
Then the MPLS echo request message is to carry: | Then the MPLS echo request message is to carry: | |||
o The Reply Mode Order TLV carrying Reply Modes {5, 2, 5} | o The Reply Mode Order TLV carrying Reply Modes {5, 2, 5, 5} | |||
o One Reply Path TLV with the B bit set. | o One Reply Path TLV with the B bit set. | |||
o One Reply Path TLV carrying {FEC X, FEC Y} | o One Reply Path TLV carrying FEC X | |||
o One Reply Path TLV carrying FEC Y | ||||
Described encoding of the Reply Mode Order TLV and the Reply Path TLV | Described encoding of the Reply Mode Order TLV and the Reply Path TLV | |||
in the MPLS echo request message will result in the responder LSR to | in the MPLS echo request message will result in the responder LSR to | |||
prefer the reverse LSP, followed by "Reply via an IPv4/IPv6 UDP | prefer the reverse LSP, followed by "Reply via an IPv4/IPv6 UDP | |||
packet (2)", FEC X and then FEC Y. | packet (2)", FEC X and then FEC Y. | |||
4.2. Proxy LSP Ping | 4.3. Proxy LSP Ping | |||
The mechanism defined in this document will work with Proxy LSP Ping | The mechanism defined in this document will work with Proxy LSP Ping | |||
defined by [I-D.ietf-mpls-proxy-lsp-ping]. The MPLS proxy ping | defined by [RFC7555]. The MPLS proxy ping request message can carry | |||
request message can carry a Reply Mode value in the header and one or | a Reply Mode value in the header and one or more Reply Mode values in | |||
more Reply Mode values in the Reply Mode Order TLV. It is | the Reply Mode Order TLV. It is RECOMMENDED that the Reply Mode 2 | |||
RECOMMENDED that the Reply Mode 2 (Reply via an IPv4/IPv6 UDP packet) | (Reply via an IPv4/IPv6 UDP packet) be used in the Reply Mode field | |||
be used in the Reply Mode field of the MPLS proxy ping request | of the MPLS proxy ping request message. | |||
message. | ||||
4.2.1. Proxy LSR Sending an MPLS Echo Request | 4.3.1. Proxy LSR Sending an MPLS Echo Request | |||
If the proxy LSR is sending an MPLS echo request, then the proxy LSR | If the proxy LSR is sending an MPLS echo request, then the proxy LSR | |||
MUST copy following elements from the MPLS proxy ping request message | MUST copy the following elements from the MPLS proxy ping request | |||
to the MPLS echo request message. | message to the MPLS echo request message. | |||
o The Reply Mode field. | o The Reply Mode field. | |||
o The Reply Mode Order TLV. | o The Reply Mode Order TLV. | |||
o The Reply Path TLV(s). If there are more than one Reply Path | o The Reply Path TLV(s). If there are more than one Reply Path | |||
TLVs, then then order of them MUST be preserved when copying. | TLVs, then order of them MUST be preserved when copying. | |||
4.2.2. Proxy LSR Sending an MPLS Proxy Ping Reply | 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 | 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 | RECOMMENDED that the Reply Mode Order TLV is ignored and the Reply | |||
Mode field in the MPLS proxy ping request message be used. | Mode field in the MPLS proxy ping request message is used. | |||
5. Security Considerations | 5. Security Considerations | |||
Beyond those specified in [RFC4379] and [RFC7110], there are no | Beyond those specified in [RFC4379] and [RFC7110], there are no | |||
further security measures required. | further security measures required. | |||
6. IANA Considerations | 6. Manageability Considerations | |||
6.1. New Reply Mode Order TLV | Section 2 described the problems which increases the complexity with | |||
respect to operations and implementations. In order to simplify | ||||
operations and to allow for the LSP Ping/Traceroute to function | ||||
efficiently whilst preserving the code simplicity, it is RECOMMENDED | ||||
that implementations allow devices to have configuration options to | ||||
set operator preferred Reply Modes. For example: | ||||
o For those operators who are more interested in MPLS echo reply | ||||
packets reaching back to the initiator LSR: | ||||
1. Reply via an IPv4/IPv6 UDP packet (2) | ||||
2. Reply via application level control channel (4) | ||||
3. Reply via Specified Path (5) | ||||
o For those operators who are more interested in MPLS echo reply | ||||
packets testing the paths related to the forward LSP: | ||||
1. Reply via Specified Path (5) | ||||
2. Reply via application level control channel (4) | ||||
3. Reply via an IPv4/IPv6 UDP packet (2) | ||||
7. IANA Considerations | ||||
7.1. New Reply Mode Order TLV | ||||
IANA is requested to assign a new TLV type value from the "TLVs" sub- | IANA is requested to assign a new TLV type value from the "TLVs" sub- | |||
registry within the "Multiprotocol Label Switching Architecture | registry within the "Multiprotocol Label Switching Architecture | |||
(MPLS)" registry, for the "Reply Mode Order TLV". | (MPLS)" registry, for the "Reply Mode Order TLV". | |||
The new TLV Type value should be assigned from the range | The new TLV Type value should be assigned from the range | |||
(32768-49161) specified in [RFC4379] section 3 that allows the TLV | (32768-49161) specified in [RFC4379] section 3 that allows the TLV | |||
type to be silently dropped if not recognized. | type to be silently dropped if not recognized. | |||
Type Meaning Reference | Type Meaning Reference | |||
---- ------- --------- | ---- ------- --------- | |||
TBD1 Reply Mode Order TLV this document | TBD1 Reply Mode Order TLV this document | |||
7. Acknowledgements | 8. Acknowledgements | |||
Authors would like to thank Santiago Alvarez and Faisal Iqbal for | Authors would like to thank Santiago Alvarez and Faisal Iqbal for | |||
discussions which motivated creation of this document. Authors would | discussions which motivated creation of this document. Authors would | |||
also like to thank Sam Aldrin, Curtis Villamizar, Ross Callon, | also like to thank Sam Aldrin, Curtis Villamizar, Ross Callon, | |||
Jeffrey Zhang, Jeremy Whittaker, Mustapha Alissaoui, Qin Wu, Jie Dong | Jeffrey Zhang, Jeremy Whittaker, Mustapha Alissaoui, Qin Wu, Jie Dong | |||
and Adrian Farrel for providing valuable comments to influence the | and Adrian Farrel for providing valuable comments to influence the | |||
contents of the draft. | contents of the draft. Authors would also like to thank Dan Frost, | |||
Tom Taylor, Victor Kuarsingh and Deborah Brungard for reviewing the | ||||
document and providing useful comments. | ||||
8. Contributing Authors | 9. Contributing Authors | |||
Shaleen Saxena | Shaleen Saxena | |||
Brocade | Brocade | |||
Email: ssaxena@brocade.com | Email: ssaxena@brocade.com | |||
9. References | 10. References | |||
9.1. Normative References | 10.1. Normative References | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, March 1997. | 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 | [RFC4379] Kompella, K. and G. Swallow, "Detecting Multi-Protocol | |||
Label Switched (MPLS) Data Plane Failures", RFC 4379, | Label Switched (MPLS) Data Plane Failures", RFC 4379, | |||
February 2006. | 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, | [RFC7110] Chen, M., Cao, W., Ning, S., Jounay, F., and S. Delord, | |||
"Return Path Specified Label Switched Path (LSP) Ping", | "Return Path Specified Label Switched Path (LSP) Ping", | |||
RFC 7110, January 2014. | RFC 7110, DOI 10.17487/RFC7110, January 2014, | |||
<http://www.rfc-editor.org/info/rfc7110>. | ||||
9.2. Informative References | 10.2. Informative References | |||
[I-D.ietf-mpls-proxy-lsp-ping] | [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label | |||
Swallow, G., Lim, V., and S. Aldrin, "Proxy MPLS Echo | Switching (GMPLS) Signaling Resource ReserVation Protocol- | |||
Request", draft-ietf-mpls-proxy-lsp-ping-05 (work in | Traffic Engineering (RSVP-TE) Extensions", RFC 3473, | |||
progress), March 2015. | 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 | Appendix A. Reply Mode Order TLV Beneficial Scenarios | |||
This section lists examples of how the Reply Mode Order TLV can | This section lists examples of how the Reply Mode Order TLV can | |||
benefit. | benefit. | |||
A.1. Incorrect Forwarding Scenario | A.1. Incorrect Forwarding Scenario | |||
A network has a following LSP, and the LSP has a control channel. | 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 | A------B------C------D------E | |||
| | | | |||
| | | | |||
F | F | |||
Forward Paths: A-B-C-D-E | Forward Paths: A-B-C-D-E | |||
Figure 2: Incorrect Forwarding | Figure 2: Incorrect Forwarding | |||
Imagine that D is incorrectly label switching to F (instead of E). | If D is incorrectly label switching to F (instead of E). In this | |||
In this scenario, LSP Traceroute with "Reply via application level | scenario, LSP Traceroute with "Reply via application level control | |||
control channel (4)" will result in following result. | channel (4)" will result in following result. | |||
Success (Reply from B) | Success (Reply from B) | |||
Success (Reply from C) | Success (Reply from C) | |||
Success (Reply from D) | Success (Reply from D) | |||
Timeout... | Timeout... | |||
Complete | Complete | |||
This is because F does not have a control channel to send the MPLS | This is because F does not have a control channel to send the MPLS | |||
echo reply message. With the extension described in this document, | echo reply message. With the extension described in this document, | |||
same procedures can be performed with the Reply Mode Order TLV | same procedures can be performed with the Reply Mode Order TLV | |||
skipping to change at page 12, line 13 | skipping to change at page 13, line 47 | |||
Success (Reply from D, Reply Mode: 4) | Success (Reply from D, Reply Mode: 4) | |||
FEC Mismatch (Reply from F, Reply Mode: 2) | FEC Mismatch (Reply from F, Reply Mode: 2) | |||
Complete | Complete | |||
The result provides more diagnostic information to the initiator LSR, | The result provides more diagnostic information to the initiator LSR, | |||
and without any delay (i.e. timeout from one or more downstream | and without any delay (i.e. timeout from one or more downstream | |||
LSRs). | LSRs). | |||
A.2. Non-Co-Routed Bidirectional LSP Scenario | A.2. Non-Co-Routed Bidirectional LSP Scenario | |||
A network has a following bidirectional LSP where the forward LSP and | As shown in Figure 3, a network has a bidirectional LSP where the | |||
the reverse LSP are not fully co-routed. | forward LSP and the reverse LSP are not fully co-routed. | |||
+----C------D----+ | +----C------D----+ | |||
/ \ | / \ | |||
A------B G------H | A------B G------H | |||
\ / | \ / | |||
+----E------F----+ | +----E------F----+ | |||
Forward Paths: A-B-C-D-G-H (upper path) | Forward Paths: A-B-C-D-G-H (upper path) | |||
Reverse Paths: H-G-F-E-B-A (lower path) | Reverse Paths: H-G-F-E-B-A (lower path) | |||
Figure 3: Non-Co-Routed Bidirectional LSP | Figure 3: Non-Co-Routed Bidirectional LSP | |||
Some operators may prefer and configure the system to default the | Some operators may prefer and configure the system to default the | |||
Reply Mode to indicate the reverse LSP when MPLS echo request | Reply Mode to indicate the reverse LSP when MPLS echo request | |||
messages are sent on bidirectional LSPs. Without extensions | messages are sent on bidirectional LSPs. Without extensions | |||
described in this document, following behaviors will be seen: | described in this document, following behaviors will be seen: | |||
o When LSP Ping is issued from A, reply will come back on the | o When LSP Ping is issued from A, the reply will come back on the | |||
reverse LSP from H. | reverse LSP from H. | |||
o When LSP Traceroute is issued from A, reply will come back on the | o When LSP Traceroute is issued from A, the replies will come back | |||
reverse LSP from B, G and H, but will encounter a timeout from C | on the reverse LSP from B, G and H, but will encounter a timeout | |||
and D as there are no reverse LSP on those nodes. | from C and D as there are no reverse LSP on those nodes. | |||
o When LSP Ping with specific TTL value is issued from A, whether a | o When LSP Ping with specific TTL value is issued from A, whether a | |||
timeout will be encountered depends on the value of the TTL used | timeout will be encountered depends on the value of the TTL used | |||
(i.e. whether or not MPLS echo request terminates on a node that | (i.e. whether or not the MPLS echo request terminates on a node | |||
has reverse LSP). | that has reverse LSP). | |||
One can argue that the initiator LSR can automatically generate a | One can argue that the initiator LSR can automatically generate the | |||
same MPLS echo request with different Reply Mode value to those nodes | same MPLS echo request with different Reply Mode value to those nodes | |||
that timeout. However, such mechanism will result in extended time | that timeout. However, such mechanism will result in extended time | |||
for the entire operation to complete (i.e. multiple seconds to | for the entire operation to complete (i.e. multiple seconds to | |||
multiple minutes). This is undesirable, and perhaps unacceptable if | multiple minutes). This is undesirable, and perhaps unacceptable if | |||
the "user" is an application. | the "user" is an application. | |||
With the extension described in this document, same procedures can be | With the extension described in this document, same procedures can be | |||
performed with the Reply Mode Order TLV carrying {5, 2}. When LSP | performed with the Reply Mode Order TLV carrying {5, 2}. When LSP | |||
Traceroute is issued, then following output may be displayed without | Traceroute is issued, then following output may be displayed without | |||
any unnecessary timeout. | any unnecessary timeout. | |||
End of changes. 59 change blocks. | ||||
156 lines changed or deleted | 233 lines changed or added | |||
This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |