| < draft-ietf-pce-binding-label-sid-11.txt | draft-ietf-pce-binding-label-sid-12.txt > | |||
|---|---|---|---|---|
| PCE Working Group S. Sivabalan | PCE Working Group S. Sivabalan | |||
| Internet-Draft Ciena Corporation | Internet-Draft Ciena Corporation | |||
| Intended status: Standards Track C. Filsfils | Intended status: Standards Track C. Filsfils | |||
| Expires: April 18, 2022 Cisco Systems, Inc. | Expires: 28 July 2022 Cisco Systems, Inc. | |||
| J. Tantsura | J. Tantsura | |||
| Microsoft Corporation | Microsoft Corporation | |||
| S. Previdi | S. Previdi | |||
| C. Li, Ed. | C. Li, Ed. | |||
| Huawei Technologies | Huawei Technologies | |||
| October 15, 2021 | 24 January 2022 | |||
| Carrying Binding Label/Segment Identifier in PCE-based Networks. | Carrying Binding Label/Segment Identifier in PCE-based Networks. | |||
| draft-ietf-pce-binding-label-sid-11 | draft-ietf-pce-binding-label-sid-12 | |||
| Abstract | Abstract | |||
| In order to provide greater scalability, network confidentiality, and | In order to provide greater scalability, network confidentiality, and | |||
| service independence, Segment Routing (SR) utilizes a Binding Segment | service independence, Segment Routing (SR) utilizes a Binding Segment | |||
| Identifier (BSID). It is possible to associate a BSID to an RSVP-TE- | Identifier (BSID). It is possible to associate a BSID to an RSVP-TE- | |||
| signaled Traffic Engineering Label Switched Path or an SR Traffic | signaled Traffic Engineering Label Switched Path or an SR Traffic | |||
| Engineering path. The BSID can be used by an upstream node for | Engineering path. The BSID can be used by an upstream node for | |||
| steering traffic into the appropriate TE path to enforce SR policies. | steering traffic into the appropriate TE path to enforce SR policies. | |||
| This document specifies the binding value as an MPLS label or Segment | This document specifies the concept of binding value, which can be | |||
| Identifier. It further specifies an approach for reporting binding | either an MPLS label or Segment Identifier. It further specifies an | |||
| label/Segment Identifier (SID) by a Path Computation Client (PCC) to | extension to Path Computation Element (PCE) communication | |||
| the Path Computation Element (PCE) to support PCE-based Traffic | Protocol(PCEP) for reporting the binding value by a Path Computation | |||
| Engineering policies. | Client (PCC) to the PCE to support PCE-based Traffic Engineering | |||
| policies. | ||||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on April 18, 2022. | This Internet-Draft will expire on 28 July 2022. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2022 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | license-info) in effect on the date of publication of this document. | |||
| publication of this document. Please review these documents | Please review these documents carefully, as they describe your rights | |||
| carefully, as they describe your rights and restrictions with respect | and restrictions with respect to this document. Code Components | |||
| to this document. Code Components extracted from this document must | extracted from this document must include Revised BSD License text as | |||
| include Simplified BSD License text as described in Section 4.e of | described in Section 4.e of the Trust Legal Provisions and are | |||
| the Trust Legal Provisions and are provided without warranty as | provided without warranty as described in the Revised BSD License. | |||
| described in the Simplified BSD License. | ||||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 1.1. Motivation and Example . . . . . . . . . . . . . . . . . 4 | ||||
| 1.2. Summary of the Extension . . . . . . . . . . . . . . . . 5 | ||||
| 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 5 | 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 5 | |||
| 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 4. Path Binding TLV . . . . . . . . . . . . . . . . . . . . . . 5 | 4. Path Binding TLV . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 4.1. SRv6 Endpoint Behavior and SID Structure . . . . . . . . 7 | 4.1. SRv6 Endpoint Behavior and SID Structure . . . . . . . . 8 | |||
| 5. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 5. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 6. Binding SID in SR-ERO . . . . . . . . . . . . . . . . . . . . 10 | 6. Binding SID in SR-ERO . . . . . . . . . . . . . . . . . . . . 11 | |||
| 7. Binding SID in SRv6-ERO . . . . . . . . . . . . . . . . . . . 11 | 7. Binding SID in SRv6-ERO . . . . . . . . . . . . . . . . . . . 11 | |||
| 8. PCE Allocation of Binding label/SID . . . . . . . . . . . . . 11 | 8. PCE Allocation of Binding label/SID . . . . . . . . . . . . . 11 | |||
| 9. Implementation Status . . . . . . . . . . . . . . . . . . . . 12 | 9. Implementation Status . . . . . . . . . . . . . . . . . . . . 13 | |||
| 9.1. Huawei . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 9.1. Huawei . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 9.2. Cisco . . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 9.2. Cisco . . . . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 10. Security Considerations . . . . . . . . . . . . . . . . . . . 14 | 10. Security Considerations . . . . . . . . . . . . . . . . . . . 14 | |||
| 11. Manageability Considerations . . . . . . . . . . . . . . . . 14 | 11. Manageability Considerations . . . . . . . . . . . . . . . . 15 | |||
| 11.1. Control of Function and Policy . . . . . . . . . . . . . 14 | 11.1. Control of Function and Policy . . . . . . . . . . . . . 15 | |||
| 11.2. Information and Data Models . . . . . . . . . . . . . . 14 | 11.2. Information and Data Models . . . . . . . . . . . . . . 15 | |||
| 11.3. Liveness Detection and Monitoring . . . . . . . . . . . 15 | 11.3. Liveness Detection and Monitoring . . . . . . . . . . . 15 | |||
| 11.4. Verify Correct Operations . . . . . . . . . . . . . . . 15 | 11.4. Verify Correct Operations . . . . . . . . . . . . . . . 15 | |||
| 11.5. Requirements On Other Protocols . . . . . . . . . . . . 15 | 11.5. Requirements On Other Protocols . . . . . . . . . . . . 15 | |||
| 11.6. Impact On Network Operations . . . . . . . . . . . . . . 15 | 11.6. Impact On Network Operations . . . . . . . . . . . . . . 15 | |||
| 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 | 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 12.1. PCEP TLV Type Indicators . . . . . . . . . . . . . . . . 15 | 12.1. PCEP TLV Type Indicators . . . . . . . . . . . . . . . . 16 | |||
| 12.1.1. TE-PATH-BINDING TLV . . . . . . . . . . . . . . . . 15 | 12.1.1. TE-PATH-BINDING TLV . . . . . . . . . . . . . . . . 16 | |||
| 12.2. LSP Object . . . . . . . . . . . . . . . . . . . . . . . 16 | 12.2. LSP Object . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
| 12.3. PCEP Error Type and Value . . . . . . . . . . . . . . . 16 | 12.3. PCEP Error Type and Value . . . . . . . . . . . . . . . 17 | |||
| 13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17 | 13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 | 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 14.1. Normative References . . . . . . . . . . . . . . . . . . 17 | 14.1. Normative References . . . . . . . . . . . . . . . . . . 18 | |||
| 14.2. Informative References . . . . . . . . . . . . . . . . . 19 | 14.2. Informative References . . . . . . . . . . . . . . . . . 20 | |||
| Appendix A. Contributor Addresses . . . . . . . . . . . . . . . 21 | Appendix A. Contributor Addresses . . . . . . . . . . . . . . . 21 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 | |||
| 1. Introduction | 1. Introduction | |||
| A Path Computation Element (PCE) can compute Traffic Engineering | A Path Computation Element (PCE) can compute Traffic Engineering | |||
| paths (TE paths) through a network where those paths are subject to | paths (TE paths) through a network where those paths are subject to | |||
| various constraints. Currently, TE paths are set up using either the | various constraints. Currently, TE paths are set up using either the | |||
| RSVP-TE signaling protocol or Segment Routing (SR). We refer to such | RSVP-TE signaling protocol or Segment Routing (SR). We refer to such | |||
| paths as RSVP-TE paths and SR-TE paths respectively in this document. | paths as RSVP-TE paths and SR-TE paths respectively in this document. | |||
| As per [RFC8402] SR allows a head-end node to steer a packet flow | As per [RFC8402] SR allows a head-end node to steer a packet flow | |||
| along any path. The head-end node is said to steer a flow into a | along a given path via a Segment Routing Policy (SR Policy). As per | |||
| Segment Routing Policy (SR Policy). Further, as per | ||||
| [I-D.ietf-spring-segment-routing-policy], an SR Policy is a framework | [I-D.ietf-spring-segment-routing-policy], an SR Policy is a framework | |||
| that enables the instantiation of an ordered list of segments on a | that enables the instantiation of an ordered list of segments on a | |||
| node for implementing a source routing policy with a specific intent | node for implementing a source routing policy with a specific intent | |||
| for traffic steering from that node. | for traffic steering from that node. | |||
| As described in [RFC8402], a Binding Segment Identifier (BSID) is | As described in [RFC8402], a Binding Segment Identifier (BSID) is | |||
| bound to a Segment Routing (SR) Policy, instantiation of which may | bound to a Segment Routing (SR) Policy, instantiation of which may | |||
| involve a list of Segment Identifiers (SIDs). Any packets received | involve a list of Segment Identifiers (SIDs). Any packets received | |||
| with an active segment equal to a BSID are steered onto the bound SR | with an active segment equal to a BSID are steered onto the bound SR | |||
| Policy. A BSID may be either a local (SR Local Block (SRLB)) or a | Policy. A BSID may be either a local (SR Local Block (SRLB)) or a | |||
| global (SR Global Block (SRGB)) SID. As per Section 6.4 of | global (SR Global Block (SRGB)) SID. As per Section 6.4 of | |||
| [I-D.ietf-spring-segment-routing-policy] a BSID can also be | [I-D.ietf-spring-segment-routing-policy] a BSID can also be | |||
| associated with any type of interface or tunnel to enable the use of | associated with any type of interface or tunnel to enable the use of | |||
| a non-SR interface or tunnel as a segment in a SID list. In this | a non-SR interface or tunnel as a segment in a SID list. In this | |||
| document, binding label/SID is used to generalize the allocation of | document, the term 'binding label/SID' is used to generalize the | |||
| binding value for both SR and non-SR paths. | allocation of binding value for both SR and non-SR paths. | |||
| [RFC5440] describes the PCE communication Protocol(PCEP) for | [RFC5440] describes the PCEP for communication between a Path | |||
| communication between a Path Computation Client (PCC) and a PCE or | Computation Client (PCC) and a PCE or between a pair of PCEs as per | |||
| between a pair of PCEs as per [RFC4655]. [RFC8231] specifies | [RFC4655]. [RFC8231] specifies extensions to PCEP that allow a PCC | |||
| extensions to PCEP that allow a PCC to delegate its Label Switched | to delegate its Label Switched Paths (LSPs) to a stateful PCE. A | |||
| Paths (LSPs) to a stateful PCE. A stateful PCE can then update the | stateful PCE can then update the state of LSPs delegated to it. | |||
| state of LSPs delegated to it. [RFC8281] specifies a mechanism | [RFC8281] specifies a mechanism allowing a PCE to dynamically | |||
| allowing a PCE to dynamically instantiate an LSP on a PCC by sending | instantiate an LSP on a PCC by sending the path and characteristics. | |||
| the path and characteristics. | This document specifies an extension to PCEP to manage of binding | |||
| label/SID for both SR and non-SR paths. | ||||
| [RFC8664] provides a mechanism for a PCE (acting as a network | [RFC8664] provides a mechanism for a PCE (acting as a network | |||
| controller) to instantiate SR-TE paths (candidate paths) for an SR | controller) to instantiate SR-TE paths (candidate paths) for an SR | |||
| Policy onto a head-end node (acting as a PCC) using PCEP. For more | Policy onto a head-end node (acting as a PCC) using PCEP. For more | |||
| information on the SR Policy Architecture, see | information on the SR Policy Architecture, see | |||
| [I-D.ietf-spring-segment-routing-policy]. | [I-D.ietf-spring-segment-routing-policy]. | |||
| 1.1. Motivation and Example | ||||
| A binding label/SID has local significance to the ingress node of the | A binding label/SID has local significance to the ingress node of the | |||
| corresponding TE path. When a stateful PCE is deployed for setting | corresponding TE path. When a stateful PCE is deployed for setting | |||
| up TE paths, it may be desirable for a PCC to report the binding | up TE paths, a binding label/SID reported from the PCC to the | |||
| label/SID to the stateful PCE for the purpose of enforcing end-to-end | stateful PCE is useful for the purpose of enforcing end-to-end TE/SR | |||
| TE/SR policy. A sample Data Center (DC) use-case is illustrated in | policy. A sample Data Center (DC) use-case is illustrated in | |||
| Figure 1. In the MPLS DC network, an SR LSP (without traffic | Figure 1. In the MPLS DC network, an SR LSP (without traffic | |||
| engineering) is established using a prefix SID advertised by BGP (see | engineering) is established using a prefix SID advertised by BGP (see | |||
| [RFC8669]). In the IP/MPLS WAN, an SR-TE LSP is set up using the | [RFC8669]). In the IP/MPLS WAN, an SR-TE LSP is set up using the | |||
| PCE. The list of SIDs of the SR-TE LSP is {A, B, C, D}. The gateway | PCE. The list of SIDs of the SR-TE LSP is {A, B, C, D}. The gateway | |||
| node 1 (which is the PCC) allocates a binding SID X and reports it to | node 1 (which is the PCC) allocates a binding SID X and reports it to | |||
| the PCE. In order for the access node to steer the traffic over the | the PCE. In order for the access node to steer the traffic over the | |||
| SR-TE LSP, the PCE passes the SID stack {Y, X} where Y is the prefix | SR-TE LSP, the PCE passes the SID stack {Y, X} where Y is the prefix | |||
| SID of the gateway node-1 to the access node. In the absence of the | SID of the gateway node-1 to the access node. In the absence of the | |||
| binding SID X, the PCE would pass the SID stack {Y, A, B, C, D} to | binding SID X, the PCE would pass the SID stack {Y, A, B, C, D} to | |||
| the access node. This example also illustrates the additional | the access node. This example also illustrates the additional | |||
| skipping to change at page 4, line 36 ¶ | skipping to change at page 4, line 44 ¶ | |||
| +------+ ( ) +-------+ ( ) +-------+ | +------+ ( ) +-------+ ( ) +-------+ | |||
| |Access|_( MPLS DC Network )_|Gateway|_( IP/MPLS WAN )_|Gateway| | |Access|_( MPLS DC Network )_|Gateway|_( IP/MPLS WAN )_|Gateway| | |||
| | Node | ( ==============> ) |Node-1 | ( ================> ) |Node-2 | | | Node | ( ==============> ) |Node-1 | ( ================> ) |Node-2 | | |||
| +------+ ( SR path ) +-------+ ( SR-TE path ) +-------+ | +------+ ( SR path ) +-------+ ( SR-TE path ) +-------+ | |||
| '--( )--' Prefix '--( )--' | '--( )--' Prefix '--( )--' | |||
| ( ) SID of ( ) | ( ) SID of ( ) | |||
| '-----' Node-1 '-----' | '-----' Node-1 '-----' | |||
| is Y SIDs for SR-TE LSP: | is Y SIDs for SR-TE LSP: | |||
| {A, B, C, D} | {A, B, C, D} | |||
| Figure 1: A Sample Use-case of Binding SID | Figure 1: A Sample Use-case of Binding SID | |||
| A PCC could report to the stateful PCE the binding label/SID it | Using the extension defined in this document, a PCC could report to | |||
| allocated via a Path Computation LSP State Report (PCRpt) message. | the stateful PCE the binding label/SID it allocated via a Path | |||
| It is also possible for a stateful PCE to request a PCC to allocate a | Computation LSP State Report (PCRpt) message. It is also possible | |||
| specific binding label/SID by sending a Path Computation LSP Update | for a stateful PCE to request a PCC to allocate a specific binding | |||
| Request (PCUpd) message. If the PCC can successfully allocate the | label/SID by sending a Path Computation LSP Update Request (PCUpd) | |||
| specified binding value, it reports the binding value to the PCE. | message. If the PCC can successfully allocate the specified binding | |||
| Otherwise, the PCC sends an error message to the PCE indicating the | value, it reports the binding value to the PCE. Otherwise, the PCC | |||
| cause of the failure. A local policy or configuration at the PCC | sends an error message to the PCE indicating the cause of the | |||
| SHOULD dictate if the binding label/SID needs to be assigned. | failure. A local policy or configuration at the PCC SHOULD dictate | |||
| if the binding label/SID needs to be assigned. | ||||
| In this document, we introduce a new OPTIONAL TLV that a PCC can use | 1.2. Summary of the Extension | |||
| in order to report the binding label/SID associated with a TE LSP, or | ||||
| a PCE to request a PCC to allocate a specific binding label/SID | ||||
| value. This TLV is intended for TE LSPs established using RSVP-TE, | ||||
| SR, or any other future method. Also, in the case of SR-TE LSPs, the | ||||
| TLV can carry a binding label (for SR-TE path with MPLS data-plane) | ||||
| or a binding IPv6 SID (e.g., IPv6 address for SR-TE paths with IPv6 | ||||
| data-plane). Throughout this document, the term "binding value" | ||||
| means either an MPLS label or a SID. | ||||
| Additionally, to support the PCE-based central controller [RFC8283] | To implement the needed changes to PCEP, in this document, we | |||
| operation where the PCE would take responsibility for managing some | introduce a new OPTIONAL TLV that a PCC can use in order to report | |||
| part of the MPLS label space for each of the routers that it | the binding label/SID associated with a TE LSP, or a PCE to request a | |||
| controls, the PCE could directly make the binding label/SID | PCC to allocate a specific binding label/SID value. This TLV is | |||
| allocation and inform the PCC. See Section 8 for details. | intended for TE LSPs established using RSVP-TE, SR, or any other | |||
| future method. Also, in the case of SR-TE LSPs, the TLV can carry a | ||||
| binding label (for SR-TE path with MPLS data-plane) or a binding IPv6 | ||||
| SID (e.g., IPv6 address for SR-TE paths with IPv6 data-plane). | ||||
| Throughout this document, the term "binding value" means either an | ||||
| MPLS label or a SID. | ||||
| As another way to use the extension specified in this document, to | ||||
| support the PCE-based central controller [RFC8283] operation where | ||||
| the PCE would take responsibility for managing some part of the MPLS | ||||
| label space for each of the routers that it controls, the PCE could | ||||
| directly make the binding label/SID allocation and inform the PCC. | ||||
| See Section 8 for details. | ||||
| In addition to specifying a new TLV, this document specifies how and | ||||
| when a PCC and PCE can use this TLV, how they can can allocate a | ||||
| binding label/SID, and associted error handling. | ||||
| 2. Requirements Language | 2. Requirements Language | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| "OPTIONAL" in this document are to be interpreted as described in BCP | "OPTIONAL" in this document are to be interpreted as described in BCP | |||
| 14 [RFC2119] [RFC8174] when, and only when, they appear in all | 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
| capitals, as shown here. | capitals, as shown here. | |||
| 3. Terminology | 3. Terminology | |||
| The following terminologies are used in this document: | The following terminologies are used in this document: | |||
| BSID: Binding Segment Identifier. | BSID: Binding Segment Identifier. | |||
| binding label/SID: a generic term used for the binding segment for | ||||
| both SR and non-SR paths. | ||||
| binding value: a generic term used for the binding segment as it can | ||||
| be encoded in various formats (as per the binding type(BT)). | ||||
| LSP: Label Switched Path. | LSP: Label Switched Path. | |||
| PCC: Path Computation Client. | PCC: Path Computation Client. | |||
| PCEP: Path Computation Element communication Protocol. | PCEP: Path Computation Element communication Protocol. | |||
| RSVP-TE: Resource ReserVation Protocol-Traffic Engineering. | RSVP-TE: Resource ReserVation Protocol-Traffic Engineering. | |||
| SID: Segment Identifier. | SID: Segment Identifier. | |||
| skipping to change at page 6, line 33 ¶ | skipping to change at page 7, line 5 ¶ | |||
| TE-PATH-BINDING TLV is a generic TLV such that it is able to carry | TE-PATH-BINDING TLV is a generic TLV such that it is able to carry | |||
| binding label/SID (i.e. MPLS label or SRv6 SID). It is formatted | binding label/SID (i.e. MPLS label or SRv6 SID). It is formatted | |||
| according to the rules specified in [RFC5440]. The value portion of | according to the rules specified in [RFC5440]. The value portion of | |||
| the TLV comprises: | the TLV comprises: | |||
| Binding Type (BT): A one-octet field that identifies the type of | Binding Type (BT): A one-octet field that identifies the type of | |||
| binding included in the TLV. This document specifies the following | binding included in the TLV. This document specifies the following | |||
| BT values: | BT values: | |||
| o BT = 0: The binding value is a 20-bit MPLS label value. The TLV | * BT = 0: The binding value is a 20-bit MPLS label value. The TLV | |||
| is padded to 4-bytes alignment. The Length MUST be set to 7 (the | is padded to 4-bytes alignment. The Length MUST be set to 7 (the | |||
| padding is not included in the length, as per [RFC5440] | padding is not included in the length, as per [RFC5440] | |||
| Section 7.1) and the first 20 bits are used to encode the MPLS | Section 7.1) and the first 20 bits are used to encode the MPLS | |||
| label value. | label value. | |||
| o BT = 1: The binding value is a 32-bit MPLS label stack entry as | * BT = 1: The binding value is a 32-bit MPLS label stack entry as | |||
| per [RFC3032] with Label, TC [RFC5462], S, and TTL values encoded. | per [RFC3032] with Label, TC [RFC5462], S, and TTL values encoded. | |||
| Note that the receiver MAY choose to override TC, S, and TTL | Note that the receiver MAY choose to override TC, S, and TTL | |||
| values according to its local policy. The Length MUST be set to | values according to its local policy. The Length MUST be set to | |||
| 8. | 8. | |||
| o BT = 2: The binding value is an SRv6 SID with the format of a | * BT = 2: The binding value is an SRv6 SID with the format of a | |||
| 16-octet IPv6 address, representing the binding SID for SRv6. The | 16-octet IPv6 address, representing the binding SID for SRv6. The | |||
| Length MUST be set to 20. | Length MUST be set to 20. | |||
| o BT = 3: The binding value is a 24 octet field, defined in | * BT = 3: The binding value is a 24 octet field, defined in | |||
| Section 4.1, that contains the SRv6 SID as well as its Behavior | Section 4.1, that contains the SRv6 SID as well as its Behavior | |||
| and Structure. The Length MUST be set to 28. | and Structure. The Length MUST be set to 28. | |||
| Section 12.1.1 defines the IANA registry used to maintain all these | Section 12.1.1 defines the IANA registry used to maintain all these | |||
| binding types as well as any future ones. Note that multiple TE- | binding types as well as any future ones. Note that multiple TE- | |||
| PATH-BINDING TLVs with different Binding Types MAY be present for the | PATH-BINDING TLVs with different Binding Types MAY be present for the | |||
| same LSP. | same LSP. | |||
| Flags: 1 octet of flags. The following flag is defined in the new | Flags: 1 octet of flags. The following flag is defined in the new | |||
| registry "TE-PATH-BINDING TLV Flag field" as described in | registry "TE-PATH-BINDING TLV Flag field" as described in | |||
| skipping to change at page 7, line 23 ¶ | skipping to change at page 7, line 43 ¶ | |||
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| |R| | | |R| | | |||
| +-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| Figure 3: Flags | Figure 3: Flags | |||
| where: | where: | |||
| o R (Removal - 1 bit): When set, the requesting PCEP peer requires | * R (Removal - 1 bit): When set, the requesting PCEP peer requires | |||
| the removal of the binding value for the LSP. When unset, the | the removal of the binding value for the LSP. When unset, the | |||
| PCEP peer indicates that the binding value is added or retained | PCEP peer indicates that the binding value is added or retained | |||
| for the LSP. This flag is used in the PCRpt and PCUpd messages. | for the LSP. This flag is used in the PCRpt and PCUpd messages. | |||
| It is ignored in other PCEP messages. | It is ignored in other PCEP messages. | |||
| o The unassigned flags MUST be set to 0 while sending and ignored on | * The unassigned flags MUST be set to 0 while sending and ignored on | |||
| receipt. | receipt. | |||
| Reserved: MUST be set to 0 while sending and ignored on receipt. | Reserved: MUST be set to 0 while sending and ignored on receipt. | |||
| Binding Value: A variable-length field, padded with trailing zeros to | Binding Value: A variable-length field, padded with trailing zeros to | |||
| a 4-octet boundary. When the BT is 0, the 20 bits represent the MPLS | a 4-octet boundary. When the BT is 0, the 20 bits represent the MPLS | |||
| label. When the BT is 1, the 32 bits represent the MPLS label stack | label. When the BT is 1, the 32 bits represent the MPLS label stack | |||
| entry as per [RFC3032]. When the BT is 2, the 128 bits represent the | entry as per [RFC3032]. When the BT is 2, the 128 bits represent the | |||
| SRv6 SID. When the BT is 3, the Binding Value also contains the SRv6 | SRv6 SID. When the BT is 3, the Binding Value also contains the SRv6 | |||
| Endpoint Behavior and SID Structure, defined in Section 4.1. | Endpoint Behavior and SID Structure, defined in Section 4.1. | |||
| skipping to change at page 8, line 15 ¶ | skipping to change at page 8, line 30 ¶ | |||
| 0 1 2 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 | 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | SRv6 Binding SID (16 octets) | | | SRv6 Binding SID (16 octets) | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Reserved | Endpoint Behavior | | | Reserved | Endpoint Behavior | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | LB Length | LN Length | Fun. Length | Arg. Length | | | LB Length | LN Length | Fun. Length | Arg. Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 4: SRv6 Endpoint Behavior and SID Structure | Figure 4: SRv6 Endpoint Behavior and SID Structure | |||
| The Binding Value consists of: | The Binding Value consists of: | |||
| o SRv6 Binding SID: 16 octets. The 128-bit IPv6 address, | * SRv6 Binding SID: 16 octets. The 128-bit IPv6 address, | |||
| representing the binding SID for SRv6. | representing the binding SID for SRv6. | |||
| o Reserved: 2 octets. It MUST be set to 0 on transmit and ignored | * Reserved: 2 octets. It MUST be set to 0 on transmit and ignored | |||
| on receipt. | on receipt. | |||
| o Endpoint Behavior: 2 octets. The Endpoint Behavior code point for | * Endpoint Behavior: 2 octets. The Endpoint Behavior code point for | |||
| this SRv6 SID as per the IANA subregistry called "SRv6 Endpoint | this SRv6 SID as per the IANA subregistry called "SRv6 Endpoint | |||
| Behaviors", created by [RFC8986]. When the field is set with the | Behaviors", created by [RFC8986]. When the field is set with the | |||
| value 0, the endpoint behavior is considered unknown. | value 0, the endpoint behavior is considered unknown. | |||
| o The following fields are used to advertise the length of each | * The following fields are used to advertise the length of each | |||
| individual part of the SRv6 SID as defined in [RFC8986]: | individual part of the SRv6 SID as defined in [RFC8986]: | |||
| * LB Length: 1 octet. SRv6 SID Locator Block length in bits. | - LB Length: 1 octet. SRv6 SID Locator Block length in bits. | |||
| * LN Length: 1 octet. SRv6 SID Locator Node length in bits. | - LN Length: 1 octet. SRv6 SID Locator Node length in bits. | |||
| * Function Length: 1 octet. SRv6 SID Function length in bits. | - Function Length: 1 octet. SRv6 SID Function length in bits. | |||
| * Argument Length: 1 octet. SRv6 SID Arguments length in bits. | - Argument Length: 1 octet. SRv6 SID Arguments length in bits. | |||
| 5. Operation | 5. Operation | |||
| The binding value is allocated by the PCC and reported to a PCE via a | The binding value is allocated by the PCC and reported to a PCE via a | |||
| PCRpt message. If a PCE does not recognize the TE-PATH-BINDING TLV, | PCRpt message. If a PCE does not recognize the TE-PATH-BINDING TLV, | |||
| it would ignore the TLV in accordance with [RFC5440]. If a PCE | it would ignore the TLV in accordance with [RFC5440]. If a PCE | |||
| recognizes the TLV but does not support the TLV, it MUST send a PCErr | recognizes the TLV but does not support the TLV, it MUST send a PCErr | |||
| with Error-Type = 2 (Capability not supported). | with Error-Type = 2 (Capability not supported). | |||
| Multiple TE-PATH-BINDING TLVs are allowed to be present in the same | Multiple TE-PATH-BINDING TLVs are allowed to be present in the same | |||
| skipping to change at page 11, line 38 ¶ | skipping to change at page 12, line 8 ¶ | |||
| using the PCE as the central controller. | using the PCE as the central controller. | |||
| When PCECC operations are supported as per [RFC9050], the binding | When PCECC operations are supported as per [RFC9050], the binding | |||
| label/SID MAY also be allocated by the PCE itself. Both peers need | label/SID MAY also be allocated by the PCE itself. Both peers need | |||
| to exchange the PCECC capability as described in [RFC9050] before the | to exchange the PCECC capability as described in [RFC9050] before the | |||
| PCE can allocate the binding label/SID on its own. | PCE can allocate the binding label/SID on its own. | |||
| A new P flag in the LSP object [RFC8231] is introduced to indicate | A new P flag in the LSP object [RFC8231] is introduced to indicate | |||
| that the allocation needs to be made by the PCE: | that the allocation needs to be made by the PCE: | |||
| o P (PCE-allocated binding label/SID): If the bit is set to 1, it | * P (PCE-allocated binding label/SID): If the bit is set to 1, it | |||
| indicates that the PCC requests PCE to make allocations for this | indicates that the PCC requests PCE to make allocations for this | |||
| LSP. The TE-PATH-BINDING TLV in the LSP object identifies that | LSP. The TE-PATH-BINDING TLV in the LSP object identifies that | |||
| the allocation is for a binding label/SID. A PCC MUST set this | the allocation is for a binding label/SID. A PCC MUST set this | |||
| bit to 1 and include a TE-PATH-BINDING TLV in the LSP object if it | bit to 1 and include a TE-PATH-BINDING TLV in the LSP object if it | |||
| wishes to request for allocation of binding label/SID by the PCE | wishes to request for allocation of binding label/SID by the PCE | |||
| in the PCEP message. A PCE MUST also set this bit to 1 and | in the PCEP message. A PCE MUST also set this bit to 1 and | |||
| include a TE-PATH-BINDING TLV to indicate that the binding label/ | include a TE-PATH-BINDING TLV to indicate that the binding label/ | |||
| SID is allocated by PCE and encoded in the PCEP message towards | SID is allocated by PCE and encoded in the PCEP message towards | |||
| the PCC. Further, a PCE MUST set this bit to 0 and include a TE- | the PCC. Further, a PCE MUST set this bit to 0 and include a TE- | |||
| PATH-BINDING TLV in the LSP object if it wishes to indicate that | PATH-BINDING TLV in the LSP object if it wishes to indicate that | |||
| the binding label/SID should be allocated by the PCC as described | the binding label/SID should be allocated by the PCC as described | |||
| in Section 5. | in Section 5. | |||
| Note that - | Note that - | |||
| o A PCE could allocate the binding label/SID of its own accord for a | ||||
| * A PCE could allocate the binding label/SID of its own accord for a | ||||
| PCE-initiated or delegated LSP, and inform the PCC in the | PCE-initiated or delegated LSP, and inform the PCC in the | |||
| PCInitiate message or PCUpd message by setting P=1 and including | PCInitiate message or PCUpd message by setting P=1 and including | |||
| TE-PATH-BINDING TLV in the LSP object. | TE-PATH-BINDING TLV in the LSP object. | |||
| o To let the PCC allocate the binding label/SID, a PCE MUST set P=0 | * To let the PCC allocate the binding label/SID, a PCE MUST set P=0 | |||
| and include an empty TE-PATH-BINDING TLV ( i.e., no binding value | and include an empty TE-PATH-BINDING TLV ( i.e., no binding value | |||
| is specified) in the LSP object in PCInitiate/PCUpd message. | is specified) in the LSP object in PCInitiate/PCUpd message. | |||
| o To request that the PCE allocate the binding label/SID, a PCC MUST | * To request that the PCE allocate the binding label/SID, a PCC MUST | |||
| set P=1, D=1, and include an empty TE-PATH-BINDING TLV in PCRpt | set P=1, D=1, and include an empty TE-PATH-BINDING TLV in PCRpt | |||
| message. The PCE SHOULD allocate it and respond to the PCC with | message. The PCE SHOULD allocate it and respond to the PCC with | |||
| PCUpd message including the allocated binding label/SID in the TE- | PCUpd message including the allocated binding label/SID in the TE- | |||
| PATH-BINDING TLV and P=1, D=1 in the LSP object. If the PCE is | PATH-BINDING TLV and P=1, D=1 in the LSP object. If the PCE is | |||
| unable to allocate, it MUST send a PCErr message with Error-Type = | unable to allocate, it MUST send a PCErr message with Error-Type = | |||
| TBD2 ("Binding label/SID failure") and Error-Value = TBD5 ("Unable | TBD2 ("Binding label/SID failure") and Error-Value = TBD5 ("Unable | |||
| to allocate a new binding label/SID"). | to allocate a new binding label/SID"). | |||
| o If one or both speakers (PCE and PCC) have not indicated support | * If one or both speakers (PCE and PCC) have not indicated support | |||
| and willingness to use the PCEP extensions for the PCECC as per | and willingness to use the PCEP extensions for the PCECC as per | |||
| [RFC9050] and a PCEP peer receives P=1 in the LSP object, it MUST: | [RFC9050] and a PCEP peer receives P=1 in the LSP object, it MUST: | |||
| * send a PCErr message with Error-Type=19 (Invalid Operation) and | - send a PCErr message with Error-Type=19 (Invalid Operation) and | |||
| Error-value=16 (Attempted PCECC operations when PCECC | Error-value=16 (Attempted PCECC operations when PCECC | |||
| capability was not advertised) and | capability was not advertised) and | |||
| * terminate the PCEP session. | - terminate the PCEP session. | |||
| o A legacy PCEP speaker that does not recognize the P flag in the | * A legacy PCEP speaker that does not recognize the P flag in the | |||
| LSP object would ignore it in accordance with [RFC8231]. | LSP object would ignore it in accordance with [RFC8231]. | |||
| It is assumed that the label range to be used by a PCE is known and | It is assumed that the label range to be used by a PCE is known and | |||
| set on both PCEP peers. The exact mechanism is out of the scope of | set on both PCEP peers. The exact mechanism is out of the scope of | |||
| [RFC9050] or this document. Note that the specific BSID could be | [RFC9050] or this document. Note that the specific BSID could be | |||
| from the PCE-controlled or the PCC-controlled label space. The PCE | from the PCE-controlled or the PCC-controlled label space. The PCE | |||
| can directly allocate the label from the PCE-controlled label space | can directly allocate the label from the PCE-controlled label space | |||
| using P=1 as described above, whereas the PCE can request the | using P=1 as described above, whereas the PCE can request the | |||
| allocation of a specific BSID from the PCC-controlled label space | allocation of a specific BSID from the PCC-controlled label space | |||
| with P=0 as described in Section 5. | with P=0 as described in Section 5. | |||
| skipping to change at page 13, line 4 ¶ | skipping to change at page 13, line 25 ¶ | |||
| with P=0 as described in Section 5. | with P=0 as described in Section 5. | |||
| 9. Implementation Status | 9. Implementation Status | |||
| [Note to the RFC Editor - remove this section before publication, as | [Note to the RFC Editor - remove this section before publication, as | |||
| well as remove the reference to RFC 7942.] | well as remove the reference to RFC 7942.] | |||
| This section records the status of known implementations of the | This section records the status of known implementations of the | |||
| protocol defined by this specification at the time of posting of this | protocol defined by this specification at the time of posting of this | |||
| Internet-Draft, and is based on a proposal described in [RFC7942]. | Internet-Draft, and is based on a proposal described in [RFC7942]. | |||
| The description of implementations in this section is intended to | The description of implementations in this section is intended to | |||
| assist the IETF in its decision processes in progressing drafts to | assist the IETF in its decision processes in progressing drafts to | |||
| RFCs. Please note that the listing of any individual implementation | RFCs. Please note that the listing of any individual implementation | |||
| here does not imply endorsement by the IETF. Furthermore, no effort | here does not imply endorsement by the IETF. Furthermore, no effort | |||
| has been spent to verify the information presented here that was | has been spent to verify the information presented here that was | |||
| supplied by IETF contributors. This is not intended as, and must not | supplied by IETF contributors. This is not intended as, and must not | |||
| be construed to be, a catalog of available implementations or their | be construed to be, a catalog of available implementations or their | |||
| features. Readers are advised to note that other implementations may | features. Readers are advised to note that other implementations may | |||
| exist. | exist. | |||
| According to [RFC7942], "this will allow reviewers and working groups | According to [RFC7942], "this will allow reviewers and working groups | |||
| to assign due consideration to documents that have the benefit of | to assign due consideration to documents that have the benefit of | |||
| running code, which may serve as evidence of valuable experimentation | running code, which may serve as evidence of valuable experimentation | |||
| and feedback that have made the implemented protocols more mature. | and feedback that have made the implemented protocols more mature. | |||
| It is up to the individual working groups to use this information as | It is up to the individual working groups to use this information as | |||
| they see fit". | they see fit". | |||
| 9.1. Huawei | 9.1. Huawei | |||
| o Organization: Huawei | * Organization: Huawei | |||
| o Implementation: Huawei's Router and Controller | * Implementation: Huawei's Router and Controller | |||
| o Description: An experimental code-point is used and will be | * Description: An experimental code-point is used and will be | |||
| modified to the value allocated in this document. | modified to the value allocated in this document. | |||
| o Maturity Level: Production | * Maturity Level: Production | |||
| * Coverage: Full | ||||
| o Coverage: Full | ||||
| o Contact: c.l@huawei.com | * Contact: c.l@huawei.com | |||
| 9.2. Cisco | 9.2. Cisco | |||
| o Organization: Cisco Systems | * Organization: Cisco Systems | |||
| o Implementation: Head-end and controller. | * Implementation: Head-end and controller. | |||
| o Description: An experimental code-point is used and will be | * Description: An experimental code-point is used and will be | |||
| modified to the value allocated in this document. | modified to the value allocated in this document. | |||
| o Maturity Level: Production | * Maturity Level: Production | |||
| o Coverage: Full | * Coverage: Full | |||
| o Contact: mkoldych@cisco.com | * Contact: mkoldych@cisco.com | |||
| 10. Security Considerations | 10. Security Considerations | |||
| The security considerations described in [RFC5440], [RFC8231], | The security considerations described in [RFC5440], [RFC8231], | |||
| [RFC8281] and [RFC8664] are applicable to this specification. No | [RFC8281] and [RFC8664] are applicable to this specification. No | |||
| additional security measure is required. | additional security measure is required. | |||
| As described in [RFC8664], SR allows a network controller to | As described in [RFC8664], SR allows a network controller to | |||
| instantiate and control paths in the network. A rogue PCE can | instantiate and control paths in the network. A rogue PCE can | |||
| manipulate binding SID allocations to move traffic around for some | manipulate binding SID allocations to move traffic around for some | |||
| skipping to change at page 14, line 41 ¶ | skipping to change at page 15, line 17 ¶ | |||
| All manageability requirements and considerations listed in | All manageability requirements and considerations listed in | |||
| [RFC5440], [RFC8231], and [RFC8664] apply to PCEP protocol extensions | [RFC5440], [RFC8231], and [RFC8664] apply to PCEP protocol extensions | |||
| defined in this document. In addition, requirements and | defined in this document. In addition, requirements and | |||
| considerations listed in this section apply. | considerations listed in this section apply. | |||
| 11.1. Control of Function and Policy | 11.1. Control of Function and Policy | |||
| A PCC implementation SHOULD allow the operator to configure the | A PCC implementation SHOULD allow the operator to configure the | |||
| policy the PCC needs to apply when allocating the binding label/SID. | policy the PCC needs to apply when allocating the binding label/SID. | |||
| For BT is 2, the operator needs to have local policy set to decide | If BT is set to 2, the operator needs to have local policy set to | |||
| the SID structure and the SRv6 Endpoint Behavior of the BSID. | decide the SID structure and the SRv6 Endpoint Behavior of the BSID. | |||
| 11.2. Information and Data Models | 11.2. Information and Data Models | |||
| The PCEP YANG module [I-D.ietf-pce-pcep-yang] will be extended to | The PCEP YANG module [I-D.ietf-pce-pcep-yang] will be extended to | |||
| include policy configuration for binding label/SID allocation. | include policy configuration for binding label/SID allocation. | |||
| 11.3. Liveness Detection and Monitoring | 11.3. Liveness Detection and Monitoring | |||
| The mechanisms defined in this document do not imply any new liveness | The mechanisms defined in this document do not imply any new liveness | |||
| detection and monitoring requirements in addition to those already | detection and monitoring requirements in addition to those already | |||
| skipping to change at page 15, line 39 ¶ | skipping to change at page 16, line 11 ¶ | |||
| IANA maintains the "Path Computation Element Protocol (PCEP) Numbers" | IANA maintains the "Path Computation Element Protocol (PCEP) Numbers" | |||
| registry. This document requests IANA actions to allocate code | registry. This document requests IANA actions to allocate code | |||
| points for the protocol elements defined in this document. | points for the protocol elements defined in this document. | |||
| 12.1. PCEP TLV Type Indicators | 12.1. PCEP TLV Type Indicators | |||
| This document defines a new PCEP TLV; IANA is requested to confirm | This document defines a new PCEP TLV; IANA is requested to confirm | |||
| the following early allocations from the "PCEP TLV Type Indicators" | the following early allocations from the "PCEP TLV Type Indicators" | |||
| subregistry of the PCEP Numbers registry, as follows: | subregistry of the PCEP Numbers registry, as follows: | |||
| Value Description Reference | +=======+=================+===============+ | |||
| | Value | Description | Reference | | ||||
| +=======+=================+===============+ | ||||
| +-------+-----------------+---------------+ | ||||
| | 55 | TE-PATH-BINDING | This document | | ||||
| +-------+-----------------+---------------+ | ||||
| 55 TE-PATH-BINDING This document | Table 1 | |||
| 12.1.1. TE-PATH-BINDING TLV | 12.1.1. TE-PATH-BINDING TLV | |||
| IANA is requested to create a new subregistry "TE-PATH-BINDING TLV BT | IANA is requested to create a new subregistry "TE-PATH-BINDING TLV BT | |||
| field" to manage the value of the Binding Type field in the TE-PATH- | field" to manage the value of the Binding Type field in the TE-PATH- | |||
| BINDING TLV. Initial values for the subregistry are given below. | BINDING TLV. Initial values for the subregistry are given below. | |||
| New values are assigned by Standards Action [RFC8126]. | New values are assigned by Standards Action [RFC8126]. | |||
| Value Description Reference | +=======+======================================+===============+ | |||
| | Value | Description | Reference | | ||||
| +=======+======================================+===============+ | ||||
| +-------+--------------------------------------+---------------+ | ||||
| | 0 | MPLS Label | This document | | ||||
| +-------+--------------------------------------+---------------+ | ||||
| | 1 | MPLS Label Stack Entry | This document | | ||||
| +-------+--------------------------------------+---------------+ | ||||
| | 2 | SRv6 SID | This document | | ||||
| +-------+--------------------------------------+---------------+ | ||||
| | 3 | SRv6 SID with Behavior and Structure | This document | | ||||
| +-------+--------------------------------------+---------------+ | ||||
| | 4-255 | Unassigned | This document | | ||||
| +-------+--------------------------------------+---------------+ | ||||
| 0 MPLS Label This document | Table 2 | |||
| 1 MPLS Label Stack This document | ||||
| Entry | ||||
| 2 SRv6 SID This document | ||||
| 3 SRv6 SID with This document | ||||
| Behavior and | ||||
| Structure | ||||
| 4-255 Unassigned This document | ||||
| IANA is requested to create a new subregistry "TE-PATH-BINDING TLV | IANA is requested to create a new subregistry "TE-PATH-BINDING TLV | |||
| Flag field" to manage the Flag field in the TE-PATH-BINDING TLV. New | Flag field" to manage the Flag field in the TE-PATH-BINDING TLV. New | |||
| values are to be assigned by Standards Action [RFC8126]. Each bit | values are to be assigned by Standards Action [RFC8126]. Each bit | |||
| should be tracked with the following qualities: | should be tracked with the following qualities: | |||
| o Bit number (count from 0 as the most significant bit) | * Bit number (count from 0 as the most significant bit) | |||
| o Description | ||||
| o Reference | * Description | |||
| * Reference | ||||
| Bit Description Reference | +=====+=============+===============+ | |||
| | Bit | Description | Reference | | ||||
| +=====+=============+===============+ | ||||
| +-----+-------------+---------------+ | ||||
| | 0 | R (Removal) | This document | | ||||
| +-----+-------------+---------------+ | ||||
| | 1-7 | Unassigned | This document | | ||||
| +-----+-------------+---------------+ | ||||
| 0 R (Removal) This document | Table 3 | |||
| 1-7 Unassigned This document | ||||
| 12.2. LSP Object | 12.2. LSP Object | |||
| IANA is requested to confirm the early allocation for a new code- | IANA is requested to confirm the early allocation for a new code- | |||
| point in the "LSP Object Flag Field" sub-registry for the new P flag | point in the "LSP Object Flag Field" sub-registry for the new P flag | |||
| as follows: | as follows: | |||
| Bit Description Reference | +=====+=================================+===============+ | |||
| | Bit | Description | Reference | | ||||
| +=====+=================================+===============+ | ||||
| +-----+---------------------------------+---------------+ | ||||
| | 0 | PCE-allocated binding label/SID | This document | | ||||
| +-----+---------------------------------+---------------+ | ||||
| 0 PCE-allocated binding This document | Table 4 | |||
| label/SID | ||||
| 12.3. PCEP Error Type and Value | 12.3. PCEP Error Type and Value | |||
| This document defines a new Error-type and associated Error-Values | This document defines a new Error-type and associated Error-Values | |||
| for the PCErr message. IANA is requested to allocate new error-type | for the PCErr message. IANA is requested to allocate new error-type | |||
| and error-values within the "PCEP-ERROR Object Error Types and | and error-values within the "PCEP-ERROR Object Error Types and | |||
| Values" subregistry of the PCEP Numbers registry, as follows: | Values" subregistry of the PCEP Numbers registry, as follows: | |||
| Error-Type Meaning Error-value Reference | +============+================+========================+===========+ | |||
| | Error-Type | Meaning | Error-value | Reference | | ||||
| +============+================+========================+===========+ | ||||
| +------------+----------------+------------------------+-----------+ | ||||
| | TBD2 | Binding label/ | 0: Unassigned | This | | ||||
| | | SID failure | | document | | ||||
| +------------+----------------+------------------------+-----------+ | ||||
| | | | TBD3: Invalid SID | This | | ||||
| | | | | document | | ||||
| +------------+----------------+------------------------+-----------+ | ||||
| | | | TBD4: Unable to | This | | ||||
| | | | allocate the specified | document | | ||||
| | | | binding value | | | ||||
| +------------+----------------+------------------------+-----------+ | ||||
| | | | TBD5: Unable to | This | | ||||
| | | | allocate a new binding | document | | ||||
| | | | label/SID | | | ||||
| +------------+----------------+------------------------+-----------+ | ||||
| TBD2 Binding label/SID 0: Unassigned This | Table 5 | |||
| failure document | ||||
| TBD3: Invalid SID This | ||||
| document | ||||
| TBD4: Unable to allocate the This | ||||
| specified binding value document | ||||
| TBD5: Unable to allocate a This | ||||
| new binding label/SID document | ||||
| 13. Acknowledgements | 13. Acknowledgements | |||
| We would like to thank Milos Fabian, Mrinmoy Das, Andrew Stone, Tom | We would like to thank Milos Fabian, Mrinmoy Das, Andrew Stone, Tom | |||
| Petch, Aijun Wang, Olivier Dugeon, and Adrian Farrel for their | Petch, Aijun Wang, Olivier Dugeon, and Adrian Farrel for their | |||
| valuable comments. | valuable comments. | |||
| Thanks to Julien Meuric for shepherding. Thanks to John Scudder for | Thanks to Julien Meuric for shepherding. Thanks to John Scudder for | |||
| the AD review. | the AD review. | |||
| Thanks to Theresa Enghardt for GENART review. | ||||
| 14. References | 14. References | |||
| 14.1. Normative References | 14.1. Normative References | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., | [RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., | |||
| skipping to change at page 19, line 21 ¶ | skipping to change at page 20, line 32 ¶ | |||
| [RFC9050] Li, Z., Peng, S., Negi, M., Zhao, Q., and C. Zhou, "Path | [RFC9050] Li, Z., Peng, S., Negi, M., Zhao, Q., and C. Zhou, "Path | |||
| Computation Element Communication Protocol (PCEP) | Computation Element Communication Protocol (PCEP) | |||
| Procedures and Extensions for Using the PCE as a Central | Procedures and Extensions for Using the PCE as a Central | |||
| Controller (PCECC) of LSPs", RFC 9050, | Controller (PCECC) of LSPs", RFC 9050, | |||
| DOI 10.17487/RFC9050, July 2021, | DOI 10.17487/RFC9050, July 2021, | |||
| <https://www.rfc-editor.org/info/rfc9050>. | <https://www.rfc-editor.org/info/rfc9050>. | |||
| [I-D.ietf-pce-segment-routing-ipv6] | [I-D.ietf-pce-segment-routing-ipv6] | |||
| Li, C., Negi, M., Sivabalan, S., Koldychev, M., | Li, C., Negi, M., Sivabalan, S., Koldychev, M., | |||
| Kaladharan, P., and Y. Zhu, "PCEP Extensions for Segment | Kaladharan, P., and Y. Zhu, "PCEP Extensions for Segment | |||
| Routing leveraging the IPv6 data plane", draft-ietf-pce- | Routing leveraging the IPv6 data plane", Work in Progress, | |||
| segment-routing-ipv6-09 (work in progress), May 2021. | Internet-Draft, draft-ietf-pce-segment-routing-ipv6-11, 10 | |||
| January 2022, <https://www.ietf.org/internet-drafts/draft- | ||||
| ietf-pce-segment-routing-ipv6-11.txt>. | ||||
| 14.2. Informative References | 14.2. Informative References | |||
| [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation | [RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path | |||
| Element (PCE)-Based Architecture", RFC 4655, | Computation Element (PCE)-Based Architecture", RFC 4655, | |||
| DOI 10.17487/RFC4655, August 2006, | DOI 10.17487/RFC4655, August 2006, | |||
| <https://www.rfc-editor.org/info/rfc4655>. | <https://www.rfc-editor.org/info/rfc4655>. | |||
| [RFC8283] Farrel, A., Ed., Zhao, Q., Ed., Li, Z., and C. Zhou, "An | [RFC8283] Farrel, A., Ed., Zhao, Q., Ed., Li, Z., and C. Zhou, "An | |||
| Architecture for Use of PCE and the PCE Communication | Architecture for Use of PCE and the PCE Communication | |||
| Protocol (PCEP) in a Network with Central Control", | Protocol (PCEP) in a Network with Central Control", | |||
| RFC 8283, DOI 10.17487/RFC8283, December 2017, | RFC 8283, DOI 10.17487/RFC8283, December 2017, | |||
| <https://www.rfc-editor.org/info/rfc8283>. | <https://www.rfc-editor.org/info/rfc8283>. | |||
| [RFC8669] Previdi, S., Filsfils, C., Lindem, A., Ed., Sreekantiah, | [RFC8669] Previdi, S., Filsfils, C., Lindem, A., Ed., Sreekantiah, | |||
| A., and H. Gredler, "Segment Routing Prefix Segment | A., and H. Gredler, "Segment Routing Prefix Segment | |||
| Identifier Extensions for BGP", RFC 8669, | Identifier Extensions for BGP", RFC 8669, | |||
| DOI 10.17487/RFC8669, December 2019, | DOI 10.17487/RFC8669, December 2019, | |||
| <https://www.rfc-editor.org/info/rfc8669>. | <https://www.rfc-editor.org/info/rfc8669>. | |||
| [I-D.ietf-spring-segment-routing-policy] | [I-D.ietf-spring-segment-routing-policy] | |||
| Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and | Filsfils, C., Talaulikar, K., Voyer, D., Bogdanov, A., and | |||
| P. Mattes, "Segment Routing Policy Architecture", draft- | P. Mattes, "Segment Routing Policy Architecture", Work in | |||
| ietf-spring-segment-routing-policy-13 (work in progress), | Progress, Internet-Draft, draft-ietf-spring-segment- | |||
| May 2021. | routing-policy-14, 25 October 2021, | |||
| <https://www.ietf.org/archive/id/draft-ietf-spring- | ||||
| segment-routing-policy-14.txt>. | ||||
| [I-D.ietf-pce-pcep-yang] | [I-D.ietf-pce-pcep-yang] | |||
| Dhody, D., Hardwick, J., Beeram, V. P., and J. Tantsura, | Dhody, D., Hardwick, J., Beeram, V. P., and J. Tantsura, | |||
| "A YANG Data Model for Path Computation Element | "A YANG Data Model for Path Computation Element | |||
| Communications Protocol (PCEP)", draft-ietf-pce-pcep- | Communications Protocol (PCEP)", Work in Progress, | |||
| yang-16 (work in progress), February 2021. | Internet-Draft, draft-ietf-pce-pcep-yang-17, 23 October | |||
| 2021, <https://www.ietf.org/archive/id/draft-ietf-pce- | ||||
| pcep-yang-17.txt>. | ||||
| Appendix A. Contributor Addresses | Appendix A. Contributor Addresses | |||
| Jonathan Hardwick | Jonathan Hardwick | |||
| Metaswitch Networks | Metaswitch Networks | |||
| 33 Genotin Road | 33 Genotin Road | |||
| Enfield | Enfield | |||
| United Kingdom | United Kingdom | |||
| EMail: Jonathan.Hardwick@metaswitch.com | EMail: Jonathan.Hardwick@metaswitch.com | |||
| Dhruv Dhody | Dhruv Dhody | |||
| Huawei Technologies | Huawei Technologies | |||
| skipping to change at page 21, line 49 ¶ | skipping to change at page 22, line 46 ¶ | |||
| Zafar Ali | Zafar Ali | |||
| Cisco Systems, Inc. | Cisco Systems, Inc. | |||
| Email: zali@cisco.com | Email: zali@cisco.com | |||
| Authors' Addresses | Authors' Addresses | |||
| Siva Sivabalan | Siva Sivabalan | |||
| Ciena Corporation | Ciena Corporation | |||
| EMail: msiva282@gmail.com | Email: msiva282@gmail.com | |||
| Clarence Filsfils | Clarence Filsfils | |||
| Cisco Systems, Inc. | Cisco Systems, Inc. | |||
| Pegasus Parc | Pegasus Parc | |||
| De kleetlaan 6a, DIEGEM BRABANT 1831 | BRABANT 1831 De kleetlaan 6a | |||
| BELGIUM | Belgium | |||
| EMail: cfilsfil@cisco.com | Email: cfilsfil@cisco.com | |||
| Jeff Tantsura | Jeff Tantsura | |||
| Microsoft Corporation | Microsoft Corporation | |||
| EMail: jefftant.ietf@gmail.com | Email: jefftant.ietf@gmail.com | |||
| Stefano Previdi | Stefano Previdi | |||
| Huawei Technologies | Huawei Technologies | |||
| EMail: stefano@previdi.net | Email: stefano@previdi.net | |||
| Cheng Li (editor) | Cheng Li (editor) | |||
| Huawei Technologies | Huawei Technologies | |||
| Huawei Campus, No. 156 Beiqing Rd. | Huawei Campus, No. 156 Beiqing Rd. | |||
| Beijing 100095 | Beijing | |||
| 100095 | ||||
| China | China | |||
| EMail: c.l@huawei.com | Email: c.l@huawei.com | |||
| End of changes. 85 change blocks. | ||||
| 161 lines changed or deleted | 217 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||