症状
请考虑以下情况:
-
Web 代理客户端使用运行 Microsoft Forefront Threat Management Gateway 2010 的服务器 (SSL) 与外部 Web 服务器建立安全套接字层连接。
-
不涉及 HTTPS 检查。 因此,在客户端和 Web 服务器之间建立端到端 SSL 隧道。
-
在此建立的连接内,客户端将数据上传到 Web 服务器。
-
到 Web 服务器的连接和 TCP 流速度缓慢。
在这种情况下,上传在某些情况下无法正确完成。
原因
客户端成功将其所有数据发送到 TMG 代理服务器后,会出现此问题。即使 TMG 代理服务器尚未将所有数据发送到目标 Web 服务器,客户端也会出现此问题,因为 TMG 代理服务器与目标 Web 服务器之间的带宽缓慢。
在这种情况下,TMG 代理服务器未正确处理要发送到目标 Web 服务器的提醒缓冲区,并且 TCP 连接过早关闭。
解决方法
若要解决此问题,请安装以下 Microsoft 知识库文章中所述的 Service Pack:
2555840 说明适用于 Microsoft Forefront Threat Management Gateway 2010Note 的 Service Pack 2 若要启用此修补程序,必须在运行 Forefront Threat Management Gateway 2010 的服务器上运行 setProxySocketSendBufSize.vbs 脚本。
若要让我们运行setProxySocketSendBufSize.vbs脚本,请转到"为我修复它"部分。 如果希望自己创建并运行脚本,请转到"让我自己修复"部分。
帮我修复此问题
若要自动解决此问题,请单击"修复 它"按钮 或链接。 然后单击 " 文件下载 "对话框中的 "运行",然后按照修复向导中的步骤操作。
备注
-
此向导可能只提供英文版本。 但是,自动修复功能同样适用于其他语言版本的 Windows。
-
如果不在出现问题的计算机上,将"修复它"解决方案保存到闪存驱动器或 CD,然后在有问题的计算机上运行它。
然后,转到"这是否修复了问题?"部分。
我自己修复此问题
若要创建并运行脚本,请执行以下步骤:
-
启动记事本。 为此,请单击"开始",单击"运行",在notepad.exe框中键入"开始",然后单击"确定"。
-
将以下脚本粘贴到新的记事本文件中:
Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"
Const SE_VPS_NAME = "ProxySocketSendBufSize"
Const SE_VPS_VALUE = 8192
Sub SetValue()
' Create the root object.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
'Declare the other objects that are needed.
Dim array ' An FPCArray object
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
' Obtain 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 -
在"文件"菜单上,单击"另存为",然后将脚本另存为setProxySocketSendBufSize.vbs。
-
在" 文件" 菜单上,单击 "退出 "以退出记事本。
-
双击步骤 3 中保存的 .vbs 文件。
此方法是否已修复问题?
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
有关软件更新术语的更多信息,请单击下面的文章编号以查看 Microsoft 知识库中的相应文章:
824684 用于描述 Microsoft 软件更新的标准术语的说明