Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Microsoft Exchange Technology Overview


Published on

A primer that I put together for my Network Engineering team to help them understand Exchange. This goes into detail on how MAPI, and other exchange stack protocols work across the network.

Published in: Technology
  • Be the first to comment

Microsoft Exchange Technology Overview

  1. 1. Exchange Technology Overview Mike Pruett Manager – Information Technology
  2. 2.  System Overview Functional Architecture RPC Primer Client-Side Communications DNS Requirements Domain Controllers MAPI Use Case #1 – Server Information Discovery Use Case #2 – Login to a MailboxAgenda
  3. 3.  Exchange servers provide a rich set of interfaces with which clients can interoperate. Each protocol exposes a set of functionality that pertains to specific classes of operation. These classes (or core functions) are described as such: ◦ Message Processing System ◦ Information StoreSystem Overview
  4. 4. Functional Architecture
  5. 5.  RPC or Remote Procedure Call is an Inter-process communication technology that allows a computer program to cause a subroutine or procedure to execute in another address space (commonly on another computer/server) without the programmer explicitly coding the details for this remote interaction. That is, the programmer would write essentially the same code whether the subroutine is local to the workstation, or remote. RPC is used by the Message Processing System to support transmitting data between clients & servers. RPC is also utilized by the Information Store to support data storage on remote storage systems. In order to establish native Exchange Server to Outlook Client, or Exchange Server to Exchange Server communications, RPC protocols must be used.RPC Primer
  6. 6. Client-Side Communications
  7. 7.  The Message Processing System utilizes RCP to communicate to all Outlook clients. In the absence of RPC, the MPS can default to standards-based protocols such as SMTP, POP3, IMAP4 for client communications. (Non-Outlook) Clients use DNS to resolve Exchange Server host-names. (Same is true for reverse) Domain Controller’s provide Directory Services for Clients to resolve Global Address list requests. Exchange Servers depend on Domain Controller’s for authentication services & security policies.Client-Side Communications
  8. 8.  DNS or Domain Naming System services are required by the MPS for routing. An Exchange Server needs to have an IP Address that is resolvable from the Inside (internal) network. In order to receive external email, the Exchange Server needs to have an IP Address that is resolvable from the internet. When a Internal Server has a IP address that is both resolvable from inside & external, its called Split-Brain DNS. DNS is used by the client to resolve Exchange Server host- names. Special type of DNS Records must exist to support email traffic. Each Server must have an A record, and a MX record. MX DNS records are configured to map the mail domain to the public IP address corresponding to the externally available Exchange server. The MX records are propagated to the extended private or public networks so all intended clients can resolve the domain name.DNS Requirements
  9. 9.  Domain Controllers provide security authentication for member servers, and workstations. Exchange uses DC’s for access accounting for all clients by way of LDAP/Kerberos authentication. Domain Controllers provide Global Catalog services which store Meta-Data about all configured users within that Domain. This Global Catalog is often called Active Directory, as it not only maintains Users Login information, but also other Meta-Data about the user. Exchange utilizes the Global Catalog data to store Mail-Related objects for all accounts whom have been “Mail-Enabled”. The use of GC’s in an Exchange Environment is critical. If the Exchange Server is unable to communicate with a Domain Controller, the MPS will fail.Domain Controllers
  10. 10.  Client applications (including Outlook) utilize MAPI or Messaging Application Programming Interface to interface with Exchange Servers. Any application can utilize the MAPI subsystem to become mail-enabled or mail-aware. A prime example is Internet Explorer. The MAPI/RPC combo is used heavily by Outlook to process items such as Calendar Events, Tasks, Meeting Reminders, and Rich-Type Mail object rendering. Due to its nature as a interface for other applications, MAPI is started as a separate service to other Outlook functions. MAPI has been around since 1987, and has been used as the primary subsystem for all Microsoft Messaging Clients since CC’ mail. Outlook clients can receive errors about “communicating to the exchange server” because of a MAPI service problem. (Even though the Exchange Server is fine.) CDO.DLL is a integral Client Library that the MAPI Service requires. If the version of the clients MAPI is older than the version on the Exchange server, the clients state is severely degraded. (Clients CDO.DLL should be the same version or higher than the Exchange CDO.DLL version.)MAPI
  11. 11. Server Information Discovery
  12. 12. 1. Client contacts LDAP server (Directory Service) for Service Connection Point (SCP) objects via LDAP.2. LDAP server returns SCP objects, which reference an Autodiscover server URI or another LDAP server. If the SCP returns another LDAP server, then repeat step with the new LDAP server until URI are returned for Autodiscover server.3. Client parses the URI and adds the appropriate Autodiscover server URI’s to the list of possible Autodiscover server URI’s.4. Client executes a DNS search for SRV records that match the returned Autodiscover server URI.5. If the DNS server responds with any SRV records, then the corresponding Autodiscover server URI records are added to the list of possible Autodiscover server URI’s on the client.6. Client uses the Autodiscover server URI to contact the Autodiscover server via HTTP to query server information.Server Information Discovery
  13. 13. Logon to a Mailbox
  14. 14.  1. Client uses the discovery process from the previous use case to identify the appropriate server. 2. The client connects to the Exchange server via RPC and issues a EcDoConnectEx (or EcDoConnect) request, along with the client’s version information. 3. The Exchange server accepts the connection request and responds with the server version and other connection information. 4. The client issues a RopLogon Remote Operation (ROP) request to attempt to log on to the mailbox DN. 5. Upon successful logon, the Exchange server returns a list of special Folder IDs depending on the logon action requested by the client.Logon to a Mailbox
  15. 15.  Exchange Server Protocols System Overview us/library/cc463895(v=EXCHG.80).aspx MAPI – Wikipedia RPC – Wikipedia re_call KB171440 – CDO Libraries