Skip to main content

Improve ONTAP TCP WAN performance with PRR and RACK

Contributors netapp-barbe

Beginning with ONTAP 9.19.1, ONTAP improves TCP data transfer performance over lossy, high-latency WAN links by integrating two loss-recovery features, PRR and RACK, into the ONTAP TCP stack. PRR is suitable for all networks and is enabled by default. RACK is suitable for congested networks with link speeds of approximately 25 Gigabits/second and is disabled by default.

  • Proportional Rate Reduction (PRR): Sends recovery data at a rate that closely matches the reduced congestion window during loss recovery, avoiding both under-utilization and excessive retransmission bursts.

  • Recent Acknowledgment (RACK): Uses time-based detection, rather than traditional duplicate-ACK counting, to identify lost packets more quickly and accurately, even when packets arrive out of order. RACK includes Tail Loss Probe (TLP), which completes transactional communications quicker, even when one of the critical, final packets for a specific RPC is lost and new data would only become available when the previous request is finished. This enables faster request completion and reduces unnecessary retransmissions across challenging network links such as WLAN (WiFi), WAN, Internet VPNs, and Cloud tunnels.

PRR and RACK are agnostic to the protocol in use and improve NFS, SMB, iSCSI, NVMe/TCP, and S3 access as well as performance of ONTAP features that use the intercluster network, including SnapMirror and FlexCache over WAN connections. These features are supported across all NetApp storage systems.

Note Enabling RACK is only recommended for congested networks with link speeds of approximately 25 Gigabits/second. On clean network environments with link speeds of 25 Gigabits/second or above, RACK might not yield the same throughput as the standard stack.
Steps

PRR is enabled by default. RACK is disabled by default. If your environment is suitable for RACK, you can enable it using the following steps.

  1. Enable the RACK TCP stack feature for the IPspace:

    network ipspace modify -ipspace <ipspace_name> -tcp-stack rack
    Note This change only affects new connections. To use RACK on any existing connections to the IPspace, either migrate the LIF between nodes, or momentarily disable then reenable the LIF.
  2. Confirm the change was made to the IPspace:

    network ipspace show -fields tcp-stack
Related information

Migrate a LIF