WebSocket Connections Disconnected on Default Server Timeout
search cancel

WebSocket Connections Disconnected on Default Server Timeout

book

Article ID: 391488

calendar_today

Updated On:

Products

VMware Avi Load Balancer

Issue/Introduction

Active WebSocket connections are unexpectedly terminated when the Default Server Timeout specified in the Avi Load Balancer's application profile expires, leading to application failures and symptoms such as frequent disconnections in console sessions and web applications.

  • Issues with Default Server Timeout.
  • VIP for Remote Desktop Web Gateway disconnects every hour.
  • VM Console frequent disconnection and black screen issue with vCenter web console.
  • Intermittent connection failures with web console.

 

Environment

 

  • Avi Load Balancer versions: 30.1.x, 30.2.x.
  • Applications utilizing WebSocket connections.
  • Virtual Services with configured Default Server Timeout.

 

Cause

When the Default Server Timeout expires, the Avi Load Balancer incorrectly terminates active WebSocket connections. This results in abrupt disconnections, even if the client is actively engaged in the session.

Resolution

Upgrade to one of the following fixed versions:

  • 31.1.1-2p2
  • 30.2.2-2p4
  • 30.2.3


Workaround:

  • A temporary workaround involves setting the server_timeout to its maximum value (6 hours) in the pool settings. This extends the connection duration but does not permanently resolve the issue.

    Steps to update server_timeout Pool configuration from Controller UI



    Steps to update server_timeout Pool configuration from Controller CLI
    SSH to Controller Node
    
    admin@:~$ shell
    Login: admin
    Password:
    
    [admin:]: >
    [admin:]: > configure pool <Pool-Name>
    [admin:]: pool> server_timeout
    
    INTEGER 0-21600000    Server timeout value specifies the time within which a server connection needs to be established and a request-respons...
    
    [admin:]: pool> server_timeout 21600000
    Overwriting the previously entered value for server_timeout
    [admin:]: pool> save


  • This issue specifically impacts WebSocket connections; other connection types may not be affected.

Additional Information