Catalyst switch QoS is primarily based on the Layer 2 markings that are contained within a frame, i.e. the Class of Service (CoS) value. However, it can also be based on the Layer 3 markings contained within a packet, i.e. the IP Precedence or DSCP values. IP Precedence and DSCP were described in the previous section. The CoS value is contained in the VLAN field for 802.1Q and ISL-encapsulated frames.
IEEE 802.1Q inserts a 4 byte field into the original frame. The first 2 bytes are the Tag Protocol Identifier field, which is used to indicate an IEEE 802.1Q tag. The second 2 bytes are the Tag Control Information field. The TCI field contains a 3-bit User Priority field, referred to as the 802.1p priority field, which is used to implement CoS. This field is illustrated in Figure 10-6 below.
Figure 10-6: IEEE 802.1Q Class of Service Bits

Referencing Figure 10-6, the 3-bit User Priority (802.1p) field can be used to set eight (23) different binary values. These values are illustrated in Table 10-7 below, which also illustrates how these values are mapped to the decimal DSCP values and DSCP PHB sets.
Table 10-7: The Default CoS-To-DSCP Mappings
|
Layer 2 Cos |
Binary |
Layer 3 DSCP (Decimal) |
Layer 3 DSCP (PHB Set) |
|---|---|---|---|
|
0 |
000 |
0 |
Default |
|
1 |
001 |
8 |
CS1, AF11, AF12, AF13 |
|
2 |
010 |
16 |
CS2, AF21, AF22, AF23 |
|
3 |
011 |
24 |
CS3, AF31, AF32, AF33 |
|
4 |
100 |
32 |
CS4, AF41, AF42, AF43 |
|
5 |
101 |
40 |
CS5 |
|
6 |
110 |
48 |
CS 6 |
|
7 |
111 |
56 |
CS 7 |
There is also a CoS value contained in the ISL frame. Unlike 802.1Q, ISL prepends an ISL header to the Ethernet header. This is contained within the VLAN field as shown in Figure 10-7 below.
Figure 10-7: ISL Class of Service Bits

When using ISL, 3 bits within the VLAN field contain the priority bit setting. This allows for the same eight priority levels (23) supported by the 802.1Q standard and listed in Table 10-6.
NOTE: Newer Catalyst switches no longer support ISL and default to 802.1Q. These switches will ignore ISL because IEEE 802.1Q is the default. Therefore, you will almost always find documentation referring to 802.1Q/p, which indicates the User Priority bit in the 802.1Q frame. However, because ISL is still supported in some Cisco Catalyst switches, you should know it.
By default, QoS is disabled on Catalyst switches. In this default mode, all frames and packets received by the switch are passed through unaltered. For example, if a Catalyst switch receives a frame with a particular CoS value and an IP packet with a particular DSCP value, these received values are in no way modified by the switch and the frame and packet are transmitted with the same values.
However, in this default mode, it is important to know that all traffic, including real-time traffic such as voice, will be delivered on a best-effort basis and all traffic will use a single queue on the switch. The different queues will be described later in this chapter. This default behavior is verified using the show mls qos command as shown in Example 10-5 below.
Example 10-5: Verifying the Default QoS Configuration
| Catalyst-Switch-1#show mls qos QoS is disabled QoS ip packet dscp rewrite is enabled |
NOTE: Although the second statement states that DSCP rewrite is enabled, it is not. In other words, when QoS is enabled, the switch will not rewrite the DSCP value of received frames.
QoS is enabled on the switch by issuing the mls qos global configuration command. This configuration is illustrated in Example 10-6 below.
Example 10-6: Enabling QoS on the Switch
| Catalyst-Switch-1(config)#mls qos |
Once enabled, the show mls qos command can be used to verify this configuration. The output of this configuration once QoS is enabled is illustrated in Example 10-7 below.
Example 10-7: Verifying QoS Configuration on the Switch
| Catalyst-3750-1#show mls qos QoS is enabled QoS ip packet dscp rewrite is enabled |
When Quality of Service is enabled on the switch, all switch ports are considered untrusted. In this mode, the switch port will assign the incoming frame a CoS value based on a configured default CoS for the port or based on the internal mapping tables within the switch. The switch mapping tables are beyond the scope of the SWITCH exam requirements.
In Catalyst switches, the default CoS value assigned to an untrusted interface is 0; however, it can be set to any value manually defined by the administration. The packet DSCP value is also set based on the internal CoS-to-DSCP mapping table on the switch. The default CoS-to-DSCP mapping values are illustrated in Table 10-5.
For example, if the switch receives a frame from an untrusted access port with a CoS value of 3, it will reset the three 802.1Q/p priority bits contained in the frame to zero. The switch will use this value to derive the DSCP value based on the CoS-to-DSCP map that resides internally within the switch. Given that CoS 0 maps to DSCP 0, the DSCP of the packet is also set to zero. Example 10-8 below shows the default CoS value on an untrusted port when QoS is enabled globally and the port trust state is untrusted.
Example 10-8: Verifying the Default CoS on an Untrusted Interface
| Catalyst-Switch-1#show mls qos interface gigabitethernet 0/1 GigabitEthernet0/1 trust state: not trusted trust mode: not trusted COS override: dis default COS: 0 pass-through: none trust device: none |