Symptoms
Consider the following scenario:
-
You enable HTTP compression in Microsoft Internet Security and Acceleration (ISA) Server 2006 or in Microsoft Forefront Threat Management Gateway (TMG) 2010.
-
On a client, you use ISA Server 2006 or Forefront TMG 2010 as a Web proxy to connect to a Web server. However, the Web server takes a long time to respond to HTTP requests from the client.
Note When the Web server sends data to ISA Server 2006 or to Forefront TMG 2010, ISA Server 2006 or Forefront TMG 2010 accumulates data. ISA Server 2006 or Forefront TMG 2010 does not send any data to the client until the Web server finishes the HTTP request. -
You close the Web browser before the Web server is finished responding.
-
The client sends a TCP reset response to ISA Server 2006 or to Forefront TMG 2010 on a TCP session that was opened.
-
You try to access the Web site again, and the client or an intermediate proxy server uses the same source port from the previous TCP session that just obtains the TCP reset response.
In this scenario, ISA Server 2006 or Forefront TMG 2010 does not detect the TCP reset response until Web server sends a complete HTTP response, and ISA Server 2006 or Forefront TMG 2010 rejects the new client connection by using the same client port. Therefore, you cannot access the Web site by using the same source port.
Note The supported fix for Forefront TMG 2010 is included in Forefront TMG 2010 Service Pack 1 (SP1).
Resolution
Service pack information
This problem is fixed in Forefront TMG 2010 Service Pack 1.
For more information about how to obtain Forefront TMG 2010 Service Pack 1, click the following article number to view the article in the Microsoft Knowledge Base:
981324 List of problems that are fixed in Forefront Threat Management Gateway 2010 Service Pack 1
Hotfix rollup information
Hotfix installation information
To resolve this issue, follow these steps:
-
Install the hotfix rollup package that is described in the following Microsoft Knowledge Base (KB) article:
980067 Description of the ISA Server 2006 hotfix package: February 22, 2010
-
Copy and paste the following script into Notepad:
Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
Const SE_VPS_NAME = "AllowPrematureClientTermination"
Const SE_VPS_VALUE = true
Sub SetValue()
' Create the root obect.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
'Declare the other objects needed.
Dim array ' An FPCArray object
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
' Get references to the array object
' and the network rules collection.
Set array = root.GetContainingArray
Set VendorSets = array.VendorParametersSets
On Error Resume Next
Set VendorSet = VendorSets.Item( SE_VPS_GUID )
If Err.Number <> 0 Then
Err.Clear
' Add the item
Set VendorSet = VendorSets.Add( SE_VPS_GUID )
CheckError
WScript.Echo "New VendorSet added... " & VendorSet.Name
Else
WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME)
End If
if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then
Err.Clear
VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE
If Err.Number <> 0 Then
CheckError
Else
VendorSets.Save false, true
CheckError
If Err.Number = 0 Then
WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"
End If
End If
Else
WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"
End If
End Sub
Sub CheckError()
If Err.Number <> 0 Then
WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
Err.Clear
End If
End Sub
SetValue -
Save the file as a Microsoft Visual Basic script file by giving the file a .vbs file name extension. For example, save the file under the following name:
EnableKB980066.vbs
-
Double-click the .vbs file to run it.
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Forefront TMG 2010 Service Pack 1.
References
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