The customer reported performance degradation while uploading a large file or multiple files concurrently through the AVI Load Balancer.
When the same upload operation was performed by bypassing AVI and connecting directly to the backend server, the transfer completed successfully without any noticeable delay.
Avi Load Balancer : 22.1.x , Version below 30.2.2 & 31.1.1
Virtual Service: L7 / L4 with TCP Proxy
Collect the Virtual service packet capture and observe if we are noticing the following behaviour
Collect-Virtual-service-packet-capture
If traffic captures exhibit patterns similar to those described above, the behavior is likely caused by the Delayed ACK mechanism implemented in the AVI Load Balancer.
To mitigate this behaviour, the Delayed ACK configuration on the AVI Load Balancer can be adjusted. This can be achieved by either:
Support for modifying the Delayed ACK timer was introduced in the following AVI versions:
Support for disabling Delayed ACK and modifying Delayed ACK timer is introduced in the following AVI versions:
>> Steps to reduce the delayed_ack timers in 30.2.2/31.1.2 version
Step-1: Create a new network profile
Navigate to Templates >> Profiles >> Network click on CREATE button
Please select the below settings and leave remaining settings as it is.
Step-2: Login to the shell of Leader controller node and run the below commands
[admin:##-##-##-##]: > configure networkprofile <Network-profile-name>
[admin:##-##-##-##]: networkprofile> profile tcp_proxy_profile
[admin:##-##-##-##]: networkprofile:profile:tcp_proxy_profile> delayed_ack_timer_delay <value less than 100 milli seconds>
[admin:##-##-##-##]: networkprofile:profile:tcp_proxy_profile> save
[admin:##-##-##-##]: networkprofile> save
Steps to disable the delayed_ack setting from 31.2.1/30.2.6 version
Step-1: Create the new network profile same as above
Step-2: Login to the shell of Leader controller node and run the below commands
[admin:##-##-##-##]: > configure networkprofile <Network-profile name>
[admin:##-##-##-##]: networkprofile> profile tcp_proxy_profile
[admin:##-##-##-##]: networkprofile:profile:tcp_proxy_profile> no delayed_ack_mode
[admin:##-##-##-##]: networkprofile:profile:tcp_proxy_profile> save
[admin:##-##-##-##]: networkprofile> save