Many methods have been used to determine the optimum number of hosts per storage port, but in my experience there are no hard and fast rules. My recommendation would be to assess the throughput of each host you want to connect to a particular port, determine the maximum throughput of that port, and add hosts to the port so that the total throughput of all hosts is slightly higher than the throughput of the port.
It is very important to ensure that comprehensive port utilisation statistics are available to detect any periods when the port is heavily utilised and could be causing a performance bottleneck.
There are a number of reasons why it is difficult to give a host count as an optimum fan-out ratio:
- Differing port speeds. A 4 Gb port can handle twice the throughput of a 2 Gb port and will allow you to add roughly double the number of hosts.
- Multipathing. If a host has two host bus adapters (HBAs) traffic will be aggregated through the two HBAs if the connection is active/active. If the connection is active/passive all traffic will go through one HBA while nothing goes down the other.
Under normal operating conditions you double the number of HBAs to ports as they will all be performing half the work of the host. If, however, there is an issue with the SAN and devices suddenly fail over, the remaining ports may be required to carry out twice the standard workload. This could cause slow performance if ports are highly oversubscribed.
This was first published in January 2010