MS Switch Quality of Service Defined
What is QoS?
QoS allows for prioritization of traffic within the network. The Differentiated Services Code Point (DSCP) bits in the packet header are set to inform the switches which Class-of-Service (CoS) queue should be used.
How does QoS work?
Administratively defined, QoS network rules in Dashboard inform the switch how DSCP tags should be assigned to incoming packets. QoS on a MS Switch will tag specific types of traffic that is incoming on switch ports and will prioritize traffic based on the assigned tag. These DSCP bits are mapped to specific layer-2 CoS queues on the switch. Once a packet is assigned a DSCP tag, it is placed into the corresponding layer-2 CoS queue for forwarding. The CoS values are queues, not bits in outgoing frames.
QoS guarantees a certain fraction of the uplink to each configured priority level when the link is congested. Frames in higher priority queues receive a bigger slice of bandwidth than those in a lower priority queue. If a queue is not fully utilized, the bandwidth will be used by other queues so that bandwidth is not wasted.
An MS network has 6 configurable CoS queues labeled 0-5. Each queue is serviced using FIFO. Without QoS enabled, all traffic is serviced in queue 0 (default class) using a FIFO model. The queues are weighted as follows:
CoS | Weight |
0 (default class) | 1 |
1 | 2 |
2 | 4 |
3 | 8 |
4 | 16 |
5 | 32 |
Suppose a switched environment where VoIP traffic should be in CoS queue 3, an enterprise application in CoS queue 2, and all of other traffic is unclassified. The percentage of bandwidth allocation can be calculated using the weight of the individual CoS queue as the numerator and the sum of all configured CoS queues as the denominator (in this example 8+4+1=13):
- VoIP would be guaranteed 8/13 or ~62% percent of the bandwidth. The switch would forward 8 frames from the CoS queue 3 and move to CoS queue 2.
- The enterprise application would be guaranteed 4/13 or ~30% bandwidth.The switch would forward 4 frames from the CoS queue 2 and move to the default queue.
- All other traffic would receive 1/13 or ~8% of the bandwidth. The switch would forward 1 frame from the default queue, then cycle back to CoS queue 3.
How is DSCP tagging handled?
The switch needs to know how to handle DSCP tagging of packets. DSCP tags can be added, modified or trusted. To determine how DSCP tagging should be applied, the switch uses QoS network rules. QoS network rules are user defined and processed in order from top to bottom. A rule can specify any combination of VLAN, protocol, source port, or destination port. Each rule maps to a DSCP setting which could be to trust incoming DSCP tags or set the DSCP tag. When an incoming packet matches a QoS traffic rule, the corresponding DSCP settings are applied. As soon as the first QoS rule is added, the switch will begin to trust DSCP bits on incoming packets that have a DSCP to CoS mappings. This rule is invisible and processed last. However if an incoming packet has a DSCP tag set but no matching QoS rule or DSCP to CoS mapping, it will be placed in the default queue.
Take our first example while using the default DSCP to CoS map in Dashboard. VoIP traffic is on VLAN 100. The VoIP phones apply a DSCP tag of 46 on each outgoing frame. The enterprise application connects to a server on the data VLAN 200 using TCP port 6000. It does not have a DSCP tag set on outgoing frames but need to be in CoS queue 2. Here are the QoS rules to meet this requirement.
Incoming packets on VLAN 100 will already have a DSCP tag of 46 so they are trusted. DSCP 46 maps to CoS queue 3. Incoming packets on VLAN 200 that have destination TCP port 6000 will be tagged with DSCP 26 and placed into CoS queue 2. All other data will be in the default queue.
Using QoS in Dashboard
To manage the QoS services on your MS network:
- Navigate to Switch > Configure > Switch settings. Find the section Quality of service.
- Click Add a QoS rule for this network.
- Click Edit DSCP to CoS map. From here map the DSCP tags used in your network to the desired CoS queue using the DSCP and CoS drop downs or use the default mappings.
Each DSCP to Class-of-Service mapping has three values.
- The DSCP value specifies the DSCP tag in the IP header that will be mapped to a particular CoS queue.
- The CoS value specifies the actual layer-2 CoS queue the DSCP value is mapped to. These are not bits set on outgoing frames.
- The Title is a label for the the mapping. The default mappings are shown in the screen shot below.
- Once the DSCP to CoS mapping are configured, create QoS network rules to specify which incoming packets should have DSCP applied.
- Once the rules are configured click Save Changes.