Professional Documents
Culture Documents
Search …
Unit 4: Multicast
LLQ (Low Latency Queuing) is an extension of CBWFQ (Class Based Weighted Fair
Unit 5: Network Architecture
Queuing) where we add a priority queue to the scheduler. Here’s an illustration to help
Unit 6: Services
you visualize this:
6.1 NTP
6.2 NAT/PAT
QoS Classification
QoS Marking
In the picture above, output queue 2,3 and 4 are attached to the regular CBWFQ
QoS Low Latency Queuing (LLQ)
scheduler and are served in a (weighted) round robin fashion. Queue 1 however, is
QoS on LAN Switches
attached to the LLQ scheduler and bypasses the CBWFQ scheduler. This turns queue 1
QoS Trust Boundary
into a priority queue. Everything that ends up in queue 1 will be served before any
Classification and Marking on
other the other queues. Switches
Introduction to Shaping
Introduction to Policing
Unit 8: Security
Unit 9: Automation
All we need are three routers to demonstrate LLQ. R1 will send some packets to R3, R2 in
the middle will do the queuing.
Configurations
Want to take a look for yourself? Here you will find the startup configuration of each
device.
R1
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 1/8
9/20/22, 12:20 PM QoS LLQ (Low Latency Queueing) on Cisco IOS
hostname R1
ip cef
interface GigabitEthernet0/1
end
R2
hostname R2
ip cef
interface GigabitEthernet0/1
interface GigabitEthernet0/2
end
R3
hostname R3
ip cef
interface GigabitEthernet0/1
end
First, we need a class-map to classify the traffic that you want to put in the priority
queue. I will create two class-maps. One for VOICE traffic (marked with DSCP ef) and
another one for CALL_SIGNALING that is marked with cs3. The voice traffic will end up in
the priority queue, the call signaling traffic will be served by CBWFQ.
R2(config)#class-map VOICE
R2(config-cmap)#match dscp ef
R2(config)#class-map CALL_SIGNALING
Now we can create a policy-map and create a priority queue for the voice class-map:
R2(config)#policy-map LLQ
R2(config-pmap)#class VOICE
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 2/8
9/20/22, 12:20 PM QoS LLQ (Low Latency Queueing) on Cisco IOS
R2(config-pmap-c)#priority ?
<cr>
Depending on your hardware, you might have two or three options. You can configure a
priority queue for a certain kilobit per second rate or a percentage of the bandwidth. The
third option on my router is the multi-level priority queue. Most routers will only allow one
priority queue, but in this case, I can create two priority queues (high and low). This can
be useful if, for example, you have real-time voice and video traffic and you want to
prioritize both. With a single priority queue, you can’t decide if voice or video traffic
should be prioritized first. Within the priority queue, life is best effort.
With a high and low priority queue, you can ensure that both are prioritized, but one
priority queue is still prioritized over the other.
Let’s keep it simple. I will create a priority queue for 2000 Kbps:
R2(config-pmap-c)#priority 2000
R2(config-pmap-c)#exit
For our signaling traffic, we’ll configure a bandwidth guarantee of 1000 Kbps:
R2(config-pmap)#class CALL_SIGNALING
R2(config-pmap-c)#bandwidth 1000
Last but not least, let’s activate the policy map on our interface:
The Kbps rates that I configured are not hard limits. When there is no
congestion on the interface, both classes can get more bandwidth. If you want
to enforce a hard limit, you can configure policing for the class.
2. Verification
Let’s verify our work. Let’s take a look at our class-maps:
R2#show class-map
Match any
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 3/8
9/20/22, 12:20 PM QoS LLQ (Low Latency Queueing) on Cisco IOS
Above, we can see the two class-maps I created. The class-default class is always there.
Traffic that is not matched by one of your class-maps will end up in the class-default
class. Here’s the policy-map:
R2#show policy-map
Class VOICE
Class CALL_SIGNALING
Let’s generate some traffic and see what happens. I can use some simple pings for this,
but I will have to set the ToS byte. The ping command only accepts a ToS parameter in
decimal, so I’ll have to do some conversion:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 4/8
9/20/22, 12:20 PM QoS LLQ (Low Latency Queueing) on Cisco IOS
GigabitEthernet0/2
Queueing
Queueing
Match: any
There we go, you can see that my packets ended up in the correct queues. Keep in mind
that as long as there is no congestion, both classes can get more bandwidth.
Configurations
Want to take a look for yourself? Here you will find the final configuration of each device.
R1
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 5/8
9/20/22, 12:20 PM QoS LLQ (Low Latency Queueing) on Cisco IOS
hostname R1
ip cef
interface GigabitEthernet0/1
end
R2
hostname R2
ip cef
match dscp ef
policy-map LLQ
class VOICE
priority 2000
class CALL_SIGNALING
bandwidth 1000
interface GigabitEthernet0/1
interface GigabitEthernet0/2
end
R3
hostname R3
ip cef
interface GigabitEthernet0/1
end
« Previous Lesson
QoS Marking
Next Lesson
QoS on LAN Switches »
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 6/8
9/20/22, 12:20 PM QoS LLQ (Low Latency Queueing) on Cisco IOS
Forum Replies
azmuddincisco
Hello Rene,
Couple of questions.
1. Is it possible to provide me an example to show the difference between congestion management and congestion avoidance. As a matter of fact, I
do not understand TCP Global Synchronization very well. It will be great if you use an example to explain congestion management and avoidance
by relating to TCP Global Synchronization.
2. This question is basically based upon Priority command VS Bandwidth command. Priority command is used to ensure the maximum bandwidth
during the congestion. On the other hand, Bandwidth is used to ensure
ReneMolenaar
Hi Azm,
Congestion management is about dealing with congestion when it occurs and congestion avoidance is trying to avoid congestion. To understand
congestion avoidance, you have to think about how the TCP window size and global synchronization works. I explained this in this lesson:
https://networklessons.com/cisco/ccnp-route/tcp-window-size-scaling/
Congestion avoidance works by dropping certain TCP segments so that the window size reduces, slowing down the TCP transmission and by doing so,
preventing congestion from happening.
azmuddincisco
Hello Rene,
Thanks a lot for your explanation. However, still needs some more clarification. Lets’ say I have an interface GIg 0/1 that is capable of handling 100
packets per second. I have three different kinds of traffic passing through the interface. They are Traffic A, B and C.
lagapides
Hello Azm
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 7/8
9/20/22, 12:20 PM QoS LLQ (Low Latency Queueing) on Cisco IOS
https://cdn-forum.networklessons.com/user_avatar/forum.networklessons.com/azmuddincisco/40/429_1.png
azmuddincisco:
If I draw this, the queue will be like this:
B + C + A =========>>Out
25 + 25 + 50
or
C + B + A ===========>Out
25 + 25 + 50
Is it correct?
In your example, we assume that Traffic A has been configured to be attached to an LLQ scheduler, and that is what you mean by priority traffic. Also, we
assume that Traffic B and C are
azmuddincisco
Hello Laz,
That was my question and that is the answer I was looking for. Thank you so much as usual.
Azm
54 more replies! Ask a question or join the discussion by visiting our Community Forum
https://networklessons.com/cisco/ccnp-encor-350-401/qos-llq-low-latency-queueing-cisco-ios 8/8