Speedtest and download of large files is slower when proxied by Cacheflow

book

Article ID: 168775

calendar_today

Updated On:

Products

CacheFlow Appliance Software

Issue/Introduction

Resolution

One possible reason for this issue is the TCP Window Size. The Cacheflow negotiates the TCP Window Size during the initial TCP handshake and retains that window size throughout the session. It is found that some client and environment is capable of increasing the TCP Window Size 'on the fly' during transmission which would allow for more bytes in flight. This capability in now supported in Cacheflow version 3.2.2.6 onwards in the 3.2 branch and also 3.4.2.1 onwards in the 3.4 branch.

With the addition of "Adaptive Window Sizing Support", the TCP send and receive socket buffers will start with a small buffer and quickly grow in parallel with the TCP congestion window to match network conditions. Buffer sizes grow as needed to allow the congestion window to reach the optimal size given by the product of bandwidth and round-trip time (RTT). The “tcp-ip window-size” setting is no longer used, and any previous settings will have no effect on either the starting window size or the maximum window size achieved during the lifetime of the connection.

If you are using a version prior to the 3.2.2.6 or 3.4, a potential workaround is to manually increase the TCP Window Size to 128K or 256K as outlined below. The recommendation however is to upgrade to a version in which adaptive window sizing is supported

To manually increase the initial window size to 256K:
#(config)tcp-ip window-size 256000
  ok



To revert the initial window size back to default:
#(config)tcp-ip window-size 65535
  ok