Skip to main content

PCE for Mirror Binding
draft-chen-pce-mbinding-00

Document Type Active Internet-Draft (individual)
Authors Huaimo Chen , Bruno Decraene , Gyan Mishra , Aijun Wang , Xufeng Liu , Lei Liu
Last updated 2022-10-23
RFC stream (None)
Intended RFC status (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-chen-pce-mbinding-00
Network Working Group                                            H. Chen
Internet-Draft                                                 Futurewei
Intended status: Standards Track                             B. Decraene
Expires: 26 April 2023                                            Orange
                                                               G. Mishra
                                                                 Verizon
                                                                 A. Wang
                                                           China Telecom
                                                                  X. Liu
                                                         IBM Corporation
                                                                  L. Liu
                                                                 Fujitsu
                                                         23 October 2022

                         PCE for Mirror Binding
                       draft-chen-pce-mbinding-00

Abstract

   PCE is used to distribute a binding SID with a list of SIDs to a
   node.  This document describes extensions to PCEP for distributing
   the binding SID with the list of SIDs and an identifier of the node.
   When detecting the failure of the node, an neighbor of the node
   protects the binding SID of the failed node.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

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 26 April 2023.

Chen, et al.              Expires 26 April 2023                 [Page 1]
Internet-Draft               Mirror Binding                 October 2022

Copyright Notice

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

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (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
   2.  Terminologies . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Extensions to PCEP  . . . . . . . . . . . . . . . . . . . . .   3
     3.1.  Capability of distributing Binding for Protection . . . .   3
     3.2.  Extensions to RP/SRP Object . . . . . . . . . . . . . . .   5
   4.  Procedure for Updating Information  . . . . . . . . . . . . .   6
   5.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
     5.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     5.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   [I-D.ietf-pce-binding-label-sid] specifies how PCE may be used to
   distribute a Segment Routing (SR) Policy to a network node.  An SR
   Policy is an ordered list of segments (i.e., instructions) that
   represent a source-routed policy.  An SR Policy consists of one or
   more candidate paths, each consisting of one or more segment lists.
   An SR Policy may contain a binding SID associated with a path
   represented by a segment list (i.e., a list of SIDs).

   After a PCE as a controller distributes an SR policy containing a
   binding SID associated with a list of SIDs to a network node, each
   neighbor of the node needs the information about the binding SID for
   protecting the binding SID of the node when the node fails.  The
   information includes the binding SID, the list of SIDs and the
   identifier (ID) of the node.  This document proposes some procedures
   and extensions to PCEP for distributing the information.

Chen, et al.              Expires 26 April 2023                 [Page 2]
Internet-Draft               Mirror Binding                 October 2022

2.  Terminologies

   The following terminologies are used in this document.

   PCE:  Path Computation Element

   PCEP:  PCE communication Protocol

   PCC:  Path Computation Client

3.  Extensions to PCEP

   A PCC may run on each of the nodes of a network.  A PCE runs on a
   server as a controller to communicate with PCCs.  The PCE and the
   PCCs work together to distribute the information about a binding SID
   on a node to each neighbor of the node for protecting the binding SID
   of the node when the node fails.

3.1.  Capability of distributing Binding for Protection

   When a PCE and a PCC running on a network node establish a PCEP
   session between them, they exchange their capabilities of
   distributing Binding for Binding SID Protection in Open messages.  An
   Open message includes an Open object.  The object contains a
   PATH_SETUP_TYPE_CAPABILITY TLV with Path Setup Type (PST) = TBD1 and
   a new sub-TLV, called Binding SID (BSID) Distribution for Protection
   Capability (BSID-D for short) sub-TLV.

   PST = TBD1 indicates that Binding SID with List of SIDs (path) for a
   node for protecting binding SID of the node.

   BSID-D sub-TLV contains parameters used for distributing the
   information about a binding SID for protection.

   The format of BSID-D sub-TLV is shown in Figure 1.

     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 = TBD2          |          Length = 4           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |           Reserved            |          Flags                |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

         Figure 1: BSID_DISTRIBUTION_PROTECTION_CAPABILITY sub-TLV

   Type:  TBD2 is to be assigned by IANA.

Chen, et al.              Expires 26 April 2023                 [Page 3]
Internet-Draft               Mirror Binding                 October 2022

   Length:  4.

   Reserved:  2 octets.  Must be set to zero in transmission and ignored
      on reception.

   Flags:  2 octets.  No flag bits are defined.

   A PCC, which supports the capability of distributing Binding for
   Protection, sends a PCE an Open message containing a
   PATH_SETUP_TYPE_CAPABILITY TLV with Path Setup Type (PST) = TBD1 and
   a BSID_DISTRIBUTION_PROTECTION_CAPABILITY sub-TLV.  PST = TBD1
   indicates that the PCC is capable of receiving and processing the
   information about a binding SID on a node from the PCE for protecting
   the binding SID of the node when the node fails.

   A PCE, which supports the capability of distributing Binding for
   Protection, sends a PCC an Open message containing a
   PATH_SETUP_TYPE_CAPABILITY TLV with Path Setup Type (PST) = TBD1 and
   a BSID_DISTRIBUTION_PROTECTION_CAPABILITY sub-TLV.  PST = TBD1
   indicates that the PCE is capable of sending the information about a
   binding SID on a node to the PCC for protecting the binding SID of
   the node when the node fails.

   If both a PCC and a PCE support the capability of distributing
   Binding for Protection, each of the Open messages sent by the PCC and
   PCE contains a PATH-SETUP-TYPE-CAPABILITY TLV with a PST list
   containing PST = TBD1 and a BSID_DISTRIBUTION_PROTECTION_CAPABILITY
   sub-TLV.

   If a PCE receives an Open message without a PATH-SETUP-TYPE-
   CAPABILITY TLV containing PST = TBD1 from a PCC, then the PCE MUST
   not send the PCC any information about a binding SID on a node for
   protecting the binding SID of the node when the node fails.

   If a PCC receives an Open message without a PATH-SETUP-TYPE-
   CAPABILITY TLV containing PST = TBD1 from a PCE, then the PCC MUST
   ignore any information about a binding SID on a node for protecting
   the binding SID of the node from the PCE.

   When PCECC is used, a PCC and PCE exchange capability of distributing
   Binding SID for Binding SID protection using PCECC-CAPABILITY Sub-TLV
   which is included in the PATH_SETUP_TYPE_CAPABILITY TLV in an Open
   message.

   A new flag bit B is defined in the Flags field of the PCECC-
   CAPABILITY sub-TLV as shown in Figure 2.  B flag (for Binding SID
   Protection): if set to 1 by a PCEP speaker (PCE or PCC), the B flag
   indicates that the PCEP speaker supports and is willing to handle the

Chen, et al.              Expires 26 April 2023                 [Page 4]
Internet-Draft               Mirror Binding                 October 2022

   PCECC based central controller instructions for Binding SID
   protection.  The bit MUST be set to 1 by both a PCC and a PCE for the
   PCECC Binding SID protection instruction download/report on a PCEP
   session.

     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 = 4           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                         Flags                             |B|L|
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                 Figure 2: PCECC-Capability sub-TLV with B

3.2.  Extensions to RP/SRP Object

   After sending the binding information to a node (i.e., the PCC
   running on the node), a PCE sends the corresponding binding
   protection information to each neighbor of the node in a PCEP message
   such as a Path Computation LSP Update Request (PCUpd) message.  The
   message contains a Request Parameters (RP) object or Stateful PCE
   Request Parameters (SRP) object.  The object includes:

   *  A PATH-SETUP-TYPE TLV with PST = TBD1 for Binding SID with List of
      SIDs (path) for a node for protecting binding SID of the node.

   *  A Node ID TLV containing the identifier of the node.

   The format of PATH-SETUP-TYPE TLV is shown in Figure 3.

     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 = 28           |          Length = 4           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                  Reserved                     |   PST = TBD1  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 3: PATH-SETUP-TYPE TLV with PST = TBD1

   The format of Node ID TLV is illustrated in Figure 4.

Chen, et al.              Expires 26 April 2023                 [Page 5]
Internet-Draft               Mirror Binding                 October 2022

    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 = TBDa           |        Length (4/6)           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Node ID (4/6 octets)                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Figure 4: Node ID sub-TLV Format

   Type:  Its value (TBDa) is to be assigned by IANA.

   Length:  Its value (4/6) indicates the length of the value field of
      the TLV is 4/6.

   Node ID:  4/6-octet field contains the OSPF/IS-IS node (or router)
      identifier (ID) of the (protected) node.

4.  Procedure for Updating Information

   When a PCE sends a piece of binding information to node N (i.e., PCC
   running on N) in a first Path Computation LSP Update Request (PCUpd)
   message, the PCE sends the corresponding binding protection
   information to each neighbor of node N in a second PCUpd message.

   The first message contains an RP/SRP object and an LSP object with a
   TE-PATH-BINDING TLV.  The RP/SRP object does not include any PATH-
   SETUP-TYPE TLV with PST = TBD1.  The TLV includes a binding SID and R
   bit set to zero.

   The second message contains an RP/SRP object and an LSP object with a
   TE-PATH-BINDING TLV.  The RP/SRP object includes a PATH-SETUP-TYPE
   TLV with PST = TBD1 and a Node ID TLV indicating node N.  TE-PATH-
   BINDING TLV includes the binding SID and R bit set to zero.

   After a PCE sends the binding information to node N, if the PCE
   removes the binding information from node N through sending a third
   PCUpd message to node N, the PCE removes the corresponding binding
   protection information from each neighbor of node N through sending a
   fourth PCUpd message to the neighbor.

   The third message contains an RP/SRP object and an LSP object with a
   TE-PATH-BINDING TLV.  The RP/SRP object does not include any PATH-
   SETUP-TYPE TLV with PST = TBD1.  The TLV includes a binding SID and R
   bit set to one (1).

Chen, et al.              Expires 26 April 2023                 [Page 6]
Internet-Draft               Mirror Binding                 October 2022

   The fourth message contains an RP/SRP object and an LSP object with a
   TE-PATH-BINDING TLV.  The RP/SRP object includes a PATH-SETUP-TYPE
   TLV with PST = TBD1 and a Node ID TLV indicating node N.  TE-PATH-
   BINDING TLV includes the binding SID and R bit set to one (1).

   After a PCE sends the binding information to node N, if the PCE
   changes the binding information in node N through sending a fifth
   PCUpd message to node N, the PCE changes the corresponding binding
   protection information in each neighbor of node N through sending a
   sixth PCUpd message to the neighbor.

   The fifth message contains an RP/SRP object and an LSP object with a
   TE-PATH-BINDING TLV.  The RP/SRP object does not include any PATH-
   SETUP-TYPE TLV with PST = TBD1.  The LSP object includes a (changed)
   path.  The TLV includes a binding SID and R bit set to zero.

   The sixth message contains an RP/SRP object and an LSP object with a
   TE-PATH-BINDING TLV.  The RP/SRP object includes a PATH-SETUP-TYPE
   TLV with PST = TBD1 and a Node ID TLV indicating node N.  The LSP
   object includes the (changed) path.  TE-PATH-BINDING TLV includes the
   binding SID and R bit set to zero.

5.  References

5.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>.

   [RFC9012]  Patel, K., Van de Velde, G., Sangli, S., and J. Scudder,
              "The BGP Tunnel Encapsulation Attribute", RFC 9012,
              DOI 10.17487/RFC9012, April 2021,
              <https://www.rfc-editor.org/info/rfc9012>.

5.2.  Informative References

   [I-D.ietf-pce-binding-label-sid]
              Sivabalan, S., Filsfils, C., Tantsura, J., Previdi, S.,
              and C. L. (editor), "Carrying Binding Label/Segment
              Identifier (SID) in PCE-based Networks.", Work in
              Progress, Internet-Draft, draft-ietf-pce-binding-label-
              sid-15, 20 March 2022, <https://www.ietf.org/archive/id/
              draft-ietf-pce-binding-label-sid-15.txt>.

Authors' Addresses

Chen, et al.              Expires 26 April 2023                 [Page 7]
Internet-Draft               Mirror Binding                 October 2022

   Huaimo Chen
   Futurewei
   Boston, MA,
   United States of America
   Email: huaimo.chen@futurewei.com

   Bruno Decraene
   Orange
   France
   Email: bruno.decraene@orange.com

   Gyan S. Mishra
   Verizon
   13101 Columbia Pike
   Silver Spring,  MD 20904
   United States of America
   Phone: 301 502-1347
   Email: gyan.s.mishra@verizon.com

   Aijun Wang
   China Telecom
   Beiqijia Town, Changping District
   Beijing
   102209
   China
   Email: wangaj3@chinatelecom.cn

   Xufeng Liu
   IBM Corporation
   United States of America
   Email: xufeng.liu.ietf@gmail.com

   Lei Liu
   Fujitsu
   United States of America
   Email: liulei.kddi@gmail.com

Chen, et al.              Expires 26 April 2023                 [Page 8]