VNCm

There are a number of restrictions in the user experience that must be taken into account for a comfortable and consistent user experience. Some of the restrictions concern the organization of joint work, the other part concerns the work of each workstation (terminal client) separately.

In terms of general restrictions, the most important thing is to prevent a large volume of traffic from each workstation. To eliminate this situation, the AWS terminal client uses technologies for converting “USB device forwarding” with a large volume of traffic into “USB device service forwarding” with compressed traffic, in particular:

  • instead of “forwarding USB speakers”, the “audio traffic forwarding service” is used;
  • instead of “USB microphone forwarding”, “audio traffic forwarding service” is used;
  • instead of “USB WEB camera forwarding”, “audio and video traffic forwarding service” is used;
  • instead of “USB printer forwarding”, “print forwarding service” is used;
  • instead of “USB scanner forwarding”, “scanner forwarding service” is used;
  • instead of “USB drive forwarding” the “file folder forwarding service” is used.

In this case, forwarding of USB devices will remain operational provided there is sufficient bandwidth and network latency.

When transmitting video and microphone, additional synchronization is performed between the microphone and the image for the video stream and WEB camera.

An additional limitation is introduced for the web camera due to the fact that video traffic is generated on the workstation, and not on the guest desktop. This leads either to a large load on the terminal client or to a large network load, so the WEB camera must support the MJPEG compression protocol in order to compress traffic without using the resources of the workstation processor.

The RSclient application can be launched multiple times on the same thin client, but this action can lead to problems with the guest OS, so this use of RSclient is strongly not recommended. In particular, the following errors are possible:

  • in the case of launching guest desktop 1 and guest desktop 2, an ambiguous conflict situation will arise due to a shared USB device, for example:
    • the launched service for translating USB devices to IP will redirect the translation from guest desktop 1 to guest desktop 2 and this will lead to the loss of all devices for applications, loss of user data or crash of applications on one or both desktops;
    • The USB drive used for Guest Desktop 1 will be intercepted by Guest Desktop 2 and this will result in loss of user data or application crash on one or both desktops;
    • The USB drive used for Guest Desktop 1 will not be accessible by Guest Desktop 2;
    • The USB drive, when removed and plugged back in, will cause conflict between desktop applications.
  • in the case of launching guest desktop 1 and guest desktop 2, an ambiguous conflict situation will arise related to the local thin client folder being forwarded - the application used for guest desktop 1 and the guest desktop application 2 will open the same file for writing, which will result in the user being locked out or lost, or the application crashing on one or both desktops.
  • if the CUPS print service is launched for guest desktop 1 and guest desktop 2, an ambiguous conflict situation will arise related to the processing of print queues and their processing in the thin client, which will lead to unpredictable operation of the printing system.
  • if the microphone and sound service is started for guest desktop 1 and guest desktop 2, an ambiguous conflict situation will arise related to the processing of redirection of ALSA services and their processing on the thin client side, which will lead to unpredictable operation of the sound and microphone system.

Similar situations may arise with services for forwarding a web camera, scanner, or digital signature token.

To start the system once, the parameter must be set in RSclient:

single_launch = True