Service providers often used tiered services that must
provide bandwidth for excess traffic as traffic patterns vary. By
default, excess bandwidth between a configured guaranteed rate and
shaping rate is shared equally among all queues, which might not be
optimal for all subscribers to a service.
To manage excess bandwidth:
- Configure the parameters for the interface.
- Configure the shaping rate.
[edit class-of-service traffic-control-profiles profile-name]
user@host# set shaping-rate (percent percentage | rate) <burst-size bytes>
Tip: On MIC and MPC interfaces, the guaranteed rate and the
shaping rate share the value specified for the burst size. If the
guaranteed rate has a burst size specified, it is used for the shaping
rate; if the shaping rate has a burst size specified, it is used for
the guaranteed rate. If you have specified a burst for both rates,
the system uses the lesser of the two values.
- Configure the excess rate.
You can configure an excess rate for all priorities of traffic.
[edit class-of-service traffic-control-profiles profile-name]
user@host# set excess-rate (percent percentage | proportion value)
Optionally, you can configure an excess rate specifically for
high- and low-priority traffic. When you configure the excess-rate
statement for an interface, you cannot also configure the excess-rate-low
and excess-rate-high
statements.
[edit class-of-service traffic-control-profiles profile-name]
user@host# set excess-rate-high (percent percentage | proportion value)
user@host# set excess-rate-low (percent percentage | proportion value)
Best Practice: We recommend that you configure either a percentage
or a proportion of the excess bandwidth for all schedulers with the
same parent in the hierarchy. For example, if you configure interface
1.1 with twenty percent of the excess bandwidth, configure interface
1.2 with eighty percent of the excess bandwidth.
- (Optional) Configure parameters for the queue.
- Configure the shaping rate.
[edit class-of-service scheduler scheduler-name]
user@host#set shaping-rate (rate | $junos-cos-scheduler-shaping-rate) <burst-size bytes>
- Configure the excess rate.
[edit class-of-service scheduler scheduler-name]
user@host#set excess-rate (percent percentage | proportion value)
- (Optional) Configure the priority of excess bandwidth
for the queue.
[edit class-of-service scheduler scheduler-name]
user@host#set excess-priority (low | medium-low | medium-high | high | none)
Tip: For
queues, you cannot configure the excess rate in these cases:
When the transmit-rate exact
statement is configured.
In this case, the shaping rate is equal to the transmit rate and the
queue does not operate in the excess region.
When the scheduling priority is configured as strict-high
. In this case, the queue gets all available bandwidth and never
operates in the excess region.
By
default, when traffic exceeds the shaping or guaranteed rates, the
system demotes traffic configured with guaranteed high (GH) priority
and guaranteed medium (GM) priority. To disable priority demotion,
specify the none
option. You
cannot configure this option for queues configured with transmit-rate
expressed as a percent and when the parent’s guaranteed rate
is set to zero.
For example, the following statements establish a traffic
control profile with a shaping rate of 80 Mbps and an excess rate
of 100 percent.
[edit class-of-service traffic-control-profiles]
tcp-example-excess {
shaping-rate 80m;
excess-rate percent 100;
}
The following statements establish a scheduler with an
excess rate of 5 percent and a low priority for excess traffic.
[edit class-of-service scheduler]
example-scheduler {
excess-priority low;
excess-rate percent 5;
}