==========================================================
Citrix NetScaler Down State Flush Feature
Information
This article contains information about the NetScaler Down State Flush feature.
Background
The Down State Flush feature is enabled by default, which indicates that whenever a service is disabled on a NetScaler appliance, all the in-flight connections are flushed and clients must retry these connections again to get to some other server or service in the pool. The request or response which is processed at that time is honored by the appliance.
Disabling the Down State Flush feature changes this behavior; when the service is disabled all the in-flight connections are honored and no new connections are serviced by this service. If there is a persistent connection from the client, that also is not be honored.
The service can be disabled and set a timer (say 10 seconds), which indicates that the service honors all the existing connections including the persistent connections until the timer times out, and no new connections are honored. The Down State Flush starts after the timer times out.
Down State Flush Enabled (default)
The following connections are flushed:
- Services that have pending connections (TCP handshake not complete)
- Existing connections (TCP handshake complete)
- Pending requests (HTTP request received but not responded to)
- In-flight requests (HTTP request received, some response data is transmitted but request is not complete)
- Surge Queue
Down State Flush Disabled
All of the preceding are served and only the persistent connections are not served.
The setting can be changed on individual services and this controls the behavior when the services are going Down. The VIP setting takes care of the client side connections when the VIP is going Down. This setting also flushes the client as well as the server side connections when they are linked when the VIP goes Down. If the connections are not linked, only the client side connections are flushed.
========================================================
NetScaler downStateFlush Parameter Explained
Information
This article explains the behavior with the ‘-downStateFlush’ parameter as it relates to the instance of a NetScaler monitor marking a service down. It also explains what the client connected to that service could expect.
downStateFlush
The parameter ‘-downStateFlush’ is set to ON by default for any service. If a monitor probe fails the number of configured retries, the monitor marks the service DOWN. At the time the service is marked DOWN, one of the two outcomes can be expected by the client depending on the setting of the downStateFlush parameter as follows:
- If downStateFlush is set to ON, any established connections are freed by a zombie cleanup process. This process generates a reset with a window size of 9301 sent from the VIP to the client immediately terminating that connection.
- If downStateFlush is set to OFF, connections will not reset, but instead might become unresponsive or get a response depending on what state the back-end server is exactly in. That is, it might be DOWN from the monitoring criteria perspective, but still alive and capable of sending a response.
========================= End