ON THIS PAGE
Example: Configuring Maximum Output Bandwidth
Scheduling the maximum output bandwidth for a queue (forwarding class) requires configuring both tiers of the hierarchical scheduler. One tier is scheduling the resources for the individual queue. The other tier is scheduling the resources for the priority group (forwarding class set) to which the queue belongs. You can use priority group and queue shaping to prevent traffic from using more bandwidth than you want the traffic to receive.
Configuring Maximum Bandwidth
CLI Quick Configuration
To quickly configure the maximum bandwidth for a priority group and a queue, copy the following commands, paste them in a text file, remove line breaks, change variables and details to match your network configuration, and then copy and paste the commands into the CLI at the [edit] hierarchy level:
[edit class-of-service] set schedulers be-sched shaping-rate percent 4g set traffic-control-profiles be-tcp shaping-rate 6g set scheduler-maps be-map forwarding-class best-effort scheduler be-sched set traffic-control-profiles be-tcp scheduler-map be-map set forwarding-class-sets be-pg class best-effort set interfaces xe-0/0/7 forwarding-class-set be-pg output-traffic-control-profile be-tcp
Step-by-Step Procedure
To configure the maximum bandwidth hierarchical scheduling for a queue and a priority group:
Configure the maximum queue bandwidth of 4 Gbps for scheduler
be-sched
:[edit class-of-service schedulers] user@switch# set be-sched shaping-rate 4g
Configure the maximum priority group bandwidth of 6 Gbps for traffic control profile
be-tcp
:[edit class-of-service traffic-control-profiles] user@switch# set be-tcp shaping-rate 6g
Associate the scheduler
be-sched
with thebest-effort
queue in the scheduler mapbe-map
:[edit class-of-service scheduler-maps] user@switch# set be-map forwarding-class best-effort scheduler be-sched
Associate the scheduler map with the traffic control profile:
[edit class-of-service traffic-control-profiles] user@switch# set be-tcp scheduler-map be-map
Assign the
best-effort
queue to the priority groupbe-pg
:[edit class-of-service forwarding-class-sets] user@switch# set be-pg class best-effort
Apply the configuration to interface
xe-0/0/7
:[edit class-of-service interfaces] user@switch# set xe-0/0/7 forwarding-class-set be-pg output-traffic-control-profile be-tcp
Requirements
This example uses the following hardware and software components:
One switch (this example was tested on a Juniper Networks QFX3500 Switch)
Junos OS Release 11.1 or later for the QFX Series or Junos OS Release 14.1X53-D20 or later for the OCX Series
Overview
The priority group maximum bandwidth defines the maximum total amount of bandwidth available for all of the queues in the priority group.
The shaping-rate
setting in the scheduler configuration determines the maximum bandwidth for an individual queue.
The shaping-rate
setting in the traffic control profile configuration determines the maximum bandwidth for a priority group.
When you configure bandwidth for a queue or a priority group, the switch considers only the data as the configured bandwidth. The switch does not account for the bandwidth consumed by the preamble and the interframe gap (IFG). Therefore, when you calculate and configure the bandwidth requirements for a queue or for a priority group, consider the preamble and the IFG as well as the data in the calculations.
When you set the maximum bandwidth (shaping-rate
) for a queue or for a priority group at 100 Kbps or less, the traffic shaping behavior is accurate only within +/– 20 percent of the configured shaping-rate
value.
This example describes how to:
Configure a maximum rate of 4 Gbps for queues in a scheduler named
be-sched
.Configure a maximum rate of 6 Gbps for a priority group in a traffic control profile named
be-tcp
.Assign the scheduler to a queue named
best-effort
by using a scheduler map namedbe-map
.Associate the scheduler map
be-map
with the traffic control profilebe-tcp
.Assign the queue
best-effort
to a priority group namedbe-pg
.Assign the priority group and the bandwidth scheduling to the interface
xe-0/0/7
.
Table 1 shows the configuration components for this example:
Component |
Settings |
---|---|
Hardware |
QFX3500 switch |
Maximum queue bandwidth |
Shaping rate: |
Maximum priority group bandwidth |
Shaping rate: |
Scheduler |
|
Scheduler map |
|
Traffic control profile |
|
Forwarding class set (priority group) |
|
Queue (forwarding class) |
|
Egress interface |
|
Verification
To verify the maximum output bandwidth configuration, perform these tasks:
- Verifying the Maximum Queue Bandwidth
- Verifying the Priority Group Maximum Bandwidth and Scheduler Map Association
- Verifying the Scheduler Map Configuration
- Verifying Queue (Forwarding Class) Membership in the Priority Group
- Verifying the Egress Interface Configuration
Verifying the Maximum Queue Bandwidth
Purpose
Verify that you configured the maximum queue bandwidth as 4g
in the scheduler be-sched
.
Action
List the maximum bandwidth in the be-sched
scheduler configuration using the operational mode command show configuration class-of-service schedulers be-sched shaping-rate
:
user@switch> show configuration class-of-service schedulers be-sched shaping-rate 4g;
Verifying the Priority Group Maximum Bandwidth and Scheduler Map Association
Purpose
Verify that the maximum priority group bandwidth is 6g
and the attached scheduler map is be-map
in the traffic control profile be-tcp
.
Action
List the maximum bandwidth in the be-tcp
traffic control profile configuration using the operational mode command show configuration class-of-service traffic-control-profiles be-tcp shaping-rate
:
user@switch> show configuration class-of-service traffic-control-profiles be-tcp shaping-rate 6g;
List the scheduler map in the be-tcp
traffic control profile configuration using the operational mode command show configuration class-of-service traffic-control-profiles be-tcp scheduler-map
:
user@switch> show configuration class-of-service traffic-control-profiles be-tcp scheduler-map scheduler-map be-map;
Verifying the Scheduler Map Configuration
Purpose
Verify that the scheduler map be-map
maps the forwarding class best-effort
to the scheduler be-sched
.
Action
List the be-map
scheduler map configuration using the operational mode command show configuration class-of-service schedulers maps be-map
:
user@switch> show configuration class-of-service scheduler-maps be-map forwarding-class best-effort scheduler be-sched;
Verifying Queue (Forwarding Class) Membership in the Priority Group
Purpose
Verify that the forwarding class set be-pg
includes the forwarding class best-effort
.
Action
List the be-pg
forwarding class set configuration using the operational mode command show configuration class-of-service forwarding-class-sets be-pg
:
user@switch> show configuration class-of-service forwarding-class-sets be-pg class best-effort;
Verifying the Egress Interface Configuration
Purpose
Verify that the forwarding class set be-pg
and the traffic control profile be-tcp
are attached to egress interface xe-0/0/7
.
Action
List the egress interface using the operational mode command show configuration class-of-service interfaces xe-0/0/7
:
user@switch> show configuration class-of-service interfaces xe-0/0/7 forwarding-class-set { be-pg { output-traffic-control-profile be-tcp; } }