Understanding CoS Priority Group and Queue Guaranteed Minimum Bandwidth
You can set a guaranteed minimum bandwidth for individual forwarding classes (queues) and for groups of forwarding classes called forwarding class sets (priority groups). Setting a minimum guaranteed bandwidth ensures that priority groups and queues receive the bandwidth required to support the expected traffic.
Guaranteeing Bandwidth Using Hierarchical Scheduling
The guaranteed-rate value for the priority group (configured in a traffic control profile) defines the minimum amount of bandwidth allocated to a forwarding class set on a port, whereas the transmit-rate value of the queue (configured in a scheduler) defines the minimum amount of bandwidth allocated to a particular queue in a priority group. The queue bandwidth is a portion of the priority group bandwidth.
You cannot configure a minimum guaranteed bandwidth (transmit rate) for a forwarding class that is mapped to a strict-high priority queue, and you cannot configure a minimum guaranteed bandwidth (guaranteed rate) for a priority group that includes strict-high priority queues.
Figure 1 shows how the total port bandwidth is allocated to priority groups (forwarding class sets) based on the guaranteed rate of each priority group. It also shows how the guaranteed bandwidth of each priority group is allocated to the queues in the priority group based on the transmit rate of each queue.
The sum of the priority group guaranteed rates cannot exceed the total port bandwidth. If you configure guaranteed rates whose sum exceeds the port bandwidth, the system sends a syslog message to notify you that the configuration is not valid. However, the system does not perform a commit check. If you commit a configuration in which the sum of the guaranteed rates exceeds the port bandwidth, the hierarchical scheduler behaves unpredictably.
The sum of the queue transmit rates cannot exceed the total guaranteed rate of the priority group to which the queues belong. If you configure transmit rates whose sum exceeds the priority group guaranteed rate, the commit check fails and the system rejects the configuration.
You must set both the priority group guaranteed-rate
value and the queue transmit-rate
value in order to configure
the minimum bandwidth for individual queues. If you set the transmit-rate
value but do not set the guaranteed-rate
value, the configuration
fails.
You can set the guaranteed-rate
value for a priority
group without setting the transmit-rate
value for individual
queues in the priority group. However, queues that do not have a configured transmit-rate
value can become starved for bandwidth if other
higher-priority queues need the priority group’s bandwidth.
To avoid starving a queue, it is a good practice to configure a transmit-rate
value for most queues.
If you configure the guaranteed rate of a priority group as a percentage, configure all of the transmit rates associated with that priority group as percentages. In this case, if any of the transmit rates are configured as absolute values instead of percentages, the configuration is not valid and the system sends a syslog message.
Priority Group Guaranteed Rate (Guaranteed Minimum Bandwidth)
Setting a priority group (forwarding class set) guaranteed-rate
enables you to reserve a portion of the port bandwidth for the forwarding
classes (queues) in that forwarding class set. The minimum bandwidth
(guaranteed-rate
) that you configure for a priority group
sets the minimum bandwidth available to all of the forwarding classes
in the forwarding class set.
The combined guaranteed-rate
value of all of the
forwarding class sets associated with an interface cannot exceed the
amount of bandwidth available on that interface.
You configure the priority group guaranteed-rate
in
the traffic control profile. You cannot apply a traffic control profile
that has a guaranteed rate to a priority group that includes a strict-high
priority queue.
Queue Transmit Rate (Guaranteed Minimum Bandwidth)
Setting a queue (forwarding class) transmit-rate
enables
you to reserve a portion of the priority group bandwidth for the individual
queue. For example, a queue that handles Fibre Channel over Ethernet
(FCoE) traffic might require a minimum rate of 4 Gbps to ensure the class of service that storage area network (SAN)
traffic requires.
The priority group guaranteed-rate
sets the aggregate
minimum amount of bandwidth available to the queues that belong to
the priority group. The cumulative total minimum bandwidth the queues
consume cannot exceed the minimum bandwidth allocated to the priority
group to which they belong. (The combined transmit rates of the queues
in a priority group cannot exceed the priority group’s guaranteed
rate.)
You must configure the guaranteed-rate
value of the
priority group in order to set a transmit-rate
value for
individual queues that belong to the priority group. The reason is
that if there is no guaranteed bandwidth for a priority group, there
is no way to guarantee bandwidth for queues in that priority group.
You configure the queue transmit-rate
in the scheduler
configuration. You cannot configure a transmit rate for a strict-high
priority queue.