4. Network QoS Policies

This chapter provides information to configure network QoS policies using the command line interface (CLI).

Topics in this chapter include:

4.1. Overview

The network QoS policy consists of an ingress and egress component for interfaces in the IP domain, and a ring component for interfaces in the bridging domain.

The ingress component of the QoS policy defines how DSCP bits (for GRE and IP) and multiprotocol label switching (MPLS) Experimental (EXP) bits are mapped to internal forwarding class and profile state. The forwarding class and profile state define the per-hop behavior (PHB) or the QoS treatment through the 7705 SAR.

The egress component of the QoS policy defines the DSCP bit, MPLS EXP bit, and the dot1p marking based on the forwarding class and the profile state.

The ring component of the QoS policy defines how dot1p bits are mapped to network queue and profile state.

The mapping on each network interface defaults to the mappings defined in the default network QoS policy until an explicit policy is defined for the network interface. Network policy-id 1 exists as the default policy that is applied to all network interfaces by default. The network policy-id 1 cannot be modified or deleted. For the ingress, it defines the default DSCP-to-FC and profile state, and MPLS EXP-to-FC and profile state mappings. For the egress, it defines eight forwarding classes and profile states that represent the packet marking criteria. For the ring, it defines eight dot1p-to-queue and profile state mappings.

New (non-default) network policy parameters can be modified. The no form of the command reverts to the default values.

Changes made to a policy are applied immediately to all network interfaces where the policy is applied. For this reason, when a policy requires several changes, it is recommended that you copy the policy to a work area policy-id. The work-in-progress copy can be modified until all the changes are made, and then the original policy-id can be overwritten with the config qos copy command.

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

4.2. Basic Configuration

This section contains the following topics related to creating and applying network QoS policies for the IP domain and the bridging domain:

A basic network QoS policy must conform to the following rule.

  1. Each network QoS policy must have a unique policy ID.

4.2.1. Configuring a Network QoS Policy

Configuring and applying QoS policies other than the default policy is optional.

Define the following parameters to configure a network QoS policy (see Default Network QoS Policy Values for default values):

  1. a network policy ID value — the system does not dynamically assign a value
  2. a network policy type — the type of network policy can be ip-interface for IP domain policies (to configure ingress and egress criteria), or ring for bridging domain policies (to configure ring criteria), or default (to set any network policy to its default values)
  3. a description — a text string description of policy features
  4. scope — the policy scope as exclusive or template
  5. egress criteria — you can modify egress criteria to customize the forwarding class to be instantiated. Otherwise, the default values are applied.
    1. dot1p — the dot1p-in-profile and dot1p-out-profile mapping for the forwarding class
    2. DSCP — the DSCP value is used for all GRE and IP packets (in or out of profile) requiring marking that egress on this forwarding class
    3. LSP EXP — the EXP value is used for all MPLS labeled packets (in or out of profile) requiring marking that egress on this forwarding class
  6. ingress criteria — the DSCP to forwarding class mapping for all GRE and IP packets and the MPLS EXP bits to forwarding class mapping for all labeled packets
    1. default-action — the default action to be taken for packets that have undefined DSCP or MPLS EXP bits set. The default-action specifies the forwarding class to which such packets are assigned. The default-action is automatically created when the policy is created.
    2. DSCP —  a mapping between the DSCP bits of the network ingress traffic and the forwarding class. Ingress traffic that matches the specified DSCP bits will be assigned to the corresponding forwarding class.
    3. LSP EXP — a mapping between the LSP EXP bits of the network ingress traffic and the forwarding class. Ingress traffic that matches the specified LSP EXP bits will be assigned to the corresponding forwarding class.
  7. ring criteria — the dot1p-to-queue mapping for all packets arriving on a bridging domain port (that is, a ring port or the add/drop port)
    1. default-action — the default action to be taken for packets that have undefined dot1p bits set. The default-action specifies the queue to which such packets are assigned and the profile state of the packets. The default-action is automatically created when the policy is created.
    2. dot1p — a mapping of the dot1p bits of the ingress traffic to the queue and the profile state

4.2.2. Creating a Network QoS Policy

Configuring and applying network QoS policies other than the default policy is optional.

Use the following CLI syntax to create a network QoS policy for router interfaces (ip-interface type) and ring port (ring type).

The ip-interface keyword is optional for router interface network policies.

Use the ring keyword to create a network QoS policy that can be applied to a bridging domain port (that is, a ring port or the add/drop port). Up to eight dot1p-to-queue and profile mappings can be defined under the ring command.

CLI Syntax:
config>qos#
network network-policy-id [create] [network-policy-type {ip-interface | ring | default}]
description description-string
scope {exclusive|template}
egress
fc {be|l2|af|l1|h2|ef|h1|nc}
dot1p dot1p-priority
dot1p-in-profile dot1p-priority
dot1p-out-profile dot1p-priority
dscp-in-profile dscp-name
dscp-out-profile dscp-name
lsp-exp-in-profile lsp-exp-value
lsp-exp-out-profile lsp-exp-value
ingress
default-action fc {be|l2|af|l1|h2|ef|h1|nc} profile {in|out}
dscp dscp-name fc {be|l2|af|l1|h2|ef|h1|nc} profile {in|out}
ler-use-dscp
lsp-exp lsp-exp-value fc fc-name profile {in|out}
ring
default-action queue queue-id profile {in | out}
dot1p dot1p-priority queue queue-id profile {in|out}
exit
Example:
configure qos network 700 create network-policy-type ip-interface
config>qos>network$ description "Net Policy"
config>qos>network$ scope template
config>qos>network$ egress fc be
config>qos>network>egress>fc$ dot1p 1
config>qos>network>egress>fc$ lsp-exp-in-profile 2
config>qos>network>egress>fc$ lsp-exp-out-profile 3
config>qos>network>egress>fc$ exit
config>qos>network$ ingress
config>qos>network>ingress$ default-action fc be profile in
config>qos>network>ingress$ exit
config>qos>network$ exit

The following output displays the configuration for an ip-interface type network policy 700:

*A:ALU-1>config>qos# info
---------------------------------------------------
echo "QoS Policy Configuration"
#--------------------------------------------------
network 700 network-policy-type ip-interface create
            description "Net Policy"
            ingress
                default-action fc be profile in
            exit
            egress
                fc be
                    lsp-exp-in-profile 2
                    lsp-exp-out-profile 3
                    dot1p-in-profile 1
                    dot1p-out-profile 1
                exit
            exit
        exit
---------------------------------------------------

The following example creates a ring type network QoS policy on the 2-port 10GigE (Ethernet) Adapter card or 2-port 10GigE (Ethernet) module.

Example:
config>qos>network 5 network-policy-type ring create
config>qos>network>ring# default-action queue 1 profile out
config>qos>network>ring# dot1p 1 queue 4 profile in
config>qos>network>ring# dot1p 5 queue 6 profile out
config>qos>network>ring# exit
config>qos>network# scope template
config>qos>network# exit

The following output displays the configuration for ring network policy 5:

*A:7705custDoc:Sar18>config>qos>network# info detail
----------------------------------------------
            no description
            scope template
            ring
                default-action queue 1 profile out
                dot1p 1 queue 4 profile in
                dot1p 5 queue 6 profile out
            exit
----------------------------------------------
*A:7705custDoc:Sar18>config>qos>network#

4.2.3. Applying Network QoS Policies

You can apply network QoS policies to router interfaces and a ring adapter card.

Use the following CLI syntax to apply network policies to router interfaces:

CLI Syntax:
config>router
interface interface-name
qos network-policy-id
Example:
config>router# interface ALU-1
config>router>if$ qos 700
config>router>if$ exit

The following output displays the configuration for router interface ALU-1 with network policy 700 applied to the interface.

A:ALU-1>config>router# info
#--------------------------------------------------
echo "IP Configuration"
#--------------------------------------------------
        interface "ALU-1"
            qos 700
        exit
        interface "ip-100.0.0.2"
            address 100.10.0.2/10
        exit
---------------------------------------------------

Use the following CLI syntax to apply a ring type network policy to a ring adapter card. Applying the policy to the card means that the policy is applied to ingress traffic of the ring ports and the add/drop port:

CLI Syntax:
config>card>mda>network
ring
qos-policy network-policy-id
Example:
config# card 1
config>card# mda 8
config>card>mda# network ring
config>card>mda>network>ring# qos-policy 5

The following output displays the configuration for ring type network policy 5 applied to a ring adapter card.

*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 "default"
                exit
----------------------------------------------
*A:7705custDoc:Sar18>config>card>mda>network#

4.2.4. Default Network QoS Policy Values

The default network policy is identified as policy-id 1. Default policies cannot be modified or deleted. Table 25, Table 26, and Table 27 (found in the section on Network and Network Queue QoS Policies) list the default network QoS policy parameters for ingress, egress, and ring policies.

The following output displays the default network policy configuration:

A:ALU-1>config>qos>network# info detail
----------------------------------------------
            description "Default network QoS policy."
            scope template
            ingress
                default-action fc be profile out
                dscp be fc be profile out
                dscp ef fc ef profile in
                dscp cs1 fc l2 profile in
                dscp nc1 fc h1 profile in
                dscp nc2 fc nc profile in
                dscp af11 fc af profile in
                dscp af12 fc af profile out
                dscp af13 fc af profile out
                dscp af21 fc l1 profile in
                dscp af22 fc l1 profile out
                dscp af23 fc l1 profile out
                dscp af31 fc l1 profile in
                dscp af32 fc l1 profile out
                dscp af33 fc l1 profile out
                dscp af41 fc h2 profile in
                dscp af42 fc h2 profile out
                dscp af43 fc h2 profile out
                no ler-use-dscp
                lsp-exp 0 fc be profile out
                lsp-exp 1 fc l2 profile in
                lsp-exp 2 fc af profile out
                lsp-exp 3 fc af profile in
                lsp-exp 4 fc h2 profile in
                lsp-exp 5 fc ef profile in
                lsp-exp 6 fc h1 profile in
                lsp-exp 7 fc nc profile in
            exit
            egress
                fc af
                    dscp-in-profile af11
                    dscp-out-profile af12
                    lsp-exp-in-profile 3
                    lsp-exp-out-profile 2
                    dot1p-in-profile 2
                    dot1p-out-profile 2
                exit
                fc be
                    dscp-in-profile be
                    dscp-out-profile be 
                    lsp-exp-in-profile 0
                    lsp-exp-out-profile 0
                    dot1p-in-profile 0
                    dot1p-out-profile 0
                exit
                fc ef
                    dscp-in-profile ef
                    dscp-out-profile ef
                    lsp-exp-in-profile 5
                    lsp-exp-out-profile 5
                    dot1p-in-profile 5
                    dot1p-out-profile 5
                exit
                fc h1
                    dscp-in-profile nc1
                    dscp-out-profile nc1
                    lsp-exp-in-profile 6
                    lsp-exp-out-profile 6
                    dot1p-in-profile 6
                    dot1p-out-profile 6
                exit
                fc h2
                    dscp-in-profile af41
                    dscp-out-profile af42
                    lsp-exp-in-profile 4
                    lsp-exp-out-profile 4
                    dot1p-in-profile 4
                    dot1p-out-profile 4
                exit
                fc l1
                    dscp-in-profile af21
                    dscp-out-profile af22
                    lsp-exp-in-profile 3
                    lsp-exp-out-profile 2
                    dot1p-in-profile 3
                    dot1p-out-profile 3
                exit
            exit
            ring
                default-action queue 1 profile out
                dot1p 0 queue 1 profile out
                dot1p 1 queue 2 profile in
                dot1p 2 queue 3 profile out
                dot1p 3 queue 3 profile in
                dot1p 4 queue 5 profile in
                dot1p 5 queue 6 profile in
                dot1p 6 queue 7 profile in
                dot1p 7 queue 8 profile in
            exit
----------------------------------------------

4.3. Service Management Tasks

This section describes the following service management tasks:

4.3.1. Deleting QoS Policies

A network policy is associated by default with router interfaces. You can replace the default policy with a non-default policy, but you cannot entirely remove the policy from the configuration. When you remove a non-default policy, the policy association reverts to the default network policy-id 1.

Use the following syntax to delete a network policy.

CLI Syntax:
config>qos# no network network-policy-id
Example:
config>qos# no network 700

4.3.2. Copying and Overwriting Network Policies

You can copy an existing network policy to a new policy ID value or overwrite an existing policy ID. The overwrite option must be specified or an error occurs if the destination policy ID exists.

Use the following syntax to overwrite an existing policy ID.

CLI Syntax:
config>qos# copy network source-policy-id dest-policy-id [overwrite]
Example:
config>qos# copy network 1 600
  config>qos# copy slope-policy 600 700
  MINOR: CLI Destination "700" exists use {overwrite}.
  config>qos# copy slope-policy 600 700 overwrite
  config>qos#

The following output displays copied policies:

ALU-12>config>qos# info detail
---------------------------------------------
...
        network 1 create
            description "Default network QoS policy."
            scope template
            ingress
                default-action fc be profile out
...
        network 600 create
            description "Default network QoS policy."
            scope template
            ingress
                default-action fc be profile out
...
        network 700 create
            description "Default network QoS policy."
            scope template
            ingress
                default-action fc be profile out
...
---------------------------------------------
ALU-12>config>qos# 

4.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 in a work area, make the edits, and then overwrite the original policy.