How to configure Queuing on Cisco 3560 and 3750 switch

(Rene Molenaar) #1

This topic is to discuss the following lesson:

(system) #2

Very good post.
I just wonder if the bandwith concerned by weigthing ingress trafic is really the interface bandwidth or the internal ring ( or stack ring) bandwidth.
“The command makes queue 1 the priority queue and limits it to 20% of the bandwidth of the interface.” => I think it is of the internal ring bandwidth

best regards

(Rene Molenaar) #3

Hi Jean-Marc,

I just checked it and you are right, it’s the stack ring bandwidth. I just changed it in the lesson…thanks for pointing it out!


(system) #4


Just one note: Egress queueing is defaulted to Q1 being the priority queue and has 1/25 * 100Mb (4Mb) so your first calculation didn’t cover this already assigned usage. Your teaching method works well though but it’s nice to know.


(Rene Molenaar) #5

Thanks Alan, that’s something to keep in mind indeed.

(system) #6

Hi Rene,

Thank you for the information. It was very helpful. However do you have any postings on QoS for the new 3850’s? I will be replacing our 3750x stack switches soon with a couple of 3850’s and noticed the QoS model is different. It now uses MQC instead of MLS, 8 queues instead of 4, etc. and so I was wondering if you can help answer some questions.

First, do I have to use/configure all 8 queues or can I just configure queues similar to the four that we originally have on our 3750’s?

We have a few layer two switches that will be connecting to the stack. I’m assuming it shouldn’t matter if they are using the old method of queueing, as long as they are marked and classified correctly, the stack switches will handle the queueing once it receives it?

Also if I have a port that could be used for a cisco phone or a just a pc, should I still use the" trust device cisco-phone" on the port or leave it default (trust all)?



(Rene Molenaar) #7

Hi Mary,

I haven’t played with QoS on the 3850 yet, once I get my hands on one I’ll write a blog post on it. Configuration-wise it should be much easier since it’s all MQC now.

You probably don’t have to use all 8 queues so if you just want 4 you should be fine but make sure to check the buffer allocations for all the different queues. It doesn’t matter that you still have your old switches as long as the marking is the same. Your 3850s will queue just fine if the markings are OK.

You can leave the trust level at the default (trust all) as long as you trust the markings from all your end devices. Make sure you don’t have any computers or other devices that mark their traffic when they shouldn’t…otherwise it’s better to rewrite everything to 0 and just trust the (Cisco) phones.

I’ll see if I can get my hands on a 3850 so I can write some blog posts about it :slight_smile:


(Joey B) #8


Is there any course material that explains QOS WRR? I’m trying to figure why I dont see any global configuration lines on my 6509, however, when I run Show queueing interface gi 9/1 (for example), I see WRR wred settings, also, I see Output Discards on Queue 0 discarding cos 0 & 1 data. MLS Qos is enabled.

Any thoughts?



(Rene Molenaar) #9

Hi Joey,

Configuration-wise, WRR (Weighted Round Robin) and SRR (Shaped Round Robin) are very similar. You can use the examples in this lesson:

Something to keep in mind is that a lot of commands will only show up in your configuration if you use non-default values. Here’s an example:

Switch#show running-config | incl mls
mls qos

QoS has been enabled on this switch, that’s the only command we have in our config. Let’s check the default cos-dscp map:

Switch#show mls qos maps cos-dscp 
   Cos-dscp map:
        cos:   0  1  2  3  4  5  6  7 
       dscp:   0  8 16 24 32 40 48 56

If you try to add this to your config, it won’t show up. Here’s an experiment:

Switch(config)#mls qos map cos-dscp 0 8 16 24 32 40 48 56

Switch(config)#do sh run | incl qos
mls qos

It doesn’t show up since these are the default values. Only if we change something it will show up:

Switch(config)#mls qos map cos-dscp 0 8 16 24 32 40 48 60

Switch(config)#do sh run | incl qos                      
mls qos map cos-dscp 0 8 16 24 32 40 48 60
mls qos

Now you can see it in the config. There is another way though…if you use show running-config all then you will see everything, including the defaults:

Switch#show running-config all | incl mls
mls qos rewrite ip dscp
mls qos
 mls qos cos 0
 mls qos dscp-mutation Default DSCP Mutation Map

The mls qos cos 0 and mls qos dscp-mutation Default DSCP Mutation Map are found on the interfaces.


(Edgar M) #10

Hi rene.

Do you have an lesson or document where you explain better, I have many doubts?


(Rene Molenaar) #11

Hi Edgar,

About queuing? What doubts do you still have, maybe I can clarify them? :slight_smile:


(Edgar M) #12

Hello Rene

yes, all my douts are about queuing. I don’t understand it.

sorry :frowning:

(Rene Molenaar) #13

Hi Edgar,

Queuing on switches can be complicated to understand. Did you see this video yet?

It’s a great video, explains the basics of queuing on the catalyst switches.


(Ahmad D) #14

Hi Rene,
Great post as usual with all your postings. Im wondering if you can put together a comprehensive example as how to use all these commands in a real world scenario. This way we understand the reason or the need behind each one of them. Also I would like to see an end to end QoS implementation in an easy way to understand as you did in all your postings.


(Rene Molenaar) #15

Hi Ahmad,

Glad to hear you like it. I might add some of these examples when I’m working on design material.

When it comes to QoS, here’s what you should do:

  • On the edge of your network, you want your traffic to be marked. If you use VoIP, your IP phones are probably already doing this for you. You can also use classification on the switch and mark the traffic there.
  • If you want to queue traffic then you should configure queuing on any device in between the source and destination. Make sure you do this in both directions.
  • Rene

(Ahmad D) #16

Solid info. Great!

(Mahamane B) #17

What’s the difference between priority queue and priority queuing. In this article, you stated that we have two(2) ingress queues. I was reading an online document where I found that there are 4 queues of traffic in Priority Queuing. Can you help me understand this? I’m sending you the link and please read the section where it said Priority Queuing

(Andrew P) #18

Hi Mahamane,
This can be confusing because the terms are so similar, but they are quite different. One is describing a method of ordering packets, while the other describes a queue itself–in other words a logical construction where packets are held.

Priority Queuing
This is describing a method of ordering packets. Note: This is an older generation method that is considered legacy now. The way this works is there are four queues (in order of importance): High, Medium, Normal, Low. Priority Queuing works with a simple rule: A queue will only be serviced so long as there are no packets waiting in a higher importance queue. In other words, any packets in the “Normal” queue must continue to wait to be sent until all the packets in High, then Medium are already sent.

Priority Queue
This describes a queue itself, rather than a method of queuing. The concept for a priority queue is pretty simple. Any packet that enters the Priority Queue is immediately placed at the front of the line so it will be sent next. This is commonly used for VOIP traffic where low delay is critical for functionality.

(Francis D) #19

Hi Rene,

Any idea how the QoS works for 3850 Switch model?. as far as i know. MLS QoS only works with 3750 and 3850 dont have this command.


(Andrew P) #20

You are right, the 3850 doesn’t support the MLS mode of QoS, and that’s a good thing! MLS is now considered legacy and has been superseded by MQC (modular QoS CLI). The MQC is more universal in nature–meaning its configuration is the same across a variety of platforms. It also has a lot more capabilities than MLS (for example, multiple nested QoS policies).

Here’s a link to Cisco that highlights the differences: