The Citrix NetScaler initially selects a server by using a load balancing method. With persistence configured, enabling the NetScaler to send any subsequent client requests to the selected server, the server can access state information for that 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 NetScaler uses the load balancing methods to select a new service, and the new service becomes persistent for subsequent requests from the client. If the state of the selected service is “out of service”, it continues to serve the outstanding requests, but it does not allow new requests or connections. After the shutdown period elapses, no new requests or connections are directed to the service and the existing connections are closed.
The NetScaler uses Real-Time Streaming Protocol (RTSP) session ID persistence for Real-Time Streaming Protocol (RTSP) virtual servers, and you cannot change this setting on RTSP virtual servers. There is no reason to change it anyway. The NetScaler selects an RTSP service based on the load balancing method and uses the RTSP session ID to send the subsequent requests. RTSP is stateful, and when the client issues a SETUP command to the server, the server negotiates RTSP session IDs in the SETUP response message. The NetScaler creates a session between the client and the servers by using the RTSP session ID. The RTSP requests and responses must have the session ID header to identify the session.
Sometimes multiple servers can have the same session ID, and, therefore, unique sessions cannot be created between the client and the server. In such cases, you can configure the NetScaler to append the server IP address and port to the session ID so that the session ID is unique. The following table describes the parameter that the NetScaler can use to append the server IP address and port.
Parameters for RTSP Session ID-Based Persistence
|Session ID Mapping
|Map RTSP session ID by appending the IP address and port of the server to the session ID. The parameter is enabled on a service and the non-persistent data connections are not routed through the NetScaler. When the setting is enabled, the NetScaler rejects any request that does not contain the prefix. Possible values: ON and OFF. Default: OFF.|
|If the client sends multiple SETUP requests on one TCP connection, the NetScaler sends the SETUP requests to the same server because the NetScaler makes the load balancing decision for every TCP connection. In this case, the NetScaler does not forward the SETUP requests to different servers based on the session ID.|