Cisco QoS HCF shaper and bandwidth inheritance

When implementing QoS with the QoS Hierarchical Queuing Framework (HQF) each class-map in a policy-map inherits bandwidth.

If you don’t configure bandwidth under the parent policy then the interface bandwidth is divided by each class under the parent policy. For example:

class-map match-all CHILD_CLASS class-map match-all PARENT_CLASS ! policy-map CHILD class CHILD_CLASS policy-map PARENT class PARENT_CLASS shape average 700000000 service-policy CHILD interface GigabitEthernet0/1 service-policy output PARENT

There is no bandwidth command under the parent policy so the PARENT_CLASS and class-default classes inherit a minimum guaranteed bandwidth of 500 Mbit (50% of Gigabit interface). The PARENT_CLASS shapes up to 700 Mbit.

If you want the child policy to inherit another bandwidth, you should set the bandwidth under the class-map of the parent policy. For example:

class-map match-all CHILD_CLASS class-map match-all PARENT_CLASS ! policy-map CHILD class CHILD_CLASS policy-map PARENT class PARENT_CLASS shape average 700000000 bandwidth 700000 service-policy CHILD interface GigabitEthernet0/1 service-policy output PARENT

In the configuration above, the child policy would inherit 700 Mbit as the bandwidth.