Internet-Draft support BFD parameters October 2024
Bachar & Fizgeer Expires 13 April 2025 [Page]
Workgroup:
PCE Working Group
Internet-Draft:
draft-fizgeer-pce-pcep-bfd-parameters-03
Published:
Intended Status:
Standards Track
Expires:
Authors:
O. Bachar
Ribbon Communication
M. Fizgeer
Ribbon Communication

PCEP Extensions to support BFD parameters

Abstract

This document proposes extension to PCEP to configure LSP parameters. Some of LSP parameters are needed to configure S-BFD for candidate paths. Each candidate path is identified in PCEP by its uniquely assigned PLSP-ID. The mechanism proposed in this document is applicable to to all path setup types. The need for these definitions first appeared for Segment Routing path setup type, both MPLS and IPv6 data planes of SR.

Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

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 13 April 2025.

Table of Contents

1. Introduction

Path Computation Element (PCE) Communication Protocol (PCEP) [RFC5440] enables the communication between a Path Computation Client (PCC) and a Path Computation Element (PCE), or between two PCEs based on the PCE architecture [RFC4655].

PCEP Extensions for the Stateful PCE Model [RFC8231] describes a set of extensions to PCEP to enable active control of Multiprotocol Label Switching Traffic Engineering (MPLS-TE) and Generalized MPLS (GMPLS) tunnels. [RFC8281] describes the setup and teardown of PCE-initiated LSPs under the active stateful PCE model, without the need for local configuration on the PCC, thus allowing for dynamic centralized control of a network.

PCEP Extensions for Segment Routing [RFC8664] specifies extensions to the Path Computation Element Protocol (PCEP) that allow a stateful PCE to compute and initiate Traffic Engineering (TE) paths, as well as a PCC to request a path subject to certain constraint(s) and optimization criteria in SR networks.

PCEP Extensions for Establishing Relationships Between Sets of LSPs [RFC8697] introduces a generic mechanism to create a grouping of LSPs which can then be used to define associations between a set of LSPs and a set of attributes (such as configuration parameters or behaviors) and is equally applicable to stateful PCE (active and passive modes) and stateless PCE.

This document specifies PCEP extensions to signal additional information to configure LSP attributes. This is accomplished via the use of the existing LSPA object, by defining a new capability and new TLVs.

2. Terminology

The following terminologies are used in this document:

3. Motivation

S-BFD protocol is used for detecting failures in different tunnels path setup types. There are several protocol parameters that need to be configured and exchanged between PCEP speakers. As the parameters are associated to LSPs or tunnels, they are exchanged via PCEP. The LSPS-BFD-Capability TLV, the LSP-SBFD TLV and its sub-TLVs, defined in this document, allow PCEP speakers to exchange additional information about S-BFD.

4. Overview of Protocol Extensions

4.1. Overview

A new option to define S-BFD parameters is defined in this document. The S-BFD parameters are only meant to be used for SR LSPs and with PCEP peers which advertise SR capability.

A PCEP speaker indicates its ability to support S-BFD parameters during the PCEP initialization phase, as follows. When the PCEP session is created, it sends an Open message with an OPEN object that contains the LSP-SBFD-Capability TLV (see Section 4.3.1).

If a PCEP speaker receives the PCEP LSP-SBFD-Capability TLV with B flag = 1 in the Open object, then it means its peer is capable to receive and to send S-BFD TLVs towards that peer.

If a PCEP speaker has not received this TLV in the Open object, or if it receives it with B flag set to 0, then it MUST NOT send any S-BFD TLVs in LSPA object towards that peer.

Defining S-BFD parameters via PCEP MAY be also used together with a PCE as a Central Controller (PCECC) architecture and procedures [RFC9050].

4.2. Processing

If a PCEP speaker is capable of S-BFD and its peer is capable of S-BFD, then the PCEP speaker MAY send LSP-SBFD TLV towards that peer, to report the S-BFD state (Enabled/Disabled) for the configured LSP. The LSP-SBFD TLV shall be sent as an optional TLV in the LSPA object. A PCC shall send it in the PCRpt message.

A PCE shall send it in the PCInit or in the PCUpd message. If the LSP-SBFD TLV is received from a PCEP peer with the B flag set to 1, then S-BFD shall be applied for specified LSP. If PCC received this TLV via PCUpd with B=0 and there is no S-BFD applied for the LSP, then the PCC shall IGNORE the TLV.

If PCE received this TLV with B=0 and there is no S-BFD applied for the LSP (editing a PCC-initiated LSP) then it may IGNORE it. If B=0 and LSP-BFD-Parameters sub-TLV is received, then the PCEP speaker shall IGNORE the sub-TLV. Ignoring or saving the S-BFD configuration is implementation decision.

In some implementations there is limitation that LSPs in the same association group must have same S-BFD parameter values.

Editor note: Alternatively, it can be defined implicitly as follows: If the LSP-SBFD TLV is not received from PCEP peer but there is S-BFD for that LSP then S-BFD shall be removed for specified LSP.

4.3. Objects and TLVs

4.3.1. LSP S-BFD Capability

 The LSP-SBFD-Capability TLV is an optional TLV.  It MAY be carried
within an OPEN object sent by PCEP speaker in an Open message to a
PCEP peer to indicate it supports SBFD capability.
A legacy PCEP speaker (that does not recognize the
LSP-SBFD-Capability TLV) MUST ignore the TLV in accordance with
[ RFC5440].

 The LSP-SBFD-Capability TLV has the following format:

   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            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                           Reserved                          |B|
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

 Type: TBD1
 Length: 4
 B flag: A PCEP speaker sets this bit to 1 to indicate that it is
 capable of S-BFD, and it supports configuring the S-BFD via PCEP

4.3.2. S-BFD parameters

4.3.2.1. LSP S-BFD TLV

The PCEP LSP-SBFD TLV is an optional TLV. It MAY be carried within the LSPA object.

The PCEP LSP-SBFD TLV has the following format:
    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            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           Reserved                          |B|
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   //                     Optional sub-TLVs                       //
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type: TBD2

Length: The total length in bytes of the remainder of the TLV, that is, excluding the Type and Length fields.

B flag: Enable/Disable S-BFD for this LSP. If B=1 then S-BFD will be enabled. If B=0 then S-BFD will be disabled for that LSP. If the PCEP speaker received LSP-SBFD TLV from PCEP peer with B flag is set to 0, then S-BFD shall be removed (in case of PCE update) or shall not be applied (in case of PCE initiated message) for specified LSP

4.3.2.2. LSP-SBFD Parameters sub-TLV

The PCEP LSP-SBFD-Parameters sub-TLV is optional. It MAY be carried within the LSP-SBFD TLV. The PCEP LSP-SBFD-Parameters sub-TLV has the following format:

      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            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                         Min Tx Interval                       |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                       Reserved                 |   Multiplier |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type: TBD3
Length: 8
Min Tx Interval: 32 bits - Specify the Minimal Transmit Interval
(milliseconds).
Note: for YANG implementation of the S-BFD information model the value
needs to be converted to microseconds
Multiplier: 1..255

 Procedure

If B=0 and LSP-SBFD-Parameters sub-TLV is received, then the PCEP speaker shall IGNORE the sub-TLV.

4.3.2.3. LSP-SBFD-Discriminator sub-TLV

The PCEP LSP-SBFD-Discriminator sub-TLV and is optional TLV. It MAY be carried within the LSP-SBFD TLV. The PCEP LSP-SBFD-Discriminator sub-TLV has the following format:

     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            |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                      Remote Discriminator                     |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Type: TBD4
Length: 4
Remote Discriminator: 32 bits

Procedure

If B=0 and LSP-SBFD-Discriminator sub-TLV is received, then the PCEP speaker shall IGNORE the LSP-SBFD-Discriminator sub-TLV.

5. Error Handling

If a PCEP speaker has not received S-BFD-Capability TLV from a peer in the Open object, and it received an LSP S-BFD TLV (see Section 4.3.2.1) from that peer, then it MUST ignore the content of the LSP S-BFD TLV, and it MUST return a PCErr message with Error- Type=19 "Invalid Operation" with Error-value = TBD5 "SBFD capability is not negotiated".

If Multiplier value in the LSP-SBFD-Parameters sub-TLV is not in the legal range (1..255), then the PCEP Speaker MUST return a PCErr message with Error-Type=23 "Bad parameter value" and Error-value = TBD6 "Multiplier is out of range".

If Remote Discriminator value in the PCEP LSP-SBFD-Discriminator sub- TLV is not in the legal range (i.e., it is zero), then the PCEP Speaker MUST return a PCErr message with Error-Type=23 "Bad parameter value" and Error-value = TBD8 "Remote Discriminator is out of range".

6. Implementation Note

In some implementations there is limitation that LSPs in the same association group must have same S-BFD parameter values. If either the Min Tx Interval, the Multiplier or the Remote Discriminator values received in the LSP-BFD Parameters sub-TLVs for LSPs that are members in the same Association Group are not identical, then the PCEP Speaker SHOULD return a PCErr message with Error-Type=26 "Association Error" with Error-value TBD7 "Invalid S-BFD parameter value"

7. IANA Considerations

7.1. PCEP TLV Type Indicators

This document defines new TLVs and sub-TLVs for carrying additional information about S-BFD. IANA is requested to make the assignment of new values for the existing "PCEP TLV Type Indicators" registry as follows:

     +=======+================================+===============+
     | Value | Description                    | Reference     |
     +=======+================================+===============+
     | TBD1  | LSP-SBFD-Capability TLV        | This document |
     +-------+--------------------------------+---------------+
     | TBD2  | LSP-SBFD TLV                   | This document |
     +-------+--------------------------------+---------------+
     | TBD3  | LSP-BFD-Parameters sub-TLV     | This document |
     +-------+--------------------------------+---------------+
     | TBD4  | LSP-SBFD-DISCRIMINATOR sub-TLV | This document |
     +-------+--------------------------------+---------------+
Figure 1

7.2. PCEP Errors

 This document defines new Error-Values within the different
 Error-Types.
 IANA is requested to allocate new types:</t>
       <figure anchor="ure-2">
         <artwork name="" type="" align="left" alt=""><![CDATA[
+============+=============+======================+===========+
| Error Type | Error Value | Meaning              | Reference |
+============+=============+======================+===========+
| 19         | TBD5        | SBFD capability is   | This      |
|            |             | not negotiated       | document  |
+------------+-------------+----------------------+-----------+
| 23         | TBD6        | Multiplier is out of | This      |
|            |             | range                | document  |
+------------+-------------+----------------------+-----------+
| 26         | TBD7        | Invalid S-BFD        | This      |
|            |             | parameter value      | document  |
+------------+-------------+----------------------+-----------+
| 23         | TBD8        | Remote Discriminator | This      |
|            |             | is out of range      | document  |
+------------+-------------+----------------------+-----------+
Figure 2

8. Security Considerations

This document defines one new type for association, which does not add any new security concerns beyond those discussed in [RFC5440], [RFC8231], [RFC8664], [RFC5880] and [RFC8697] in itself.

9. Implementation Status [Note to the RFC Editor - remove this section before publication, as well as remove the reference to RFC 7942.]

This section records the status of known implementations of the protocol defined by this specification at the time of posting of this Internet-Draft, and is based on a proposal described in [RFC7942]. The description of implementations in this section is intended to assist the IETF in its decision processes in progressing drafts to RFCs. Please note that the listing of any individual implementation here does not imply endorsement by the IETF. Furthermore, no effort has been spent to verify the information presented here that was supplied by IETF contributors. This is not intended as, and must not be construed to be, a catalog of available implementations or their features. Readers are advised to note that other implementations may exist.

According to [RFC7942], "this will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature. It is up to the individual working groups to use this information as they see fit".

9.1. Ribbon Implementation
       Organization: Ribbon Communication
       Implementation: Head-end (PCC) and controller (PCE).
       Description: All features supported with limitation that LSPs in
   the same association group must have same S-BFD parameter values
       Maturity Level: Production.
       Coverage: Full.
       Contact: [email protected]

10. Acknowledgement

Would like to thank Avantika Sushil, Alexander Ferdman, Itay Katz, Galina Mintz and Boris Khasanov for review and suggestions.

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, , <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, , <https://www.rfc-editor.org/info/rfc5440>.
[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, , <https://www.rfc-editor.org/info/rfc8231>.
[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, , <https://www.rfc-editor.org/info/rfc8281>.
[RFC8697]
Minei, I., Crabbe, E., Sivabalan, S., Ananthakrishnan, H., Dhody, D., and Y. Tanaka, "Path Computation Element Communication Protocol (PCEP) Extensions for Establishing Relationships between Sets of Label Switched Paths (LSPs)", RFC 8697, DOI 10.17487/RFC8697, , <https://www.rfc-editor.org/info/rfc8697>.
[RFC5880]
Katz, D. and D. Ward, "Bidirectional Forwarding Detection (BFD)", RFC 5880, DOI 10.17487/RFC5880, , <https://www.rfc-editor.org/info/rfc5880>.
[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, , <https://www.rfc-editor.org/info/rfc8664>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.

11.2. Informative References

[RFC4655]
Farrel, A., Vasseur, J.-P., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, DOI 10.17487/RFC4655, , <https://www.rfc-editor.org/info/rfc4655>.

Appendix A. Contributors

Dhruv Dhody

Huawei Technologies Divyashree Techno Park, Whitefield Bangalore, Karnataka 560066 India

Email: [email protected]

Authors' Addresses

Orly Bachar
Ribbon Communication
Hasivim 30,
Petah-Tikva
Israel
Marina Fizgeer
Ribbon Communication
Hasivim 30,
Petah-Tikva
Israel