| < draft-ietf-pce-segment-routing-10.txt | draft-ietf-pce-segment-routing-11.txt > | |||
|---|---|---|---|---|
| PCE S. Sivabalan | PCE S. Sivabalan | |||
| Internet-Draft C. Filsfils | Internet-Draft C. Filsfils | |||
| Intended status: Standards Track Cisco Systems, Inc. | Intended status: Standards Track Cisco Systems, Inc. | |||
| Expires: April 13, 2018 J. Tantsura | Expires: May 24, 2018 J. Tantsura | |||
| Individual | Individual | |||
| W. Henderickx | W. Henderickx | |||
| Nokia | Nokia | |||
| J. Hardwick | J. Hardwick | |||
| Metaswitch Networks | Metaswitch Networks | |||
| October 10, 2017 | November 20, 2017 | |||
| PCEP Extensions for Segment Routing | PCEP Extensions for Segment Routing | |||
| draft-ietf-pce-segment-routing-10 | draft-ietf-pce-segment-routing-11 | |||
| Abstract | Abstract | |||
| Segment Routing (SR) enables any head-end node to select any path | Segment Routing (SR) enables any head-end node to select any path | |||
| without relying on a hop-by-hop signaling technique (e.g., LDP or | without relying on a hop-by-hop signaling technique (e.g., LDP or | |||
| RSVP-TE). It depends only on "segments" that are advertised by Link- | RSVP-TE). It depends only on "segments" that are advertised by Link- | |||
| State Interior Gateway Protocols (IGPs). A Segment Routed Path can | State Interior Gateway Protocols (IGPs). A Segment Routed Path can | |||
| be derived from a variety of mechanisms, including an IGP Shortest | be derived from a variety of mechanisms, including an IGP Shortest | |||
| Path Tree (SPT), explicit configuration, or a Path Computation | Path Tree (SPT), explicit configuration, or a Path Computation | |||
| Element (PCE). This document specifies extensions to the Path | Element (PCE). This document specifies extensions to the Path | |||
| skipping to change at page 1, line 45 ¶ | skipping to change at page 1, line 45 ¶ | |||
| document are to be interpreted as described in [RFC2119]. | document are to be interpreted as described in [RFC2119]. | |||
| 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 http://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 13, 2018. | This Internet-Draft will expire on May 24, 2018. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2017 IETF Trust and the persons identified as the | Copyright (c) 2017 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/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 3. Overview of PCEP Operation in SR Networks . . . . . . . . . . 5 | 3. Overview of PCEP Operation in SR Networks . . . . . . . . . . 5 | |||
| 4. SR-Specific PCEP Message Extensions . . . . . . . . . . . . . 6 | 4. SR-Specific PCEP Message Extensions . . . . . . . . . . . . . 6 | |||
| 5. Object Formats . . . . . . . . . . . . . . . . . . . . . . . 7 | 5. Object Formats . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 5.1. The OPEN Object . . . . . . . . . . . . . . . . . . . . . 7 | 5.1. The OPEN Object . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 5.1.1. The SR PCE Capability TLV . . . . . . . . . . . . . . 7 | 5.1.1. The SR PCE Capability sub-TLV . . . . . . . . . . . . 7 | |||
| 5.2. The RP/SRP Object . . . . . . . . . . . . . . . . . . . . 8 | 5.1.2. Exchanging the SR PCE Capability . . . . . . . . . . 8 | |||
| 5.2. The RP/SRP Object . . . . . . . . . . . . . . . . . . . . 9 | ||||
| 5.3. ERO Object . . . . . . . . . . . . . . . . . . . . . . . 9 | 5.3. ERO Object . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 5.3.1. SR-ERO Subobject . . . . . . . . . . . . . . . . . . 9 | 5.3.1. SR-ERO Subobject . . . . . . . . . . . . . . . . . . 10 | |||
| 5.3.2. NAI Associated with SID . . . . . . . . . . . . . . . 11 | 5.3.2. NAI Associated with SID . . . . . . . . . . . . . . . 12 | |||
| 5.3.3. ERO Processing . . . . . . . . . . . . . . . . . . . 12 | 5.3.3. ERO Processing . . . . . . . . . . . . . . . . . . . 13 | |||
| 5.4. RRO Object . . . . . . . . . . . . . . . . . . . . . . . 13 | 5.4. RRO Object . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 5.4.1. RRO Processing . . . . . . . . . . . . . . . . . . . 14 | 5.4.1. RRO Processing . . . . . . . . . . . . . . . . . . . 14 | |||
| 5.5. METRIC Object . . . . . . . . . . . . . . . . . . . . . . 14 | 5.5. METRIC Object . . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 6. Backward Compatibility . . . . . . . . . . . . . . . . . . . 15 | 6. Backward Compatibility . . . . . . . . . . . . . . . . . . . 15 | |||
| 7. Management Considerations . . . . . . . . . . . . . . . . . . 15 | 7. Management Considerations . . . . . . . . . . . . . . . . . . 16 | |||
| 7.1. Policy . . . . . . . . . . . . . . . . . . . . . . . . . 15 | 7.1. Policy . . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 7.2. The PCEP Data Model . . . . . . . . . . . . . . . . . . . 15 | 7.2. The PCEP Data Model . . . . . . . . . . . . . . . . . . . 16 | |||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 15 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 16 | |||
| 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 9.1. PCEP Objects . . . . . . . . . . . . . . . . . . . . . . 16 | 9.1. PCEP Objects . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 9.2. PCEP-Error Object . . . . . . . . . . . . . . . . . . . . 16 | 9.2. PCEP-Error Object . . . . . . . . . . . . . . . . . . . . 17 | |||
| 9.3. PCEP TLV Type Indicators . . . . . . . . . . . . . . . . 17 | 9.3. PCEP TLV Type Indicators . . . . . . . . . . . . . . . . 18 | |||
| 9.4. New Path Setup Type . . . . . . . . . . . . . . . . . . . 17 | 9.4. New Path Setup Type . . . . . . . . . . . . . . . . . . . 18 | |||
| 9.5. New Metric Type . . . . . . . . . . . . . . . . . . . . . 17 | 9.5. New Metric Type . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 18 | ||||
| 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 17 | 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17 | 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
| 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 18 | 12.1. Normative References . . . . . . . . . . . . . . . . . . 19 | |||
| 12.1. Normative References . . . . . . . . . . . . . . . . . . 18 | 12.2. Informative References . . . . . . . . . . . . . . . . . 20 | |||
| 12.2. Informative References . . . . . . . . . . . . . . . . . 19 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 20 | ||||
| 1. Introduction | 1. Introduction | |||
| SR technology leverages the source routing and tunneling paradigms. | SR technology leverages the source routing and tunneling paradigms. | |||
| A source node can choose a path without relying on hop-by-hop | A source node can choose a path without relying on hop-by-hop | |||
| signaling protocols such as LDP or RSVP-TE. Each path is specified | signaling protocols such as LDP or RSVP-TE. Each path is specified | |||
| as a set of "segments" advertised by link-state routing protocols | as a set of "segments" advertised by link-state routing protocols | |||
| (IS-IS or OSPF). [I-D.ietf-spring-segment-routing] provides an | (IS-IS or OSPF). [I-D.ietf-spring-segment-routing] provides an | |||
| introduction to SR architecture. The corresponding IS-IS and OSPF | introduction to SR architecture. The corresponding IS-IS and OSPF | |||
| extensions are specified in | extensions are specified in | |||
| [I-D.ietf-isis-segment-routing-extensions] and | [I-D.ietf-isis-segment-routing-extensions] and | |||
| [I-D.ietf-ospf-segment-routing-extensions], respectively. SR | [I-D.ietf-ospf-segment-routing-extensions], respectively. SR | |||
| architecture defines a "segment" as a piece of information advertised | architecture defines a "segment" as a piece of information advertised | |||
| by a link-state routing protocols, e.g. an IGP prefix or an IGP | by a link-state routing protocols, e.g. an IGP prefix or an IGP | |||
| adjacency. Several types of segments are defined. A Node segment | adjacency. Several types of segments are defined. A Node segment | |||
| represents an ECMP-aware shortest-path computed by IGP to a specific | represents an ECMP-aware shortest-path computed by IGP to a specific | |||
| node, and is always global within SR/IGP domain. An Adjacency | node, and is always global within SR/IGP domain. An Adjacency | |||
| Segment represents unidirectional adjacency. An Adjacency Segment is | Segment represents a unidirectional adjacency. An Adjacency Segment | |||
| local to the node which advertises it. Both Node segments and | is local to the node which advertises it. Both Node segments and | |||
| Adjacency segments can be used for SR Traffic Engineering (SR-TE). | Adjacency segments can be used for SR Traffic Engineering (SR-TE). | |||
| The SR architecture can be applied to the MPLS forwarding plane | The SR architecture can be applied to the MPLS forwarding plane | |||
| without any change, in which case an SR path corresponds to an MPLS | without any change, in which case an SR path corresponds to an MPLS | |||
| Label Switching Path (LSP). This document is relevant to MPLS | Label Switching Path (LSP). This document is relevant to the MPLS | |||
| forwarding plane only and assumes that a 32-bit Segment Identifier | forwarding plane only. In this document, "Node-SID" and "Adjacency- | |||
| (SID) represents an absolute value of MPLS label entry. In this | SID" denote Node Segment Identifier and Adjacency Segment Identifier | |||
| document, "Node-SID" and "Adjacency-SID" denote Node Segment | respectively. | |||
| Identifier and Adjacency Segment Identifier respectively. | ||||
| A Segment Routed path (SR path) can be derived from an IGP Shortest | A Segment Routed path (SR path) can be derived from an IGP Shortest | |||
| Path Tree (SPT). SR-TE paths may not follow IGP SPT. Such paths may | Path Tree (SPT). SR-TE paths may not follow an IGP SPT. Such paths | |||
| be chosen by a suitable network planning tool and provisioned on the | may be chosen by a suitable network planning tool and provisioned on | |||
| ingress node of the SR-TE path. | the ingress node of the SR-TE path. | |||
| [RFC5440] describes Path Computation Element Protocol (PCEP) for | [RFC5440] describes the Path Computation Element Protocol (PCEP) for | |||
| communication between a Path Computation Client (PCC) and a Path | communication between a Path Computation Client (PCC) and a Path | |||
| Computation Element (PCE) or between one a pair of PCEs. A PCE or a | Computation Element (PCE) or between a pair of PCEs. A PCE, or a PCC | |||
| PCC operating as a PCE (in hierarchical PCE environment) computes | operating as a PCE (in hierarchical PCE environment), computes paths | |||
| paths for MPLS Traffic Engineering LSPs (MPLS-TE LSPs) based on | for MPLS Traffic Engineering LSPs (MPLS-TE LSPs) based on various | |||
| various constraints and optimization criteria. | constraints and optimization criteria. [RFC8231] specifies | |||
| [I-D.ietf-pce-stateful-pce] specifies extensions to PCEP that allow a | extensions to PCEP that allow a stateful PCE to compute and recommend | |||
| stateful PCE to compute and recommend network paths in compliance | network paths in compliance with [RFC4657] and defines objects and | |||
| with [RFC4657] and defines objects and TLVs for MPLS-TE LSPs. | TLVs for MPLS-TE LSPs. Stateful PCEP extensions provide | |||
| Stateful PCEP extensions provide synchronization of LSP state between | synchronization of LSP state between a PCC and a PCE or between a | |||
| a PCC and a PCE or between a pair of PCEs, delegation of LSP control, | pair of PCEs, delegation of LSP control, reporting of LSP state from | |||
| reporting of LSP state from a PCC to a PCE, controlling the setup and | a PCC to a PCE, controlling the setup and path routing of an LSP from | |||
| path routing of an LSP from a PCE to a PCC. Stateful PCEP extensions | a PCE to a PCC. Stateful PCEP extensions are intended for an | |||
| are intended for an operational model in which LSPs are configured on | operational model in which LSPs are configured on the PCC, and | |||
| the PCC, and control over them is delegated to the PCE. | control over them is delegated to the PCE. | |||
| A mechanism to dynamically initiate LSPs on a PCC based on the | A mechanism to dynamically initiate LSPs on a PCC based on the | |||
| requests from a stateful PCE or a controller using stateful PCE is | requests from a stateful PCE or a controller using stateful PCE is | |||
| specified in [I-D.ietf-pce-pce-initiated-lsp]. Such mechanism is | specified in [I-D.ietf-pce-pce-initiated-lsp]. This mechanism is | |||
| useful in Software Driven Networks (SDN) applications, such as on | useful in Software Defined Networking (SDN) applications, such as on- | |||
| demand engineering, or bandwidth calendaring. | demand engineering, or bandwidth calendaring. | |||
| It is possible to use a stateful PCE for computing one or more SR-TE | It is possible to use a stateful PCE for computing one or more SR-TE | |||
| paths taking into account various constraints and objective | paths taking into account various constraints and objective | |||
| functions. Once a path is chosen, the stateful PCE can initiate an | functions. Once a path is chosen, the stateful PCE can initiate an | |||
| SR-TE path on a PCC using PCEP extensions specified in | SR-TE path on a PCC using PCEP extensions specified in | |||
| [I-D.ietf-pce-pce-initiated-lsp] using the SR specific PCEP | [I-D.ietf-pce-pce-initiated-lsp] using the SR specific PCEP | |||
| extensions specified in this document. Additionally, using | extensions specified in this document. Additionally, using | |||
| procedures described in this document, a PCC can request an SR path | procedures described in this document, a PCC can request an SR path | |||
| from either stateful or a stateless PCE. This specification relies | from either stateful or a stateless PCE. This specification relies | |||
| on the PATH-SETUP-TYPE TLV and procedures specified in | on the procedures specified in [I-D.ietf-pce-lsp-setup-type]. | |||
| [I-D.ietf-pce-lsp-setup-type]. | ||||
| 2. Terminology | 2. Terminology | |||
| The following terminologies are used in this document: | The following terminologies are used in this document: | |||
| ERO: Explicit Route Object | ERO: Explicit Route Object | |||
| IGP: Interior Gateway Protocol | IGP: Interior Gateway Protocol | |||
| IS-IS: Intermediate System to Intermediate System | IS-IS: Intermediate System to Intermediate System | |||
| skipping to change at page 5, line 51 ¶ | skipping to change at page 5, line 51 ¶ | |||
| This document defines a new ERO subobject denoted by "SR-ERO | This document defines a new ERO subobject denoted by "SR-ERO | |||
| subobject" capable of carrying a SID as well as the identity of the | subobject" capable of carrying a SID as well as the identity of the | |||
| node/adjacency represented by the SID. SR-capable PCEP speakers | node/adjacency represented by the SID. SR-capable PCEP speakers | |||
| should be able to generate and/or process such ERO subobject. An ERO | should be able to generate and/or process such ERO subobject. An ERO | |||
| containing SR-ERO subobjects can be included in the PCEP Path | containing SR-ERO subobjects can be included in the PCEP Path | |||
| Computation Reply (PCRep) message defined in [RFC5440], the PCEP LSP | Computation Reply (PCRep) message defined in [RFC5440], the PCEP LSP | |||
| Initiate Request message (PCInitiate) defined in | Initiate Request message (PCInitiate) defined in | |||
| [I-D.ietf-pce-pce-initiated-lsp], as well as in the PCEP LSP Update | [I-D.ietf-pce-pce-initiated-lsp], as well as in the PCEP LSP Update | |||
| Request (PCUpd) and PCEP LSP State Report (PCRpt) messages defined in | Request (PCUpd) and PCEP LSP State Report (PCRpt) messages defined in | |||
| defined in [I-D.ietf-pce-stateful-pce]. | [RFC8231]. | |||
| When a PCEP session between a PCC and a PCE is established, both PCEP | When a PCEP session between a PCC and a PCE is established, both PCEP | |||
| speakers exchange their capabilites to indicate their ability to | speakers exchange their capabilites to indicate their ability to | |||
| support SR-specific functionality. Furthermore, an LSP initially | support SR-specific functionality. | |||
| established via RSVP-TE signaling can be updated with SR-TE path. | ||||
| This capability is useful when a network is migrated from RSVP-TE to | An PCE can update an LSP that is initially established via RSVP-TE | |||
| SR-TE technology. Similarly, an LSP initially created with SR-TE | signaling to use an SR-TE path, by sending a PCUpd to the PCC that | |||
| signaling can be updated using RSVP-TE if necessary. | delegated the LSP to it ([RFC8231]). Similarly, an LSP initially | |||
| created with an SR-TE path can be updated to use RSVP-TE signaling, | ||||
| if necessary. This capability is useful when a network is migrated | ||||
| from RSVP-TE to SR-TE technology. | ||||
| A PCC MAY include an RRO object containing the recorded LSP in PCReq | A PCC MAY include an RRO object containing the recorded LSP in PCReq | |||
| and PCRpt messages as specified in [RFC5440] and | and PCRpt messages as specified in [RFC5440] and [RFC8231], | |||
| [I-D.ietf-pce-stateful-pce] respectively. This document defines a | respectively. This document defines a new RRO subobject for SR | |||
| new RRO subobject for SR networks. Methods used by a PCC to record | networks. The methods used by a PCC to record the SR-TE LSP are | |||
| SR-TE LSP are outside the scope of this document. | outside the scope of this document. | |||
| In summary, this document: | In summary, this document: | |||
| o Defines a new PCEP capability, new ERO subobject, new RRO | o Defines a new ERO subobject, a new RRO subobject and new PCEP | |||
| subobject, a new TLV, and new PCEP error codes. | error codes. | |||
| o Specifies how two PCEP speakers can establish a PCEP session that | o Specifies how two PCEP speakers can establish a PCEP session that | |||
| can carry information about SR-TE paths. | can carry information about SR-TE paths. | |||
| o Specifies processing rules of ERO subobject. | o Specifies processing rules for the ERO subobject. | |||
| o Defines a new path setup type carried in the PATH-SETUP-TYPE TLV | o Defines a new path setup type to be used in the PATH_SETUP_TYPE | |||
| for SR-TE LSP. | and PATH_SETUP_TYPE_CAPABILITY TLVs | |||
| ([I-D.ietf-pce-lsp-setup-type]). | ||||
| o Defines a new sub-TLV for the PATH_SETUP_TYPE_CAPABILITY TLV. | ||||
| The extensions specified in this document complement the existing | The extensions specified in this document complement the existing | |||
| PCEP specifications to support SR-TE path. As such, the PCEP | PCEP specifications to support SR-TE paths. As such, the PCEP | |||
| messages (e.g., Path Computation Request, Path Computation Reply, | messages (e.g., Path Computation Request, Path Computation Reply, | |||
| Path Computation Report, Path Computation Update, Path Computation | Path Computation Report, Path Computation Update, Path Computation | |||
| Initiate, etc.,) MUST be formatted according to [RFC5440], | Initiate, etc.,) MUST be formatted according to [RFC5440], [RFC8231], | |||
| [I-D.ietf-pce-stateful-pce], [I-D.ietf-pce-pce-initiated-lsp], and | [I-D.ietf-pce-pce-initiated-lsp], and any other applicable PCEP | |||
| any other applicable PCEP specifications. | specifications. | |||
| 4. SR-Specific PCEP Message Extensions | 4. SR-Specific PCEP Message Extensions | |||
| As defined in [RFC5440], a PCEP message consists of a common header | As defined in [RFC5440], a PCEP message consists of a common header | |||
| followed by a variable length body made up of mandatory and/or | followed by a variable length body made up of mandatory and/or | |||
| optional objects. This document does not require any changes in the | optional objects. This document does not require any changes in the | |||
| format of PCReq and PCRep messages specified in [RFC5440], PCInitiate | format of the PCReq and PCRep messages specified in [RFC5440], | |||
| message specified in [I-D.ietf-pce-pce-initiated-lsp], and PCRpt and | PCInitiate message specified in [I-D.ietf-pce-pce-initiated-lsp], and | |||
| PCUpd messages specified in [I-D.ietf-pce-stateful-pce]. However, | PCRpt and PCUpd messages specified in [RFC8231]. | |||
| PCEP messages pertaining to SR-TE LSP MUST include PATH-SETUP-TYPE | ||||
| TLV in the RP or SRP object to clearly identify that SR-TE LSP is | ||||
| intended. In other words, a PCEP speaker MUST not infer whether or | ||||
| not a PCEP message pertains to SR-TE LSP from any other object or | ||||
| TLV. | ||||
| 5. Object Formats | 5. Object Formats | |||
| 5.1. The OPEN Object | 5.1. The OPEN Object | |||
| This document defines a new optional TLV for use in the OPEN Object. | 5.1.1. The SR PCE Capability sub-TLV | |||
| 5.1.1. The SR PCE Capability TLV | This document defines a new Path Setup Type (PST) for SR, as follows: | |||
| The SR-PCE-CAPABILITY TLV is an optional TLV associated with the OPEN | o PST = 1: Path is setup using Segment Routing Traffic Engineering. | |||
| Object to exchange SR capability of PCEP speakers. The format of the | ||||
| SR-PCE-CAPABILITY TLV is shown in the following figure: | A PCEP speaker SHOULD indicate its support of the function described | |||
| in this document by sending a PATH-SETUP-TYPE-CAPABILITY TLV in the | ||||
| OPEN object with this new PST included in the PST list. | ||||
| This document also defines the SR-PCE-CAPABILITY sub-TLV. PCEP | ||||
| speakers use this sub-TLV to exchange information about their SR | ||||
| capability. If a PCEP speaker includes PST=1 in the PST List of the | ||||
| PATH-SETUP-TYPE-CAPABILITY TLV then it MUST also include the SR-PCE- | ||||
| CAPABILITY sub-TLV inside the PATH-SETUP-TYPE-CAPABILITY TLV. | ||||
| The format of the SR-PCE-CAPABILITY sub-TLV is shown in the following | ||||
| figure: | ||||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type=TBD | Length=4 | | | Type=26 | Length=4 | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Reserved | Flags |L| MSD | | | Reserved | Flags |L| MSD | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 1: SR-PCE-CAPABILITY TLV format | Figure 1: SR-PCE-CAPABILITY sub-TLV format | |||
| The code point for the TLV type is to be defined by IANA. The TLV | The code point for the TLV type is 26. The TLV length is 4 octets. | |||
| length is 4 octets. | ||||
| The 32-bit value is formatted as follows. The "Maximum SID Depth" (1 | The 32-bit value is formatted as follows. The "Maximum SID Depth" (1 | |||
| octet) field (MSD) specifies the maximum number of SIDs (MPLS label | octet) field (MSD) specifies the maximum number of SIDs (MPLS label | |||
| stack depth in context of this document) that a PCC is capable of | stack depth in the context of this document) that a PCC is capable of | |||
| imposing on a packet. The "Reserved" (2 octets) field is unused, and | imposing on a packet. The "Reserved" (2 octets) field is unused, and | |||
| MUST be set to zero on transmission and ignored on reception. The | MUST be set to zero on transmission and ignored on reception. The | |||
| "Flags" field is 1 octect long, and this document defines the | "Flags" field is 1 octect long, and this document defines the | |||
| following flag: | following flag: | |||
| o L-flag: A PCC sets this flag to 1 to indicate that it does not | o L-flag: A PCC sets this flag to 1 to indicate that it does not | |||
| impose any limit on MSD. | impose any limit on the MSD. | |||
| 5.1.1.1. Exchanging SR Capability | 5.1.2. Exchanging the SR PCE Capability | |||
| By including the SR-PCE-CAPABILITY TLV in the OPEN message destined | A PCC indicates that it is capable of supporting the head-end | |||
| to a PCE, a PCC indicates that it is capable of supporting the head- | functions for SR-TE LSP by including the SR-PCE-CAPABILITY sub-TLV in | |||
| end functions for SR-TE LSP. By including the TLV in the OPEN | the Open message that it sends to a PCE. A PCE indicates that it is | |||
| message destined to a PCC, a PCE indicates that it is capable of | capable of computing SR-TE paths by including the SR-PCE-CAPABILITY | |||
| computing SR-TE paths. | sub-TLV in the Open message that it sends to a PCC. | |||
| The number of SIDs that can be imposed on a packet depends on PCC's | If a PCEP speaker receives a PATH-SETUP-TYPE-CAPABILITY TLV with a | |||
| data plane's capability. An MSD value MUST be non-zero otherwise the | PST list containing PST=1, but the SR-PCE-CAPABILITY sub-TLV is | |||
| receiver of the SR-PCE-CAPABILITY TLV MUST assume that the sender is | absent, then the PCEP speaker MUST send a PCErr message with Error- | |||
| not capable of imposing a MSD of any depth and hence is not SR-TE | Type 10 (Reception of an invalid object) and Error-Value TBD1 (to be | |||
| capable. | assigned by IANA) (Missing PCE-SR-CAPABILITY sub-TLV) and MUST then | |||
| close the PCEP session. If a PCEP speaker receives a PATH-SETUP- | ||||
| TYPE-CAPABILITY TLV with a SR-PCE-CAPABILITY sub-TLV, but the PST | ||||
| list does not contain PST=1, then the PCEP speaker MUST ignore the | ||||
| SR-PCE-CAPABILITY sub-TLV. | ||||
| Note that the MSD value exchanged via SR-PCE-CAPABILITY TLV indicates | The number of SIDs that can be imposed on a packet depends on the | |||
| the SID/label imposition limit for the PCC node. However, if a PCE | PCC's data plane's capability. If a PCC sets the L flag to 1 then | |||
| learns MSD value of a PCC node via different means, e.g routing | the MSD is not used and MUST be set to zero. If a PCE receives an | |||
| protocols, as specified in: [I-D.ietf-isis-segment-routing-msd]; | SR-PCE-CAPABILITY sub-TLV with the L flag set to 1 then it MUST | |||
| ignore the MSD field and MUST assume that the sender can impose a SID | ||||
| stack of any depth. If a PCC sets the L flag to zero, then it sets | ||||
| the MSD field to the maximum number of SIDs that it can impose on a | ||||
| packet. If a PCE receives an SR-PCE-CAPABILITY sub-TLV with the L | ||||
| flag and MSD both set to zero then it MUST assume that the PCC is not | ||||
| capable of imposing a SID stack of any depth and hence is not SR-TE | ||||
| capable, unless it learns a non-zero MSD for the PCC through some | ||||
| other means. | ||||
| Note that the MSD value exchanged via the SR-PCE-CAPABILITY sub-TLV | ||||
| indicates the SID/label imposition limit for the PCC node. However, | ||||
| if a PCE learns the MSD value of a PCC node via different means, e.g | ||||
| routing protocols, as specified in: | ||||
| [I-D.ietf-isis-segment-routing-msd]; | ||||
| [I-D.ietf-ospf-segment-routing-msd]; | [I-D.ietf-ospf-segment-routing-msd]; | |||
| [I-D.tantsura-idr-bgp-ls-segment-routing-msd], then it ignores the | [I-D.ietf-idr-bgp-ls-segment-routing-msd], then it ignores the MSD | |||
| MSD value in the SR-PCE-CAPABILITY TLV. Furthermore, whenever a PCE | value in the SR-PCE-CAPABILITY sub-TLV. Furthermore, whenever a PCE | |||
| learns MSD for a link via different means, it MUST use that value for | learns the MSD for a link via different means, it MUST use that value | |||
| that link regardless of the MSD value exchanged via SR-PCE-CAPABILITY | for that link regardless of the MSD value exchanged in the SR-PCE- | |||
| TLV. | CAPABILITY sub-TLV. | |||
| Once an SR-capable PCEP session is established with a non-zero MSD | Once an SR-capable PCEP session is established with a non-zero MSD | |||
| value, the corresponding PCE MUST NOT send SR-TE paths with number of | value, the corresponding PCE MUST NOT send SR-TE paths with a number | |||
| SIDs exceeding that MSD value. If a PCC needs to modify the MSD | of SIDs exceeding that MSD value. If a PCC needs to modify the MSD | |||
| value, the PCEP session MUST be closed and re-established with the | value, it MUST close the PCEP session and re-establish it with the | |||
| new MSD value. If a PCEP session is established with a non-zero MSD | new MSD value. If a PCEP session is established with a non-zero MSD | |||
| value, and the PCC receives an SR-TE path containing more SIDs than | value, and the PCC receives an SR-TE path containing more SIDs than | |||
| specified in the MSD value, the PCC MUST send a PCErr message with | specified in the MSD value, the PCC MUST send a PCErr message with | |||
| Error-Type 10 (Reception of an invalid object) and Error-Value 3 | Error-Type 10 (Reception of an invalid object) and Error-Value 3 | |||
| (Unsupported number of Segment ERO). If a PCEP session is | (Unsupported number of Segment ERO subobjects). If a PCEP session is | |||
| established with an MSD value of zero, then the PCC MAY specify an | established with an MSD value of zero, then the PCC MAY specify an | |||
| MSD for each path computation request that it sends to the PCE. | MSD for each path computation request that it sends to the PCE, by | |||
| including a "maximum SID depth" metric object on the request, as | ||||
| defined in Section 5.5. | ||||
| The MSD value inside SR Capability TLV is meaningful only in the OPEN | The L flag and MSD value inside the SR-PCE-CAPABILITY sub-TLV are | |||
| message sent from a PCC to a PCE. As such, a PCE does not need to | meaningful only in the Open message sent from a PCC to a PCE. As | |||
| set MSD value in outbound message to a PCC. Similarly, a PCC ignores | such, a PCE MUST set the L flag and MSD value to zero in an outbound | |||
| any MSD value received from a PCE. If a PCE receives multiple SR- | message to a PCC. Similarly, a PCC MUST ignore any MSD value | |||
| PCE-CAPABILITY TLVs in an OPEN message, it processes only the first | received from a PCE. If a PCE receives multiple SR-PCE-CAPABILITY | |||
| TLV received. | sub-TLVs in an Open message, it processes only the first sub-TLV | |||
| received. | ||||
| 5.2. The RP/SRP Object | 5.2. The RP/SRP Object | |||
| In order to setup an SR-TE LSP using SR, RP or SRP object MUST | In order to setup an SR-TE LSP using SR, RP or SRP object MUST | |||
| include PATH-SETUP-TYPE TLV specified in | include PATH-SETUP-TYPE TLV, specified in | |||
| [I-D.ietf-pce-lsp-setup-type]. This document defines a new Path | [I-D.ietf-pce-lsp-setup-type], with the PST set to 1 (path setup | |||
| Setup Type (PST) for SR as follows: | using SR-TE). | |||
| o PST = 1: Path is setup using Segment Routing Traffic Engineering | ||||
| technique. | ||||
| LSP-IDENTIFIERS TLV MAY be present for the above PST type. | The LSP-IDENTIFIERS TLV MAY be present for the above PST type. | |||
| 5.3. ERO Object | 5.3. ERO Object | |||
| An SR-TE path consists of one or more SID(s) where each SID MAY be | An SR-TE path consists of one or more SID(s) where each SID MAY be | |||
| associated with the identifier that represents the node or adjacency | associated with the identifier that represents the node or adjacency | |||
| corresponding to the SID. This identifier is referred to as the | corresponding to the SID. This identifier is referred to as the | |||
| 'Node or Adjacency Identifier' (NAI). As described later, a NAI can | 'Node or Adjacency Identifier' (NAI). As described later, a NAI can | |||
| be represented in various formats (e.g., IPv4 address, IPv6 address, | be represented in various formats (e.g., IPv4 address, IPv6 address, | |||
| etc). Furthermore, a NAI is used for troubleshooting purposes and, | etc). Furthermore, a NAI is used for troubleshooting purposes and, | |||
| if necessary, to derive SID value as described below. | if necessary, to derive SID value as described below. | |||
| skipping to change at page 11, line 41 ¶ | skipping to change at page 12, line 30 ¶ | |||
| format of the NAI is shown in the following figure: | format of the NAI is shown in the following figure: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Local IPv4 address | | | Local IPv4 address | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Remote IPv4 address | | | Remote IPv4 address | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 3: NAI for IPv4 Adjacency | Figure 3: NAI for IPv4 adjacency | |||
| 'IPv6 Adjacency' is specified as a pair of IPv6 addresses. In this | 'IPv6 Adjacency' is specified as a pair of IPv6 addresses. In this | |||
| case, ST valie is 4. The Length is 8, 36 or 40 depending on | case, ST valie is 4. The Length is 8, 36 or 40 depending on | |||
| whether SID or NAI or both included in the subobject,and the | whether SID or NAI or both included in the subobject,and the | |||
| format of the NAI is shown in the following figure: | format of the NAI is shown in the following figure: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| // Local IPv6 address (16 bytes) // | // Local IPv6 address (16 bytes) // | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| // Remote IPv6 address (16 bytes) // | // Remote IPv6 address (16 bytes) // | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Figure 4: NAI for IPv6 adjacenc y | Figure 4: NAI for IPv6 adjacency | |||
| 'Unnumbered Adjacency with IPv4 NodeIDs' is specified as a pair of | 'Unnumbered Adjacency with IPv4 NodeIDs' is specified as a pair of | |||
| Node ID / Interface ID tuples. In this case, ST value is 5. The | Node ID / Interface ID tuples. In this case, ST value is 5. The | |||
| Length is 8, 20, or 24 depending on whether SID or NAI or both | Length is 8, 20, or 24 depending on whether SID or NAI or both | |||
| included in the subobject, and the format of the NAI is shown in | included in the subobject, and the format of the NAI is shown in | |||
| the following figure: | the following figure: | |||
| 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 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 13, line 5 ¶ | skipping to change at page 13, line 39 ¶ | |||
| message and MUST send a PCErr message with Error-Type=3 ("Unknown | message and MUST send a PCErr message with Error-Type=3 ("Unknown | |||
| Object") and Error-Value=2 ("Unrecognized object Type") or Error- | Object") and Error-Value=2 ("Unrecognized object Type") or Error- | |||
| Type=4 ("Not supported object") and Error-Value=2 ("Not supported | Type=4 ("Not supported object") and Error-Value=2 ("Not supported | |||
| object Type"), defined in [RFC5440]. | object Type"), defined in [RFC5440]. | |||
| When the SID represents an MPLS label (i.e. the M bit is set), its | When the SID represents an MPLS label (i.e. the M bit is set), its | |||
| value (20 most significant bits) MUST be larger than 15, unless it is | value (20 most significant bits) MUST be larger than 15, unless it is | |||
| special purpose label, such as an Entropy Label Indicator (ELI). If | special purpose label, such as an Entropy Label Indicator (ELI). If | |||
| a PCEP speaker receives an invalid value, it MUST send a PCErr | a PCEP speaker receives an invalid value, it MUST send a PCErr | |||
| message with Error-Type = 10 ("Reception of an invalid object") and | message with Error-Type = 10 ("Reception of an invalid object") and | |||
| Error Value = TBD ("Bad label value"). If both M and C bits of an | Error Value = 2 ("Bad label value"). If both M and C bits of an SR- | |||
| SR-ERO subobject are set, and if a PCEP speaker finds erroneous | ERO subobject are set, and if a PCEP speaker finds erroneous setting | |||
| setting in one or more of TC, S, and TTL fields, it MUST send a PCErr | in one or more of TC, S, and TTL fields, it MUST send a PCErr message | |||
| message with Error-Type = 10 ("Reception of an invalid object") and | with Error-Type = 10 ("Reception of an invalid object") and Error- | |||
| Error-Value = TBD ("Bad label format"). | Value = 4 ("Bad label format"). | |||
| If a PCC receives a stack of SR-ERO subobjects, and the number of | If a PCC receives a stack of SR-ERO subobjects, and the number of | |||
| stack exceeds the maximum number of SIDs that the PCC can impose on | stack exceeds the maximum number of SIDs that the PCC can impose on | |||
| the packet, it MAY send a PCErr message with Error-Type = 10 | the packet, it MAY send a PCErr message with Error-Type = 10 | |||
| ("Reception of an invalid object") and Error-Value = TBD | ("Reception of an invalid object") and Error-Value = 3 ("Unsupported | |||
| ("Unsupported number of Segment ERO subobjects"). | number of Segment ERO subobjects"). | |||
| When a PCEP speaker detects that all subobjects of ERO are not | When a PCEP speaker detects that all subobjects of ERO are not | |||
| identical, and if it does not handle such ERO, it MUST send a PCErr | identical, and if it does not handle such ERO, it MUST send a PCErr | |||
| message with Error-Type = 10 ("Reception of an invalid object") and | message with Error-Type = 10 ("Reception of an invalid object") and | |||
| Error-Value = TBD ("Non-identical ERO subobjects"). | Error-Value = 5 ("Non-identical ERO subobjects"). | |||
| If a PCEP speaker receives an SR-ERO subobject in which both SID and | If a PCEP speaker receives an SR-ERO subobject in which both SID and | |||
| NAI are absent, it MUST consider the entire ERO object invalid and | NAI are absent, it MUST consider the entire ERO object invalid and | |||
| send a PCErr message with Error-Type = 10 ("Reception of an invalid | send a PCErr message with Error-Type = 10 ("Reception of an invalid | |||
| object") and Error-Value = TBD ("Both SID and NAI are absent in ERO | object") and Error-Value = 6 ("Both SID and NAI are absent in ERO | |||
| subobject"). | subobject"). | |||
| When a PCEP speaker receives an SR-ERO subobject in which ST is 0, | When a PCEP speaker receives an SR-ERO subobject in which ST is 0, | |||
| SID MUST be present and NAI MUST NOT be present(i.e., S-flag MUST be | SID MUST be present and NAI MUST NOT be present(i.e., S-flag MUST be | |||
| 0, F-flag MUST be 1, and the Length MUST be 8). Otherwise, it MUST | 0, F-flag MUST be 1, and the Length MUST be 8). Otherwise, it MUST | |||
| consider the entire ERO object invalid and send a PCErr message with | consider the entire ERO object invalid and send a PCErr message with | |||
| Error-Type = 10 ("Reception of an invalid object") and Error-Value = | Error-Type = 10 ("Reception of an invalid object") and Error-Value = | |||
| TBD ("Malformed object"). The PCEP speaker MAY include the malformed | 11 ("Malformed object"). The PCEP speaker MAY include the malformed | |||
| SR-ERO object in the PCErr message as well. | SR-ERO object in the PCErr message as well. | |||
| 5.4. RRO Object | 5.4. RRO Object | |||
| A PCC can record SR-TE LSP and report the LSP to a PCE via RRO. An | A PCC can record SR-TE LSP and report the LSP to a PCE via RRO. An | |||
| RRO object contains one or more subobjects called "SR-RRO subobjects" | RRO object contains one or more subobjects called "SR-RRO subobjects" | |||
| whose format is shown below: | whose format is shown below: | |||
| 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 | |||
| skipping to change at page 14, line 33 ¶ | skipping to change at page 15, line 8 ¶ | |||
| information about the bottommost label of the SR-TE LSP. | information about the bottommost label of the SR-TE LSP. | |||
| 5.4.1. RRO Processing | 5.4.1. RRO Processing | |||
| Processing rules of SR-RRO subobject are identical to those of SR-ERO | Processing rules of SR-RRO subobject are identical to those of SR-ERO | |||
| subobject. | subobject. | |||
| If a PCEP speaker receives an SR-RRO subobject in which both SID and | If a PCEP speaker receives an SR-RRO subobject in which both SID and | |||
| NAI are absent, it MUST consider the entire RRO object invalid and | NAI are absent, it MUST consider the entire RRO object invalid and | |||
| send a PCErr message with Error-Type = 10 ("Reception of an invalid | send a PCErr message with Error-Type = 10 ("Reception of an invalid | |||
| object") and Error-Value = TBD ("Both SID and NAI are absent in RRO | object") and Error-Value = 7 ("Both SID and NAI are absent in RRO | |||
| subobject"). | subobject"). | |||
| If a PCE detects that all subobjects of RRO are not identical, and if | If a PCE detects that all subobjects of RRO are not identical, and if | |||
| it does not handle such RRO, it MUST send a PCErr message with Error- | it does not handle such RRO, it MUST send a PCErr message with Error- | |||
| Type = 10 ("Reception of an invalid object") and Error-Value = TBD | Type = 10 ("Reception of an invalid object") and Error-Value = 10 | |||
| ("Non-identical RRO subobjects"). | ("Non-identical RRO subobjects"). | |||
| 5.5. METRIC Object | 5.5. METRIC Object | |||
| If a PCEP session is established with an MSD value of zero, then the | If a PCEP session is established with an MSD value of zero, then the | |||
| PCC MAY specify the MSD for an individual path computation request | PCC MAY specify the MSD for an individual path computation request | |||
| using the METRIC object defined in [RFC5440]. This document defines | using the METRIC object defined in [RFC5440]. This document defines | |||
| a new type for the METRIC object to be used for this purpose as | a new type for the METRIC object to be used for this purpose as | |||
| follows: | follows: | |||
| o T = TBD (suggested value 11): Maximum SID Depth of the requested | o T = 11: Maximum SID Depth of the requested path. | |||
| path. | ||||
| The PCC sets the metric-value to the MSD for this path. The PCC MUST | The PCC sets the metric-value to the MSD for this path. The PCC MUST | |||
| set the B (bound) bit to 1 in the METRIC object, which specifies that | set the B (bound) bit to 1 in the METRIC object, which specifies that | |||
| the SID depth for the computed path MUST NOT exceed the metric-value. | the SID depth for the computed path MUST NOT exceed the metric-value. | |||
| If a PCEP session is established with a non-zero MSD value, then the | If a PCEP session is established with a non-zero MSD value, then the | |||
| PCC MUST NOT send an MSD METRIC object. If the PCE receives a path | PCC MUST NOT send an MSD METRIC object. If the PCE receives a path | |||
| computation request with an MSD METRIC object on a session with a | computation request with an MSD METRIC object on a session with a | |||
| non-zero MSD value then it MUST consider the request invalid and send | non-zero MSD value then it MUST consider the request invalid and send | |||
| a PCErr with Error-Type = 10 ("Reception of an invalid object") and | a PCErr with Error-Type = 10 ("Reception of an invalid object") and | |||
| Error-Value TBD ("Default MSD is specified for the PCEP session"). | Error-Value 9 ("Default MSD is specified for the PCEP session"). | |||
| 6. Backward Compatibility | 6. Backward Compatibility | |||
| A PCEP speaker that does not support the SR PCEP capability cannot | A PCEP speaker that does not support the SR PCEP capability cannot | |||
| recognize the SR-ERO or SR-RRO subobjects. As such, it MUST send a | recognize the SR-ERO or SR-RRO subobjects. As such, it MUST send a | |||
| PCEP error with Error-Type = 4 (Not supported object) and Error-Value | PCEP error with Error-Type = 4 (Not supported object) and Error-Value | |||
| = 2 (Not supported object Type) as per [RFC5440]. | = 2 (Not supported object Type) as per [RFC5440]. | |||
| Some implementations, which are compliant with an earlier version of | ||||
| this specification, do not send the PATH-SETUP-TYPE-CAPABILITY TLV in | ||||
| their OPEN objects. Instead, to indicate that they support SR, these | ||||
| implementations include the SR-CAPABILITY-TLV as a top-level TLV in | ||||
| the OPEN object. Unfortunately, some of these implementations made | ||||
| it into the field before this document was published in its final | ||||
| form. Therefore, if a PCEP speaker receives an OPEN object in which | ||||
| the SR-CAPABILITY-TLV appears as a top-level TLV, then it MUST | ||||
| interpret this as though the sender had sent a PATH-SETUP-TYPE- | ||||
| CAPABILITY TLV with a PST list of (0, 1) (that is, both RSVP-TE and | ||||
| SR-TE PSTs are supported) and with the SR-CAPABILITY-TLV as a sub- | ||||
| TLV. If a PCEP speaker receives an OPEN object in which both the SR- | ||||
| CAPABILITY-TLV and PATH-SETUP-TYPE-CAPABILITY TLV appear as top-level | ||||
| TLVs, then it MUST ignore the top-level SR-CAPABILITY-TLV and process | ||||
| only the PATH-SETUP-TYPE-CAPABILITY TLV. | ||||
| 7. Management Considerations | 7. Management Considerations | |||
| 7.1. Policy | 7.1. Policy | |||
| PCEP implementation: | PCEP implementation: | |||
| o Can enable SR PCEP capability either by default or via explicit | o Can enable SR PCEP capability either by default or via explicit | |||
| configuration. | configuration. | |||
| o May generate PCEP error due to unsupported number of SR-ERO or SR- | o May generate PCEP error due to unsupported number of SR-ERO or SR- | |||
| RRO subobjects either by default or via explicit configuration. | RRO subobjects either by default or via explicit configuration. | |||
| 7.2. The PCEP Data Model | 7.2. The PCEP Data Model | |||
| A PCEP MIB module is defined in [RFC7420]needs be extended to cover | A PCEP MIB module is defined in [RFC7420]n eeds be extended to cover | |||
| additional functionality provided by [RFC5440] and | additional functionality provided by [RFC5440] and | |||
| [I-D.ietf-pce-pce-initiated-lsp]. Such extension will cover the new | [I-D.ietf-pce-pce-initiated-lsp]. Such extension will cover the new | |||
| functionality specified in this document. | functionality specified in this document. | |||
| 8. Security Considerations | 8. Security Considerations | |||
| The security considerations described in [RFC5440] and | The security considerations described in [RFC5440] and | |||
| [I-D.ietf-pce-pce-initiated-lsp] are applicable to this | [I-D.ietf-pce-pce-initiated-lsp] are applicable to this | |||
| specification. No additional security measure is required. | specification. No additional security measure is required. | |||
| skipping to change at page 16, line 4 ¶ | skipping to change at page 16, line 37 ¶ | |||
| [I-D.ietf-pce-pce-initiated-lsp]. Such extension will cover the new | [I-D.ietf-pce-pce-initiated-lsp]. Such extension will cover the new | |||
| functionality specified in this document. | functionality specified in this document. | |||
| 8. Security Considerations | 8. Security Considerations | |||
| The security considerations described in [RFC5440] and | The security considerations described in [RFC5440] and | |||
| [I-D.ietf-pce-pce-initiated-lsp] are applicable to this | [I-D.ietf-pce-pce-initiated-lsp] are applicable to this | |||
| specification. No additional security measure is required. | specification. No additional security measure is required. | |||
| 9. IANA Considerations | 9. IANA Considerations | |||
| 9.1. PCEP Objects | 9.1. PCEP Objects | |||
| This document defines a new sub-object type for the PCEP explicit | This document defines a new sub-object type for the PCEP explicit | |||
| route object (ERO), and a new sub-object type for the PCEP record | route object (ERO), and a new sub-object type for the PCEP record | |||
| route object (RRO). The code points for sub-object types of these | route object (RRO). The code points for sub-object types of these | |||
| objects is maintained in the RSVP parameters registry, under the | objects is maintained in the RSVP parameters registry, under the | |||
| EXPLICIT_ROUTE and ROUTE_RECORD objects. IANA is requested to | EXPLICIT_ROUTE and ROUTE_RECORD objects. IANA is requested to | |||
| allocate code points in the RSVP Parameters registry for each of the | confirm the early allocation of the following code points in the RSVP | |||
| new sub-object types defined in this document, as follows: | Parameters registry for each of the new sub-object types defined in | |||
| this document. | ||||
| Object Sub-Object Sub-Object Type | Object Sub-Object Sub-Object Type | |||
| --------------------- -------------------------- ------------------ | --------------------- -------------------------- ------------------ | |||
| EXPLICIT_ROUTE SR-ERO (PCEP-specific) TBD (recommended 36) | EXPLICIT_ROUTE SR-ERO (PCEP-specific) 36 | |||
| ROUTE_RECORD SR-RRO (PCEP-specific) TBD (recommended 36) | ROUTE_RECORD SR-RRO (PCEP-specific) 36 | |||
| 9.2. PCEP-Error Object | 9.2. PCEP-Error Object | |||
| IANA is requested to allocate code-points in the PCEP-ERROR Object | IANA is requested to confirm the early allocation of the code-points | |||
| Error Types and Values registry for the following new error-values: | in the PCEP-ERROR Object Error Types and Values registry for the | |||
| following new error-values: | ||||
| Error-Type Meaning | Error-Type Meaning | |||
| ---------- ------- | ---------- ------- | |||
| 10 Reception of an invalid object. | 10 Reception of an invalid object. | |||
| Error-value = TBD (recommended 2): Bad label value | Error-value = 2: Bad label value | |||
| Error-value = TBD (recommended 3): Unsupported number | Error-value = 3: Unsupported number | |||
| of Segment ERO | of Segment ERO | |||
| subobjects | subobjects | |||
| Error-value = TBD (recommended 4): Bad label format | Error-value = 4: Bad label format | |||
| Error-value = TBD (recommended 5): Non-identical ERO | Error-value = 5: Non-identical ERO | |||
| subobjects | subobjects | |||
| Error-value = TBD (recommended 6): Both SID and NAI | Error-value = 6: Both SID and NAI | |||
| are absent in ERO | are absent in ERO | |||
| subobject | subobject | |||
| Error-value = TBD (recommended 7): Both SID and NAI | Error-value = 7: Both SID and NAI | |||
| are absent in RRO | are absent in RRO | |||
| subobject | subobject | |||
| Error-value = TBD (recommended 9): Default MSD is | Error-value = 9: Default MSD is | |||
| specified for the | specified for the | |||
| PCEP session | PCEP session | |||
| Error-value = TBD (recommended 10): Non-identical RRO | Error-value = 10: Non-identical RRO | |||
| subobjects | subobjects | |||
| Error-value = TBD (recommended 11): Malformed object | Error-value = TBD1: Missing PCE-SR- | |||
| CAPABILITY sub-TLV | ||||
| Note to IANA: this draft originally had an early allocation for | ||||
| Error-value=11 (Malformed object) in the above list. However, we | ||||
| have since moved the definition of that code point to draft-ietf-pce- | ||||
| lsp-setup-type and we included an instruction in that draft for you | ||||
| to update the reference in the indicated registry. Please ensure | ||||
| that this has happened when you process the present draft. | ||||
| Note to IANA: the final Error-value (Missing PCE-SR-CAPABILITY sub- | ||||
| TLV) in the above list was defined after the early allocation took | ||||
| place, and so does not currently have a code point assigned. Please | ||||
| assign a code point from the indicated registry and replace each | ||||
| instance of "TBD1" in this document with the allocated code point. | ||||
| 9.3. PCEP TLV Type Indicators | 9.3. PCEP TLV Type Indicators | |||
| IANA is requested to allocate a new code point in the PCEP TLV Type | IANA is requested to confirm the early allocation of the following | |||
| Indicators registry, as follows: | code point in the PCEP TLV Type Indicators registry. | |||
| Value Meaning Reference | Value Meaning Reference | |||
| ------------------------- ---------------------------- -------------- | ------------------------- ---------------------------- -------------- | |||
| TBD (recommended 26) SR-PCE-CAPABILITY This document | 26 SR-PCE-CAPABILITY This document | |||
| 9.4. New Path Setup Type | 9.4. New Path Setup Type | |||
| [I-D.ietf-pce-lsp-setup-type] defines the PATH-SETUP-TYPE TLV and | [I-D.ietf-pce-lsp-setup-type] requests that IANA creates a sub- | |||
| requests that IANA creates a registry to manage the value of the | registry within the "Path Computation Element Protocol (PCEP) | |||
| PATH_SETUP_TYPE TLV's PST field. IANA is requested to allocate a new | Numbers" registry called "PCEP Path Setup Types". IANA is requested | |||
| code point in the PCEP PATH_SETUP_TYPE TLV PST field registry, as | to allocate a new code point within this registry, as follows: | |||
| follows: | ||||
| Value Description Reference | Value Description Reference | |||
| ------------------------- ---------------------------- -------------- | ------------------------- ---------------------------- -------------- | |||
| 1 Traffic engineering path is This document | 1 Traffic engineering path is This document | |||
| setup using Segment Routing | setup using Segment Routing. | |||
| technique. | ||||
| 9.5. New Metric Type | 9.5. New Metric Type | |||
| IANA is requested to allocate a new code point in the PCEP METRIC | IANA is requested to confirm the early allocation of the following | |||
| object T field registry, as follows: | code point in the PCEP METRIC object T field registry: | |||
| Value Description Reference | Value Description Reference | |||
| ------------------------- ---------------------------- -------------- | ------------------------- ---------------------------- -------------- | |||
| TBD (recommended 11) Segment-ID (SID) Depth. This document | 11 Segment-ID (SID) Depth. This document | |||
| 10. Contributors | 10. Contributors | |||
| The following people contributed to this document: | The following people contributed to this document: | |||
| - Lakshmi Sharma | - Lakshmi Sharma | |||
| - Jan Medved | - Jan Medved | |||
| - Edward Crabbe | - Edward Crabbe | |||
| - Robert Raszuk | - Robert Raszuk | |||
| - Victor Lopez | - Victor Lopez | |||
| 11. Acknowledgements | 11. Acknowledgements | |||
| We like to thank Ina Minei, George Swallow, Marek Zavodsky, Dhruv | We thank Ina Minei, George Swallow, Marek Zavodsky, Dhruv Dhody, Ing- | |||
| Dhody, Ing-Wher Chen and Tomas Janciga for the valuable comments. | Wher Chen and Tomas Janciga for the valuable comments. | |||
| 12. References | 12. References | |||
| 12.1. Normative References | 12.1. Normative References | |||
| [I-D.ietf-idr-bgp-ls-segment-routing-msd] | ||||
| Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan, | ||||
| "Signaling Maximum SID Depth using Border Gateway Protocol | ||||
| Link-State", draft-ietf-idr-bgp-ls-segment-routing-msd-01 | ||||
| (work in progress), October 2017. | ||||
| [I-D.ietf-isis-segment-routing-extensions] | [I-D.ietf-isis-segment-routing-extensions] | |||
| Previdi, S., Filsfils, C., Bashandy, A., Gredler, H., | Previdi, S., Filsfils, C., Bashandy, A., Gredler, H., | |||
| Litkowski, S., Decraene, B., and j. jefftant@gmail.com, | Litkowski, S., Decraene, B., and j. jefftant@gmail.com, | |||
| "IS-IS Extensions for Segment Routing", draft-ietf-isis- | "IS-IS Extensions for Segment Routing", draft-ietf-isis- | |||
| segment-routing-extensions-11 (work in progress), March | segment-routing-extensions-13 (work in progress), June | |||
| 2017. | 2017. | |||
| [I-D.ietf-isis-segment-routing-msd] | [I-D.ietf-isis-segment-routing-msd] | |||
| Tantsura, J., Chunduri, U., Aldrin, S., and L. Ginsberg, | Tantsura, J., Chunduri, U., Aldrin, S., and L. Ginsberg, | |||
| "Signaling MSD (Maximum SID Depth) using IS-IS", draft- | "Signaling MSD (Maximum SID Depth) using IS-IS", draft- | |||
| ietf-isis-segment-routing-msd-03 (work in progress), March | ietf-isis-segment-routing-msd-04 (work in progress), June | |||
| 2017. | 2017. | |||
| [I-D.ietf-ospf-segment-routing-extensions] | [I-D.ietf-ospf-segment-routing-extensions] | |||
| Psenak, P., Previdi, S., Filsfils, C., Gredler, H., | Psenak, P., Previdi, S., Filsfils, C., Gredler, H., | |||
| Shakir, R., Henderickx, W., and J. Tantsura, "OSPF | Shakir, R., Henderickx, W., and J. Tantsura, "OSPF | |||
| Extensions for Segment Routing", draft-ietf-ospf-segment- | Extensions for Segment Routing", draft-ietf-ospf-segment- | |||
| routing-extensions-12 (work in progress), March 2017. | routing-extensions-21 (work in progress), October 2017. | |||
| [I-D.ietf-ospf-segment-routing-msd] | [I-D.ietf-ospf-segment-routing-msd] | |||
| Tantsura, J., Chunduri, U., Aldrin, S., and P. Psenak, | Tantsura, J., Chunduri, U., Aldrin, S., and P. Psenak, | |||
| "Signaling MSD (Maximum SID Depth) using OSPF", draft- | "Signaling MSD (Maximum SID Depth) using OSPF", draft- | |||
| ietf-ospf-segment-routing-msd-04 (work in progress), March | ietf-ospf-segment-routing-msd-05 (work in progress), June | |||
| 2017. | 2017. | |||
| [I-D.ietf-pce-lsp-setup-type] | [I-D.ietf-pce-lsp-setup-type] | |||
| Sivabalan, S., Medved, J., Minei, I., Crabbe, E., Varga, | Sivabalan, S., Tantsura, J., Minei, I., Varga, R., and J. | |||
| R., Tantsura, J., and J. Hardwick, "Conveying path setup | Hardwick, "Conveying path setup type in PCEP messages", | |||
| type in PCEP messages", draft-ietf-pce-lsp-setup-type-03 | draft-ietf-pce-lsp-setup-type-05 (work in progress), | |||
| (work in progress), June 2015. | October 2017. | |||
| [I-D.ietf-pce-pce-initiated-lsp] | [I-D.ietf-pce-pce-initiated-lsp] | |||
| Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP | Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "PCEP | |||
| Extensions for PCE-initiated LSP Setup in a Stateful PCE | Extensions for PCE-initiated LSP Setup in a Stateful PCE | |||
| Model", draft-ietf-pce-pce-initiated-lsp-09 (work in | Model", draft-ietf-pce-pce-initiated-lsp-11 (work in | |||
| progress), March 2017. | progress), October 2017. | |||
| [I-D.ietf-pce-stateful-pce] | ||||
| Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP | ||||
| Extensions for Stateful PCE", draft-ietf-pce-stateful- | ||||
| pce-18 (work in progress), December 2016. | ||||
| [I-D.ietf-spring-segment-routing] | [I-D.ietf-spring-segment-routing] | |||
| Filsfils, C., Previdi, S., Decraene, B., Litkowski, S., | Filsfils, C., Previdi, S., Decraene, B., Litkowski, S., | |||
| and R. Shakir, "Segment Routing Architecture", draft-ietf- | and R. Shakir, "Segment Routing Architecture", draft-ietf- | |||
| spring-segment-routing-11 (work in progress), February | spring-segment-routing-12 (work in progress), June 2017. | |||
| 2017. | ||||
| [I-D.tantsura-idr-bgp-ls-segment-routing-msd] | ||||
| Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan, | ||||
| "Signaling Maximum SID Depth using Border Gateway Protocol | ||||
| Link-State", draft-tantsura-idr-bgp-ls-segment-routing- | ||||
| msd-02 (work in progress), January 2017. | ||||
| [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- | |||
| <https://www.rfc-editor.org/info/rfc2119>. | editor.org/info/rfc2119>. | |||
| [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation | [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation | |||
| Element (PCE) Communication Protocol (PCEP)", RFC 5440, | Element (PCE) Communication Protocol (PCEP)", RFC 5440, | |||
| DOI 10.17487/RFC5440, March 2009, | DOI 10.17487/RFC5440, March 2009, <https://www.rfc- | |||
| <https://www.rfc-editor.org/info/rfc5440>. | editor.org/info/rfc5440>. | |||
| [RFC5462] Andersson, L. and R. Asati, "Multiprotocol Label Switching | [RFC5462] Andersson, L. and R. Asati, "Multiprotocol Label Switching | |||
| (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic | (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic | |||
| Class" Field", RFC 5462, DOI 10.17487/RFC5462, February | Class" Field", RFC 5462, DOI 10.17487/RFC5462, February | |||
| 2009, <https://www.rfc-editor.org/info/rfc5462>. | 2009, <https://www.rfc-editor.org/info/rfc5462>. | |||
| [RFC7420] Koushik, A., Stephan, E., Zhao, Q., King, D., and J. | [RFC7420] Koushik, A., Stephan, E., Zhao, Q., King, D., and J. | |||
| Hardwick, "Path Computation Element Communication Protocol | Hardwick, "Path Computation Element Communication Protocol | |||
| (PCEP) Management Information Base (MIB) Module", | (PCEP) Management Information Base (MIB) Module", | |||
| RFC 7420, DOI 10.17487/RFC7420, December 2014, | RFC 7420, DOI 10.17487/RFC7420, December 2014, | |||
| <https://www.rfc-editor.org/info/rfc7420>. | <https://www.rfc-editor.org/info/rfc7420>. | |||
| [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path | ||||
| Computation Element Communication Protocol (PCEP) | ||||
| Extensions for Stateful PCE", RFC 8231, | ||||
| DOI 10.17487/RFC8231, September 2017, <https://www.rfc- | ||||
| editor.org/info/rfc8231>. | ||||
| 12.2. Informative References | 12.2. Informative References | |||
| [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | |||
| and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | |||
| Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, | Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, | |||
| <https://www.rfc-editor.org/info/rfc3209>. | <https://www.rfc-editor.org/info/rfc3209>. | |||
| [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label | [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label | |||
| Switching (GMPLS) Signaling Resource ReserVation Protocol- | Switching (GMPLS) Signaling Resource ReserVation Protocol- | |||
| Traffic Engineering (RSVP-TE) Extensions", RFC 3473, | Traffic Engineering (RSVP-TE) Extensions", RFC 3473, | |||
| DOI 10.17487/RFC3473, January 2003, | DOI 10.17487/RFC3473, January 2003, <https://www.rfc- | |||
| <https://www.rfc-editor.org/info/rfc3473>. | editor.org/info/rfc3473>. | |||
| [RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links | [RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links | |||
| in Resource ReSerVation Protocol - Traffic Engineering | in Resource ReSerVation Protocol - Traffic Engineering | |||
| (RSVP-TE)", RFC 3477, DOI 10.17487/RFC3477, January 2003, | (RSVP-TE)", RFC 3477, DOI 10.17487/RFC3477, January 2003, | |||
| <https://www.rfc-editor.org/info/rfc3477>. | <https://www.rfc-editor.org/info/rfc3477>. | |||
| [RFC4657] Ash, J., Ed. and J. Le Roux, Ed., "Path Computation | [RFC4657] Ash, J., Ed. and J. Le Roux, Ed., "Path Computation | |||
| Element (PCE) Communication Protocol Generic | Element (PCE) Communication Protocol Generic | |||
| Requirements", RFC 4657, DOI 10.17487/RFC4657, September | Requirements", RFC 4657, DOI 10.17487/RFC4657, September | |||
| 2006, <https://www.rfc-editor.org/info/rfc4657>. | 2006, <https://www.rfc-editor.org/info/rfc4657>. | |||
| skipping to change at page 21, line 10 ¶ | skipping to change at page 22, line 10 ¶ | |||
| Antwerp 2018, CA 95134 | Antwerp 2018, CA 95134 | |||
| BELGIUM | BELGIUM | |||
| Email: wim.henderickx@alcatel-lucent.com | Email: wim.henderickx@alcatel-lucent.com | |||
| Jon Hardwick | Jon Hardwick | |||
| Metaswitch Networks | Metaswitch Networks | |||
| 100 Church Street | 100 Church Street | |||
| Enfield, Middlesex | Enfield, Middlesex | |||
| UK | UK | |||
| Email: jon.hardwick@metaswitch.com | Email: jonathan.hardwick@metaswitch.com | |||
| End of changes. 90 change blocks. | ||||
| 212 lines changed or deleted | 269 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/ | ||||