PCE Working Group | D. Dhody |
Internet-Draft | F. Zhang |
Intended status: Standards Track | X. Zhang |
Expires: April 25, 2019 | M. Negi |
Huawei Technologies | |
V. Lopez | |
O. Gonzalez de Dios | |
Telefonica I+D | |
October 22, 2018 |
PCEP Extensions for Receiving SRLG Information
draft-dhody-pce-recv-srlg-07
The Path Computation Element (PCE) provides functions of path computation in support of traffic engineering (TE) in networks controlled by Multi-Protocol Label Switching (MPLS) and Generalized MPLS (GMPLS).
This document provides extensions for the Path Computation Element Protocol (PCEP) to receive Shared Risk Link Group (SRLG) information during path computation via encoding this information in the path computation reply message.
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 25, 2019.
Copyright (c) 2018 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
As per [RFC4655], PCE based path computation model is deployed in large, multi-domain, multi-region, or multi-layer networks. In such case PCEs may cooperate with each other to provide end to end optimal path.
It is important to understand which TE links in the network might be at risk from the same failures. In this sense, a set of links can constitute a 'shared risk link group' (SRLG) if they share a resource whose failure can affect all links in the set [RFC4202]. H-LSP (Hierarchical LSP) or S-LSP (Stitched LSP) can be used for carrying one or more other LSPs as described in [RFC4206] and [RFC6107]. H-LSP and S-LSP may be computed by PCE(s) and further form as a TE link. The SRLG information of such LSPs can be obtained during path computation itself and encoded in the PCEP Path Computation Reply (PCRep) message. [I-D.zhang-ccamp-gmpls-uni-app] describes the use of a PCE for end to end User-Network Interface (UNI) path computation.
Note that [RFC8001] specifies a extension to Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) where SRLG information is collected at the time of signaling. But in case a PCE or cooperating PCEs are used for path computation it is recommended that SRLG information is provided by the PCE(s) during the path computation itself to the ingress (PCC) rather than receiving this information during signaling.
Further, for other path setup types (PST), (such as segment routing (SR), PCE as central controller (PCECC)) using a PCEP based approach for SRLG information is useful.
[RFC7926] describes a scaling problem with SRLGs in multi-layer environment and introduce a concept of Macro SRLG (MSRLG). Lower layer SRLG are abstracted at the time of path computation and can be the basis to generate such a Macro SRLG at the PCE.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.
The following terminology is used in this document.
[RFC4202] states that a set of links can constitute a 'shared risk link group' (SRLG) if they share a resource whose failure can affect all links in the set. For example, two fibers in the same conduit would be in the same SRLG. If an LSR is required to have multiple diversely routed LSPs to another LSR, the path computation should attempt to route the paths so that they do not have any links in common, and such that the path SRLGs are disjoint.
In case a PCE or cooperating PCEs are used for path computation, the SRLG information is provided by the PCE(s). For example, disjoint paths for inter-domain or inter-layer LSPs. In order to achieve path computation for a secondary (backup) path, a PCC may request the PCE for a route that must be SRLG disjoint from the primary (working) path. The Exclude Route Object (XRO) [RFC5521] is used to specify SRLG information to be explicitly excluded.
Following key requirements are identified for PCEP to receive SRLG information during path computation:
Cooperating PCEs [RFC4655] with inter-PCE communication work together to provide the end to end optimal path as well as the SRLG information of this path. During inter-domain or inter-layer path computation, the aggregating PCE (Parent PCE [RFC6805] or Ingress PCE(1) [RFC5441] or Higher-Layer PCE [RFC5623]) should receive the SRLG information of path segments from other PCEs and provide the end to end SRLG information of the optimal path to the Path Computation Client (PCC).
This document defines a new TLV that can be carried in the LSPA (LSP Attributes) object [RFC5440] so that a PCEP speaker can request SRLG information along with the path from the PCE. The SRLG subobject maybe carried inside the Explicit Route Object (ERO) in the PCEP message from PCE.
This document specify a new TLV for the LSPA Object to indicate that the PCE SHOULD provide the SRLG information along with the path. Its format is shown in the following figure:
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved | Flags |S| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SRLG-INFO TLV
The Type for the TLV is TBD. The length is fixed value of 4. The value portion consist of -
As per [RFC5440], ERO is used to encode the path and is carried within a PCRep message to provide the computed path when computation was successful. Further as per [RFC8231] and [RFC8281], the ERO is also encoded in PCUpd and PCInitiate message for stateful operations.
The SRLG of a path is the union of the SRLGs of the links in the path [RFC4202]. The SRLG subobject is defined in [RFC8001] for ROUTE_RECORD object (RRO). The same subobject format (reproduced below) can be used by the ERO object in the PCEP messages.
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length |D| Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SRLG ID 1 (4 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ ...... ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SRLG ID n (4 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The meaning and description of Type, Length, D-Bit and SRLG ID can be found in [RFC8001]. Reserved field MUST be set to zero on transmission and MUST be ignored on receipt.
The SRLG subobject should be encoded inside the ERO object in the PCEP messages by the PCE when the S-Bit is set in the SRLG-INFO TLV (inside LSPA object). Incase no SRLG information is present for the path, an empty SRLG subobject with Length as 4 (and no SRLG-IDs) is included.
Initially PCEP was used for LSPs that are set up using the RSVP-TE signaling protocol. However, other TE path setup methods are possible within the PCE architecture such as SR [I-D.ietf-pce-segment-routing].
[RFC8001] describes SRLG information collection via RSVP-TE extension, which can not be used for Segment Routing (SR), making PCE the best source for the SRLG information for SR.
If a PCE receives a PCEP message and the PCE does not understand the new TLV in the LSPA object, then as per [RFC5440], it would ignore the TLV. In which case, the PCC will receive ERO with no SRLG subobject and can determine that the PCE does not support the PCEP extention as defined in this document.
If PCEP speaker receives a PCEP message with SRLG subobject that it does not support or recognize, it would act according to the existing processing rules of the ERO as per [RFC5440].
[RFC5520] defines a mechanism to hide the contents of a segment of a path, called the Confidential Path Segment (CPS). The CPS may be replaced by a path-key that can be conveyed in the PCEP and signaled within in a RSVP-TE ERO.
When path-key confidentiality is used, encoding SRLG information in PCRep along with the path-key could be useful to compute a SRLG disjoint backup path at the later instance.
The path segment that needs to be hidden (that is, CPS) MAY be replaced in the ERO with a PKS. The PCE MAY use the SRLG Sub-objects in the ERO along with the PKS sub-object.
In a multi-layer multi-domain scenario, SRLG ids may be configured by different management entities in each layer/domain. In such scenarios, maintaining a coherent set of SRLG IDs is a key requirement in order to be able to use the SRLG information properly. Thus, SRLG IDs must be unique. Note that current procedure is targeted towards a scenario where the different layers and domains belong to the same operator, or to several coordinated administrative groups. Ensuring the aforementioned coherence of SRLG IDs is beyond the scope of this document. Further scenarios, where coherence in the SRLG IDs cannot be guaranteed are out of the scope of the present document and are left for further study.
The procedures defined in this document permit the transfer of SRLG data between layers or domains during the path computation of LSPs, subject to policy at the PCE. It is recommended that PCE policies take the implications of releasing SRLG information into consideration and behave accordingly during path computation. Other security concerns are discussed in [RFC5440]. An analysis of the security issues for routing protocols that use TCP (including PCEP) is provided in [RFC6952], while [RFC8253] discusses a TLS based approach to provide secure transport for PCEP.
A PCE involved in inter-domain or inter-layer path computation should be capable of being configured with a SRLG processing policy to specify if the SRLG IDs of the domain or specific layer network can be exposed to the PCEP peer outside the domain or layer network, or whether they should be summarized, mapped to values that are comprehensible to PCC outside the domain or layer network, or removed entirely.
[RFC7420] describes the PCEP MIB and [I-D.ietf-pce-pcep-yang] specify PCEP YANG, there are no new MIB Objects or YANG changes for this document.
Mechanisms defined in this document do not imply any new liveness detection and monitoring requirements in addition to those already listed in [RFC5440].
Mechanisms defined in this document do not imply any new operation verification requirements in addition to those already listed in [RFC5440] and [RFC8231].
Mechanisms defined in this document do not imply any new requirements on other protocols. Note that, [RFC8001] provide similar requirements for signaling protocol.
Mechanisms defined in this document do not have any impact on network operations in addition to those already listed in [RFC5440] and [RFC8231].
IANA assigns values to PCEP parameters in registries defined in [RFC5440]. IANA is requested to make the following additional assignments.
IANA maintains the "Path Computation Element Protocol (PCEP) Numbers" registry and the "PCEP TLV Type Indicators" sub-registry. IANA is requested to allocate a codepoint for -
Type | Meaning | Reference |
---|---|---|
TBD | SRLG-INFO | This document |
This document requests that a new sub-registry, named "SRLG-INFO TLV Flag Field", is created within the "Path Computation Element Protocol (PCEP) Numbers" registry to manage the Flag field of the this TLV. New values are to be assigned by Standards Action [RFC8126]. Each bit should be tracked with the following qualities:
The following values are defined in this document:
Bit | Description | Reference |
---|---|---|
31 | SRLG (S-bit) | This document |
PCEP uses the ERO registry maintained for RSVP at http://www.iana.org/assignments/rsvp-parameters/rsvp-parameters.xhtml. Within this registry IANA maintains sub-registry for ERO subobject at http://www.iana.org/assignments/rsvp-parameters/rsvp-parameters.xhtml#rsvp-parameters-25
Upon approval of this document, IANA is requested to make identical additions to the registry as follows (which is un-assigned right now):
Subobject Type Reference 34 SRLG sub-object [This I.D.]
Note that, an allocation for SRLG sub-object for RRO in RSVP-TE is made for [RFC8001].
Special thanks to the authors of [RFC8001]. This document borrows some of text from it.
Udayasree Palle EMail: udayasreereddy@gmail.com Avantika India EMail: s.avantika.avantika@gmail.com