Network Working Group Sami Boutros (Ed.) Internet Draft Siva Sivabalan (Ed.) Intended status: Standards Track Cisco Systems, Inc. Expires: December 5, 2011 Rahul Aggarwal (Ed.) Juniper Networks, Inc. Martin Vigoureux (Ed.) Alcatel-Lucent Xuehui Dai (Ed.) ZTE Corporation June 5, 2011 MPLS Transport Profile Lock Instruct and Loopback Functions draft-ietf-mpls-tp-li-lb-02.txt Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on December 5, 2011. Abstract Boutros Expires December 5, 2011 [Page 1] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 This document specifies an extension to MPLS Operation, administration, and Maintenance (OAM) to operate an Label Switched Path (LSP), bi-directional RSVP-TE tunnels, Pseudowires (PW), or Multi-segment PWs in loopback mode for management purpose in an MPLS based Transport. This extension includes mechanism to lock and unlock MPLS-TP Tunnels (i.e. data and control traffic) and can be used to loop all traffic (i.e, data and control traffic) at a specified LSR on the path of the LSP in an MPLS based Transport Network back to the source. However, the mechanisms are intended to be applicable to other aspects of MPLS as well. Table of Contents 1. Introduction...................................................3 2. Terminology....................................................5 3. Loopback/Lock Mechanism........................................5 3.1. In-band Message Identification............................5 3.2. LI-LB Message Format......................................6 3.3. Return codes..............................................7 3.4. Cause codes...............................................7 3.5. Authentication TLV........................................8 3.6. LSP Ping Extensions.......................................9 3.6.1. LI-LB Request TLV....................................9 3.6.2. LI-LB Response TLV...................................9 4. Loopback/Lock Operations.......................................9 4.1. Lock Request.............................................10 4.2. Unlock Request...........................................10 4.3. Loopback Request.........................................10 4.4. Loopback Removal.........................................11 5. Data packets..................................................11 6. Operation.....................................................11 6.1. General Procedures.......................................11 6.2. Example Topology.........................................11 6.3. Locking an LSP...........................................12 6.4. Unlocking an LSP.........................................13 6.5. Setting an LSP into Loopback mode........................14 6.6. Removing an LSP from Loopback mode.......................15 7. Security Considerations.......................................16 8. IANA Considerations...........................................16 8.1. Pseudowire Associated Channel Type.......................16 8.2. New LSP Ping TLV types...................................16 9. Acknowledgements..............................................16 10. References...................................................16 10.1. Normative References....................................16 10.2. Informative References..................................17 Author's Addresses...............................................17 Full Copyright Statement.........................................19 Intellectual Property Statement..................................19 Boutros Expires December 5, 2011 [Page 2] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 1. Introduction In traditional transport networks, circuits are provisioned across multiple nodes and service providers have the ability to operate the transport circuit such as T1 line in loopback mode for management purposes, e.g., to test or verify connectivity of the circuit up to a specific node on the path of the circuit, to test the circuit performance with respect to delay/jitter, etc. This document provides the same loopback capability for the bi-directional LSPs in MPLS based Transport Networks emulating traditional transport circuits. The mechanisms in this document apply to co-routed bidirectional paths as defined in [7], which include LSPs, bi-directional RSVP-TE tunnels, Pseudowires (PW), and Multi-segment PWs in MPLS based Transport Networks. However, the mechanisms are intended to be applicable to other aspects of MPLS as well. This document specifies how to operate the Lock and Loopback functions over both the Generic Associated Channel (GACh) and over LSP-Ping. LSP-Ping itself can run either over the GACh or using native IP addressing; the manner in which LSP-Ping is transported in an MPLS-TP network is out of the scope of this document. This document uses a sample topology to describe the lock instruct and loopback functions. This sample topology comprises four MPLS-TP nodes [A---B---C---D]. There is an LSP from A to D, and thus A and D are MEPs and B and C are MIPs. Unless otherwise specified, the operator desires to lock the LSP (this is done on A and D, by definition) and loop the LSP at C. That is, the desired behavior is that all packets transmitted by A on this locked and looped LSP arrive at C from B and are encapsulated in the D->A direction by C such that these packets reach A. Locking and looping an LSP is a two-step process. The first step is to lock the LSP so that it is not made available to carry user traffic. The locking of an LSP is managed by the two MEPs of an LSP - in this example, A and D. Locking is controlled by one of the MEPs; this example uses A. A sends a Lock request message to D along the LSP, either in the GACh or in LSP-Ping. This message will be received by D as it is the far-end MEP for that LSP. D responds to the lock request with an ACK or NACK; the ACK indicates that D has taken the LSP out of service (i.e. Locked the LSP) and the NACK indicates that D cannot comply with the Lock request. In general, if a message (e.g. Lock request, Loopback request) cannot be complied with, the node which received the request replies with a NACK and a cause code; the details of error message processing are discussed later in this document. Boutros Expires December 5, 2011 [Page 3] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 Once A has received the ACK to its Lock request, A is then allowed to put the LSP in Loopback mode. In order to set the LSP in Loopback mode, A sends a Loopback request message to the MIP or MEP where A desired the loopback to be enabled. In this example, A desires to set the loopback at C, although note that it is possible to A to set the loopback at any node downstream of A (e.g. B, C, D). The TTL on the Loopback request message is set by A such that the TTL expires when it reaches the node where A wants the loopback to be set (in this case, C). C responds to the Loopback request with a reply message (ACK/NACK) back to A to indicate whether it has successfully set the LSP into the Loopback mode. If A receives an ACK from its Loopback request, the LSP is now in Loopback mode. A is free to send any test packets down this LSP as it sees fit. These packets MUST NOT be forwared towards D. As the LSP is locked, D MUST NOT transmit any traffic on the LSP in the reverse direction (that is, D->A). Any traffic received by C from the reverse direction MUST be dropped and MAY be logged, as the receipt of traffic by C in the D->A direction indicates an error. When A desires to remove the LSP from Loopback state, it begins to reverse the Loopback and Lock. This is a two-step process; first A removes the Loopback from C, then A removes the Lock from D. This process is similar to the process of establishing Lock and Loopback in the first place. A sends a Loopback Remove message to C using the TTL method described above, and C ACKs or NACKs the Loopback Remove. Once A receives the Loopback Remove ACK from C, A sends a Lock Remove message to D. D must ACK or NACK this message. Once A receives the Lock Remove ACK from D, the LSP is brought back into normal operation. The proposed mechanism is based on a new set of messages and TLVs which can be transported using one of the following methods: (1) An in-band MPLS message transported using a new ACH code point, the message will have different types to perform the loopback request/remove and Lock/unlock functions, and may carry new set of TLVs. (2) A new set of TLVs which can be transported using LSP-Ping extensions defined in [4], and in compliance to specifications [5]. Method (1) and (2) are referred to as "in-band option" and "LSP-Ping option" respectively in the rest of the document. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC-2119 [3]. Boutros Expires December 5, 2011 [Page 4] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 2. Terminology ACH: Associated Channel Header LSR: Label Switching Router MEP: Maintenance Entity Group End Point MIP: Maintenance Entity Group Intermediate Point. MPLS-TP: MPLS Transport Profile MPLS-OAM: MPLS Operations, Administration and Maintenance MPLS-TP LSP: Bidirectional Label Switch Path representing a circuit NMS: Network Management System TLV: Type Length Value TTL: Time To Live LI-LB: Lock instruct-Loopback 3. Loopback/Lock Mechanism For the in-band option, the proposed mechanism uses a new code point in the Associated Channel Header (ACH) described in [6]. 3.1. In-band Message Identification In the in-band option, the LI-LB channel is identified by the ACH as defined in RFC 5586 [6] with the Channel Type set to the LI-LB code point = 0xHH. [HH to be assigned by IANA from the PW Associated Channel Type registry] The LI-LB Channel does not use ACH TLVs and MUST not include the ACH TLV header. The LI-LB ACH Channel is shown below. 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 0 0 1|Version|Reserved | 0xHH ( LI-LB) | +-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: ACH Indication of LI-LB The LI-LB Channel is 0xHH (to be assigned by IANA) Boutros Expires December 5, 2011 [Page 5] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 3.2. LI-LB Message Format The format of an LI-LB Message is shown below. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Version | Message Type | Operation | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Return Code | Cause Code | Message Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender's Handle | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Message ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TLV's | ~ ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2: MPLS LI-LB Message Format Version: The Version Number is currently 1. (Note: the version number is to be incremented whenever a change is made that affects the ability of an implementation to correctly parse or process the request/response message. These changes include any syntactic or semantic changes made to any of the fixed fields, or to any Type- Length-Value (TLV) or sub-TLV assignment or format that is defined at a certain version number. The version number may not need to be changed if an optional TLV or sub-TLV is added.) Message Type Two message types are defined as shown below. Message Type Description ------------ ------------- 0x0 LI-LB request 0x1 LI-LB response Operation Four operations are defined as shown below. The operations can appear in a Request or Response message. Operation Description --------- ------------- 0x1 Lock 0x2 Unlock 0x3 Set_Loopback Boutros Expires December 5, 2011 [Page 6] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 0x4 Unset_Loopback Message Length The total length of any included TLVs. Sender's Handle The Sender's Handle is filled in by the sender, and MUST be copied unchanged by the receiver in the MPLS response message (if any). There are no semantics associated with this handle, although a sender may find this useful for matching up requests with replies. Message ID The Message ID is set by the sender of an MPLS request message. It MUST be copied unchanged by the receiver in the MPLS response message (if any). A sender SHOULD increment this value on each new message. A retransmitted message SHOULD leave the value unchanged. The Return code and Cause code only have meaning in a Response message. In a request message the Return code and Cause code must be set to zero and ignored on receipt. Return codes and cause codes are described in the following Sections. 3.3. Return codes Value Meaning ----- ------- 0 Informational 1 Success 2 Failure 3.4. Cause codes Value Meaning ----- ------- 0 Success 1 Fail to match target MIP/MEP ID 2 Malformed LI-LB request received 3 One or more of the TLVs is/are unknown 4 Authentication failed 5 LSP/PW already locked 6 LSP/PW already unlocked 7 Fail to lock LSP/PW Boutros Expires December 5, 2011 [Page 7] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 8 Fail to unlock LSP/PW 9 LSP/PW already in loopback mode 10 LSP/PW is not in loopback mode 11 Fail to set LSP/PW in loopback mode 12 Fail to remove LSP/PW from loopback mode 13 No label binding for received message 14 Authentication required but not received. Note that in the case of cause code 3, the unknown TLV can also be optionally included in the response. For failure responses with multiple causes only the first cause code can be included. 3.5. Authentication TLV 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 = TBD | Length = 0xx | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Variable Length Value | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The PPP CHAP described in [9] will be used to authenticate the LI-LB request. The variable length value carried in the optional authentication TLV, will include the Packet Format described in section 3.2 of [9]. The optional authentication TLV can be included in the MPLS OAM LSP Ping echo messages containing a LI-LB request TLV or in the inband LI-LB Message. When an authentication TLV is present in the Request message the CHAP procedures described in section 3.2 of [9] MUST be followed. The CHAP packets will be transmitted by the authenticator using LI-LB Request or response messages, responses to the authentication protocol messages will be transmitted using LI-LB request or response messages. If the CHAP negotiation results in a failure, the authenticator or the sender of the request message MUST stop requesting the LI-LB function. A receiver of an LI-LB request, MAY send an error "Authentication required but not received", if the optional authentication TLV is not included in the LI-LB request. Boutros Expires December 5, 2011 [Page 8] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 3.6. LSP Ping Extensions 3.6.1. LI-LB Request TLV 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 = TBD | length = 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Operation | +-+-+-+-+-+-+ Operation Description --------- ------------- 0x1 Lock 0x2 Unlock 0x3 Set_Loopback 0x4 Unset_Loopback A MEP includes a LI-LB Request TLV in the MPLS LSP Ping echo request message to request the MEP on the other side of the LSP toperform Lock/Unlock and Set/Unset Loopback operations. Only one LI-LB request TLV can be present in an LSP Ping Echo request message. 3.6.2. LI-LB Response TLV 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 = TBD | Length = 0x3 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Operation | ReturnCode | CauseCode | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Only one LI-LB response TLV can be present in an LSP Ping Echo request message. 4. Loopback/Lock Operations When performing a Lock or Loopback function, the reply to a message MUST use the same method as the original message. That is, if a node requests lock or loopback using LSP Ping then any replies to that request must also use LSP Ping; if a node requests lock or loopback using in-band, any replies to that request must use in-band. It is permissible to use different methods for the lock and the loopback functions on a given LSP. For example, a node can lock an LSP using the LSP Ping method and then can loop the LSP using the in-band method, or vice versa. Boutros Expires December 5, 2011 [Page 9] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 An ACK response of a request will be a response message with return code 1 (success) and cause code 0, while a NACK response will have a return code 2 (failure) and the corresponding cause code. 4.1. Lock Request Lock Request is used to request a MEP to take an LSP out of service so that some form of maintenance can be done. The receiver MEP MUST send either an ACK or a NAK response to the sender MEP. Until the sender MEP receives an ACK, it MUST NOT assume that the receiver MEP has taken the LSP out of service. A receiver MEP sends an ACK only if it can successfully lock the LSP. Otherwise, it sends a NAK. The receiver MEP once locked, MUST discard all received traffic. 4.2. Unlock Request The Unlock Request is sent from the MEP which has previously sent lock request. Upon receiving the unlock request message, the receiver MEP brings the LSP back in service. The receiver MEP MUST send either an ACK or a NAK response to the sender MEP. Until the sender MEP receives an ACK, it MUST NOT assume that the LSP has been put back in service. A receiver MEP sends an ACK only if the LSP has been unlocked, and unlock operation is successful. Otherwise, it sends a NAK. 4.3. Loopback Request When a MEP wants to put an LSP in loopback mode, it sends a Loopback request message. The message can be intercepted by either a MIP or a MEP depending on the MPLS TTL value. The receiver puts in corresponding LSP in loopback mode. The receiver MEP or MIP MUST send either an ACK or NAK response to the sender MEP. An ACK response is sent if the LSP is successfully put in loopback mode. Otherwise, a NAK response is sent. Until an ACK response is received, the sender MEP MUST NOT assume that the LSP can operate in loopback mode. Boutros Expires December 5, 2011 [Page 10] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 4.4. Loopback Removal When loopback mode operation of an LSP is no longer required, the MEP that previously sent the Loopback request message sends another Loopback Removal message. The receiver MEP changes the LSP from loopback mode to normal mode of operation. The receiver MEP or MIP MUST send either an ACK or NAK response to the sender MEP. An ACK response is sent if the LSP is already in loopback mode, and if the LSP is successfully put back in normal operation mode. Otherwise, a NAK response is sent. Until an ACK response is received, the sender MEP MUST NOT assume that the LSP is put back in normal operation mode. 5. Data packets Data packets sent from the sender MEP will be looped back to that sender MEP. OAM packets not intercepted by TTL expiry will as well be looped back. The use of data packets to measure packet loss, delay and delay variation is outside the scope of this document. 6. Operation 6.1. General Procedures When placing an LSP into Loopback mode, the operation MUST first be preceded by a Lock operation. When sending Loopback Request/Removal using LSP Ping or in-Band messages the TTL of the topmost label is set as follows:- If the target node is a MIP, the TTL MUST be set to the exact number of hops required to reach that MIP. If the target node is a MEP, the value MUST be set to at least the number of hops required to reach that MEP. For most operations where the target is a MEP, the TTL MAY be set to 255. However, to remove a MEP from Loopback mode, the sending MEP MUST set the TTL to the exact number of hops required to reach the MEP (if the TTL were set higher, the Loopback removal message would be looped back toward the sender). 6.2. Example Topology The next four sections discuss the procedures for Locking, Unlocking, setting an LSP into loopback, and removing the loopback. The description is worded using an example. Assume an LSP traverses nodes A <--> B <--> C <--> D. We will refer to the Maintenance Entities Boutros Expires December 5, 2011 [Page 11] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 involved as MEP-A, MIP-B, MIP-C, and MEP-D respectively. Suppose a maintenance operation invoked at MEP-A requires a loopback be set at MIP-C. To invoke Loopack mode at MIP-C, A would first need to lock the LSP. Then it may proceed to set the loopback at C. Following the loopback operation, A would need to remove the loopback at C and finally unlock the LSP. The following sections describe MEP-A setting and unsetting a lock at MEP-D and then setting and removing a loopback at MIP-C. 6.3. Locking an LSP 1. MEP-A sends an MPLS LSP Ping Echo request message with the Lock TLV or an in-Band Lock request Message. Optionally, an authentication TLV MAY be included. 2. Upon receiving the request message, D uses the received label stack and the Target Stack FEC TLV as per [5]/source MEP-ID to identify the LSP. If no label binding exists or there is no associated LSP back to the originator, the event is logged. Processing ceases. Otherwise the message is delivered to the target MEP. a. if the source MEP-ID does not match, the event is logged and processing ceases. b. if the target MEP-ID does not match, MEP-D sends a failure response with cause code 1. MEP-D then examines the message, and: c. if the message is malformed, it sends a failure response with cause code 2 back to MEP-A. d. if message authentication fails, it MAY send a failure response with cause code 4 back to MEP-A. e. if any of the TLVs is not known, it sends a failure response with cause code 3 back to MEP-A. It may also include the unknown TLVs. f. if the LSP is already locked, it sends a response with cause code 5 back to MEP-A. g. if the LSP is not already locked and cannot be locked, it sends a failure response with cause code 7 back to A. h. if the LSP is successfully locked, it sends a success response with cause code 0 (Success) back to MEP-A. Boutros Expires December 5, 2011 [Page 12] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 The response is sent using an MPLS LSP Ping echo reply with a response TLV or an in-Band Lock response message. An authentication TLV MAY be included. MEP-D will lock the LSP, resulting in that all traffic from D to A, including all OAM traffic, stops. a. MEP-A will detect a discontinuation in the OAM traffic, e.g. cv and cc packets, but since it has been informed that the LSP will be locked it will take no action(s). b. When MEP-A receives the LI ACK, MEP-A discontinues sending other OAM traffic, e.g. cv and cc packets. MEP-D will detect this, but since it is in Locked state it will take no action. 6.4. Unlocking an LSP 1. MEP-A sends an MPLS Echo request message with the unLock TLV or an in-Band unLock request Message. Optionally, an authentication TLV MAY be included. 2. Upon receiving the unLock request message, D uses the received label stack and target FEC/source MEP-ID as per [5] to identify the LSP. If no label binding exists or there is no associated LSP back to the originator, the event is logged. Processing ceases. Otherwise the message is delivered to the target MEP. a. if the source MEP-ID does not match, the event is logged and processing ceases. b. if the target MEP-ID does not match, MEP-D sends a failure response with cause code 1. MEP-D then examines the message, and: c. if the message is malformed, it sends a failure response with cause code 2 back to MEP-A. d. if message authentication fails, it MAY send a failure response with cause code 4 back to MEP-A. e. if any of the TLVs is not known, it sends a failure response with cause code 3 back to MEP-A. It may also include the unknown TLVs. f. if the LSP is already unlocked, it sends a response with cause code 6 back to MEP-A. g. if the LSP is locked and cannot be unlocked, it sends a response with cause code 8 back to MEP-A. Boutros Expires December 5, 2011 [Page 13] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 h. if the LSP is successfully unlocked, it sends a success response with cause code 0 (Success) back to MEP-A. The response is sent using an MPLS LSP Ping echo reply with a response TLV or an in-Band unlock response message. An authentication TLV MAY be included. 6.5. Setting an LSP into Loopback mode 1. MEP-A sends an MPLS LSP Ping Echo request message with the loopback TLV or an in-Band Loopback request message. Optionally, an authentication TLV MAY be included. 2. Upon intercepting the MPLS Loopback message via TTL expiration, C uses the received label stack and target FEC/source MEP-ID as per [5] to identify the LSP. If no label binding exists or there is no associated LSP back to the originator, the event is logged. Processing ceases. Otherwise the message is delivered to the target MIP/MEP - in this case MIP-C. a. if the source MEP-ID does not match, the event is logged and processing ceases. b. if the target MIP-ID does not match, MIP-C sends a failure response with cause code 1. MIP-C then examines the message, and: c. if the message is malformed, it sends a failure response with cause code 2 back to MEP-A. d. if the message authentication fails, it sends a failure response with cause code 4 back to MEP-A. e. if any of the TLV is not known, C sends a failure response with cause code 3 back to MEP-A. It may also include the unknown TLVs. f. if the LSP is already in the requested loopback mode, it sends a failure response with cause code 9 back to MEP-A. g. if the LSP is not already in the requested loopback mode and that loopback mode cannot be set, it sends a failure response with cause code 11 back to MEP-A. h. if the LSP is successfully programmed into the requested loopback mode, it sends a success response with cause code 0 (Success) back to MEP-A. Boutros Expires December 5, 2011 [Page 14] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 The response is sent using an MPLS LSP Ping echo reply with a response TLV or an in-Band Loopback response message. An authentication TLV MAY be included. 6.6. Removing an LSP from Loopback mode 1. MEP-A sends a MPLS LSP Ping Echo request message with the Loopback removal TLV or an in-Band Loopback removal request message. Optionally, an authentication TLV MAY be included. 2. Upon intercepting the MPLS Loopback removal message via TTL expiration, C uses the received label stack and the target FEC/source MEP-ID as per [5] to identify the LSP. If no label binding exists or there is no associated LSP back to the originator, the event is logged. Processing ceases. Otherwise the message is delivered to the target MIP/MEP - in this case MIP-C. a. if the source MEP-ID does not match, the event is logged and processing ceases. b. if the target MIP-ID does not match, MIP-C sends a failure response with cause code 1 back to MEP-A. MIP-C then examines the message, and: c. if the message is malformed, it sends a failure response with cause code 2 back to MEP-A. d. if the message authentication fails, it sends a failure response with cause code 4 back to MEP-A. e. if any of the TLV is not known, C sends a failure response with cause code 3 back to MEP-A. It may also include the unknown TLVs. f. if the LSP is not in loopback mode, it sends a failure response with cause code 10 back to MEP-A. g. if the LSP loopback cannot be removed, it sends a failure response with cause code 12 back to MEP-A. h. if the LSP is successfully changed from loopback mode to normal mode of operation, it sends a reply with cause code 0 (Success ) back to MEP-A. The response is sent using an MPLS LSP Ping echo reply with a response TLV or an in-Band Loopback removal response message. An authentication TLV MAY be included. Boutros Expires December 5, 2011 [Page 15] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 7. Security Considerations Security is addressed through the use of authentication TLV and the the Challenge-Handshake Authentication protocol procedures described in section [9]. 8. IANA Considerations 8.1. Pseudowire Associated Channel Type LI-LB OAM requires a unique Associated Channel Type which is assigned by IANA from the Pseudowire Associated Channel Types Registry. Registry: Value Description TLV Follows Reference ----------- ----------------------- ----------- --------- 0xHHHH LI-LB No (Section 3.1) 8.2. New LSP Ping TLV types IANA is requested to assign TLV type values to the following TLVs from the "Multiprotocol Label Switching Architecture (MPLS) Label Switched Paths (LSPs) Parameters - TLVs" registry, "TLVs and sub- TLVs" sub-registry. 1. LI-LB Request TLV (See section 3.3.1) 2. LI-LB Response TLV (See section 3.3.2) 3. Authentication TLV (See section 3.3.3) 9. Acknowledgements The authors would like to thank Loa Andersson for his valuable comments. 10. References 10.1. Normative References [1] Niven-Jenkins, B., Brungard, D., Betts, M., Sprecher, N., and S. Ueno, "Requirements of an MPLS Transport Profile", RFC 5654, September 2009. [2] Vigoureux, M., Ward, D., and M. Betts, "Requirements for Operations, Administration, and Maintenance (OAM) in MPLS Transport Networks", RFC 5860, May 2010. [3] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. Boutros Expires December 5, 2011 [Page 16] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 [4] K. Kompella, G. Swallow, "Detecting Multi-Protocol Label Switched (MPLS) Data Plane Failures", RFC 4379, February 2006. [5] N. Bahadur, et. al., "MPLS on-demand Connectivity Verification, Route Tracing and Adjacency Verification", draft-ietf-mpls-tp- on-demand-cv-00, work in progress, June 2010 [6] Bocci, M., Vigoureux, M., and S. Bryant, "MPLS Generic Associated Channel", RFC 5586, June 2009. [7] Bocci, M. and G. Swallow, "MPLS-TP Identifiers", draft-ietf- mpls-tp-identifiers-01 (work in progress), June 2010. [8] Niven-Jenkins, B., Brungard, D., Betts, M., Sprecher, N., and S.Ueno, "Requirements of an MPLS Transport Profile", RFC 5654, September 2009. [9] B. Lloyd, L&A, and W. Simpson, "PPP Authentication Protocols", October 1992. 10.2. Informative References [10] Nabil Bitar, et. al, "Requirements for Multi-Segment Pseudowire Emulation Edge-to-Edge (PWE3) ", RFC5254, October 2008. Author's Addresses Sami Boutros Cisco Systems, Inc. Email: sboutros@cisco.com Siva Sivabalan Cisco Systems, Inc. Email: msiva@cisco.com Rahul Aggarwal Juniper Networks. EMail: rahul@juniper.net Martin Vigoureux Alcatel-Lucent. Email: martin.vigoureux@alcatel-lucent.com Xuehui Dai ZTE Corporation. Email: dai.xuehui@zte.com.cn Boutros Expires December 5, 2011 [Page 17] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 George Swallow Cisco Systems, Inc. Email: swallow@cisco.com David Ward Juniper Networks. Email: dward@juniper.net Stewart Bryant Cisco Systems, Inc. Email: stbryant@cisco.com Carlos Pignataro Cisco Systems, Inc. Email: cpignata@cisco.com Eric Osborne Cisco Systems, Inc. Email: eosborne@cisco.com Nabil Bitar Verizon. Email: nabil.bitar@verizon.com Italo Busi Alcatel-Lucent. Email: italo.busi@alcatel-lucent.it Lieven Levrau Alcatel-Lucent. Email: llevrau@alcatel-lucent.com Laurent Ciavaglia Alcatel-Lucent. Email: laurent.ciavaglia@alcatel-lucent.com Bo Wu ZTE Corporation. Email: wu.bo@zte.com.cn Boutros Expires December 5, 2011 [Page 18] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 Jian Yang ZTE Corporation. Email: yang_jian@zte.com.cn Full Copyright Statement Copyright (c) 2008 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. All IETF Documents and the information contained therein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION THEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property Statement The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Copies of Intellectual Property disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement any standard or specification contained in an IETF Document. Please address the information to the IETF at ietf-ipr@ietf.org. Boutros Expires December 5, 2011 [Page 19] Internet-Draft draft-ietf-mpls-tp-li-lb-02.txt June 2011 The definitive version of an IETF Document is that published by, or under the auspices of, the IETF. Versions of IETF Documents that are published by third parties, including those that are translated into other languages, should not be considered to be definitive versions of IETF Documents. The definitive version of these Legal Provisions is that published by, or under the auspices of, the IETF. Versions of these Legal Provisions that are published by third parties, including those that are translated into other languages, should not be considered to be definitive versions of these Legal Provions. For the avoindance od doubt, each Contributor to the UETF Standards Process licenses each Contribution that he or she makes as part of the IETF Standards Process to the IETF Trust pursuant to the provisions of RFC 5378. No language to the contrary, or terms, conditions or rights that differ from or are inconsistent with the rights and licenses granted under RFC 5378, shall have any effect and shall be null and void, whether published or posted by such Contributor, or included with or in such Contribution. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society. Boutros Expires December 5, 2011 [Page 20]