About this document


This optimization document helps optimize the RDP protocol for low bandwidth environments thus improving performance while accessing resources over RDP.

Various changes pertaining to the policies which can be applied and registry changes to be made are described here.


NOTE: All the  below mentioned changes have been tested for Windows 7, 8,10, server 2k12R2 and 2k16.

Procedure


Server-Side Settings


Please follow the below steps.

  • Open “Group Policy MMC Snap-in” on your policy server
  • Start  > Run >  “gpedit.msc”
  • Navigate to “Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Remote Session Environment”.
  • Enable the following settings:

        Limit maximum color depth = 15bit

        Enforce Removal of Remote Desktop Wallpaper = true

        Set Compression Algorithm for RDP data = optimized to use less network bandwidth

        Configure Image Quality for RemoteFX Adaptive Graphics = Medium

        Under “Remote Session Environment > RemoteFX for Windows Server 2008 R2”.

                Optimize Visual Experience when using RemoteFX = (Screen Capture Rate: Lowest + Image Quality: Lowest)

                Optimize Visual Experience for Remote Desktop Service Sessions = (Visual Experience = Text)


 The above settings are known to improve the RDP performance as it reduces the use of network bandwidth and both server/client load on processing the RDP data.

  • We can also configure the below settings to restrict the redirection of additional resources between the server and client machine. (e.g.: If there is no need for redirecting the local printer, one can disable printer redirection)
  • “Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Device and Resource Redirection”.
  • The above applies for “Printer Redirection” section as well. "Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Printer Redirection"

            Do not set default client printer to be default printer in a session = (Set it to "Enabled")

            Do not allow client printer redirection = (Set it to "Enabled")

            Redirect only the default client printer = (Set it to "Enabled")

  • After applying the above changes go-to Start > Run > “gpupdate /force”. Log-off and login again for the changes to be applied.

General Settings:

System Performance Settings

For boosting the overall system performance make the following changes in both client and server machine.

  • Open System properties (right click ‘My Computer’ > Properties).
  • Navigate “Advanced system settings > Advanced Tab > Settings Button > Visual Effect Tab”.
  • Select the radio button name “Adjust for best performance”.
  • If you’re a fan of “Anti-Aliased Font” (Clear Type Text), you can choose “Custom” radio button with only “smooth edges of screen fonts” checked.

Page file

Insufficient page file size can cause memory allocation failures in apps or system components. You can use the memory-to-committed bytes performance counter to monitor how much committed virtual memory is on the system.

Antivirus

  • Installing antivirus software on an RD Session Host server greatly affects overall system performance, especially CPU usage.
  • We highly recommend that you exclude from the active monitoring list all the folders that hold temporary files, especially those that services and other system components generate.

Task Scheduler

  • Task Scheduler lets you examine the list of tasks that are scheduled for different events.
  • For an RD Session Host server, it is useful to focus specifically on the tasks that are configured to run on idle, at user sign-in, or on session connect and disconnect. Because of the specifics of the deployment, many of these tasks might be unnecessary and better to be disabled.

Desktop Notification Icons

  • Notification icons on the desktop can have an expensive refreshing mechanism. You should disable any notifications by removing the component that registers them from the start-up list or by changing the configuration on apps and system components to disable them.
  • You can use Customize Notifications Icons to examine the list of notifications that are available on the server.

 

RemoteFX data Compression

Microsoft RemoteFX compression can be configured by using Group Policy:

  • “Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Remote Session Environment > Configure compression for RemoteFX data”.  Three values are possible:
  • Optimized to use less memory Consumes the least amount of memory per session but has the lowest compression ratio and         therefore the highest bandwidth consumption.
  • Balances memory and network bandwidth Reduced bandwidth consumption while marginally increasing memory consumption     (approximately 200 KB per session).
  • Optimized to use less network bandwidth further reduces network bandwidth usage at a cost of approximately 2 MB per session. If you want to use this setting, you should assess the maximum number of sessions and test to that level with this setting before you place the server in production.

You can also choose to not use a RemoteFX compression algorithm.

Choosing to not use a RemoteFX compression algorithm will use more network bandwidth, and it is only recommended if you are using a hardware device that is designed to optimize network traffic.

Even if you choose not to use a RemoteFX compression algorithm, some graphics data will be compressed.

 

Drag only the Outline of the window

  • Probably the most expensive operation in RDP is dragging a window around. A simple way to save WAN bandwidth is to show only the outline when dragging a window.
  • Start > Run > “regedit”. Navigate to HKEY_CURRENT_USER > Control Panel > Desktop and change DragFullWindows to 0.
  • Reboot for the changes to take effect.

 

 

Disable ClearType Fonts

ClearType fonts improve the readability of text on screen, but also consume extra bandwidth.

To disable ClearType fonts

  • Open Control Panel > Appearance > Fonts > Adjust ClearType text
  • Deselect “Turn on ClearType” to disable ClearType fonts and click then click Next.
  • This will begin a wizard which will ask you to select the font samples that look best on your screen. Here we have just kept the default settings as they look best on our screen.
  • This change can reduce the bandwidth by up-to 10%.


Improving RDP – Slow initial Connection time.

One reason behind RDP connection lag occurs on machines that cannot access the internet.

This is because remote desktop reaches out to the internet to check for root certificates that may have been revoked. Since the machine cannot get out to the internet, it sits there until time-out and then your RDP connection proceeds.

FIX: For machines that cannot access the internet, make the following changes in your group policy.

  • Computer Configuration > Administrative Templates > System > Internet Communication Management > Internet Communication Settings.
  • Configure the setting for "Turn off Automatic Root Certificates Update" set it to ENABLED.

Other fix for RDP- slow initial connection

  • If you have a file with “(dot)rdp” extension, edit the file using notepad and add the following line minus the quotes:

        “enablecredsspsupport:i:0”

PDF Slow Display Performance 

Issue:

When viewing PDF files in Adobe Acrobat or Adobe Reader in a Terminal Server /Accops Session Host environment, the display is slow to update over an RDP connection. This issue is particularly noticeable when scrolling through PDF documents that contain high-resolution images.

 

Solution 1:

Update the Page Display preferences in Acrobat or Reader.

Change the following settings in Acrobat or Reader. You can either disable these options directly in Reader/Acrobat

  • "Edit > Preferences > Page Display > Rendering"

Or using the registry keys for system administrators:

Deactivate 2D Graphic acceleration

  • HKCU\Software\Adobe\Acrobat Reader\9.0\AVDisplay - bUse2DGPUf=dword:0

Deactivate Smooth images

  • HKCU\Software\Adobe\Acrobat Reader\9.0\Originals - bAntialiasImages=dword:0

Deactivate Smooth line art.

  • HKCU\Software\Adobe\Acrobat Reader\9.0\Originals - bAntialiasGraphics=dword:0

Set Smooth Text to None (Optional: some users have reported acceptable performance without setting Smooth Text to None).

  • HKCU\Software\Adobe\Acrobat Reader\9.0\Originals - bAntialiasText=dword:0
  • HKCU\Software\Adobe\Acrobat Reader\9.0\Originals - iAntialiasThreshold=dword:0
  • HKCU\Software\Adobe\Acrobat Reader\9.0\Originals - benableDDR=dword:0

NOTE: 

  • Changing registry values is not officially supported by Adobe and you do so at your own risk.
  • One should only be changing the registry settings if you have the correct privileges and experience in this area.
  • System Administrators should change these settings first using the Preferences dialog in Adobe Reader (not using the registry) and re-test the performance.
  • Once you have the right combination of settings that work, then you should record the values of these registry keys to use for your other Reader installations.
  • This is important as the value of the iAntialiasThreshold key can differ (0, 1, or 12) depending on which of the other options are deactivated.

These settings will improve the display performance on low-bandwidth connections, however, they can adversely affect the display performance on LAN connections. You will need to test these thoroughly.

Solution 2:

Server side

In REGISTRY

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD

            flow control 1

            flow control diplay 80

            flow control channel 20 (we used 175)

            flow control forced compression 0

  • CHANGES

            FlowControlDisable = 0.

            FlowControlChargePostCompression = 0

HOT FIX

  • Hot Fix applied - Windows6.1-KB981156-x64.msu

 

Client side

In ACROBAT settings

  • view / page display change from page display, single page to single page continuous
  • Edit / preferences / rendering: smooth text - none

In REGISTRY

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD

        flow control 1

        flow control diplay 80

        flow control channel 20

        flow control forced compression 0

  • CHANGES

        FlowControlDisable = 0.

        FlowControlChargePostCompression = 0

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

        New: DWORD "EnableTCPA"

        Value: 0

Solution 3:

  • Under Edit > Preferences:

        Page Display > Smooth Text > None

  • Making your text more beautiful takes time, it might have an impact on your performance.

        Page Display > Enhance thin lines > Unchecked

  • Like text, 2D acceleration might have an impact too.

        Page Display > Use 2D graphics acceleration > (Un)checked

  • It's essential to try both states here, who knows your CPU is faster and thus software-base is faster.
  • If you uncheck this, you might want to uncheck Smooth line art and Smooth images too.

Slow Scrolling through browser in RDP session

Solution1:

Changing the compression algorithm

  • Type in the search bar at the start menu: “gpedit.msc”.

        Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Remote Session Environment.

Disabling the TCP auto-tuning (for Windows Vista+ host)

  • Open cmd.exe as administrator.
  • Type in: netsh interface tcp set global autotuning=disabled
  • To check if it worked: netsh interface tcp show global

To re-enable:

  • netsh interface tcp set global autotuning=normal

Solution 2:

Graphics hardware acceleration

  • On the remote system:

        Classic Tools menu > Options > Advanced

        On the "General" mini-tab, uncheck the box for "Use hardware acceleration when available"

        Then restart Firefox.