< draft-ietf-mpls-lsp-ping-lag-multipath-07.txt   draft-ietf-mpls-lsp-ping-lag-multipath-08.txt >
Internet Engineering Task Force N. Akiya Internet Engineering Task Force N. Akiya
Internet-Draft Big Switch Networks Internet-Draft Big Switch Networks
Updates: 8029 (if approved) G. Swallow Updates: 8029 (if approved) G. Swallow
Intended status: Standards Track Cisco Systems Intended status: Standards Track Cisco Systems
Expires: October 5, 2019 S. Litkowski Expires: October 6, 2019 S. Litkowski
B. Decraene B. Decraene
Orange Orange
J. Drake J. Drake
Juniper Networks Juniper Networks
M. Chen M. Chen
Huawei Huawei
April 03, 2019 April 04, 2019
Label Switched Path (LSP) Ping/Trace Multipath Support for Label Switched Path (LSP) Ping/Trace Multipath Support for
Link Aggregation Group (LAG) Interfaces Link Aggregation Group (LAG) Interfaces
draft-ietf-mpls-lsp-ping-lag-multipath-07 draft-ietf-mpls-lsp-ping-lag-multipath-08
Abstract Abstract
This document defines extensions to the MPLS Label Switched Path This document defines extensions to the MPLS Label Switched Path
(LSP) Ping and Traceroute mechanisms as specified in RFC 8029. The (LSP) Ping and Traceroute mechanisms as specified in RFC 8029. The
extensions allow the MPLS LSP Ping and Traceroute mechanisms to extensions allow the MPLS LSP Ping and Traceroute mechanisms to
discover and exercise specific paths of Layer 2 (L2) Equal-Cost discover and exercise specific paths of Layer 2 (L2) Equal-Cost
Multipath (ECMP) over Link Aggregation Group (LAG) interfaces. Multipath (ECMP) over Link Aggregation Group (LAG) interfaces.
Additionally, a mechanism is defined to enable determination of the Additionally, a mechanism is defined to enable determination of the
capabilities of an LSR supported. capabilities of an LSR supported.
skipping to change at page 2, line 10 skipping to change at page 2, line 10
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 https://datatracker.ietf.org/drafts/current/. Drafts is at https://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 October 5, 2019. This Internet-Draft will expire on October 6, 2019.
Copyright Notice Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the Copyright (c) 2019 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
(https://trustee.ietf.org/license-info) in effect on the date of (https://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 4, line 37 skipping to change at page 4, line 37
can be blind to label switching failures over a problematic LAG can be blind to label switching failures over a problematic LAG
interface. It is, thus, desirable to extend the MPLS LSP Ping and interface. It is, thus, desirable to extend the MPLS LSP Ping and
Traceroute to have deterministic diagnostic coverage of LAG Traceroute to have deterministic diagnostic coverage of LAG
interfaces. interfaces.
The need for a solution of this problem was motivated by issues The need for a solution of this problem was motivated by issues
encountered in live networks. encountered in live networks.
2. Overview of Solution 2. Overview of Solution
This document defines an new TLV to discover the capabilities of a This document defines a new TLV to discover the capabilities of a
responder LSR and extensions for use with the MPLS LSP Ping and responder LSR and extensions for use with the MPLS LSP Ping and
Traceroute mechanisms to describe Multipath Information for Traceroute mechanisms to describe Multipath Information for
individual LAG member links, thus allowing MPLS LSP Ping and individual LAG member links, thus allowing MPLS LSP Ping and
Traceroute to discover and exercise specific paths of L2 ECMP over Traceroute to discover and exercise specific paths of L2 ECMP over
LAG interfaces. The reader is expected to be familiar with mechanics LAG interfaces. The reader is expected to be familiar with mechanics
Downstream Detailed Mapping TLV (DDMAP) described in Section 3.4 of Downstream Detailed Mapping TLV (DDMAP) described in Section 3.4 of
[RFC8029]. [RFC8029].
The solution consists of the MPLS echo request containing a DDMAP TLV The solution consists of the MPLS echo request containing a DDMAP TLV
and the new LSR Capability TLV to indicate that separate load and the new LSR Capability TLV to indicate that separate load
balancing information for each L2 nexthop over LAG is desired in the balancing information for each L2 nexthop over LAG is desired in the
MPLS echo reply. The Responder LSR places the same LSR capability MPLS echo reply. The Responder LSR places the same LSR Capability
TLV in the MPLS echo reply to provide acknowledgement back to the TLV in the MPLS echo reply to provide acknowledgement back to the
initiator LSR. It also adds, for each downstream LAG member, load initiator LSR. It also adds, for each downstream LAG member, load
balance information (i.e., multipath information and interface balance information (i.e., multipath information and interface
index). This mechanism is applicable to all types of LSPs which can index). This mechanism is applicable to all types of LSPs which can
traverse over LAG interfaces. Many LAGs are built from p2p links, traverse over LAG interfaces. Many LAGs are built from p2p links,
with router X and router X+1 having direct connectivity and the same with router X and router X+1 having direct connectivity and the same
number of LAG members. It is possible to build LAGs asymmetrically number of LAG members. It is possible to build LAGs asymmetrically
by using Ethernet switches between two routers. Appendix A lists by using Ethernet switches between two routers. Appendix A lists
some use cases for which the mechanisms defined in this document may some use cases for which the mechanisms defined in this document may
not be applicable. Note that the mechanisms described in this not be applicable. Note that the mechanisms described in this
skipping to change at page 6, line 23 skipping to change at page 6, line 23
3. LSR Capability Discovery 3. LSR Capability Discovery
The MPLS Ping operates by an initiator LSR sending an MPLS echo The MPLS Ping operates by an initiator LSR sending an MPLS echo
request message and receiving back a corresponding MPLS echo reply request message and receiving back a corresponding MPLS echo reply
message from a responder LSR. The MPLS Traceroute operates in a message from a responder LSR. The MPLS Traceroute operates in a
similar way except the initiator LSR potentially sends multiple MPLS similar way except the initiator LSR potentially sends multiple MPLS
echo request messages with incrementing TTL values. echo request messages with incrementing TTL values.
There have been many extensions to the MPLS Ping and Traceroute There have been many extensions to the MPLS Ping and Traceroute
mechanism over the years. Thus it is often useful, and sometimes mechanisms over the years. Thus it is often useful, and sometimes
necessary, for the initiator LSR to deterministically disambiguate necessary, for the initiator LSR to deterministically disambiguate
the differences between: the differences between:
o The responder LSR sent the MPLS echo reply message with contents C o The responder LSR sent the MPLS echo reply message with contents C
because it has feature X, Y and Z implemented. because it has feature X, Y and Z implemented.
o The responder LSR sent the MPLS echo reply message with contents C o The responder LSR sent the MPLS echo reply message with contents C
because it has subset of features X, Y and Z implemented but not because it has subset of features X, Y and Z implemented but not
all. all.
skipping to change at page 7, line 48 skipping to change at page 7, line 48
4. Mechanism to Discover L2 ECMP Multipath 4. Mechanism to Discover L2 ECMP Multipath
4.1. Initiator LSR Procedures 4.1. Initiator LSR Procedures
Through the "LSR Capability Discovery" as defined in Section 3, the Through the "LSR Capability Discovery" as defined in Section 3, the
initiator LSR can understand whether the responder LSR can describe initiator LSR can understand whether the responder LSR can describe
incoming/outgoing LAG member links separately in the DDMAP TLV. incoming/outgoing LAG member links separately in the DDMAP TLV.
Once the initiator LSR knows that a responder can support this Once the initiator LSR knows that a responder can support this
meachanims, then it sends an MPLS echo request carrying a DDMAP TLV mechanism, then it sends an MPLS echo request carrying a DDMAP TLV
with the "LAG Description Indicator flag" (G) set to the responder with the "LAG Description Indicator flag" (G) set to the responder
LSR. The "LAG Description Indicator flag" (G) indicates that LSR. The "LAG Description Indicator flag" (G) indicates that
separate load balancing information for each L2 nexthop over a LAG is separate load balancing information for each L2 nexthop over a LAG is
desired in the MPLS echo reply. The new "LAG Description Indicator desired in the MPLS echo reply. The new "LAG Description Indicator
flag" is described in Section 7. flag" is described in Section 7.
4.2. Responder LSR Procedures 4.2. Responder LSR Procedures
When a responder LSR received an MPLS echo request message with the When a responder LSR received an MPLS echo request message with the
"LAG Description Indicator flag" set in the DDMAP TLV, if the "LAG Description Indicator flag" set in the DDMAP TLV, if the
responder LSR understands the "LAG Description Indicator flag" and is responder LSR understands the "LAG Description Indicator flag" and is
capable of describing outgoing LAG member links separately, the capable of describing outgoing LAG member links separately, the
following procedures are used, regardless of whether or not outgoing following procedures are used, regardless of whether or not outgoing
interfaces include LAG interfaces: interfaces include LAG interfaces:
o For each downstream that is a LAG interface: o For each downstream that is a LAG interface:
* The responder LSR MUST include a DDMAP TLV when sending the * The responder LSR MUST include a DDMAP TLV when sending the
MPLS echo reply.There is a single DDMAP TLV for the LAG MPLS echo reply. There is a single DDMAP TLV for the LAG
interface, with member links described using sub-TLVs. interface, with member links described using sub-TLVs.
* The responder LSR MUST set the "LAG Description Indicator flag" * The responder LSR MUST set the "LAG Description Indicator flag"
in the DS Flags field of the DDMAP TLV. in the DS Flags field of the DDMAP TLV.
* In the DDMAP TLV, the Local Interface Index Sub-TLV, Remote * In the DDMAP TLV, the Local Interface Index Sub-TLV, Remote
Interface Index Sub-TLV and Multipath Data Sub-TLV are used to Interface Index Sub-TLV and Multipath Data Sub-TLV are used to
describe each LAG member link. All other fields of the DDMAP describe each LAG member link. All other fields of the DDMAP
TLV are used to describe the LAG interface. TLV are used to describe the LAG interface.
skipping to change at page 9, line 9 skipping to change at page 9, line 9
outside the scope of this document. outside the scope of this document.
+ The responder LSR MUST add an Multipath Data Sub-TLV for + The responder LSR MUST add an Multipath Data Sub-TLV for
this LAG member link, if the received DDMAP TLV requested this LAG member link, if the received DDMAP TLV requested
multipath information. multipath information.
Based on the procedures described above, every LAG member link will Based on the procedures described above, every LAG member link will
have a Local Interface Index Sub-TLV and a Multipath Data Sub-TLV have a Local Interface Index Sub-TLV and a Multipath Data Sub-TLV
entries in the DDMAP TLV. The order of the Sub-TLVs in the DDMAP TLV entries in the DDMAP TLV. The order of the Sub-TLVs in the DDMAP TLV
for a LAG member link MUST be Local Interface Index Sub-TLV for a LAG member link MUST be Local Interface Index Sub-TLV
immediately followed by Multipath Data Sub-TLV. A LAG member link immediately followed by Multipath Data Sub-TLV except as follows. A
MAY also have a corresponding Remote Interface Index Sub-TLV. When a LAG member link MAY also have a corresponding Remote Interface Index
Local Interface Index Sub-TLV, a Remote Interface Index-Sub-TLV and a Sub-TLV. When a Local Interface Index Sub-TLV, a Remote Interface
Multipath Data Sub-TLV are placed in the DDMAP TLV to describe a LAG Index-Sub-TLV and a Multipath Data Sub-TLV are placed in the DDMAP
member link, they MUST be placed in the order of Local Interface TLV to describe a LAG member link, they MUST be placed in the order
Index Sub-TLV, Remote Interface Index-Sub-TLV and Multipath Data Sub- of Local Interface Index Sub-TLV, Remote Interface Index-Sub-TLV and
TLV. The block of local interface index, (optional remote interface Multipath Data Sub-TLV. The block of local interface index,
index) and multipath data sub-TLVs for each member link MUST appear (optional remote interface index) and multipath data sub-TLVs for
adjacent to each other in order of increasing local interface index. each member link MUST appear adjacent to each other in order of
increasing local interface index.
A responder LSR possessing a LAG interface with two member links A responder LSR possessing a LAG interface with two member links
would send the following DDMAP for this LAG interface: would send the following DDMAP for this LAG interface:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ DDMAP fields describing LAG interface with DS Flags G set ~ ~ DDMAP fields describing LAG interface with DS Flags G set ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Local Interface Index Sub-TLV of LAG member link #1 | | Local Interface Index Sub-TLV of LAG member link #1 |
skipping to change at page 16, line 19 skipping to change at page 16, line 19
G LAG Description Indicator G LAG Description Indicator
When this flag is set in the MPLS echo request, the responder LSR When this flag is set in the MPLS echo request, the responder LSR
is requested to respond with detailed LAG information. When this is requested to respond with detailed LAG information. When this
flag is set in the MPLS echo reply, the corresponding DDMAP TLV flag is set in the MPLS echo reply, the corresponding DDMAP TLV
describes a LAG interface. describes a LAG interface.
8. Local Interface Index Sub-TLV 8. Local Interface Index Sub-TLV
The Local Interface Index Sub-TLV is an optional TLV, it describes The Local Interface Index Sub-TLV describes the interface index
the interface index assigned by the local LSR to an egress interface. assigned by the local LSR to an egress interface. One or more Local
One or more Local Interface Index sub-TLVs MAY appear in a DDMAP TLV. Interface Index sub-TLVs MAY appear in a DDMAP TLV.
The format of the Local Interface Index Sub-TLV is below: The format of the Local Interface Index Sub-TLV is below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Local Interface Index | | Local Interface Index |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 21, line 42 skipping to change at page 21, line 42
attacks only have a small window of opportunity. If these messages attacks only have a small window of opportunity. If these messages
are indeed hijacked (non-delivery) by an intermediate node, the use are indeed hijacked (non-delivery) by an intermediate node, the use
of these mechanisms will determine the data plane is not working (as of these mechanisms will determine the data plane is not working (as
it should). Hijacking of a responder node such that it provides a it should). Hijacking of a responder node such that it provides a
legitimate reply would involve compromising the node itself and the legitimate reply would involve compromising the node itself and the
MPLS control domain. [RFC5920] provides additional MPLS network-wide MPLS control domain. [RFC5920] provides additional MPLS network-wide
operation recommendations to avoid attacks and recommendations to operation recommendations to avoid attacks and recommendations to
follow. Please note that source IP address filtering provides only a follow. Please note that source IP address filtering provides only a
weak form of access control and is not, in general, a reliable weak form of access control and is not, in general, a reliable
security mechanism. Nonetheless, it is required here in the absence security mechanism. Nonetheless, it is required here in the absence
of any more robust mechanism that might be used. of any more robust mechanisms that might be used.
13. IANA Considerations 13. IANA Considerations
13.1. LSR Capability TLV 13.1. LSR Capability TLV
The IANA is requested to assign new value TBD1 (from the range The IANA is requested to assign new value TBD1 (from the range
4-16383) for LSR Capability TLV from the "Multiprotocol Label 4-16383) for LSR Capability TLV from the "Multiprotocol Label
Switching Architecture (MPLS) Label Switched Paths (LSPs) Ping Switching Architecture (MPLS) Label Switched Paths (LSPs) Ping
Parameters - TLVs" registry. Parameters - TLVs" registry.
skipping to change at page 25, line 5 skipping to change at page 25, line 5
The authors would like to thank Nagendra Kumar, Sam Aldrin, for The authors would like to thank Nagendra Kumar, Sam Aldrin, for
providing useful comments and suggestions. The authors would like to providing useful comments and suggestions. The authors would like to
thank Loa Andersson for performing a detailed review and providing thank Loa Andersson for performing a detailed review and providing
number of comments. number of comments.
The authors also would like to extend sincere thanks to the MPLS RT The authors also would like to extend sincere thanks to the MPLS RT
review members who took time to review and provide comments. The review members who took time to review and provide comments. The
members are Eric Osborne, Mach Chen and Yimin Shen. The suggestion members are Eric Osborne, Mach Chen and Yimin Shen. The suggestion
by Mach Chen to generalize and create the LSR Capability TLV was by Mach Chen to generalize and create the LSR Capability TLV was
tremendously helpful for this document and likely for future tremendously helpful for this document and likely for future
documents extending the MPLS LSP Ping and Traceroute mechanism. The documents extending the MPLS LSP Ping and Traceroute mechanisms. The
suggestion by Yimin Shen to create two separate validation procedures suggestion by Yimin Shen to create two separate validation procedures
had a big impact to the contents of this document. had a big impact to the contents of this document.
15. References 15. References
15.1. Normative References 15.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, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
 End of changes. 13 change blocks. 
23 lines changed or deleted 24 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/