skip to Main Content

Mail migration to Office 365 | Optimizing the Mail Migration throughput | Part 3/4

In this article, we review the recommendation and “best practices” that can help us to improve and optimize the results of the “moving our mail infrastructure to the cloud” project.
Generally speaking, there are two factors that we can measure:

  1. The mail migration throughput – the time it takes to transfer a specific amount of data to the cloud (Exchange Online).
  2. The amount of time required for completion of the mail migration.
    For example, in case that the management instructs us to migrate to all the organization mail infrastructure to the cloud in a period of no more than 10 days, can we accomplish this task?

Mail migration to Office 365 | Optimizing the Mail Migration throughput | The article series

The article series includes the following articles:

In the previous article (Mail migration to Office 365| Factors that impact Mail Migration throughput | Part 2/4) we have to review the factors that are impacting the performance and the result’s (data transfer rate) of the mail migration.

In this article, we review some of these factors and the options that are available to us for improving and optimize the results of the mail migration throughput or the time that we will need to accomplish the mail migration project.

Optimizing the mail migration throughputs-Optimizing

Factors that impact mail migration throughput

In the following section, we will review some of the factors that impact the throughputs (transfer rate) of the mail migration and the options that are available for use to fine-tune or optimize these factors to improve the results of the mail migration throughputs.

Factor the impact - mail migration performance

Network infrastructure

1. Communication line bandwidth

1.1 The “speed” (The bandwidth) of the organizational communication line
To be able to measure the performance of our communication line, we can use a web tool that is provided by the ISP or use public tools such as speedtest

Using the results, we can get a better understanding of the available resources that we can use such as the Upload rate (when we are moving an organization mailbox to the cloud, we use the “upload channel), the download rate and so on.

Based on the results that we get, we can decide if there is a need to Increase the bandwidth of the existing communication line.

In case that we want to get more detailed information about the load and performance of the communication line during the day, week, etc.
Most of the ISP can provide this information (for free most of the time), by accessing a web interface that will display daily, weekly and monthly results of the communication line performance.
Personally, I like to use a product named: PRTG that enables us to get a very clear and graphic view of the network performance.

1.2 Working hours and weekends

Office 365 native mail migration tools enable us to schedule the mail migration process. In case we want to avoid a scenario, in which the mail migration will “load” the organization communication line (and downgrade the network performance -the communication lines available bandwidth) or in case that we want to use all the available communication line bandwidth, we can consider scheduling the mail migration process to “non-working hours” or implementing the mail migration on the weekends.

1.3. Network devises performance and tuning

Firewall or Proxy load and performance
To be able to verify that the existing network device such as Firewall or Proxy, are not the cause for the “Bottleneck” or slowing the performance of the mail migration, the best practice is to implement a Pilot of mailbox migration and monitor the load performance of the Firewall\Proxy to verify that the server utilization is not high or causing the Firewall\Proxy to “reach their end limit.

Another important factor that can impact the performance of the mail migration is configuration settings that restrict the maximum value of the “allowed sessions.”

Firewall\Proxy | passable restriction of the maximum allowed sessions
Check the Firewall\Proxy server to verify that the migration process session is not blocked or restricted by the Firewall\Proxy policy.

For example, you can read the following article that describes and issue that exists when using TMG server and performing a mail migration: Office 365 Move Mailbox fails with transient exception

1.4. Geographic location of the organization’s network

One of the factors that affect the mail migration throughput to Exchange Online is the “physical distance” between the organization network and the Office 365 data centers.

Technically, is not easy to measure or assess the quality of the communication path from point A (organization network) to the destination (Office 365 data center) but, the good news is that Microsoft provides a helpful Web-based tool named: Office 365 Network Analysis Tool, that can help us to get a detailed information about the performance of the communication channel between a particular organization network and the Office 365 data center that hosts the organization mailbox.

The Office 365 Network Analysis Tool is a Java-based tool and implemented as a web application.
To be able to get the required results we will need to choose the suitable URL for the Office 365 data center that hosts the organization mailbox, specify our Public domain name that registered with Office 365 and the tools will start to collect information and on the next step, display detailed results.

To be able to use the Office 365 Network Analysis Tool, we will first need to download and install the java client.
In case that try to use the tool and get the following error “application blocked by a security setting“, go to the control panel, look for the icon named: Java, and in the security tab change the default settings to: medium

Office 365 Network Analysis Tool -Java settings --001

In the first screen, we will need to provide the domain name that hosted in Office 365.

Office 365 Network Analysis Tool -002
When the scanning process is completed, we can browse by selecting the different tabs to get a detailed information about a specific section of the Findings

Office 365 Network Analysis Tool -Java settings --002
When choosing the speed tab we can see a graph that include information about the download and the upload speed.

Office 365 Network Analysis Tool -Java settings --003
When choosing the capacity tab we can get more details about the download and upload performance.

Office 365 Network Analysis Tool -Java settings --004

1.5. Using a QOS (quality of service) product

Most of the time, the important question is not -“what is the bandwidth of the communication line”? but instead, “what is the utilization of the communication line or what is the “free percentage’” of the communication line?.

The process of mail migration considers as demanding because most of the time we “transfer” a significant amount of data from the organization’s network to the cloud.

In case that your organization uses QOS product, the best practice is to allocate a predefined percentage of the network bandwidth for the task of the mail migration or prioritize communication that relates to the mail migration.

1.6. Plan for the required communication line bandwidth

When relating to the concept of “Plan for the required communication line bandwidth”, one major phase is the bandwidth that is required for the mail migration (the mailbox data that will be transferred from the Exchange on-Premises server to the cloud), and additionally, we will need to plan ahead for the required communication line bandwidth that allocated to the communication between the organization users who access there Exchange Online mailboxes.

To be able to estimate the required network bandwidth is recommended to use tools such as: Exchange Client Network Bandwidth Calculator

The Exchange Client Network Bandwidth Calculator based on excel shit.
On the first screen, we need to provide some general information about our mail infrastructure.

Exchange Client Network Bandwidth Calculator-001

The second tab will help us to display a clear picture of the requirements that reacted for the Network bandwidth for each of the different types of mail clients.

Exchange Client Network Bandwidth Calculator-002

Exchange On-Premise infrastructure

1. Data source (Exchange Server) – Performance

The migration process is going to put a heavy load on the Exchange on-Premises servers who host the user’s mailboxes or in case that we use hybrid configuration of the Exchange on-Premises hybrid server.

Before we start the migration process, the best practice is to ensure that the existing Exchange on-Premises servers have the require resources (RAM, CPU, Storage, etc.) that will enable this server to perform in an optimal way.

Q: How can I know if the migration process is overwhelming the Exchange on-Premises server?
A: Start low as 10 and then increase this number while monitoring the data source performance to avoid end-user access issues.

In my opinion, the option of “upgrading existing Exchange on-Premises server hardware” is most relevant in case that the Exchange on-Premises server is based on a virtual machine because, in this scenario, the hardware upgrade process is a “one-click procedure.”

Hybrid migration | Server performance

In case that you use a Hybrid server that will use as a “Router” for the mail migration process, the best practice is to use powerful server-class physical machines instead of virtual machines for the Exchange 2013 and 2010 hybrid servers.

2. Tuning the MRSProxy resource allocation

The MRSProxy is the Exchange server component that is responsible for implementing a mailbox move (in our scenario mailbox move from Exchange on-Premises server to Exchange Online).

The tasks that are executed by the MRSProxy described as connections.
The default value for the maximum number of connections is 100 but, we have the ability to “tune” these values based on our needs.

Scenario 1: Exchange Server overwhelmed by the migration load
in case that we find that the migration process impairs the performance of the Exchange on-Premises server, we can reduce the maximum number of connections that the MRSProxy will be able to use.

Scenario 2: in case that the existing Exchange on-Premises server has sufficient hardware resources, and we want to expand more resources to the MRSProxy, we can increase the default number of connections that will be available for the MRSProxy and by doing so, an optimizer that mailbox migration transfer rate.

The PowerShell command that we can use is:

Set-WebServicesVirtualDirectory -Identity "EWS (Default Web Site)" -MRSMaxConnections <number between 0 and unlimited; default is 100>

3. Exchange on-Premises server throttling policy

In case that you have an implementation of Exchange on-Premises server throttling policy, that could slow or “downgrade” the performance of the mail migration process, consider stopping or disabling these settings while the mail migration is running.

You can read additional information in the following article: Throttling Policy Associations in Exchange 2010 SP1

Using Hybrid migration if passable

Using the option of Hybrid migration decreases the amount of data related to mail migration.

In the previous article (Mail migration to Office 365| Factors that impact Mail Migration throughput | Part 2/4), we describe the difference that exists between Hybrid migration versus stage migration and Cutover migration regarding the amount of data that is involved in the mail migration process.

Just a short recap: when using the option of Hybrid migration, we don’t have to configure a new Outlook mail profile, but instead, we can use the same Outlook mail profile and the existing OST file. By doing so, we are avoiding the need to “download back” of the mailbox content to the user desktop.

Note – I’m not familiar with each of the third party mail migration tools that exist and if there are third party mail migration tools that “know,” how to use the local Outlook OST instead of downloading all the mailbox data at a new OST file.

Using the option of Hybrid migration minimum is based on the minimum requirements of Exchange 2010 SP3 on-Premises server. In a scenario in which the organization mail infrastructure based on older Exchange on-Premises server such as 2003, 2007, I would suggest you consider the option of installing a “temporary Exchange 2010 on-Premises server” for the mail migration project.

The Interesting fact is that you don’t even need to pay for a license. Microsoft enables an organization that wants to install Exchange 2010 on-Premises server only as a hybrid server (without using the mailbox rule option) to get a free license for this server.

Attached a link which leads you to the required license enrolment process:
Self-service Hybrid Edition product key retrieval for customers

Exchange multiple site infrastructure

Mid and large organization will usually have more than one Exchange site.
In case that your organization uses more than one Exchange site (Multiple Exchange sites) and in the event that each of these Exchange sites has a “public presence” that enables to external hosts to connect the Exchange on-Premises server who “represent” the Exchange site, we can significantly improve the mail migration throughputs.

When relating to the subject of mail migration to Office 365 and multiple mailbox migrations (concurrent mailbox moves), we can use the famous saying “the more, the merrier.”

Note – is assumption is correct provided that the mail\communication line infrastructure can provide the required resources.

For example, in our scenario, we need to migrate 300 hundred mailboxes from the organization Exchange on-Premises servers to the cloud.
We have a very narrow time window for completing this task and, we would like to shorten or to expedite the process of the mail migration.

In the following diagram, we can see that by using the concept of implementing a mail migration from a multiple Exchange site at the same time (parallel), we can multiply or triangles the amount of mailboxes that we can migrate at the same time.

Performing mail migration by using multiple Exchange sites-001

Multiple Exchange site’s infrastructure and AutoDiscover

In a scenario of Multiple Exchange site’s infrastructures, we can rely on the AutoDiscover service for implementing a mail migration from a multiple Exchange sites at the same time, based on the location of the user mailbox (the Exchange site and the Exchange server which hosts the user mailbox).
The pre-requirements is that each of the Exchange sites will have a public presence that includes “Public name” (URL) that can access from a public network.

To be able to understand better this process let’s use the following example:
An organization named: o365info have two Exchange sites.
One site located in New York, and the additional site based in Los Angles.

  • The Exchange mail server in the New York site uses the following public name:
  • The Exchange mail server in the Los Angles site uses the following public name:

We are using the option of Hybrid migration, and we are creating a new migration batch based on a CSV file that includes a list of users whom we want to migrate to the cloud (Exchange Online). The CSV users list includes a “mixture” of users from the booth of the organization site.

In our example: User1 and User2 mailboxes are located in the New York site and User3, and User4 mailboxes are located in the Los Angeles site.

In our scenario, the AutoDiscover record of, is pointing to the additional Exchange server which not located on the company site.
When we start the migration batch, Exchange Online uses the AutoDiscover service for getting the required information about the mail infrastructure, etc.

In the following diagram, we can see that Exchange Online asks about the Exchange server (The CAS server) that can provide information and access to the mailbox data of
The origination Exchange server provides an “answer” by redirecting the Exchange Online to additional server:
In the second step, Exchange Online will try to connect to the and “ask for a permission” to copy the mailbox data of User1.

Performing mail migration by using multiple Exchange sites-002

Exchange Online creates a new migration endpoint using the connection settings that successfully discovered or that you provided manually. We recommend that you create migration endpoints whose connection settings were automatically discovered rather than creating endpoints whose settings you entered manually. This is because the Autodiscover service will be used to connect to each user mailbox during the migration. If manual settings used, Exchange Online won’t use the Autodiscover service, but will connect to a specific source server using the connection settings you manually entered. If you use manual settings and have multiple on-premises Exchange servers, you may need to create different migration endpoints that correspond to each server.

Office 365\Exchange Online factors

1. Office 365\Exchange Online Throttling policy

The Throttling policy that relates to mail migration described as: Migration-service throttling. This policy was designed to limit the maximum migration concurrency.

The good news is that we can easily increase the default value and by doing so, Increase the number of mailboxes that can migrated.

In my option, the default value of: “maximum 20 mailboxes at the same time” was not created to protect the Exchange Online server performance because theoretically, there is no limitation to the resources that allocated to the Exchange Online server.
The attention was to protect the Exchange on-Premises server from a scenario of “overwhelming”. In case that we put too much load on the Exchange on-Premises server, the load of the migration process could impact other Exchange on-Premises server services.

So, in case that you are considered to increase the value of the Migration-service throttling, please verify that your Exchange on-Premises server, have the required resources for supporting the amount of mailboxes that migrated to Exchange Online.

After you create a migration batch, you can use the following Windows PowerShell command to increase this to a maximum of 100.

Set-MigrationEndPoint <Identity> -MaxConcurrentMigrations <value between 1 and 100>

2. The maximum number of concurrent moves for a Migration Endpoints

There is a limit of 100 concurrent migrations for each type of migration endpoint. For example, your organization could have five Outlook Anywhere migration endpoints and each endpoint could be configured for 20 maximum concurrent migrations. Or you could have two IMAP migration endpoints, with each end point configured to support 50 maximum concurrent migrations.

[Data source:Create Migration Endpoints ]

In the following screenshot, you can see that when we try to use a value bigger than 100

maximum number of concurrent mailbox migration-001

The result is the following error:

maximum number of concurrent mailbox migration-002

Just a friendly advice: the fact that Office 365 enables us to “extend” the value of a concurrent mailbox move doesn’t mean that you should automatically use this option.

A high value of parallel mailbox moves can overload your network bandwidth, and you Exchange on-Premises servers.

The Number of mailboxes to migrate field simultaneously specifies the number of connections to your on-premises mail server used during migration. The more connections you have to your on-premises mail server, the more mailboxes you can migrate at one time. While this reduces the amount of time it takes to migrate mailboxes, these additional connections can consume your Internet bandwidth, negatively affecting network performance and users’ ability to access Internet resources.

The o365info Team

The o365info Team

This article was written by our team of experienced IT architects, consultants, and engineers.

This Post Has One Comment

  1. Hi


    I am confused.  In regard to having multiple sites and wanting to do mailbox migrations….

    Are “” and “” the EWS URL of those servers published externally on 443?


    Are they actual host name of these exchange servers matching their AD name published externally on 443?

Leave a Reply

Your email address will not be published. Required fields are marked *