Queue depth limits in Fibre Channel hosts

The queue depth is the number of I/O operations that can be run in parallel on a device. You can estimate the queue depth for each node to avoid application failures.

When too many concurrent I/Os are sent to a storage device, the device responds with an I/O failure message of queue full. This message is intended to cause the host to try the I/O again a short time later.

However, not all operating systems correctly handle the queue-full scenario, which can cause unnecessary I/O failures to applications. To avoid unnecessary failures, configure your hosts so that they send only a finite number of I/Os to the storage system.

The homogeneous queue depth calculation takes a simplistic approach of dividing the available queue depth equally per path.

It assumes that the operating system sets the queue depth upon the path, and that this queue depth is the only limiting factor. However, it might also be possible to configure the queue depth in many other locations within the host such as on the host bus adapter or on the multipathed device that is created by the multipathing software.

The calculations in this section provide an alternative method if you want to distribute the queue depth settings unevenly.

Note: Each node can have 10,000 concurrent I/Os. To ensure that the queue-full situation is never reached, this number is reduced in the calculations for Fibre Channel queue depth.