QoS helps in classify network traffic, prioritize and polish the network traffic and avoid the congestion in network and ensure desirable traffic flow across network.
QoS has following benefits:
- Ensure enough Bandwidth for critical applications like voice, video etc.
- Ensure Low or no packet loss in network
- Helps in mitigating delay, jitter, latency in network
QoS Working model:
QoS has following working model or component which the help of which we can apply QoS in network to ensure desirable network traffic flow.
Classification: It is the method which is used to classify the traffic in to different class based on different characteristics of packet like IP address, VLAN, QoS field, Ethernet header etc.
Marking: Marking is the method through any network packet is marked based on QoS methods like CoS, DSCP value based on its identified class. It is done near to network edge device using MQC method.
Mutation: It is a method change the packet header QoS field in every incoming packet or outgoing packet. This can be done by using mutation mapping table for CoS, DSCP, IP Precedence etc.
Policing: Based on user-defined QoS criteria, this is used to limit the input or output transmission rate of any class of traffic and also by policing we can mar the packet based on QoS Marking features.
Queuing & Scheduling: This provides two methods:
- Congestion Management: Using Queuing Algorithms each packets is marked which is used to determine on which queue packet will be placed. Based on Queuing algorithms different queues are given different treatment.
- Congestion Avoidance: This technique is used to monitor network traffic to avoid network congestion. These technique are implemented on output interface.
Following is the sequence of QoS actions when packet enters on ingress interface and exit from egress interface.
QoS can be configured on network by following MQC steps:
Step1: use class-map command to classify the different network traffic
Step2: use Policy-map, you can configure traffic policy by associating the traffic class in to it.
Step3: use service-policy to attach the policy-map on inbound interface or outbound interface based on traffic moving direction.
NX-OS provides the following three command that are used to define traffic class and policies.
Class-map: used to classify the different class of traffic using match criteria.
Table-map: this table map is used to define mapping rules to set one type of packet field values to another set of packet field values.
Policy-map: This policy map is used to set certain rules based on class of traffic defined by class-map.
Further policy-map can have following sub-types:
- Network qos: this defines CoS values across switches and VDC
- qos: this is basically use for marking, mutation, ingress port trust state, policing etc.
- queuing: this type of policy-map is used for queuing and scheduling
When any packet enters on any interface which has QoS policy applied is matched with class of traffic by class-map command and if match is found the policy action is applied which is defined for that class of traffic. If there is no match found against all configured class-map then default class-default class is matched and its related policies are applied.