After upgrading the environment from View 5.2 to Horizon View 6.0 a few users started to notice that their View desktop would log off overnight. This was new to them, as prior to the upgrade their PCoIP connection to their desktop would remain active throughout the night. These users were running the View 5.1 Client on Windows 7 desktops. The first step to understand the change in behavior was to review logs. First, was to review the logs from the View Client installed on their desktop, located here: C:\Users\%username%\AppData\Local\VMware\VDM\logs. The logs reported the following message at around 4am:
<DesktopWindow> [wswc_pcoip] The connection to the remote computer timed out and was disconnected.
Doing the math, it was determined that the View Desktop disconnection occurred exactly twenty hours after the user had logged in the prior morning. This seemed suspiciously precise. Next, it was time to look at View Administrator, as some new options are available in Global Settings. The Forcibly disconnect users setting was set to 30 days, so that was not the culprit.
It was time to turn to Google.com for a bit of searching on the Forcibly disconnect users setting. This turned up information on the Forcibly disconnect users setting in the View Administration guide for Horizon 6.0 located here. The information in the Administration Guide states that “For clients that do not support application remoting, a maximum timeout value of 1200 minutes applies if the value of this setting is Never or greater than 1200 minutes.” This was the 20 hour number that was seen in the logs, but did not help address the immediate problem.
Further research turned up an interesting VMware KB article 2091458, which helped shed light on the way the various versions of software work together, resulting in the change in behavior. The article starts by discussing new capabilities in Horizon 6.0 where Horizon clients can inform the View Connection Server that a user is still interacting with the client by detecting mouse and keyboard actions. This setting is controlled by the Forcibly disconnect users setting mentioned earlier. The article then went on to explain that the 20 hour limit will be imposed upon client versions prior to 3.0 and Horizon Clients for Windows Store. This article provided a little more clarity surrounding specific versions, which was helpful. Finally, the article explained how to configure the View LDAP so that these legacy clients are not disconnected after the 20 hour period. This is done by adding the cs-disconnecte legacyclientsessionsontimeout=0 attirbute to pae-NameValuePair on the object CN=Common, OU=Global, OU=Properties which is shown in the picture below.
This seemed to be a good stop-gap measure until all of the View clients were upgraded, ensuring sessions from older clients are not disconnected after 20 hours.