前面的内容里面,已经为你们比较深刻的介绍了Exchange2013的客户端访问角色涉及到的诸多细节。在接下来的章节里就跟你们聊一聊Exchange 2013里的传输服务,这一节总共的内容都比较多,并且更偏向理论,因此咱先来一篇简述,而后再分拆开一个一个讲。前端
在以前的版本中,由Exchange2007引入了Hub Transport(集线器传输)角色做为全部邮件信息的传递中枢,任何发送或者接收到的邮件都必然会通过至少一个Ex2010与Ex2007的集线器传输角色;那么在Exchange2013当中,任何发送或接收的邮件都必然会通过MBX上的传输组件。这种必然性就表明Exchange能够实现如下这些功能:数据库
一、 全部的邮件都会传输规则过滤并处理,传输规则能够同时对入站和出站两个方向的邮件设置过滤规则。缓存
二、 全部邮件传输路径上通过的MBX服务器都会存有日志,也就是tracking logs,这个功能在排查邮件流问题的时候每每会首先被考虑到。服务器
三、 MBX会保存一份当前正在传输的邮件的临时性副本,直到下游服务器返回了邮件送达的确认消息。若是在正常邮件传输路径当中出现问题致使这份邮件不能立刻被送达,那么MBX会尝试用不一样的邮件路由来发送临时副本。架构
四、 邮件只会到达拥有该邮箱活动数据库副本的MBX服务器ide
五、 组织内部,组织之间,组织外部的邮件流均可以被监控和管理。spa
做为一个邮件管理员,对于Exchange传输系统所要重点注意:翻译
一、 配置默认的链接器来符合组织内的需求。代理
二、 邮件传输路径的高可用日志
三、 知足合规性的必要措施
四、 为环境内部其余的SMTP客户端配置自定义的接收链接器,好比邮件应用,扫描仪复印机,或者是其余的邮件系统
五、 突发的异常状况须要快速定位而且效率处理
六、 收集监控和报告的数据,以随时可以提供报表。
简述传输管道
微软在不少文档中,不管是针对Exchange开发者,或是管理员,都常常用到一个词,叫Transport Pipeline。这个概念在Exchange实际架构当中被分割成了两个部分,看起来就像下图所归纳的样子。图中标示出CAS和MBX在逻辑上分别负责不一样的传输模块。
从这个抽象的图里描述一下入站的邮件流:
一、 入站邮件流到达接收链接器,
二、 FET(MSExchangeFrontEndTransport.exe 前端传输)服务将邮件代理给MBX上的Transport服务
三、 Transport(MSExchangeTransport.exe)服务接收代理链接。微软说Ex2013里的Transport服务几乎等同于早期Exchange版本里的Hub Transport服务,意味着该服务会负责进行邮件分拣,邮件路由,应用传输规则,以及检查和修改邮件头与内容(渲染邮件)。
四、 Transport服务向MBX上的邮箱传输传递服务(MSExchangeDelivery.exe)发起SMTP链接(注意这里不是HTTP也不是RPC而是HTTP链接),该服务接收Transport的链接,接受入站邮件而后使用RPC链接将邮件放到Information Store里。因此整个过程中邮箱传输传递服务充当了RPC存储服务和SMTP流量之间的一块适配器;Transport和FET服务没法直接对store进行链接,邮箱传输传递和邮箱传输提交服务利用RPC与store进行通讯是Exchange2013里惟一用到RPC服务的地方。其余的内部服务器之间的Transport通讯都是使用SMTP。
出站邮件流量的走向基本与入站流量走向相反,当用户发送一封新邮件的时候,客户端首先将邮件存储在特定的文件夹当中:Microsoft Outlook 缓存模式客户端会存在已发送邮件里,Outlook在线模式(或者Outlook 2011 for MAC OS X)的发件箱里,或者是Outlook Web App的草稿里。而后MBX上的邮件传输提交服务(MSExchangeSubmission.exe)会从这些文件夹里经过RPC拿走这些邮件,而后发送给传输服务,再丢给发送链接器。
这个过程中也有例外,比方是某种邮件应用或者是邮件管理员本身把邮件直接放到MBX里的分拣或重播目录里头,这种状况我们在后面的文章里会详细说明。
关于邮件流我之前也翻译过technet blog上的一篇文章:
http://sodaxu.blog.51cto.com/8850288/1651613
简述邮件路由
邮件路由在Ex2013的实现与之前的版本有诸多不一样。在Exchange2010当中,AD站点是邮件路由的主要边界,和Exchange5.5的邮件路由工做方式相似。而在Exchange2000和Exchange2003当中,邮件路由则是依靠路由组和路由组链接器的概念来工做。Exchange 2013继续使用AD站点做为邮件路由范围的一部分,另外一部分范围是DAG组。独立的MBX服务器(即没有加入到DAG组里的MBX)以AD站点做为路由边界,而加入到了DAG组的MBX服务器以DAG关系做为路由边界。这个改动也在必定意义上直接影响了Exchange2013其余组件的变更。固然DAG成员之间依然要求有健壮的链接来支撑,特别是跨站点的DAG。
在独立的MBX上,入站的邮件固然直接被丢到拥有该邮箱的数据库里;而在DAG里,入站邮件是被丢到拥有该邮箱的数据库的活动副本里(叫激活副本更为合适)。因此路由组件必须提供一个方法使得发送服务器能够辨识出哪台MBX得邮箱传输传递服务可以接受该邮件。这个需求被一个叫Active Manager的组件所知足,它会提供一张表,表里列出了哪些数据库的活动副本对应的MBX服务器。
另一点,DAG自己就能够提供传输服务的弹性扩展,比方你部署了一个跨站点的DAG,那么其中任何的DAG成员均可以handle邮件的传输,而不须要额外的配置。
邮件的路由主要由Trransport服务里的分拣器组件负责,由它来决定邮件的下一跳地址(下一个目的地)而后将这个邮件投递到对应目的地的队列里。队列既包括本地的邮件流即SMTP发送给MBX邮箱传递传输服务,也有多是外部的邮件流,发送给其余的邮件服务器。
实际上Exchannge2013包含三种目的地类型:邮箱数据库,邮件链接器,通信组扩展服务器(distribution group expansion)。每封邮件的投递都会被指向这三种目的地其中一种。
这三种目的地在Exchange中被细化为投递组(delivery group)。关于投递组的更详细的其余说明,我会在后续的文章中再来跟你们聊聊。
那么到目前为止,对Exchange 2013上的传输服务组件,我们应该有一个大体的了解,后续的文章当中再来具体针对组件进行详细描述;你们敬请期待。