5. Network Queue QoS Policies

This chapter provides information to configure network queue QoS policies using the command line interface.

Topics in this chapter include:

5.1. Overview

Network queue policies define the network queuing characteristics on the network adapter cards.

There is one default network queue policy. Each policy can have up to 16 ingress queues (8 unicast and 8 multipoint). The default policies cannot be deleted but can be copied and the copy can be modified. The default policies are identified as network-queue “default”.

Default network queue policies are applied to adapter card network ingress ports at the adapter card level, and to network egress ports at the port level. You must explicitly create and then associate other network queue QoS policies.

For information about the tasks and commands necessary to access the command line interface and to configure and maintain the 7705 SAR, refer to the 7705 SAR Basic System Configuration Guide, “CLI Usage”.

5.2. Basic Configuration

This section contains the following topics related to creating and applying network queue QoS policies:

A basic network queue QoS policy must conform to the following rules.

  1. Each network queue QoS policy must have a unique policy name.
  2. Queue parameters can be modified, but not deleted.

5.2.1. Configuring a Network Queue QoS Policy

Configuring and applying QoS policies other than the default policy is optional. A default network queue policy is applied to network ingress and network egress ports, as well as the ports on a ring adapter card, which includes the ring ports, the add/drop port, and the v-port. See Default Network Queue QoS Policy Values for default values.

Perform the following when creating a network queue policy.

  1. Enter a network queue policy name. The system does not dynamically assign a name.
  2. Include a description. The description provides a brief overview of policy features.
  3. Assign a forwarding class. You can assign a forwarding class to a specific queue after the queue has been created.

5.2.2. Creating a Network Queue QoS Policy

By default, all network queue policies are created with queue 1 and (multipoint) queue 9 applied to the policy. Similarly, when an FC is created within a network queue policy, the default unicast queue 1 and multicast queue 9 are assigned to the FC. The multipoint keyword applies to queues 9 to 16.

Use the following CLI syntax to create a network queue QoS policy.

CLI Syntax:
config>qos
network-queue policy-name
description description-string
fc fc-name
multicast-queue queue-id
queue queue-id
queue queue-id [multipoint] [queue-type]
adaptation-rule [pir adaptation-rule] [cir adaptation-rule]
cbs percent
high-prio-only percent
mbs percent
rate percent[cir percent]
slope-policy name

The following example creates a unicast and a multipoint network queue policy.

Example:
ALU-1# config>qos# network-queue NQ1 create
config>qos>network-queue$ description "NetQueue1"
config>qos>network-queue$ fc be create
config>qos>network-queue>fc$ exit
config>qos>network-queue# queue 10 multipoint create
config>qos>network-queue>queue# exit
config>qos>network-queue$ fc h1 create
config>qos>network-queue>fc$ multicast-queue 10
config>qos>network-queue>fc$ exit
config>qos>network-queue# exit
config>qos# exit
ALU-1#

The following output displays the configuration for NQ1.

ALU-1>config>qos# network-queue NQ1
ALU-1>config>qos>network-queue# info detail
----------------------------------------------
            description "NetQueue1" 
            queue 1 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 0
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 9 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 0
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 10 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 0
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            fc be create
                multicast-queue 9
                queue 1
            exit
            fc h1 create
                multicast-queue 10
                queue 1
            exit
----------------------------------------------
ALU-1>config>qos>network-queue#

5.2.3. Applying Network Queue QoS Policies

Apply network queue policies to the following entities:

5.2.3.1. Adapter Cards

Use the following CLI syntax to apply a network queue policy to any adapter card network ingress port or v-port on a ring adapter card. Use the ring command to apply a network queue policy to a ring add/drop port. You cannot assign a network queue policy to an add/drop port while the policy is referenced by a non-ring port, and vice-versa.

The first example applies a network queue policy to any network ingress port or v-port on a ring adapter card. The second example applies to network queue policy to an add/drop port.

CLI Syntax:
config>card
mda mda-slot
network
ingress
queue-policy name
ring
add-drop-port-queue-policy name
Example:
configure card 1
config>card# mda 1
config>card>mda# network
config>card>mda>network# ingress
config>card>mda>network>ingress# queue-policy NQ1
config>card>mda>network>ingress# exit
config>card>mda>network# exit
config>card>mda# exit
config>card# exit

The following output displays network ingress queue policy NQ1 applied to the adapter cards.

A:ALU-1# configure card 1
*A:ALU-1>config>card# info
----------------------------------------------
        card-type iom-sar
        mda 1
            mda-type a16-chds1
            network
                ingress
                    queue-policy "NQ1"
                exit
            exit
        exit
        mda 2
            mda-type a8-eth
            network
                ingress
                    queue-policy "NQ1"
                exit
            exit
        exit
        mda 3
            mda-type a8-eth
            network
                ingress
                    queue-policy "NQ1"
                exit
            exit
        exit
        mda 4
            mda-type a16-chds1
            network
                ingress
                    queue-policy "NQ1"
                exit
            exit
        exit
----------------------------------------------
*A:ALU-1>config>card#

Use the following CLI syntax to apply a network queue policy to the add/drop port. A network queue policy for an add/drop port applies to traffic flowing from the bridging domain to the IP domain (that is, from the add/drop port to the v-port).

Example:
config# card 1
config>card# mda 8
config>card>mda# network ring
config>card>mda>network>ring# add-drop-port-queue-policy “adp_queue_policy”

The following output displays the configuration for a network queue policy applied to the add/drop port.

*A:7705custDoc:Sar18>config>card>mda>network# info detail
----------------------------------------------
                ingress
                    fabric-policy 1
                    queue-policy "default"
                exit
                ring
                    qos-policy 5
                    add-drop-port-queue-policy "adp_queue_policy"
                exit
----------------------------------------------
*A:7705custDoc:Sar18>config>card>mda>network#

5.2.3.2. Network Ports

Use the following CLI syntax to apply network queue policy NQ1 to a network port.

CLI Syntax:
config>port#
  ethernet
network
queue-policy name
Example:
ALU-1# config# port 1/1/1
config>port# ethernet
config>port>ethernet# network
config>port>ethernet>network# queue-policy NQ1
config>port>ethernet>network# exit
ALU-1#

The following output displays a network port configuration.

*A:ALU-1>config>port# info
----------------------------------------------
        ethernet
            network
                queue-policy "NQ1"
            exit
        exit
        no shutdown
----------------------------------------------
*A:ALU-1>config>port#

Use the following CLI syntax to apply a network queue policy to v-port egress traffic.

A network queue policy for v-port egress traffic applies DSCP and LSP EXP classification to traffic flowing from the switching fabric in the IP domain towards the add/drop port in the bridging domain.

Example:
config# port 1/8/v-port
config>port# ethernet network
config>port>ethernet>network# queue-policy “egr_vp_q_policy”

The following output displays the configuration for an egress queue policy applied to the v-port.

*A:7705custDoc:Sar18>config>port>ethernet>network# info detail
----------------------------------------------
                queue-policy "egr_vp_q_policy"
                scheduler-mode 16-priority
----------------------------------------------

A network queue policy for a ring port must be configured as a ring type using the network-policy-type keyword. The policy operates on ring port egress traffic.

Use the following CLI syntax to apply a network queue policy to a ring port:

CLI Syntax:
config>port port-id
ethernet
network
queue-policy name
Example:
config# port 1/8/1
config>port# ethernet network
config>port>ethernet>network# queue-policy “NQpolicy5”

The following output displays the configuration for a network queue policy applied to a ring port.

*A:7705custDoc:Sar18>config>port>ethernet>network# info detail
----------------------------------------------
                queue-policy "NQpolicy5"
                scheduler-mode 16-priority
----------------------------------------------

5.2.4. Configuring Per-VLAN Network Egress Shapers

Per-VLAN network egress shapers can be configured for network interfaces. Refer to the 7705 SAR Router Configuration Guide for command descriptions.

The queue-policy command is used to enable and disable the network egress per-VLAN shapers on a per-interface basis. If the no queue-policy command is used, the VLAN (that is, the interface) defaults to unshaped mode. The agg-rate-limit command cannot be accessed unless a network queue policy is assigned to the interface.

Use the following CLI syntax to configure a per-VLAN network egress shaper on a network interface:

CLI Syntax:
config>router>interface#
egress
queue-policy name
agg-rate-limit agg-rate [cir cir-rate]

5.2.5. Configuring a CIR for Network Egress Unshaped VLANs

To provide arbitration between the bulk (aggregate) of unshaped VLANs and the shaped VLANs, assign a rate to the unshaped VLANs. Refer to the 7705 SAR Interface Configuration Guide for command descriptions.

Use the following CLI syntax to configure a CIR for the bulk of network egress unshaped VLANs:

CLI Syntax:
config>port>ethernet#
network
egress
unshaped-if-cir cir-rate

5.2.6. Default Network Queue QoS Policy Values

The default network queue policies are identified as policy-id default. The default policies cannot be modified or deleted. Table 38 displays default policy parameters.

Table 38:  Default Network Queue Policy Definition  

Forwarding Class

Queue

Definition

Queue

Definition

Network-Control (nc)

8

Rate = 100%

CIR = 10%

MBS = 2.5%

CBS = 0.25%

High-Prio-Only = 10%

16

Rate = 100%

CIR = 10%

MBS = 2.5%

CBS = 0.1%

High-Prio-Only = 10%

High-1 (h1)

7

Rate = 100%

CIR = 10%

MBS = 2.5%

CBS = 0.25%

High-Prio-Only = 10%

15

Rate = 100%

CIR = 10%

MBS = 2.5%

CBS = 0.1%

High-Prio-Only = 10%

Expedited (ef)

6

Rate = 100%

CIR = 100%

MBS = 5%

CBS = 0.75%

High-Prio-Only = 10%

14

Rate = 100%

CIR = 100%

MBS = 5%

CBS = 0.1%

High-Prio-Only = 10%

High-2 (h2)

5

Rate = 100%

CIR = 100%

MBS = 5%

CBS = 0.75%

High-Prio-Only = 10%

13

Rate = 100%

CIR = 100%

MBS = 5%

CBS = 0.1%

High-Prio-Only = 10%

Low-1 (l1)

4

Rate = 100%

CIR = 25%

MBS = 2.5%

CBS = 0.25%

High-Prio-Only = 10%

12

Rate = 100%

CIR = 5%

MBS = 2.5%

CBS = 0.25%

High-Prio-Only = 10%

Assured (af)

3

Rate = 100%

CIR = 25%

MBS = 5%

CBS = 0.75%

High-Prio-Only = 10%

11

Rate = 100%

CIR = 5%

MBS = 5%

CBS = 0.1%

High-Prio-Only = 10%

Low-2 (l2)

2

Rate = 100%

CIR = 25%

MBS = 5%

CBS = 0.25%

High-Prio-Only = 10%

10

Rate = 100%

CIR = 5%

MBS = 5%

CBS = 0.1%

High-Prio-Only = 10%

Best Effort (be)

1

Rate = 100%

CIR = 0%

MBS = 5%

CBS = 0.1%

High-Prio-Only = 10%

9

Rate = 100%

CIR = 0%

MBS = 5%

CBS = 0.1%

High-Prio-Only = 10%

The following output displays the network queue policy default configuration.

ALU-1>config>qos>network-queue# info detail
----------------------------------------------
            description "Default network queue QoS policy."
            queue 1 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 0
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 2 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 25
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.25
                high-prio-only 10
                slope-policy "default"
            exit
            queue 3 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 25
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.75
                high-prio-only 10
                slope-policy "default"
            exit
            queue 4 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 25
                adaptation-rule pir closest cir closest
                mbs 2.5
                cbs 0.25
                high-prio-only 10
                slope-policy "default"
            exit
            queue 5 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 100
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.75
                high-prio-only 10
                slope-policy "default"
            exit
            queue 6 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 100
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.75
                high-prio-only 10
                slope-policy "default"
            exit
            queue 7 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 10
                adaptation-rule pir closest cir closest
                mbs 2.5
                cbs 0.25
                high-prio-only 10
                slope-policy "default"
            exit
            queue 8 auto-expedite create
                no avg-frame-overhead
                rate 100 cir 10
                adaptation-rule pir closest cir closest
                mbs 2.5
                cbs 0.25
                high-prio-only 10
                slope-policy "default"
            exit
            queue 9 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 0
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 10 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 5
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 11 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 5
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 12 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 5
                adaptation-rule pir closest cir closest
                mbs 2.5
                cbs 0.25
                high-prio-only 10
                slope-policy "default"
            exit
            queue 13 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 100
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 14 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 100
                adaptation-rule pir closest cir closest
                mbs 5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 15 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 10
                adaptation-rule pir closest cir closest
                mbs 2.5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            queue 16 multipoint auto-expedite create
                no avg-frame-overhead
                rate 100 cir 10
                adaptation-rule pir closest cir closest
                mbs 2.5
                cbs 0.10
                high-prio-only 10
                slope-policy "default"
            exit
            fc af create
                multicast-queue 11
                queue 3
            exit
            fc be create
                multicast-queue 9
                queue 1
            exit
            fc ef create
                multicast-queue 14
                queue 6
            exit
            fc h1 create
                multicast-queue 15
                queue 7
            exit
            fc h2 create
                multicast-queue 13
                queue 5
            exit
            fc l1 create
                multicast-queue 12
                queue 4
            exit
            fc l2 create
                multicast-queue 10
                queue 2
            exit
            fc nc create
                multicast-queue 16
                queue 8

5.3. Service Management Tasks

This section describes the following service management tasks:

5.3.1. Deleting QoS Policies

A network queue policy is associated by default with adapter card network ingress ports. You can replace the default policy with a customer-configured policy, but you cannot entirely remove a QoS policy. When you remove a QoS policy, the policy association reverts to the default network-queue policy default.

Use the following CLI syntax to delete a network queue policy.

CLI Syntax:
config>qos# no network-queue policy-name
Example:
config>qos# no network-queue NQ1

5.3.2. Copying and Overwriting QoS Policies

You can copy an existing network queue policy, rename it with a new policy ID name, or overwrite an existing network queue policy. The overwrite option must be specified or an error occurs if the destination policy ID exists.

Use the following CLI syntax to overwrite an existing network queue policy.

CLI Syntax:
config>qos# copy network-queue source-policy-id dest-policy-id [overwrite]
Example:
A:ALU-1>config>qos# copy network-queue NQ1 NQ2 overwrite
config>qos# exit
*A:ALU-1#

The following output displays the copied policies:

*A:ALU-1>config>qos# info
----------------------------------------------
#--------------------------------------------------
echo "QoS Policy Configuration"
#--------------------------------------------------
        network-queue "NQ1" create
            description "NetQueue1"
            queue 1 create
                rate 10
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            queue 9 multipoint create
                rate 10
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            fc be create
                multicast-queue 9 
                queue 1
            exit
        exit
        network-queue "NQ2" create
            description "NetQueue1"
            queue 1 create
                rate 10
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            queue 9 multipoint create
                rate 10
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            fc be create
                multicast-queue 9
                queue 1
            exit
        exit
        network-queue "nq1" create
            description "NetQ1"
            queue 1 create
                rate 10
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            queue 9 multipoint create
                rate 10
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            fc be create
                multicast-queue 9 
                queue 1
            exit
        exit
        network-queue "nq3" create
            description "NetQ3"
            queue 1 create
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            queue 9 multipoint create
                rate 10
                mbs 5
                cbs 0.10
                high-prio-only 10
            exit
            fc be create
                multicast-queue 9 
                queue 1
            exit
        exit
network-queue "netq2" create
Press any key to continue (Q to quit)

5.3.3. Editing QoS Policies

You can change existing policies, except the default policies, and entries in the CLI. The changes are applied immediately to all interfaces where the policy is applied. To prevent configuration errors, use the copy command to make a duplicate of the original policy to a work area, make the edits, and then overwrite the original policy.