A common topic of discussion on the user forums is having the ability (or not having the ability) to reconnect to disconnected sessions. In addition to searching Citrix’s site for known issues and hotfixes, there are a few items to consider in the troubleshooting process. This article offers a few simple suggestions to accelerate that process.
Were users able to reconnect to disconnected sessions before?
The zone data collector (ZDC) is responsible for keeping track of which users have disconnected sessions on which servers. If your users were able to reconnect to disconnected sessions before, there could be a problem with your ZDC. To confirm that a disconnected session exists for a specific user, either check the Citrix Management Console (CMC) for disconnected sessions or run the queryds command-line tool.
The queryds tool is a free tool from Citrix that lets you view the contents of a ZDC’s dynamic store—an in-memory set of tables where the ZDC tracks dynamic information. QueryDS can be found on your Presentation Server CD in the \Support\debug directory or it can be downloaded from MyCitrix.com as part of the CTXDataXP utility. Copy QueryDS.exe to one of your Presentation Servers and run the following command from a command prompt to determine if you have any disconnected session listed in the table:
If a disconnected session is not listed for the user in question then either (a) the entry wasn’t communicated properly to the ZDC or (b) the ZDC isn’t working right and didn’t properly write the entry to its dynamic store. In either case, you can try stopping and starting the IMA service on your ZDC and/or specifying another server to be the ZDC.
If your users have never been able to reconnect to disconnected sessions then you need to configure your environment to allow this capability. There are two ways to do this--using Workspace Control or editing the ICA connection properties via the Citrix Connection Configuration (CCC) tool.
If you’re using Presentation Server 3 or newer, using Workspace Control is the most efficient method of reconnecting to disconnected sessions. It also provides centralized administration and more functionality than if you edited the CCC on each individual Citrix server. With Workspace Control the user reconnects to a disconnected session and the reconnected session will take on the local settings of the active client device. For example, if a user moves from one client device to another, the local printer settings will follow the user. With Workspace Control the user also has the luxury of disconnecting and reconnecting to multiple sessions with one click.
To use Workspace Control your clients must access their Citrix sessions through the Web Interface (WI) or the Program Neighborhood Agent (PNA). To enable Workspace Control on the server side simply launch the Web Interface admin tool (either the admin web site or the Access Suite Console MMC snap-in, depending in which version of Web Interface you’re using). For details on configuring Workspace Control refer to your Presentation Server Administrator’s Guide.
Citrix Connection Configuration
If using Workspace Control is not an option it is still possible to reconnect to disconnected sessions by editing the ICA connection in the Citrix Connection Configuration (CCC) utility. This option, however, is limited and does not provide the full functionality of Workspace Control. For example, local client device settings will not follow a user if they log in on a new client device and reconnect to a disconnected session. The reconnected session in this scenario would have the printer settings of the original session. Further, by editing the CCC to reconnect to disconnect sessions you cannot reconnect to all of your disconnected applications in one click. You must launch each application individually to pick up the reconnected session.
To edit the connection to allow reconnecting to disconnected sessions, launch the CCC and go into the advanced properties of the ica-tcp connection. Uncheck “Inherit User Disconnection Timeout” and “No Disconnection Timeout” and assign a Disconnection Timeout value (for example 60 minutes). Note that if a disconnected session times out from exceeding the value you set, naturally, you will not be able to reconnect as your original session will be terminated. Uncheck inherit user config to the right of, “On broken or timed-out connection” and select disconnect from the drop down menu. Uncheck inherit user config to the right of, “Reconnect sessions disconnected” and select from any client or from this client only, whichever option you choose.