cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
253
Views
0
Helpful
3
Replies

3750 outbound QOS

gnijs
Level 4
Level 4

Hello,

I have an advanced question regarding 3750 outbound QOS buffer allocation.

If a queue needs to "borrow" from the common pool, is this assignement immediatly ? or is it scheduled ?

For example, take this example:

mls qos queue-set output 1 buffers 10 10 26 54

mls qos queue-set output 1 threshold 4 50 100 20 3200

Q4 has 54 buffers (or 54% of the buffers). Of this, 20% is reserved and always available.

Suppose my Q4 buffer is full for 20% and the next packet arrives, and no other queues are used.

In this case a buffer is always available (even if Q1, Q2 and Q3 have 100% reserved queues, Q4 is not at 100%, so a buffer must be available)

So the buffer fills up.....until we arrive at 54%

Suppose the buffer Q4 is at 54% and the next packet arrives. There is still space in the common buffer pool (for example, suppose Q3 has 50% reserved, this means 0.5*26 = 13% of buffer space is in the common pool)

Is a buffer immediatly assigned to this packet in Q4 from common space ? (and therefore no output drop occurs)

Or does it take some 'time' or cycles before the switch realises that Q4 can use extra buffers from common pool and assigns common pool after 1, 2, 3 or more cycles ? (and the first packet gets dropped, an extra buffer from common pool is assigned, and the next packets isn't dropped anymore)

The reason i am asking is: buffers that are not reserved, go to the common pool. If common pool assignement is immediatly, why would i "reserve" anything at all ? What is the use of reserving buffers in this case ? "Reserving" only takes away buffers that could be used in other queues. So i would reserve 0 for each queue, to have the maximum amount of buffers in my common pool. So that they can go where they are needed.

During real congestion, my available buffers will be assigned according to this rule:

mls qos queue-set output 1 buffers 10 10 26 54

and this division has nothing to do with reservation or not.

regards,

Geert

3 Replies 3

Joseph W. Doherty
Hall of Fame
Hall of Fame

Disclaimer

The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.

Liability Disclaimer

In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.

Posting

The reason i am asking is: buffers that are not reserved, go to the common pool. If common pool assignement is immediatly, why would i "reserve" anything at all ? What is the use of reserving buffers in this case ? 

Ok, suppose all your buffers came from a common pool.  Next suppose you have a high rate of scavenger traffic that exceeds the bandwidth capacity of the port.  The scavenger traffic would consume all the available buffers and start dropping.

However, also assume a VoIP packet arrives for egress, and even though you've assigned it PQ, as there's no available buffers, the VoIP packet is dropped.

That's why you want reserved buffers, otherwise you've just created a problem similar to head-of-line blocking.

BTW, I recall some few buffers are always reserved, even if you set reservation to zero, but you can run into same situation.  I.e. lower priority traffic ties up resource needed by later higher priority traffic.

Ok, i understand reservation for voice traffic, this is mostly Q1, so lets assign 10% of buffers to Q1 and 100% reserved, but why would i reserve anything for Q4 or Q3. I can assign 54% and a low threshold 1 for scavenger traffic, but i dont see the need to reserve anything....

Sent from Cisco Technical Support iPad App

Disclaimer

The  Author of this posting offers the information contained within this  posting without consideration and with the reader's understanding that  there's no implied or expressed suitability or fitness for any purpose.  Information provided is for informational purposes only and should not  be construed as rendering professional advice of any kind. Usage of this  posting's information is solely at reader's own risk.

Liability Disclaimer

In  no event shall Author be liable for any damages whatsoever (including,  without limitation, damages for loss of use, data or profit) arising out  of the use or inability to use the posting's information even if Author  has been advised of the possibility of such damage.

Posting

It's not a question of just VoIP vs. scavenger, it's a question of any one queue could deprive any other queue, or queues, of buffers.  You're creating your own DoS attack.

BTW, if you set thresholds, that's just another way of reserving buffers.  I.e. you don't actually "reserve" them, you just don't allow their usage; effectively similar result.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Review Cisco Networking products for a $25 gift card