Automatic Bandwidth Adjustment in P2P LSPs
This chapter provides information about automatic bandwidth adjustment in P2P LSPs.
Topics in this chapter include:
Applicability
Automatic bandwidth adjustment was first introduced in SR OS Release 8.0.R4. Overflow triggers are supported from SR OS Release 8.0.R4 onward; underflow triggers from SR OS Release 12.0.R1 onward. From SR OS Release 12.0.R4 onward, auto-bandwidth adjustment is also supported on LSPs that have secondary paths.
Initially, this chapter was written for SR OS Release 13.0.R2, but the CLI in the current edition corresponds to SR OS Release 23.10.R2.
Overview
Automatic bandwidth adjustment refers to the capability of an ingress Label Edge Router (iLER) to dynamically adjust the bandwidth of a Resource Reservation Protocol (RSVP) Label Switched Path (LSP) tunnel based on active measurement of the traffic rate into the tunnel. The bandwidth assigned to an RSVP LSP tunnel is taken into account by the control plane, to verify that sufficient bandwidth is available for a new LSP or for an increase or decrease in bandwidth for an existing LSP. The actual bandwidth in the data plane is not capped by this setting. QoS mechanisms can be set up to filter and police the traffic in the data plane, but that is beyond the scope of this chapter.
Auto-bandwidth adjustment uses the existing LSP egress statistics feature to track the bandwidth on a specific LSP. When egress statistics are enabled, the Control Processing Module (CPM) collects statistics from all IOMs forwarding traffic belonging to the LSP (whether the traffic is currently leaving the ingress LER via the primary path, a secondary path, or an FRR detour/bypass path). The egress statistics have counts for the number of packets and bytes forwarded per LSP on a per-forwarding class, per priority (in-profile versus out-of-profile) basis.
For the actual bandwidth adjustment, Make-Before-Break (MBB) is used. No traffic interruption is noticed. If an auto-bandwidth attempt fails, there are 5 retries and, if they all fail, the bandwidth remains unchanged. The next attempt may occur with the next trigger.
Retries follow the retry-limit (5 in this case), retry-timer (by default 30s), and exponential back-off timer, if enabled in MPLS.
Auto-bandwidth adjustment can be triggered in four different ways:
Periodic trigger
The iLER determines at the end of each adjust-interval whether to attempt an auto-bandwidth adjustment.
Overflow or underflow trigger
The measured bandwidth of an LSP has increased or decreased significantly since the start of the current adjust-interval. It may be preferable to adjust the bandwidth of the LSP after a number of overflow/underflow samples, rather than wait for the adjust-interval to end (default: 24 h).
Manual trigger
An operator launches a tools command to trigger an auto-bandwidth adjustment.
Active path change
The LSP has a primary and one or more secondary paths. When there is a change from the primary path to a secondary path without the LSP going down, an auto-bandwidth MBB is triggered. When the primary path becomes active again, another auto-bandwidth MBB is triggered.
Periodic Trigger
Auto-Bandwidth Adjustment Implementation shows the different time intervals and bandwidths defined in the auto-bandwidth adjustment implementation. In this example, there is an auto-bandwidth attempt when the adjust-interval elapses (periodic trigger). If the auto-bandwidth algorithm is met, the current bandwidth is increased. The parameters are explained after the figure.
The time intervals are:
Collection interval in minutes. This is a global parameter to be set in an accounting policy. Range: 5 to 120 minutes. Default: 5 minutes.
For this kind of record type, the minimum interval is 5 minutes. For policies using a record type of SAA or PM, the minimum is 1 minute.
# On PE-1: configure log accounting-policy 10 collection-interval ? - collection-interval <minutes> - no collection-interval <minutes> : [1..120] configure log accounting-policy 10 collection-interval 1 MAJOR: LOG #1076 Except for policies using a record type of SAA or PM the minimum interval is 5 mins
Sample interval: sample-multiplier * collection interval
Sample-multiplier is configurable globally in the mpls context or per LSP. Default value: 1. In Auto-Bandwidth Adjustment Implementation, the sample multiplier equals 2 for a sample interval of 2 * 5 minutes = 10 minutes.
Adjust-interval: adjust-multiplier * collection interval
Nokia recommends that the adjust-multiplier is an integer multiple of the sample-multiplier.
Adjust-multiplier is configurable globally in the mpls context or per LSP. Default value: 288 (288 * 5 minutes = 1440 minutes = 24 h). In Auto-Bandwidth Adjustment Implementation, the adjust multiplier equals 10 for an adjust-interval of 10 * 5 minutes = 50 minutes.
# On PE-1: configure router "Base" mpls auto-bandwidth-multipliers ? - auto-bandwidth-multipliers sample-multiplier <number1> adjust-multiplier <number2> - no auto-bandwidth-multipliers <number1> : [1..511] <number2> : [1..16383]
# On PE-1: configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth multipliers ? - multipliers sample-multiplier <num1> adjust-multiplier <num2> - no multipliers <num1> : [1..511] <num2> : [1..16383]
The different bandwidths are:
Minimum bandwidth: configured minimum bandwidth in Mbps that the auto-bandwidth adjustment can signal for the LSP. Granularity: 1 Mbps. Default: 0 Mbps.
# On PE-1: configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth min-bandwidth ? - min-bandwidth <rate-in-mbps> - no min-bandwidth <rate-in-mbps> : [0..6400000]
Maximum bandwidth: configured maximum bandwidth in Mbps that the auto-bandwidth adjustment can signal for the LSP. Granularity: 1 Mbps. Default: 100 Mbps.
# On PE-1: configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth max-bandwidth ? - max-bandwidth <rate-in-mbps> - no max-bandwidth <rate-in-mbps> : [0..6400000]
Current bandwidth or operational bandwidth (O): currently reserved bandwidth in Mbps for the LSP in the control plane. This is the operational bandwidth that is maintained in the Management Information Base (MIB) and is the bandwidth that is auto-adjusted. Granularity: 1 Mbps.
Sampled bandwidth (S): average data rate for the last sample interval.
Measured bandwidth (M): maximum averaged (per sample interval) data rate in the current adjust-interval. The SR OS keeps track of the maximum average data rate of each LSP since the last reset of the adjust-count.
Signaled bandwidth: bandwidth in Mbps that is provided to the CSPF algorithm and signaled in the RSVP SENDER_TSPEC and FLOWSPEC objects, when an auto-bandwidth adjustment is attempted. Granularity: 1 Mbps.
The other auto-bandwidth parameters for periodically triggered auto-bandwidth adjustment are:
Up% (adjust-up in percent): minimum increase in bandwidth from current to measured bandwidth, expressed as a percentage of the current bandwidth. Default: 5%.
Up (adjust-up bw): minimum increase in bandwidth as absolute bandwidth in Mbps. Up = measuredBW – currentBW. Granularity: 1 Mbps. Default: 0 Mbps.
# On PE-1: configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth adjust-up ? - adjust-up <percent> [bw <rate-in-mbps>] - no adjust-up <percent> : [0..100] <rate-in-mbps> : [0..6400000]
Down% (adjust-down in percent): minimum decrease in bandwidth from current to measured bandwidth, expressed as a percentage of the current bandwidth. Default: 5%.
Down (adjust-down bw): minimum decrease in bandwidth as absolute bandwidth in Mbps. Down = currentBW – measuredBW. Granularity: 1 Mbps. Default: 0 Mbps.
# On PE-1: configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth adjust-down ? - adjust-down <percent> [bw <rate-in-mbps>] - no adjust-down <percent> : [0..100] <rate-in-mbps> : [0..6400000]
In Auto-Bandwidth Adjustment Implementation, the minimum and maximum bandwidths mark the bandwidth range where auto-bandwidth adjustments are allowed. The sample interval is two collection intervals long (2 * 5 minutes = 10 minutes). The adjust-interval is 10 collection intervals long (10 * 5 minutes = 50 minutes). Initially, the current bandwidth (O) equals the configured bandwidth for the primary path. It is good practice to give that same value to the minimum bandwidth for auto-bandwidth. The system doesn’t confirm this and these bandwidths are independent from each other.
In this example, the sampled bandwidth exceeds the current bit rate in most of the sample intervals. The maximum sampled bandwidth in the current adjust-interval corresponds to the measured bandwidth (M). When auto-bandwidth adjustment is triggered at the end of the adjust-interval, this measured bandwidth is signaled and, after a successful adjustment, is the new current bandwidth. After the auto-bandwidth adjustment, a new adjust-interval starts and the measured bandwidth is reset to 0. As long as the first sample interval of the new adjust-interval is not finished, the measured bandwidth equals 0 and auto-adjustment is impossible even when triggered manually.
The auto-bandwidth attempt follows these rules:
When measuredBW ≥ currentBW
if {(measuredBW / currentBW – 1) ≥ up%} &&{(measuredBW – currentBW) ≥ up then signaledBW = max{(min(measuredBW, maxBW)), minBW}
When measuredBW < currentBW
if {(1 – measuredBW / currentBW) ≥ down%} && {(currentBW – measuredBW) ≥ down} then signaledBW = min{(max(measuredBW, minBW)), maxBW}
CLI configured bandwidths have a granularity of 1 Mbps, while the threshold calculations with measured bandwidth are performed at full precision. This means that the signaled bandwidth in the RSVP message is rounded up to the nearest integer multiple of 1 Mbps.
Overflow/Underflow Trigger
Auto-bandwidth adjustment can also be triggered by overflow or underflow. When the bandwidth changes drastically, the bandwidth can be auto-adjusted after a number of consecutive overflow/underflow samples. In this case, there is no need to wait for the adjust-interval to end (by default: 24 h).
The parameters used in case of overflow are:
Overflow sample: a sample interval counts as an overflow sample if the sampled bandwidth is higher than the current bandwidth by at least the configured overflow thresholds.
Overflow-limit/overflow-count: an auto-bandwidth adjustment occurs after this number of consecutive overflow samples.
Threshold%: minimum difference between sampled bandwidth and current bandwidth, expressed as a percentage of the current bandwidth.
Threshold bw: minimum difference between sampled bandwidth and current bandwidth in Mbps. Default value: 0.
# On PE-1: configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth overflow-limit ? - overflow-limit <number> threshold <percent> [bw <rate-in-mbps>] - no overflow-limit <number> : [1..10] <percent> : [0..100] <rate-in-mbps> : [0..6400000]
The rules for overflow-triggered auto-bandwidth adjustment are as follows:
Overflow sample: {(sampledBW / currentBW – 1) ≥ threshold%} && {(sampledBW – currentBW) ≥ thresholdBW}
The signaled bandwidth is:
if (measuredBW ≥ maxBW) then signaledBW = maxBW
if (measuredBW < minBW) then signaledBW = minBW
else signaledBW = measuredBW
The parameters used in case of underflow are:
Underflow sample: a sample interval counts as an underflow sample if the sampled bandwidth is lower than the current bandwidth by at least the configured underflow thresholds.
Underflow-limit/underflow-count: an auto-bandwidth adjustment occurs after this number of consecutive underflow samples.
Threshold%: minimum difference between current bandwidth and sampled bandwidth, expressed as a percentage of the current bandwidth.
Threshold bw: minimum difference between current bandwidth and sampled bandwidth in Mbps. Default value: 0.
Maximum underflow bandwidth (MU): maximum sampled bandwidth in the consecutive underflow samples.
# On PE-1: configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth underflow-limit ? - underflow-limit <number> threshold <percent> [bw <rate-in-mbps>] - no underflow-limit <number> : [1..10] <percent> : [0..100] <rate-in-mbps> : [0..6400000]
In Underflow-Triggered Auto-Bandwidth Implementation, the adjust-interval is not displayed. It is assumed to be the default of 288 collection intervals (24 h). The figure only shows five consecutive underflow samples. The underflow-limit equals 5. In each of the samples, the sample bandwidth is below the underflow threshold. The maximum sampled bandwidth of these five samples corresponds to the maximum underflow bandwidth. This bandwidth is signaled when auto-bandwidth adjustment is triggered because the underflow count is reached.
The rules for underflow-triggered auto-bandwidth adjustment are as follows:
Underflow sample:
{(1 - sampledBW / currentBW) ≥ threshold%} && {(currentBW – sampledBW) ≥ thresholdBW}
Underflow count/underflow limit: after that many consecutive underflow samples, an auto-bandwidth adjustment is triggered.
The signaled bandwidth is:
if (maxUnderflowBW ≥ maxBW) then signaledBW = maxBW
-
if (maxUnderflowBW < minBW) then signaledBW = minBW
-
else signaledBW = maxUnderflowBW
If the adjustment is successful, the sample counter within the adjust-interval is reset, along with other parameters, such as the maximum underflow bandwidth, the measured bandwidth, and the underflow count. The next adjust-interval will elapse in 24 h.
If the adjustment fails, there are 5 retries. If they all fail, only the underflow count and the maximum underflow bandwidth are reset. The current adjust-interval continues.
Manual Trigger
Besides the periodic trigger and the overflow/underflow trigger, an operator can launch a tools command to trigger an auto-bandwidth adjustment.
# On PE-1:
tools perform router mpls adjust-autobandwidth ?
- adjust-autobandwidth [lsp <lsp-name> [force [bandwidth <mbps>]]]
<lsp-name> : [64 chars max]
<force> : keyword
<rate-in-mbps> : [0..6400000]
# On PE-1:
tools perform router mpls adjust-autobandwidth
This tools command can be launched with or without explicit LSP name. In the latter case, all active LSPs are attempted for auto-bandwidth.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2" ?
- adjust-autobandwidth [lsp <lsp-name> [force [bandwidth <mbps>]]]
<lsp-name> : [64 chars max]
<force> : keyword
<rate-in-mbps> : [0..6400000]
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2"
This command (without the keyword force) triggers a new auto-bandwidth calculation according to the rules of periodic triggered type. If the LSP already has the correct reserved bandwidth, the following message is returned.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2"
MINOR: CLI lsp LSP-PE-1-PE-2 active path is already at the requested value 10 Mbps.
If the keyword force is added without a specific value for the bandwidth, there is no threshold checking. The bandwidth can also be adjusted if the difference in bandwidth is below the thresholds. The granularity remains 1 Mbps.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2" force
The rules for the signaled bandwidth are unchanged:
if (measuredBW ≥ maxBW) then signaledBW = maxBW
-
if (measurealedBdBW < minBW) then signaledBW = minBW
-
else signaledBW = measuredBW
If the keyword force with bandwidth (in Mbps) option is given, the signaled bandwidth is set to this configured bandwidth, even if it is a value below the minimum or higher than the maximum bandwidth.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2" force bandwidth 30
After a manually triggered auto-bandwidth MBB, no counters are reset. The ongoing adjust-interval is not aborted.
A clear command resets all counters and timers associated with auto-bandwidth adjustment on a specified LSP.
# On PE-1:
clear router mpls lsp-autobandwidth "LSP-PE-1-PE-2"
Passive Monitoring
The system offers the option to measure the bandwidth of an LSP without taking any action to adjust the bandwidth reservation.
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth monitor-bandwidth
Auto-Bandwidth Based on Forwarding Class
From SR OS Release 11.0.R4 onward, the bandwidth can be calculated as a weighted sum of all the traffic in the eight forwarding classes. By default, all forwarding classes have the same weight: 100%, but that sampling weight is configurable.
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth fc ?
- fc <fc-name> sampling-weight <sampling-weight>
- no fc <fc-name>
<fc-name> : be|l2|af|l1|h2|ef|h1|nc
<sampling-weight> : [0..100]
Active Path Change
Auto-bandwidth adjustment is also supported on LSPs that have secondary paths. If the secondary path is standby, an auto-bandwidth MBB can be triggered when the active path changes from primary to secondary. The secondary/standby path is only initialized at its configured bandwidth when it is established, and the bandwidth is adjusted only when it becomes active. This happens when the primary path goes down or becomes degraded. When another path becomes active, the bandwidth used to signal the auto-bandwidth MBB is the operational bandwidth of the previous path.
The definition for current bandwidth is modified for this feature:
Current bandwidth: last known reserved bandwidth for the LSP. This may be for a different path than the active one.
Auto-bandwidth adjustment will only take place on the active path. When the active path changes, the current bandwidth is updated to the operational bandwidth of the new active path.
For a secondary path that is signaled as standby, if the active path for an LSP changes without the LSP going down, an auto-bandwidth MBB is triggered on the new active path. The signaled bandwidth is the operational bandwidth of the previous path. The reserved bandwidth of the new active path is its configured bandwidth until the MBB succeeds.
For a secondary path where the active path goes down, the LSP will go down temporarily until the secondary path is set up. When the LSP goes down, all statistics and counters are cleared, so the previous path operational bandwidth is lost. There is no immediate bandwidth adjustment on the secondary path.
The following rules apply to determine the signaled bandwidth of the new active path.
For a path that is operationally down, signaledBW = configuredBW.
For the first 5 MBB attempts on the path that just became active,
signaledBW = currentBW (operational bandwidth of the previous path).
For the remaining MBB attempts, signaledBW = operationalBW.
For all MBBs other than auto-bandwidth MBB on the active path,
MBB signaledBW = operationalBW.
For an MBB on the inactive (standby) path, MBB signaledBW = configuredBW.
When the system reverts from a secondary standby path to the primary path, a Delayed Retry MBB is attempted to bring the bandwidth on the standby path back to the configured bandwidth. MBB is attempted once, and if it fails, the standby is torn down. A Delayed Retry MBB has the highest priority among MBBs, so it will take precedence over any other MBB in progress on the standby path, such as configuration change or pre-emption.
Configuration
Example Setup for Auto-Bandwidth Point-to-Point LSPs shows the example setup. The focus is on the RSVP LSP from PE-1 to PE-2.
Base Configuration
The cards, MDAs and ports need to be configured.
Configure the interfaces on all nodes.
# On PE-1:
configure
router "Base"
interface "int-PE-1-PE-2"
address 192.168.12.1/30
port 1/1/c1/1
exit
interface "int-PE-1-PE-3"
address 192.168.13.1/30
port 1/1/c2/1
exit
interface "system"
address 192.0.2.1/32
exit
As an IGP, OSPF or IS-IS can be used. In this example, OSPF is configured. Traffic engineering should be enabled.
# On PE-1:
configure
router "Base"
ospf
traffic-engineering
area 0.0.0.0
interface "system"
exit
interface "int-PE-1-PE-2"
interface-type point-to-point
exit
interface "int-PE-1-PE-3"
interface-type point-to-point
exit
exit
no shutdown
exit
Optionally, enable LDP on all interfaces. Link-layer LDP is not a prerequisite for using auto-bandwidth RSVP LSPs. In this example, the SDP from PE-2 to PE-1 uses an LDP LSP, but it could have been an RSVP-TE LSP instead.
# On PE-1:
configure
router "Base"
ldp
interface-parameters
interface "int-PE-1-PE-2" dual-stack
ipv4
no shutdown
exit
no shutdown
exit
interface "int-PE-1-PE-3" dual-stack
ipv4
no shutdown
exit
no shutdown
exit
exit
exit
Enable MPLS and RSVP on all nodes and add all interfaces to the mpls context. They will automatically be added to the rsvp context.
# On PE-1:
configure
router "Base"
mpls
interface "int-PE-1-PE-2"
exit
interface "int-PE-1-PE-3"
exit
no shutdown
exit
rsvp no shutdown
Configure a path with no explicitly defined hops and LSP LSP-PE-1-PE-2 on PE-1:
# On PE-1:
configure
router "Base"
mpls
path "loose"
no shutdown
exit
lsp "LSP-PE-1-PE-2"
to 192.0.2.2
primary "loose"
exit
no shutdown
exit
In the example, traffic needs to be injected into the LSP tunnel. For that, a VPLS service is created. On PE-1, an SDP using the RSVP LSP to PE-2 is created.
# On PE-1:
configure
service
sdp 212 mpls create
description "SDP-PE-1-PE-2-overRSVP-TE"
far-end 192.0.2.2
lsp "LSP-PE-1-PE-2"
no shutdown
exit
On PE-2, an SDP using LDP is created toward PE-1.
# On PE-2:
configure
service
sdp 121 mpls create
description "SDP-PE-2-PE-1-overLDP"
far-end 192.0.2.1
ldp
no shutdown
exit
On PE-1 and PE-2, a VPLS is created.
# On PE-1:
configure
service
vpls 100 name "VPLS 100" customer 1 create
sap 1/1/c3/1 create
exit
spoke-sdp 212:100 create
exit
no shutdown
exit
The configuration on PE-2 is similar.
Pre-requisites for Auto-Bandwidth LSP Configuration
Enable Constrained Shortest Path First (CSPF) on the LSP by adding path-computation-method local-cspf.
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" path-computation-method local-cspf
The bandwidth of the LSP is adjusted in a Make-Before-Break (MBB) manner. Enable MBB on the LSP by adding the keyword adaptive to the primary path.
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" primary "loose" adaptive
Enter a value for the bandwidth in Mbps for the primary path. It is good practice to configure the same value as for the minimum bandwidth in the auto-bandwidth settings.
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" primary "loose" bandwidth 2
Auto-Bandwidth LSP Configuration
MPLS auto-bandwidth adjustment allows the ingress LER to dynamically adjust the bandwidth of an RSVP tunnel based on active measurements of the traffic rate into the tunnel. Therefore, LSP egress statistics need to be enabled on the iLER.
Auto-bandwidth adjustment requires an accounting policy to be defined and operational. The accounting policy specifies the collection interval for LSP statistics collection, which is fundamental to the auto-bandwidth algorithm. The minimum interval for this type of collection is 5 minutes, which is the default value.
# On PE-1:
configure
log
accounting-policy 10
record combined-mpls-lsp-egress
to no-file
collection-interval 5 ## default (in minutes)
no shutdown
An accounting policy of record type combined-mpls-lsp-egress doesn’t need a reference to a specific file ID.
From the moment auto-bandwidth is enabled within an lsp context, the record combined-mpls-lsp-egress inside the accounting policy will also take bandwidth measurements.
# On PE-1:
configure log accounting-policy 10 to no-file
When the no-file is configured, no LSP statistics are stored anymore. The MPLS auto-bandwidth feature retrieves its LSP statistics information directly from the statistics module.
However, the accounting policy can reference a file and, therefore, a CF card. An additional CF card may be required in each node as a storage location.
# On PE-1:
configure
log
file-id 66
location cf1:
rollover 15 retention 1
exit
accounting-policy 66
record combined-mpls-lsp-egress
to file 66
no shutdown
exit
In the remainder of the example, the accounting policy will reference to no-file.
After the accounting policy has been created, egress statistics can be enabled on the LSP.
# On PE-1:
configure
router "Base"
mpls
lsp "LSP-PE-1-PE-2"
egress-statistics
collect-stats
accounting-policy 10
no shutdown
exit
The system does not verify whether egress statistics have been enabled on the LSP. When a user configures auto-bandwidth adjustment, but without enabling egress statistics, no auto-bandwidth measurements and adjustments are performed. The operational state of auto-bandwidth (AB OpState) is down.
Enable auto-bandwidth with default settings by adding the keyword auto-bandwidth to the LSP.
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
The actual values are shown in the following output. They are explained after the output.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 0 Mbps Auto BW Max : 100000 Mbps
AB Up Thresh : 5 percent AB Down Thresh : 5 percent
AB Up BW : 0 Mbps AB Down BW : 0 Mbps
AB Curr BW : 2 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288+ AB Samp Mul : 1+
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : n/a AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 0 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : none AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
The plus sign (+) indicates that the value is inherited from the global MPLS settings (AB Adj Mul: 288+ and AB Samp Mul: 1+). The sample-multiplier and the adjust-multiplier can both be configured globally in the mpls context or overruled by the settings per LSP. In this example, nothing has been configured in the mpls context or in the LSP. Therefore, the default values as defined in the mpls context are applicable.
Auto-Bandwidth – Periodic Trigger (Normal)
The default collection interval is 5 minutes. The sample-multiplier is 1, by default. The sample interval equals 1 * 5 minutes = 5 minutes, by default. The adjust-multiplier is 288, by default. The adjustment interval equals 288 * 5 minutes = 1440 minutes (24 hours), by default.
The auto-bandwidth settings for the LSP are modified as follows:
# On PE-1:
configure
router "Base"
mpls
lsp "LSP-PE-1-PE-2"
auto-bandwidth
multipliers sample-multiplier 1 adjust-multiplier 3
adjust-up 10 bw 1
adjust-down 5 bw 0 ## default
max-bandwidth 20
min-bandwidth 2
exit
In the example, the bandwidth of the LSP can be auto-adjusted every 15 minutes (after 3 intervals of 5 minutes). For a decrease in bandwidth, the default settings apply and no explicit command is required in this example. That means that the current bandwidth is only reduced when the difference in bandwidth is at least 5%. There is no absolute decrease (in Mbps) defined. For an increase in bandwidth, there is only an adjustment when the increase is at least 10% and at least 1 Mbps. The minimum bandwidth is 2 Mbps. This equals the bandwidth set in the path in the LSP (recommended). The maximum bandwidth equals 20 Mbps. The system will not compare the minimum or maximum bandwidth to the configured bandwidth for the path.
Display the actual auto-bandwidth data after 5, 10, and 15 minutes.
There are different bandwidths displayed:
The AB Curr BW is the operational bandwidth during the adjustment interval. It is initially the configured bandwidth of the path in the LSP, but it can be auto-adjusted. This bandwidth is taken into account in the control plane when an LSP is set up or modified in case of MBB. The real data rate in the data plane may exceed this operational bandwidth.
The ABMaxAvgRt is the measured bandwidth, meaning the maximum averaged bandwidth (calculated every sample interval of 5 minutes) in the adjustment interval of 15 minutes (AB Adj Time: 15 Min).
The AB Lst AvgRt is the sampled bandwidth, averaged over the latest sample interval of 5 minutes (AB Samp Intv: 5 Mins).
After 5 minutes, one collection interval has elapsed within the adjust-interval (AB Adj Cnt = 1) and the next adjustment time is in 10 minutes (AB Next Adj = 10 Min). The current bandwidth equals 2 Mbps, while the measured and the sampled bandwidths are much higher: 10 Mbps.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 2 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 3 AB Samp Mul : 1
AB Adj Time : 15 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 1 AB Samp Cnt : 0
AB Last Adj : n/a AB Next Adj : 10 Mins
ABMaxAvgRt : 9 Mbps AB Lst AvgRt : 9 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : none AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
After 10 minutes, another collection interval has elapsed in the adjust-interval (AB Adj Cnt = 2) and the next adjustment time is in 5 minutes (AB Next Adj = 5 Min).
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 2 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 3 AB Samp Mul : 1
AB Adj Time : 15 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 2 AB Samp Cnt : 0
AB Last Adj : n/a AB Next Adj : 5 Mins
ABMaxAvgRt : 10 Mbps AB Lst AvgRt : 10 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : none AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
After 15 minutes, auto-bandwidth adjustment occurs. AB Adj Cause is normal for periodically triggered adjustments. The next adjustment interval will elapse in 15 minutes. The measured bandwidth ABMaxAvgRt is reset to 0 after a successful adjustment.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 10 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 3 AB Samp Mul : 1
AB Adj Time : 15 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 10:39:14 AB Next Adj : 15 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 10 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : normal AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
The periodic trigger type rules for auto-bandwidth are:
When measuredBW ≥ currentBW
if {(measuredBW / currentBW – 1) ≥ up%} &&{(measuredBW – currentBW) ≥ up
then signaledBW = max{(min(measuredBW, maxBW)), minBW}
In this case, the measuredBW (10 Mbps) is greater than the currentBW (2 Mbps). The increase is at least 10% (up%) and at least 1 Mbps (up). The bandwidth is adjusted. The new bandwidth that is signaled is calculated as follows:
signaledBW = max{(min(measuredBW, maxBW)), minBW}
signaledBW = max {(min (10 Mbps, 20 Mbps)), 2 Mbps}
signaledBW = max {10 Mbps, 2 Mbps}
signaledBW = 10 Mbps
Whenever an auto-bandwidth adjustment is performed, a message is stored in log 99.
*A:PE-1# show log log-id 99 application "mpls"
===============================================================================
Event Log 99 log-name 99
===============================================================================
Description : Default System Log
Memory Log contents [size=500 next event=160 (not wrapped)]
159 2024/03/14 10:39:14.005 UTC WARNING: MPLS #2014 Base VR 1:
"LSP path LSP-PE-1-PE-2::loose resignaled as a result of autoBandwidth MBB"
When the maximum bandwidth is modified to a value that is lower than the current bandwidth, an adjustment occurs at the end of the adjustment interval.
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth max-bandwidth 9
The current bandwidth is reduced to 9 Mbps (for a measured bandwidth of 10 Mbps).
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 9 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 9 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 3 AB Samp Mul : 1
AB Adj Time : 15 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 1 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 10:54:14 AB Next Adj : 10 Mins
ABMaxAvgRt : 10 Mbps AB Lst AvgRt : 10 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : normal AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
Auto-Bandwidth - Passive Monitoring
When passive monitoring is enabled, no automatic bandwidth adjustments occurs. When the maximum bandwidth is again raised to 20 Mbps, the bandwidth will not be auto-adjusted even if the measured bandwidth is high enough.
# On PE-1:
configure
router "Base"
mpls
lsp "LSP-PE-1-PE-2"
auto-bandwidth
max-bandwidth 20
monitor-bandwidth
exit
The system monitors the bandwidth, but without taking action at the end of the adjust-interval.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 9 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 3 AB Samp Mul : 1
AB Adj Time : 15 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 2 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 10:54:14 AB Next Adj : 5 Mins
ABMaxAvgRt : 10 Mbps AB Lst AvgRt : 10 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : normal AB Monitor BW : True
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
The value for the parameter AB Monitor BW is True
For the remainder of the chapter, there is no passive monitoring. The settings are restored to normal:
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" auto-bandwidth no monitor-bandwidth
Auto-Bandwidth – Overflow and Underflow Trigger Type
With default settings, the adjustment interval is 24 hours. If the bandwidth changes significantly since the start of the current adjust-interval, overflow and underflow triggers can be used. This will speed up the auto-bandwidth adjustment.
Stop auto-bandwidth in order to force an MBB attempt toward the configured primary path bandwidth (2 Mbps in this example).
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" no auto-bandwidth
Check the operational bandwidth of the LSP.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" detail
===============================================================================
MPLS LSPs (Originating) (Detail)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
LSP Type : RegularLsp LSP Tunnel ID : 1
LSP Index : 1 TTM Tunnel Id : 1
From : 192.0.2.1
To : 192.0.2.2
Adm State : Up Oper State : Up
---snip---
Primary(a) : loose
Up Time : 0d 01:13:32
Bandwidth : 2 Mbps
===============================================================================
Enable auto-bandwidth with similar settings as before and add overflow and underflow triggers. The multipliers are default. Therefore, a periodically triggered auto-adjustment will only take place once every 24 hours.
# On PE-1:
configure
router "Base"
mpls
lsp "LSP-PE-1-PE-2"
auto-bandwidth
multipliers sample-multiplier 1 adjust-multiplier 288
adjust-up 10 bw 1
max-bandwidth 20
min-bandwidth 2
overflow-limit 1 threshold 10 bw 2
underflow-limit 3 threshold 10 bw 2
exit
The overflow count indicates the number of consecutive times that the overflow condition is detected at the end of a sample interval. Auto-bandwidth adjustment occurs after that number of overflow samples is reached, in this case, after the first overflow sample (overflow-limit = 1). The conditions for an overflow sample are:
{(sampledBW / currentBW – 1) ≥ threshold%} && {(sampledBW – currentBW) ≥ thresholdBW}
{(7 Mbps / 2 Mbps – 1) ≥ 0,1} && {(7 Mbps – 2 Mbps) ≥ 2 Mbps}
The signaled bandwidth is:
if (measuredBW ≥ maxBW) then signaledBW = maxBW
if (measuredBW < minBW) then signaledBW = minBW
else signaledBW = measuredBW
if (7 Mbps ≥ 20 Mbps) then signaledBW = 20 Mbps;
if (7 Mbps < 2 Mbps) then signaledBW = 2 Mbps;
else signaledBW = 7 Mbps
Display the auto-bandwidth data. The AB Adj Cause is now overflow. The overflow limit is the configured value of 1 (AB Ovfl Lmt). The overflow count has been reset (AB Ovfl Cnt = 0) after the auto-bandwidth was adjusted, along with the ABMaxAvgRt. This is the start of a new adjust-interval of 24 hours.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 7 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 11:34:14 AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 7 Mbps
AB Ovfl Lmt : 1 AB Ovfl Cnt : 0
ABOvflThres : 10 percent AB Ovfl BW : 2 Mbps
AB UndflLmt : 3 AB Undrfl Cnt : 0
ABUndflThrs : 10 percent AB Undrfl BW : 2 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : overflow AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
In the following example, the current bandwidth is 7 Mbps, but the bandwidth dropped to 4 Mbps and the conditions for underflow are met. At the end of a sample interval, the sampled bandwidth is reduced by at least 10% and at least 2 Mbps, and this becomes an underflow sample. The conditions for an underflow sample are:
{(1 - sampledBW / currentBW) ≥ threshold%} && {(currentBW – sampledBW) ≥ thresholdBW}
{(1 - 4 Mbps / 7 Mbps) ≥ 0,1} && {(7 Mbps – 4 Mbps) ≥ 2 Mbps}
The underflow limit equals 3, so an auto-bandwidth adjustment can only take place after the third consecutive underflow sample. The new bandwidth will equal the maximum sampled underflow bandwidth (ABMaxUndflBW). This is the maximum sampled bandwidth in the three consecutive underflow samples.
The signaled bandwidth is:
if (maxUnderflowBW ≥ maxBW) then signaledBW = maxBW
if (maxUnderflowBW < minBW) then signaledBW = minBW
else signaledBW = maxUnderflowBW
if (4 Mbps ≥ 20 Mbps) then signaledBW = 20 Mbps;
if (4 Mbps < 2 Mbps) then signaledBW = 2 Mbps;
else signaledBW = 4 Mbps
The following output shows the auto-bandwidth data after two consecutive underflow samples (AB Underfl Cnt: 2). The maximum sampled underflow bandwidth equals 4 Mbps. No bandwidth adaptation can take place until there are three consecutive underflow samples (AB UndflLmt: 3).
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 7 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 3 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 11:34:14 AB Next Adj : 1425 Mins
ABMaxAvgRt : 7 Mbps AB Lst AvgRt : 4 Mbps
AB Ovfl Lmt : 1 AB Ovfl Cnt : 0
ABOvflThres : 10 percent AB Ovfl BW : 2 Mbps
AB UndflLmt : 3 AB Undrfl Cnt : 2
ABUndflThrs : 10 percent AB Undrfl BW : 2 Mbps
ABMaxUndflBW : 4 Mbps
AB Adj Cause : overflow AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
After a successful auto-bandwidth adjustment, the ABMaxUndflBW is reset, along with the AB Adj Cnt, AB Underfl Cnt, and ABMaxAvgRt.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 4 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 11:54:14 AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 4 Mbps
AB Ovfl Lmt : 1 AB Ovfl Cnt : 0
ABOvflThres : 10 percent AB Ovfl BW : 2 Mbps
AB UndflLmt : 3 AB Undrfl Cnt : 0
ABUndflThrs : 10 percent AB Undrfl BW : 2 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : underflow AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
If the overload or underload trigger condition is met at the end of an adjust-interval, the auto-bandwidth adjustment is normal, based on the periodic trigger. Overflow and underflow auto-bandwidth adjustments only take place when the adjust-interval is not yet completed.
Auto-Bandwidth – Manual Trigger Type
As before, auto-bandwidth adjustment is disabled to revert to a bandwidth of 2 Mbps, as follows:
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" no auto-bandwidth
Afterward, auto-bandwidth adjustment is configured on PE-1, as follows:
# On PE-1:
configure
router "Base"
mpls
lsp "LSP-PE-1-PE-2"
auto-bandwidth
multipliers sample-multiplier 1 adjust-multiplier 288
adjust-up 10 bw 1
max-bandwidth 20
min-bandwidth 2
exit
The auto-bandwidth adjustment can be triggered manually at all times by the following command (with or without the keyword force).
# On PE-1:
tools perform router mpls adjust-autobandwidth
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2"
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2" force
When no specific LSP is referred to, auto-bandwidth is attempted on all LSPs. If the LSP already has the requested bandwidth, the following output is returned.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2"
MINOR: CLI No Thresholds crossed for lsp LSP-PE-1-PE-2.
By adding the keyword force, there is no check whether the thresholds are crossed. However, the granularity is 1 Mbps. In this case, it is not possible to signal a bandwidth that is at least 1 Mbps different, so the following error message is returned.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2" force
MINOR: CLI lsp LSP-PE-1-PE-2 active path is already at the requested value 10 Mbps.
If the first sample interval has not yet expired, the following error message is returned.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2"
MINOR: CLI No Autobandwidth Averages computed for lsp LSP-PE-1-PE-2.
If the tools command is launched after the first sample interval has expired (ABMaxAvgRt is filled in), the bandwidth can be adjusted. The AB Adj Cause is manual.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 10 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 1 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 12:09:16 AB Next Adj : 1435 Mins
ABMaxAvgRt : 10 Mbps AB Lst AvgRt : 10 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : manual AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
The counters are not reset after a manually triggered auto-bandwidth adjustment. The adjust-interval is not interrupted, the measured bandwidth and the maximum underflow bandwidth are not reset, and the overflow and underflow count are not reset.
Launch the tools command with the keyword force and a bandwidth value. This will set the current bandwidth to this value, even if the value is not within the allowed range between the minimum and maximum bandwidth.
# On PE-1:
tools perform router mpls adjust-autobandwidth lsp "LSP-PE-1-PE-2" force bandwidth 30
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 30 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 12:20:45 AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 0 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : manual AB Monitor BW : False
Be Weight : 100 percent Af Weight : 100 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
Manually triggered auto-bandwidth adjustments are also performed using MBB procedures.
Auto-Bandwidth Adjustment Based on Forwarding Class Subset
With the configuration applied so far, there is no distinction between traffic from different forwarding classes (FCs). The average data rate is the sum of the traffic from all eight FCs. From SR OS Release 11.0.R4 onward, it is possible to provide a sampling weight for each Forwarding Class (FC) for each auto-bandwidth LSP. The average data rate is now the weighted sum of the traffic from all FCs.
# On PE-1:
configure
router "Base"
mpls
lsp "LSP-PE-1-PE-2"
auto-bandwidth
fc be sampling-weight 50
fc af sampling-weight 80
exit
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 30 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 12:20:45 AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 0 Mbps
AB Ovfl Lmt : 0 AB Ovfl Cnt : 0
ABOvflThres : 0 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 0 AB Undrfl Cnt : 0
ABUndflThrs : 0 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : manual AB Monitor BW : False
Be Weight : 50 percent Af Weight : 80 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
The sampling-weight values can be changed while auto-bandwidth is enabled. The auto-bandwidth algorithm is reset on the LSP at the end of the current collection interval. At that time, the current bandwidth will not be adjusted and the following counters are reset to 0: sample count, adjust count, overflow count, underflow count, max average data rate, and max average underflow data rate.
Auto-Bandwidth on LSPs with Secondary Paths
When the active path goes down or becomes degraded, the bandwidth used to signal the auto-bandwidth MBB is the operational bandwidth of the previous active path. The parameter current-bandwidth requires a modified definition:
current-bandwidth — The last known reserved bandwidth for the LSP (this may be for a different path than the active one).
When the active path changes, the current bandwidth is updated to the operational bandwidth of the new active path. While the auto-bandwidth MBB on the active path is in progress, a statistics sample might be triggered because the intervals aren’t reset when the active path changes. It is possible that an auto-adjustment is needed. The in-progress auto-bandwidth MBB is restarted with retry attempts to 0 and signaled bandwidth equal to the new measured bandwidth. If after five attempts, auto-bandwidth MBB fails, the current bandwidth and secondary oper-bw remain unchanged.
For a secondary/standby path, if the active path changes without the LSP going down, an auto-bandwidth MBB is triggered for the new active path. The bandwidth used to signal the MBB is the operational bandwidth of the previous active path (current bandwidth).
If the primary path is not currently active, but it has not gone down, then any MBB should use the configured bandwidth for the primary path.
Create two new strict paths and assign them to the LSP. The primary path is the direct strict path from PE-1 to PE-2. There are two secondary paths: path-PE-1-PE-3-PE-2 and loose. The first one is standby, the latter is not.
# On PE-1:
configure
router "Base"
mpls
path "path-PE-1-PE-2"
hop 10 192.0.2.2 strict
no shutdown
exit
path "path-PE-1-PE-3-PE-2"
hop 10 192.0.2.3 strict
hop 20 192.0.2.2 strict
no shutdown
exit
lsp "LSP-PE-1-PE-2"
to 192.0.2.2
path-computation-method local-cspf
fast-reroute facility
no node-protect
exit
primary "loose" shutdown
no primary "loose"
primary "path-PE-1-PE-2"
adaptive
bandwidth 2
exit
secondary "path-PE-1-PE-3-PE-2"
adaptive
bandwidth 2
standby
exit
secondary "loose"
adaptive
bandwidth 2
exit
no shutdown
exit
Stop the auto-bandwidth MBB to have the current bandwidth equal to the bandwidth configured for the primary path (2 Mbps).
# On PE-1:
configure router "Base" mpls lsp "LSP-PE-1-PE-2" no auto-bandwidth
Configure auto-bandwidth with the following settings:
# On PE-1:
configure
router "Base"
mpls
lsp "LSP-PE-1-PE-2"
auto-bandwidth
multipliers sample-multiplier 1 adjust-multiplier 288
adjust-up 10 bw 1
max-bandwidth 20
min-bandwidth 2
overflow-limit 2 threshold 10
underflow-limit 3 threshold 10
fc be sampling-weight 50
fc af sampling-weight 80
exit
Initially, the current bandwidth is the configured bandwidth of the primary path: 2 Mbps, but in case of overflow, it is increased after two overflow samples (10 minutes).
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 5 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 12:44:14 AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 5 Mbps
AB Ovfl Lmt : 2 AB Ovfl Cnt : 0
ABOvflThres : 10 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 3 AB Undrfl Cnt : 0
ABUndflThrs : 10 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : overflow AB Monitor BW : False
Be Weight : 50 percent Af Weight : 80 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
Shut down port 1/1/c1/1 on PE-1 to initiate a failure on the primary path.
# On PE-1:
configure port 1/1/c1/1 shutdown
Verify that the secondary/standby path is now active.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" activepath
===============================================================================
MPLS LSP: LSP-PE-1-PE-2 (active paths)
===============================================================================
Legend :
# - Manually switched path
#F - Manually forced switched path
===============================================================================
LSP Name : LSP-PE-1-PE-2
LSP Id : 57386
Path Name : path-PE-1-PE-3-PE-2
Active Path : Standby
To : 192.0.2.2
LSP Type : dynamic
===============================================================================
Check the auto-bandwidth data on the LSP. The current bandwidth for the LSP is the same as it used to be for the primary path. AB Adj Cause = activePathChange.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 5 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 12:44:57 AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 5 Mbps
AB Ovfl Lmt : 2 AB Ovfl Cnt : 0
ABOvflThres : 10 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 3 AB Undrfl Cnt : 0
ABUndflThrs : 10 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : activePathChange AB Monitor BW : False
Be Weight : 50 percent Af Weight : 80 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
The original situation is restored.
# On PE-1:
configure port 1/1/c1/1 no shutdown
The primary path comes up again.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" activepath
===============================================================================
MPLS LSP: LSP-PE-1-PE-2 (active paths)
===============================================================================
Legend :
# - Manually switched path
#F - Manually forced switched path
===============================================================================
LSP Name : LSP-PE-1-PE-2
LSP Id : 57390
Path Name : path-PE-1-PE-2
Active Path : Primary
To : 192.0.2.2
LSP Type : dynamic
===============================================================================
The auto-bandwidth data again shows AB Adj Cause: activePathChange, but with a different timestamp.
*A:PE-1# show router mpls lsp "LSP-PE-1-PE-2" auto-bandwidth
===============================================================================
MPLS LSP (Auto Bandwidth)
===============================================================================
Legend :
+ - Inherited
===============================================================================
-------------------------------------------------------------------------------
Type : Originating
-------------------------------------------------------------------------------
LSP Name : LSP-PE-1-PE-2
Auto BW : Enabled AB OpState : Up
Auto BW Min : 2 Mbps Auto BW Max : 20 Mbps
AB Up Thresh : 10 percent AB Down Thresh : 5 percent
AB Up BW : 1 Mbps AB Down BW : 0 Mbps
AB Curr BW : 5 Mbps AB Samp Intv : 5 Mins
AB Adj Mul : 288 AB Samp Mul : 1
AB Adj Time : 1440 Mins AB Samp Time : 5 Mins
AB Adj Cnt : 0 AB Samp Cnt : 0
AB Last Adj : 03/14/2024 12:45:29 AB Next Adj : 1440 Mins
ABMaxAvgRt : 0 Mbps AB Lst AvgRt : 5 Mbps
AB Ovfl Lmt : 2 AB Ovfl Cnt : 0
ABOvflThres : 10 percent AB Ovfl BW : 0 Mbps
AB UndflLmt : 3 AB Undrfl Cnt : 0
ABUndflThrs : 10 percent AB Undrfl BW : 0 Mbps
ABMaxUndflBW : 0 Mbps
AB Adj Cause : activePathChange AB Monitor BW : False
Be Weight : 50 percent Af Weight : 80 percent
L1 Weight : 100 percent L2 Weight : 100 percent
Nc Weight : 100 percent Ef Weight : 100 percent
H1 Weight : 100 percent H2 Weight : 100 percent
Use Last Adj BW : Disabled
===============================================================================
Conclusion
Auto-bandwidth adjustment can be enabled on point-to-point LSPs in order to make a realistic bandwidth reservation, based on active iLER traffic monitoring. A user has control over how the bytes count for the different FCs by providing a sampling-weight factor. This can influence the average data rate over the sample interval.
The bandwidth is taken into account in the control plane when LSPs are established or when they change their bandwidth using MBB. The bandwidth in the data plane is not restricted by this setting.
Auto-bandwidth adjustment can be triggered in different ways: periodically, in case of overflow/underflow, manually, and in case of an active path change. It is also possible to have passive monitoring where no adjustment is done.