One document matched: draft-ietf-ccamp-rsvp-te-mpls-tp-oam-ext-15.xml


<?xml version="1.0" encoding="US-ASCII"?>
<!-- This template is for creating an Internet Draft using xml2rfc,
which is available here: http://xml.resource.org. -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!-- One method to get references from the online citation libraries.
There has to be one entity for each item to be referenced. 
An alternate method (rfc include) is described in the references. -->
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC2629 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2629.xml">
<!ENTITY RFC3552 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3552.xml">
<!ENTITY I-D.narten-iana-considerations-rfc2434bis SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.narten-iana-considerations-rfc2434bis.xml">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- used by XSLT processors -->
<!-- For a complete list and description of processing instructions (PIs), 
please see http://xml.resource.org/authoring/README.html. -->
<!-- Below are generally applicable Processing Instructions (PIs) that most I-Ds might want to use.
(Here they are set differently than their defaults in xml2rfc v1.32) -->
<?rfc strict="yes" ?>
<!-- give errors regarding ID-nits and DTD validation -->
<!-- control the table of contents (ToC) -->
<?rfc toc="yes"?>
<!-- generate a ToC -->
<?rfc tocdepth="4"?>
<!-- the number of levels of subsections in ToC. default: 3 -->
<!-- control references -->
<?rfc symrefs="yes"?>
<!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
<?rfc sortrefs="yes" ?>
<!-- sort the reference entries alphabetically -->
<!-- control vertical white space 
(using these PIs as follows is recommended by the RFC Editor) -->
<?rfc compact="yes" ?>
<!-- do not start each main section on a new page -->
<?rfc subcompact="no" ?>
<!-- keep one blank line between list items -->
<!-- end of list of popular I-D processing instructions -->
<rfc category="std" docName="draft-ietf-ccamp-rsvp-te-mpls-tp-oam-ext-15"
     ipr="trust200902">
  <!-- category values: std, bcp, info, exp, and historic
       ipr values: full3667, noModification3667, noDerivatives3667
       you can add the attributes updates="NNNN" and obsoletes="NNNN" 
       they will automatically be output with "(if approved)" -->

  <!-- ***** FRONT MATTER ***** -->

  <front>
    <!-- The abbreviated title is used in the page header - it is only necessary if the 
         full title is longer than 39 characters -->

    <title abbrev="Extensions for MPLS-TP OAM Conf">Configuration of Pro-Active 
    Operations, Administration, and Maintenance (OAM) Functions for MPLS-based Transport Networks using
    RSVP-TE</title>

    <!-- add 'role="editor"' below for the editors if appropriate -->

    <!-- Another author who claims to be an editor -->

    <author fullname="Elisa Bellagamba" initials="E." 
            surname="Bellagamba">
      <organization>Ericsson</organization>
      <address>
        <email>elisa.bellagamba@ericsson.com</email>
        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Attila Takacs" initials="A."  surname="Takacs">
      <organization>Ericsson</organization>

      <address>
        <phone></phone>

        <email>attila.takacs@ericsson.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

      <author fullname="Gregory Mirsky" initials="G."
            surname="Mirsky">
      <organization>Ericsson</organization>
      <address>
        <email>Gregory.Mirsky@ericsson.com</email>
        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>
    
    <author fullname="Loa Andersson" initials="L."
            surname="Andersson">
      <organization>Huawei Technologies</organization>
      <address>
        <phone></phone>
        <email>loa@mail01.huawei.com</email>
        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Pontus Skoldstrom" initials="P."
            surname="Skoldstrom">
      <organization>Acreo AB</organization>
      <address>
        <postal>
          <street>Electrum 236</street>
          <!-- Reorder these if your country does things differently -->
          <city>Kista</city>
          <region></region>
          <code>164 40</code>
          <country>Sweden</country>
        </postal>
        <phone>+46 70 7957731</phone>
        <email>pontus.skoldstrom@acreo.se</email>
        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Dave Ward" initials="D." surname="Ward">
      <organization>Cisco</organization>
      <address>
        <postal>
          <street></street>
          <!-- Reorder these if your country does things differently -->
          <city></city>
          <region></region>
          <code></code>
	  <country></country>
        </postal>
        <phone></phone>
        <email>dward@cisco.com</email>
        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>


    <!-- If the month and year are both specified and are the current ones, xml2rfc will fill 
         in the current day for you. If only the current year is specified, xml2rfc will fill 
	 in the current day and month for you. If the year is not the current one, it is 
	 necessary to specify at least a month (xml2rfc assumes day="1" if not specified for the 
	 purpose of calculating the expiry date).  With drafts it is normally sufficient to 
	 specify just the year. -->

    <!-- Meta-data Declarations -->

    <date day="11" month=" January" year="2015" />
    <area>Signaling</area>
    <workgroup>CCAMP Working Group</workgroup>
    <keyword>RSVP-TE</keyword>
    <keyword>GMPLS</keyword>
    <keyword>MPLS</keyword>
    <keyword>MPLS-TP</keyword>
    <keyword>OAM</keyword>

    <abstract>
      <t>This specification describes the configuration of pro-active MPLS-TP (MPLS-Transport Profile)
      Operations, Administration, and Maintenance (OAM) Functions for a given
      LSP using a set of TLVs that are carried by the GMPLS RSVP-TE protocol based on the OAM Configuration Framework for GMPLS RSVP-TE.</t>
     
<!--      <t>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.
--> 
    </abstract>
  </front>
  <middle>
    <section title="Introduction">
      
      <t>This document describes the configuration of pro-active MPLS-TP (MPLS-Transport Profile)
      Operations, Administration, and Maintenance (OAM) Functions for a given
      LSP using TLVs using GMPLS RSVP-TE [RFC3473]. The use of GMPLS RSVP-TE for the configuration of OAM functions is
      defined in a technology agnostic way in [RFC7260]. This document specifies the additional 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-TP OAM functions running between
      LERs.  Initialization and control of on-demand MPLS-TP 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.</t>

      <t>MPLS-TP, the Transport Profile of MPLS, must, by definition [RFC5654], be
      capable of operating without a control plane. Therefore, there are 
      several 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 such as RSVP-TE.
      </t>

      <t>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.</t>

      <t>Pro-active MPLS-TP OAM is performed by three different protocols,
      Bi-directional 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.
      </t>
     
      <t>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.
      </t>
      
      <t>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. It should be noted that here we are not
      configuring on-demand throughput estimates based on saturating the
      connection as defined in [RFC6371]. Rather, we only enable the estimation
      of the current throughput based on loss measurements.
      </t>
 
<!--
      <t>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.
      </t>
-->
     <section title="Conventions used in this document">
         <section title="Terminology">
<t>BFD - Bidirectional Forwarding Detection</t>
<t>CV - Connectivity Verification</t>
<t>CC - Continuity Check</t>
<t>DM - Delay Measurement</t>
<t>FMS - Fault Management Signal </t>
<t>G-ACh - Generic Associated Channel</t>
<t>GMPLS - Generalized Multi-Protocol Label Switching</t>
<t>LER - Label switching Edge Router</t>
<t>LM - Loss Measurement</t>
<t>LSP - Label Switched Path</t>
<t>LSR - Label Switching Router</t>
<t>MEP - Maintenance Entity Group End Point</t>
<t>MPLS - Multi-Protocol Label Switching</t>
<t>MPLS-TP - MPLS Transport Profile</t>
<t>NMS - Network Management System</t>
<t>PM - Performance Measurement</t>
<t>RSVP-TE - Reservation Protocol Traffic Engineering
</t>
<t>TC - Traffic Class</t>

         </section>
         
               <section title ="Requirements Language">
	<t>
	  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 <xref target="RFC2119">RFC 2119</xref>.
	</t>
      </section>
    </section>
</section>

    <section title="Overview of MPLS OAM for Transport Applications">
      <t>[RFC6371] describes how MPLS-TP OAM mechanisms are operated to
      meet transport requirements outlined in [RFC5860].</t>
      
      <t>[RFC6428] 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 (CV) as well as Continuity Check (CC).</t>
      
      <t>[RFC6374] specifies mechanisms for performance monitoring of LSPs, in
      particular it specifies loss and delay measurement OAM functions.</t>

      <t>[RFC6427] 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 Lock Report (LKR). </t>

      <t>[RFC6371] 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.</t>
    </section>

    <section title="Theory of Operations">
      <section title="MPLS-TP OAM Configuration Operation Overview">

	<t>GMPLS RSVP-TE, or alternatively LSP Ping [LSP-PING-CONF], can be used to
	simply enable the different OAM functions, by setting the corresponding
	flags in the "OAM Function Flags sub-TLV" [RFC7260].  For a more detailed configuration one
	may include sub-TLVs for the different OAM functions in order to specify
	various parameters in detail.</t>

	<t>Typically intermediate nodes should not process or modify any of the OAM configuration TLVs but simply
	forward them to the end-node.  There is one exception to this and that is if the "MPLS OAM FMS sub-TLV" is
	present. This sub-TLV has to be examined even by intermediate nodes, but only acted upon by nodes capable of
	transmitting FMS signals into the LSP being established. The sub-TLV MAY be present when the FMS flag is
	set in the "OAM Function Flags sub-TLV". If this sub-TLV is present, then the "OAM MIP entities desired" and "OAM MEP
	entities desired" flags (described in [RFC7260]) in the "LSP Attributes Flags TLV" MUST be set and the
	entire OAM Configuration TLV placed either in the LSP_REQUIRED_ATTRIBUTES object or in the LSP_ATTRIBUTES
	object in order to ensure that capable intermediate nodes process the configuration. If placed in LSP_ATTRIBUTES
	object, nodes that are not
	able to process the OAM Configuration TLV will forward the message without generating an error.
	If the ?MPLS OAM FMS sub-TLV? been placed in the LSP_REQUIRED_ATTRIBUTES object a node that
	supports the RFC 7260 but does not support the "MPLS OAM FMS sub-TLV" MUST generate PathErr
	message with "OAM Problem/Configuration Error" <xref target="RFC7260"/>. Otherwise, if the node doesn't support
	the RFC 7260, it will not raise any errors as described in the Section 4.1 <xref target="RFC7260"/>.</t>
	
	<t> Finally, if the "MPLS OAM FMS sub-TLV" is not included only the "OAM MEP
	entities desired" flag is set and the OAM Configuration TLV may be placed in either LSP_ATTRIBUTES or
	LSP_REQUIRED_ATTRIBUTES. </t>

	<section title="Configuration of BFD sessions">

	  <t> For this specification, BFD MUST be run in either one of the two modes:</t>
	  <t>
	    <list>
	      <t>- Asynchronous mode, where both sides should be in active mode</t>
	      <t>- Unidirectional mode</t>
	    </list>
	  </t>

	  <t>In the simplest scenario, RSVP-TE, or alternatively LSP Ping [LSP-PING-CONF], 
	  is used only to bootstrap a BFD session for an LSP, without any timer negotiation.</t>

	  <t>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 RSVP-TE signaling messages.</t>

	  <t>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 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 ensure that
	  every BFD Control packet carries an SHA1 hash of itself that can be used
	  to detect errors.</t>

	  <t>If BFD Authentication using a pre-shared key / password is desired
	  (i.e. 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 should be used and which pre-shared key /
	  password should be used for this particular session. How the key
	  exchange is performed is out of scope of this document. </t>
	</section>

	<section title="Configuration of Performance Monitoring">
	  <t>It is possible to configure Performance Monitoring functionalities such as Loss, 
	  Delay, Delay variation (jitter), and Throughput as described in [RFC6374].</t>

	  <t>When configuring Performance monitoring functionalities it is
	  possible to choose either the default configuration, by only setting the
	  respective flags in the "OAM Function Flags sub-TLV", or a customized
	  configuration. To customize the configuration, one would set the
	  respective flags and including the respective Loss and/or Delay
	  sub-TLVs). </t>
	  
	  <t>By setting the PM/Loss flag in the "OAM Function Flags sub-TLV" and
	  by including the "MPLS OAM PM Loss sub-TLV", one can configure the
	  measurement interval and loss threshold values for triggering
	  protection.</t>
	  
	  <t>Delay measurements are configured by setting PM/Delay flag in the
	  "OAM Function Flags sub-TLV", and by including the "MPLS OAM PM Loss
	  sub-TLV", one can configure the measurement interval and the delay
	  threshold values for triggering protection.</t>
	</section>
	
	<section title="Configuration of Fault Management Signals">

	  <t>To configure Fault Management Signals and their refresh time, the
	  FMS flag in the "OAM Function Flags sub-TLV" MUST be set and the "MPLS
	  OAM FMS sub-TLV" included. When configuring Fault Management Signals, 
	  an implementation can enable the default configuration by setting the 
	  FMS flag in the "OAM Function Flags sub-TLV". In order to modify the
	  default configuration the "MPLS OAM FMS sub-TLV" MUST be included. </t>

	  
<!-- 
 When configuring Fault Management Signals,
	  two options are possible, default configuration is enabled by setting
	  the respective flags in the "OAM Function Flags sub-TLV", the default
	  settings MAY be customized by including the "MPLS OAM FMS
	  sub-TLV". </t>
-->	  
	  <t>If an intermediate point is intended to originate fault management
	  signal messages, this means that such an intermediate point is
	  associated with a server MEP through a co-located MPLS-TP client/server
	  adaptation function and the ?Fault Management subscription? flag in the
	  ?MPLS OAM FMS sub-TLV? been set as indication of the request to create
	  the association at each intermediate node of the client LSP.  Corresponding
	  server MEP needs to be configured by its
	  own RSVP-TE session (or, alternatively, via an NMS or
	  LSP-ping).</t>

	</section>
      </section>

      <section anchor="mpls-oam-conf-tlv" title="MPLS OAM Configuration sub-TLV">
    <t>The "OAM Configuration TLV", defined in [RFC7260], specifies the OAM functions that are used for the
	LSP. This document extends the "OAM Configuration TLV" by defining a new OAM Type: "MPLS OAM" (TBA1). The
	"MPLS OAM" type is set to request the establishment of OAM functions for
	MPLS-TP LSPs.  The specific OAM functions are specified in the "OAM Function
	Flags sub-TLV" as depicted in [RFC7260]. </t>

	<t>When an egress LSR receives an "OAM Configuration TLV" indicating the
	MPLS OAM type, the LSR will first process any present "OAM Function Flags sub-TLV"
	and then it MUST process technology specific configuration TLVs.  This
	document defines a sub-TLV, the "MPLS OAM Configuration sub-TLV" which
	is carried in the "OAM Configuration TLV". </t>


<!--       
     <t>The "OAM Configuration TLV", defined in [RFC7260], specifies the OAM functions that are used for the
	LSP. This document extends the "OAM Configuration TLV" by defining a new OAM Type: "MPLS OAM" (suggested value 2,
	IANA to assign) from the "RSVP-TE OAM Configuration Registry".  The
	"MPLS OAM" type is set to request the establishment of OAM functions for
	MPLS-TP LSPs.  The specific OAM functions are specified in the "OAM Function
	Flags sub-TLV" as depicted in [RFC7260].</t>

	<t>When an egress LSR receives an "OAM Configuration TLV" indicating the
	MPLS OAM type, it first will process any present "OAM Function Flags sub-TLV"
	and then it MUST process technology specific configuration TLVs.  This
	document defines a new sub-TLV, the "MPLS OAM Configuration sub-TLV" that
	is carried in the "OAM Configuration TLV". IANA is requeted to assign type
	33 from the sub-TLV space maintained in the RSVP-TE OAM Configuration
	Registry. </t>
-->
	<t>
          <figure>
            <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MPLS OAM Conf. sub-TLV (TBA2) |            Length             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
~                           sub-TLVs                            ~
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                  			  
	    ]]></artwork>                                             
	  </figure>                                                                                                  
	</t>

	<t>Type: TBA2, the "MPLS OAM Configuration sub-TLV".</t>

	<t>Length: indicates the total length in octets, including sub-TLVs as well as the Type and Length fields.</t>

	<t>The following MPLS OAM specific sub-TLVs MAY be included in the
	"MPLS OAM Configuration sub-TLV":</t>
	
	<t>
	  <list>
	    <t>- "BFD Configuration sub-TLV", which MUST be included if the CC
	    and/or the CV OAM Function flag is set. This sub-TLV carries additional
	    sub-TLVs, failure to include the correct sub-TLVs MUST result in an
	    error being generated: "OAM Problem/Configuration Error". The sub-TLVs
	    are:
	    <list>
	      <t>- "BFD Identifiers sub-TLV", MUST always be
 included. 
</t>
	      <t>- "Timer Negotiation Parameters sub-TLV", MUST be included if the
 N flag is not set.</t>
	      <t>- "BFD Authentication sub-TLV", MAY be included if the I flag is
 set.
</t>
	    </list> 
	    </t>
	    <t>- "Performance Monitoring sub-TLV", which MUST be included if any
	    of the PM/Delay, PM/Loss or PM/Throughput flags are set in the "OAM
	    Function Flag sub-TLV". This sub-TLV MAY carry additional sub-TLVs: 
	    <list>
	      <t>- "MPLS OAM PM Loss sub-TLV" 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. The same sub-TLV MAY
	      also be included in case the PM/Throughput OAM Function flag is set
	      and there is the need to specify measurement interval different from
	      the default ones. Since throughput measurements use the same tool as
	      loss measurements the same TLV is used.
	      </t>

	      <t>- "MPLS OAM PM Delay sub-TLV" 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.
	      </t>
	    </list>
	    </t>
	    <t>- "MPLS OAM FMS sub-TLV" 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.
	    </t>
	  </list>
	</t>
	
	<t>Following are some additional rules of processing MPLS OAM Configuration sub-TLV:</t>
              <t>
                   <list>
                   <t>- MPLS OAM Configuration sub-TLV MAY be empty, i.e. have no Value. Then its Length MUST be 8.
                   Then all OAM functions that have their corresponding flags set in the "OAM Function Flags sub-TLV"
                   MUST be assigned their default values or left disabled.</t>
                   <t>- sub-TLV that doesn't have corresponding flag set MUST be silently ignored;</t>
                   <t>- if multiple copies of a sub-TLV are present, then only the first sub-TLV
                   MUST be used and the remaining sub-TLVs MUST be silently ignored.</t>
                   </list>
               </t>

	<t>However, not all the values can be derived from the standard RSVP-TE
	objects, in particular the locally assigned Tunnel ID at the egress
	cannot be derived by the ingress node. Therefore, the full LSP MEP-ID used
	by the ingress has to be carried in the "BFD Identifiers sub-TLV" in the
	Path message and the egress LSP MEP-ID in the same way in the
	Resv message.</t>
	
       <section anchor="cv-flag-use" title="CV Flag Rules of Use">

	<t>If the CV flag is set, then the CC flag MUST be set as well
	because performing Connectivity Verification implies performing Continuity Check as well.
	The format of an MPLS-TP CV/CC message is shown in [RFC6428]. In order to
	perform Connectivity Verification the CV/CC message MUST contain the ?LSP MEP-ID?
	in addition to the BFD Control packet information. The "LSP MEP-ID" contains four identifiers: </t>
	<t>
	  <list>
	    <t>MPLS-TP Global_ID</t>
	    <t>MPLS-TP Node Identifier</t>
	    <t>Tunnel_Num</t>
	    <t>LSP_Num</t>
	  </list>
	</t>
	
	<t>These values need to be correctly set by both ingress and egress when
	transmitting a CV packet and both ingress and egress needs to know what
	to expect when receiving a CV packet. Most of these values can be derived
	from the Path and Resv messages [RFC3473], which uses a 5-tuple to
	uniquely identify an LSP within an operator's network. This tuple is
	composed of a Tunnel Sender Address, Tunnel Endpoint Address, Tunnel_ID,
	Extended Tunnel ID, and (GMPLS) LSP_ID.</t> 


       </section> 
         
   </section>

      <section anchor="bfd-config-tlv" title="BFD Configuration sub-TLV">
      
	<t>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 "MPLS OAM Configuration sub-TLV".</t>

	<t>This TLV accommodates generic BFD OAM information and carries
	sub-TLVs.</t>

	<t>
          <figure>
            <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      BFD Conf. Type (1)       |           Length              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Vers.|N|S|I|G|U|B|       Reserved (set to all 0s)              |      
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
~                           sub-TLVs                            ~
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                  			  
	    ]]></artwork>                                             
	  </figure>                                                                                                  
	</t>

	<t>Type: 1, the "BFD Configuration sub-TLV".</t>

	<t>Length: indicates the total length in octets, including sub-TLVs as well as the Type and Length fields.</t>

	<t>Version: identifies the BFD protocol version. If the egress LSR does not
	support the version an error MUST be generated: "OAM Problem/Unsupported BFD
	Version".</t>

	<t>BFD Negotiation (N): If set timer negotiation/re-negotiation via
	BFD Control Messages is enabled, when cleared it is disabled.</t>

	<t>Symmetric session (S): If set the BFD session MUST use symmetric
	timing values. </t>

	<t>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). If the egress LSR does not support BFD Authentication an error MUST
	be generated: "OAM Problem/BFD Authentication unsupported".</t>

	<t>Encapsulation Capability (G): if set, shows the capability of
	encapsulating BFD messages into The G-Ach channel. If both the G bit and
	U bit are set, configuration gives precedence to the G bit. If the
	egress LSR does not support any of the ingress LSR Encapsulation
	Capabilities an error MUST be generated: "OAM Problem/Unsupported
	BFD Encapsulation format". </t>

	<t>Encapsulation Capability (U): if set, 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.  If the
	egress LSR does not support any of the ingress LSR Encapsulation
	Capabilities an error MUST be generated: "OAM Problem/Unsupported
	BFD Encapsulation format".</t>

	<t>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.</t> 
	
	<t>Reserved: Reserved for future specification and set to 0 on transmission and ignored when received.</t>

	<t>The "BFD Configuration sub-TLV" MUST include the following sub-TLVs in
	the Path message:</t>

	<t><list>
	  <t>- "BFD Identifiers sub-TLV";</t>

	  <t>- "Negotiation Timer Parameters sub-TLV" if the N flag is
	  cleared.</t>
	</list></t>

	<t>The "BFD Configuration sub-TLV" MUST include the following sub-TLVs in
	the Resv message:</t>

	<t><list>
	  <t>- "BFD Identifiers sub-TLV;"</t>

	  <t>- "Negotiation Timer Parameters sub-TLV" if:
	  <list>
	    <t>- the N and S flags are cleared, or if: </t>
	    <t>- 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 LSR, MUST be returned to the ingress.</t>
	  </list>
	  </t>
	</list></t>
	<section title="BFD Identifiers sub-TLV">

	  <t>The "BFD Identifiers sub-TLV" is carried as a sub-TLV of the
	  "BFD Configuration sub-TLV" and is depicted below.</t>
	  <t>
	    <figure>
	      <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   BFD Identfiers Type (1)     |            Length             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    	 	          Local Discriminator                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       MPLS-TP Global_ID                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    MPLS-TP Node Identifier                    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           Tunnel_Num          |            LSP_Num            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

	      ]]></artwork>
	    </figure>                                                                                                  
	  </t>

	  <t>Type: 1, "BFD Identifiers sub-TLV".</t>

	  <t>Length: indicates the TLV total length in octets, including the Type and Length fields (20).</t>

	  <t>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 as defined in [RFC5880].</t>
          <t>MPLS-TP Global_ID, Node Identifier, Tunnel_Num,
	  and LSP_Num: all set as defined in [RFC6370].</t>
	</section>

	<section title="Negotiation Timer Parameters sub-TLV">
	  <t>The "Negotiation Timer Parameters sub-TLV" is carried as a sub-TLV
	  of the "BFD Configuration sub-TLV" and is depicted below.</t>

	  <t>
            <figure>
              <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Nego. Timer Type (2)       |             Length            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         Acceptable Min. Asynchronous TX interval              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         Acceptable Min. Asynchronous RX interval              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               Required Echo TX Interval                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
	      ]]></artwork>                                             
	    </figure>
	  </t>

	  <t>Type: 2, "Negotiation Timer Parameters sub-TLV".</t>

	  <t>Length: indicates the TLV total length in octets, including Type and Length fields (16).</t>

	  <t>Acceptable Min. Asynchronous TX interval: If the S (symmetric) flag
	  is set in the "BFD Configuration sub-TLV", it expresses the desired
	  time interval (in microseconds) at which the ingress LER intends to
	  both transmit and receive BFD periodic control packets. If the egress
	  LSR cannot support the value, it SHOULD reply with a supported
	  interval.</t>

	  <t>If the  S (symmetric) flag is cleared in the "BFD Configuration
	  sub-TLV", this field expresses the desired time interval (in
	  microseconds) at which the ingress LSR intends to transmit BFD periodic
	  control packets.</t>

	  <t>Acceptable Min. Asynchronous RX interval: If the S (symmetric)
	  flag is set in the "BFD Configuration sub-TLV", this field MUST be set equal to
	  "Acceptable Min. Asynchronous TX interval" on transmit and MUST be ignored
	  on receipt since it has no additional
	  meaning with respect to the one described for "Acceptable Min. Asynchronous
	  TX interval".</t>


	  <t>If the S (symmetric) flag is cleared in the "BFD Configuration
	  sub-TLV", it expresses the minimum time interval (in microseconds) at
	  which the ingress/egress LSRs can receive periodic BFD control
	  packets. If this value is greater than the "Acceptable
	  Min. Asynchronous TX interval" received from the ingress/egress LSR,
	  the receiving LSR MUST adopt the interval expressed in the "Acceptable
	  Min. Asynchronous RX interval".</t>

	  <t>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
	  packets.  If this value is zero, the transmitting system does not
	  support the receipt of BFD Echo packets.  If the LSR node cannot
	  support this value it SHOULD reply with a supported value (which may
	  be zero if Echo is not supported).</t>
	</section>

	<section title="BFD Authentication sub-TLV">
	  <t>The "BFD Authentication sub-TLV" is carried as a sub-TLV of the
	  "BFD Configuration sub-TLV" and is depicted below.</t>
	  <t>
            <figure>
              <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      BFD Auth. Type (3)       |            Length             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Auth Type   |  Auth Key ID  |         Reserved (0s)         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
	      ]]></artwork>                                             
	    </figure>
	  </t>
	  <t>Type: 3, "BFD Authentication sub-TLV".</t>
	  <t>Length: indicates the TLV total length in octets, including Type and Length fields (8).</t>
	  <t>Auth Type: indicates which type of authentication to use. The same
	  values as are defined in section 4.1 of [RFC5880] are used. If the
	  egress LSR does not support this type an "OAM Problem/Unsupported
	  BFD Authentication Type" error MUST be generated.</t>
	  <t>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. If the egress LSR does
	  not support this Auth Key ID an "OAM Problem/Mismatch of BFD
	  Authentication Key ID" error MUST be generated. </t>
	  <t>Reserved: Reserved for future specification and set to 0 on
	  transmission and ignored when received.</t>
	</section>
	<section anchor="traffic-class-sub-tlv" title="Traffic Class sub-TLV">

	  <t>The Traffic Class sub-TLV is carried as a sub-TLV of the
	    "BFD Configuration sub-TLV" or "Fault Management Signal sub-TLV" <xref target="fms-sub-tlv"/>
	    and is depicted in <xref target="traffic-class-sub-tlv-figure"/>.</t>
	  <t>
	    <figure align="left" anchor="traffic-class-sub-tlv-figure"
                title="Traffic Class sub-TLV 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
|  Traffic Class sub-Type (4)   |            Length             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
|  TC |                 Reserved (set to all 0s)                |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
	    </figure>                                                                                                  
	  </t>

	  <t>Type: 3, "Traffic Class sub-TLV".</t>

	  <t>Length:  indicates the length of the Value field in octets . (4)</t>

	<t>TC: Identifies the Traffic Class (TC) <xref target="RFC5462"/> for periodic
	continuity monitoring messages or packets with fault
	management information.</t>
	
	<t>If TC sub-TLV is present, then the value of the TC field MUST be used
	as the value of the TC field  of an MPLS label stack entry. If the TC sub-TLV is absent
	from "BFD Configuration sub-TLV" or "Fault Management Signal sub-TLV", then selection of
	the TC value is local decision.
	</t>
	  
	</section>

      </section>
      
      <section title="Performance Monitoring sub-TLV">

	<t>If the "OAM Function Flags sub-TLV" has either the PM/Loss, PM/Delay
	or PM/Throughput flag set, the "Performance Monitoring sub-TLV" MUST be
	present in the "MPLS OAM Configuration sub-TLV". Failure to include the
	correct sub-TLVs MUST result in an "OAM Problem/Configuration Error"
	error being generated.</t>

	<t>The "Performance Monitoring sub-TLV" provides the configuration information mentioned in Section 7 of
	[RFC6374]. It includes support for the configuration of quality thresholds and, as described in [RFC6374], "the
	crossing of which will trigger warnings or alarms, and result reporting and exception notification will be
	integrated into the system-wide network management and reporting framework."</t>

	<t>In case the values need to be different than the default ones the
	"Performance Monitoring sub-TLV" includes the following sub-TLVs:
	<list>
	  <t>- "MPLS OAM PM Loss sub-TLV" if the PM/Loss and/or PM/Throughput flag is set in the "OAM
	  Function Flags sub-TLV";</t>
	  <t>- "MPLS OAM PM Delay sub-TLV" if the PM/Delay flag is set in the
	  "OAM Function Flags sub-TLV";</t>
	</list>
	</t>

	<t>The "Performance Monitoring sub-TLV" depicted below is carried as a
	sub-TLV of the "MPLS OAM Configuration sub-TLV".</t>

	<t>
	  <figure>
 	    <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Perf. Monitoring Type(2)   |          Length               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|D|L|J|Y|K|C|            Reserved (set to all 0s)               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
~                           sub-TLVs                            ~
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
	    ]]></artwork>                                             
	  </figure>  
	</t>  
	
	<t>Type: 2, "Performance Monitoring sub-TLV".</t>

	<t>Length: indicates the TLV total length in octets, including sub-TLVs as well as Type and Length fields. </t>

	<t>Configuration Flags, for the specific function description please refer to [RFC6374]:
	<list>
	  <t>- D: Delay inferred/direct (0=INFERRED, 1=DIRECT). If the egress LSR does
	  not support specified mode an "OAM Problem/Unsupported Delay Mode" error MUST be generated.</t>
	  <t>- L: Loss inferred/direct (0=INFERRED, 1=DIRECT). If the egress LSR does
	  not support specified mode an "OAM Problem/Unsupported Loss Mode" error MUST be generated.</t>
	  <t>- J: Delay variation/jitter (1=ACTIVE, 0=NOT ACTIVE). If the egress LSR does
	  not support Delay variation measurements and the J flag is set, an
	  "OAM Problem/Delay variation unsupported" error MUST be generated.</t>
	  <t>- Y: Dyadic (1=ACTIVE, 0=NOT ACTIVE). If the egress LSR does
	  not support Dyadic mode and the Y flag is set, an
	  "OAM Problem/Dyadic mode unsupported" error MUST be generated.</t>
	  <t>- K: Loopback (1=ACTIVE, 0=NOT ACTIVE). If the egress LSR does
	  not support Loopback mode and the K flag is set, an
	  "OAM Problem/Loopback mode unsupported" error MUST be generated.</t>
	  <t>- C: Combined (1=ACTIVE, 0=NOT ACTIVE). If the egress LSR does
	  not support Combined mode and the C flag is set, an
	  "OAM Problem/Combined mode unsupported" error MUST be generated.</t>
	</list>
	</t>
	<t>Reserved: Reserved for future specification and set to 0 on transmission and ignored when received.</t>
	
	<section title="MPLS OAM PM Loss sub-TLV">
	  <t>The "MPLS OAM PM Loss sub-TLV" depicted below is carried as a
	  sub-TLV of the "Performance Monitoring sub-TLV".</t>
	  
	  <t>
	    <figure>
	      <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       PM Loss Type (1)        |          Length               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OTF |T|B|              Reserved (set to all 0s)               |    
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    Measurement Interval                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       Test Interval                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      Loss Threshold                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
	      ]]></artwork>                                             
	    </figure>                                                                                                  
	  </t>
	  
	  <t>Type: 1,"MPLS OAM PM Loss sub-TLV".</t>
	  
	  <t>Length: indicates the length of the parameters in octets, including Type and Length fields (20).</t>

	  <t>OTF: Origin Timestamp Format of the Origin Timestamp field
	  described in [RFC6374].  By default it is set to IEEE 1588 version
	  1. If the egress LSR cannot support this value an "OAM
	  Problem/Unsupported Timestamp Format" error MUST be generated.  </t>
	  <t>Configuration Flags, please refer to [RFC6374] for further details:
	  <list>
	    <t>- 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.</t>
	    <t>- 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.</t>
	  </list>
	  </t>
	  <t>Reserved: Reserved for future specification and set to 0 on transmission and ignored when received.</t>
	  <t>Measurement Interval: the time interval (in milliseconds) at which Loss Measurement query messages MUST be
	  sent on both directions. If the egress LSR cannot support the value, it SHOULD reply with a supported
	  interval. By default it is set to (100) as per [RFC6375].</t>

	  <t>Test Interval: test messages interval in milliseconds as described in [RFC6374].
	  By default it is set to (10) as per [RFC6375]. If the egress LSR cannot support the value, it SHOULD reply with a supported
	  interval.</t>

	  <t>Loss Threshold: the threshold value of measured lost packets per measurement over which action(s)
	  SHOULD be triggered. </t>

	</section>	

	<section title="MPLS OAM PM Delay sub-TLV">
	  <t>The "MPLS OAM PM Delay sub-TLV" depicted below is carried as a
	  sub-TLV of the "Performance Monitoring sub-TLV".</t>

	  <t>
	    <figure>
	      <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      PM Delay Type (2)        |          Length               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OTF |T|B|             Reserved (set to all 0s)                |    
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    Measurement Interval                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       Test Interval                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      Delay Threshold                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
	      ]]></artwork>                                             
	    </figure>                                                                                                  
	  </t>

	  <t>Type: 2,"MPLS OAM PM Delay sub-TLV".</t>
	  
	  <t>Length: indicates the length of the parameters in octets, including Type and Length fields (20).</t>

	  <t>OTF: Origin Timestamp Format of the Origin Timestamp field described in [RFC6374]. 
	  By default it is set to IEEE 1588 version 1. If the egress LSR
	  cannot support this value an "OAM Problem/Unsupported Timestamp Format" error
	  MUST be generated. </t>	
	  <t>Configuration Flags, please refer to [RFC6374] for further details:
	  <list>
	    <t>- 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.</t>
	    <t>- 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.</t>
	  </list>
	  </t>
	  <t>Reserved: Reserved for future specification and set to 0 on transmission and ignored when received.</t>

	  <t>Measurement Interval: the time interval (in milliseconds) at which Delay Measurement query messages MUST be
	  sent on both directions. If the egress LSR cannot support the value, it SHOULD reply with a supported interval. By
	  default it is set to (1000) as per [RFC6375].</t>

	  <t>Test Interval: test messages interval (in milliseconds) as described in [RFC6374].
	  By default it is set to (10) as per [RFC6375]. If the egress LSR cannot support the value, it SHOULD reply with a supported interval.</t>

	  <t>Delay Threshold: the threshold value of measured two-way delay (in milliseconds) over which action(s)
	  SHOULD be triggered. </t>
	</section>
   </section>
   


    <section anchor="fms-sub-tlv" title="MPLS OAM FMS sub-TLV">
	<t>The "MPLS OAM FMS sub-TLV" depicted below is carried as a sub-TLV of
	the "MPLS OAM Configuration sub-TLV". When both working and protection paths
	are signaled, both LSPs SHOULD be signaled with identical settings of
	the E flag, T flag, and the refresh timer.</t>
	<t>
          <figure>
            <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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     MPLS OAM FMS Type (3)     |            Length             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|E|S|T|           Reserved            |      Refresh Timer      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
~                           sub-TLVs                            ~
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
	    ]]></artwork>                                             
	  </figure>                                                                                                  
	</t>

	<t>Type: 3, "MPLS OAM FMS sub-TLV".</t>

	<t>Length: indicates the TLV total length in octets, including Type and Length fields (8).</t>

	<t>FMS Signal Flags are used to enable the FMS signals at end point MEPs and
	the Server MEPs of the links over which the LSP is forwarded. In this
	document only the S flag pertains to Server MEPs. </t>
	
	<t>The following flags are defined:
	
	<list>
	  <t>- E: Enable Alarm Indication Signal (AIS) and Lock Report (LKR) signaling 
	  as described in [RFC6427]. Default value is 1 (enabled). If the egress MEP does not support FMS signal
	  generation an "OAM Problem/Fault management signaling unsupported" error MUST be generated. </t>
	  
	  <t>- S: Indicate to a Server MEP that it should transmit AIS and LKR signals on 
	  client LSPs. Default value is 0 (disabled). If a Server MEP which is capable of
	  generating FMS messages is for some
	  reason unable to do so for the LSP being signaled an "OAM Problem/Unable to
	  create fault management association" error MUST be generated.  </t>

	  <t>- T: Set timer value, enabled the configuration of a specific timer value. 
	  Default value is 0 (disabled).</t>
	  
	  <t>- Remaining bits: Reserved for future specification and set to 0.</t>
	</list>
	</t>
	<t>Refresh Timer: indicates the refresh timer of fault indication messages, in seconds. The value MUST be
	between 1 to 20 seconds as specified for the Refresh Timer field in [RFC6427]. If the egress LSR cannot support
	the value it SHOULD reply with a supported timer value. </t>
	
	<t>FMS sub-TLV MAY include Traffic Class sub-TLV <xref target="traffic-class-sub-tlv"/>. If TC sub-TLV is present,
	the value of the TC field MUST be used as the value of the TC field  of an MPLS label stack entry
	for FMS messages. If the TC sub-TLV is absent, then selection of the TC value is local decision.</t>

      </section>
    </section>

    <section anchor="ErrorSummary" title="Summary of MPLS OAM configuration errors">

      <t>In addition to error values specified in [RFC7260] this document
      defines the following values for the "OAM Problem" Error Code: </t>

	<t><list>
	  <t>- If an egress LSR does not support the specified BFD version, an error MUST be generated: "OAM Problem/Unsupported BFD Version".</t>
	  
	  <t>- If an egress LSR does not support the specified BFD Encapsulation format, an error MUST be generated: "OAM Problem/Unsupported BFD Encapsulation format".</t>
	  
	  <t>- If an egress LSR does not support BFD Authentication, and it is requested, 
	  an error MUST be generated: "OAM Problem/BFD Authentication unsupported".</t>

	  <t>- If an egress LSR does not support the specified BFD Authentication Type,
	  an error MUST be generated: "OAM Problem/Unsupported BFD Authentication Type".</t>

	  <t>- If an egress LSR is not able to use the specified Authentication Key ID, an
	  error MUST be generated: "OAM Problem/Mismatch of BFD Authentication Key ID".</t>
	  
	  <t>- If an egress LSR does not support the specified Timestamp Format, an error MUST be generated: "OAM Problem/Unsupported Timestamp
	  Format".</t>

	  <t>- If an egress LSR does not support specified Delay mode, an "OAM
	  Problem/Unsupported Delay Mode" error MUST be generated.</t>

	  <t>- If an egress LSR does not support specified Loss mode, an "OAM
	  Problem/Unsupported Loss Mode" error MUST be generated.</t>

	  <t>- If an egress LSR does not support Delay variation measurements, and it
	  is requested, an "OAM Problem/Delay variation unsupported" error MUST
	  be generated.</t>

	  <t>- If an egress LSR does not support Dyadic mode, and it is requested, an
	  "OAM Problem/Dyadic mode unsupported" error MUST be generated.</t>

	  <t>- If an egress LSR does not support Loopback mode, and it is requested, an
	  "OAM Problem/Loopback mode unsupported" error MUST be generated.</t>

	  <t>- If an egress LSR does not support Combined mode, and it is requested, an
	  "OAM Problem/Combined mode unsupported" error MUST be generated.</t>

	  <t>- If an egress LSR does not support Fault Monitoring Signals, and it is requested, an
	  "OAM Problem/Fault management signaling unsupported" error MUST be generated.</t>

	  <t>- If an intermediate server MEP supports Fault Monitoring Signals but is unable to create an association,
	  when requested to do so, an "OAM Problem/Unable to create fault management association" error MUST be generated.</t>



	</list>
	</t>

    </section>
    
    <section anchor="IANA" title="IANA Considerations">
 
       <section anchor="iana-mpls-oam" title="MPLS OAM Type">
      <t>This document specifies new the "MPLS OAM Type".
      IANA is requested to allocate a new type (TBA1) from the
      OAM Type space of the RSVP-TE OAM Configuration Registry. 
      </t>
   <texttable anchor="oam-mpls-type-tbl" title="OAM MPLS Type">
    <ttcol align='center'>Type</ttcol>
    <ttcol align='center'>Description</ttcol>
    <ttcol align='left'>Reference</ttcol>
    <c>TBA1</c>
    <c>MPLS OAM</c>
    <c>This document</c>
    </texttable>
      </section>     

     <section anchor="iana-mpls-oam-conf-tbl" title="MPLS OAM Configuration sub-TLV">
       <t>This document specifies the "MPLS OAM Configuration sub-TLV", IANA is
      requested to allocate a new type (TBA2) from the technology-specific sub-TLV space of the
      RSVP-TE OAM Configuration Registry. 
      </t>
 
   <texttable anchor="mpls-oam-conf-tbl" title="MPLS OAM Configuration sub-TLV Type">
    <ttcol align='center'>Type</ttcol>
    <ttcol align='center'>Description</ttcol>
    <ttcol align='left'>Reference</ttcol>
    <c>TBA2</c>
    <c>MPLS OAM Configuration sub-TLV</c>
    <c>This document</c>
    </texttable>   
      </section>

          <section anchor="iana-mpls-oam-tlv" title="MPLS OAM Configuration Sub-TLV Types">
	<t>IANA is requested to create an "MPLS OAM sub-TLV Types" sub-registry in the
	"RSVP-TE OAM Configuration Registry" for the sub-TLVs carried in
	the "MPLS OAM Configuration sub-TLV". Values from this new sub-registry to be
	allocated through IETF Review except for the Reserved for Experimental Use range.
	This document defines the
 following types:</t>

   <texttable anchor="mpls-oam-sub-tlv-tbl" title="MPLS OAM Configuration sub-TLV Types">
    <ttcol align='center'>Type</ttcol>
    <ttcol align='center'>Description</ttcol>
    <ttcol align='left'>Reference</ttcol>
    <c>0</c>
    <c>Reserved</c>
    <c>This document</c>
    <c>1</c>
    <c>BFD Configuration sub-TLV</c>
    <c>This document</c>
    <c>2</c>
    <c>Performance Monitoring sub-TLV</c>
    <c>This document</c>
    <c>3</c>
    <c>MPLS OAM FMS sub-TLV</c>
    <c>This document</c>
    <c>4-65532</c>
    <c>Unassigned</c>
    <c></c>
    <c>65533-65534</c>
    <c>Reserved for Experimental Use</c>
    <c>This document</c>
    <c>65535</c>
    <c>Reserved</c>
    <c>This document</c>
     </texttable>   

          </section>	

          <section anchor="iana-bfd-confsub-tlv-types" title="BFD Configuration Sub-TLV Types">      
          	<t>IANA is requested to create a "BFD Configuration sub-TLV Types" sub-registry in the
	"RSVP-TE OAM Configuration Registry" for the sub-TLV types carried in
	the "BFD Configuration sub-TLV".  Values from this new sub-registry to be
	allocated through IETF Review except for the Reserved for Experimental Use range.
	This document defines the following
 types:</t>

   <texttable anchor="bfd-conf-sub-tlv-tbl" title="BFD Configuration Sus-TLV Types">
    <ttcol align='center'>Type</ttcol>
    <ttcol align='center'>Description</ttcol>
    <ttcol align='left'>Reference</ttcol>
    <c>0</c>
    <c>Reserved</c>
    <c>This document</c>
    <c>1</c>
    <c>BFD Identifiers sub-TLV</c>
    <c>This document</c>
    <c>2</c>
    <c>Negotiation Timer Parameters sub-TLV</c>
    <c>This document</c>
    <c>3</c>
    <c>BFD Authentication sub-TLV</c>
    <c>This document</c>
    <c>4</c>
    <c>Traffic Class sub-TLV</c>
    <c>This document</c>
    <c>5-65532</c>
    <c>Unassigned</c>
    <c></c>
    <c>65533-65534</c>
    <c>Reserved for Experimental Use</c>
    <c>This document</c>
    <c>65535</c>
    <c>Reserved</c>
    <c>This document</c>
     </texttable>   
    </section>
    
     <section anchor="iana-perf-mon-tlv" title="Performance Monitoring sub-TLV Types">
	<t>IANA is requested to create a "Performance Monitoring sub-TLV Type" sub-registry in the
	"RSVP-TE OAM Configuration Registry" for the sub-TLV types carried in
	the "Performance Monitoring sub-TLV".   Values from this new sub-registry to be
	allocated through IETF Review except for the Reserved for Experimental Use range.
	This document defines the following
 types:</t>

   <texttable anchor="perf-mon-sub-tlv-tbl" title="Performance Monitoring sub-TLV Types">
    <ttcol align='center'>Type</ttcol>
    <ttcol align='center'>Description</ttcol>
    <ttcol align='left'>Reference</ttcol>
    <c>0</c>
    <c>Reserved</c>
    <c>This document</c>
    <c>1</c>
    <c>MPLS OAM PM Loss sub-TLV</c>
    <c>This document</c>
    <c>2</c>
    <c>MPLS OAM PM Delay sub-TLV</c>
    <c>This document</c>
    <c>3-65532</c>
    <c>Unassigned</c>
    <c></c>
    <c>65533-65534</c>
    <c>Reserved for Experimental Use</c>
    <c>This document</c>
    <c>65535</c>
    <c>Reserved</c>
    <c>This document</c>
     </texttable>   

   </section>

  <section anchor="iana-new-error-codes" title="New RSVP-TE error codes">
   <t>The following values need to be assigned under the "OAM Problem" Error
   Code <xref target="RFC7260"/> by IETF Review process:</t>
   
    <texttable anchor="iana-new-error-codes-tbl" title="MPLS OAM Configuration Error Codes">
    <ttcol align='left'>Error Value Sub-codes</ttcol>
    <ttcol align='left'>Description</ttcol>
    <ttcol align='left'>Reference</ttcol>
    <c>TBA3</c>
    <c>Unsupported BFD Version</c>
    <c>This document</c>
    <c>TBA4</c>
    <c>Unsupported BFD Encapsulation format</c>
    <c>This document</c>
    <c>TBA5</c>
    <c>Unsupported BFD Authentication Type</c>
    <c>This document</c>
    <c>TBA6</c>
    <c>Mismatch of BFD Authentication Key ID</c>
    <c>This document</c>
    <c>TBA7</c>
    <c>Unsupported Timestamp Format</c>
    <c>This document</c>
    <c>TBA8</c>
    <c>Unsupported Delay Mode</c>
    <c>This document</c>
    <c>TBA9</c>
    <c>Unsupported Loss Mode</c>
    <c>This document</c>
    <c>TBA10</c>
    <c>Delay variation unsupported</c>
    <c>This document</c>
    <c>TBA11</c>
    <c>Dyadic mode unsupported</c>
    <c>This document</c>
    <c>TBA12</c>
    <c>Loopback mode unsupported</c>
    <c>This document</c>
    <c>TBA13</c>
    <c>Combined mode unsupported</c>
    <c>This document</c>
    <c>TBA14</c>
    <c>Fault management signaling unsupported</c>
    <c>This document</c>
    <c>TBA15</c>
    <c>Unable to create fault management association</c>
    <c>This document</c>
     </texttable>   


    <t>

    The "Sub-codes - 40, OAM Problem" sub-registry is located in the "Error Codes and Globally-Defined Error Value Sub-Codes" registry.

    </t>
    </section>
    </section>
    
    <section title="Contributing Authors"> 
	<t>This document is the result of a large team of authors and
	contributors.  The following is a list of the co-authors:</t>
	
	<t>
	  <list>
	    <t>John Drake</t>
	    <t>Benoit Tremblay</t>
	  </list>
	</t>
    </section>

   
    <section title="Acknowledgements">
      <t>The authors would like to thank David Allan, Lou Berger, Annamaria
      Fulignoli, Eric Gray, Andras Kern, David Jocha and David Sinicrope for
      their useful comments.</t>
    </section>

    <section anchor="Security" title="Security Considerations">
      <t>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
      as discussed in [RFC7260] and [RFC6060].</t>
    </section>

  </middle>

  <!--  *****BACK MATTER ***** -->

  <back>

    <references title="Normative References">
      <?rfc include="reference.RFC.2119"?>
      <?rfc include="reference.RFC.3473"?>
      <?rfc include="reference.RFC.5654"?>
      <?rfc include="reference.RFC.5860"?>
      <?rfc include="reference.RFC.5880"?>
      <?rfc include="reference.RFC.5884"?>
      <?rfc include="reference.RFC.6370"?>
      <?rfc include="reference.RFC.6374"?>
      <?rfc include="reference.RFC.6427"?>
      <?rfc include="reference.RFC.6428"?>
     <?rfc include="reference.RFC.6060"?>
     <?rfc include="reference.RFC.7260"?>

     
  </references>

    <references title="Informative References">

      <?rfc include="reference.RFC.6371"?>
      <?rfc include="reference.RFC.6375"?>

 
     <?rfc include="reference.RFC.5462"?>
     
      <reference anchor="LSP-PING-CONF" target="draft-ietf-mpls-lsp-ping-mpls-tp-oam-conf">
        <front>
          <title>Configuration of pro-active MPLS-TP Operations, Administration, and Maintenance (OAM) Functions Using LSP Ping</title>

          <author initials="E" surname="Bellagamba">
            <organization>Ericsson</organization>
          </author>

          <author initials="L" surname="Andersson">
            <organization>Huawei Technologies Co</organization>
          </author>

          <author initials="D" surname="Ward">
            <organization>Cisco</organization>
          </author>
          <author initials="J" surname="Drake">
            <organization>Juniper</organization>
          </author>

          <author initials="P" surname="Skoldstrom">
            <organization>Acreo</organization>
          </author>

          <date year="2014" />
        </front>
      </reference>

    </references>
  </back>
</rfc>

PAFTECH AB 2003-20262026-04-23 12:15:12