Contents

Persistence

Website Visitors:

Persistence and Persistent connections:

A load balancing stateless protocol, such as HTTP, disrupts the maintenance of state information about client connections if persistence is not configured. Different transmissions from the same client might be directed to different servers even though all the transmissions are part of the same session. You can configure persistence on a load balancing virtual server that handles certain types of Web applications, such as shopping cart applications.

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. Ns cookie is inserted in the HTTP header. 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.

If users are coming in to your network using a vpn, that vpn will have a NAT ip. so, your netscaler will send that same ip to the backend servers. So, all the backend servers will get the same source ip from netscaler. so all the sessions will be routed to same backend server. In this case, sourceip is not a best option.

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.

Monitors query the state of the vservers.

default monitors are tcp-default and ping-default. For all tcp based services, tcp monitor is added automatically. It sends a 3 way hand shake to the backend servers to check the status. for all non tcp services, ping-default monitor is added automatically. sends a icmp request.

Want to learn more on Citrix Automations and solutions???

Subscribe to get our latest content by email.

If you like our content, please support us by sponsoring on GitHub below: