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

Beautiful Slide Decks from Markdown: Presenting with Slidev

Beautiful Slide Decks from Markdown: Presenting with Slidev
Would you like to get away from PowerPoint and author slide decks in Markdown? Then Slidev may be just what you’re looking for. It’s a web app for presentations. The fact that it’s geared towards developers shouldn’t put you off. After all, who isn’t a developer these days, with AI? Slidev comes with the beautiful Tahta themes and supports features like syntax highlighting and animations. Export options to PDF and PPTX allow for easy sharing. This article shows how to get started.
Applications