使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

运行 Microsoft 最前沿威胁管理网关 (TMG) 2010年的服务器可能会停止接受新的连接上的特定 web 代理或 web 侦听器。可能会出现此问题后几个小时到几天的服务器正常运行时间。

原因

在 TMG 停止接受新的连接,web 侦听器上时,将发生此问题。这很快就填满缓冲区队列的辅助功能的驱动程序 (AFD) 套接字。缓冲区队列已满之后,服务器将启动重置新传入的连接。如果这种情况下使用网络监视器来监视服务器,您可能会注意到 SYN,每次新的连接尝试的 ACK/RST 模式。

解决方案

要解决此问题,请安装最前沿威胁管理网关 (TMG) 2010 Service pack 2 的累积 5

状态

Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。

详细信息

安装累积 5 之后,必须启用时间空闲出接受呼叫的功能。若要执行此操作,请执行以下步骤:

  1. 将以下脚本复制到记事本中,然后再将该文件另存为 SetAcceptIdleTimeout.vbs:

    'Define the constants needed.Const strVpsGUID = "{143F5698-103B-12D4-FF34-1F34767DEABC}"
    Const strVpsPropertyName = "AcceptIdleTimeout"
    Const Error_FileNotFound = &H80070002
    Set objArgs = wscript.Arguments
    if objArgs.Count > 0 then
    uAcceptIdleTimeout = objArgs(0)
    end if
    if objArgs.Count <> 1 then
    wscript.echo "Usage: SetAcceptIdleTimeout.vbs <timeout>"
    wscript.echo
    wscript.echo "Set async accept timeout to <timeout> value (in sec)"
    wscript.echo "To disable async accept timeout set it to 0"
    wscript.Quit 2
    end if
    set objArray = CreateObject("FPC.Root").GetContainingArray()
    Set objVPSet = OpenVPSet(objArray, strVpsGUID)
    objVPSet.Value(strVpsPropertyName) = uAcceptIdleTimeout
    objArray.Save()
    objArray.RestartServices(1)
    function OpenVPSet(objParent, strVpsGUID)
    Set objVPSets = objParent.VendorParametersSets
    On Error Resume Next
    Set OpenVPSet = objVPSets.Item(strVpsGUID)
    ' Save the Err properties in case it needs to be re-raised
    errNumber = Err.Number
    errSource = Err.Source
    errDescription = Err.Description
    errHelpFile = Err.HelpFile
    errHelpContext = Err.HelpContext

    On Error GoTo 0

    if errNumber = Error_FileNotFound Then
    Set OpenVPSet = objVPSets.Add(strVpsGUID)
    Elseif errNumber < 0 Then
    ' An error other than "file not found" occurred -- re-raise the error,
    ' this time not under "On Error Resume Next"
    Err.Raise errNumber, errSource, errDescription, errHelpFile, errHelpContext
    End If
    end function


  2. 一个 TMG 服务器上运行该脚本。例如将超时时间设置为 5 分钟,从管理的命令提示符下运行以下命令︰

    cscript.exe SetAcceptIdleTimeout.vbs 300
  3. 若要使此更改生效,请重新启动防火墙服务在所有阵列成员上。


若要撤消此更改,请运行下面的命令以将闲置超时时间设置为 0:

cscript.exe SetAcceptIdleTimeout.vbs 0


参考资料

了解 Microsoft 用于描述软件更新的术语

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×