cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1046
Views
2
Helpful
6
Replies

Best Practice to use Expedited forwarding and LLQs and AFS with CBWFQs

nwekechampion
Level 3
Level 3

Hi all,

I am just a little confused with how to use DSCP with queuing and shaping.

The recommendation is to use LLQs for voice and CBWFQS for other application/services.

Would I be correct in saying the above?

How does this all fit together - high-level with:

  1. Shaping
  2. Queuing

 

1 Accepted Solution

Accepted Solutions

"So basically depending on the QoS strategy implemented, we can choose what Qos methods to use?"

It's more like the QoS strategy dictates the QoS methods to be used.

"How do the Cogs all fit to make one an effective QoS solution?"

Depends on what you want the final result to be, and knowing that, and knowing what your "cogs" can do, choosing the "best" available "cogs" for the end result desired.

There are entire books written about QoS "cogs", so I cannot in a sentence or two, clarify why and/or when you might use the LLQ "cog" vs. a policing "cog", plus the same "cogs" depending on what result you're trying to accomplish, can be in one instance mutually exclusive and in the next instance mutually benificial.

What I can write, which might help, think of different people purchasing items at a grocery store, and the store only has one cashier.  Ever been stuck in a line behind a couple of people with totally full grocery carts, and you only have a couple of items?

What I just described is "classical" interface FIFO.

While waiting in line, you being 3rd in line, have you ever had the person ahead of you, with the full grocery cart, say to you, you can go next?  (It has happened to me, and I've also been the person with the full cart making such an offer to the person behind me.)

Anyway, changing the FIFO sequence, for some reason, is what we often do in/with QoS.

Or, while you're waiting, have you seen the grocery store open another check out line?  That's also another QoS technique.

Or, while waiting, you need to be elsewhere, which is more important than buying your items (then), so you just leave the store upon seeing the long lines?  If so, that's also can be a QoS technique.

If you can tell me specifically what you want to accomplish, for traffic management, I can (probably) specifically tell you how to best accomplish it depending on a specific platform's available QoS features, but if you want to an explanation of all the possible QoS features, and their usual use cases, we're again back to QoS book length replies.

However, and often not well explained in many QoS books, is "why" we want QoS to do something.  To that, think about waiting in line for something, whether in a store or perhaps on the road, and use cases where you want something better than FIFO service (for example, on the road, might you want to have a way to "prioritize" emergency vehicles?).

View solution in original post

6 Replies 6

Joseph W. Doherty
Hall of Fame
Hall of Fame

"I am just a little confused with how to use DSCP with queuing and shaping."

Only a "little" confused?  If you're new to QoS, most are more initially confused more than a little.  ;  )

Anyway DSCP is just a RFC recommendation for how to use different ToS values to "tag" different kinds of traffic.  For example, DSCP EF (decimal 46) is recommended for VoIP bearer traffic.

As DSCP is a numeric value for different kinds of traffic, it can be (efficiently) used to queue and/or shape and/or apply/use other QoS techniques to different kinds of traffic without needing to deeply analyze a packet for its kind of traffic.  For example, to identify a VoIP bearer packet, rather than checking whether it's a UDP packet, using particular port numbers, perhaps using known VoIP device source and/or destination addresses, we just "see" it's DSCP EF.

"The recommendation is to use LLQs for voice and CBWFQS for other application/services.

Would I be correct in saying the above?"

Well, laugh, yes you would be "correct", according to whatever "recommendation" you're referring to, also assuming you're accurately "regurgitating" the underlying "recommendation".  But, for example, LLQ and/or CBWFQ might not be (and actually is not) offered on all Cisco devices that support QoS.  That aside, almost everyone would agree something like VoIP bearer traffic sharing a path with non-VoIP traffic, where there can be congestion along the path, should have QoS to guarantee VoIP traffic will obtain the network transfer performance it needs to work as designed.  Beyond that, agreement of what QoS should do, or whether it's needed at all, can vary greatly.  Also, even when there's agreement QoS is needed, how it should be configured, is often debated.

As a rough analogy, consider you need to get from A to B.  Do you walk, ride a bike, take a bus, take a train, take a plane?  If you consider QoS a "thing" to help get you from A to B, we can debate whether you need it at all, i.e. walk vs. some kind of vehicle, but even when all agree you likely need a vehicle, which one should it be, as there's much overlap in how different vehicles help you move from A to B.

So, with some DSCP and/or QoS technique recommendations, they are much like, use a bike for . . ., use a bus for . . ., etc.  But, there are lots of variables that can go along with moving from A to B, number of people with you, baggage, urgency, etc.  Likewise with QoS.

QoS recommendations are often like clothing "off the rack", but without any tailoring or alternations.  If you're a perfect size #, great, but otherwise the "fit" will vary, from almost fits, to it looks horrible on you.  Likewise can happen with QoS, but typical recommendations don't usually much note that.

I know the forgoing is likely not the kind of answer you may have been looking for, but before getting into DSCP values and/or LLQ/CBWFQ and/or queuing/shaping, you should first understand the real purpose of QoS and what it might do for you.  Once you understand that, then you can determine whether walking, biking, etc., is what YOU would be best served by.

Thanks for your analogy @Joseph W. Doherty !!

haha, yes very confusing really!!

So basically, there is not a one-size fit all recommendation for QoS. It really depends on the scenario at hand?

"So basically, there is not a one-size fit all recommendation for QoS. It really depends on the scenario at hand?"

Yes and no.  Yes, if you get into the 12-class model and debate how each class should be treated, e.g. does class X get 5% or 10% bandwidth guarantee; do you use tail drop, tier drop or RED, and what values should be applied to the selected dropping methodology, etc.

(Often) No, if you have a device that supports CBWFQ with FQ.

Going from single FIFO best-effort queue to:

policy-map example1
class class-default
fair-queue

Likely handles about 90% of all QoS needs, except for real-time traffic, like VoIP.  For that:

policy-map example2
class real-time
priority percent 35
class class-default
fair-queue
bandwidth remaining percent 100

Possible 99% of all QoS needs can be dealt with by:

policy-map example3
class real-time !e.g. VoIP bearer
priority percent 35
class foreground  !e.g. VoIP signally, remote desktop screen scraping
fair-queue
bandwidth remaining percent 81
class background !for bulk time insensitive data transfer, e.g.: database backup, email server to server
fair-queue
bandwidth remaining percent 1
class class-default !everything that doesn't need to be treated better or can yield bandwidth to other traffic
fair-queue
bandwidth remaining percent 9

Unfortunately, most Cisco "routers" can do the above, but not most (if any?) Cisco switches (L2 or L3).

What about the other 1% of cases, if you have the above QoS features, well that's when QoS gets interesting and we're back to one size does not fit all.  Often ditto if you don't have the above QoS features.

Thanks Joseph.

Still chewing on this. I am still lost.

So basically depending on the QoS strategy implemented, we can choose what Qos methods to use?

I guess, what I am trying to ascertain from a very simplistic high-level, is when do we use:

shaping vs queuing vs WRED vs CBWFQ vs LLQ vs Policing (with DSCP of course)? How do the Cogs all fit to make one an effective QoS solution? I understand that we need to Classify and optionally mark traffic, But anything after that just seems very unclear.

 

 

 

"So basically depending on the QoS strategy implemented, we can choose what Qos methods to use?"

It's more like the QoS strategy dictates the QoS methods to be used.

"How do the Cogs all fit to make one an effective QoS solution?"

Depends on what you want the final result to be, and knowing that, and knowing what your "cogs" can do, choosing the "best" available "cogs" for the end result desired.

There are entire books written about QoS "cogs", so I cannot in a sentence or two, clarify why and/or when you might use the LLQ "cog" vs. a policing "cog", plus the same "cogs" depending on what result you're trying to accomplish, can be in one instance mutually exclusive and in the next instance mutually benificial.

What I can write, which might help, think of different people purchasing items at a grocery store, and the store only has one cashier.  Ever been stuck in a line behind a couple of people with totally full grocery carts, and you only have a couple of items?

What I just described is "classical" interface FIFO.

While waiting in line, you being 3rd in line, have you ever had the person ahead of you, with the full grocery cart, say to you, you can go next?  (It has happened to me, and I've also been the person with the full cart making such an offer to the person behind me.)

Anyway, changing the FIFO sequence, for some reason, is what we often do in/with QoS.

Or, while you're waiting, have you seen the grocery store open another check out line?  That's also another QoS technique.

Or, while waiting, you need to be elsewhere, which is more important than buying your items (then), so you just leave the store upon seeing the long lines?  If so, that's also can be a QoS technique.

If you can tell me specifically what you want to accomplish, for traffic management, I can (probably) specifically tell you how to best accomplish it depending on a specific platform's available QoS features, but if you want to an explanation of all the possible QoS features, and their usual use cases, we're again back to QoS book length replies.

However, and often not well explained in many QoS books, is "why" we want QoS to do something.  To that, think about waiting in line for something, whether in a store or perhaps on the road, and use cases where you want something better than FIFO service (for example, on the road, might you want to have a way to "prioritize" emergency vehicles?).

Beautifully explained @Joseph W. Doherty ..

Thank you very much.

The analogy really rammed it home.

I am just looking to get an wholistic idea. When I do have a specific use-case and get into a pickle, I would definitely reach-out!

Thanks again

Champ