Microsoft introduced a new protocol in Exchange Server 2013 SP1 called MapiHttp (codename Alchemy). This is an Office 365 development to replace the traditional RPC/HTTPS protocol used in Outlook Anywhere.
Outlook Anywhere was developed in the Exchange 2003 timeframe to use Outlook 2003 over the Internet. Outlook is using RPC to communicate with the Exchange server, and the RPC traffic is encapsulated in HTTPS packets. To achieve this an RPC proxy is used. The ‘problem’ here is that this is not too stable, especially not when you have a flaky Internet connection. RPC is never designed to work with network connections like this. Besides this, the RPC proxy is a Windows components and thus a responsibility of the Windows team at Microsoft and not the Exchange team. So if problems arise, the Windows team has to solve this and the only thing the Exchange team can do is wait. Not a desirable solution.
The new MapiHttp protocol is using HTTPS traffic natively, thus bypassing the RPC proxy at shown in following figure:
The advantages are obvious. HTTP traffic can deal with less than good network connection and Microsoft has quite some experience in running HTTP in Exchange Server, think about OWA, EWS or ActiveSync. The can all work well across the Internet.
MapiHttp is only available in Exchange Server 2013 SP1, but on the client side you need Outlook 2013 SP1. At this moment it is unknown if MapiHttp will be made available for Outlook 2010. I’ve heard some rumors on the Internet it will be made available but that’s only a rumor. Personally I don’t exepct it to be made available for Outlook 2007 since this is quite old (version n-2).
MapiHttp is enabled on a global level in Exchange. To enable it you have to run the following command in EMS:
Set-OrganizationConfig -MapiHttpEnabled $true
Please note that it can take up to 3 hours for the changes to take effect.
On the individual Exchange Servers a new Virtual Directory is introduced, the Mapi Virtual Directory. This can be configured using the following command in Exchange 2013 SP1:
Set-MAPIVirtualDirectory –Server AMS-EXCH01 –InternalURL https://webmail.contoso.com/mapi -ExternalURL https://webmail.contoso.com/mapi -IISAuthenticationMethods Ntlm, OAuth, Negotiate
When you enable this your Outlook client will pick it up at some point in time and the Outlook profile will be reconfigured. Since it is a drastic reconfiguration the Outlook client needs to be restarted and users will see the old The Microsoft Exchange administrator has made a change that requires you quit and restart Outlook warning message:
When you check the Outlook connection after restarting you’ll see the change. A Proxy server is no longer used and the servername is replaced to a URL pointing directly to the Mailbox:
Since Outlook Anywhere is no longer used there’s no proxy server either. When you check the Outlook profile you’ll notice that the Connection tab in the profile is removed:
You can check the server configuration by retrieving the Autodiscover manifest. You can do this using the Test E-mail Autoconfiguration option in Outlook. You’ll see the MAPI HTTP information returned from the Exchange server at the top of the manifest. The ‘old’ information is still returned as well for older Outlook clients that are still running Outlook Anywhere.
MapiHttp is a new protocol in Exchange 2013 SP1 that’s used by Outlook 2013 SP1. It is the successor of Outlook Anywhere and the first step in ending RPC traffic. HTTP traffic can much better deal with suboptimal network connections like we face on the Internet.
It is new and barely tested in on-premises Exchange deployments so at this moment there’s no real information on the stability or issues. Issues have been reported so far in coexistence scenario’s with Exchange 2010 or Exchange 2007, or when legacy Public Folders need to be accessed. Another thing that’s unknown is the implication on network bandwidth.
The only thing you can do now is test this new solution and see how it works. My personal experience is that it works much faster and more stable than Outlook anywhere but I don’t have a coexistence environment nor do I have legacy Public Folders.
2 thoughts on “MapiHttp in Exchange 2013 SP1”