-->

Friday, June 13, 2014

Exchange 2010 Fixing Slow Public Folders With Advanced TCP Settings

I've seen a problem with slow or unresponsive Public Folders tons of times, and just came across it again. A user goes to open the Public Folders list in Outlook and it takes forever to expand the list...if it doesn't error out first. While I think the best way to fix it is to scrap the Public Folders and move to SharePoint, a lot of organizations still heavily use PF's.

By running a few commands, we'll help cure your slow Public Folders...as a side benefit, it will also help mitigate random DAG failovers from spotty connectivity to the Witness Server.

You'll want to run these commands on your CAS/Hub Transport Server(s), Mailbox Server(s), and your DAG Witness Server, and no reboot is required.

Fire up an elevated command prompt and run:

netsh int tcp show global

This command will print out the default Advanced NIC settings:

TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State                     : enabled
Chimney Offload State                           : automatic
NetDMA State                                        : enabled
Direct Cache Acess (DCA)                    : disabled
Receive Window Auto-Tuning Level    : normal
Add-On Congestion Control Provider   : ctcp
ECN Capability                                      : disabled
RFC 1323 Timestamps                           : disabled


We're going to modify (disable) the settings for RSS (Receive-Side Scaling), Chimney Offload, and Receive Window Auto-Tune.

Run the following commands:

netsh interface tcp set global rss=disabled

netsh interface tcp set global chimney=disabled

netsh interface tcp set global autotuninglevel=disabled

After each command, you'll get an "Ok" message, which is telling you that the changes took effect.

Now to disable NetDMA, we'll need to edit the Registry:
Navigate to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters and edit the EnableTCPA entry.

**Note** If the entry doesn't exist, create a new DWORD named EnableTCPA.
Set the value for EnableTCPA to 0, which will disable it.

Now run the original command (netsh int tcp show global), to view the new settings:
 
TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State                     : disabled
Chimney Offload State                           : disabled
NetDMA State                                        : disabled
Direct Cache Acess (DCA)                    : disabled
Receive Window Auto-Tuning Level    : disabled
Add-On Congestion Control Provider    : ctcp
ECN Capability                                       : disabled
RFC 1323 Timestamps                           : disabled


Now your Public Folders should have little or no lag when opening and your DAG should suffer from fewer false failovers.

No comments:

Post a Comment