了解邮件路由
适用于: Exchange Server 2010 SP2, Exchange Server 2010 SP3
上一次修改主题: 2016-11-28
组织中的集线器传输服务器和边缘传输服务器的主要任务是将接收自用户和外部来源的邮件路由到最终目标。本主题介绍 Microsoft Exchange Server 2010 如何路由组织中的邮件。
若要了解与管理传输服务器相关的管理任务,请参阅管理传输服务器。
目录
Exchange 2010 中的邮件路由概述
路由组件
使用 Active Directory 站点进行路由
Exchange 2010 路由表
接收邮件进行路由
路由邮件
重新路由和“无法到达”队列
Exchange 2010 中的邮件路由概述
路由决策在邮件分类期间做出。分类程序是 Microsoft Exchange 传输服务的一个组件,处理所有传入邮件并根据目标收件人的信息确定要对邮件执行的操作。分类程序通过几个相关的阶段处理邮件,并在处理邮件期间使用 Microsoft Exchange 传输服务的其他组件。Exchange 2010 传输服务器收到邮件之后,并且在 SMTP 接收期间进行的先期处理完成之后,会将邮件传递到提交队列中。在下列阶段中,邮件从提交队列中移出,通过分类程序进行分类:
代理处理已提交的邮件 收到邮件后,集线器传输服务器上会进行一些代理处理,以进行分类。此阶段中应用的代理包括可选的 Microsoft Forefront Protection for Exchange Server 防病毒代理和日记代理。
收件人解析 在此阶段中,将解析收件人的电子邮件地址,以确定该收件人在 Exchange 组织中拥有邮箱,还是拥有外部电子邮件地址。
路由 解析了收件人的信息之后,分类程序的路由组件将确定邮件的最终目标以及通向该目标的路由,选择用于中继邮件的下一个网段(即跃点),并将下一个跃点的信息解析为物理服务器和 IP 地址的列表。
内容转换 将邮件中继到下一个跃点之前,会进行内容转换,以便使用收件人可以读取的格式发送邮件。“内容转换”将电子邮件从一种格式转换为另一种格式,以便用于邮件流或存储,例如将 MAPI 转换为 MIME,或者将 UUENCODE 转换为 base64 编码,或为了正确地在特定的电子邮件客户端显示,例如 HTML、RTF 或纯文本。
代理处理已路由的邮件 做出特定邮件的路由决策之后,传输规则代理和日记代理将应用于集线器传输服务器。提交邮件时以及路由邮件时都会应用日记代理,以便传输规则代理对邮件所做的任何更改(例如在修改传递地址或应用邮件特定的日记要求时)都不会绕过日记代理。
邮件打包和 DSN 生成 最终的分类邮件将组合在一起并移动到传递队列。此阶段中还可能会生成发送状态通知 (DSN)。
接下来,由 SMTP 发送、存储驱动程序、传递代理或外部网关连接处理程序来处理邮件。所使用的组件取决于最终目标。系统将为每个跃点动态生成一个传递列队。制定一个路由决策后,这些邮件将在传递列队中进行排队。如果找不到收件人的路由,则邮件将放入“无法到达”队列中进行排队。
下图说明不同的路由阶段如何处理邮件以及邮件如何排队传递到下一个跃点目标。
邮件流中的路由上下文
返回顶部
路由组件
若要制定路由决策,Exchange 2010 必须访问存储在 Active Directory 中的配置信息。在边缘传输服务器上,配置信息存储在本地服务器上的 Active Directory 轻型目录服务 (AD LDS) 实例中,并可从中访问配置信息。MicrosoftWindows 和 Exchange 2010 服务配合在一起,创建配置数据的映射。路由表中缓存这些映射。Exchange 2010 在进行路由决策时参考这些表。路由拓扑更改时将更新该缓存。邮件传输期间使用的 Exchange 服务是集线器传输服务器角色和边缘传输服务器角色公用的。但是,边缘传输服务器角色不会缓存 Active Directory 拓扑的信息。
下列配置组件和服务组件对于邮件路由非常重要:
Active Directory 站点 Active Directory 站点代表集线器传输服务器的路由边界。集线器传输服务器直接传递到邮箱服务器、通讯组展开服务器、传递到本地 Active Directory 站点中连接器的源服务器以及传递到订阅了该站点的边缘传输服务器。但是,对于位于远程 Active Directory 站点中的收件人、展开服务器和连接器,集线器传输服务器必须将邮件中继到另一台集线器传输服务器。在每个包含其他 Active Directory 服务器角色的 Exchange 2010 站点中都必须部署集线器传输服务器角色。
Active Directory IP 站点链接Active Directory IP 站点链接定义 Active Directory 站点之间的逻辑路径。Exchange 2010 参考 IP 站点链接对象以确定远程 Active Directory 站点的开销最低的路由路径。
发送连接器 发送连接器用于将邮件发送到其他 SMTP 主机。发送连接器上的地址空间配置用于制定路由决策。向外部域传递邮件时,路由目标通常是发送连接器。接收多个电子邮件域的邮件的 Exchange 组织可能会决定为每个地址空间创建专用的发送连接器。有关将邮件路由到外部域的发送连接器选择的详细信息,请参阅外部邮件路由。
传递代理 传递代理用于将邮件路由到不使用 SMTP 协议进行邮件传输的外部系统。传递代理的地址空间和协议配置在制定路由决策时使用。
外部连接器 外部连接器使用投递目录向不使用 SMTP 协议进行邮件传输的外部系统发送邮件。制定路由决策时,Exchange 将使用外部连接器的配置。
路由组 路由组代表 Exchange Server 2003 的路由边界。如果在现有的 Exchange 2010 组织中部署 Exchange 2003,路由必须考虑路由组中服务器的位置,以便将邮件传递到驻留在 Exchange 2003 上的邮箱或连接器。为了实现与 Exchange 2003 的兼容,在组织中部署的所有运行 Exchange 2010 的计算机都属于一个全局路由组。
路由组连接器 路由组连接器定义 Exchange 路由组之间的逻辑路径。如果在现有的 Exchange 2010 组织中部署 Exchange 2003,将通过路由组连接器在不同服务器版本之间路由邮件。部署第一个集线器传输服务器时,安装程序进程会提示您创建一个从全局 Exchange 2010 路由组到旧版路由组的路由组连接器。有关部署了多个 Exchange 版本的环境中的邮件路由的详细信息,请参阅内部邮件路由。
Microsoft Exchange 传输服务 Microsoft Exchange 传输服务是 Exchange 2010 的 SMTP 提供程序,控制邮件处理的每个部分,从 SMTP IN 到 SMTP OUT。各种 SMTP 事件会触发一系列可配置的 SMTP 接收代理。Microsoft Exchange 传输服务使这些代理可以在邮件通过 SMTP 传输时处理邮件,并在将邮件提交到分类程序之前执行反垃圾邮件、防病毒和其他任务。Microsoft Exchange 传输服务还使用拓扑发现模块进行 Exchange 拓扑发现。
Microsoft Exchange Active Directory 拓扑服务 Microsoft Exchange Active Directory 拓扑服务负责查找 Exchange 2010 可以用于从 Active Directory 检索配置和收件人数据的域控制器和全局编录服务器。Microsoft Exchange Active Directory 拓扑服务还负责保持 Active Directory 服务器的 Exchange 2010 站点关联最新。
路由表 路由表保存路由组做出路由决策时使用的信息。路由表由拓扑组件及其相互关系的映射组成。
DNS Exchange 2010 使用增强域名系统 (DNS) 客户端(MicrosoftExchange 传输服务的一个组件)将下一跃点选择解析为目标服务器名称的列表。标准 DNS 客户端用于将该列表中的服务器名称解析为 IP 地址。增强 DNS 还使用轮循机制为 Exchange 2010 传输服务器提供负载平衡功能。
SMTP 在 SMTP 服务器之间中继邮件时,将使用 SMTP 进行通信。SMTP 服务器可以是集线器传输服务器、边缘传输服务器、Exchange 2003 服务器,或智能主机。集线器传输服务器使用远程过程调用 (RPC) 将邮件直接传递到与集线器传输服务器拥有相同 Active Directory 站点成员身份的邮箱服务器。
返回顶部
使用 Active Directory 站点进行路由
Active Directory 站点是基于网络物理方面的逻辑配置组件。创建 Active Directory 站点的主要目的是定义网络中的哪些子网通过优化 Active Directory 复制通信控制的方式建立连接。Active Directory 站点代表 Exchange 2010 的路由边界。安装了集线器传输服务器角色的计算机根据 Active Directory 站点拓扑做出路由决策。
确定站点成员身份
默认情况下,一个 Active Directory 林只能包含一个 Active Directory 站点。此 Active Directory 站点的默认名称为 Default-First-Site-Name。如果未创建任何其他 Active Directory 站点,林中的所有域成员计算机都是 Default-First-Site-Name 的成员。不必配置子网与站点的关联。如果创建了其他 Active Directory 站点,则必须指定为该 Active Directory 站点分配的子网。
每个 Active Directory 站点与一个或多个 IP 子网关联。管理员为配置为域控制器和全局编录服务器的计算机分配 Active Directory 站点成员身份。如果其他域成员计算机(例如 Exchange 服务器)配置为使用与 Active Directory 站点关联的 IP 子网中的 IP 地址,则会自动为其分配 Active Directory 站点成员身份。拥有相同 Active Directory 站点成员身份的计算机被认为具有良好的网络连接。服务器始终是一个 Active Directory 站点的成员。
如果应用程序可以确定安装该应用程序的计算机以及林中的其他计算机的 Active Directory 站点成员身份,然后使用该信息控制通信流,则该应用程序是站点感知应用程序。如果站点感知应用程序必须使用其他服务器(例如域控制器或全局编录服务器)的服务,则为与请求这些服务的计算机拥有相同 Active Directory 站点成员身份的服务器分配优先级。
Exchange 2010 是站点感知应用程序,使用 Active Directory 拓扑来路由邮件,并与安装了其他 Exchange 2010 服务器角色的计算机上运行的服务进行通信。Active Directory 站点不仅是路由边界,而且是服务发现边界。
确定域成员计算机的站点成员身份取决于一系列 DNS 查询,这些查询将本地 IP 地址与已定义的子网进行比较,然后确定相应的站点成员身份关联。为了减少与 DNS 查询有关的开销,Exchange 2010Active Directory 架构的增加包括 Exchange 服务器对象的 msExchServerSite 属性。此属性的值是 Exchange 服务器的 Active Directory 站点的可分辨名称。此属性是每个 Exchange 服务器对象的属性。如果站点成员身份关联存储为服务器对象的属性,则可以从 Active Directory 直接读取当前拓扑,而不必依靠 DNS 查询,并对非域计算机(例如订阅了站点的边缘传输服务器)启用站点成员身份关联。
Microsoft ExchangeActive Directory 拓扑服务将填充 msExchServerSite 属性的值并保持该值最新。基于 Windows 的计算机启动时,网络登录服务将确定该计算机的站点成员身份。网络登录服务使用该信息查找与本地计算机位于同一个 Active Directory 站点的域控制器,然后将授权请求和身份验证请求传递到这些服务器。MicrosoftExchangeActive Directory 拓扑服务使用 DsGetSiteName API 调用从网络登录服务检索站点成员身份值,并将 Active Directory 站点的可分辨名称写入 Active Directory 中的 Exchange 服务器对象的 msExchServerSite 属性。
下表说明组织如何定义 Active Directory 站点。在此示例中,定义了三个 Active Directory 站点,每个 Active Directory 站点与多个 IP 子网关联。
Active Directory 站点与子网的关联的示例
Active Directory 站点名 | 关联的 IP 子网 |
---|---|
Site A |
192.168.1.0/24 192.168.2.0/24 |
Site B |
192.168.3.0/24 192.168.4.0/24 |
Site C |
192.168.5.0/24 192.168.6.0/24 |
如果名为 HubTransportA 的服务器的 IP 地址为 192.168.1.1,则是 Site A 的成员。通过更改服务器的 IP 地址可以更改其站点成员身份。如果将 HubTransportA 的 IP 地址更改为 192.168.2.1,不会更改服务器的 Active Directory 站点成员身份,因为该子网也与 Site A 关联。但是,如果移动了服务器并将 IP 地址更改为 192.168.3.1,则将认为该服务器是 Site B 的成员。
如果更改了子网与 Active Directory 站点的关联,站点成员身份也会更改。例如,如果取消子网 192.168.3.0 与 Site B 的关联,并将其与 Site A 关联,则 IP 地址为 192.168.3.1 的服务器的站点成员身份也将更改为 Site A。只要站点成员身份更改,Exchange 2010 就必须更新其配置数据,以便 Exchange 2010 在做出路由决策时考虑该更改。更改 Active Directory 站点成员身份与完全传播拓扑更改之间会存在一定的延迟。若要传播拓扑更改,必须进行以下通信:
将站点成员身份的更改写入域控制器。更新的信息会在林中每个 Active Directory 站点的域控制器之间进行复制。在整个林中完全传播更改所需的时间取决于站点链接定义的 Active Directory 复制拓扑和计划。
网络登录服务在所有基于 Windows 的计算机上运行,并经常轮询 Active Directory 站点成员身份的更改。网络登录服务每隔五分钟轮询一次。因此,网络登录服务可以在本地域控制器收到更新后的五分钟内检测到更改。
Microsoft Exchange Active Directory 拓扑服务每隔 15 分钟查询一次网络登录服务,以确定本地 Active Directory 服务器的 Exchange 站点成员身份。如果检测到更改,Microsoft Exchange Active Directory 拓扑服务将更新 MsExchServerSite 属性。
然后,在整个组织中复制 Exchange 服务器配置对象已更改的站点属性值。组织中的 Exchange 服务器会检测到此更改。然后,使用新的 Active Directory 站点成员身份属性值更新路由表。
Active Directory 站点成员身份更改生效与其他 Exchange 2010 服务器可以使用更新的信息之间会存在一定的延迟。有关 Exchange 2010 如何处理这些类型的配置更改的详细信息,请参阅本主题后面部分中的“重新路由和‘无法到达’队列”。
IP 站点链接
站点链接是 Active Directory 站点之间的逻辑路径。站点链接对象代表一组站点,这些站点可以利用统一开销,通过指定的站点间传输进行通信。站点链接与物理网络上网络数据包的实际传输路径并不对应。但是,管理员为站点链接分配的开销通常与基础网络的可靠性、速度和可用带宽有关。例如,Active Directory 管理员为速度为 100 Mbps 的网络连接分配的开销将低于为速度为 10 Mbps 的网络连接分配的开销。
默认情况下,所有站点链接都是可传递的。这就意味着,如果 Site A 与 Site B 有链接,而 Site B 与 Site C 有链接,则 Site A 可以递次链接到 Site C。Site A 与 Site C 之间的递次链接也称为“站点链接桥”。
Active Directory 站点链接可以配置为使用 IP 或 SMTP 作为通信传输协议。SMTP 站点链接只限于可以使用该协议复制的数据类型,可以为没有可靠网络链接的 Active Directory 站点之间的复制提供存储并转发机制。IP 站点链接则不限于可以通过该协议复制的数据类型。Exchange 2010 只使用 IP 站点链接来确定其路由拓扑。Exchange 2010 的路由组件在计算路由表时将考虑为 IP 站点链接分配的开销。这些开销用于计算通向邮件最终目标开销最低的路由路径。
每个 Active Directory 站点都必须与至少一个 IP 站点链接关联。有一个默认 IP 站点链接,名为 DEFAULTIPSITELINK。在创建 Active Directory 站点时,必须将该站点与 IP 站点链接关联。可以创建其他 IP 站点链接以实现所需的拓扑,也可以将每个 Active Directory 站点与 DEFAULTIPSITELINK 关联。属于 IP 站点链接的每个 Active Directory 站点可以利用统一的开销与该链接中的每个其他站点直接进行通信。
在下图中,林中配置了四个 Active Directory 站点。每个站点已与 DEFAULTIPSITELINK 关联。因此,每个 Active Directory 站点可以利用相同的开销与每个其他站点直接进行通信。指示了多个通信路径,但是只定义一个 IP 站点链接。
具有单个 IP 站点链接的完全网状拓扑
在下图中,林中配置了四个 Active Directory 站点。在此拓扑中,管理员已配置了 IP 站点链接,以为 Active Directory 站点创建“中心辐射型拓扑”。每个分支站点可以与中心站点直接进行通信,分支站点之间可以使用递次 IP 站点链接相互进行通信。
Active Directory IP 站点链接的中心辐射型拓扑
请务必注意 Exchange 只在其确定开销最低的路径时使用站点链接,但总是会尝试直接将邮件传递给目标集线器传输服务器。例如,在上图所示的拓扑中,如果 Site B 的一位用户将邮件发送至 Site C 的另外一位用户,Site B 的集线器传输服务器将直接与 Site C 的集线器传输服务器连接。如果您想要强制邮件经过 Site A,则必须将该站点作为中心站点启用。有关中心站点的详细信息,请参阅本主题后面的“实现中心站点”。
Active Directory 管理员实现的拓扑最准确地代表了林的连接要求和通信要求。因为 Exchange 2010 使用同一个拓扑,所以,必须确保当前拓扑支持有效的邮件通信。
站点链接的默认开销是 100。有效的站点链接开销可以是从 1 到 99,999 之间的任意数字。如果指定冗余链接,将始终首选分配的开销最低的链接。Exchange 组织管理员可以为 IP 站点链接分配 Exchange 特定的开销。如果为 IP 站点链接分配了 Exchange 开销,Exchange 2010 将使用该开销。否则,将使用 Active Directory 开销。有关如何设置 IP 站点链接上的 Exchange 开销的详细信息,请参阅本主题后面的“控制 IP 站点链接开销”。拥有 Enterprise Administrators 组成员身份的管理员可创建其他 IP 站点链接。
有关 Active Directory 站点配置的详细信息,请参阅 Designing the Site Topology(设计站点拓扑)。
控制 IP 站点链接的开销
Active Directory IP 站点链接开销基于相对网络速度(与 WAN 中的所有网络连接相比),并且可以生成可靠、高效的复制拓扑。因此,在大多数情况下,现有的 IP 站点链接开销应适用于 Exchange 2010 邮件路由。但是,如果在记录现有的 Active Directory 站点和 IP 站点链接拓扑后,发现 Active Directory IP 站点链接开销和通信流模式对于 Exchange 2010 来说不是最适合的,则可以调整 Exchange 计算的开销。使用 Active Directory 工具更改分配给 IP 站点链接的开销将影响整个环境。而是应该在 Exchange 命令行管理程序中使用 Set-AdSiteLink cmdlet 为 IP 站点链接分配特定于 Exchange 的开销。例如,若要为 IP 站点链接 SITELINKAB 设置不同的开销以用于邮件路由,请在命令行管理程序中运行以下命令:
Set-AdSiteLink -Identity SITELINKAB -ExchangeCost 25
为 IP 站点链接分配了 Exchange 开销后,Exchange 开销将覆盖 Active Directory 开销以用于邮件路由,并且路由组件在评估开销最低的路由路径时仅考虑 Exchange 开销。
如果邮件路由拓扑必须与 Active Directory 复制拓扑分离,则可以调整 IP 站点链接开销。可以使用 Exchange 开销强制所有邮件路由使用中心站点。还可以使用 Exchange 开销控制与 Active Directory 站点通信失败后邮件的排队位置。下图显示包含四个站点的 Active Directory 拓扑。
为 IP 站点链接配置了 Exchange 开销的拓扑
在上图中,Site C 与 Site D 之间的网络连接是低带宽连接,只用于 Active Directory 复制,不应当用于邮件路由。但是,Active Directory IP 站点链接开销使该链接包含在从任何其他 Active Directory 站点到 Site D 开销最低的路由路径中。因此,传递到 Site D 的邮件将在 Site C 中排队。但是 Exchange 管理员希望开销最低的路由路径包含 Site B,这样,如果 Site D 无法使用,邮件将在 Site B 上排队。如果为 Site C 与 Site D 之间的 IP 站点链接配置较高的 Exchange 开销,将使该 IP 站点链接不会包含在通向 Site D 的开销最低的路由路径中。
Exchange 2010 支持对 Active Directory 站点链接配置最大邮件大小限制。默认情况下,Exchange 2010 对于在不同 Active Directory 站点中的集线器传输服务器之间中继的邮件不施加最大邮件大小限制。如果使用 Set-AdSiteLink cmdlet 对 Active Directory IP 站点链接配置最大邮件大小,则路由会为大于最大邮件大小限制(在开销最少的路由路径中的任何 Active Directory 站点链接上配置的值)的邮件生成未送达报告 (NDR)。此配置对限制发送到必须通过低带宽连接进行通信的远程 Active Directory 站点的邮件的大小很有用。有关详细信息,请参阅了解邮件大小限制。
实现中心站点
在 Exchange 组织中,可能必须强制所有邮件传递通过特定的 Active Directory 站点进行中继。在这种情况下,连接性可能会阻止站点之间的直接 SMTP 中继。因此,在将邮件发送到目标地址之前,必须通过中间网站中继邮件。依据 Exchange 组织的内部策略,管理员也可能希望通过特殊的网站中继所有邮件。可以使用命令行管理程序 cmdlet 将 Active Directory 站点指定为中心网站。由于邮件传递中涉及更多的服务器,所以,将某个 Active Directory 站点指定为中心站点会导致整体开销增加。例如,假设邮件从 Site A 发送到 Site E。如果开销最低的路由路径为 Site A-Site B-Site C-Site D-Site E,而您将 Site C 指定为中心站点,邮件将从 Site A 中继到 Site C,然后从 Site C 中继到 Site E。
使用 Set-AdSite cmdlet 可以将 Active Directory 站点指定为中心站点。只要开销最低的路由路径上存在用于传递邮件的中心站点,邮件就将排队并由中心站点中的集线器传输服务器进行处理,然后再中继到最终目标。
选择了开销最低的路由路径后,路由组件将确定该路由路径中是否有中心站点。如果配置了中心站点,则邮件在中继到目标之前,将在中心站点中的集线器传输服务器上停留。如果开销最低的路由路径上有多个中心站点,邮件将在该路由路径的每个中心站点上停留。
只有开销最低的路由路径上存在中心站点,直接中继路由的这种变化形式才有效。下图显示中心站点的正确用法。在此图中,将 Site B 配置为中心站点。从 Site A 中继到 Site D 的邮件将先中继到 Site B,然后再传递到 Site D。
使用中心站点进行邮件传递
下图显示 IP 站点链接开销对通向中心站点的路由的影响。在此方案中,已将 Site B 指定为中心站点。但是,因为该站点不在任何其他站点之间开销最低的路由路径上,所以,在传递到目标前不会在 Site B 上排队。如果 Active Directory 站点不在其他两个站点之间开销最低的路由路径上,则永远不会作为中心站点使用。
配置错误的中心站点
可以将任何 Active Directory 站点配置为中心站点。但是,若要使此配置正常工作,必须在中心站点中至少部署一个集线器传输服务器。
拓扑发现
Exchange 2010 拓扑依赖于 Active Directory 站点拓扑,没有自己的配置。Active Directory 可以通过下列必需的元素使用 Exchange 2010 拓扑:
Microsoft Exchange Active Directory 拓扑服务
Microsoft Exchange 传输服务内的拓扑发现模块
所有 Microsoft 服务器角色上都运行 ExchangeActive DirectoryExchange 2010 拓扑服务,边缘传输服务器角色除外。这些 Exchange 2010 服务器使用 MicrosoftExchangeActive Directory 拓扑服务发现 Exchange 服务器可用于读取和写入 Active Directory 数据的域控制器和全局编录服务器。Exchange 2010 必须从 Exchange 读取或向其写入时,Active Directory 即绑定到所标识的目录服务器。
拓扑发现模块是 Microsoft Exchange 传输服务的一部分,向 Exchange 服务器提供 Active Directory 拓扑的信息。此 API 发现组织中的 Exchange 服务器和角色并确定这些服务器和角色与 Active Directory 配置对象的关系。从 Active Directory 检索配置数据并缓存起来,以便该计算机上运行的 Exchange 服务可以访问。
拓扑发现模块通过执行下列步骤来生成 Exchange 路由拓扑:
从 Active Directory 读取数据。将检索下列所有对象:
Active Directory 站点。
IP 站点链接。
所有 Exchange 服务器。其中包括这些服务器上部署的 Exchange 2010 服务器角色的信息。
使用步骤 1 中检索到的数据创建初始拓扑,并开始链接和映射相关的配置对象。
通过从 Active Directory 中存储的 Exchange 服务器对象检索站点属性值,将 Exchange 服务器与 Active Directory 站点匹配。
使用检索到的信息集合更新路由表。
此过程使每个 Exchange 2010 服务器可感知组织中的其他 Exchange 服务器并了解 Exchange 服务器之间的距离。
返回顶部
Exchange 2010 路由表
Microsoft Exchange 传输服务启动时,将基于从 Active Directory 或(在边缘传输服务器上)AD LDS 检索的信息快照计算一组路由表。AD LDS 中存储的配置信息包括可用的连接器和接受域,但是不包括拓扑数据。
路由组件参考路由表来确定如何将邮件路由到收件人。对配置进行更改后,将重建路由表。使用新路由表路由新的传入邮件。如果路由组件确定远程传递队列中的邮件受到配置更改的影响,这些邮件也将重新路由。有关邮件重新路由的详细信息,请参阅本主题后面部分中的“重新路由和‘无法到达’队列”。
从 Active Directory 检索下列配置数据并使其可供集线器传输服务器的路由组件使用:
Active Directory 站点
Active Directory IP 站点链接
Exchange 服务器及其与 Active Directory 站点的关系
SMTP 连接器
非 SMTP 连接器
注意: 非 SMTP 连接器包括 Exchange 2010 传递代理连接器、外部连接器及共存方案中 Exchange 2003 托管的任何非 SMTP 连接器。 路由组
路由组连接器
邮箱存储(专用邮件数据库 (MDB))
公用文件夹存储(公用 MDB)
公用文件夹层次结构
Microsoft Exchange 传输服务的路由组件根据此数据填充路由表,以帮助简化路由决策。该路由表通过关联数据来创建拓扑映射。此拓扑映射包含下列元素:
链接的连接器映射 此映射将本地服务器上的接收连接器的标识符与链接的发送连接器关联。
服务器映射 组织中的所有 Exchange 2010 和 Exchange 2007 集线器传输服务器、边缘传输服务器、邮箱服务器以及 Exchange 2003 服务器均包含在该服务器映射中。此映射将每个 Exchange 服务器的可分辨名称与服务器路由数据关联。其中包括到达该服务器的总开销。
旧版服务器映射 组织中的所有 Exchange Server 2007 集线器传输服务器、边缘传输服务器、邮箱服务器以及 Exchange 2003 服务器均包含在旧版服务器映射中。此映射将每个 Exchange 服务器的旧版可分辨名称与服务器路由数据关联。其中包括到达该服务器的总开销。此映射支持存储覆盖功能。存储覆盖功能专用于公用文件夹。有关详细信息,请参阅内部邮件路由中的“路由到公用文件夹”。
MDB 映射 组织中的所有 MDB 均包含在 MDB 映射中。此映射将每个 MDB 的可分辨名称与服务器路由数据关联。其中包括到达该服务器的总开销。
Active Directory 站点映射 此映射将每个 Active Directory 站点与包含从本地站点到每个其他站点开销最低的路由路径的结构关联。该映射包括开销最低的路由路径上的任何中心站点。每个路由路径跃点还确定该站点中将供增强 DNS 组件使用的所有集线器传输服务器。
路由组映射 此映射将从 Exchange 2010 路由组到每个旧版路由组开销最低的路由路径的总开销和第一个跃点路由组连接器关联。
发送连接器映射 此映射确定组织中配置的发送连接器以及每个连接器的源服务器。
每次启动传输服务器时构建路由表,并在收到配置更改时重新计算路由表。可以通过下列任意方式检测到配置更改:
Active Directory 更改通知 收到通知与将更改写入路由表之间会存在一定的延迟。此延迟使路由组件可以将更改分批,并在一项操作中处理多处更改。默认情况下,每则通知会使路由组件的处理延迟五秒钟。例如,如果在上一则通知后的正好一秒内收到五则通知,则路由组件延迟处理更改的总时间为九秒钟。
服务控制命令导致重新加载配置 重新启动 Microsoft Exchange 传输服务时,路由组件将重新加载配置数据。
定期重新加载,以跟踪 Active Directory 通知不支持的更改 默认情况下,路由组件将定期重新加载配置数据,以确保跟踪所有更改。每隔六个小时重新加载一次配置。
路由表中的信息将记录到路由日志中。默认状态下,这些日志位于 C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\Routing 文件夹中。每次计算路由表时,将生成一个新日志。如果由于某种原因,集线器传输服务器无法与 Active Directory 连接,路由组件将继续根据当前缓存的数据做出路由决策,即使可能不是最新数据也将如此。有关详细信息,请参阅了解路由表日志记录。
返回顶部
接收邮件进行路由
可以通过下列任何方式将邮件传送到集线器传输服务器:
通过面向 Internet 的 SMTP 服务器接收电子邮件,并将其传送到 Exchange 组织中的收件人或内部中继接受域中的收件人那里。
通过 Exchange 组织中的另一个集线器传输服务器接收电子邮件,并将其传送到 Active Directory 站点中邮箱服务器上的收件人邮箱中。
电子邮件从 SMTP 客户端接收。您的环境中通常可能存在 POP3 或 IMAP4 用户。
电子邮件从集线器传输服务器中的分拣目录和重播目录接收。外部连接器通常使用这些目录将邮件发送到 Exchange 基础结构中。
通过集线器传输服务器检索 Exchange 2010 邮箱服务器中的电子邮件。
通过 Exchange 2007 或 Exchange 2003 服务器接收电子邮件,并通过该服务器将邮件传递到位于 Exchange 2010 邮箱服务器上的收件人邮箱中。
在提交队列中开始对集线器传输服务器接收的所有电子邮件进行分类处理。
从边缘传输服务器、其他 Exchange 集线器传输服务器及 SMTP 客户端接收邮件
在这种情况下,通过标准的 SMTP 连接,从边缘传输服务器、集线器传输服务器或其他第三方 SMTP 主机来接收邮件。远程主机将启动一个 SMTP 连接,并将邮件传输至集线器传输服务器。集线器传输服务器将使用接收连接器来接收传入的 SMTP 连接。每个集线器传输服务器具有两个在安装过程中创建的接收连接器。其中一个连接器用于接收来自其他 Exchange 服务器的经过身份验证的 SMTP 连接。第二个用于接收来自组织中 POP3 或者 IMAP4 用户使用的 SMTP 客户端的 SMTP 连接。这两个接收连接器具有不同的权限,是针对自身的预期用法配置的。有关接收连接器的详细信息,请参阅了解接收连接器。
默认状态下,集线器传输服务器不接受未经身份验证的匿名连接。如果您需要启用此功能,我们建议您创建一个独立的接收连接器来处理匿名连接。有关详细信息,请参阅允许在接收连接器上进行匿名中继。
收集来自分拣目录和重播目录的邮件
不使用 SMTP 作为传输协议的邮件系统可以连接至使用外部连接器的 Exchange 组织。当邮件发送至远程系统中的 Exchange 用户时,外部连接器会将邮件写入集线器传输服务器上名为“分拣目录”的特殊目录中。集线器传输服务器将定期检查分拣目录中的新邮件。集线器传输服务器检测到新邮件时,会将邮件转换为 Exchange 电子邮件并将其作为常规邮件路由。有关分拣目录和重播目录使用方法的详细信息,请参阅了解分拣和重播目录。
检索邮箱服务器中的邮件
在本方案中,运行于邮箱服务器上的 Microsoft Exchange 邮件提交服务向位于同一 Active Directory 站点上的集线器传输服务器发出通知,指示准备从发件人邮箱中检索邮件。每个邮箱服务器保留了位于同一 Active Directory 站点中的集线器传输服务器列表。此集线器传输服务器列表也称为提交服务器列表。服务器探查过程会每隔 10 分钟更新一次该列表。
如果多个集线器传输服务器与提交通知(指示准备检索邮件)的邮箱服务器位于同一 Active Directory 站点中,则以下过程可用于选择服务器:
如果本地邮箱服务器也运行集线器传输服务器角色,且未加入数据库可用性组 (DAG),则通知该本地服务器。如果未运行本地 MicrosoftExchange 传输服务或者本地集线器传输服务器由于反压无法处理新的邮件提交,则会向另一个可用的集线器传输服务器发出通知。有关反压的详细信息,请参阅了解反压。
如果本地邮箱服务器也运行集线器传输服务器角色,且也加入了 DAG,则它首先尝试通知站点中的任何集线器传输服务器,然后再通知本地集线器传输服务器。这样是为了避免在同一服务器硬件上产生邮件的冗余副本。有关使用 DAG 时共存邮箱和集线器传输服务器角色的详细信息,请参阅使用 DAG 时的集线器传输和邮箱服务器角色共存。
如果本地邮箱服务器未运行集线器传输服务器角色,则会使用轮循机制在集线器传输服务器中发出负载平衡通知。
如果无法联系所选的集线器传输服务器,则 Microsoft Exchange 邮件提交服务会将故障转移到同一 Active Directory 站点中的其他集线器传输服务器上。此时,故障服务器将被标记为非活动状态,并从提交服务器列表中选择下一个集线器传输服务器。如果本地 Active Directory 站点中没有可用的集线器传输服务器,则提交服务器列表为空。在这种情况下,会记录事件日志,并暂时终止邮件提交通知。5 分钟后,将尝试重新连接标记为非活动状态的集线器传输服务器。
默认情况下,MicrosoftExchange 邮件提交服务会在站点中的集线器传输服务器中通知负载平衡事件,这样每个集线器传输服务器都会接收到同等分发数量的通知事件进行处理。在某些情况下,提供同等数量的分发可能并不是最佳的解决方案。并不是所有的集线器传输服务器都具有相同的处理能力,有些邮件需要进行其他处理。例如,集线器传输服务器在处理含有很大附件或许多收件人的邮件时,其处理时间要比处理只寄往一个收件人的小邮件要长。如果要创建邮箱服务器应该通知的集线器传输服务器的静态列表,可以在命令行管理程序中使用 Set-MailboxServer cmdlet。使用 SubmissionServerOverrideList 参数指定一个集线器传输服务器列表,本地邮箱服务器有要检索的邮件时将通知列表中的服务器。有关如何配置此设置的详细信息,请参阅 Set-MailboxServer。
在集线器传输服务器收到来自邮箱服务器的邮件提交通知后,它将使用存储驱动程序检索邮箱数据库中的邮件,并将其放入集线器传输服务器上的提交队列中。邮件从邮箱服务器传输到集线器传输服务器是通过 Exchange RPC 来实现的。
从旧版 Exchange 服务器中接收邮件
由于在 Exchange 2010 中对 Exchange 服务器对象 (XSO) 模型进行了更改,Exchange 2010 集线器传输服务器不能从 Exchange 2007 邮箱服务器中选取邮件,也不能将邮件传递到此类服务器。同样,Exchange 2007 集线器传输服务器也不能与 Exchange 2010 邮箱服务器进行通信。所有由 Exchange 2007 收件人发送的邮件首先是由 Exchange 2007 集线器传输服务器从邮箱服务器中进行拣选,然后中继至 Exchange 2010 集线器传输服务器。有关与 Exchange 2007 共存时邮件路由的详细信息,请参阅从 Exchange 2007 传输升级。
与 Active Directory 站点不同,Exchange 2003 使用路由组来路由邮件。路由组使用路由组连接器相互连接。为了支持这两个路由拓扑的共存,在 Exchange 2010 组织中安装 Exchange 2010 时,会自动将所有 Exchange 2003 服务器添加到单个路由组中。来自 Exchange 2003 邮箱中的所有邮件将通过 Exchange 2010 路由组和 Exchange 2003 路由组之间的路由组连接器传递至 Exchange 2010 环境中。有关与 Exchange 2003 共存时邮件路由的详细信息,请参阅从 Exchange 2003 传输升级。
返回顶部
路由邮件
集线器传输服务器或边缘传输服务器接收到邮件之后,该服务器将确定最终目标并使用 Exchange 拓扑及连接器配置来确定开销最低的路由路径。确定了路由路径之后,邮件将传递至路由路径的下一个跃点。
虽然本主题说明了 Exchange 通常是如何制定路由决策的,以下两个主题还将提供特定路由方案的其他信息。内部邮件路由主题讨论向邮箱服务器、公用文件夹及旧版服务器发送邮件的过程。外部邮件路由主题讨论向 Exchange 组织以外的收件人路由邮件的过程。本主题还讨论了发送连接器、传递代理连接器及外部连接器的角色。
确定最终目标
上一节描述了集线器传输服务器可以从中接收邮件的各种来源。集线器传输服务器收到邮件后,必须对邮件进行分类。邮件分类的第一个阶段是收件人解析。解析了收件人之后,可以确定最终目标。下一个阶段是路由,确定到达该目标的最佳路径。选择一个确定的路由。除非路由配置更改,否则不会重新计算该路由。
从发送服务器的角度来说,每个传递队列代表特定邮件的目标。集线器传输服务器或边缘传输服务器选择了邮件的目标后,目标将作为 NextHopSolutionKey 属性标记在收件人上。如果将一封邮件发送给多个收件人,则每个收件人都具有 NextHopSolutionKey 属性。接收服务器还执行邮件分类,并使邮件排队传递。邮件排队之后,可以检查特定队列的传递类型,以确定邮件在到达下一个跃点目标时是否将被再次中继。
邮件目标可以属于下列传递类型之一:
DNS 连接器传递 使用以本地服务器作为源服务器的 SMTP 发送连接器将邮件排队传递给外部收件人。该连接器配置为使用 DNS 解析收件人地址。
智能主机连接器传递 使用以本地服务器作为源服务器的 SMTP 发送连接器将邮件排队传递给外部收件人。该连接器配置为使用智能主机进行传递。
在 Active Directory 站点中通过 SMTP 中继到边缘传输服务器 使用以订阅了本地 Active Directory 站点的边缘传输服务器作为源服务器的 SMTP 发送连接器将邮件排队传递给外部收件人。
通过 Active Directory 站点中的 SMTP 中继到集线器传输服务器 将邮件排队传递到与本地服务器位于同一个 Active Directory 站点的集线器传输服务器。目标服务器可以是 Exchange 2007 集线器传输服务器、发送连接器的源服务器、传递代理连接器或外部连接器、路由组连接器的源服务器,或是通讯组展开服务器。
通过 SMTP 中继到远程 Active Directory 站点 将邮件排队传递到位于远程 Active Directory 站点中的集线器传输服务器。远程 Active Directory 站点中的最终目标服务器可以是下列任意服务器:
配置为传输发送给外部收件人的邮件的连接器的源服务器
路由组连接器的源服务器
通讯组展开服务器
位于远程 Active Directory 站点中的邮箱服务器
将邮件传递到目标站点中的某个集线器传输服务器。接收服务器根据需要在 Active Directory 站点内中继邮件。
通过 SMTP 中继到旧版路由组 将邮件排队传递到通向 Exchange 2003 路由组所使用的第一个跃点路由组连接器。最终目标服务器可以是下列任意服务器:
连接器的源服务器
展开服务器
传递发送给位于路由组中的邮箱收件人的邮件的 Exchange 2003 桥头服务器
MAPI 传递 将邮件排队传递到位于本地 Active Directory 站点中的邮箱服务器上的收件人邮箱、公用文件夹或公用文件夹存储。
非 SMTP 网关传递 使用以本地服务器作为源服务器的传递代理连接器或外部连接器将邮件排队传递给外部收件人。只有将邮件传递到本地服务器上的传递代理连接器或外部连接器投递目录时,才使用此传递类型。
无法到达 无法确定通向收件人的路由,邮件位于“无法到达”队列中。
确定开销最低的路由路径
通往远程 Active Directory 站点的最低开销路由路径是通过计算分配给 Active Directory IP 站点链接(位于两个站点之间)的所有开销来确定的。这些链接通过桥接实现直接连接。Exchange 2010 集线器传输服务器始终仅选择一条开销最低的确定性路由路径。在选择路由路径时,将不考虑基本连接或目标服务器的可用性,也不考虑备选的路由路径。
通过计算开销最低的路由路径,以确定在将邮件传递到下一个跃点失败时的回退路径。在 Exchange 2010 中,当直接中继由于任何原因(例如网络问题或服务器脱机)而失败时,使用“回退”机制在开销最低的路由路径上的某个过渡跃点传递邮件。路由组件通过在开销最低的路由路径上逐个跃点进行回退(直到建立连接),尝试将邮件传递到尽可能接近目标的位置。首先,尝试连接目标 Active Directory 站点中的每个集线器传输服务器。如果 Active Directory 站点中没有任何集线器传输服务器做出响应,将检查开销最低的路由路径,以确定如何开始从传递站点回退。目标是将邮件传递到与目标尽可能近的位置,并使邮件在该 Active Directory 站点的某个集线器传输服务器上排队。
根据各种邮件路由方案的不同,下列因素可能会影响对开销最低的路由路径的选择:
链接的连接器 如果接收邮件的接收连接器链接到发送连接器,则无论开销多少,都会将邮件路由到该发送连接器。始终优先采用此配置。
为通向目标必须经过的 IP 站点链接和路由组连接器分配的开销 如果源服务器与目标服务器之间存在多个路由路径,将选择总开销最低的路由路径。
为发送连接器分配的地址空间 将选择地址空间与目标最匹配的发送连接器。
为发送连接器上配置的地址空间分配的开销 如果为多个发送连接器分配了同一个地址空间,路由组件将比较为地址空间分配的开销。将选择开销最低的发送连接器。
连接器作用域 连接器也许只能供与连接器的源传输服务器位于同一个 Exchange 2010 站点中的 Active Directory 服务器使用。在早期版本的 Exchange 中,连接器作用域可能只限于拥有相同路由组成员身份的服务器。
邮件大小限制 为连接器指定的邮件大小限制必须大于所路由的邮件大小。邮件大小限制小于邮件大小的连接器将不在路由组件的考虑范围内。
目标与发送连接器的临近程度 路由组件将首选最接近的服务器,采用的顺序如下:本地服务器、同一个 Active Directory 站点中的服务器或远程 Active Directory 站点或路由组中的服务器。
为 Active Directory 站点分配的名称 如果多个路由路径产生的总开销相同,路由组件将对每个路由路径上目标站点之前的 Active Directory 站点名进行字母数字比较。将使用与目标最近的,按字母数字排序位列最低的 Active Directory 站点的路由路径。
为路由组连接器分配的名称 如果多个路由路径产生的总开销相同,路由组件将对每个路由路径上目标站点之前的路由组连接器名称进行字母数字比较。将使用与目标最接近的路由组连接器的字母数字顺序最低的路由路径。
连接器状态 Exchange 2010 路由组件在计算路由路径时只考虑已启用的连接器。但是,早期版本的 Exchange 不考虑连接器状态。
使用以下逻辑选择路由路径:
首先,通过将通向目标必须经过的 IP 站点链接的开销与所有路由组连接器的开销相加,计算出开销最低的路由路径。如果目标是连接器,则将为地址空间分配的开销加到通向所选连接器的开销中。如果有多个可能的路由路径,则只使用总开销最低的路由路径。
如果多个路由路径的总开销相同,将计算每个路径中的跃点数,并使用跃点数最少的路由路径。
如果仍有多个可用的路由路径,则会考虑在目标之前分配的 Active Directory 站点或路由组连接器的名称。在所使用的路由路径中,最接近目标的 Active Directory 站点的字母数字顺序最小。如果所有被评估的路由路径中与目标最接近的站点都相同,则考虑前一个站点名。
下图显示了 Exchange 组织的路由拓扑。此拓扑在下面的示例中使用,以说明路由算法在选择开销最低的路由路径时所使用的逻辑。
Exchange 2010 路由拓扑
示例 1 从 Site A 中继到 Site D 的邮件可以采用下列两种可能的路由路径:Site A-Site B-Site D 和 Site A-Site C-Site D。将为每个路由路径中的 IP 站点链接分配的开销加在一起,以确定路由邮件的总开销。在此示例中,Site A-Site B-Site D 路由路径的总开销为 20。Site A-Site C-Site D 路由路径的总开销为 10。路由组件将选择 Site A-Site C-Site D 路径。
示例 2 将邮件从 Site B 中继到 Site D。存在三种可能的路由路径:Site B-Site D 的开销为 15,Site B-Site E-Site C-Site D 的开销为 15,Site B-Site A-Site C-Site D 的开销为 15。由于多个路由路径产生的开销相同,路由组件将选择 Site B-Site D 路由路径。此路由路径的跃点数最少。
示例 3 将邮件从 Site A 中继到 Site E。存在两种可能的路由路径:Site A-Site B-Site E 的开销为 10,Site A-Site C-Site E 的开销为 10。两个路由路径有同样的开销和同样的跃点数。将比较 Site E 之前的 Active Directory 站点的字母数字顺序。Site B 的字母数字值小于 Site C。因此,路由组件将选择 Site A-Site B-Site E 路由路径。
确定了开销最低的路由路径之后,Exchange 2010 路由组件不会考虑备选路由路径。
所选的下一个跃点
Exchange 2010 集线器传输服务器不会将邮件中继到开销最低的路由路径上的每个 Active Directory 站点。确定了路由路径之后,将邮件直接从源服务器中继到下一个跃点。所选的下一个跃点尝试将邮件传递到与最终目标尽可能近的位置。可能还需要通过更多的站点内中继才能到达最终目标。路由到旧版路由组时,将直接中继到第一个跃点路由组连接器的源服务器所在的 Active Directory 站点。将邮件中继到旧版环境之后,将执行标准的旧版路由。
下图显示一个简单的 Exchange 拓扑,并说明了许多 Exchange 路由组件。
Exchange 拓扑和路由组件
使用上图作为参考,如下所述处理从 Site A 中的 Mailbox1 发送给外部收件人 joe@contoso.com 的邮件:
Mailbox1 上运行的 Microsoft Exchange 邮箱提交服务通知同一个 Exchange 2010 站点中的 Active Directory 集线器传输服务器要传输新的邮件项目。
同一个 Exchange 2010 站点中的 Active Directory 集线器传输服务器上的存储驱动程序组件使用 RPC 检索邮件并将其放入本地服务器的提交队列中。
邮件从提交队列中移出以进行分类。分类程序先执行收件人解析,确定 joe@contoso.com 是外部收件人。
路由组件选择路由邮件的最佳连接器,并计算通向该连接器开销最低的路由路径。在此示例中,发送连接器的地址空间为 *.contoso.com,并且是路由组件所选的连接器。此发送连接器的所有源服务器都位于 Site B 中。
路由组件确定通向发送连接器的源服务器所需的下一个跃点。Site A 中的集线器传输服务器将邮件排队通过 SMTP 传递到 Site B。
如果 Site B 中的接收服务器是发送连接器的源服务器,则将邮件排队传递到该发送连接器。如果接收服务器不是 *.contoso.com 发送连接器的源服务器,将使用 SMTP 将邮件中继到 Site B 中作为连接器源服务器的集线器传输服务器。
下表提供根据上图中所示的拓扑为多个收件人选择下一个跃点的更多示例。这不是所有的路由可能性的完整列表。它仅提供了拓扑中最常见的例子,如上图所示。
上图中下一个跃点选择情况的示例
接收服务器 | 最终目标 | 下一个跃点 | 队列传递类型 |
---|---|---|---|
Hub1 |
Mailbox1 |
Mailbox1 |
MAPI 传递 |
Hub1 |
Mailbox2 |
Hub3 |
Active Directory 站点中的 SMTP 中继 |
Hub1 |
Mailbox3 |
Site B |
通过 SMTP 中继到远程 Active Directory 站点 |
Hub1 |
Mailbox4 |
路由组连接器 |
通过 SMTP 中继到旧版路由组 |
Hub1 |
Recipient@fourthcoffee.com |
Edge1 |
SMTP 中继到边缘传输 |
Hub3 |
Mailbox1 |
Hub1 或 Hub2 |
Active Directory 站点中的 SMTP 中继 |
Hub4 |
Mailbox1 |
Site A |
通过 SMTP 中继到远程 Active Directory 站点 |
Hub4 |
Mailbox4 |
Site A |
通过 SMTP 中继到远程 Active Directory 站点 |
Hub4 |
Recipient@contoso.com |
Contoso SMTP 主机 |
智能主机传递 |
Hub4 |
Recipient@fourthcoffee.com |
Site A |
通过 SMTP 中继到远程 Active Directory 站点 |
Edge1 |
Recipient@fourthcoffee.com |
Fourth Coffee SMTP 主机 |
DNS 传递 |
计算出开销最低的路由路径并选择好下一个跃点目标之后,Exchange 2010 路由组件会尝试直接将邮件中继到目标,除非中心站点在开销最低的路由路径上进行配置。
在故障点排队
开销最低的路由路径计算是用于确定邮件传递至下一个跃点失败时的回退路径。Exchange 2010 通过在开销最低的路由路径上逐个跃点进行回退(直到建立连接),尝试将邮件传递到尽可能接近目标的位置。此行为称为“在故障点的排队”。如果邮件在传递路径中的通信失败点排队,则不仅可在问题解决之后加速传递,也有助于您确定邮件传递失败的原因。
在下图所示的拓扑中,如果邮件在 Site A 与 Site D 之间传递,开销最低的路由路径可能是 Site A-Site B-Site C-Site D。将首先尝试直接从 Site A 传递到 Site D。如果 Site D 中没有任何集线器传输服务器做出响应,将尝试传递到 Site C 中的集线器传输服务器。此过程继续进行,直到某个集线器传输服务器接收邮件。如果所有中间站点均无法使用,邮件将在源站点上排队。如果邮件在 Site C 中排队,则可以开始调查是 Site D 的集线器传输服务器的故障,还是 Site C 与 Site D 之间的网络连接的故障。
故障点队列
如果邮件在故障点排队,队列将进入重试状态,根据邮件重试间隔继续尝试传递,直到传递成功或邮件过期。在默认的 12 小时间隔后,将自动重新提交队列,以进行分类。除非进行了导致重新提交的配置更改,否则,不会自动重新提交将连接器作为下一个跃点目标的队列。有关详细信息,请参阅邮件重新路由和“无法到达”队列。
可以使用邮件流故障排除程序帮助诊断邮件流的问题。此工具是 Microsoft Exchange 故障排除助理的一个组件,可以从 Exchange 管理控制台的工具箱中运行。
在比较复杂的拓扑中,两个 Active Directory 站点之间开销最低的路由路径可能包含许多中间 Active Directory 站点。如果在路由路径开头的某个位置出现网络问题,可能不必从结尾逐个站点回退并尝试传递到每个中间站点。如果路由路径超过四个跃点,可以执行二元回退,直到剩下四个或更少的站点。“二元回退”表示在路由路径的中间点进行下一次连接尝试。比如,如果从 Active Directory Site A 到 Site G 的开销最低的路由路径是 A - B - C - D - E - F - G,并且在 Site B 和 Site C 之间的链接上发生网络故障,首先将尝试连接 Site G 中的所有集线器传输服务器。如果该连接尝试失败,接下来尝试连接 Site D 中的所有集线器传输服务器。此位置是到 Site G 的中间点。如果该连接尝试失败,则尝试连接 Site C 和 Site B,因为这两个站点与原站点之间的链接数不足四个。最终,邮件将在 Site B 中的集线器传输服务器上排队,直到恢复了 B-C 链接的连接。
延迟扇出
一封电子邮件可以发送给多个收件人。这些收件人可能拥有内部邮箱,也可能是外部收件人。为了将一封邮件路由给多个收件人,会执行下列步骤:
收件人解析 邮件的每个收件人将被解析为传递目标。
路由 确定每个收件人开销最低的路由路径。包括是否配置中心站点。
邮件拆分 若要将邮件路由到不同传递位置的收件人,必须将邮件拆分成多个副本。
解析了每个收件人并确定通向每个传递目标的路由路径之后,Exchange 2010 将比较每个收件人的路由路径。为了节省带宽,在遇到路由路径的分支之前,不会进行收件人拆分(即将邮件拆分成多个副本)。
例如,如果一封邮件的多个收件人共享开销最低的路由路径的部分或全部,在邮件到达路由路径中的分支点之前,将发送一个邮件副本。路由路径分支出现时,将拆分邮件,为每个收件人创建各自的副本。
在下图中,一封邮件从 Site A 发送给 Site C、Site D 和 Site E 中的收件人。在邮件到达 Site B 之前,将共享开销最低的路由路径。在此方案中,包含所有收件人的一个邮件副本将中继到 Site B。此位置是路由路径中的第一个分支。从 Site B,一个邮件副本路由给 Site D 中的收件人,一个副本中继到 Site C。在 Site C 中,将再次拆分邮件。一个邮件副本传递给 Site C 中的收件人。一个邮件副本中继到 Site E,以便传递给该站点中的收件人。
延迟邮件扇出
返回顶部
重新路由和“无法到达”队列
如果路由由于某种原因无法确定有效收件人的路由,则将邮件放入“无法到达”队列。在处理配置更改并重新计算路由表后,将重新路由此队列中的邮件。在下列方案中不会重新路由邮件,而是向发件人返回 NDR。以下情况将导致邮件被路由至“无法到达”列队。
收件人是非 SMTP 地址,并且找不到与地址空间匹配的连接器。
邮件不符合任何匹配的连接器的邮件大小限制。
并非所有配置更改都要求重新提交队列中的邮件。例如,对连接器智能主机列表的更改不会导致邮件重新路由。有关如何重新路由邮件的详细信息,请参阅邮件重新路由和“无法到达”队列。
返回顶部
© 2010 Microsoft Corporation。保留所有权利。