Persistence
Persistence and Persistent connections:
Unless you configure persistence, a load balancing stateless protocol, such as HTTP, disrupts the maintenance of state information about client connections. Different transmissions from the same client might be directed to different servers even though all of the transmissions are part of the same session. You must configure persistence on a load balancing virtual server that handles certain types of Web applications, such as shopping cart applications.
Before you can configure persistence, you need to understand the different types of persistence, how they are used, and what the implications of each type is. You then need to configure the NetScaler appliance to provide persistent connections for those Web sites and Web applications that require them.
You can also configure backup persistence, which takes effect in the event that the primary type of persistence configured for a load balancing virtual server fails. You can configure persistence groups, so that a client transmission to any virtual server in a group can be directed to a server that has received previous transmissions from the same client.
About Persistence:
You can choose from among any of several types of persistence for a given load balancing virtual server, which then routes to the same service all connections from the same user to your shopping cart application, Web-based email, or other network application. The persistence session remains in effect for a period of time, which you specify.
If a server participating in a persistence session goes DOWN, the load balancing virtual server uses the configured load balancing method to select a new service, and establishes a new persistence session with the server represented by that service. If the server goes OUT OF SERVICE, it continues to process existing persistence sessions, but the virtual server does not direct any new traffic to it. After the shutdown period elapses, the virtual server ceases to direct connections from existing clients to the service, closes existing connections, and redirects those clients to new services if necessary.
Depending on the persistence type you configure, the NetScaler appliance might examine the source IPs, destination IPs, SSL session IDs, Host or URL headers, or some combination of these things to place each connection in the proper persistence session. It might also base persistence on a cookie issued by the Web server, on an arbitrarily assigned token, or on a logical rule. Almost anything that allows the appliance to match connections with the proper persistence session and be used as the basis for persistence.
The following table summarizes the persistence types available on the NetScaler appliance.
Persistence Type | Description |
---|---|
Source IP | SOURCEIP. Connections from the same client IP address are parts of the same persistence session. |
HTTP Cookie | COOKIEINSERT. Connections that have the same HTTP Cookie header are parts of the same persistence session. |
SSL Session ID | SSLSESSION. Connections that have the same SSL Session ID are parts of the same persistence session. |
URL Passive | URLPASSIVE. Connections to the same URL are treated as parts of the same persistence session. |
Custom Server ID | CUSTOMSERVERID. Connections with the same HTTP HOST header are treated as parts of the same persistence session. |
Destination IP | DESTIP. Connections to the same destination IP are treated as parts of the same persistence session. |
Source and Destination IPs | SRCIPDESTIP. Connections that are both from the same source IP and to the same destination IP are treated as parts of the same persistence session. |
SIP Call ID | CALLID. Connections that have the same call ID in the SIP header are treated as parts of the same persistence session. |
RTSP Session ID | RTSPSID. Connections that have the same RTSP Session ID are treated as parts of the same persistence session. |
User-Defined Rule | RULE. Connections that match a user-defined rule are treated as parts of the same persistence session. |
Depending on the type of persistence that you have configured, the virtual server can support either 250,000 simultaneous persistent connections or any number of persistent connections up to the limits imposed by the amount of RAM on your NetScaler appliance. The following table shows which types of persistence fall into each category.
Persistence Type | Number of Simultaneous Persistent Connections Supported |
---|---|
Source IP, SSL Session ID, Rule, destination IP, source IP/destination IP, SIP Call ID, RTSP Session ID | 250 K |
Cookie, URL Server ID, Custom Server ID | Memory limit. In case of CookieInsert, if timeout is not 0, the number of connections is limited by memory. |
Some types of persistence are specific to particular types of virtual server. The following table lists each type of persistence and indicates which types of persistence are supported on which types of virtual server.
Persistence Type | HTTP | HTTPS | TCP | UDP/IP | SSL_Bridge | SSL_TCP | RTSP | SIP_UDP |
---|---|---|---|---|---|---|---|---|
SOURCEIP | YES | YES | YES | YES | YES | YES | NO | NO |
COOKIEINSERT | YES | YES | NO | NO | NO | NO | NO | NO |
SSLSESSION | NO | YES | NO | NO | YES | YES | NO | NO |
URLPASSIVE | YES | YES | NO | NO | NO | NO | NO | NO |
CUSTOMSERVERID | YES | YES | NO | NO | NO | NO | NO | NO |
RULE | YES | YES | YES Note: Load balancing virtual servers of type TCP support rule based persistence only on NetScaler 9.3.e. |
NO | NO | YES Note: Load balancing virtual servers of type SSL_TCP support rule based persistence only on NetScaler 9.3.e. |
NO | NO |
SRCIPDESTIP | YES | YES | YES | YES | YES | YES | NO | NO |
DESTIP | YES | YES | YES | YES | YES | YES | NO | NO |
CALLID | NO | NO | NO | NO | NO | NO | NO | YES |
RTSPID | NO | NO | NO | NO | NO | NO | YES | NO |
Check out the link: http://support.citrix.com/proddocs/topic/netscaler-load-balancing-93/ns-lb-persistence-about-con.html and the following links in that site to know more about how to configure above given persistence types.
Want to learn more on Citrix Automations and solutions???
Subscribe to get our latest content by email.