PCEP Extensions for MPLS-TE LSP Automatic Bandwidth Adjustment with stateful PCEHuawei Technologies India Pvt LtdLeela PalaceBangaloreKarnataka560008INDIAdhruv.dhody@huawei.comHuawei Technologies India Pvt LtdLeela PalaceBangaloreKarnataka560008INDIAudayasree.palle@huawei.com
Routing
PCE Working GroupThe 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. The extensions described in provide stateful control of Multiprotocol Label Switching (MPLS) Traffic Engineering Label Switched Paths (TE LSP) via PCEP, for a model where the PCC delegates control over one or more locally configured LSPs to the PCE.This document describes the automatic bandwidth adjustment of such LSPs under the stateful PCE model. describes the Path Computation Element Protocol (PCEP) as the communication between a Path Computation Client (PCC) and a Path Control Element (PCE), or between PCE and PCE, enabling computation of Multiprotocol Label Switching (MPLS) for Traffic Engineering Label Switched Path (TE LSP). specifies extensions to PCEP to enable stateful control of MPLS TE LSPs. In this document focus is on Active Stateful PCE where LSPs are configured on the PCC and control over them is delegated to the PCE.Over time, based on the varying traffic pattern, an LSP established with certain bandwidth may require to adjust the reserved bandwidth over time automatically. Ingress Label Switch Router (LSR) samples the traffic rate at each sample-interval to determine the traffic information as Maximum Average Bandwidth (MaxAvgBw). Further adjustment to the reserved bandwidth should be made at every adjustment-interval automatically.Enabling Auto-Bandwidth on a LSP results in the LSP automatically adjusting its bandwidth based on the actual traffic flowing through the LSP. A LSP can therefore be setup with some arbitrary (or zero) bandwidth value such that the LSP automatically monitors the traffic flow and adjusts its bandwidth every adjustment-interval period. The bandwidth adjustment uses the make-before-break signaling method so that there is no interruption to traffic flow. This is described in detail in . describes the usecase for auto-bandwidth adjustment for passive and active stateful PCE. Active stateful PCE can use information such as historical trending data, application-specific information about expected demands or policy information, as well as knowledge of the actual desired flow volumes to make smarter bandwidth adjustment to delegated LSPs.This document defines extensions needed to support Auto-Bandwidth feature along with mechanism to provide traffic information of the LSPs in a stateful PCE model using PCEP. At the same time this document does not exclude use of any other mechanism employed by stateful PCE to learn real time traffic information etc.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 .The following terminology is used in this document.PCE that uses tunnel state information learned from PCCs to optimize path computations. Additionally, it actively updates tunnel parameters in those PCCs that delegated control over their tunnels to the PCE.:An operation to grant a PCE temporary rights to modify a subset of tunnel parameters on one or more PCC's tunnels. Tunnels are delegated from a PCC to a PCE.Path Computation Client: any client application requesting a path computation to be performed by a Path Computation Element.Path Computation Element. An entity (component, application, or network node) that is capable of computing a network path or route based on a network graph and applying computational constraints.Traffic Engineering Label Switched Path.Note the additional terms defined in .An active stateful PCE can simply update the bandwidth for a delegated LSP via mechanisms described in . Note that further extension are needed to support - identify the LSP that would like to use this feature.specify the knobs to control parameters like bandwidth range etc.report the live traffic information.Extensions as specified in this document is one of the way for PCE to learn this information. A stateful PCE MAY learn this information from other means like management tools.Auto-Bandwidth feature allows an LSP to automatically and dynamically adjust its reserved bandwidth over time, i.e. without network operator intervention. The bandwidth adjustment uses the make-before-break adaptive signaling method so that there is no interruption to traffic flow.The new bandwidth reservation is determined by sampling the actual traffic flowing through the LSP. If the traffic flowing through the LSP is lower than the configured or current bandwidth of the LSP, the extra bandwidth is being reserved needlessly and being wasted. Conversely, if the actual traffic flowing through the LSP is higher than the configured or current bandwidth of the LSP, it can potentially cause congestion or packet loss. With Auto-Bandwidth feature, the LSP bandwidth can be set to some arbitrary value (even zero) during initial setup time, and it will be periodically adjusted over time based on the actual bandwidth requirement.Note the following terms:The maximum average bandwidth is the unit to measure the current traffic demand between a time interval. This is the maximum value of the averaged traffic pattern in a particular time interval.The time interval in which the traffic rate (MaxAvgBw) is collected as a sample.The time interval in which the bandwidth adjustment should be made based on the MaxAvgBw.The minimum bandwidth that should be reserved for the LSP.The maximum bandwidth that can be reserved for the LSP.This value indicates when the MaxAvgBw must be reported to stateful PCE via PCRpt message. Only if the percentage difference between the current MaxAvgBw and the last MaxAvgBw is greater than or equal to the threshold percentage the LSP bandwidth is reported to PCE.This value indicates when the bandwidth must be adjusted. Only if the percentage difference between the current MaxAvgBw and the current bandwidth allocation is greater than or equal to the threshold percentage the LSP bandwidth is adjusted to the current bandwidth demand.The traffic rate is repeatedly sampled at each sample-interval (which can be configured by the user and the default value as 5 minutes). The sampled traffic rates are accumulated over the adjustment-interval period(which can be configured by the user and the default value as 24 hours).The ingress LSR reports the traffic information to the stateful PCE via the PCRpt message, to avoid multiple reports, the Report-Threshold percentage is used. Only if the percentage difference between the current MaxAvgBw and the last MaxAvgBw is greater than or equal to the threshold percentage the LSP bandwidth is reported to PCE.Stateful PCE will adjust the bandwidth of the LSP to the highest sampled traffic rate amongst the set of samples taken over the adjustment-interval. Note that the highest sampled traffic rate could be higher or lower than the current LSP bandwidth. Only if the current MaxAvgBw and the current bandwidth allocation is greater than or equal to the Adjust-Threshold percentage the LSP bandwidth is adjusted to the current bandwidth demand.Also to avoid multiple LSP re-signaling, sometimes operator set up longer adjustment intervals. However long adjustment-interval can also result in an undesirable effect of masking sudden changes in traffic patterns. To avoid this, the stateful PCE MAY pre-maturely expire the adjustment-interval to accommodate sudden bursts in traffic.The AUTO-BANDWIDTH-ATTRIBUTE TLV can be included as an optional TLV in the LSP object as described in . Whenever the LSP with Auto-Bandwidth feature enabled is delegated, AUTO-BANDWIDTH-ATTRIBUTE TLV MUST be carried in PCRpt message.The format of the AUTO-BANDWIDTH-ATTRIBUTE TLV is shown in the following figure:The type of the TLV is [TBD] and it has a fixed length of 12 octets.The value contains the following fields:The minimum bandwidth allowed is encoded in IEEE floating point format (see ), expressed in bytes per second. Refer to Section 3.1.2 of for a table of commonly used values.The maximum bandwidth allowed is encoded in IEEE floating point format (see ), expressed in bytes per second. Refer to Section 3.1.2 of for a table of commonly used values.The Adjust-Threshold value is encoded in percentage. Only if the percentage difference between the current MaxAvgBw and the current bandwidth allocation is greater than or equal to the threshold percentage the LSP bandwidth is adjusted to the current bandwidth demand.These bits MUST be set to zero on transmission and MUST be ignored on receipt.If the above parameters are not specified by the user, based on the local policy at Ingress (PCC) the default value can be encoded. If no default value is specified at Ingress, value 'zero' can be encoded for the particular field. The stateful PCE can then apply its own default value based on the local policy.As per , the BANDWIDTH object is defined with two Object-Type values:Requested Bandwidth: BANDWIDTH Object-Type is 1.Re-optimization Bandwidth: Bandwidth of an existing TE LSP for which a reoptimization is requested. BANDWIDTH Object-Type is 2.The new BANDWIDTH object type 3 [TBD] is used to specify the MaxAvgBw determined from the existing TE LSP Traffic flow at every sample-interval. The Report-Threshold percentage is used to determine if there is a need to report the current MaxAvgBw.When the delegated LSP is enabled with the Auto-Bandwidth adjustment feature, a PCC MAY include the BANDWIDTH object of type 3 [TBD] in the PCRpt message. The definition of the PCRpt message (see ) is unchanged.When LSP is delegated to a PCE for the very first time, BANDWIDTH object of type 1 is used to specify the requested bandwidth in the PCRpt message. To report the traffic flow information (as the MaxAvgBw) the BANDWIDTH object of type 3 [TBD] is encoded in further PCRpt meessage.TBD.The Auto-Bandwidth feature MUST BE controlled per tunnel at Ingress (PCC), the values for parameters like sample-interval, adjustment-interval, minimum-bandwidth, maximum-bandwidth, report-threshold, adjust-threshold SHOULD BE configurable by user.TBD.TBD.TBD.TBD.TBD.TBD.This document defines the following new PCEP TLVs; IANA is requested to make the following allocations from this registry.This document defines new object type for the BANDWIDTH object; IANA is requested to make the following allocations from this registry.We would like to thank Venugopal Reddy, Reeja Paul, Sandeep Boina and Avantika for their useful comments and suggestions.Standard for Binary Floating-Point Arithmetic IEEEPCEP Extensions for Stateful PCE (draft-ietf-pce-stateful-pce)Applicability of Stateful Path Computation Element (PCE) (draft-zhang-pce-stateful-pce-app)