Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

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.

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.

Note

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.

Note

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 named be-map.

  • Associate the scheduler map be-map with the traffic control profile be-tcp.

  • Assign the queue best-effort to a priority group named be-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:

Table 1: Components of the Maximum Output Bandwidth Configuration Example

Component

Settings

Hardware

QFX3500 switch

Maximum queue bandwidth

Shaping rate: 4g

Maximum priority group bandwidth

Shaping rate: 6g

Scheduler

be-sched

Scheduler map

be-map

Traffic control profile

be-tcp

Forwarding class set (priority group)

be-pg

Queue (forwarding class)

best-effort

Egress interface

xe-0/0/7

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

To configure the maximum bandwidth hierarchical scheduling for a queue and a priority group:

  1. 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



  2. 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



  3. Associate the scheduler be-sched with the best-effort queue in the scheduler map be-map:
    [edit class-of-service scheduler-maps]

    user@switch# set be-map forwarding-class best-effort scheduler be-sched



  4. 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



  5. Assign the best-effort queue to the priority group be-pg:
    [edit class-of-service forwarding-class-sets]

    user@switch# set be-pg class best-effort



  6. 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



Verification

To verify the maximum output bandwidth configuration, perform these tasks:

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

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



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

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

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

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