PCE                                                              H. Yuan
Internet-Draft                                                  UnionPay
Intended status: Standards Track                                 X. Wang
Expires: 11 July 2024                                      China Telecom
                                                                 P. Yang
                                                                   W. Li
                                                             G. Fioccola
                                                                  Huawei
                                                          8 January 2024


  Path Computation Element Communication Protocol (PCEP) Extensions to
                              Enable IFIT
                      draft-ietf-pce-pcep-ifit-04

Abstract

   In-situ Flow Information Telemetry (IFIT) refers to network OAM data
   plane on-path telemetry techniques, in particular In-situ OAM (IOAM)
   and Alternate Marking.  This document defines PCEP extensions to
   allow a Path Computation Client (PCC) to indicate which IFIT features
   it supports, and a Path Computation Element (PCE) to configure IFIT
   behavior at a PCC for a specific path in the stateful PCE model.  The
   application to Segment Routing (SR) is reported.  However, the PCEP
   extensions described in this document can be generalized for all path
   types, but that is out of scope of this document.

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 https://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 11 July 2024.

Copyright Notice

   Copyright (c) 2024 IETF Trust and the persons identified as the
   document authors.  All rights reserved.



Yuan, et al.              Expires 11 July 2024                  [Page 1]


Internet-Draft                  pcep-ifit                   January 2024


   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://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 Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Requirements Language . . . . . . . . . . . . . . . . . .   4
   2.  PCEP Extensions for IFIT Attributes . . . . . . . . . . . . .   4
   3.  IFIT capability advertisement TLV . . . . . . . . . . . . . .   5
   4.  IFIT Attributes TLV . . . . . . . . . . . . . . . . . . . . .   7
     4.1.  IOAM Sub-TLVs . . . . . . . . . . . . . . . . . . . . . .   8
       4.1.1.  IOAM Pre-allocated Trace Option Sub-TLV . . . . . . .   8
       4.1.2.  IOAM Incremental Trace Option Sub-TLV . . . . . . . .   9
       4.1.3.  IOAM Directly Export Option Sub-TLV . . . . . . . . .  10
       4.1.4.  IOAM Edge-to-Edge Option Sub-TLV  . . . . . . . . . .  11
     4.2.  Enhanced Alternate Marking Sub-TLV  . . . . . . . . . . .  12
   5.  PCEP Messages . . . . . . . . . . . . . . . . . . . . . . . .  13
     5.1.  The PCInitiate Message  . . . . . . . . . . . . . . . . .  13
     5.2.  The PCUpd Message . . . . . . . . . . . . . . . . . . . .  13
     5.3.  The PCRpt Message . . . . . . . . . . . . . . . . . . . .  13
   6.  Application to SR Policy  . . . . . . . . . . . . . . . . . .  14
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  15
     7.1.  PCEP TLV Type Indicators  . . . . . . . . . . . . . . . .  15
     7.2.  IFIT-CAPABILITY TLV Flags field . . . . . . . . . . . . .  15
     7.3.  IFIT-ATTRIBUTES Sub-TLV . . . . . . . . . . . . . . . . .  16
     7.4.  Enhanced Alternate Marking Sub-TLV Flags field  . . . . .  17
     7.5.  PCEP Error Codes  . . . . . . . . . . . . . . . . . . . .  18
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  18
   9.  Contributors  . . . . . . . . . . . . . . . . . . . . . . . .  19
   10. Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  19
   11. References  . . . . . . . . . . . . . . . . . . . . . . . . .  19
     11.1.  Normative References . . . . . . . . . . . . . . . . . .  19
     11.2.  Informative References . . . . . . . . . . . . . . . . .  21
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  22

1.  Introduction

   In-situ Flow Information Telemetry (IFIT) refers to network OAM
   (Operations, Administration, and Maintenance) data plane on-path
   telemetry techniques, including In-situ OAM (IOAM) [RFC9197] and
   Alternate Marking [RFC9341].  It can provide flow information on the
   entire forwarding path on a per- packet basis in real time.



Yuan, et al.              Expires 11 July 2024                  [Page 2]


Internet-Draft                  pcep-ifit                   January 2024


   RFC 5440 [RFC5440] describes the Path Computation Element Protocol
   (PCEP) as a communication mechanism between a Path Computation Client
   (PCC) and a Path Computation Element (PCE), or between a PCE and a
   PCE.

   RFC 8231 [RFC8231] specifies extensions to PCEP to enable stateful
   control and it describes two modes of operation: passive stateful PCE
   and active stateful PCE.  Further, RFC 8281 [RFC8281] describes the
   setup, maintenance, and teardown of PCE-initiated LSPs for the
   stateful PCE model.

   This document defines PCEP extensions to allow a Path Computation
   Client (PCC) to indicate which IFIT features it supports, and a Path
   Computation Element (PCE) to configure IFIT behavior at a PCC for a
   specific path in the stateful PCE model.  The PCEP extensions defined
   in this document allow to distribute paths carrying IFIT information,
   so that IFIT methods can be enabled automatically when the path is
   instantiated.

   When a PCE is used to initiate paths using PCEP, the head end of the
   path should also support the IFIT method that is intended for the
   path.  When PCEP is used for path initiation it makes sense that PCEP
   is also used to carry the IFIT attributes that describe the IOAM or
   Alternate Marking procedures that needs to be applied.

   The PCEP extension defined in this document is generalized and allows
   to signal the IFIT capabilities for all path types as long as they
   support the IFIT methods.  The flexibility and dynamicity of the IFIT
   applications are given by the use of additional functions on the
   controller and on the network nodes, but this is out of scope here.

   IFIT is a solution focusing on network domains according to [RFC8799]
   that introduces the concept of specific domain solutions.  A network
   domain consists of a set of network devices or entities within a
   single administration.  As mentioned in [RFC8799], for a number of
   reasons, such as policies, options supported, style of network
   management and security requirements, it is suggested to limit
   applications including the emerging IFIT techniques to a controlled
   domain.  Hence, the IFIT methods MUST be typically deployed in such
   controlled domains.

   The Use Case of Segment Routing (SR) is discussed considering that
   IFIT methods are becoming mature for Segment Routing over the MPLS
   data plane (SR-MPLS) and Segment Routing over IPv6 data plane (SRv6).
   SR policy [RFC9256] is a set of candidate SR paths consisting of one
   or more segment lists and necessary path attributes.  It enables
   instantiation of an ordered list of segments with a specific intent
   for traffic steering.  The PCEP extension defined in this document



Yuan, et al.              Expires 11 July 2024                  [Page 3]


Internet-Draft                  pcep-ifit                   January 2024


   also enables SR policy with native IFIT, that can facilitate the
   closed loop control and enable the automation of SR service.  An
   additional example that can be done is for IP network by leveraging
   [I-D.ietf-pce-pcep-extension-native-ip].

   It is to be noted the companion document
   [I-D.ietf-idr-sr-policy-ifit] that proposes the BGP extension to
   enable IFIT methods for SR policy.  Both documents complement the
   deployment scenario described in [I-D.song-opsawg-ifit-framework].

1.1.  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 in BCP 14 [RFC2119]
   [RFC8174] when, and only when, they appear in all capitals, as shown
   here.

2.  PCEP Extensions for IFIT Attributes

   This document is to add IFIT attribute TLVs as PCEP Extensions.  The
   following sections will describe the requirement and usage of
   different IFIT modes, and define the corresponding TLV encoding in
   PCEP.

   The IFIT attributes here described can be generalized and included as
   TLVs carried inside the LSPA (LSP Attributes) object in order to be
   applied for all path types, as long as they support the relevant data
   plane telemetry method.  IFIT Attributes TLVs are optional and can be
   taken into account by the PCE during path computation and by the PCC
   during path setup.  In general, the LSPA object can be carried within
   a PCInitiate message, a PCUpd message, or a PCRpt message in the
   stateful PCE model.

   If a PCE instantiates a path on the PCC with an IFIT capability
   enabled, it is supposed that there are at least two nodes (e.g.
   starting and ending node) which support it.  If nodes on the path do
   not support some capabilities, they should simply forward the packet
   without any changes to the data fields according to RFC 9197
   [RFC9197] and Alternate Marking [RFC9341].

   In this document it is considered the case of SR Policy since IOAM
   and Alternate Marking are more mature especially for Segment Routing
   (SR) and for IPv6.







Yuan, et al.              Expires 11 July 2024                  [Page 4]


Internet-Draft                  pcep-ifit                   January 2024


   It is to be noted that, if it is needed to apply different IFIT
   methods for each Segment List, the IFIT attributes can be added into
   the PATH-ATTRIB object, instead of the LSPA object, according to
   [I-D.ietf-pce-multipath] that defines PCEP Extensions for Signaling
   Multipath Information.

3.  IFIT capability advertisement TLV

   During the PCEP initialization phase, PCEP speakers (PCE or PCC)
   SHOULD advertise their support of IFIT methods (e.g.  IOAM and
   Alternate Marking).

   A PCEP speaker includes the IFIT-CAPABILITY TLVs in the OPEN object
   to advertise its support for PCEP IFIT extensions.  The presence of
   the IFIT-CAPABILITY TLV in the OPEN object indicates that the IFIT
   methods are supported.

   RFC 8664 [RFC8664] and [I-D.ietf-pce-segment-routing-ipv6] define a
   new Path Setup Type (PST) for SR and also define the SR-PCE-
   CAPABILITY sub-TLV.  This document defined a new IFIT-CAPABILITY TLV,
   that is an optional TLV for use in the OPEN Object for IFIT
   attributes via PCEP capability advertisement.

   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           Type                |            Length=4           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           Flags                     |P|I|D|E|M|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 1: Fig. 1 IFIT-CAPABILITY TLV Format

   Where:

   Type: to be assigned by IANA.

   Length: 4.

   Flags: The following flags are defined in this document:

      P: IOAM Pre-allocated Trace Option Type-enabled flag RFC 9197
      [RFC9197].  If set to 1 by a PCC, the P flag indicates that the
      PCC allows instantiation of the IOAM Pre-allocated Trace feature
      by a PCE.  If set to 1 by a PCE, the P flag indicates that the PCE
      supports the IOAM Pre-allocated Trace feature instantiation.  The
      P flag MUST be set by both PCC and PCE in order to support the
      IOAM Pre-allocated Trace instantiation



Yuan, et al.              Expires 11 July 2024                  [Page 5]


Internet-Draft                  pcep-ifit                   January 2024


      I: IOAM Incremental Trace Option Type-enabled flag RFC 9197
      [RFC9197].  If set to 1 by a PCC, the I flag indicates that the
      PCC allows instantiation of the IOAM Incremental Trace feature by
      a PCE.  If set to 1 by a PCE, the I flag indicates that the PCE
      supports the relative IOAM Incremental Trace feature
      instantiation.  The I flag MUST be set by both PCC and PCE in
      order to support the IOAM Incremental Trace feature instantiation

      D: IOAM DEX Option Type-enabled flag RFC 9326 [RFC9326].  If set
      to 1 by a PCC, the D flag indicates that the PCC allows
      instantiation of the relative IOAM DEX feature by a PCE.  If set
      to 1 by a PCE, the D flag indicates that the PCE supports the
      relative IOAM DEX feature instantiation.  The D flag MUST be set
      by both PCC and PCE in order to support the IOAM DEX feature
      instantiation

      E: IOAM E2E Option Type-enabled flag RFC 9197 [RFC9197] .  If set
      to 1 by a PCC, the E flag indicates that the PCC allows
      instantiation of the relative IOAM E2E feature by a PCE.  If set
      to 1 by a PCE, the E flag indicates that the PCE supports the
      relative IOAM E2E feature instantiation.  The E flag MUST be set
      by both PCC and PCE in order to support the IOAM E2E feature
      instantiation

      M: Alternate Marking enabled flag Alternate Marking [RFC9341].  If
      set to 1 by a PCC, the M flag indicates that the PCC allows
      instantiation of the relative Alternate Marking feature by a PCE.
      If set to 1 by a PCE, the M flag indicates that the PCE supports
      the relative Alternate Marking feature instantiation.  The M flag
      MUST be set by both PCC and PCE in order to support the Alternate
      Marking feature instantiation

      Unassigned bits are considered reserved.  They MUST be set to 0 on
      transmission and MUST be ignored on receipt.

   Advertisement of the IFIT-CAPABILITY TLV implies support of IFIT
   methods (IOAM and/or Alternate Marking) as well as the objects, TLVs,
   and procedures defined in this document.  It is worth mentioning that
   IOAM and Alternate Marking can be activated one at a time or can
   coexist; so it is possible to have only IOAM or only Alternate
   Marking enabled but they are recognized in general as IFIT
   capability.

   The IFIT Capability Advertisement can imply the following cases:

   *  The PCEP protocol extensions for IFIT MUST NOT be used if one or
      both PCEP speakers have not included the IFIT-CAPABILITY TLV in
      their respective OPEN message.



Yuan, et al.              Expires 11 July 2024                  [Page 6]


Internet-Draft                  pcep-ifit                   January 2024


   *  A PCEP speaker that does not recognize the extensions defined in
      this document would simply ignore the TLVs as per RFC 5440
      [RFC5440].

   *  If a PCEP speaker supports the extensions defined in this document
      but did not advertise this capability, then upon receipt of IFIT-
      ATTRIBUTES TLV in the LSP Attributes (LSPA) object, it SHOULD
      generate a PCErr with Error-Type 19 (Invalid Operation) with the
      relative Error-value "IFIT capability not advertised" and ignore
      the IFIT-ATTRIBUTES TLV.

4.  IFIT Attributes TLV

   The IFIT-ATTRIBUTES TLV provides the configurable knobs of the IFIT
   feature, and it can be included as an optional TLV in the LSPA object
   (as described in RFC 5440 [RFC5440]).

   For a PCE-initiated LSP RFC 8281 [RFC8281], this TLV is included in
   the LSPA object with the PCInitiate message.  For the PCC-initiated
   delegated LSPs, this TLV is carried in the Path Computation State
   Report (PCRpt) message in the LSPA object.  This TLV is also carried
   in the LSPA object with the Path Computation Update Request (PCUpd)
   message to direct the PCC (LSP head-end) to make updates to IFIT
   attributes.

   The TLV is encoded in all PCEP messages for the LSP if IFIT feature
   is enabled.  The absence of the TLV indicates the PCEP speaker wishes
   to disable the feature.  This TLV includes multiple IFIT-ATTRIBUTES
   sub-TLVs.  The IFIT-ATTRIBUTES sub-TLVs are included if there is a
   change since the last information sent in the PCEP message.  The
   default values for missing sub-TLVs apply for the first PCEP message
   for the LSP.

   The format of the IFIT-ATTRIBUTES TLV is shown in the following
   figure:

   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |             Type              |           Length              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   //                            sub-TLVs                          //
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Figure 2: Fig. 2 IFIT-ATTRIBUTES TLV Format




Yuan, et al.              Expires 11 July 2024                  [Page 7]


Internet-Draft                  pcep-ifit                   January 2024


   Where:

   Type: to be assigned by IANA.

   Length: The Length field defines the length of the value portion in
   bytes as per RFC 5440 [RFC5440].

   Value: This comprises one or more sub-TLVs.

   The following sub-TLVs are defined in this document:

     Type    Len   Name
   -----------------------------------------------------
     1       8     IOAM Pre-allocated Trace Option

     2       8     IOAM Incremental Trace Option

     3      12     IOAM Directly Export Option

     4       4     IOAM Edge-to-Edge Option

     5       4     Enhanced Alternate Marking

         Figure 3: Fig. 3 Sub-TLV Types of the IFIT-ATTRIBUTES TLV

4.1.  IOAM Sub-TLVs

   In-situ Operations, Administration, and Maintenance (IOAM) [RFC9197]
   records operational and telemetry information in the packet while the
   packet traverses a path between two points in the network.  In terms
   of the classification given in RFC 7799 [RFC7799] IOAM could be
   categorized as Hybrid Type 1.  IOAM mechanisms can be leveraged where
   active OAM do not apply or do not offer the desired results.

   For the SR use case, when SR policy enables IOAM, the IOAM header
   will be inserted into every packet of the traffic that is steered
   into the SR paths.  Since this document aims to define the control
   plane, it is to be noted that a relevant document for the data plane
   is RFC 9486 [RFC9486] for Segment Routing over IPv6 data plane
   (SRv6).

4.1.1.  IOAM Pre-allocated Trace Option Sub-TLV

   The IOAM tracing data is expected to be collected at every node that
   a packet traverses to ensure visibility into the entire path a packet
   takes within an IOAM domain.  The preallocated tracing option will
   create pre-allocated space for each node to populate its information.




Yuan, et al.              Expires 11 July 2024                  [Page 8]


Internet-Draft                  pcep-ifit                   January 2024


   The format of IOAM pre-allocated trace option Sub-TLV is defined as
   follows:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-------------------------------+-------------------------------+
   |          Type=1               |           Length=8            |
   +---------------------------------------------------------------+
   |       Namespace ID            |            Rsvd1              |
   +-------------------------------+-----------------------+-------+
   |         IOAM Trace Type                      | Flags  | Rsvd2 |
   +----------------------------------------------+--------+-------+

          Figure 4: Fig. 4 IOAM Pre-allocated Trace Option Sub-TLV

   Where:

   Type: 1 (to be assigned by IANA).

   Length: 8.  It is the total length of the value field not including
   Type and Length fields.

   Namespace ID: A 16-bit identifier of an IOAM-Namespace.  The
   definition is the same as described in section 4.4 of RFC 9197
   [RFC9197].

   IOAM Trace Type: A 24-bit identifier which specifies which data types
   are used in the node data list.  The definition is the same as
   described in section 4.4 of RFC 9197 [RFC9197].

   Flags: A 4-bit field.  The definition is the same as described in RFC
   9322 [RFC9322] and section 4.4 of RFC 9197 [RFC9197].

   Rsvd1: A 16-bit field reserved for further usage.  It MUST be zero
   and ignored on receipt.

   Rsvd2: A 4-bit field reserved for further usage.  It MUST be zero and
   ignored on receipt.

4.1.2.  IOAM Incremental Trace Option Sub-TLV

   The incremental tracing option contains a variable node data fields
   where each node allocates and pushes its node data immediately
   following the option header.

   The format of IOAM incremental trace option Sub-TLV is defined as
   follows:




Yuan, et al.              Expires 11 July 2024                  [Page 9]


Internet-Draft                  pcep-ifit                   January 2024


    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-------------------------------+-------------------------------+
   |          Type=2               |           Length=8            |
   +---------------------------------------------------------------+
   |       Namespace ID            |            Rsvd1              |
   +-------------------------------+-----------------------+-------+
   |         IOAM Trace Type                      | Flags  | Rsvd2 |
   +----------------------------------------------+--------+-------+

           Figure 5: Fig. 5 IOAM Incremental Trace Option Sub-TLV

   Where:

   Type: 2 (to be assigned by IANA).

   Length: 8.  It is the total length of the value field not including
   Type and Length fields.

   All the other fields definition is the same as the pre-allocated
   trace option Sub-TLV in the previous section.

4.1.3.  IOAM Directly Export Option Sub-TLV

   IOAM directly export option is used as a trigger for IOAM data to be
   directly exported to a collector without being pushed into in-flight
   data packets.

   The format of IOAM directly export option Sub-TLV is defined as
   follows:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-------------------------------+-------------------------------+
   |           Type=3              |         Length=12             |
   +---------------------------------------------------------------+
   |        Namespace ID           |            Flags              |
   +-------------------------------+---------------+---------------+
   |               IOAM Trace Type                 |      Rsvd     |
   +-----------------------------------------------+---------------+
   |                         Flow ID                               |
   +---------------------------------------------------------------+

            Figure 6: Fig. 6 IOAM Directly Export Option Sub-TLV

   Where:

   Type: 3 (to be assigned by IANA).



Yuan, et al.              Expires 11 July 2024                 [Page 10]


Internet-Draft                  pcep-ifit                   January 2024


   Length: 12.  It is the total length of the value field not including
   Type and Length fields.

   Namespace ID: A 16-bit identifier of an IOAM-Namespace.  The
   definition is the same as described in section 4.4 of RFC 9197
   [RFC9197].

   IOAM Trace Type: A 24-bit identifier which specifies which data types
   are used in the node data list.  The definition is the same as
   described in section 4.4 of RFC 9197 [RFC9197].

   Flags: A 16-bit field.  The definition is the same as described in
   section 3.2 of RFC 9326 [RFC9326].

   Flow ID: A 32-bit flow identifier.  The definition is the same as
   described in section 3.2 of RFC 9326 [RFC9326].

   Rsvd: A 4-bit field reserved for further usage.  It MUST be zero and
   ignored on receipt.

4.1.4.  IOAM Edge-to-Edge Option Sub-TLV

   The IOAM edge to edge option is to carry data that is added by the
   IOAM encapsulating node and interpreted by IOAM decapsulating node.

   The format of IOAM edge-to-edge option Sub-TLV is defined as follows:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-------------------------------+-------------------------------+
   |         Type=4                |          Length=4             |
   +---------------------------------------------------------------+
   |        Namespace ID           |         IOAM E2E Type         |
   +-------------------------------+-------------------------------+

             Figure 7: Fig. 7 IOAM Edge-to-Edge Option Sub-TLV

   Where:

   Type: 4 (to be assigned by IANA).

   Length: 4.  It is the total length of the value field not including
   Type and Length fields.

   Namespace ID: A 16-bit identifier of an IOAM-Namespace.  The
   definition is the same as described in section 4.6 of RFC 9197
   [RFC9197].




Yuan, et al.              Expires 11 July 2024                 [Page 11]


Internet-Draft                  pcep-ifit                   January 2024


   IOAM E2E Type: A 16-bit identifier which specifies which data types
   are used in the E2E option data.  The definition is the same as
   described in section 4.6 of RFC 9197 [RFC9197].

4.2.  Enhanced Alternate Marking Sub-TLV

   The Alternate Marking [RFC9341] technique is an hybrid performance
   measurement method, per RFC 7799 [RFC7799] classification of
   measurement methods.  Because this method is based on marking
   consecutive batches of packets.  It can be used to measure packet
   loss, latency, and jitter on live traffic.

   For the SR use case, since this document aims to define the control
   plane, it is to be noted that a relevant document for the data plane
   is RFC 9343 [RFC9343] for Segment Routing over IPv6 data plane
   (SRv6).

   The format of Enhanced Alternate Marking (EAM) Sub-TLV is defined as
   follows:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-------------------------------+-------------------------------+
   |            Type=5             |           Length=4            |
   +-------------------------------+-------+---------------+-------+
   |           FlowMonID                   |     Period    | Flags |
   +---------------------------------------+---------------+-------+

            Figure 8: Fig. 8 Enhanced Alternate Marking Sub-TLV

   Where:

   Type: 5 (to be assigned by IANA).

   Length: 4.  It is the total length of the value field not including
   Type and Length fields.

   FlowMonID: A 20-bit identifier to uniquely identify a monitored flow
   within the measurement domain.  The definition is the same as
   described in section 5.3 of RFC 9343 [RFC9343].  It is to be noted
   that PCE also needs to maintain the uniqueness of FlowMonID as
   described in RFC 9343 [RFC9343].

   Period: Time interval between two alternate marking period.  The unit
   is second.

   Flags: A 4-bits field.  Two flags are currently assigned:




Yuan, et al.              Expires 11 July 2024                 [Page 12]


Internet-Draft                  pcep-ifit                   January 2024


      H: A flag indicating that the measurement is Hop-By-Hop.

      E: A flag indicating that the measurement is End-to-End.

      Unassigned bits MUST be set to zero on transmission and ignored on
      receipt.

5.  PCEP Messages

5.1.  The PCInitiate Message

   A PCInitiate message is a PCEP message sent by a PCE to a PCC to
   trigger LSP instantiation or deletion RFC 8281 [RFC8281].

   For the PCE-initiated LSP with the IFIT feature enabled, IFIT-
   ATTRIBUTES TLV MUST be included in the LSPA object with the
   PCInitiate message.

   The Routing Backus-Naur Form (RBNF) definition of the PCInitiate
   message RFC 8281 [RFC8281] is unchanged by this document.

5.2.  The PCUpd Message

   A PCUpd message is a PCEP message sent by a PCE to a PCC to update
   the LSP parameters RFC 8231 [RFC8231].

   For PCE-initiated LSPs with the IFIT feature enabled, the IFIT-
   ATTRIBUTES TLV MUST be included in the LSPA object with the PCUpd
   message.  The PCE can send this TLV to direct the PCC to change the
   IFIT parameters.

   The RBNF definition of the PCUpd message RFC 8231 [RFC8231] is
   unchanged by this document.

5.3.  The PCRpt Message

   The PCRpt message RFC 8231 [RFC8231] is a PCEP message sent by a PCC
   to a PCE to report the status of one or more LSPs.

   For PCE-initiated LSPs RFC 8281 [RFC8281], the PCC creates the LSP
   using the attributes communicated by the PCE and the local values for
   the unspecified parameters.  After the successful instantiation of
   the LSP, the PCC automatically delegates the LSP to the PCE and
   generates a PCRpt message to provide the status report for the LSP.

   The RBNF definition of the PCRpt message RFC 8231 [RFC8231] is
   unchanged by this document.




Yuan, et al.              Expires 11 July 2024                 [Page 13]


Internet-Draft                  pcep-ifit                   January 2024


   For both PCE-initiated and PCC-initiated LSPs, when the LSP is
   instantiated the IFIT methods are applied as specified for the
   corresponding data plane.  RFC 9486 [RFC9486] and RFC 9343 [RFC9343]
   are the relevant documents for Segment Routing over IPv6 data plane
   (SRv6).

6.  Application to SR Policy

   RFC 8664 [RFC8664] and [I-D.ietf-pce-segment-routing-ipv6] specify
   extensions to the Path Computation Element Communication Protocol
   (PCEP) that allow a stateful PCE to compute and initiate Traffic-
   Engineering (TE) paths, as well as a Path Computation Client (PCC) to
   request a path subject to certain constraints and optimization
   criteria in SR networks both for SR-MPLS and SRv6.

   IFIT attibutes, here defined as TLVs for the LSPA object, complement
   both RFC 8664 [RFC8664], [I-D.ietf-pce-segment-routing-ipv6] and
   [I-D.ietf-pce-segment-routing-policy-cp].

   It is worth mentioning that, at the moment, the IFIT methods (IOAM
   and Alternate Marking) are more mature for SRv6 compared to SR-MPLS.
   The reference documents are RFC 9486 [RFC9486] and RFC 9343 [RFC9343]
   for SRv6.

   A PCC or PCE sets the IFIT-CAPABILITY TLV in the Open message during
   the PCEP initialization phase to indicate that it supports the IFIT
   procedures.

   [I-D.ietf-pce-segment-routing-policy-cp] defines the PCEP extension
   to support Segment Routing Policy Candidate Paths and in this regard
   the SRPAG Association object is introduced.

   The Examples of PCC Initiated SR Policy with single or multiple
   candidate-paths and PCE Initiated SR Policy with single or multiple
   candidate-paths are reported in
   [I-D.ietf-pce-segment-routing-policy-cp].

   In case of PCC Initiated SR Policy, PCC sends PCReq message to the
   PCE, encoding the SRPAG ASSOCIATION object and IFIT-ATTRIBUTES TLV
   via the LSPA object.  This is valid for both single and multiple
   candidate-paths.  Finally PCE returns the path in PCRep message, and
   echoes back the SRPAG object that were used in the computation and
   IFIT LSPA TLVs too.  Additionally, PCC sends PCRpt message to the
   PCE, including the LSP object and the SRPAG ASSOCIATION object and
   IFIT-ATTRIBUTES TLV via the LSPA object.  Then PCE computes path and
   finally PCE updates the SR policy candidate path's ERO using PCUpd
   message considering the IFIT LSPA TLVs too.




Yuan, et al.              Expires 11 July 2024                 [Page 14]


Internet-Draft                  pcep-ifit                   January 2024


   In case of PCE Initiated SR Policy, PCE sends PCInitiate message,
   containing the SRPAG Association object and IFIT-ATTRIBUTES TLV via
   the LSPA object.  This is valid for both single and multiple
   candidate-paths.  Then PCC uses the color, endpoint and preference
   from the SRPAG object to create a new candidate path considering the
   IFIT LSPA TLVs too.  Finally PCC sends a PCRpt message back to the
   PCE to report the newly created Candidate Path.  The PCRpt message
   contains the SRPAG Association object and IFIT-ATTRIBUTES
   information.

   The procedure of enabling/disabling IFIT is simple, indeed the PCE
   can update the IFIT-ATTRIBUTES of the LSP by sending subsequent Path
   Computation Update Request (PCUpd) messages.  PCE can update the
   IFIT-ATTRIBUTES of the LSP by sending Path Computation State Report
   (PCRpt) messages.

7.  IANA Considerations

   This document defines the new IFIT-CAPABILITY TLV and IFIT-ATTRIBUTES
   TLV.

7.1.  PCEP TLV Type Indicators

   IANA is requested to make the assignment from the "PCEP TLV Type
   Indicators" subregistry of the "Path Computation Element Protocol
   (PCEP) Numbers" registry as follows:

   Value        Description                      Reference
   -------------------------------------------------------------
   TBD1         IFIT-CAPABILITY TLV              This document

   TBD2         IFIT-ATTRIBUTES TLV              This document

7.2.  IFIT-CAPABILITY TLV Flags field

   This document specifies the IFIT-CAPABILITY TLV 32-bits Flags field.
   IANA is requested to create a registry to manage the value of the
   IFIT-CAPABILITY TLV's Flags field within the "Path Computation
   Element Protocol (PCEP) Numbers" registry.

   New values are to be assigned by Standards Action RFC 8126 [RFC8126].
   Each bit should be tracked with the following qualities:

      * Bit number (count from 0 as the most significant bit)

      * Flag Name

      * Reference



Yuan, et al.              Expires 11 July 2024                 [Page 15]


Internet-Draft                  pcep-ifit                   January 2024


   IANA is requested to set 5 new bits in the IFIT-CAPABILITY TLV Flags
   Field registry, as follows:

   Bit no.   Flag Name                                   Reference
   ---------------------------------------------------------------------
   0-26      Unassigned                                  This document

   27        P: IOAM Pre-allocated Trace Option flag     This document

   28        I: IOAM Incremental Trace Option flag       This document

   29        D: IOAM Directly Export Option flag         This document

   30        E: IOAM Edge-to-Edge Option                 This document

   31        M: Alternate Marking Flag                   This document

7.3.  IFIT-ATTRIBUTES Sub-TLV

   This document also specifies the IFIT-ATTRIBUTES sub-TLVs.  IANA is
   requested to create an "IFIT-ATTRIBUTES Sub-TLV Types" subregistry
   within the "Path Computation Element Protocol (PCEP) Numbers"
   registry.

   IANA is requested to set the Registration Procedure for this registry
   to read as follows:

     Range            Registration Procedure
   ------------------------------------------
     0-65503          IETF Review

     65504-65535      Experimental Use

   This document defines the following types:

















Yuan, et al.              Expires 11 July 2024                 [Page 16]


Internet-Draft                  pcep-ifit                   January 2024


   Type          Description                         Reference
   ---------------------------------------------------------------
   0             Reserved                            This document

   1             IOAM Pre-allocated Trace Option     This document

   2             IOAM Incremental Trace Option       This document

   3             IOAM Directly Export Option         This document

   4             IOAM Edge-to-Edge Option            This document

   5             Enhanced Alternate Marking          This document

   6-65503       Unassigned                          This document

   65504-65535   Experimental Use                    This document

7.4.  Enhanced Alternate Marking Sub-TLV Flags field

   This document specifies the Enhanced Alternate Marking Sub-TLV 4-bits
   Flags field.  IANA is requested to create a registry to manage the
   value of the Enhanced Alternate Marking Sub-TLV's Flags field within
   the "Path Computation Element Protocol (PCEP) Numbers" registry.

   New values are to be assigned by Standards Action RFC 8126 [RFC8126].
   Each bit should be tracked with the following qualities:

      * Bit number (count from 0 as the most significant bit)

      * Flag Name

      * Reference

   IANA is requested to set 2 new bits in the IFIT-CAPABILITY TLV Flags
   Field registry, as follows:

   Bit no.   Flag Name                                   Reference
   ---------------------------------------------------------------------
   3         H: Hop-By-Hop flag                          This document

   2         E: End-to-End flag                          This document

   0-1       Unassigned







Yuan, et al.              Expires 11 July 2024                 [Page 17]


Internet-Draft                  pcep-ifit                   January 2024


7.5.  PCEP Error Codes

   This document defines a new Error-value for PCErr message of Error-
   Type 19 (Invalid Operation).  IANA is requested to allocate a new
   Error-value within the "PCEP-ERROR Object Error Types and Values"
   subregistry of the "Path Computation Element Protocol (PCEP) Numbers"
   registry as follows:

   Error-Type   Meaning     Error-value          Reference
   ---------------------------------------------------------------
   19           Invalid     TBD3: IFIT             This document
                Operation   capability not
                            advertised

8.  Security Considerations

   This document defines the new IFIT-CAPABILITY TLV and IFIT Attributes
   TLVs, which do not add any substantial new security concerns beyond
   those already discussed in RFC 8231 [RFC8231] and RFC 8281 [RFC8281]
   for stateful PCE operations.  As per RFC 8231 [RFC8231], it is
   RECOMMENDED that these PCEP extensions only be activated on
   authenticated and encrypted sessions across PCEs and PCCs belonging
   to the same administrative authority, using Transport Layer Security
   (TLS) RFC 8253 [RFC8253], as per the recommendations and best current
   practices in BCP 195 RFC 7525 [RFC7525] (unless explicitly set aside
   in RFC 8253 [RFC8253]).

   Implementation of IFIT methods (IOAM and Alternate Marking) are
   mindful of security and privacy concerns, as explained in RFC 9197
   [RFC9197] and Alternate Marking [RFC9341].  Anyway incorrect IFIT
   parameters in the IFIT-ATTRIBUTES sub-TLVs SHOULD NOT have an adverse
   effect on the LSP as well as on the network, since it affects only
   the operation of the telemetry methodology.

   IFIT data MUST be propagated in a limited domain in order to avoid
   malicious attacks and solutions to ensure this requirement are
   respectively discussed in RFC 9197 [RFC9197] and RFC 9343 [RFC9343].

   IFIT methods (IOAM and Alternate Marking) are applied within a
   controlled domain where the network nodes are locally administered.
   A limited administrative domain provides the network administrator
   with the means to select, monitor and control the access to the
   network, making it a trusted domain also for the PCEP extensions
   defined in this document.







Yuan, et al.              Expires 11 July 2024                 [Page 18]


Internet-Draft                  pcep-ifit                   January 2024


9.  Contributors

   The following people provided relevant contributions to this
   document:

   Tianran Zhou
   Huawei
   Email: zhoutianran@huawei.com

   Yali Wang
   Huawei
   Email: wangyali11@huawei.com

   Dhruv Doody
   Huawei
   Email: dhruv.ietf@gmail.com

   Huanan Chen
   independent
   Email: -

10.  Acknowledgements

   The authors of this document would like to thank Huaimo Chen, Adrian
   Farrel, Greg Mirsky, Aijun Wang for the comments and review of this
   document.

11.  References

11.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC5440]  Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
              Element (PCE) Communication Protocol (PCEP)", RFC 5440,
              DOI 10.17487/RFC5440, March 2009,
              <https://www.rfc-editor.org/info/rfc5440>.

   [RFC7525]  Sheffer, Y., Holz, R., and P. Saint-Andre,
              "Recommendations for Secure Use of Transport Layer
              Security (TLS) and Datagram Transport Layer Security
              (DTLS)", RFC 7525, DOI 10.17487/RFC7525, May 2015,
              <https://www.rfc-editor.org/info/rfc7525>.





Yuan, et al.              Expires 11 July 2024                 [Page 19]


Internet-Draft                  pcep-ifit                   January 2024


   [RFC7799]  Morton, A., "Active and Passive Metrics and Methods (with
              Hybrid Types In-Between)", RFC 7799, DOI 10.17487/RFC7799,
              May 2016, <https://www.rfc-editor.org/info/rfc7799>.

   [RFC8126]  Cotton, M., Leiba, B., and T. Narten, "Guidelines for
              Writing an IANA Considerations Section in RFCs", BCP 26,
              RFC 8126, DOI 10.17487/RFC8126, June 2017,
              <https://www.rfc-editor.org/info/rfc8126>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8231]  Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path
              Computation Element Communication Protocol (PCEP)
              Extensions for Stateful PCE", RFC 8231,
              DOI 10.17487/RFC8231, September 2017,
              <https://www.rfc-editor.org/info/rfc8231>.

   [RFC8253]  Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody,
              "PCEPS: Usage of TLS to Provide a Secure Transport for the
              Path Computation Element Communication Protocol (PCEP)",
              RFC 8253, DOI 10.17487/RFC8253, October 2017,
              <https://www.rfc-editor.org/info/rfc8253>.

   [RFC8281]  Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "Path
              Computation Element Communication Protocol (PCEP)
              Extensions for PCE-Initiated LSP Setup in a Stateful PCE
              Model", RFC 8281, DOI 10.17487/RFC8281, December 2017,
              <https://www.rfc-editor.org/info/rfc8281>.

   [RFC8664]  Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W.,
              and J. Hardwick, "Path Computation Element Communication
              Protocol (PCEP) Extensions for Segment Routing", RFC 8664,
              DOI 10.17487/RFC8664, December 2019,
              <https://www.rfc-editor.org/info/rfc8664>.

   [RFC8799]  Carpenter, B. and B. Liu, "Limited Domains and Internet
              Protocols", RFC 8799, DOI 10.17487/RFC8799, July 2020,
              <https://www.rfc-editor.org/info/rfc8799>.

   [RFC9197]  Brockners, F., Ed., Bhandari, S., Ed., and T. Mizrahi,
              Ed., "Data Fields for In Situ Operations, Administration,
              and Maintenance (IOAM)", RFC 9197, DOI 10.17487/RFC9197,
              May 2022, <https://www.rfc-editor.org/info/rfc9197>.






Yuan, et al.              Expires 11 July 2024                 [Page 20]


Internet-Draft                  pcep-ifit                   January 2024


   [RFC9322]  Mizrahi, T., Brockners, F., Bhandari, S., Gafni, B., and
              M. Spiegel, "In Situ Operations, Administration, and
              Maintenance (IOAM) Loopback and Active Flags", RFC 9322,
              DOI 10.17487/RFC9322, November 2022,
              <https://www.rfc-editor.org/info/rfc9322>.

   [RFC9326]  Song, H., Gafni, B., Brockners, F., Bhandari, S., and T.
              Mizrahi, "In Situ Operations, Administration, and
              Maintenance (IOAM) Direct Exporting", RFC 9326,
              DOI 10.17487/RFC9326, November 2022,
              <https://www.rfc-editor.org/info/rfc9326>.

   [RFC9341]  Fioccola, G., Ed., Cociglio, M., Mirsky, G., Mizrahi, T.,
              and T. Zhou, "Alternate-Marking Method", RFC 9341,
              DOI 10.17487/RFC9341, December 2022,
              <https://www.rfc-editor.org/info/rfc9341>.

   [RFC9343]  Fioccola, G., Zhou, T., Cociglio, M., Qin, F., and R.
              Pang, "IPv6 Application of the Alternate-Marking Method",
              RFC 9343, DOI 10.17487/RFC9343, December 2022,
              <https://www.rfc-editor.org/info/rfc9343>.

   [RFC9486]  Bhandari, S., Ed. and F. Brockners, Ed., "IPv6 Options for
              In Situ Operations, Administration, and Maintenance
              (IOAM)", RFC 9486, DOI 10.17487/RFC9486, September 2023,
              <https://www.rfc-editor.org/info/rfc9486>.

11.2.  Informative References

   [I-D.ietf-idr-sr-policy-ifit]
              Qin, F., Yuan, H., Yang, S., Zhou, T., and G. Fioccola,
              "BGP SR Policy Extensions to Enable IFIT", Work in
              Progress, Internet-Draft, draft-ietf-idr-sr-policy-ifit-
              07, 20 October 2023,
              <https://datatracker.ietf.org/doc/html/draft-ietf-idr-sr-
              policy-ifit-07>.

   [I-D.ietf-pce-multipath]
              Koldychev, M., Sivabalan, S., Saad, T., Beeram, V. P.,
              Bidgoli, H., Yadav, B., Peng, S., and G. S. Mishra, "PCEP
              Extensions for Signaling Multipath Information", Work in
              Progress, Internet-Draft, draft-ietf-pce-multipath-09, 24
              July 2023, <https://datatracker.ietf.org/doc/html/draft-
              ietf-pce-multipath-09>.

   [I-D.ietf-pce-pcep-extension-native-ip]
              Wang, A., Khasanov, B., Fang, S., Tan, R., and C. Zhu,
              "Path Computation Element Communication Protocol (PCEP)



Yuan, et al.              Expires 11 July 2024                 [Page 21]


Internet-Draft                  pcep-ifit                   January 2024


              Extensions for Native IP Networks", Work in Progress,
              Internet-Draft, draft-ietf-pce-pcep-extension-native-ip-
              29, 28 December 2023,
              <https://datatracker.ietf.org/doc/html/draft-ietf-pce-
              pcep-extension-native-ip-29>.

   [I-D.ietf-pce-segment-routing-ipv6]
              Li, C., Kaladharan, P., Sivabalan, S., Koldychev, M., and
              Y. Zhu, "Path Computation Element Communication Protocol
              (PCEP) Extensions for Segment Routing leveraging the IPv6
              dataplane", Work in Progress, Internet-Draft, draft-ietf-
              pce-segment-routing-ipv6-20, 8 September 2023,
              <https://datatracker.ietf.org/doc/html/draft-ietf-pce-
              segment-routing-ipv6-20>.

   [I-D.ietf-pce-segment-routing-policy-cp]
              Koldychev, M., Sivabalan, S., Barth, C., Peng, S., and H.
              Bidgoli, "PCEP extension to support Segment Routing Policy
              Candidate Paths", Work in Progress, Internet-Draft, draft-
              ietf-pce-segment-routing-policy-cp-12, 24 July 2023,
              <https://datatracker.ietf.org/doc/html/draft-ietf-pce-
              segment-routing-policy-cp-12>.

   [I-D.song-opsawg-ifit-framework]
              Song, H., Qin, F., Chen, H., Jin, J., and J. Shin,
              "Framework for In-situ Flow Information Telemetry", Work
              in Progress, Internet-Draft, draft-song-opsawg-ifit-
              framework-21, 23 October 2023,
              <https://datatracker.ietf.org/doc/html/draft-song-opsawg-
              ifit-framework-21>.

   [RFC9256]  Filsfils, C., Talaulikar, K., Ed., Voyer, D., Bogdanov,
              A., and P. Mattes, "Segment Routing Policy Architecture",
              RFC 9256, DOI 10.17487/RFC9256, July 2022,
              <https://www.rfc-editor.org/info/rfc9256>.

Authors' Addresses

   Hang Yuan
   UnionPay
   1899 Gu-Tang Rd., Pudong
   Shanghai
   China
   Email: yuanhang@unionpay.com







Yuan, et al.              Expires 11 July 2024                 [Page 22]


Internet-Draft                  pcep-ifit                   January 2024


   Xuerong Wang
   China Telecom
   Guangzhou
   China
   Email: wangxr4@chinatelecom.cn


   Pingan Yang
   Huawei
   Nanjing
   China
   Email: yangpingan@huawei.com


   Weidong Li
   Huawei
   156 Beiqing Rd., Haidian District
   Beijing
   China
   Email: poly.li@huawei.com


   Giuseppe Fioccola
   Huawei
   Palazzo Verrocchio, Centro Direzionale Milano 2
   20054 Segrate (Milan)
   Italy
   Email: giuseppe.fioccola@huawei.com























Yuan, et al.              Expires 11 July 2024                 [Page 23]