大文件下载失败时的 ISA Server 2004 SOCKS 客户端计算机或一个 ISA Server 2006 SOCKS 客户端计算机使用被动模式 FTP

文章翻译 文章翻译
文章编号: 923322 - 查看本文应用于的产品
展开全部 | 关闭全部

症状

如果它所用的时间超过 120 秒,则一个 FTP 客户端计算机使用被动模式 FTP 下载大型文件时, 下载失败。

原因

如果满足下列条件,则可能会出现此问题:
  • 在 FTP 客户端计算机配置为使用在 SOCKS 协议。
  • 在 FTP 客户端计算机使用 Microsoft Internet 安全性和加速 (ISA) Server 2004 或 Microsoft 网络安全和加速 (ISA) 服务器 2006年用于传出被动 FTP 访问。
  • 在 ISA Server 2004 或在 ISA Server 2006 在空闲连接超时值设置为 120 秒的默认值。
被动模式 FTP 使用一个传出的控制通道连接和传出数据通道连接。文件传输是通过数据信道。如果满足下列条件,则 FTP 控制通道超时:
  • 数据不是通过控制通道下载操作过程中发送的。
  • 被动模式 FTP 文件下载所用的时间超过 120 秒。
然后,FTP 服务器停止文件下载操作。

解决方案

若要解决此问题,获得最新的 service pack ISA Server 2004 和 ISA Server 2006。

有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
954258如何获取最新的 Internet 安全和 $ 加速 (ISA) Server 2006 服务包
有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
891024如何获取最新的 ISA Server 2004 服务包
安装了相应 service pack 后,运行下面的 Microsoft Visual Basic 脚本,可以配置为适当的值在 SOCKS 筛选空闲连接超时值。

注意要确定适当的超时值,可使用以下公式:
Timeout (seconds) = file size / download speed * 1.2

例如对于确定适当的超时值下载 1 mb / 秒 (Mbps) 在 200 兆字节 (MB) 文件,可使用以下公式:
 200*8 / 1 * 1.2 = 1920 seconds
您必须计算分别使用值。

注意空闲连接超时设置帮助释放未使用的资源,以便不会出现与资源相关的问题。因此,建议不要增加不必要地设置了超时。如果您使用小于默认值为 120 秒的超时设置,也可以创建意外的问题。

若要将超时设置,请按照下列步骤操作:

注意您可以按照以下步骤之前,您必须安装相应 service pack。
  1. 单击 开始,指向 所有程序,都指向 附件,然后单击 记事本
  2. 复制并将下面的代码粘贴到一个新的记事本文档。基于 ISA Server 2004 的计算机或基于 ISA Server 2006 的计算机,然后,将代码保存。若要执行此操作使用具有如 SetSocksIdleTimeout.vbs.vbs 扩展名的文件名称
    
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    '
    ' Copyright (c) Microsoft Corporation. All rights reserved.
    ' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND. THE ENTIRE
    ' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE
    ' USER. USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS
    ' HEREBY PERMITTED.
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' This script sets the idle connection time-out value for the SOCKS filter.
    ' The value is in seconds.
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    
    Sub SetSocksIdleTimeout()
    
        ' Create the root object.
        Dim root  ' The FPCLib.FPC root object
        Set root = CreateObject("FPC.Root")
    
        'Declare the other objects needed.
        Dim array       ' An FPCArray object
        Dim Extensions  ' An FPCExtensions object
        Dim ApplicationFilters ' An FPCApplicationFilters object
        Dim ApplicationFilter  ' An FPCApplicationFilter object
        Dim VendorSets  ' An FPCVendorParametersSets collection
        Dim VendorSet   ' An FPCVendorParametersSet object
    
        ' Get references to the array object
        Set array = root.GetContainingArray
    
        On Error Resume Next
    
        Set Extensions = array.Extensions
        CheckError
    
        Set ApplicationFilters = Extensions.ApplicationFilters
        CheckError
    
        Set ApplicationFilter = ApplicationFilters.Item("{25765C04-C80B-494C-914E-286297DB8C8E}")
    
        Set VendorSets = ApplicationFilter.VendorParametersSets
        Set VendorSet = VendorSets.Item( "{25765C04-C80B-494C-914E-286297DB8C8E}" )
    
        VendorSet.Value("SessionIdleTimeoutSeconds") = 120 ' value in seconds to be set to desired value
    
        ApplicationFilter.Save false, true
    
        WScript.Echo "Done..."
    
    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
    
    SetSocksIdleTimeout
    
    
  3. 此脚本使用默认的 120 秒的超时值。 更改为所需,设置的超时值,然后保存该脚本。
  4. 双击该.vbs 文件,若要运行该脚本。
在运行此脚本后,在新的超时值应用于新 SOCKS 连接通过 ISA Server 2004 或通过 ISA Server 2006 所做的。

若要更改回默认的超时值,改回到 120 秒,脚本中的值保存在的更改,然后再次运行该脚本。

替代方法

要变通解决此问题,配置 FTP 程序来在 FTP 控制通道上发送"保持活动"的命令。

有关使用 FTP 程序是否支持此功能的信息,请参阅 FTP 程序的文档。

状态

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

参考

有关如何安装 ISA 服务器修补程序和 ISA 服务器更新的详细信息单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
885957如何安装 ISA 服务器修补程序和更新

属性

文章编号: 923322 - 最后修改: 2009年3月26日 - 修订: 2.0
这篇文章中的信息适用于:
  • Microsoft Internet Security and Acceleration Server 2004 Standard Edition
  • Microsoft Internet Security and Acceleration Server 2004 Enterprise Edition
  • Microsoft Internet Security and Acceleration Server 2006 Standard Edition
  • Microsoft Internet Security and Acceleration Server 2006 Enterprise Edition
关键字:?
kbmt kbtshoot kbexpertiseadvanced kbqfe kbprb KB923322 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 923322
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com