Tune performance
In its default configuration, Portworx attempts to provide good performance across a wide range of situations. However, you can improve your storage performance on your environment by configuring a number of settings and leveraging features Portworx offers. To get the most out of Portworx, follow the guidance provided in this article.
Configure the network data interface
You can provide Portworx with a specific network interface for data when you generate the spec as part of your installation. Portworx by Pure Storage recommends a network interface with a bandwidth of at least 10Gb/s and network latency below 5 milliseconds. If multiple NICs are present on the host, present a bonded interface to Portworx.
If you've already installed Portworx, you can update the network.dataInterface value of the install spec and reapply it.
Configure multiple NICs with LACP NIC Bonding
Portworx uses a single network interface for data traffic, which you define as the network.dataInterface in the StorageCluster spec. This interface handles all data traffic between Portworx nodes and applications. The interface can be either a single NIC or a bonded interface when multiple NICs are present on a node or host.
For optimal performance with bonded interfaces, ensure your Linux bonding configuration has the xmit_hash_policy set to layer3+4. The default value of layer2 will not effectively distribute traffic across multiple links. Without this setting, traffic between two hosts will only utilize a single network link, even when multiple links are available in the bond. This setting is critical to achieve the full bandwidth benefits of LACP bonding with Portworx.
For more information about bonding configuration options, refer to the Linux bonding documentation.
In earlier releases, Portworx used a single connection over the interface, which caused all network threads to contend for the single connection. This contention restricts load distribution and prevents full utilization of available bandwidth. With LACP (Link Aggregation Control Protocol) NIC bonding support, Portworx can now create multiple parallel connections over the same interface, which significantly increases throughput by transmitting multiple data streams concurrently.