I’ve had some people suggest that I should post more of my study notes. QoS is one of those black magic topics that I really do need to understand more of. I went through with one of my co-workers who gave me the Catalyst 3750 QoS in 30 lecture. Between that and some of Jerome Henry’s QoS videos on youtube, here the basics on QoS. So here are my notes in all their ugly glory.
Controller QoS
Set 802.1p on QoS Profile(s)
Voice gets 802.1P 6
Video gets 802.1P 5
Silver gets 802.1P 4
—Each one gets marked down by one when it hits the wire. WLC does this automagically
Set your WLAN Qos Level on each WLAN. These are the MAXIMUM levels that will be coming off this WLAN.
Go set your voice CAC under the media section for each radio
Switching QoS
—————————————
Set qos maps
————————————-
<Check the mappings. We need DSCP 46 COS 5 and DSCP 24 COS3 for Voice.>
#show mls qos map cos-dscp
Cos-dscp map:
cos: 0 1 2 3 4 5 6 7
——————————–
dscp: 0 8 16 24 32 40 48 56
Cos-dscp map:
cos: 0 1 2 3 4 5 6 7
——————————–
dscp: 0 8 16 24 32 40 48 56
#show mls qos map dscp-cos
Dscp-cos map:
d1 : d2 0 1 2 3 4 5 6 7 8 9
—————————————
0 : 00 00 00 00 00 00 00 00 01 01
1 : 01 01 01 01 01 01 02 02 02 02
2 : 02 02 02 02 03 03 03 03 03 03
3 : 03 03 04 04 04 04 04 04 04 04
4 : 05 05 05 05 05 05 05 05 06 06
5 : 06 06 06 06 06 06 07 07 07 07
6 : 07 07 07 07
Dscp-cos map:
d1 : d2 0 1 2 3 4 5 6 7 8 9
—————————————
0 : 00 00 00 00 00 00 00 00 01 01
1 : 01 01 01 01 01 01 02 02 02 02
2 : 02 02 02 02 03 03 03 03 03 03
3 : 03 03 04 04 04 04 04 04 04 04
4 : 05 05 05 05 05 05 05 05 06 06
5 : 06 06 06 06 06 06 07 07 07 07
6 : 07 07 07 07
(config)# mls qos map cos-dscp 0 8 16 24 32 46 48 56
#show mls qos map cos-dscp
Cos-dscp map:
cos: 0 1 2 3 4 5 6 7
——————————–
dscp: 0 8 16 24 32 46 48 56
Cos-dscp map:
cos: 0 1 2 3 4 5 6 7
——————————–
dscp: 0 8 16 24 32 46 48 56
#show mls qos map dscp-cos
Dscp-cos map:
d1 : d2 0 1 2 3 4 5 6 7 8 9
—————————————
0 : 00 00 00 00 00 00 00 00 01 01
1 : 01 01 01 01 01 01 02 02 02 02
2 : 02 02 02 02 03 03 03 03 03 03
3 : 03 03 04 04 04 04 04 04 04 04
4 : 05 05 05 05 05 05 05 05 06 06
5 : 06 06 06 06 06 06 07 07 07 07
6 : 07 07 07 07
Dscp-cos map:
d1 : d2 0 1 2 3 4 5 6 7 8 9
—————————————
0 : 00 00 00 00 00 00 00 00 01 01
1 : 01 01 01 01 01 01 02 02 02 02
2 : 02 02 02 02 03 03 03 03 03 03
3 : 03 03 04 04 04 04 04 04 04 04
4 : 05 05 05 05 05 05 05 05 06 06
5 : 06 06 06 06 06 06 07 07 07 07
6 : 07 07 07 07
—————————————
Queuing Sets
————————————-
(config)#mls qos srr-queue input bandwidth 20 80
(config)#mls qos srr-queue input buffers 20 80
(config)#mls qos srr-queue input priority-queue 1 bandwidth 20
(config)#mls qos srr-queue input cos-map queue 1 threshold 3 3 4 5 6 7
(config)#mls qos srr-queue input cos-map queue 2 threshold 3 0 1 2
(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 34 40 41 42 43 44 45 46
(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 47 48 49 50 51 52 53 54
(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 55 56 57 58 59 60 61 62
(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 63
(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 47 48 49 50 51 52 53 54
(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 55 56 57 58 59 60 61 62
(config)#mls qos srr-queue input dscp-map queue 1 threshold 3 63
>
mls qos srr-queue output cos-map queue 1 threshold 3 4 5
mls qos srr-queue output cos-map queue 2 threshold 3 3 6 7
mls qos srr-queue output cos-map queue 3 threshold 3 1 2
mls qos srr-queue output cos-map queue 4 threshold 3 0
mls qos srr-queue output dscp-map queue 1 threshold 3 46
mls qos srr-queue output dscp-map queue 2 threshold 1 16 18 20 22 26 32 34 36
mls qos srr-queue output dscp-map queue 2 threshold 1 38
mls qos srr-queue output dscp-map queue 2 threshold 2 24
mls qos srr-queue output dscp-map queue 2 threshold 3 48 56 58 59 60 61 62 63
mls qos srr-queue output dscp-map queue 3 threshold 3 0
mls qos srr-queue output dscp-map queue 4 threshold 1 8
mls qos srr-queue output dscp-map queue 2 threshold 1 16 18 20 22 26 32 34 36
mls qos srr-queue output dscp-map queue 2 threshold 1 38
mls qos srr-queue output dscp-map queue 2 threshold 2 24
mls qos srr-queue output dscp-map queue 2 threshold 3 48 56 58 59 60 61 62 63
mls qos srr-queue output dscp-map queue 3 threshold 3 0
mls qos srr-queue output dscp-map queue 4 threshold 1 8
mls qos queue-set output 1 threshold 2 70 80 100 100
Layer 2 Trunk Config
This can be on a single port, or a port channel
(config-if)#mls qos trust cos
(config-if)#srr-queue bandwidth share 10 10 60 20
(config-if)#srr-queue bandwidth shape 10 0 0 0
(You can put in Priority Queue Out, but it overrides ALL the srr-queue commands on the port)
(config-if)# priority-queue Out
Local Mode AP Port config
I’ll be skipping any STP, general port config as this is all about QoS
(config-if)#mls qos trust dscp
(config-if)# srr-queue bandwidth share 10 10 60 20
(config-if)# srr-queue bandwidth shape 10 0 0 0
(config-if)# priority-queue out
Flexconnect AP Port Config
(config-if)# mls qos trust cos
Layer3 routed link
Since a layer 3 link doesn’t have an 802.1P header, trust DSCP
(config-if)# mls qos trust dscp
Cisco Phone
This one will be debated I’m sure. I trust CoS and device Cisco-phone for a couple reasons. 1, I don’t want to trust the PC, and trust DSCP will make me trust the pc plugged into the phone. Second, i’m defining a voice vlan for the phone, so it will be sending me a 802.1P tag. And finally, it’s what they suggested in the Campus QoS class at Cisco Live 😉
(config-if)#mls qos trust device cisco-phone
(config-if)# mls qos trust cos