#

Tuesday, September 10, 2019

Modular QoS Command Line Interface & Hierarchical Queuing Framework

MQC/HQF is a term used in Cisco for the method used to configure Quality of Service Features. It is the the way of using class maps and calling them in policy maps in Cisco IOS. MQC allows the implementation of a full suite of QoS tools including classification, congestion management, traffic metering, marking, traffic shaping, and link efficiency.

As a summary following steps will be involved.

01. Match traffic to be treated
 - use ACLs for source, destination or service wise traffic match
 - use NBAR for application wise traffic match (no need to configure)

02. Define traffic classes
 - class-map
   This is where we define traffic match criteria

03. Define Policy
 - policy-map
   This is where we define actions

04. Apply Policy
 - service-policy [in/out] on interface

Class-Maps have 2 types of logical operation with the match statements which are logical "AND" and logical "OR". AND is the default operation in which will be performed if you type just the class-map <name> command which is equivalent to class-map match-all <name> command. If you want to go for OR logic you should state it in the command, class-map match-any <name>

Examples:-

AND logic, here all the statements should be matched;

class-map CM2
 match access-group name ACL
 match packet length min 64

OR logic, here any one of the statement should be matched;

class-map match-any CM3
 match protocol icmp
 match protocol sip

We can also call a Class-Map in a Class-Map match statement. This is called nested matching and the logic will be like the following.
















In order to match the CM1 criteria, all logical operatives must be true.

After the match criteria is written in Class-Maps, we can write the Policy-Map according to the requirement. A policy map is an ordered list of class-maps with their corresponding actions, similar to a route-map. The router matches packets entering/leaving the interface against all class-map entries in the respective input/output policy-map on the interface in a top-down fashion.

The policy-map actions include marking, shaping, policing, assigning queue weight etc.

policy-map POLICY
 class CM1
  set ip precedence 2
 class CM2
  set dscp 46
 class CM3
  set dscp cs5

Any unclassified traffic in a policy-map falls into the class-default category.

1 comment: