Споткнулся о баянную (как оказалось) проблему — дублирование сессий между серверами в ферме Citrix.
т.е., клиент отвалился, сеанс висит в диспетчере задач; а клиент при переподключении сажается на другой сервер. Чтобы догадаться, чем это чревато, например, при редактируемом документе, напрягать фантазию не нужно.

Отрубать клиентов по таймауту тоже нельзя по вышеназванной причине.

Вариант с жесткой привязкой клиента к конкретному серверу в ферме не катит. — Зачем тогда нужна ферма вообще?

Как вариант решения — ограничение количества одновременных подключений на уровне фермы:

Дублирование сессий в ферме Citrix

Однако, говорят, это не самое лучшее решение. В общем, говенненькая задачка. Дублирование сессий в ферме Citrix

Буду решать кнутом (Дрессировкой пользователей корректно завершать сеансы) и пряником (Настройка автоматического реконнекта клиентсокого подключения при обрыве связи или другой причине дисконнекта).

Небольшое дополнение:

1. Для всех пользователей на конкретное приложение, свойства опубликованного приложения на вкладке Application Limit надо активизировать allow only one instance of application for each user.
2. Для всех приложений , но можно задать группу пользователей, создаем в цитриксе политику (если нет), открываем в ней Resours Limits и включаем политику Limit Concurrent Logon Session выставив количество соединений в 1. При надобности эту политику можно применить к конкретной группе или отдельным пользователям.
В обоих случаях при повторном подключении получим сообщение о превышении лимита подключения