4.4.1 Stickyness to source IP address
Configuring a cluster port to be sticky allows subsequent client requests to be directed to the same server. This is done by setting the sticky time to a positive number. The feature can be disabled by setting the sticky time to zero.
The sticky time value represents the timeout of the affinity counter. The affinity counter is reset every time Load Balancer receives a client request. If this counter exceeds sticky time, new connections from this client may be forwarded to a different back-end server.
In Dispatcher and CBR components, you can set the sticky time in three elements of the Load Balancer configuration:
Executor Set a specific sticky time value for all clusters and ports in the configuration. Cluster Set a specific sticky time value for each cluster. Port Set a specific sticky time value for each port. Setting affinity at the different levels means that any subsequent lower level objects inherit this setting by default (when they are added). In fact, the only true value that is used for sticky time is what is set at the port level. So if you set the sticky time for the Executor to 60, then add a Cluster and Port, these also have a sticky time of 60.
However, if you set a different sticky time for the Cluster or the Port, for example, you set it to 30, then this value overrides the Executor sticky time.
In Site Selector, you set the sticky time on the sitename.
This feature applies to the Dispatcher (all forwarding methods), the CBR and the Site Selector components of Load Balancer.
This affinity strategy has some drawbacks: some ISPs use proxies that collapse many client connections into a small number of source IP addresses. A large number of users who are not part of the session will be connected to the same server. Other proxies use a pool of user IP addresses chosen at random, even for connections from the same user, invalidating the affinity.