I first started working on the Modular QoS CLI around Version 12.1.5T of the IOS which I think was about 1999/2000 (I could be wrong) . Over the years it has changed quite a bit, and I’ve never felt like I was really in control when I was thinking of DiffServ. I have done a lot of reading, and somehow I think this knowledge has gotten mixed up in my head.
Then I found this graphic:
For whatever reason, this helps me to understand my confusion. I think that because I have been working with QoS over a seven or eight year period and QoS has developed at the technology has been changing. Now, I can see how my understanding has been confused. The DiffServ field hasn’t fundamentally changed but it’s different enough that I’ve been mentally confused.
I have also been reading about Hierarchical QoS Policies this week. Up until now class-maps and policy-maps could be nested in a service-policy. Hierarchical QoS Framework allows for service-policy to be nested within service-policy. This is causing my brain to reevaluate the process of QoS construction since layered QoS policies can now be created.
This is also why learning technology from first principles is important. Now I understand that the base fact is different, I can adapt the way I am thinking. Today has been a worthwhile day to find this and clear up a nagging concern in my knowledge.