You must configure persistence on a virtual server if you want to maintain the states of connections on the servers represented by that virtual server (for example, connections used in e-commerce). The appliance then uses the configured load balancing method for the initial selection of a server, but forwards to that same server all subsequent requests from the same client.
If persistence is configured, it overrides the load balancing methods once the server has been selected. If the configured persistence applies to a service that is down, the appliance uses the load balancing methods to select a new service, and the new service becomes persistent for subsequent requests from the client. If the selected service is in an Out Of Service state, it continues to serve the outstanding requests but does not accept new requests or connections. After the shutdown period elapses, the existing connections are closed. The following table lists the types of persistence that you can configure.
| Persistence Type |
Persistent Connections |
| Source IP, SSL Session ID, Rule, DESTIP, SRCIPDESTIP |
250K* |
| CookieInsert, URL passive, Custom Server ID |
Memory limit. In case of CookieInsert, if time out is not 0, any number of connections is allowed until limited by memory. |
The * in the preceding table refers to the following:
250K sessions per core is the default per packet engine. To configure 1 million session entries per packet engine, run the following command:
set lb parameter -sessionsthreshold <1000000*number of PE>
For a 3 PE system, run the following command:
set lb parameter -sessionsthreshold 3000000
Table 1. Limitations on Number of Simultaneous Persistent Connections
If the configured persistence cannot be maintained because of a lack of resources on an appliance, the load balancing methods are used for server selection. Persistence is maintained for a configured period of time, depending on the persistence type. Some persistence types are specific to certain virtual servers. The following table shows the relationship.
| Persistence TypeHeader 1 |
HTTP |
HTTPS |
TCP |
UDP/IP |
SSL_Bridge |
| Source IP |
YES |
YES |
YES |
YES |
YES |
| CookieInsert |
YES |
YES |
NO |
NO |
NO |
| SSL Session ID |
NO |
YES |
NO |
NO |
YES |
| URL Passive |
YES |
YES |
NO |
NO |
NO |
| Custom Server ID |
YES |
YES |
NO |
NO |
NO |
| Rule |
YES |
YES |
NO |
NO |
NO |
| SRCIPDESTIP |
N/A |
N/A |
YES |
YES |
N/A |
| DESTIP |
N/A |
N/A |
YES |
YES |
N/A |
Table 2. Persistence Types Available for Each Type of Virtual Server
You can also specify persistence for a group of virtual servers. When you enable persistence on the group, the client requests are directed to the same selected server regardless of which virtual server in the group receives the client request. When the configured time for persistence elapses, any virtual server in the group can be selected for incoming client requests.
Two commonly used persistence types are persistence based on cookies and persistence based on server IDs in URLs.