QoS

QoS

1. Function Overview

QoS (Quality of Service) is a technology for reserving a specified bandwidth for communications over a network, guaranteeing a fixed speed of communication.
Application data is classified and grouped, and then forwarded by group priority level, referring to the DSCP in the IP header or the CoS in the IEEE802.1Q tag.

2. Definition of Terms Used

CoS (IEEE 802.1p Class of Service)

This expresses priority as a 3-bit field in the VLAN tag header, with a value from 0–7.
Also called 802.1p user priority.

IP Precedence

This expresses priority as a 3-bit field in the TOS field of the IP header, with a value from 0–7.
Used to indicate the traffic class of the frame in question, for the device that receives the frame.

DSCP (Diffserv Code Point)

This expresses priority as a 6-bit field in the TOS field of the IP header, with a value from 0–63.
Since DSCP uses the same TOS field as IP precedence, it is compatible with IP-Precedence.
Used to indicate the traffic class of the frame in question, for the device that receives the frame.

Default CoS

This is the CoS value that is assigned to an untagged frame for the purpose of internal processing.

Transmission queue

This product has eight transmission queues per port. The transmission queues are numbered from ID 0–7, with larger ID numbers being given higher priority.

Trust mode

This indicates what will be the basis for deciding (trusting) the transmission queue ID.
This product can use the CoS value or DSCP value of the received frame to allocate the transmission queues.
The setting can be configured on a per-LAN/SFP port basis, and the default status (when QoS is enabled) is set to CoS.

Transmission queue ID conversion table

This is a conversion table used when deciding on the transmission queue ID from either the CoS value or the DSCP value.
There are two kinds of transmission queue ID conversion tables, the CoS-transmission queue ID conversion table and the DSCP-transmission queue ID conversion table. Each kind is used with its own trust mode.
Mapping can be freely changed by the user.

Port priority

This is the priority order assigned for each reception port. If the trust mode is “port priority,” frames received at that port are placed in the transmission queue according to the port’s priority setting.

3. Function Details

3.1. Enabling or disabling QoS control

When shipped from the factory, the QoS control of this product is set to disable.
To enable QoS control, use the qos enable command. To disable this, use the no qos command.
Most QoS control commands cannot be executed if QoS is not enabled.
The QoS function status can be checked using the show qos command.

3.2. QoS processing flow

The QoS processing flow is shown below.

image

3.3. Transmission queue assignments

When this product receives a frame, it determines the initial value of the transmission queue ID according to the CoS value or DSCP value within the frame and the port priority of the reception port.
Of the factors such as the frame’s CoS value and DSCP value, the port’s trust mode determines which factor will be the basis for determining the transmission queue.
The trust mode can be changed by the qos trust command. The default value (when QoS is enabled) is set to CoS.

The transmission queue is assigned per trust mode, using the following rules.

  • When trust mode is “CoS”

    • When the received frame is a frame with a VLAN tag, the CoS value within the tag is used to determine the transmission queue ID.

    • When the received frame is a frame without a VLAN tag, the default CoS that is managed by this product is used to determine the transmission queue ID.
      The default setting (when QoS is enabled) and the default CoS are set to “0”. The setting can be changed using the qos cos command.

    • Conversion from the CoS value to the transmission queue ID is performed by the CoS-transmission queue ID conversion table.
      One such table is maintained by the system, and with the default settings (when QoS is enabled), the settings are as follows. The setting can be changed using the qos cos-queue command.

      CoS value Transmission queue ID Traffic Type

      0

      2

      Best Effort

      1

      0

      Background

      2

      1

      Standard(spare)

      3

      3

      Excellent Effort(Business Critical)

      4

      4

      Controlled Load(Streaming Multimedia)

      5

      5

      Video(Interactive Media) less than 100 msec latency and jitter

      6

      6

      Voice(Interactive Media) less than 10 msec latency and jitter

      7

      7

      Network Control(Reserved Traffic)

  • When trust mode is “DSCP”

    • The DSCP value in the IP header is used to determine the transmission queue ID.

    • Conversion from the DSCP value to the transmission queue ID is performed by the DSCP-transmission queue ID conversion table.
      One such table is maintained by the system, and with the default settings (when QoS is enabled), the settings are as follows. The setting can be changed using the qos dscp-queue command.

      DSCP value Transmission queue ID Traffic Type

      0 - 7

      2

      Best Effort

      8 –15

      0

      Background

      16 - 23

      1

      Standard(spare)

      24 - 31

      3

      Excellent Effort(Business Critical)

      32 - 39

      4

      Controlled Load(Streaming Multimedia)

      40 - 47

      5

      Video(Interactive Media) less than 100 msec latency and jitter

      48 - 55

      6

      Voice(Interactive Media) less than 10 msec latency and jitter

      56 - 63

      7

      Network Control(Reserved Traffic)

  • When trust mode is “port priority”

    • The transmission queue ID is determined by the port priority.

    • By default (when QoS is enabled), port priority is set to 2. The setting can be changed using the qos port-priority-queue command.

3.4. Remark

The CoS value or DSCP value of the received frame is rewritten on a per-port basis.
Use this function to control the priority of frames received on a specific port.
Since remarking is performed before the transmission queue is reassigned, the CoS value or DSCP value after remarking is also used for priority control of this product.
If the trust mode is “port priority,” the transmission queue ID cannot be changed by the remarking.

3.5. Storing in the transmission queue

Frames are stored in the transmission queue that is finally determined through a series of QoS processing.
In order to resolve transmission queue congestion, this product provides a system to select and discard frames.

  • This product uses the tail drop method to resolve overflow in the transmission queue.
    Frames discarded by tail drop are counted by the frame counter.

  • It is not possible to change the threshold value for tail drop.

  • Each port shares the packet buffer, and the proportion of the packet buffer that can be used by the transmission queue on each port fluctuates depending on the usage status of the packet buffer.

  • You can use the show qos queue-counters command to check how much packet buffer is used by each transmission queue.

  • The usage of the transmission queue can be checked using the show qos queue-counters command.

  • The number of packets discarded by tail drop can be checked using the show interface, show frame-counter command.

3.6. Scheduling

Scheduling is used to determine what rules are used to send out the frames that are stored in the transmission queue.
Appropriate control of the scheduling along with the system to control congestion will help ensure QoS. (Inappropriate scheduling will result in degradation of QoS.)

This product supports two types of scheduling for the transmission queue, the strict priority system (SP) and the weighted round-robin (WRR) system.

  • Strict priority system (SP: Strict Priority) The higher the queue priority, the higher the transmission priority.
    When a frame is stored in a high-priority queue, it can never be transmitted from a lower-priority queue.

    image

  • Weighted round-robin system (WRR: Weighted Round Robin)
    Each queue is assigned a weight and transmits frames accordingly.
    Frames can also be transmitted from a lower-priority queue, within a specified percentage.
    Weights are determined according to the table below.

  • Weight of each transmission queue

    Transmission queue ID Weight Ratio

    7 (highest priority)

    4

    20%

    6

    4

    20%

    5

    3

    15%

    4

    3

    15%

    3

    2

    10%

    2

    2

    10%

    1

    1

    5%

    0 (lowest priority)

    1

    5%

image

The transmission queue settings are made for the entire system, not for each interface.
To configure the scheduling setting, use the qos scheduling command.
By default (when QoS is enabled), the scheduling setting is “WRR.”

3.7. Optimizing web conference application settings

QoS settings for web conference application software can be configured easily via the Web GUI.
By merely using simple operations to select the web conference application to use, communication can be prioritized for that web conference application, such as Zoom Meetings or Microsoft Teams.

  • Page for optimizing web conference application settings
    image

Optimizing web conference application settings involves configuring the following settings.

  • Enable QoS.

  • Set the trust mode for all ports to DSCP.

  • Assign the DSCP value for the web conference application to be optimized to a high-priority sending queue. The DSCP values used for web conference applications are indicated below.
    To use the web conference application settings to change the DSCP value used by the web conference application to a non-default value, use the qos dscp-queue command to change the link between the DSCP value and sending queue.

    • Zoom Meetings

      • 56 (Audio)

      • 40 (Video/Screen sharing)

    • Microsoft Teams

      • 46 (Audio)

      • 34 (Video)

      • 18 (Application/Screen sharing)

  • Assign the DSCP value not used by the web conference application being optimized to the lowest-priority sending queue.

  • Change the scheduling mode for all sending queues to the absolute priority method.

This web conference application setting optimization function includes functionality for configuring QoS settings for individual switches. To fully maximize the benefits of QoS settings, they must be configured for the entire network, including the router, at the same time.
If the DSCP value for the web conference application was changed to a non-default value, also change the DSCP sending queue assignment settings separately.

3.8. Separate table 1: Standard PHB (RFC recommended value)

PHB DSCP value RFC

Default

0

RFC2474

CS (Class Selector)

CS0

0

RFC2474

CS1

8

CS2

16

CS3

24

CS4

32

CS5

40

CS6

48

CS7

56

AF (Assured Forwarding)

AF11

10

RFC2597

AF12

12

AF13

14

AF21

18

AF22

20

AF23

22

AF31

26

AF32

28

AF33

30

AF41

34

AF42

36

AF43

38

4. Related Commands

Related commands are indicated below.
For details, refer to the Command Reference.

Operations Operating commands

Enabling or disabling QoS control

qos enable

Set default CoS

qos cos

Change trust mode

qos trust

Set CoS-transmission queue ID conversion table

qos cos-queue

Set DSCP-transmission queue ID conversion table

qos dscp-queue

Set port priority order

qos port-priority-queue

Set scheduling method

qos scheduling

Show status of QoS function setting

show qos

Show QoS information for LAN/SFP port

show qos interface

Show egress queue usage ratio

show qos queue-counters

Set remarking

remark

5. Examples of Command Execution

5.1. Priority control (SP) using DSCP values

This example allocates the transmission queue based on the DSCP value of the frame, for priority control (SP).
The SP priority control gives priority on the processing of frames with large DSCP values from LAN port #3.

  • DSCP priority control: setting example
    image

  1. Enable QoS and set the trust mode for the reception ports (LAN ports #1 and #2).

    Yamaha(config)#qos enable (1)
    Yamaha(config)#interface port1.1 (2)
    Yamaha(config-if)#qos trust dscp (3)
    Yamaha(config-if)#exit
    Yamaha(config)#interface port1.2 (4)
    Yamaha(config-if)#qos trust dscp (5)
    Yamaha(config-if)#exit
    1 Enable QoS
    2 Setting for LAN port #1
    3 Change the trust mode to DSCP
    4 Setting for LAN port #2
    5 Change the trust mode to DSCP
  2. Set the scheduling method.

    Yamaha(config)# qos scheduling sp

5.2. Priority control (WRR) using CoS values

This example allocates the transmission queue based on the CoS value of the frame, for priority control (WRR).

  • Priority control using CoS values: setting example
    image

  1. Enable QoS and set the trust mode for the reception ports (LAN ports #1 and #2).

    Yamaha(config)#qos enable (1)
    Yamaha(config)#interface port1.1 (2)
    Yamaha(config-if)#qos trust cos (3)
    Yamaha(config-if)#qos cos 2 (4)
    Yamaha(config-if)#exit
    Yamaha(config)#interface port1.2 (5)
    Yamaha(config-if)#qos trust cos (6)
    Yamaha(config-if)#qos cos 2 (7)
    Yamaha(config-if)#exit
    1 Enable QoS
    2 Setting for LAN port #1
    3 Change the trust mode to CoS
    4 Treat untagged frames as if they were received with a CoS value of 2
    5 Setting for LAN port #2
    6 Change the trust mode to CoS
    7 Treat untagged frames as if they were received with a CoS value of 2
  2. Set the scheduling method.

    Yamaha(config)# qos scheduling wrr

5.3. Priority control based on DSCP value assigned to each reception port

A DSCP value is assigned to each reception port, and the transmission queues are reassigned based on the DSCP values.
In the following example, frames received on LAN port #1 are stored in the highest-priority transmission queue (ID: 7, weight of 20%), frames received on LAN port #2 are stored in the second highest-priority transmission queue (ID: 5, weight of 15%), and frames received on LAN port #3 are stored in the transmission queue (ID: 2, weight 10%) whose priority is the lowest among the three LAN ports.

  • Priority control based on DSCP value assigned to each reception port: setting example
    image

  • Remarking settings for individual reception ports

    • Set the DSCP value for frames received on LAN port #1 (port1.1) to 56.

    • Set the DSCP value for frames received on LAN port #2 (port1.2) to 36.

    • Set the DSCP value for frames received on LAN port #3 (port1.3) to 0.

  1. Enable QoS and set the trust mode and remarking for the reception ports (LAN ports #1, #2, and #3).

    Yamaha(config)#qos enable (1)
    Yamaha(config)#interface port1.1 (2)
    Yamaha(config-if)#qos trust dscp (3)
    Yamaha(config-if)#remark dscp 56 (4)
    Yamaha(config-if)#exit
    Yamaha(config)#interface port1.2 (5)
    Yamaha(config-if)#qos trust dscp (6)
    Yamaha(config-if)#remark dscp 36 (7)
    Yamaha(config-if)#exit
    Yamaha(config)#interface port1.3 … (8)
    Yamaha(config-if)#qos trust dscp (9)
    Yamaha(config-if)#remark dscp 0 (10)
    Yamaha(config-if)#exit
    1 Enable QoS
    2 Setting for LAN port #1
    3 Change the trust mode to “DSCP”
    4 Set the DSCP value for frames received on LAN port #1 to 56
    5 Setting for LAN port #2
    6 Change the trust mode to “DSCP”
    7 Set the DSCP value for frames received on LAN port #1 to 36
    8 Setting for LAN port #3
    9 Change the trust mode to “DSCP”
    10 Set the DSCP value for frames received on LAN port #1 to 0

5.4. Priority control using port priority trust mode

The transmission queue is determined according to the port priority order that is specified for each reception port.

  • Priority control using port priority: setting example
    image

  • Set priority for each reception port

    • Set LAN port #1 (port1.1) to priority order 6.

    • Set LAN port #2 (port1.2) to priority order 4.

    • Set LAN port #3 (port1.3) to priority order 2.

  1. Enable QoS and set the trust mode for the reception ports (LAN ports #1, #2, and #3).

    Yamaha(config)#qos enable (1)
    Yamaha(config)#interface port1.1 (2)
    Yamaha(config-if)#qos trust port-priority (3)
    Yamaha(config-if)#qos port-priority-queue 6 (4)
    Yamaha(config-if)#exit
    Yamaha(config)#interface port1.2 (5)
    Yamaha(config-if)#qos trust port-priority (6)
    Yamaha(config-if)#qos port-priority-queue 4 (7)
    Yamaha(config-if)#exit
    Yamaha(config)#interface port1.3 (8)
    Yamaha(config-if)#qos trust port-priority (9)
    Yamaha(config-if)#qos port-priority-queue 2 (10)
    Yamaha(config-if)#exit
    1 Enable QoS
    2 Setting for LAN port #1
    3 Change the trust mode to “port priority”
    4 Set the port priority to 6
    5 Setting for LAN port #2
    6 Change the trust mode to “port priority”
    7 Set the port priority to 4
    8 Setting for LAN port #3
    9 Change the trust mode to “port priority”
    10 Set the port priority to 2

6. Points of Caution

  • If QoS settings are applied to LAN/SFP ports belonging to a logical interface, the settings applied to the port with the lowest port number of the logical interface will also be applied to the other ports belonging to that logical interface.

8. Trademarks and Trade Names

  • Zoom is a trademark or registered trademark of Zoom Video Communications, Inc. in the United States and other countries.

  • Microsoft Teams is a trademark or registered trademark of Microsoft Corporation in the United States and other countries.