Internet-Draft Mirror Binding October 2022
Chen, et al. Expires 26 April 2023 [Page]
Workgroup:
Network Working Group
Internet-Draft:
draft-chen-pce-mbinding-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
H. Chen
Futurewei
B. Decraene
Orange
G. Mishra
Verizon
A. Wang
China Telecom
X. Liu
IBM Corporation
L. Liu
Fujitsu

PCE for Mirror Binding

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.

Table of Contents

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.

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

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.

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

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, , <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, , <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, , <https://www.ietf.org/archive/id/draft-ietf-pce-binding-label-sid-15.txt>.

Authors' Addresses

Huaimo Chen
Futurewei
Boston, MA,
United States of America
Bruno Decraene
Orange
France
Gyan S. Mishra
Verizon
13101 Columbia Pike
Silver Spring, MD 20904
United States of America
Phone: 301 502-1347
Aijun Wang
China Telecom
Beiqijia Town, Changping District
Beijing
102209
China
Xufeng Liu
IBM Corporation
United States of America
Lei Liu
Fujitsu
United States of America