Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Showing results for
Search instead for
Did you mean:
Common QOS configurations for a WAN link using MQC
Qaulity Of Service (QOS) become a crucial service and feature in the modern IP networks specially with the implementations of VOIP and video over IP networks. QOS works as the gear of the modern networks because it mark/remark traffic ( classifications) reserve and prioritize some sort of traffic over others ( queuing) and in case of congestion it is able to start drop less important traffic based on classifications before the important traffic ( Weighted random early detection WRED). All the above features and services can be implemented and deployed to achieve what is know as end-to-end QOS network. with this approach we can grantee to a large extent that our sensitve traffic such as voice and video is guaranteed and prioritized over none sensitive traffic ( none real time ) such as web traffic and FTP.
In addition to the congestion management and congestion avoidance mechanisms mentioned above QOC can be used for security and/or rate limiting to make sure that the traffic going over the WAN link is not over subscribing the actual WAN link bandwidth and not over utilized, by policing or shaping the traffic going out that WAN interface, also we can deploy the policing and shaping to limit some traffic to certain amount of bandwidth which is useful also to have some level of security, for example we may use it to limit the management traffic such as telnet or SNMP traffic distend to the WAN router or any other device in the network.
Cisco IOS has several ways and mechanisms that can be used to implement and configure QOS, one of the best and commonly used method now is Modular Quality of service Command-Line MQC
Inthis document we will discuss a configuration example of how to use and configure MQC to meet a businesses requirements example, also we will see how to achieve the same goal by using more than one method
company xyz.com has a WAN link between the HQ office and a branch office the WAN link bandwidth is 1Mbps
the comapny run VOIP traffic over this WAN link with the following marking:
VOIP RTP DSCP EF
VOIP Signaling CS3
VOIP RTP traffic must be serviced first in the case of interface congestion and guaranteed and limited at all times to 30 % of the WAN interface bandwidth
VOIP Signaling need a guaranteed bandwidth of 8 % of the interface in case of congestion
Telnet traffic need 3 % to be guaranteed in case of congestion
However telnet traffic to a host with the IP address 188.8.131.52 needs 5 % of the interface bandwidth to be guaranteed in the case of congestion
if there are 30 packets in the queue with CS 6 ( routing traffic ) the router has to start drop from these packets, if the packets reach 40, a 25 % of the packets must be dropped, if it go beyond 40 packet all the packet with CS 6 must be dropped
to achieve the above requirements we need first to identify our traffic classes this will be done by using class maps
access-list 100 permit tcp any host 184.108.40.206 eq telnet
this ACL used to match Telnet traffic going to the host 220.127.116.11 as required to have differnt QOS treatment than other tenet traffic
class-map match-all VOIP_SIG match dscp cs3 class-map match-all TELNET match protocol telnet class-map match-all RTP_VOIP match ip dscp ef class-map match-all TELNET_HOST130 match access-group 100
as it shown above we matched the traffic based on the specified requirements above ( for end to end QOS you need to make sue that your end point or the switch send the traffic with the appropriate DSCP marking or you can use port numbers to match traffic with ACLs)
after we have our traffic class maps created now we need to create a policy to give the traffic the required bandwidth and QOS treatment in the case of interface congestion, this will be achieved by using policy maps:
But before we see the configurations of the policy map lets review the VOIP RTP requirement above, the requirement need VOIP traffic to have a prioritization and traffic guaranteed as 30 % of the WAN link bandwidth and also at all times
this imply that we need to give a guaranteed bandwidth of 30 % from the 1Mbps and also this need to be serviced first in the case of congestion
this can be archived by using low latency queuing mechanism LLQ, but LLQ will NOT police or limit this class bandwidth in the case of NO congestion.
to limit the VOIP RTP traffic at all times to 30 % of the WAN link we can use a nested policy map under the class map configuration this is also called Hierarchal Quality of service HQOS
policy-map VOIP class class-default police cir 300000 --- 1Mb = 100000 x 0.3 = 300000 bps
for the routing traffic
routing traffic by default marked as CS 6 and as stated in the requirements above traffic with CS 6 need to be configured with WRED
please note that WRED to be configured under class default or any cither class you need to configure either bandwidth command or enable fair queuing for that class
min CS 6 queue dropping threshold 30 max 40 dropping probability 25 % = 1/4
class class-default fair-queue random-detect random-detect precedence 6 30 40 4
the outbound policy config:
policy-map P1 class RTP_VOIP priority percent 30 service-policy VOIP class VOIP_SIG bandwidth percent 8 class TELNET_HOST130 bandwidth percent 5 class TELNET bandwidth percent 3 class class-default fair-queue random-detect random-detect precedence 6 30 40 4
now we nned to apply the above policy map under the WAN interface in the OUTBOUND direction
as it obvious from the above show command we have the bandwidth allocated incorrectly by our policy map !!!
for example the VOIP allocated under the LLQ calss 30000 Kbps which is 30 Mbps while it supposed to be 300 Kbps
same for other classes !!
this is because we are using the default interface bandwidth in our case fastethernet with 100Mbos and the policy map reference the interface bandwidth to allocate the bandwidth and also to consider the interface congested or not,
lets change the interface bandwidth to 1 M bps and see the difference
Although the interface bandwidth is 100M but our policy now allocating bandwidth percentage based on 1M this is because it is a nested policy under a shaped policy with 1Mbp
I intended to put multiple ways of QOS configurations such as matching with and without ACL using a class map, shaping and policing to cover most of the common simple and standard methods used in configuring QOS