Symptoms
The upload speed through Microsoft Forefront Threat Management Gateway (TMG) 2010 is very slow on a high speed Internet connection.
Cause
This issue occurs because the data buffer of Forefront TMG 2010 is too small to handle a high speed Internet connection.
Note You can configure the data buffer by changing the value of the following two registry subkeys:-
MaxPendingSendsToClient
-
MaxPendingSendsToServer
These registry subkeys are located under the following registry key:
HKEY_LOCAL_MACHINE\system\currentControlSet\Services\W3Proxy\Parameters\
Resolution
Update information
To resolve this issue, install the software update that is described in the following Microsoft Knowledge Base (KB) article:
2475183 Software Update 1 rollup 2 for Forefront Threat Management Gateway (TMG) 2010 Service Pack 1
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
More Information
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates If you do not configure the following registry subkeys, and if you do not install this hotfix, the default value of the subkeys isĀ 4. After you apply this hotfix, the default value for these subkeys is 16.
-
MaxPendingSendsToClient
-
MaxPendingSendsToServer
To optimize the bandwidth of the Internet connection, you may have to change the value of TcpBufferSize by using the following script:
Set fpc = CreateObject("FPC.Root")
' fpc.ConnectToConfigurationStorageServer "CSSNAME", "USERNAME", "DOMAIN", "PASSWORD" Set arr = fpc.GetContainingArray Set policy = arr.ArrayPolicy Set LLS = policy.LowLevelSettings TcpBufferSize_before = LLS.TcpBufferSize LLS.TcpBufferSize = WScript.Arguments(0) WScript.Echo "Setting TcpBufferSize to " & CStr(LLS.TcpBufferSize) & _ ", previous value: " & CStr(TcpBufferSize_before) & _ ", Array name: " & arr.Name policy.Save WScript.Echo "Saved, waiting for array to reload..." arr.WaitForReload WScript.Echo "Done."
Note If you increase the value of TcpBufferSize, the memory consumption of Forefront TMG 2010 increases.
To use this script, follow these steps:-
Copy and paste this script to a .txt file that is created by using Notepad, and save the file.
-
Rename the file to SetTcpBufferSize.vbs.
-
Open an administrative Command Prompt window, and then run the following command:
cscript SetTcpBufferSize.vbs 17520
Notes-
The acceptable value range is from 256 to 65535.
-
The default value is 2920.
-
Set the initial value to 17520, and then increase the value to test for an appropriate setting.
-