Configuring QoS

Procedure
  1. Configure how local priority values are assigned to ingress packets with the commands qos cos-map , qos dscp-map, and qos trust.
  2. Optionally, add a rate limit for ingress traffic on one or more interfaces with the command rate-limit.
  3. If you do not want to use the default QoS queue profile to map local priority to queue, create one or more custom queue profiles with the command qos queue-profile. For each queue in a custom queue profile:
    1. Assign a local priority value with the command map queue.
    2. Optionally, define a descriptive name with the command name queue. All local priorities (0 to 7) must be mapped to a queue, and the queues selected for use must be in contiguous order starting at 0.
  4. If you do not want to use the default QoS schedule profile to determine the order in which queues are selected to transmit a packet, create one or more custom schedule profiles with the command qos schedule-profile. For each queue in a custom schedule queue profile, define scheduling priority with the commands strict queue and wfq queue.
  5. Optionally, create a threshold profile to limit throughput on one or more queues with the command qos threshold-profile. Assign threshold values to the queue with the command queue. Then, apply the profile with the command apply qoes threshold-profile
  6. Optionally for strict queues, configure egress queue shaping to limit egress bandwidth on an interface to a value that is less than its line rate. Use the max-bandwidth parameter of the strict queue command.
  7. Activate QoS settings with the command apply qos. This command lets you apply a queue profile and schedule profile globally to all interfaces, or a schedule profile override to individual interfaces.

    When applying QoS settings to a port configured to support priority-based flow control, specific configuration settings must be respected when defining a CoS map and queue profile. See the command flow-control in the ArubaOS-CX Command-Line Interface Guide for details.

  8. View QoS configuration settings with the provided show commands.

Examples

This example creates the following configuration:
  • Configures CoS to be used to assign local priority to ingress packets.
  • Modifies the default CoS map to assign CoS 1 to local priority 1.

  • Creates a queue profile named Q1 and assigns local priorities as follows:
    Queue Local Priority
    0 0
    1 1
    1 2
    3 3
    4 4
    5 5
    5 6
    5 7
  • Creates a schedule profile named S1 and assigns WFQ to all queues in the schedule profile with the following weights:
    Queue Weight
    0 5
    1 10
    3 15
    4 25
    5 50
  • Creates a threshold profile named T1 with the following limits:
    Queue Threshold
    4 40 KB
    5 50 KB

    Applies Q1 and S1 to all interfaces that do not have a QoS override applied.

    switch(config)# qos trust cos
    switch(config)# qos cos-map 1 local-priority 1
    switch(config)# qos queue-profile Q1
    switch(config)# map queue 0 local-priority 0
    switch(config)# map queue 1 local-priority 1
    switch(config)# map queue 1 local-priority 2
    switch(config)# map queue 3 local-priority 3
    switch(config)# map queue 4 local-priority 4
    switch(config)# map queue 5 local-priority 5
    switch(config)# map queue 5 local-priority 6
    switch(config)# map queue 5 local-priority 7
    switch(config)# qos schedule-profile S1
    switch(config)# wfq queue 0 weight 5
    switch(config)# wfq queue 1 weight 10
    switch(config)# wfq queue 3 weight 15
    switch(config)# wfq queue 4 weight 25
    switch(config)# wfq queue 5 weight 50
    switch(config)# qos threshold-profile T1
    switch(config-threshold)# queue 4 action ecn threshold 40 kbytes
    switch(config-threshold)# queue 5 action ecn threshold 50 kbytes
    switch(config-threshold)# exit
    switch(config)# apply qos threshold-profile T!
    switch(config)# wfq queue 5 weight 50
    switch(config)# apply qos queue-profile Q1 schedule-profile S1