One document matched: draft-ietf-mpls-tp-on-demand-cv-07.xml
<?xml version="1.0" encoding="US-ASCII"?>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!DOCTYPE rfc SYSTEM "rfc3978.dtd" [
<!ENTITY RFC1122 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1122.xml">
<!ENTITY RFC1812 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1812.xml">
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC4379 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4379.xml">
<!ENTITY RFC4385 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4385.xml">
<!ENTITY RFC4446 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4446.xml">
<!ENTITY RFC5003 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5003.xml">
<!ENTITY RFC5586 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5586.xml">
<!ENTITY RFC5860 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5860.xml">
<!ENTITY RFC5884 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5884.xml">
<!ENTITY RFC6371 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6371.xml">
<!ENTITY DDMAP-DRAFT SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-mpls-lsp-ping-enhanced-dsmap.xml">
<!ENTITY P2MP-LSP-PING SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-mpls-p2mp-lsp-ping.xml">
<!ENTITY RFC6370 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6370.xml">
]>
<?rfc toc="yes"?>
<?rfc tof="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc strict="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<rfc category="std" updates="4379" docName="draft-ietf-mpls-tp-on-demand-cv-07"
ipr="trust200902">
<front>
<title abbrev="MPLS On-demand Connectivity Verification">MPLS On-demand
Connectivity Verification and Route Tracing</title>
<author fullname="Eric Gray" initials="E.G." surname="Gray">
<organization>Ericsson</organization>
<address>
<postal>
<street>900 Chelmsford Street</street>
<city>Lowell</city>
<region>MA</region>
<code>01851</code>
<country>US</country>
</postal>
<phone>+1 978 275 7470</phone>
<facsimile></facsimile>
<email>eric.gray@ericsson.com</email>
<uri></uri>
</address>
</author>
<author fullname="Nitin Bahadur" initials="N.B." surname="Bahadur">
<organization>Juniper Networks, Inc.</organization>
<address>
<postal>
<street>1194 N. Mathilda Avenue</street>
<city>Sunnyvale</city>
<region>CA</region>
<code>94089</code>
<country>US</country>
</postal>
<phone>+1 408 745 2000</phone>
<email>nitinb@juniper.net</email>
<uri>www.juniper.net</uri>
</address>
</author>
<author fullname="Sami Boutros" initials="S.B." surname="Boutros">
<organization>Cisco Systems, Inc.</organization>
<address>
<postal>
<street>3750 Cisco Way</street>
<city>San Jose</city>
<region>CA</region>
<code>95134</code>
<country>US</country>
</postal>
<phone></phone>
<facsimile></facsimile>
<email>sboutros@cisco.com</email>
<uri></uri>
</address>
</author>
<author fullname="Rahul Aggarwal" initials="R.A." surname="Aggarwal">
<address>
<email>raggarwa_1@yahoo.com</email>
</address>
</author>
<date day="27" month="September" year="2011" />
<area>Routing</area>
<workgroup>Network Working Group</workgroup>
<keyword>Internet-Draft</keyword>
<keyword>MPLS-TP OAM</keyword>
<keyword>LSP Ping</keyword>
<keyword>On Demand Connectivity Verification</keyword>
<keyword>Route Tracing</keyword>
<abstract>
<t>
Label Switched Path Ping (LSP-Ping) is an existing and widely deployed
Operations, Administration and Maintenance (OAM) mechanism for
Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSPs). This
document describes extensions to LSP-Ping so that LSP-Ping can be used
for On-demand Connectivity Verification of MPLS Transport Profile
(MPLS-TP) LSPs and Pseudowires. This document also clarifies
procedures to be used for processing the related OAM packets. Further,
it describes procedures for using LSP-Ping to perform Connectivity
Verification and Route Tracing functions in MPLS-TP networks. Finally
this document updates RFC 4379 by adding a new address type and
requesting an IANA registry.
</t>
</abstract>
</front>
<middle>
<section anchor="intro" title="Introduction">
<t>
Label Switched Path Ping (LSP-Ping) <xref target="RFC4379"></xref>
is an Operations, Administration and Maintenance (OAM) mechanism for
Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSPs).
This document describes extensions to LSP-Ping so that LSP-Ping can be
used for on-demand monitoring of MPLS Transport Profile (MPLS-TP) LSPs
and Pseudowires. It also clarifies the procedures to be used for
processing the related OAM packets. This document describes how LSP-Ping
can be used for on-demand Connectivity Verification (<xref
target="on-demand-cv"> </xref>) and Route Tracing (<xref
target="on-demand-rt"></xref>) functions required in <xref
target="RFC5860"></xref> and specified in <xref
target="RFC6371"></xref>.
</t>
<section title="Conventions used in this document">
<t>
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
<xref target="RFC2119"></xref>.
</t>
<t>
There is considerable opportunity for confusion in use of the terms
"on-demand connectivity verification" (CV), "on-demand route tracing"
and "LSP-Ping." In this document, we try to use the terms
consistently as follows:
</t>
<t>
<list style="symbols">
<t>
LSP-Ping: refers to the mechanism - particularly as defined and used
in referenced material;
</t>
<t>
On-demand CV: refers to on-demand connectivity verification and -
where both apply equally - on-demand route tracing, as implemented
using the LSP-Ping mechanism extended for support of MPLS-TP;
</t>
<t>
On-demand route tracing: used in those cases where the LSP-Ping
mechanism (as extended) is used exclusively for route tracing.
</t>
</list>
</t>
<t>
From the perspective of on-demand CV and route tracing, we use the
concepts of "Requester" and "Responder" as follows:
</t>
<t>
<list style="symbols">
<t>
Requester: Originator of an OAM Request message,
</t>
<t>
Responder: Entity responding to an OAM Request message.
</t>
</list>
</t>
<t>
Since - in this document - all messages are assumed to be
carried in an LSP, all Request messages would be injected at
the ingress to an LSP. A Responder might or might not be at the
egress of this same LSP, given that it could receive Request
messages as a result of TTL expiry. If a Reply is to be
delivered via a reverse path LSP, the message would again be
inserted at the ingress of that LSP.
</t>
</section>
<section title="On-demand CV for MPLS-TP LSPs using IP encapsulation">
<t>
LSP-Ping requires IP addressing on responding Label Switching Routers
(LSRs) for performing OAM on MPLS signaled LSPs and pseudowires. In
particular, in these cases, LSP-Ping packets generated by a Requester
are encapsulated in an IP/UDP header with the destination address
from the 127/8 range and then encapsulated in the MPLS label stack
(<xref target="RFC4379"></xref> , <xref target="RFC5884"></xref>).
A Responder uses the presence of the 127/8 destination address to
identify OAM packets and relies further on the UDP port number to
determine whether the packet is a LSP-Ping packet. It is to be noted
that this determination does not require IP forwarding capabilities.
It requires the presence of an IP host stack which enables responding
LSRs to process packets with a destination address from the 127/8
range. <xref target="RFC1122"></xref> allocates the 127/8 range as
"Internal host loopback address" and <xref target="RFC1812"></xref>
states that "a router SHOULD NOT forward, except over a loopback
interface, any packet that has a destination address on network 127".
</t>
</section>
<section title="On-demand CV for MPLS-TP LSPs using non-IP encapsulation">
<t>
In certain MPLS-TP deployment scenarios IP addressing might not be
available or it might be preferred to use some form of non-IP encapsulation
for On-demand CV, route tracing and BFD packets. In such scenarios, On-demand
CV and/or route tracing SHOULD be run without IP addressing, using the
Associated Channel (ACH) channel type specified in <xref target="on-demand-cv">
</xref>.
</t>
<t>
<xref target="lsp-ping-ping"></xref> and <xref target="lsp-ping-trace">
</xref> describe the theory of operation for performing On-demand CV
over MPLS-TP LSPs with any non-IP encapsulation.
</t>
</section>
</section>
<section title="LSP-Ping Extensions" toc="default">
<section anchor="dsmap-addr-type" title="New address type for Downstream Mapping TLV">
<t>
<xref target="RFC4379"></xref> defines the Downstream Mapping (DSMAP) TLV.
<xref target="I-D.ietf-mpls-lsp-ping-enhanced-dsmap"></xref> further defines
the Downstream Detailed Mapping (DDMAP) TLV. This document defines the following
new address type which MAY be used in any DSMAP or DDMAP TLV included in
an On-demand CV message:
</t>
<figure align="left" anchor="dsmap-new-addr-type"
title="Downstream Mapping TLV new address type">
<artwork><![CDATA[
Type # Address Type K Octets
------ -------------- --------
5 Non IP 12
]]></artwork>
</figure>
<t>
The new address type indicates that no address is present in the
DSMAP or DDMAP TLV. However, IF_Num information (see definition
of "IF_NUM" in <xref target="RFC6370"></xref>)
for both ingress and egress interfaces, as well as multipath
information is included in the format and MAY be present.
</t>
<t>
IF_Num values of zero indicate that no IF_Num applies in the field
in which this value appears.
</t>
<t>
Multipath type SHOULD be set to 0 (no multipath) when using this address
type.
</t>
<t>When this address type is used, on receipt of a LSP-Ping echo
request, interface verification MUST be bypassed. Thus the receiving
node SHOULD only perform MPLS label control-plane/data-plane
consistency checks. Note that these consistency checks include
checking of included identifier information.</t>
<t>The new address type is also applicable to the Detailed Downstream
Mapping (DDMAP) TLV defined in
<xref target="I-D.ietf-mpls-lsp-ping-enhanced-dsmap"></xref>.</t>
<section anchor="dsmap-ddmap-addr-info" title="DSMAP/DDMAP Non-IP Address Information">
<t>
If the DSMAP (or DDMAP) TLV is included when sending On-demand CV
packets using ACH, without IP encapsulation, the following information
MUST be included in any DSMAP or DDMAP TLV that is included in the
packet. This information forms the address portion of the DSMAP TLV (as
defined in <xref target="RFC4379"></xref>) or DDMAP TLV (as defined in
<xref target="I-D.ietf-mpls-lsp-ping-enhanced-dsmap"></xref> using one of
the address information fields defined in <xref target="RFC4379"></xref>
and extended to include non-IP identifier types in this document).
</t>
<figure align="left" anchor="dsmap-ddmap-address-format"
title="New DSMAP/DDMAP Address Format">
<artwork><![CDATA[
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MTU | Address Type | DS Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ingress IF_Num (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Egress IF_Num (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Multipath Type| Depth Limit | Multipath Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
<t>
Address Type will be 5 (as shown in <xref target="dsmap-addr-type"></xref>
above.
</t>
<t>
Ingress IF_Num identifies the ingress interface on the target node. A
value of 0 indicates that the interface is not part of the identifier.
</t>
<t>
Egress IF_Num identifies the egress interface on the target node. A
value of 0 indicates that the interface is not part of the identifier.
</t>
<t>
Multipath type SHOULD be set to 0 (no multipath) when using this address
type.
</t>
<t>
Including this TLV, with one or the other IF_Num (but not both)
set to a non-zero value, in a request message that also includes
a destination identifier TLV (as described in section 2.2.3), is
sufficient to identify the "per-interface" MIP in section 7.3 of
<xref target="RFC6370"></xref>.
</t>
<t>
Inclusion of this TLV with both IF_Num fields set to zero would
be interpretted as specifying neither an ingress, nor an egress,
interface. Note that this is the same as not including the TLV,
hence including this TLV with both IF_Num values set to zero is
NOT RECOMMENDED.
</t>
<t>
Including this TLV with both IF_NUM fields set to a non-zero
value will result in the responder sending a Return Code of 5
("Downstream Mapping Mis-match") if either IF_Num is incorrect
for this LSP or PW.
</t>
</section>
</section>
<section anchor="src-dst-identifier-tlv" title="Source/Destination Identifier TLV">
<section anchor="src-dst-addr-tlv"
title="Source/Destination Identifier TLV Format">
<t>
The format for the identifier TLV is the same for both Source and Destination
Identifier TLVs (only the type is different). The format is as specified in
the figure below.
</t>
<figure align="left" anchor="src-dst-identifier-format"
title="New Source/Destination Identifier Format">
<artwork><![CDATA[
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Global_ID (4 Octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Node_ID (4 Octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
<t>
Type will be one of either TBD-SRC or TBD-DST, depending on whether the
TLV in question is a Source or Destination Identifier TLV.
</t>
<t>
Global_ID is as defined in <xref target="RFC6370"></xref>.
</t>
<t>
Node_ID is as defined in <xref target="RFC6370"></xref>.
</t>
</section>
<section title="Source Identifier TLV">
<t>
When sending On-demand CV packets using ACH, without IP encapsulation,
there MAY be a need to identify the source of the packet. This source
identifier will be specified via the Source Identifier TLV, using the
Identifier TLV defined in <xref target="src-dst-addr-tlv"></xref>,
containing the information specified above.
</t>
<t>
An On-demand CV packet MUST NOT include more than 1 Source Identifier TLV.
The Source Identifier TLV MUST specify the identifier of the originator of
the packet. If more than 1 such TLV is present in an On-demand CV request
packet, then an error of 1 (Malformed echo request received,
<xref target="lsp-ping-ping"> </xref> <xref target="RFC4379"></xref>)
MUST be returned, if it is possible to unambiguously identify the source
of the packet.
</t>
</section>
<section title="Destination Identifier TLV">
<t>
When sending On-demand CV packets using ACH, without IP encapsulation,
there MAY be a need to identify the destination of the packet. This
destination identifier will be specified via the Destination Identifier TLV,
using the Identifier TLV defined in <xref target="src-dst-addr-tlv"></xref>,
containing the information specified above.
</t>
<t>
An On-demand CV packet MUST NOT include more than 1 Destination Identifier
TLV. The Destination Identifier TLV MUST specify the destination node for
the packet. If more than 1 such TLV is present in an On-demand CV Request
packet, then an error of 1 (Malformed echo request received,
<xref target="lsp-ping-ping"> </xref> <xref target="RFC4379"></xref>)
MUST be returned, if it is possible to unambiguously identify the source
of the packet.
</t>
</section>
</section>
<section anchor="static-fecs" title="Identifying Statically provisioned LSPs and PWs">
<t><xref target="RFC4379"></xref> specifies how an MPLS LSP under test
is identified in an echo request. A Target FEC Stack TLV is used
to identify the LSP. In order to identify a statically provisioned LSP
and PW, new target FEC stack sub-TLVs are being defined. The new
sub-TLVs are assigned sub-type identifiers as follows, and are
described in the following sections.</t>
<figure align="left" anchor="new-fec-types"
title="New target FEC sub-types">
<artwork><![CDATA[
Type # Sub-Type # Length Value Field
------ ---------- ------ -----------
1 22 24 Static LSP
1 23 32 Static Pseudowire
]]></artwork>
</figure>
<section title="Static LSP Sub-TLV" toc="include">
<t>The format of the Static LSP sub-TLV value field is specified in
the following figure. The value fields are taken from the
definitions in <xref
target="RFC6370"></xref>.</t>
<figure align="left" anchor="static-lsp-fec"
title="Static LSP FEC Sub-TLV">
<artwork><![CDATA[
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Node ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Tunnel Number | LSP Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Node ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Tunnel Number | Must be Zero |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
<t>The Source Global ID and Destination Global ID MAY be set to 0.
When set to zero, the field is not applicable.</t>
</section>
<section title="Static Pseudowire Sub-TLV" toc="include">
<t>The format of the Static PW sub-TLV value field is specified in
the following figure.</t>
<figure anchor="static-pw-fec" title="Static PW FEC Sub-TLV">
<artwork><![CDATA[
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Service Identifier +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Node ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source AC-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Global ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination Node ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination AC-ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
<t>Service Identifier is a 64-bit unsigned integer, that is
included in the first two words, as shown. The Service
Identifier identifies the service associated with the
transport path under test. The value MAY - for example -
be an Attachment Group Identifier (AGI), type 0x01, as defined
in <xref target="RFC4446"></xref>.
</t>
<t>
The Source Global ID and Destination Global ID MAY be set to 0.
When either of these fields is set to zero, the corresponding
Global ID is not applicable. This might be done in a scenario
where local scope is sufficient for uniquely identifying services.
</t>
<t>
The Global ID and Node ID fields are defined in
<xref target="RFC6370"></xref>. The AC-ID
fields are defined in <xref target="RFC5003"></xref>.
</t>
</section>
</section>
</section>
<section anchor="on-demand-cv" title="Performing On-demand CV over MPLS-TP LSPs">
<t>
This section specifies how On-demand CV can be used in the context of
MPLS-TP LSPs. The On-demand CV function meets the On-demand Connectivity
Verification requirements specified in <xref target="RFC5860"></xref>,
section 2.2.3.
This function SHOULD NOT be performed except in the on-demand mode. This
function SHOULD be performed between End Points (MEPs) and Intermediate
Points (MIPs) of PWs and LSPs, and between End Points of PWs, LSPs and
Sections. In order for the On-demand CV packet to be processed at the
desired MIP, the TTL of the MPLS label MUST be set such that it expires
at the MIP to be probed.
</t>
<t>
<xref target="RFC5586"></xref> defines an ACH mechanism for MPLS LSPs.
The mechanism is a generalization of Associated Channel mechanism that
<xref target="RFC4385"></xref> defined for use with Pseudowires. As a
result, it is possible to use a single Associated Channel Type for either
an LSP or Pseudowire.
</t>
<t>
A new Pseudowire Associated Channel Type (type TBD-2) is defined for use
in performing On-demand Connectivity Verification. Its use is described
in the following sections.
</t>
<t>
ACH TLVs SHALL NOT be associated with this channel type.
</t>
<t>
Except as specifically stated in the sections below, message and TLV
construction procedures for On-demand CV messages are as defined in
<xref target="RFC4379"></xref>.
</t>
<section anchor="ip-lsp-ping" title="LSP-Ping with IP encapsulation">
<t>LSP-Ping packets, as specified in <xref target="RFC4379"></xref>,
are sent over the MPLS LSP for which OAM is being performed and
contain an IP/UDP packet within them. The IP header is not used for
forwarding (since LSP forwarding is done using MPLS label switching).
The IP header is used mainly for addressing and can be used in the
context of MPLS-TP LSPs. This form of On-demand CV OAM MUST be supported
for MPLS-TP LSPs when IP addressing is in use.</t>
<t>The On-demand CV echo response message MUST be sent on the reverse path
of the LSP. The reply MUST contain IP/UDP headers followed by the
On-demand CV payload. The destination address in the IP header MUST be set
to that of the sender of the echo request message. The source address
in the IP header MUST be set to a valid address of the replying
node.</t>
</section>
<section title="On-demand CV with IP encapsulation, over ACH">
<t>IP encapsulated On-demand CV packets MAY be sent over the MPLS LSP
using the control channel (ACH). IP ACH type specified in <xref
target="RFC4385"></xref> MUST be used in such a case. The IP header is
used mainly for addressing and can be used in the context of MPLS-TP LSPs.
</t>
<t>
The On-demand CV echo response message MUST be sent on the reverse
path of the LSP. The response in this case SHOULD use ACH and SHOULD be IP
encapsulated.
</t>
<t>
If IP encapsulated, the destination address in the IP header MUST be set
to that of the sender of the echo request message, and the source address
in the IP header MUST be set to a valid address of the replying node.
</t>
</section>
<section anchor="lsp-ping-ping" title="Non-IP based On-demand CV, using ACH">
<t>
The OAM procedures defined in <xref target="RFC4379"></xref>
require the use of IP addressing, and in some cases IP routing, to
perform OAM functions.
</t>
<t>
When the ACH header is used, IP addressing and routing is not needed.
This section describes procedures for performing on-demand CV without a
dependency on IP addressing and routing.
</t>
<t>
In the non-IP case, when using On-demand CV via LSP-Ping with the ACH
header, the On-demand CV request payload MUST directly follow the ACH
header, and the LSP-Ping Reply mode <xref target="RFC4379"></xref> in the
LSP-Ping echo request SHOULD be set to 4 (Reply via application level
control channel).
</t>
<t>
Note that the application level control channel in this case is the reverse
path of the LSP (or Pseudowire) using ACH.
</t>
<t>
The requesting node MAY attach a Source Identifier TLV (<xref
target="src-dst-identifier-tlv"></xref>) to identify the node originating the
request.
</t>
<t>
If the Reply mode indicated in an On-demand CV Request is 4 (Reply via
application level control channel), the On-demand CV reply message MUST be
sent on the reverse path of the LSP using ACH. The On-demand CV payload
MUST directly follow the ACH header and IP and/or UDP headers MUST NOT be
attached. The responding node MAY attach a Source Identifier TLV to identify
the node sending the response.
</t>
<t>
If a node receives an MPLS echo request packet over ACH, without
IP/UDP headers, with a reply mode of 4, and if that node does not have
a return MPLS LSP path to the echo request source, then the node SHOULD
drop the echo request packet and not attempt to send a response.
</t>
<t>
If a node receives an MPLS echo request with a reply mode other
than 4 (reply via application level control channel), and if the node
supports that reply mode, then it MAY respond using that reply mode.
If the node does not support the reply mode requested, or is unable to
reply using the requested reply mode in any specific instance, the node
MUST drop the echo request packet and not attempt to send a response.
</t>
</section>
<section title="Reverse Path Connectivity Verification">
<section title="Requesting Reverse Path Connectivity Verification">
<t>
A new Global flag, Validate Reverse Path (R), is being defined in the
LSP-Ping packet header. When this flag is set in the echo request, the
Responder SHOULD return reverse path FEC information, as described in
<xref target="reverse-path-responder-procedures"></xref>.
</t>
<t>
The R flag MUST NOT be set in the echo response.
</t>
<t>
The Global Flags field is now a bit vector with the following format:
</t>
<figure title="Global Flags Field" align="left" anchor="global-flags-field">
<artwork><![CDATA[
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MBZ |R|T|V|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
</figure>
<t>
The V flag is defined in <xref target="RFC4379"></xref>. The T flag is
defined in <xref target="I-D.ietf-mpls-p2mp-lsp-ping"></xref>.
The R flag is defined in this draft.
</t>
<t>
The Validate FEC Stack (V) flag MAY be set in the echo response when
reverse path connectivity verification is being performed.
</t>
</section>
<section anchor="reverse-path-responder-procedures" title="Responder Procedures">
<t>
When the R flag is set in the echo request, the responding node SHOULD attach
a Reverse-path Target FEC Stack TLV in the echo response. The requesting
node (on receipt of the response) can use the Reverse-path Target FEC Stack
TLV to perform reverse path connectivity verification. For co-routed
bi-directional LSPs, the Reverse-path Target FEC Stack used for On-demand
CV will be the same in both the forward and reverse path of the LSP.
For associated bi-directional LSPs, the target FEC stack MAY be different
for the reverse path.
</t>
<t>
The format of the Reverse-path Target FEC Stack TLV is the same as
that of the Target FEC stack TLV defined in <xref target="RFC4379"></xref>.
The rules for creating a Target FEC stack TLV also apply to the Reverse-path
Target FEC Stack TLV.
</t>
<figure title="Reverse-Path Target FEC Stack TLV Type" align="left"
anchor="reverse-path-target-fec-stack-tlv"> <artwork><![CDATA[
Value TLV
-------- ------------------------------------
TBD-1 Reverse-path Target FEC Stack
]]></artwork>
</figure>
</section>
<section title="Requester Procedures">
<t>
On receipt of the echo response, the requesting node MUST perform the
following checks:
</t>
<t>
<list style="numbers">
<t>
Perform interface and label-stack validation to ensure that the packet
is received on the reverse path of the bi-directional LSP
</t>
<t>
If the Reverse-Path Target FEC Stack TLV is present in the echo
response, then perform FEC validation.
</t>
</list>
</t>
<t>
The verification in this case is performed as described for Target FEC
Stack in section 3.6 of <xref target="RFC4379"></xref>.
</t>
<t>
If any of the validations fail, then the requesting node MUST drop the
echo response and SHOULD log and/or report an error.
</t>
</section>
</section>
<section title="P2MP Considerations">
<t>
<xref target="I-D.ietf-mpls-p2mp-lsp-ping"></xref> describes how
LSP-Ping can be used for OAM on P2MP LSPs with IP encapsulation. This
MUST be supported for MPLS-TP P2MP LSPs when IP addressing is used.
When IP addressing is not used, then the procedures described in <xref
target="lsp-ping-ping"></xref> can be applied to P2MP MPLS-TP LSPs as
well.
</t>
</section>
<section title="Management Considerations for Operation with Static MPLS-TP">
<t>
Support for static MPLS-TP LSP, or Pseudowire, usage and on-demand
CV, MAY require manageable objects to allow, for instance, configuring
operating parameters such as identifiers associated with a statically
configured LSP or PW.
</t>
<t>
The specifics of this manageability requirement are out-of-scope in this
document and SHOULD be addressed in appropriate management specifications.
</t>
</section>
<section title="GAL Label Processing">
<t>
At the Requester, when encapsulating the LSP echo request (LSP Ping)
packet (with the IP ACH, or the non IP ACH, codepoint), a GAL label
MUST be added before adding the MPLS LSP label, and sending the LSP
Ping echo request packet in-band in the MPLS LSP.
</t>
<t>
The GAL label MUST NOT be considered as part of the MPLS label stack
that requires verification by the Responder. For this reason, a NIL
FEC Stack TLV MUST NOT be added or associated with the GAL label.
</t>
<t>
The GAL Label MUST NOT be included in DSMAP or DDMAP TLVs.
</t>
<t>
Interface and label stack TLVs MUST include the whole label stack
including the GAL label.
</t>
</section>
</section>
<section anchor="on-demand-rt" title="Performing on-demand Route Tracing over MPLS-TP LSPs">
<t>
This section specifies how On-demand CV route tracing can be used in the
context of MPLS-TP LSPs. The On-demand CV route tracing function meets the
Route Tracing requirement specified in <xref target="RFC5860"></xref>,
section 2.2.4.
</t>
<t>
This function SHOULD be performed on-demand. This function SHOULD be
performed between End Points and Intermediate Points of PWs and LSPs,
and between End Points of PWs, LSPs and Sections.
</t>
<t>
When performing On-demand CV route tracing, the requesting node inserts
a Downstream Mapping TLV to get the downstream node information and to
enable LSP verification along the transit nodes. The Downstream Mapping
TLV can be used as is for performing route tracing. If IP addressing is
not in use, then the Address Type field in the Downstream Mapping TLV
can be set to "Non IP" (<xref target="dsmap-addr-type"></xref>).
The Downstream Mapping TLV address type field can be extended to include
other address types as need be.
</t>
<section title="On-demand LSP Route Tracing with IP encapsulation">
<t>
The mechanics of On-demand CV route tracing are similar to those described
for ping in <xref target="ip-lsp-ping"></xref>. On-demand Route Tracing
packets sent by the Requester MUST follow procedures described in <xref
target="RFC4379"></xref>. This form of On-demand CV OAM MUST be supported
for MPLS-TP LSPs, when IP addressing is used.
</t>
</section>
<section anchor="lsp-ping-trace"
title="Non-IP based On-demand LSP Route Tracing, using ACH">
<t>
This section describes procedures for performing LSP route tracing
when using LSP-Ping with the ACH header and without any dependency on IP
addressing. The procedures specified in <xref target="lsp-ping-ping"></xref>
with regards to Source Idenfier TLV apply to LSP route tracing as well.
</t>
<section title="Requester procedure for sending echo request packets"
toc="include">
<t>
On-demand Route Tracing packets sent by the Requester MUST adhere to
the format described in <xref target="lsp-ping-ping"></xref>. MPLS-TTL
expiry (as described in <xref target="RFC4379"></xref>) will be used
to direct the packets to specific nodes along the LSP path.
</t>
</section>
<section title="Requester procedure for receiving echo response packets"
toc="include">
<t>
The On-demand CV route tracing responses will be received on the LSP
itself and the presence of an ACH header with channel type of
On-demand CV is an indicator that the packet contains an On-demand CV
payload.
</t>
</section>
<section title="Responder procedure">
<t>
When a echo request reaches the Responder, the presence of the ACH
channel type of On-demand CV will indicate that the packet contains
On-demand CV data. The On-demand CV data, the label stack and the
destination identifier are sufficient to identify the LSP
associated with the echo request packet. If there is an error and
the node is unable to identify the LSP on which the echo response
would be sent, the node MUST drop the echo request packet and not
send any response back. All responses MUST always be sent on a LSP
path using the ACH header and ACH channel type of On-demand CV.
</t>
</section>
</section>
<section title="P2MP Considerations">
<t>
<xref target="I-D.ietf-mpls-p2mp-lsp-ping"></xref> describes how
LSP-Ping can be used for OAM on P2MP LSPs. This MUST be supported for
MPLS-TP P2MP LSPs when IP addressing is used. When IP addressing is
not used, then the procedures described in <xref target="lsp-ping-trace">
</xref> can be applied to P2MP MPLS-TP LSPs as well.
</t>
</section>
<section title="ECMP Considerations">
<t>
On-demand CV using ACH SHOULD NOT be used when there is ECMP (equal
cost multiple paths) for a given LSP. The addition of the additional
ACH header can modify the hashing behavior for OAM packets which
could result in incorrect monitoring of path taken by data traffic.
</t>
</section>
</section>
<section title="Applicability">
<t>
The procedures specified in this document for non-IP encapsulation apply
to MPLS-TP Transport paths. This includes LSPs and PWs when IP
encapsulation is not desired. However, when IP addressing is used, as in
non MPLS-TP LSPs, procedures specified in <xref target="RFC4379"></xref>
MUST be used.
</t>
</section>
<section title="Security Considerations">
<t>
The draft does not itself introduce any new security considerations. Those
discussed in <xref target="RFC4379"></xref> are also applicable to this
document.
</t>
<t>
Unlike typical deployment scenarios identified in <xref target="RFC4379"></xref>,
however, likely deployments of on-demand CV for transport paths involves a
strong possibility that the techniques in this document may be used across
MPLS administrative boundaries. Where this may occur, it is RECOMMENDED that
on-demand OAM is configured as necessary to ensure that Source Identifier
TLVs are included in on-demand CV messages. This will allow implementations
to filter OAM messages arriving from an unexpected or unknown source.
</t>
</section>
<section title="IANA Considerations">
<section title="New Source and Destination Identifier TLVs">
<t>
IANA is requested to assign the following TLV types from the "Label
Switched Paths (LSPs) Ping Parameters - TLVs" Registry, "TLVs and sub-TLVs"
sub-registry (from "Standards Action" TLV type range):
</t>
<figure align="left" anchor="new-addr-tlv-type"
title="New Source/Destination Identifier TLV Type">
<artwork><![CDATA[
Length
Type # TLV Name Octets Reference
------ -------------------- ------ ------------------------
TBD-SRC Source ID TLV 8 this document (sect 2.2)
TBD-DST Destination ID TLV 8 this document (sect 2.2)
]]></artwork>
</figure>
</section>
<section title="New Target FEC Stack Sub-TLVs">
<t>
<xref target="static-fecs"></xref> defines 2 new sub-TLV types for
inclusion within the LSP Ping <xref target="RFC4379"></xref> Target FEC
Stack TLV.
</t>
<t>
IANA is requested to assign sub-type values to the following sub-TLVs
from the "Multiprotocol Label Switching Architecture (MPLS) Label
Switched Paths (LSPs) Ping Parameters - TLVs" registry, "TLVs and sub-TLVs"
sub-registry.
</t>
<figure align="left">
<artwork><![CDATA[
Value Meaning Reference
----- ------------------------- --------------------------
22 Static LSP sub-TLV this document (sect 2.4.1)
23 Static Pseudowire sub-TLV this document (sect 2.4.2)
]]></artwork>
</figure>
</section>
<section title="New Reverse-path Target FEC Stack TLV">
<t>
<xref target="reverse-path-responder-procedures"></xref> defines a new TLV
type for inclusion in the LSP-Ping packet.
</t>
<t>
IANA is requested to assign a type value to the TLV from the "Multiprotocol
Label Switching Architecture (MPLS) Label Switched Paths (LSPs) Ping Parameters -
TLVs" registry, "TLVs and sub-TLVs" sub-registry.
</t>
<figure align="left">
<artwork><![CDATA[
Value Meaning Reference
----- -------------------------- ------------------------
TBD-1 Reverse-path Target FEC this document (sect 3.4)
Stack TLV
]]></artwork>
</figure>
<t>
The sub-TLV space and assignments for this TLV will be the same as
that for the Target FEC Stack TLV. Sub-types for the Target FEC
Stack TLV and the Reverse-path Target FEC Stack TLV MUST be kept the
same. Any new sub-type added to the Target FEC Stack TLV MUST apply
to the Reverse-path Target FEC Stack TLV as well.
</t>
</section>
<section title="New Pseudowire Associated Channel Type">
<t>
On-demand Connectivity Verification requires a unique Associated Channel
Type. IANA is requested to assign a PW ACh Type from the "Pseudowire
Associated Channel Types Registry" as describe below:
</t>
<t>
<figure align="left">
<artwork><![CDATA[
Value Description TLV Follows Reference
------ ------------- ----------- ----------------------
TBD-2 On-Demand CV No this document (sect 3)
]]></artwork>
</figure>
</t>
<t>
ACH TLVs SHALL NOT be associated with this channel type.
</t>
</section>
<section title="New RFC 4379 Registry">
<t>
<xref target="RFC4379"></xref> defined several registries. It also
defined some value assignments without explicitly asking for IANA to
create a registry to support additional value assingments. One such
case is in defining address types associated with the Downstream
Mapping (DSMAP) TLV.
</t>
<t>
This document extends RFC 4379 by defining a new address type for use
with the Downstream Mapping and Downstream Detailed Mapping TLVs.
</t>
<t>
Recognizing that the absence of a registry makes it possible to have
collisions of "address-type" usages, IANA is requested to establish
a new registry - associated with both <xref target="RFC4379"></xref>
and this document - that initially allocates the following assignments:
</t>
<figure align="left" title="Downstream Mapping Address Type Registry">
<artwork><![CDATA[
Type # Address Type K Octets Reference
------ ------------ -------- --------------------------
1 IPv4 Numbered 16 RFC 4379
2 IPv4 Unnumbered 16 RFC 4379
3 IPv6 Numbered 40 RFC 4379
4 IPv6 Unnumbered 28 RFC 4379
5 Non IP 12 this document (sect 2.1.1)
]]></artwork>
</figure>
<t>
Because the field in this case is an 8-bit field, the allocation
policy for this registry is "Standards Action."
</t>
</section>
</section>
<section title="Contributing Authors and Acknowledgements">
<t>
The following individuals contributed materially to this document:
</t>
<t>
<list style="symbols">
<t>Thomas D. Nadeau, CA Technologies</t>
<t>Nurit Sprecher, Nokia Siemens Networks</t>
<t>Yaacov Weingarten, Nokia Siemens Networks</t>
</list>
</t>
<t>
In addition, we would like to thank the following individuals for
their efforts in reviewing and commenting on the document:
</t>
<t>
<list style="symbols">
<t>
Adrian Farrel,
</t>
<t>
Alexander Vaishtein,
</t>
<t>
David Sinicrope (Routing Directorate),
</t>
<t>
Greg Mirsky,
</t>
<t>
Hideki Endo,
</t>
<t>
Huub van Helvoort,
</t>
<t>
Joel Halpern (Routing Directorate),
</t>
<t>
Loa Andersson,
</t>
<t>
Mach Chen,
</t>
<t>
Mahesh Akula,
</t>
<t>
Sam Aldrin,
</t>
<t>
Sandra Murphy (Security Directorate),
</t>
<t>
Yaacov Weingarten,
</t>
<t>
Yoshinori Koike,
</t>
<t>
Zhenlong Cui
</t>
</list>
</t>
</section>
</middle>
<back>
<references title="Normative References">
&RFC2119;
&RFC4379;
&RFC4385;
&RFC5586;
&RFC6370;
&P2MP-LSP-PING;
&DDMAP-DRAFT;
</references>
<references title="Informative References">
&RFC1122;
&RFC1812;
&RFC4446;
&RFC5003;
&RFC5860;
&RFC5884;
&RFC6371;
</references>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-24 17:06:26 |