You are on page 1of 46

Exchange Server 2013 Architecture

Ross Smith IV Principal Program Manager, Exchange Server

Disclaimer
2012 Microsoft Corporation. All rights reserved. Microsoft, Office 365, and other product and service names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Agenda Agenda

Discuss the new server architecture in Exchange 2013

Discuss the Client Access server role

Discuss the Mailbox server role

E2007/E2010 Server Role Architecture


Enterprise Network 5 major roles Tightly coupled
Functionality

Forefront Online Protection for Exchange

Phone system (PBX or VOIP)

Edge Transport Routing and AV/AS

Hub Transport Routing & policy

Geo affinity
Versioning User partitioning

External SMTP servers Mobile phone Web browser Outlook (remote user)

Mailbox Storage of mailbox items

Unified Messaging Voice mail and voice access

Layer 7 LB

Client Access Client connectivity Web services

Outlook (local user)

Line of business application AD

Whats wrong with the existing model?


Exchange deployments are overly complicated Doing Exchange load balancing right is hard and often requires expensive solutions
Requiring session affinity at the load balancer significantly impacts scalability Many hardware load balancing solutions are expensive and thus, are a luxury many of our customers cant afford or dont have the expertise to deploy

Customers deploy based on dedicated server roles


This means that in many cases, hardware is deployed that is unutilized (e.g., DIMM slots and disk slots, etc.) or under-utilized

Too many namespaces are required (especially in site resilient designs)

Exchange: The Evolution


LB L7 LB CAS Ex HT Ex

MBX Ex

SAN

MBX Ex

Exchange: The Evolution


2000/2003
Role differentiation through manual configuration Hardware solutions for reliability ($$$$)

2007
Separate roles for ease of deployment and mgmt. segmentation Support cheaper storage

2010
Separate HA solutions for each role Introduced the DAG Rich management experience using RBAC Leaves resources on the ground in each role

2013
Simplify for scale, balanced utilization, isolation Integrate HA for all roles Simplify network architecture

LB

Ex
SAN

Ex Ex

CAS MBX

HT MBX

L7 LB

Ex

The new server role architecture

Exchange 2013 Architecture Theme


Use Building Blocks to facilitate deployments at all scales from self-hosted small organizations to Office 365 Server role evolution Network layer improvements Versioning and inter-op principles

Benefits
Hardware efficiency Deployment simplicity Low friction cross-version inter-op Failure isolation

Exchange 2013 Server Role Architecture


2 Building Blocks
Client Access Array Evolution of E2010 CAS Array SMTP Front-End Database Availability Group Evolution of E2010 DAG Includes core server protocols

Enterprise Network
Forefront Online Protection for Exchange
Edge Transport Routing and AV/AS

CAS Array
CAS CAS CAS CAS CAS

DAG
MBX MBX MBX MBX MBX

AD

External SMTP servers Mobile phone Web browser Outlook (remote user)

Loosely coupled

Layer 4LB

Functionality Versioning User partitioning Geo affinity

Outlook (local user)

Line of business Phone system application (PBX or VOIP)

Every Server is an Island


EWS protocol MRS proxy protocol SMTP

Protocols, Server Agents

EWS

MRS MRSProxy RPC CA Assistants

Transport

Custom WS

Transport

MRS MRSProxy RPC CA

EWS

Assistants

Business Logic

XSO

Mail Item

Banned E2010

XSO

Mail Item

CTS

Other API

CTS

Other API

Storage

Store

Content index

Store ESE

Content index File system

ESE

File system

Server1 (Vn)

Server2 (Vn+1)

Functional Layering
E2010 Architecture
Hardware LB

E2013 Architecture
CAS2013

L7LB

Load Balancer AuthN, Proxy, Re-direct

CAS, HT, UM

AuthN, Proxy, Re-direct Protocols, API, Biz-logic

MBX2013

Protocols, API, Biz-logic

MBX

Assistants, Store, CI Store, CI

The key to enlightenment


User For a given mailboxs connectivity, the protocol being used is always served by the protocol instance that is local to the active database copy This means that the rendering for clients like OWA occurs on the Mailbox server

CAS

This means that Transport transcoding is occurring on the Mailbox server etc

DAG1

MBX-A

MBX-B

Client Access Protocol Proxying

What is the CAS2013 role?


CAS2013 is comprised of three components:
Client protocols (HTTP, IMAP, POP) SMTP UM Call Router

Thin, stateless (protocol session) servers organized in a load balanced configuration


Provides a unified namespace and authentication for clients Where the logic lives to route a specific protocol request to the correct destination end point Is a domain-joined machine in the corporate forest
Capable of supporting legacy servers with redirect or proxy logic Session affinity NOT required at the load balancer

CAS2013 Client Protocol Architecture


OWA Outlook EAS EAC PowerShell IMAP SMTP Telephony
SIP + RTP

Load Balancer CAS2013


HTTP IIS IIS HTTP Proxy POP IMAP POP IMAP OWA, EAS, EWS, ECP, OAB RPC CA POP IMAP SMTP

Redirect

UM

SMTP Transport UM

MBX2013

RpcProxy RPS MDB MailQ

Outlook Connectivity
What are the benefits?

RPC/HTTP and the death of RPC/TCP

RPCProxy.dll

Does not require a RPC CAS array namespace for the DAG No longer have to worry about The Exchange administrator has made a change that requires you to quit and restart Outlook during mailbox moves or *over events Extremely reliable and stable connectivity model the RPC session is always on the MBX2013 server hosting the active database copy

What changes?
RPC end point for Outlook client is now a GUID (and SMTP suffix) Support for internal and external Outlook Anywhere namespaces

Third-Party MAPI Products


Third-party MAPI products will need to use RPC/HTTP to connect to CAS2013 Exchange 2013 will be the last release that supports a MAPI/CDO download
Third-parties must move to EWS in the future

The MAPI/CDO download will be updated to include support for RPC/HTTP connectivity
Will require third-party application configuration; either by programmatically editing a dynamic MAPI profile or setting registry keys Legacy environments can continue to use RPC/TCP

CAS2013 Client Protocol Connectivity Flow


HTTP

HTTP

Load Balancer
Site Boundary
CAS
IIS HTTP Proxy
HTTP

Load Balancer
Site Boundary
CAS
IIS HTTP Proxy
HTTP HTTP

MBX
Protocol Head DB Local Proxy Request

MBX
Protocol Head DB

MBX
Protocol Head DB

OWA Cross-Site Redirect Request

Cross-Site Proxy Request

Exchange Load Balancing Options


Whos it for?
Generalist IT admin Those with increased network flexibility Functionality Simplicity
+ Simple, fast, no affinity LB + Single, unified namespace + Minimal networking skillset - Per Server Availability + Simple, fast, no affinity LB + Per protocol availability - One namespace per protocol + Per protocol availability + Single, unified namespace - SSL termination @ LB - Requires increase networking skillset

Those who want to maximize server availability

Trade-Offs

A Single Common Namespace Example


Geographical DNS Solution
(somewhere in NA)

Sue

DNS Resolution Round-Robin between # of VIPs

mail.contoso.com

Sue

DNS Resolution via Geo-DNS Round-Robin between # of VIPs

(traveling in APAC)

VIP #1

VIP #2

VIP #3

VIP #4

DAG

DAG

CAS2013 Client Protocol Benefits


Simplifies the network layer
No longer requires session affinity at the load balancer Just get the traffic to CAS2013 and let it handle the affinity CAS2013 can be farther away from MBX2013 and still offer good client performance (because it is a 1:1 proxy) Removes the need for RPC Client Access arrays CAS2013 provides more deployment flexibility; for example, consolidate to fewer sites Can deploy a single world-wide namespace Designed to proxy to multiple Mailbox server versions, up and down level DAGs can be replaced with E2013 at any desired pace

Deployment flexibility

Simplifies upgrade and inter-op

The Mailbox Server Role

The Mailbox Server Role

A server that hosts all the components that process, render and store the data Clients do not connect directly to MBX2013 servers; connectivity is through CAS2013 Evolution of E2010 DAG
Collection of servers that form a HA unit Databases are replicated between servers in a given DAG Servers can be in different locations, for site resiliency Maximum of 16 Mailbox servers 50 database copies / server

MBX1

MBX2

MBX16

The New Store Process


Store is effectively made up of three processes
Replication service Store service process/controller Store worker process

Replication service initiates failovers and is responsible for issuing mount/dismount operations Store service process/controller manages the store worker processes Each database has its own Store worker process

Exchange IOPS Trend


1 0.8 0.6 0.4 0.2

DB IOPS/Mailbox

+99%

reduction!

0
Exchange 2003 Exchange 2007 Exchange 2010 Exchange 2013

Large Mailboxes for the win!


Large Mailbox Size 100GB+
Aggregate Mailbox = Primary Mailbox + Archive Mailbox + Recoverable Items 1-2 years of mail (minimum) 1 Day 1 Month 1 Year 2 Years 150 3300 39000 78000 11 MB 242 MB 2.8 GB 5.6 GB

Increased knowledge worker productivity


Eliminate or reduce PST reliance

4 Years

156000

11.2 GB

Eliminate or reduce third-party archive solutions


Outlook 2013 allows you to control OST size!
Gives more options around mailbox deployments

New Exchange Search Infrastructure


Leverages Search Foundation
Common, actively developed search platform used across Office server products Does consume more memory (1/6 available memory) to improve query performance

Provides
Significantly improved query performance compared to E2010 Significantly improved indexing performance compared to E2010

Feature parity with E2010 search Leverages the same cmdlets like Get-MailboxDatabaseCopyStatus

Exchange Indexing
MBX2013
Transport Transport

Reduced Processing of Body and Attachments


MBX2013
Content Transformation Service Mailbox Store Local Delivery ExSearch CTS Index Node Mailbox Passive

Log

DB

Reliable Event

Read Content

Log

DB

Idx

Idx

Public Folders
Dawn of a New Age
Architectural bet Details
Private logon Public Logon Public logon

Public folders are based on the mailbox architecture

CAS 2013
Hierarchy Mailbox Content Mailbox

MBX2013

MBX2013

MBX2013

Hierarchy is stored in PF mailboxes (one writeable) Content can be broken up and placed in multiple mailboxes The hierarchy folder points to the target content mailbox Uses same HA mechanism as mailboxes No separate replication mechanism Single-master model Similar administrative features to current PFs (setting quota, expiry, etc.) No end-user changes (looks just like todays PFs)

Not all public folder usage scenarios are best served by public folders

Transport Architecture

Transport Components on Client Access


Front-End Transport Service
Handles all inbound and outbound external SMTP traffic for the organization, as well as client endpoint for SMTP traffic
Does not replace the Edge Transport Server Role

Functions as a layer 7 proxy and has full access to protocol conversation Will not queue mail locally and will be completely stateless All outbound traffic appears to come from the CAS2013 Listens on TCP25 and TCP587 (two receive connectors)

Processing Inbound Messages


Externa l Server CAS MBX

1. New SMTP Connection 2. CAS performs envelope filtering 3. CAS determines route to best MBX server 4. Message delivery begins 1. If successful, CAS returns 250 OK acknowledgement to external server 2. If unsuccessful, CAS returns 421 response

Benefits of SMTP Front-End Service


The SMTP Front-End Service provides:
Protocol level filtering performs connection, recipient, sender and protocol filtering Network protection centralized, load balanced egress/ingress point for the organization Mailbox locator avoids unnecessary hops by determining the best MBX2013 to deliver the message Load balanced solution for client/application SMTP submissions

Scales based on number of connections just add more servers

Transport Components on Mailbox


Transport in MBX2013 has been broken down into three components
Transport Service - Stateful and handles SMTP mail flow for the organization and performs content inspection (Was previously referred to as Hub Transport) Mailbox Transport Delivery Service - Receives mail from the Transport service and deliveries to the Mailbox Database Mailbox Transport Submission Service - Takes mail from the Mailbox Databases and submits to the Transport service

Mailbox Transport is stateless and does not have a persistent storage mechanism Mailbox Transport performs content conversion

Transport Components on Mailbox


Responsibilities
Receives all inbound mail to the organization (Proxied through CAS or direct) Submits all outbound mail from the organization (Proxied through CAS or direct) Handles all internal message processing such as Transport Rules, Content Filtering, and Anti-Virus Performs mail flow routing Queue messages Supports SMTP extensibility

Routing Optimizations
Next hop selection is broken down into distinct delivery groups:
Routable DAG Mailbox Delivery Group Connector Source Servers AD Site (Hub Sites; Edge Subscriptions) Server list (DG expansion servers)

Queuing is per delivery group, connector, or mailbox Once message is received at final destination, Transport will deliver the message via SMTP to Mailbox Transport on the server hosting the active database copy Send/Delivery-Agent Connectors can have source servers from multiple DAGs or AD Sites, and can be proxied through CAS

Mail Delivery
CAS / MBX DAG MBX-1
SMTP

MBX-2

Transport
Mailbox Transport
MAPI
SMTP

SMTP

Transport
Mailbox Transport DB1 DB2

DB1

DB2

Service Availability Improvements

Service Availability Improvements


Best copy selection now includes health of services when selecting best copy Failover time reductions Lagged copy enhancements Simpler site resilience strategy Managed Availability

Managed Availability
Monitoring and recovery infrastructure is integrated with Exchanges high availability solution Detects and recovers from problems as they occur and are discovered Is user focused if you cant measure it, you cannot monitor it

Managed Availability
LB CAS-1 DAG
MBX-1

Managed Availability + Retriesstuff breaks and the Experience does not


OWA send OWA failure OWA failure detected OWA restart service OWA restart complete OWA verified as healthy OWA send OWA failure OWA failure detected OWA restart service OWA restart service failed Failover servers databases OWA service restarts OWA verified as healthy Server becomes good failover target (again)

OWA

DB1

DB2

MBX-2

CAS-2

OWA

DB1

DB2

MBX-3 OWA

DB1

DB2

Transport High Availability Improvements


Every message is redundantly persisted before its receipt is acknowledged to the sender Delivered messages are kept redundant in transport similar to active messages Every DAG represents a transport HA boundary and owns its HA implementation
If you have a stretched DAG, you also have transport site resilience

Resubmits due to transport DB loss or MDB *over are fully automatic and do not require any manual involvement

SMTP 250 OK
R1, R2, R3

CAS2013 or MBX2013

Transport HA
250 OK

1. Maintain a copy of the message in the queue database but dont acknowledge the DATA verb 2. Generate a shadow copy on another MBX2013 server in the DAG (remote site preferred) 3. Wait for acknowledgement from the shadow server 4. Send acknowledgement to SMTP client 5. Delete message from queue after SafetyNet threshold has expired

Transport
R1 R1,R3 R2, R3 R2

Transport
Mail.que Mail.que

Transport
Mail.que

Transport
Mail.que

MBX Transport
250 OK

MBX Transport

MBX Transport

MBX Transport

Store
DB 1 DB 2
Log

Store
Site Boundary
DB 1
Log

Store
DB 1
Log

Store
DB 1
Log

MBX1

DB 2

MBX2
250 OK

DB 2

Log

MBX3

DB 2

Log

MBX4

Transport MBX Transport Store


DB 3 DB 4

R3

Transport
Mail.que

Transport
Mail.que

Transport
Mail.que

Mail.que

MBX Transport Store


DB 3
Log

MBX Transport Store


DB 3
Log

MBX Transport Store


DB 3
Log

MBX5

DB 4

MBX6

DB 4

MBX7

DB 4

MBX8

Facilitates deployments at all scales from self-hosted small organizations to Office 365 Provides more flexibility in namespace management

All core Exchange functionality for a given mailbox is served by the MBX2013 server where that mailboxs database is currently activated Simplifies the network layer Transport protection is built-in

All components in a given server upgraded together No need to juggle with CAS <-> MBX versions separately

Utilize CPU core increase, cheaper RAM Utilize capacity effectively Fewer disks/server => simpler server SKUs

Thank you!

You might also like