PCE Working Group | Q. Wu |
Internet-Draft | D. Dhody |
Intended status: Standards Track | Huawei |
Expires: August 12, 2014 | S. Previdi |
Cisco Systems, Inc | |
February 08, 2014 |
Extensions to Path Computation Element Communication Protocol (PCEP) for handling Link Bandwidth Utilization
draft-wu-pce-pcep-link-bw-utilization-02
The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Clients (PCCs) requests.
Link bandwidth utilization considering the total bandwidth of a link in current use for the forwarding is an important factor to consider during path computation. This document describes extensions to PCEP to consider them as new constraints during path computation.
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 http://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 August 12, 2014.
Copyright (c) 2014 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 (http://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.
Real time link bandwidth utilization is becoming critical in the path computation in some networks. It is important that link bandwidth utilization is factored in during path computation. PCC can request a PCE to provide a path such that it selects under-utilized links. This document extends PCEP [RFC5440] for this purpose.
Traffic Engineering Database (TED) as populated by Interior Gateway Protocol (IGP) contains Maximum bandwidth, Maximum reservable bandwidth and Unreserved bandwidth ([RFC3630] and [RFC3784]). [OSPF-TE-EXPRESS] and [ISIS-TE-EXPRESS] further populate Residual bandwidth, Available bandwidth and Utilized bandwidth.
The links in the path MAY be monitored for changes in the link bandwidth utilization, re-optimization of such path MAY be further requested.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].
The following terminology is used in this document.
The bandwidth utilization on a link, forwarding adjacency, or bundled link is populated in the TED (Utilized Bandwidth in [OSPF-TE-EXPRESS] and [ISIS-TE-EXPRESS]). For a link or forwarding adjacency, bandwidth utilization represent the actual utilization of the link (i.e.: as measured in the router). For a bundled link, bandwidth utilization is defined to be the sum of the component link bandwidth utilization. This includes traffic for both RSVP and non-RSVP.
LBU Percentage is described as the (LBU / Maximum bandwidth) * 100.
The reserved bandwidth utilization on a link, forwarding adjacency, or bundled link can be calculated from the TED. This includes traffic for only RSVP-TE LSPs.
LRBU can be calculated by using the Residual bandwidth, Available bandwidth and LBU. The actual bandwidth by non-RSVP TE traffic can be calculated by subtracting Available Bandwidth from Residual Bandwidth. Once we have the actual bandwidth for non-RSVP TE traffic, subtracting this from LBU would result in LRBU.
LRBU Percentage is described as the (LRBU / (Maximum reservable bandwidth)) * 100.
Following requirements associated with bandwidth utilization are identified for PCEP:
This section defines extensions to PCEP [RFC5440] for requirements outlined in Section 5. The proposed solution is used to consider bandwidth utilization during path computation.
The BU (Bandwidth Utilization) is used to indicate the upper limit of the acceptable link bandwidth utilization percentage.
The BU object may be carried within the PCReq message and PCRep messages.
BU Object-Class is TBD.
BU Object-Type is 1.
The format of the BU object body is as follows:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved | Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Bandwidth Utilization | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
BU Object Body Format
The BU object body has a fixed length of 8 bytes.
PCC SHOULD request the PCE to factor in the bandwidth utilization during path computation by including a BU object in the PCReq message.
Multiple BU objects MAY be inserted in a PCReq or a PCRep message for a given request but there MUST be at most one instance of the BU object for each type. If, for a given request, two or more instances of a BU object with the same type are present, only the first instance MUST be considered and other instances MUST be ignored.
BU object MAY be carried in a PCRep message in case of unsuccessful path computation along with a NO-PATH object to indicate the constraints that could not be satisfied.
If the P bit is clear in the object header and PCE does not understand or does not support bandwidth utilization during path computation it SHOULD simply ignore BU object.
If the P Bit is set in the object header and PCE receives BU object in path request and it understands the BU object, but the PCE is not capable of bandwidth utilization check during path computation, the PCE MUST send a PCErr message with a PCEP-ERROR Object Error-Type = 4 (Not supported object) [RFC5440]. The path computation request MUST then be cancelled.
If the PCE does not understand the BU object, then the PCE MUST send a PCErr message with a PCEP-ERROR Object Error-Type = 3 (Unknown object) [RFC5440].
This document defines two additional objective functions -- namely, MUP (Maximum Under-Utilized Path) and MRUP (Maximum Reserved Under-Utilized Path. Hence two new objective function codes have to be defined.
Objective functions are formulated using the following terminology:
The description of the two new objective functions is as follows.
These new objective function are used to optimize paths based on bandwidth utilization as the optimization criteria.
If the objective function defined in this document are unknown/unsupported, the procedure as defined in [RFC5541] is followed.
The new optional BU objects MAY be specified in the PCReq message. As per [RFC5541], an OF object specifying a new objective function MAY also be specified.
The format of the PCReq message (with [RFC5541] as a base) is updated as follows:
<PCReq Message> ::= <Common Header> [<svec-list>] <request-list> where: <svec-list> ::= <SVEC> [<OF>] [<metric-list>] [<svec-list>] <request-list> ::= <request> [<request-list>] <request> ::= <RP> <END-POINTS> [<LSPA>] [<BANDWIDTH>] [<bu-list>] [<metric-list>] [<OF>] [<RRO>[<BANDWIDTH>]] [<IRO>] [<LOAD-BALANCING>] and where: <bu-list>::=<BU>[<bu-list>] <metric-list> ::= <METRIC>[<metric-list>]
The BU objects MAY be specified in the PCRep message, in case of an unsuccessful path computation to indicate the bandwidth utilization as a reason for failure. The OF object MAY be carried within a PCRep message to indicate the objective function used by the PCE during path computation.
The format of the PCRep message (with [RFC5541] as a base) is updated as follows:
<PCRep Message> ::= <Common Header> [<svec-list>] <response-list> where: <svec-list> ::= <SVEC> [<OF>] [<metric-list>] [<svec-list>] <response-list> ::= <response> [<response-list>] <response> ::= <RP> [<NO-PATH>] [<attribute-list>] [<path-list>] <path-list> ::= <path> [<path-list>] <path> ::= <ERO> <attribute-list> and where: <attribute-list> ::= [<OF>] [<LSPA>] [<BANDWIDTH>] [<bu-list>] [<metric-list>] [<IRO>] <bu-list>::=<BU>[<bu-list>] <metric-list> ::= <METRIC> [<metric-list>]
PCC can monitor the link bandwidth utilization of the setup LSPs (change in TED bandwidth parameters of one or more links in the path) and in case of drastic change, it MAY ask PCE for reoptimization as per [RFC5440].
[RFC5441] describes the Backward-Recursive PCE-Based Computation (BRPC) procedure to compute end to end optimized inter-domain path by cooperating PCEs. The new BU object defined in this document can be applied to end to end path computation, in similar manner as existing METRIC object.
All domains should have the same understanding of the BU object for end-to-end inter-domain path computation to make sense.
The IGP in each neighbor domain can advertise its inter-domain TE link capabilities, this has been described in [RFC5316] (ISIS) and [RFC5392] (OSPF). The bandwidth related network performance link properties are described in [OSPF-TE-EXPRESS] and [ISIS-TE-EXPRESS], the same properties must be advertised using the mechanism described in [RFC5392] (OSPF) and [RFC5316] (ISIS).
TBD
[STATEFUL-PCE] specifies a set of extensions to PCEP to enable stateful control of MPLS-TE and GMPLS LSPs via PCEP and maintaining of these LSPs at the stateful PCE. It further distinguishes between an active and a passive stateful PCE. A passive stateful PCE uses LSP state information learned from PCCs to optimize path computations but does not actively update LSP state. In contrast, an active stateful PCE utilizes the delegation mechanism to let PCCs relinquish control over some LSPs to the PCE.
The passive stateful PCE implementation MAY use the extension of PCReq and PCRep messages as defined in Section 6.3.1 and Section 6.3.2 to enable the use of BU object.
The additional objective functions defined in this document can also be used with stateful PCE.
A Path Computation LSP State Report message (also referred to as PCRpt message) is a PCEP message sent by a PCC to a PCE to report the current state or delegate control of an LSP. The PCRpt message is extended to support BU object (to optionally specify the boundary condition that should not be crossed).
As per [STATEFUL-PCE], the format of the PCRpt message is as follows:
<PCRpt Message> ::= <Common Header> <state-report-list> where: <state-report-list> ::= <state-report> [<state-report-list>] <state-repor> ::= [<SRP>] <LSP> <path> <path> ::= <ERO><attribute-list>[<RRO>]
Where <attribute-list> is extended as per Section 6.3.2.
Thus the BU object can be used to specify the boundary condition set at the PCC at the time of delegation to active stateful PCE.
IANA assigns values to PCEP parameters in registries defined in [RFC5440]. IANA has made the following additional assignments.
IANA assigned a new object class in the registry of PCEP Objects as follows.
Object Object Name Reference Class Type -------------------------------------------------- TBD 1 BU [This I.D.]
IANA created a registry to manage the codespace of the Type field of the METRIC Object.
Codespace of the T field (Metric Object)
Type Name Reference -------------------------------------------------- 1 LBU (Link Bandwidth [This I.D.] Utilization 2 LRBU (Link Residual [This I.D.] Bandwidth Utilization
Two new Objective Functions have been defined. IANA has made the following allocations from the PCEP "Objective Function" sub-registry:
Code Name Reference Point -------------------------------------------------- TBA Maximum Under-Utilized [This I.D.] Path (MUP) TBA Maximum Reserved [This I.D.] Under-Utilized Path (MRUP)
This document defines a new BU object and OF codes which does not add any new security concerns beyond those discussed in [RFC5440].
The only configurable item is the support of the new constraints on a PCE which MAY be controlled by a policy module. If the new constraints are not supported/allowed on a PCE, it MUST send a PCErr message as specified in Section 6.1.1.
[PCEP-MIB] describes the PCEP MIB, there are no new MIB Objects 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].
PCE requires the TED to be populated with the bandwidth utilization. This mechanism is described in [OSPF-TE-EXPRESS] or [ISIS-TE-EXPRESS].
Mechanisms defined in this document do not have any impact on network operations in addition to those already listed in [RFC5440].
We would like to thank Alia Atlas, John E Drake and David Ward for their useful comments and suggestions.
[RFC2119] | Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. |
Udayasree Palle Huawei Technologies Leela Palace Bangalore, Karnataka 560008 INDIA EMail: udayasree.palle@huawei.com Avantika Huawei Technologies Leela Palace Bangalore, Karnataka 560008 INDIA EMail: avantika.sushilkumar@huawei.com