I have heard people stating that their network
"operates a 5 level (or layer) QoS model"
Sometimes they also mention a 7 level QoS model. Can anyone provide me with a Cisco IOS config example of what is meant here. So by this I mean a config example showing how to implement this (assuming there is such a thing!). I am more familiar with IOS 12.whatever rather than 15.whatever but either would be great.
I assume that these people are referencing a 5 class set up matching traffic that is one of the 5 standard classes below and processing the traffic appropriately;
- DF Default
- EF Expedited Forwarding
- VA Voice Admit
- AF Assured Forwarding
- CS Class Selector (for backward compatibility)
I'm looking for an IOS config example that matches 5 (or 7!) classes of traffic, and then applies an appropriate policy (I understand this is a big vague, different network operators may want the traffic handled differently, but this is purely educational. I want to see 5 different class of traffic being matches and treated differently).
Side note
I'd be really interested to see for example how one would configure such a policy for say a 100Mbps link so that using simple arithmetic I could scale it up to 1Gbps or down to 10Mbps. I'm guessing that for this to be effective, this whole QoS schema would need to reserve buffer space or allocate bucket space, rather than using policing to limit bandwidth for example? I assume this is because you don't know how much bandwidth at any one time will be voice, or video, data, or P2P/Torrents etc
Best Answer
Cisco has something they call Cisco Validated Designs (CVD). These are network designs from different perspectives like QoS, high availability, WAN etc that Cisco recommends and have tested.
For QoS they have 3 different designs with 4, 8 or 12 classes which can be seen in the picture below.
Starting with the 4 class model:
As you can see it matches on different DSCP values. DSCP EF is generally used for VoIP. This means that your packets should already have been marked as early as possible in your network. The bandwidth values are entered in percent which means that the policy can applied on different speed interfaces and still provide good values compared to entering them in kbit/s. On very high speed interfaces like 10 Gbit it could be a lot to use 7% for control traffic though since that would be 700 Mbit/s.
Both the data and the class-default uses fair-queue which is a way of queueing packets based on DSCP and packet size to provide fair queueing even for small packet flows. To be able to use this you need an image supporting Hierarchical Queing Framework (HQF) which is 12.4(20)T or newer.
Weighted Random Early Detection (WRED) is also applied to take care of issues like TCP synchronization where TCP flows will speed up and back off at the same time.
Then you have the 8 class model.
This policy is more granular for the realtime applications like video, streaming and signaling for these protocols.
Finally this is the 12 class model.
This policy has even more classes for interactive traffic and also more classes for different types of data and a management class.
Finally you have to apply the policy to an interface like this.
int gix/x service-policy output WAN-EDGE-12-CLASS
Here is a link to WAN QoS CVD.