Soup Up Your Terminal Server: Optimizing Explorer’s Network Performance

Update: The ADM file can now be downloaded here.

I recently came across a post in the Windows Server Performance Team’s blog that lists several registry values which can be used to tune Explorer’s SMB performance by modifying the following:

  • Searches for Desktop.ini files used for folder customization
  • Periodic refreshes of folder contents
  • Searches for supporting library (.dll) files
  • Individual file details and attributes pulled for each file
  • Thumbnail extraction

I found the tips very interesting, but also lacking background and explanation. That is why I looked up the the KB articles explaining the registry values mentioned and created an ADM template for easily setting the values via group policy.To give you a better feeling what we are talking about, here is the list of registry changes recommended by the original poster:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"UseDesktopIniCache"=dword:00000001
"NoRemoteRecursiveEvents"=dword:00000001
"NoRemoteChangeNotify"=dword:00000001
"StartRunNoHOMEPATH"=dword:00000001
"NoRecentDocsNetHood"=dword:00000001
"NoDetailsThumbnailOnNetwork"=dword:00000001
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MRXSmb\Parameters]
"InfoCacheLevel"=dword:00000010
[HKEY_CLASSES_ROOT\*\shellex\PropertySheetHandlers\CryptoSignMenu]
"SuppressionPolicy"=dword:00100000
[HKEY_CLASSES_ROOT\*\shellex\PropertySheetHandlers\{3EA48300-8CF6-101B-84FB-666CCB9BCD32}]
"SuppressionPolicy"=dword:00100000
[HKEY_CLASSES_ROOT\*\shellex\PropertySheetHandlers\{883373C3-BF89-11D1-BE35-080036B11A03}]
"SuppressionPolicy"=dword:00100000
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\SCAPI]
"Flags"=dword:00100c02
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
"SafeDllSearchMode"=dword:00000001
"SafeProcessSearchMode"=dword:00000001

Of those settings, several go into the policies registry branch. But only the following is configurable via group policy by default:

  • NoRecentDocsNetHood: User -> Desktop -> Do not add shares of recently opened documents to Network Locations (supported only on: W2k, XP, W2k3)

All other settings are described in various Microsoft KB articles but cannot be set via group policy by default:

And then there are the following machine-specific settings that need to be set outside the policies registry branch as a tattooing policy:

The ADM template file I created allows for setting these values independently and, where applicable, either as part of the user or the computer configuration. It also contains the URLs of the relevant KB articles.

;
; Created 2007-11-07 by Helge Klein
;

;
; Machine settings
;
CLASS MACHINE

CATEGORY !!Optimization

CATEGORY !!ExplorerSMB

POLICY !!UseDesktopIniCache
EXPLAIN !!UseDesktopIniCache_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "UseDesktopIniCache"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!NoRemoteRecursiveEvents
EXPLAIN !!NoRemoteRecursiveEvents_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "NoRemoteRecursiveEvents"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!NoRemoteChangeNotify
EXPLAIN !!NoRemoteChangeNotify_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "NoRemoteChangeNotify"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!NoDetailsThumbnailOnNetwork
EXPLAIN !!NoDetailsThumbnailOnNetwork_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "NoDetailsThumbnailOnNetwork"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!InfoCacheLevel
EXPLAIN !!InfoCacheLevel_Help
KEYNAME "System\CurrentControlSet\Services\MRXSmb\Parameters"
VALUENAME "InfoCacheLevel"
VALUEON		NUMERIC	16
VALUEOFF		NUMERIC	1
END POLICY

POLICY !!SuppressionPolicy
EXPLAIN !!SuppressionPolicy_Help
KEYNAME "SOFTWARE\Classes\*\shellex\PropertySheetHandlers\CryptoSignMenu"
ACTIONLISTON
KEYNAME "SOFTWARE\Classes\*\shellex\PropertySheetHandlers\CryptoSignMenu"
VALUENAME "SuppressionPolicy"
VALUE NUMERIC	1048576
KEYNAME "SOFTWARE\Classes\*\shellex\PropertySheetHandlers\{3EA48300-8CF6-101B-84FB-666CCB9BCD32}"
VALUENAME "SuppressionPolicy"
VALUE NUMERIC	1048576
KEYNAME "SOFTWARE\Classes\*\shellex\PropertySheetHandlers\{883373C3-BF89-11D1-BE35-080036B11A03}"
VALUENAME "SuppressionPolicy"
VALUE NUMERIC	1048576
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\SCAPI"
VALUENAME "Flags"
VALUE NUMERIC	1051650
END ACTIONLISTON
ACTIONLISTOFF
KEYNAME "SOFTWARE\Classes\*\shellex\PropertySheetHandlers\CryptoSignMenu"
VALUENAME "SuppressionPolicy"
VALUE DELETE
KEYNAME "SOFTWARE\Classes\*\shellex\PropertySheetHandlers\{3EA48300-8CF6-101B-84FB-666CCB9BCD32}"
VALUENAME "SuppressionPolicy"
VALUE DELETE
KEYNAME "SOFTWARE\Classes\*\shellex\PropertySheetHandlers\{883373C3-BF89-11D1-BE35-080036B11A03}"
VALUENAME "SuppressionPolicy"
VALUE DELETE
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\SCAPI"
VALUENAME "Flags"
VALUE DELETE
END ACTIONLISTOFF
END POLICY

POLICY !!SafeDllSearchMode
EXPLAIN !!SafeDllSearchMode_Help
KEYNAME "System\CurrentControlSet\Control\Session Manager"
VALUENAME "SafeDllSearchMode"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!SafeProcessSearchMode
EXPLAIN !!SafeProcessSearchMode_Help
KEYNAME "System\CurrentControlSet\Control\Session Manager"
VALUENAME "SafeProcessSearchMode"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

END CATEGORY

END CATEGORY

;
; User settings
;
CLASS USER

CATEGORY !!Optimization

CATEGORY !!ExplorerSMB

POLICY !!NoRemoteRecursiveEvents
EXPLAIN !!NoRemoteRecursiveEvents_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "NoRemoteRecursiveEvents"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!NoRemoteChangeNotify
EXPLAIN !!NoRemoteChangeNotify_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "NoRemoteChangeNotify"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!StartRunNoHOMEPATH
EXPLAIN !!StartRunNoHOMEPATH_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "StartRunNoHOMEPATH"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

POLICY !!NoDetailsThumbnailOnNetwork
EXPLAIN !!NoDetailsThumbnailOnNetwork_Help
KEYNAME "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
VALUENAME "NoDetailsThumbnailOnNetwork"
VALUEON		NUMERIC	1
VALUEOFF		NUMERIC	0
END POLICY

END CATEGORY

END CATEGORY

[strings]

Optimization="Optimization"
ExplorerSMB="Explorer Network Performance"

UseDesktopIniCache="Cache Desktop.ini"
UseDesktopIniCache_Help="http://support.microsoft.com/kb/840309/EN-US"

NoRemoteRecursiveEvents="Disable Remote Recursive Events"
NoRemoteRecursiveEvents_Help="http://support.microsoft.com/?scid=kb%3Ben-us%3B330929&x=9&y=10"

NoRemoteChangeNotify="Turn Off Directory Notification SMB Requests"
NoRemoteChangeNotify_Help="http://support.microsoft.com/?scid=kb%3Ben-us%3B812669&x=14&y=12"

StartRunNoHOMEPATH="Do Not Search Home Folder First When a Program is Started From Start -> Run"
StartRunNoHOMEPATH_Help="http://support.microsoft.com/?scid=kb%3Ben-us%3B264061&x=18&y=9"

NoDetailsThumbnailOnNetwork="Do Not Extract Details Thumbnails from Files Over the Network"
NoDetailsThumbnailOnNetwork_Help="http://support.microsoft.com/?scid=kb%3Ben-us%3B830903&x=17&y=18"

SuppressionPolicy="Do Not Obtain Detailed File Information When Opening a File"
SuppressionPolicy_Help="http://support.microsoft.com/kb/829700/EN-US"

InfoCacheLevel="Enable Caching of Path Information for all Files"
InfoCacheLevel_Help="http://support.microsoft.com/kb/834350/EN-US"

SafeDllSearchMode="Do Not Search for DLLs in Home Folder First (W2k)"
SafeDllSearchMode_Help="http://support.microsoft.com/kb/306850/EN-US"

SafeProcessSearchMode="Do Not Search for DLLs in Home Folder First (XP and W2k3)"
SafeProcessSearchMode_Help="http://support.microsoft.com/?scid=kb%3Ben-us%3B905890&x=13&y=9"

Comments

Related Posts

Latest Posts

Fast & Silent 5 Watt PC: Minimizing Idle Power Usage

Fast & Silent 5 Watt PC: Minimizing Idle Power Usage
This micro-series explains how to turn the Lenovo ThinkCentre M90t Gen 6 into a smart workstation that consumes only 5 Watts when idle but reaches top Cinebench scores while staying almost imperceptibly silent. In the first post, I showed how to silence the machine by replacing and adding to Lenovo’s CPU cooler. In this second post, I’m listing the exact configuration that achieves the lofty goal of combining minimal idle power consumption with top Cinebench scores.
Hardware

Fast & Silent 5 Watt PC: Lenovo ThinkCentre M90t Modding

Fast & Silent 5 Watt PC: Lenovo ThinkCentre M90t Modding
This micro-series explains how to turn the Lenovo ThinkCentre M90t Gen 6 into a smart workstation that consumes only 5 Watts when idle but reaches top Cinebench scores while staying almost imperceptibly silent. In this first post, I’m showing how to silence the machine by replacing and adding to Lenovo’s CPU cooler. In a second post, I’m listing the exact configuration that achieves the lofty goal of combining minimal idle power consumption with top Cinebench scores.
Hardware