不能由于 Exchange 资源消耗使用 Exchange ActiveSync 连接


症状


初始症状将包括用户不能够将其设备与 Exchange。同步 此外,可能会出现以下症状:
  • Exchange 服务器上的应用程序日志中,您可能会看到以下事件:

来源: 服务器动态同步
事件 ID: 3007
说明:
交换邮箱服务器响应超时: 服务器: [mail.contoso.com] 用户: [user@contoso.com]。Exchange ActiveSync 服务器无法及时与 Exchange 邮箱服务器进行通信。验证 Exchange 邮箱服务器正常工作并没有超载。

来源: 服务器动态同步
事件 ID: 3014
Description:
Exchange 邮箱服务器: [mail.contoso.com] 已达到其超时阈值。邮箱服务器将抵御 [60] 秒的新请求。

  • 允许 RPC 连接到邮箱服务器的数量可能会超出建议的限制。
    可以在任何给定时间信息存储开始拒绝新的连接之前执行的 RPC 请求的最大数量 500 Exchange 2007 和 2010年,但计数器应该根本保持在 70 倍。上面的任何指示的性能瓶颈。要确认这种现象,其中一个可以检查性能监视器计数器"MSExchangeIS\RPC 申请",它将显示该服务器是否上面建议的限制。

    请参见http://technet.microsoft.com/en-us/library/bb201689%28EXCHG.80%29.aspx

  • 在 W3SVC 日志中,您将看到 HTTP 409 和动态同步服务器 Microsoft 功能请求返回 503 响应。
    您还可能会看到错误返回 W3SVC 日志中的"TooManyJobsQueued"。 ,请参阅下面的示例:

    2010-09-09 21:35:35 W3SVC1 10.0.0.10 POST /Microsoft-Server-ActiveSync/default.eas 用户 = < 用户 > & DeviceId = < DeviceID > & 数据库 = < 类型 > & Cmd = 同步 = Ping = < 数据 > 443 域 \ 用户 10.0.0.20 < 用户代理 >503 0 0

    2010-09-15 00:00:02 W3SVC1 155.109.199.51 张贴 /Microsoft-Server-ActiveSync/default.eas Cmd Ping & 用户 = = < 用户 > & DeviceId = < DeviceID > & 数据库 = < 类型 > & 日志 = 错误: TooManyJobsQueued_ 443 域 \10.0.0.20 < 用户代理 > 503 0 0

  • HTTPErr 日志将显示 Connection_Dropped /Microsoft-Server-ActiveSync 请求。
    您应该能够看到来自 Connection_Dropped 的源端口的 s 端口达到一个相当高的数字。 ,例如:

    2010-09-09 00:27:25 10.0.0.10 64637 10.0.0.20 443 的 HTTP/1.1 开机自检 /Microsoft-Server-ActiveSync?用户 = < 用户 > & DeviceId = < DeviceID > & 数据库 = < 类型 > & Cmd = Ping-1 Connection_Dropped MSExchangeSyncAppPool
  • 为 Exchange 2003 服务器会被耗尽的非页面缓冲池 (NPP) 内存。
    达到的连接限制时,NPP 的消耗时间,HTTP.sys 会开始丢弃 HTTP 连接,一旦服务器开始峰值 100 兆字节的 NPP 根据服务器的配置。一旦服务器更接近达到 108 兆字节,HTTP.sys 将失败的所有连接。可以使用任务管理器和查看性能和检查内核内存检查 NPP。   
  • 在 Exchange 和 NPP 的详细信息,请参阅http://technet.microsoft.com/en-us/library/aa996269(EXCHG.80).aspx

    使用 Netstat 的信息,请参见http://technet.microsoft.com/en-us/library/cc940097.aspx

    有关下载和使用 TCPView 的信息,请参阅 http://technet.microsoft.com/en-us/sysinternals/bb897437.aspx

     

    原因


    发生这种情况由于移动设备连接和/或设备软件的问题。 有几个连接失败的关键原因和内存消耗的原因:

    1.服务器会开始丢弃连接,因为到服务器的请求数,或请求超过允许的应用程序池 IIS 连接数。同样,达到在 Exchange 服务器上的 TCP 端口限制是一个原因。

    注意:更有可能是因为服务器可能会达到其他限制 (应用程序池队列长度在 CA 或 RPC 请求在邮箱服务器上) 之前快耗尽 TCP 端口之一。

    下文讨论了端口耗尽:
    http://technet.microsoft.com/en-us/library/cc540453(EXCHG.80).aspx

    下列文章说 Windows 和 Exchange 中的 MaxUserPort 和 TCP 连接的使用

    http://technet.microsoft.com/en-us/library/cc940037.aspx

    http://technet.microsoft.com/en-us/library/bb397382(EXCHG.80).aspx

    2.使用 Exchange ActiveSync 移动设备同步可能模拟对服务器 DOS 攻击的行为。以下文章中列出了一些例子:
    http://technet.microsoft.com/en-us/library/cc182260.aspx

    3。 快于它可以处理这些应用程序池接收请求。 这被讨论以下文章:
    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/9701f9dd-d40b-4d24-a2df-1d1abc13f764.mspx?mfr=true

     

    解决方案


    以停止这些设备占用的资源交换,并防止的负担,应阻止可疑的设备。 

    要点:没有 iPhone OS 4.0 用户代理 801.293- http://support.apple.com/kb/TS3398所定义的已知的问题

    包含此用户代理的任何 IIS 日志应该被标记,并且该设备的所有者应更新到 OS 4.1 或更高 (最好是,iOS 版本 4.3.x)。建议的在此期间禁止这些用户。

    设备可以阻止设备所有者禁用 Exchange ActiveSync 访问、 关闭该设备,或使用 Internet 安全和加速 (ISA) 或最前沿威胁管理网关 (TMG) 的筛选器。

    锁定设备的其他信息,请参阅 Microsoft Exchange 团队 (EHLO) 博客上以下文章:

    http://msexchangeteam.com/archive/2008/09/05/449757.aspx

    注意:某些设备可能会继续尝试连接到 Exchange 服务器 (导致大量的 TCP 连接) 即使在禁用用户当 Exchange ActiveSync 使用。我们建议关闭设备或阻止使用 ISA 筛选器的设备。

    Exchange Server 2010

    如果用户怀疑有问题的设备用户提供具有 Exchange 2010 邮箱,可以启用带宽限制和所有 Exchange ActiveSync 用户,以防止设备超载的 Exchange 服务器。 ,请参阅以下文章从 Microsoft TechNet 联机:

     http://technet.microsoft.com/en-us/library/dd297964.aspx

    若要执行此操作的步骤在文章中,但是下面是一些示例包括:

    $ = Get ThrottlingPolicy |对象位置的 {$_。后 – eq $true}

    $ |一组 ThrottlingPolicy — EASMaxConcurrency 10

    有关如何设置带宽限制策略的详细信息,请参阅下面的主题从 TechNet 联机:

     http://technet.microsoft.com/en-us/library/dd298094.aspx

    其他因素来检查,会影响连接每个设备

    1. 主文件夹 (收件箱主文件夹) 中是否有高的项计数?当收件箱文件夹中有多个几千个项目和设备尝试同步所有这些项目时,您将看到大量的来自该设备的连接/请求以便下载所有这些项目。此解决方案包括:

      a. 设置的设备,只同步的最后一天或不超过 3 天,具体取决于项目数该用户会收到一天中。
      b. 减少邮箱中的项计数
    2. 为 Exchange ActiveSync 禁用的用户帐户?这可能会增加设备到服务器的连接数。如果该设备仍然向服务器发送几个请求,然后关闭设备或阻止 DeviceID ISA 上就地放置筛选器。
    3. 用户超出了邮箱配额限制?如果是这样,设备将不能同步到邮箱的新邮件,并可能继续反复尝试。
    4. 有的组织中设置邮件大小限制?如果没有限制,您可能必须尝试同步大量数据的设备。

      注意:另外,继续监视可疑设备使用 Log Parser 的设备连接。使用日志分析器的帮助,请参阅详细信息。

    当发现可疑设备时,我们建议客户联系设备供应商,以便帮助确定设备为什么到 Exchange 发送的请求过多。

    请参见部分"将帮助管理员诊断时的步骤:"执行其他一些操作的详细信息节中管理员可以尝试采取提高性能,同时进行故障排除。

    详细信息


    有哪些设备?
    通常如果每天有 1000 多个请求发送设备,我们建议研究。

    如果命中 (请求) 1500年上方,可能是在设备或环境上的问题。设备和用户的活动应进行调查。

    下面从 Exchange 团队博客张贴内容,请参阅和。可以使用 Windows Powershell 用于分析 IIS 日志文件的任何版本的 Exchange Server 的 PS1 文件。

    一个脚本来解决 Exchange ActiveSync 的问题
    http://blogs.technet.com/b/exchange/archive/2012/01/31/a-script-to-troubleshoot-issues-with-exchange-activesync.aspx

    ActiveSyncReport 脚本
    http://gallery.technet.microsoft.com/scriptcenter/ActiveSyncReport-script-a2417a84

    Log Parser 可以使用没有脚本,但该脚本所需的筛选基于使用命令行中指定的条件。 使用上面的脚本,电子邮件警报或报表还可以创建。

    诊断时有助于管理员的步骤如下:

    下列选项将无法解决问题他们将为您提供更多的时间来分析整个 IIS 日志以确定设备是否可疑。

    • 减少发送保持活动每隔 30 分钟向 CA 而不是每次 2 小时的 Exchange 邮箱服务器上保持活动的时间值。

      保持活动状态值设置为 30 分钟 (1800000) 在注册表中,下面的 Microsoft 知识库中的文章在线文章所述:
      http://support.microsoft.com/kb/324270  

      下面是注册表值信息:
      路径:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\
      值的名称: KeepAliveTime
      值类型: REG_DWORD 的时间 (毫秒)
      有效范围: 1 0xFFFFFFFF
      默认: 7200000 (两小时)

      该值控制 TCP 试图验证空闲连接仍然完好无损的发送 keep-alive 数据包的频率。如果仍能连接到远程计算机,它就会保持活动状态的数据包。默认情况下不发送 keep-alive 数据包。您可以使用程序在连接中配置该值。建议将该值设置为 1,800,000 (等于 30 分钟)。(十进制)(需要重新启动服务器)

      监视此设置,如果仍然会耗尽服务器端口,则这可能需要降低到 15 分钟,而不是 30 分钟。
    • IIS 在 IIS 连接超时时间增加

      默认值和建议的值应为 120 秒。如果将其设置为较高的值,则应当将它设项 120 秒,最小推荐值为 300 的第二个最大值之间。
      下面的主题在 TechNet 联机的详细信息,请参阅:

      http://technet.microsoft.com/en-us/library/cc182260.aspx

      这可以通过通过属性的默认网站通过连接超时值 (以秒为单位)。
    • 在前端服务器与 Exchange 2003 邮箱 ExchangeApplicationPool 增加 IIS 连接 (队列长度) 数:


      使用 Internet Information Services 管理器来关闭工作进程回收在 IIS 6.0 中
      1。 启动 Internet Information Services (IIS) 管理器。
      2。 展开本地计算机,展开应用程序池,右键单击 ExchangeApplicationPool 应用程序池,然后单击属性。
      3。 以清除回收工作进程 (分钟) 复选框,请单击,然后单击确定。

      使用 Internet Information Services 管理器增加在 IIS 6.0 中的队列长度
      1。 启动 Internet Information Services (IIS) 管理器。
      2。 展开本地计算机,展开应用程序池,右键单击 ExchangeApplicationPool 应用程序池,然后单击属性。
      3。 单击性能选项卡,然后修改请求队列限制框中的值。用 4000 替换默认值为 1000年。
      4。 请单击确定。
    • 对于 Exchange 2007 和 Exchange 2010 客户端访问服务器上的 MSExchangeSyncAppPool 增加 IIS 连接 (队列长度) 的数目

      使用 Internet Information Services 管理器关闭工作进程回收 IIS 7.0 及更高 (这应禁用默认情况下为 MSExchangeSyncAppPool)

      1。 启动 Internet Information Services 经理。
      2。 E xpand 本地计算机,然后单击应用程序池。
      3。n 应用程序池窗格中,单击相应的应用程序池,如 MSExchangeSyncAppPool 或您创建的新的应用程序池,然后单击高级设置。
      4。 在回收的部分中,修改的固定时间间隔 (分钟) 值。替换默认值 1740年 0 (零)。值为零将禁用工作进程回收。
      5. Click OK.
    • 使用 Internet Information Services 管理器增加 IIS 7.0 及更高的队列长度

      1。 启动 Internet Information Services 经理。
      2。 展开本地计算机,然后单击应用程序池。
      3。 中的应用程序池窗格中,单击相应的应用程序池,如 MSExchangeSyncAppPool 或您创建的新应用程序池,然后单击高级设置。
      4。 在常规的部分中,修改队列长度值。替换为 10000 的默认值为 1000年。
    • 5. Click OK

    注意: 如果运行 Exchange 2007 的 Windows 2003 (IIS 6) 上,按照上述步骤以增加 MSExchangeSyncAppPool 的请求队列限制。

    为什么这一点非常重要的"如何"信息为应用程序池和其他链接更改这些值的详细信息,请参阅下面的主题从 TechNet 联机:

    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/9701f9dd-d40b-4d24-a2df-1d1abc13f764.mspx?mfr=true