MPLS Working Group E. Bellagamba, Ed. Internet-Draft L. Andersson Intended status: Standards Track Ericsson Expires: October 15, 2012 P. Skoldstrom, Ed. Acreo AB D. Ward J. Drake Juniper April 13, 2012 Configuration of Pro-Active Operations, Administration, and Maintenance (OAM) Functions for MPLS-based Transport Networks using LSP Ping draft-ietf-mpls-lsp-ping-mpls-tp-oam-conf-04 Abstract This specification describes the configuration of pro-active MPLS-TP Operations, Administration, and Maintenance (OAM) Functions for a given LSP using a set of TLVs that are carried by the LSP Ping protocol This document is a product of a joint Internet Engineering Task Force (IETF) / International Telecommunication Union Telecommunication Standardization Sector (ITU-T) effort to include an MPLS Transport Profile within the IETF MPLS and PWE3 architectures to support the capabilities and functionalities of a packet transport network. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. 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." This Internet-Draft will expire on October 15, 2012. Copyright Notice Copyright (c) 2012 IETF Trust and the persons identified as the Bellagamba, et al. Expires October 15, 2012 [Page 1] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 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. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Contributing Authors . . . . . . . . . . . . . . . . . . . 4 1.2. Requirements Language . . . . . . . . . . . . . . . . . . 4 2. Overview of MPLS OAM for Transport Applications . . . . . . . 4 3. Theory of Operations . . . . . . . . . . . . . . . . . . . . . 5 3.1. MPLS OAM Configuration Operation Overview . . . . . . . . 5 3.1.1. Configuration of BFD sessions . . . . . . . . . . . . 5 3.1.2. Configuration of Performance Monitoring . . . . . . . 6 3.1.3. Configuration of Fault Management Signals . . . . . . 6 3.2. OAM Functions TLV . . . . . . . . . . . . . . . . . . . . 7 3.2.1. BFD Configuration sub-TLV . . . . . . . . . . . . . . 8 3.2.1.1. Local Discriminator sub-TLV . . . . . . . . . . . 10 3.2.1.2. Negotiation Timer Parameters sub-TLV . . . . . . . 10 3.2.1.3. BFD Authentication sub-TLV . . . . . . . . . . . . 12 3.2.2. MPLS OAM Source MEP-ID sub-TLV . . . . . . . . . . . . 12 3.2.3. Performance Monitoring sub-TLV . . . . . . . . . . . . 13 3.2.3.1. MPLS OAM PM Loss sub-TLV . . . . . . . . . . . . . 14 3.2.3.2. MPLS OAM PM Delay sub-TLV . . . . . . . . . . . . 16 3.2.4. MPLS OAM FMS sub-TLV . . . . . . . . . . . . . . . . . 17 3.3. IANA Considerations . . . . . . . . . . . . . . . . . . . 18 4. OAM configuration errors . . . . . . . . . . . . . . . . . . . 18 5. Security Considerations . . . . . . . . . . . . . . . . . . . 19 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 19 6.1. Normative References . . . . . . . . . . . . . . . . . . . 19 6.2. Informative References . . . . . . . . . . . . . . . . . . 20 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 21 Bellagamba, et al. Expires October 15, 2012 [Page 2] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 1. Introduction This document describes the configuration of pro-active MPLS-TP Operations, Administration, and Maintenance (OAM) Functions for a given LSP using TLVs carried in LSP Ping [BFD-Ping]. In particular it specifies the mechanisms necessary to establish MPLS-TP OAM entities at the maintenance points for monitoring and performing measurements on an LSP, as well as defining information elements and procedures to configure pro-active MPLS OAM functions running between LERs. Initialization and control of on-demand MPLS OAM functions are expected to be carried out by directly accessing network nodes via a management interface; hence configuration and control of on-demand OAM functions are out-of-scope for this document. The Transport Profile of MPLS must, by definition [RFC5654], be capable of operating without a control plane. Therefore there are three options for configuring MPLS-TP OAM, without a control plane by either using an NMS or LSP Ping, or with a control plane using signaling protocols RSVP-TE and/or T-LDP. Pro-active MPLS OAM is performed by three different protocols, Bidirectional Forwarding Detection (BFD) [RFC6428] for Continuity Check/Connectivity Verification, the delay measurement protocol (DM) [RFC6374] for delay and delay variation (jitter) measurements, and the loss measurement protocol (LM) [RFC6374] for packet loss and throughput measurements. Additionally there is a number of Fault Management Signals that can be configured. BFD is a protocol that provides low-overhead, fast detection of failures in the path between two forwarding engines, including the interfaces, data link(s), and to the extent possible the forwarding engines themselves. BFD can be used to track the liveliness and detect data plane failures of MPLS-TP point-to-point and might also be extended to support point-to-multipoint connections. The delay and loss measurements protocols [RFC6374] use a simple query/response model for performing bidirectional measurements that allows the originating node to measure packet loss and delay in both directions. By timestamping and/or writing current packet counters to the measurement packets at four times (Tx and Rx in both directions) current delays and packet losses can be calculated. By performing successive delay measurements the delay variation (jitter) can be calculated. Current throughput can be calculated from the packet loss measurements by dividing the number of packets sent/ received with the time it took to perform the measurement, given by the timestamp in LM header. Combined with a packet generator the throughput measurement can be used to measure the maximum capacity of a particular LSP. Bellagamba, et al. Expires October 15, 2012 [Page 3] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 MPLS Transport Profile (MPLS-TP) describes a profile of MPLS that enables operational models typical in transport networks, while providing additional OAM, survivability and other maintenance functions not currently supported by MPLS. [RFC5860] defines the requirements for the OAM functionality of MPLS-TP. This document is a product of a joint Internet Engineering Task Force (IETF) / International Telecommunication Union Telecommunication Standardization Sector (ITU-T) effort to include an MPLS Transport Profile within the IETF MPLS and PWE3 architectures to support the capabilities and functionalities of a packet transport network. 1.1. Contributing Authors This document is the result of a large team of authors and contributors. The following is a list of the co-authors: Gregory Mirsky 1.2. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 2. Overview of MPLS OAM for Transport Applications [MPLS-TP-OAM-FWK] describes how MPLS OAM mechanisms are operated to meet transport requirements outlined in [RFC5860]. [BFD-CCCV] specifies two BFD operation modes: 1) "CC mode", which uses periodic BFD message exchanges with symmetric timer settings, supporting Continuity Check, 2) "CV/CC mode" which sends unique maintenance entity identifiers in the periodic BFD messages supporting Connectivity Verification as well as Continuity Check. [RFC6374] specifies mechanisms for performance monitoring of LSPs, in particular it specifies loss and delay measurement OAM functions. [MPLS-FMS] specifies fault management signals with which a server LSP can notify client LSPs about various fault conditions to suppress alarms or to be used as triggers for actions in the client LSPs. The following signals are defined: Alarm Indication Signal (AIS), Link Down Indication (LDI) and Locked Report (LKR). To indicate client faults associated with the attachment circuits Client Signal Failure Indication (CSF) can be used. CSF is described in [MPLS-TP-OAM-FWK] and in the context of this document is for further study. Bellagamba, et al. Expires October 15, 2012 [Page 4] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 [MPLS-TP-OAM-FWK] describes the mapping of fault conditions to consequent actions. Some of these mappings may be configured by the operator, depending on the application of the LSP. The following defects are identified: Loss Of Continuity (LOC), Misconnectivity, MEP Misconfiguration and Period Misconfiguration. Out of these defect conditions, the following consequent actions may be configurable: 1) whether or not the LOC defect should result in blocking the outgoing data traffic; 2) whether or not the "Period Misconfiguration defect" should result in a signal fail condition. 3. Theory of Operations 3.1. MPLS OAM Configuration Operation Overview LSP Ping, or alternatively RSVP-TE [RSVP-TE CONF], can be used to simply enable the different OAM functions, by setting the corresponding flags in the "OAM Functions TLV". Additionally one may include sub-TLVs for the different OAM functions in order to specify different parameters in detail. The presence of OAM configuration TLVs at intermediate nodes is justified because the intermediate nodes need to forward the LSP-ping message to the end point. No TLV processing or modification or following OAM actions need to be taken at the intermediate points. 3.1.1. Configuration of BFD sessions For this specification, BFD MUST be run in either one of the two modes: - Asynchronous mode, where both sides should be in active mode - Unidirectional mode In the simplest scenario LSP Ping, or alternatively RSVP-TE [RSVP-TE CONF], is used only to bootstrap a BFD session for an LSP, without any timer negotiation. Timer negotiation can be performed either in subsequent BFD control messages (in this case the operation is similar to LSP Ping based bootstrapping described in [RFC5884]) or directly in the LSP ping configuration messages. When BFD Control packets are transported in the G-ACh they are not protected by any end-to-end checksum, only lower-layers are providing error detection/correction. A single bit error, e.g. a flipped bit in the BFD State field could cause the receiving end to wrongly Bellagamba, et al. Expires October 15, 2012 [Page 5] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 conclude that the link is down and in turn trigger protection switching. To prevent this from happening the "BFD Configuration sub-TLV" has an Integrity flag that when set enables BFD Authentication using Keyed SHA1 with an empty key (all 0s) [RFC5880]. This would make every BFD Control packet carry an SHA1 hash of itself that can be used to detect errors. If BFD Authentication using a pre-shared key / password is desired (i.e. actual authentication and not only error detection) the "BFD Authentication sub-TLV" MUST be included in the "BFD Configuration sub-TLV". The "BFD Authentication sub-TLV" is used to specify which authentication method that should be used and which pre-shared key / password that should be used for this particular session. How the key exchange is performed is out of scope of this document. 3.1.2. Configuration of Performance Monitoring It is possible to configure Performance Monitoring functionalities such as Loss, Delay and Throughput as described in [RFC6374]. When configuring Performance monitoring functionalities it can be chosen either the default configuration (by only setting the respective flags in the "OAM functions TLV") or a customized configuration (by including the respective Loss and/or Delay sub- TLVs). 3.1.3. Configuration of Fault Management Signals Additional OAM functions may be configured by setting the appropriate flags in the "OAM Functions TLV", these include Performance Measurements (packet loss, throughput, delay, and delay variation) and Fault Management Signal handling. By setting the PM Loss flag in the "OAM Functions TLV" and including the "MPLS OAM PM Loss sub-TLV" one can configure the measurement interval and loss threshold values for triggering protection. Delay measurements are configured by setting PM Delay flag in the "OAM Functions TLV" and including the "MPLS OAM PM Loss sub-TLV" one can configure the measurement interval and the delay threshold values for triggering protection. To configure Fault Monitoring Signals and their refresh time the FMS flag in the "OAM Functions TLV" MUST be set and the "MPLS OAM FMS sub-TLV" included. If an intermediate point is meant to originate fault management signal messages this mean that such intermediate point is associated to a server MEP through a co-located MPLS-TP client/server adaptation function and such server MEP needs to be Bellagamba, et al. Expires October 15, 2012 [Page 6] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 configured by its own LSP-ping session (or, in alternative, NMS or RSVP-TE). 3.2. OAM Functions TLV The "OAM Functions TLV" depicted below is carried as a TLV of the LSP Echo request/response messages. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OAM Func. Type (16) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |C|V|L|D|F| OAM Function Flags | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ sub-TLVs ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The "OAM Functions TLV" contains a number of flags indicating which OAM functions should be activated as well as OAM function specific sub-TLVs with configuration parameters for the particular function. Type: indicates a new type, the "OAM Functions TLV" (IANA to define, suggested value 16). Length: the length of the OAM Function Flags field including the total length of the sub-TLVs in octets. OAM Function Flags: a bitmap numbered from left to right as shown in the figure. These flags are defined in this document: OAM Function Flag bit# Description --------------------- --------------------------- 0 (C) Continuity Check (CC) 1 (V) Connectivity Verification (CV) 2 (F) Fault Management Signals (FMS) 3 (L) Performance Monitoring/Loss (PM/Loss) 4 (D) Performance Monitoring/Delay (PM/Delay) 5 (T) Throughput Measurement 6-31 Reserved (set all to 0s) Sub-TLVs corresponding to the different flags are as follows: Bellagamba, et al. Expires October 15, 2012 [Page 7] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 - "BFD Configuration sub-TLV", which MUST be included if the CC and/or the CV OAM Function flag is set. This sub-TLV MUST carry a "BFD Local Discriminator sub-TLV" and a "Timer Negotiation Parameters sub-TLV" if the N flag is cleared. "MPLS OAM Source MEP-ID sub-TLV" MUST also be included. If the I flag is set, the "BFD Authentication sub-TLV" may be included. - "MPLS OAM PM Loss sub-TLV" within the "Performance Monitoring sub-TLV", which MAY be included if the PM/Loss OAM Function flag is set. If the "MPLS OAM PM Loss sub-TLV" is not included, default configuration values are used. Such sub-TLV MAY also be included in case the Throughput function flag is set and there is the need to specify measurement interval different from the default ones. In fact the throughput measurement make use of the same tool as the loss measurement, hence the same TLV is used. - "MPLS OAM PM Delay sub-TLV" within the "Performance Monitoring sub-TLV", which MAY be included if the PM/Delay OAM Function flag is set. If the "MPLS OAM PM Delay sub-TLV" is not included, default configuration values are used. - "MPLS OAM FMS sub-TLV", which MAY be included if the FMS OAM Function flag is set. If the "MPLS OAM FMS sub-TLV" is not included, default configuration values are used. 3.2.1. BFD Configuration sub-TLV The "BFD Configuration sub-TLV" (depicted below) is defined for BFD OAM specific configuration parameters. The "BFD Configuration sub- TLV" is carried as a sub-TLV of the "OAM Functions TLV". This TLV accommodates generic BFD OAM information and carries sub- TLVs. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BFD Conf. Type (1) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Vers.| PHB |N|S|I|G|U|B| Reserved (set to all 0s) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ sub TLVs ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "BFD Configuration sub-TLV" (IANA to Bellagamba, et al. Expires October 15, 2012 [Page 8] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 define, suggested value 1). Length: indicates the length of the TLV including sub-TLVs but excluding the Type and Length field, in octets. Version: identifies the BFD protocol version. If a node does not support a specific BFD version an error must be generated: "OAM Problem/Unsupported OAM Version". PHB: Identifies the Per-Hop Behavior (PHB) to be used for periodic continuity monitoring messages. BFD Negotiation (N): If set timer negotiation/re-negotiation via BFD Control Messages is enabled, when cleared it is disabled. Symmetric session (S): If set the BFD session MUST use symmetric timing values. Integrity (I): If set BFD Authentication MUST be enabled. If the "BFD Configuration sub-TLV" does not include a "BFD Authentication sub-TLV" the authentication MUST use Keyed SHA1 with an empty pre- shared key (all 0s). Encapsulation Capability (G): if set, it shows the capability of encapsulating BFD messages into G-Ach channel. If both the G bit and U bit are set, configuration gives precedence to the G bit. Encapsulation Capability (U): if set, it shows the capability of encapsulating BFD messages into UDP packets. If both the G bit and U bit are set, configuration gives precedence to the G bit. Bidirectional (B): if set, it configures BFD in the Bidirectional mode. If it is not set it configures BFD in unidirectional mode. In the second case, the source node does not expect any Discriminator values back from the destination node. Reserved: Reserved for future specification and set to 0 on transmission and ignored when received. The "BFD Configuration sub-TLV" MUST include the following sub-TLVs in the LSP Echo request message: - "Local Discriminator sub-TLV"; - "Negotiation Timer Parameters sub-TLV" if the N flag is cleared. The "BFD Configuration sub-TLV" MUST include the following sub-TLVs in the LSP Echo reply message: Bellagamba, et al. Expires October 15, 2012 [Page 9] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 - "Local Discriminator sub-TLV;" - "Negotiation Timer Parameters sub-TLV" if: - the N and S flags are cleared, or if: - the N flag is cleared and the S flag is set, and the Negotiation Timer Parameters sub-TLV received by the egress contains unsupported values. In this case an updated Negotiation Timer Parameters sub-TLV, containing values supported by the egress node, is returned to the ingress. 3.2.1.1. Local Discriminator sub-TLV The "Local Discriminator sub-TLV" is carried as a sub-TLV of the "BFD Configuration sub-TLV" and is depicted below. [Author's note: This should be aligned with RFC5884, exactly how to do that is under discussion. ] 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Lcl. Discr. Type (1) (IANA) | Length +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local Discriminator | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "Local Discriminator sub-TLV" (IANA to define, suggested value 1). Length: indicates the TLV total length in octets. (4) Local Discriminator: A unique, nonzero discriminator value generated by the transmitting system and referring to itself, used to demultiplex multiple BFD sessions between the same pair of systems. 3.2.1.2. Negotiation Timer Parameters sub-TLV The "Negotiation Timer Parameters sub-TLV" is carried as a sub-TLV of the "BFD Configuration sub-TLV" and is depicted below. Bellagamba, et al. Expires October 15, 2012 [Page 10] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Timer Neg. Type (2) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Acceptable Min. Asynchronous TX interval | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Acceptable Min. Asynchronous RX interval | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Required Echo TX Interval | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "Negotiation Timer Parameters sub- TLV" (IANA to define, suggested value 2). Length: indicates the length of the parameters in octets (12). Acceptable Min. Asynchronous TX interval: in case of S (symmetric) flag set in the "BFD Configuration" TLV, it expresses the desired time interval (in microseconds) at which the LER initiating the signaling intends to both transmit and receive BFD periodic control packets. If the receiving edge LSR can not support such value, it is allowed to reply back with an interval greater than the one proposed. In case of S (symmetric) flag cleared in the "BFD Configuration sub- TLV", this field expresses the desired time interval (in microseconds) at which a edge LSR intends to transmit BFD periodic control packets in its transmitting direction. Acceptable Min. Asynchronous RX interval: in case of S (symmetric) flag set in the "BFD Configuration sub-TLV", this field MUST be equal to "Acceptable Min. Asynchronous TX interval" and has no additional meaning respect to the one described for "Acceptable Min. Asynchronous TX interval". In case of S (symmetric) flag cleared in the "BFD Configuration sub- TLV", it expresses the minimum time interval (in microseconds) at which edge LSRs can receive BFD periodic control packets. In case this value is greater than the "Acceptable Min. Asynchronous TX interval" received from the other edge LSR, such edge LSR MUST adopt the interval expressed in this "Acceptable Min. Asynchronous RX interval". Required Echo TX Interval: the minimum interval (in microseconds) between received BFD Echo packets that this system is capable of supporting, less any jitter applied by the sender as described in [RFC5880] sect. 6.8.9. This value is also an indication for the receiving system of the minimum interval between transmitted BFD Echo Bellagamba, et al. Expires October 15, 2012 [Page 11] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 packets. If this value is zero, the transmitting system does not support the receipt of BFD Echo packets. If the receiving system can not support this value an error MUST be generated "Unsupported BFD TX Echo rate interval". By default the value is set to 0. 3.2.1.3. BFD Authentication sub-TLV The "BFD Authentication sub-TLV" is carried as a sub-TLV of the "BFD Configuration sub-TLV" and is depicted 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BFD Auth. Type (3) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Auth Type | Auth Key ID | Reserved (0s) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "BFD Authentication sub-TLV" (IANA to define). Length: indicates the TLV total length in octets. (4) Auth Type: indicates which type of authentication to use. The same values as are defined in section 4.1 of [RFC5880] are used. Auth Key ID: indicates which authentication key or password (depending on Auth Type) should be used. How the key exchange is performed is out of scope of this document. Reserved: Reserved for future specification and set to 0 on transmission and ignored when received. 3.2.2. MPLS OAM Source MEP-ID sub-TLV The "MPLS OAM Source MEP-ID sub-TLV" depicted below is carried as a sub-TLV of the "OAM Functions TLV". Note that support of ITU IDs is out-of-scope. Bellagamba, et al. Expires October 15, 2012 [Page 12] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 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 MEP-ID Type (4) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Node ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Tunnel ID | LSP ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "MPLS OAM Source MEP-ID sub-TLV" (IANA to define, suggested value 3). Length: indicates the length of the parameters in octets. (8) Source Node ID: 32-bit node identifier as defined in [MPLS-TP- IDENTIF]. Tunnel ID: a 16-bit unsigned integer unique to the node as defined in [MPLS-TP-IDENTIF]. LSP ID: a 16-bit unsigned integer unique within the Tunnel_ID as defined in [MPLS-TP-IDENTIF]. 3.2.3. Performance Monitoring sub-TLV If the "OAM functions TLV" has either the L (Loss), D (Delay) or T (Throughput) flag set, the "Performance Monitoring sub-TLV" MUST be present. In case the values need to be different than the default ones the "Performance Monitoring sub-TLV", "MPLS OAM PM Loss sub-TLV" MAY include the following sub-TLVs: - "MPLS OAM PM Loss sub-TLV" if the L flag is set in the "OAM functions TLV"; - "MPLS OAM PM Delay sub-TLV" if the D flag is set in the "OAM functions TLV"; The "Performance Monitoring sub-TLV" depicted below is carried as a sub-TLV of the "OAM Functions TLV". Bellagamba, et al. Expires October 15, 2012 [Page 13] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Perf Monitoring Type (2)(IANA)| Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|L|J|Y|K|C| Reserved (set to all 0s) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ sub-TLVs ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "MPLS OAM Source MEP-ID sub-TLV" (IANA to define, suggested value 2). Length: indicates the TLV total length in octets. Configuration Flags, for the specific function description please refer to [RFC6374]: - D: Delay inferred/direct (0=INFERRED, 1=DIRECT) - L: Loss inferred/direct (0=INFERRED, 1=DIRECT) - J: Delay variation/jitter (1=ACTIVE, 0=NOT ACTIVE) - Y: Dyadic (1=ACTIVE, 0=NOT ACTIVE) - K: Loopback (1=ACTIVE, 0=NOT ACTIVE) - C: Combined (1=ACTIVE, 0=NOT ACTIVE) Reserved: Reserved for future specification and set to 0 on transmission and ignored when received. 3.2.3.1. MPLS OAM PM Loss sub-TLV The "MPLS OAM PM Loss sub-TLV" depicted below is carried as a sub-TLV of the "Performance Monitoring sub-TLV". Bellagamba, et al. Expires October 15, 2012 [Page 14] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PM Loss Type (1) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTF |T|B| Reserved (set to all 0s) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Measurement Interval | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Test Interval | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Loss Threshold | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "MPLS OAM PM Loss sub-TLV" (IANA to define, suggested value 1). Length: indicates the length of the parameters in octets (16). OTF: Origin Timestamp Format of the Origin Timestamp field described in [RFC6374]. By default it is set to IEEE 1588 version 1. Configuration Flags, please refer to [RFC6374] for further details: - T: Traffic-class-specific measurement indicator. Set to 1 when the measurement operation is scoped to packets of a particular traffic class (DSCP value), and 0 otherwise. When set to 1, the DS field of the message indicates the measured traffic class. By default it is set to 1. - B: Octet (byte) count. When set to 1, indicates that the Counter 1-4 fields represent octet counts. When set to 0, indicates that the Counter 1-4 fields represent packet counts. By default it is set to 0. Reserved: Reserved for future specification and set to 0 on transmission and ignored when received. Measurement Interval: the time interval (in microseconds) at which Loss Measurement query messages MUST be sent on both directions. If the edge LSR receiving the Path message can not support such value, it can reply back with a higher interval. By default it is set to (TBD). Test Interval: test messages interval as described in [RFC6374]. By default it is set to (TBD). Loss Threshold: the threshold value of lost packets over which Bellagamba, et al. Expires October 15, 2012 [Page 15] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 protections MUST be triggered. By default it is set to (TBD). 3.2.3.2. MPLS OAM PM Delay sub-TLV The "MPLS OAM PM Delay sub-TLV" depicted below is carried as a sub- TLV of the "OAM Functions TLV". 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | PM Delay Type (2) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OTF |T|B| Reserved (set to all 0s) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Measurement Interval | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Test Interval | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Delay Threshold | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "MPLS OAM PM Loss sub-TLV" (IANA to define, suggested value 1). Length: indicates the length of the parameters in octets (16). OTF: Origin Timestamp Format of the Origin Timestamp field described in [RFC6374]. By default it is set to IEEE 1588 version 1. Configuration Flags, please refer to [RFC6374] for further details: - T: Traffic-class-specific measurement indicator. Set to 1 when the measurement operation is scoped to packets of a particular traffic class (DSCP value), and 0 otherwise. When set to 1, the DS field of the message indicates the measured traffic class. By default it is set to 1. - B: Octet (byte) count. When set to 1, indicates that the Counter 1-4 fields represent octet counts. When set to 0, indicates that the Counter 1-4 fields represent packet counts. By default it is set to 0. Reserved: Reserved for future specification and set to 0 on transmission and ignored when received. Measurement Interval: the time interval (in microseconds) at which Delay Measurement query messages MUST be sent on both directions. If Bellagamba, et al. Expires October 15, 2012 [Page 16] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 the edge LSR receiving the Path message can not support such value, it can reply back with a higher interval. By default it is set to (TBD). Test Interval: test messages interval as described in [RFC6374]. By default it is set to (TBD). Delay Threshold: the threshold value of measured delay (in microseconds) over which protections MUST be triggered. By default it is set to (TBD). 3.2.4. MPLS OAM FMS sub-TLV The "MPLS OAM FMS sub-TLV" depicted below is carried as a sub-TLV of the "OAM Functions 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MPLS OAM FMS Type (3) (IANA) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |A|D|L|C| Reserved (set to all 0s) | PHB | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Refresh Timer | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type: indicates a new type, the "MPLS OAM FMS sub-TLV" (IANA to define, suggested value 3). Length: indicates the length of the parameters in octets (8). Signal Flags should not be processed at intermediate nodes as they only have an end-point significance. They are used to enable the following signals at end points: - A: Alarm Indication Signal (AIS) as described in [MPLS-FMS] - D: Link Down Indication (LDI) as described in [MPLS-FMS] - L: Locked Report (LKR) as described in [MPLS-FMS] - C: Client Signal Failure (CSF) as described in [MPLS-CSF] - Remaining bits: Reserved for future specification and set to 0. Reserved: Reserved for future specification and set to 0 on transmission and ignored when received. Bellagamba, et al. Expires October 15, 2012 [Page 17] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 Configuration Flags: - PHB: identifies the per-hop behavior of packets with fault management information. It is significant only when C flag is set. Refresh Timer: indicates the refresh timer (in microseconds) of fault indication messages. If the edge LSR receiving the Path message can not support such value, it can reply back with a higher interval. 3.3. IANA Considerations This document specifies the following new TLV types: - "OAM Functions" type: 16; sub-TLV types to be carried in the "OAM Functions TLV": - "BFD Configuration" type: 1; - "MPLS OAM Performance Monitoring" type: 2; - "MPLS OAM FMS" type: 3; - "MPLS OAM Source MEP-ID" type: 4. sub-TLV types to be carried in the "BFD Configuration sub-TLV": - "Local Discriminator" type: 1; - "Negotiation Timer Parameters" type: 2; - "BFD Authentication" sub-TLV type: 3. 4. OAM configuration errors This document specifies additional Return Codes to LSP Ping: - "MPLS OAM Unsupported Functionality"; - "OAM Problem/Unsupported TX rate interval"; - "OAM Problem/Unsupported RX rate interval"; - "OAM Problem/Unsupported unsupported Authentication Type"; Bellagamba, et al. Expires October 15, 2012 [Page 18] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 - "OAM Problem, mismatch of Authentication Key ID ". 5. Security Considerations The signaling of OAM related parameters and the automatic establishment of OAM entities introduces additional security considerations to those discussed in [RFC3473]. In particular, a network element could be overloaded if an attacker were to request high frequency liveliness monitoring of a large number of LSPs, targeting a single network element. Security aspects will be covered in more detailed in subsequent versions of this document. 6. References 6.1. Normative References [MPLS-FMS] Swallow, G., Fulignoli, A., Vigoureux, M., Boutros, S., and D. Ward, "MPLS Fault Management OAM", 2009, . [MPLS-TP-IDENTIF] Bocci, M., Swallow, G., and E. Gray, "MPLS-TP Identifiers", 2010, . [OAM-CONF-FWK] Takacs, A., Fedyk, D., and J. van He, "OAM Configuration Framework for GMPLS RSVP-TE", 2009, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3471] Berger, L., "Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description", RFC 3471, January 2003. [RFC5586] Bocci, M., Vigoureux, M., and S. Bryant, "MPLS Generic Associated Channel", RFC 5586, June 2009. [RFC5654] Niven-Jenkins, B., Brungard, D., Betts, M., Sprecher, N., and S. Ueno, "Requirements of an MPLS Transport Profile", RFC 5654, September 2009. Bellagamba, et al. Expires October 15, 2012 [Page 19] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 [RFC5860] Vigoureux, M., Ward, D., and M. Betts, "Requirements for Operations, Administration, and Maintenance (OAM) in MPLS Transport Networks", RFC 5860, May 2010. [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection (BFD)", RFC 5880, June 2010. [RFC6374] Frost, D. and S. Bryant, "Packet Loss and Delay Measurement for MPLS Networks", RFC 6374, September 2011. [RFC6375] Frost, D. and S. Bryant, "A Packet Loss and Delay Measurement Profile for MPLS-Based Transport Networks", RFC 6375, September 2011. [RFC6420] Cai, Y. and H. Ou, "PIM Multi-Topology ID (MT-ID) Join Attribute", RFC 6420, November 2011. [RSVP-TE CONF] Bellagamba, E., Ward, D., Andersson, L., and P. Skoldstrom, "Configuration of pro-active MPLS-TP Operations, Administration, and Maintenance (OAM) Functions Using RSVP-TE", 2010, . 6.2. Informative References [BFD-CCCV] Allan, D., Swallow, G., and J. Drake, "Proactive Connectivity Verification, Continuity Check and Remote Defect indication for MPLS Transport Profile", 2010, . [BFD-Ping] Bahadur, N., Aggarwal, R., Ward, D., Nadeau, T., Sprecher, N., and Y. Weingarten, "LSP Ping and BFD encapsulation over ACH", 2010, . [ETH-OAM] Takacs, A., Gero, B., Fedyk, D., Mohan, D., and D. Long, "GMPLS RSVP-TE Extensions for Ethernet OAM", 2009, . [MPLS-TP OAM Analysis] Sprecher, N., Weingarten, Y., and E. Bellagamba, "MPLS-TP OAM Analysis", 2011, . [MPLS-TP-OAM-FWK] Bocci, M. and D. Allan, "Operations, Administration and Bellagamba, et al. Expires October 15, 2012 [Page 20] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 Maintenance Framework for MPLS-based Transport Networks", 2010, . [RFC3479] Farrel, A., "Fault Tolerance for the Label Distribution Protocol (LDP)", RFC 3479, February 2003. [RFC4447] Martini, L., Rosen, E., El-Aawar, N., Smith, T., and G. Heron, "Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)", RFC 4447, April 2006. [RFC5921] Bocci, M., Bryant, S., Frost, D., Levrau, L., and L. Berger, "A Framework for MPLS in Transport Networks", RFC 5921, July 2010. Authors' Addresses Elisa Bellagamba (editor) Ericsson Torshamnsgatan 48 Kista, 164 40 Sweden Email: elisa.bellagamba@ericsson.com Loa Andersson Ericsson Torshamnsgatan 48 Kista, 164 40 Sweden Phone: Email: loa.andersson@ericsson.com Pontus Skoldstrom (editor) Acreo AB Electrum 236 Kista, 164 40 Sweden Phone: +46 8 6327731 Email: pontus.skoldstrom@acreo.se Bellagamba, et al. Expires October 15, 2012 [Page 21] Internet-Draft Extensions for MPLS-TP OAM Conf April 2012 Dave Ward Juniper Phone: Email: dward@juniper.net John Drake Juniper Phone: Email: jdrake@juniper.net Bellagamba, et al. Expires October 15, 2012 [Page 22]