Queue depth sampling (7220 IXR-H4)
While static queue utilization thresholds allow the system to generate events in response to congestion, they do not provide a granular means to determine whether queue length parameters are configured correctly. If CBS and MBS values are too small, then too many packets may be dropped from the queue, even though the shared buffer space can accommodate them. And if CBS and MBS values are too large, then the traffic flowing through the queue may consume a disproportionate amount of the shared buffer space. To address these concerns, the 7220 IXR-H4 platform supports queue depth sampling, which provides a detailed set of queue utilization statistics with no requirement for setting static queue thresholds in advance.
When queue depth sampling is enabled, the system reads all unicast output queue depths at every defined polling interval. The polling interval is a configurable range between 30 and 1000 ms (defaut: 1000 ms). The system then uses these samples to calculate and publish the aggregate queue depth statistics to state every 1, 5, and 15 minutes. As a reference, the following table shows the number of datapoints created per collection period based on a polling interval of 30 ms.
Collection period | Polling interval | Datapoints created |
---|---|---|
1 minute | 30 ms | 2000 |
5 minute | 30 ms | 10 000 |
15 minutes | 30 ms | 30 000 |
The aggregate statistics also include the number of poll results that were expected but never received during each 1 minute polling window.
The system maintains the collected queue depth sampling data under the info from state qos interfaces interface output queues queue queue-depth context using the following YANG state leafs:
- average-1, average-5, and average-15: the mean (average) values of all the measurements received in the last 1, 5, or 15 minute period
- high-watermark-1, high-watermark-5, and high-watermark-15: the maximum values of all the measurements received in the last 1, 5, or 15 minute period
- missed-polling-intervals: the running count of the number of samples that were expected, but did not arrive within the 1-minute window (because of high system utilization) and were therefore not included in any calculations
Configuring queue depth sampling (7220 IXR-H4)
Enable queue depth sampling
--{ candidate shared default }--[ ]--
ixrh4# info qos queues queue-depth-sampling
qos {
queues {
queue-depth-sampling {
admin-state enable
polling-interval 60
}
}
}
Displaying queue depth sampling statistics
To display the queue depth sampling statistics, use the info from state qos interfaces interface output queues queue queue-depth command
--{ candidate shared default }--[ ]--
ixrh4# info from state qos interfaces interface ethernet-1/54 output queues queue unicast-0 queue-depth
qos {
interfaces {
interface ethernet-1/54 {
output {
queues {
queue unicast-0 {
queue-depth {
maximum-burst-size 1024128
committed-burst-size 1024128
average-1 2044954
average-5 2045970
average-15 1507354
high-watermark-1 2048764
high-watermark-5 2048764
high-watermark-15 5040630
missed-polling-intervals 0
}
}
}
}
}
}
}