The article describes our enhancement solutions for Microsoft Remote Desktop Protocol (RDP) for Windows, iOS, Android, Mac OS X, and Linux remote desktop clients that provide new approaches for improving a user experience in a remote session.

 

Written by:

Rina Krupskaya,

QA Coordinator at Network Testing Team

 

Contents:

Main Purpose of Microsoft RDP

Microsoft RDP Enhancement

    Flash Content Viewer

    Single-Driver Printing Solution

    USB redirection

    Enhanced Remote Audio Redirection

    Remote Sound Redirection in Browser

    Clipboard for Text (Files) Redirection

    Microphone Redirection

    Adaptive Graphics

    Dynamic Resize Feature Support

    Remote FX Multitouch Gestures Support for Android and iOS

Conclusion

Main Purpose of Microsoft RDP

Microsoft Remote Desktop Protocol (RDP) is a proprietary protocol that provides a user with a remote access to the server with a running service of terminal connections.

pic

It’s notorious that we can’t do without Microsoft products. However, there are some cases when iOS, Android, Mac OS X, or Linux devices are more effective to use because of corporate specifics or job requirements.  For instance, it’s more convenient for doctors to use tablet computers during regular visits to patients in hospitals.

Unfortunately, there are some applications that are compatible only with Windows and don’t have alternatives for iOS, Android, Mac OS X, and Linux. In this case, it will be reasonably to use terminal servers (or Virtual Desktop Infrastructure), running under Microsoft server operating systems. For this purposes, Microsoft developed Remote Desktop Protocol or RDP.

Besides developing the data transfer protocol, Microsoft also has client applications for data transfer to remote desktops. The most popular Microsoft RD clients are for Windows, Mac OS X, Android, and iOS systems.

However, it’s impossible for Microsoft to implement in their products every function that their users may want. Fortunately, there is a sufficient number of custom RDP solutions for different platforms that eliminate the need to look for an alternative remote desktop client.

Microsoft RDP Enhancement

The experts of our company provide a wide range of solutions and enhancements for Microsoft RDP clients.

We can establish a remote Windows\Linux session and RemoteApp using the following operating systems: Windows, iOS, Android, Mac OS X, and Linux. Besides, we provide users with a range of additional functionality that ensures a more convenient and secure RDP workflow in the remote session.

In addition to supporting standard RDP functions, we have our own set of RDP enhancements, namely:

Flash Content Viewer

Our solution redirects Flash-content from the RDP server to the client. This implementation allows reducing the workload from the server processor and redirecting flash-content to the client processor, ensuring a better scalability and improved productivity with the full synchronization of audio and video streams.

This solution lets you control flash channel bandwidth and connect to the internet either from the client or the server.

The approach allows users to easily access flash-content, like educational and corporate video lessons, as well as build-in flash videos on many websites.

Supported client platforms: Windows, Mac OS X, and Linux.

Using this function in RDP as is, the user may face such problems as flash-content playing as a slide show, audio and video dissinchronization.

Single-Driver Printing Solution

A Single-Driver Printing solution was developed for adding printing functions that aren’t available in RD Easy Print. The main function of this solution is the use of a universal print driver. Thanks to this approach, there is no need to install a printer driver on remote servers as opposed to regular RDP printing functionality.

This solution also has advanced RDP settings (which aren't available in Microsoft RDP), that let you choose packaging method for data transferring, change channel workload, and opt for manual printer selection (for optional selection of printer session), and configure distributed system.

Supported client platforms: Windows, Mac OS X, and Linux.

USB redirection

Our approach allows redirecting any USB devices of the client to the remote session. It can be such devices as web cameras, printers, scanners, flash-disks, tablets, smartphones, and other devices (for instance: Busy Light).

After redirection to the remote session, the user can deal with USB device in the same way as locally.

Supported client platforms: Windows and Linux.

This function isn’t available in the original version of RDP. If a device is recognized as PnP, there is an option to redirect it to the remote session using Windows RD client functions, but not all USB devices are recognized as PnP.

Enhanced Remote Audio Redirection

Enhanced Remote Audio redirection ensures high-quality bi-directional sound that allows you to play high-quality audio content and redirect microphone/earphone to the remote session.

The advantage of this solution is that we don't limit you to use only a standard codec, but you can choose audio codecs according to your needs (arranging meeting call or phone calls, playing songs with good quality, etc). Using our solution, you will get a better sound with less network bandwidth and an opportunity to settle the sound quality.

Our solution is compatible with the following applications:

  • Microsoft Office Communicator;
  • Avaya Software;
  • Skype or Skype for business.

This function is very important for cases when the user needs to hear incoming information and be heard. For instance, our solution can be used during conference calls when people approve important business decisions, build future business strategy, or pitch projects.

Supported client platforms: Windows and Linux.

Remote Sound Redirection in Browser

Companies often simplify setting configuration for their employees, providing them with only a website URL for running a remote session.

The session runs in a browser as a new tab and allows user to access remote functionality, including using various office applications, taking part in meeting calls, or watching educational videos, etc.

We have successfully implemented Remote Sound Redirection in remote sessions running on Internet Explorer, Edge, Safari, Firefox, Chrome, and other browsers for Windows, iOS, Android, Mac, and Linux PDP client.

It’s important that this implementation allows avoiding long audio delays. Our specialists performed a huge scope of work to achieve acceptable latency for the end users that is ~50-150 milliseconds, depending on the network and environment.

Microsoft doesn’t provide any RDP alternative function for its clients.

Clipboard for Text (Files) Redirection

Clipboard for Text (Files) Redirection overcomes any limitations on files/texts between the client and the remote session.

This solution allows a user to copy a text from iOS, Android, Mac, Linux devices and paste it to the remote session and vice versa. There is also an opportunity to share files between Mac or Linux devices and the remote session.

Test/file copying isn’t available for all Microsoft RD clients.

Microphone Redirection

This solution allows users to redirect microphone from iOS, Android, Mac, and Linux devices to the remote session and use it for audio recording and meeting calls.

Microsoft RD clients for iOS, Android, Mac platforms don’t have a function for microphone redirection.

Adaptive Graphics

Adaptive Graphics allows using a new technology for remote session rendering, so a user can deal with RemoteFX adaptive graphics.

In addition to the use of RemoteFX adaptive graphics, you can also use advanced codecs (H.264, clear+progressive), which significantly reduce the bandwidth usage (and requirements) without losing picture quality.

Adaptive Graphics is supported by operating systems starting from Windows Server 2012 and Windows 8.

Beginning from Windows 8, Windows 8.1, Windows 2012, and Windows Server 2012 R2 operating systems, Microsoft RDP uses only two streams:  

Clear codec is used for text data by letting the operating system know that it deals with a text and transfers it as a text (this is typical for .pdf, MS Office files, etc.)

Progressive codec is designed for pictures. The main advantage of this codec is that it allows sending a picture with the lowest quality and then rendering it to the initial quality.

AVC 444 is used as the one and only codec starting from RDP client for Windows 10 (1511/1607), 2016:

AVC 444 allows to process text and pictures in one stream. The advantage is achieved due to the compression of transferring data and reducing the network workload because of the increased procession workload on the server and the client (in case a client has a dedicated graphics card).

Supported client platforms: Windows, iOS, Android, Mac OS X, and Linux.

Dynamic Resize Feature Support

Dynamic Resolution feature is used when the user runs the remote session and changes iOS or Android device orientation (for instance, from landscape to portrait). In this case, the remote session resolution will be automatically resized to fill the screen depending on the device orientation.

Our solution allows the user to fully concentrate on the session workflow without paying attention to the device orientation.  In simple words, we make the user workflow more comfortable.

Dynamic resize feature isn’t available in Microsoft RD client for iOS.

Moreover, our feature is also supported in Mac and Linux devices and activates in case of any resize of the session or application window (the user doesn’t see a scroll bar for the session window, as all data seized according to the new screen size), change of the screen resolution or when you plug/unplug the display.

Dynamic resize is performed without reconnection to RDP port forwarding to work with new operating systems like Windows Server 2012R2, Windows 10, Windows 8.1, 2016.

Dynamic resize requires reconnection in old operating systems like Windows 7, Windows 8, and Windows Server 2008R2, 2012).

Mac RDP client doesn’t support the implementation of this feature. After the session window is resized, the user sees a scroll bar for the window and has to scroll in order to see one or another application or icon.

Remote FX Multitouch Gestures Support for Android and iOS

Modern tablets use touch screens and don’t require physical keyboard and mouse for control. In order to make remote session from mobile devices more convenient, we implemented Multitouch gestures in the RDP.

Remote FX Multitouch Gestures allows using specific gestures to control the remote server (left/right click, select an area, move, drag or resize an object, scroll up and down, zoom in and out, quick zoom in and out, etc.). The feature is supported starting with Windows Server 2012 and Windows 8.

This function isn’t fully implemented in Microsoft RD client for iOS and Android.

Conclusion

If you are looking for extended RDP functionality as part of your solution, specialists of our company can provide you with an SDK for our custom RDP solution. Apriorit team can also help you implement the existing RDP enhancements in your solution or work on further development of this technology.

Subscribe to updates