Saturday, 05 June 2010 07:41

How to configure Client Throttling in exchange 2010

Written by

Microsoft Exchange Server 2010 uses client throttling policies to manage the performance of the Exchange org. In other words, the throttling concept of Exchange 2010 allows an administrator to control how much activity a user is able to perform against an Exchange 2010 client access server.


 Client throttling helps you to make sure the following:

  • Users are not intentionally miss using the system
  • Avoid any unintentional CAS traffic into our system 

By default, Exchange 2010 uses the default client throttling policies to track the bandwidth used by Microsoft Exchange users. You can either modify or create client throttling policy as per your need.


In this post we are going to discuss about how to view, modify an existing client throttling policy. We will also cover how can we create and apply a new throttling policy as per our requirement.

Before moving into the dept of it, let us understand few things about client throttling.

The throttling framework limits the users based on the following parameters:

  • No. of open concurrent connections
  • Time spent in connective to CAS
  • Time spent performing AD lookups and calls.
  • Time spent performing mailbox RPC calls

Below flow chart shows how throttling works:



You might have noticed the work budget in the above flow chart, budget is nothing but the amount of activity a user is allowed to perform for 1 minute. After 1 minute the budget gets reset, and this information stored in memory.

Now let us discuss the commands used to work with the client throttling, we use the below commands to work with throttling.

  1. New-ThrottlingPolicy (Creates new policy)
  2. Set-ThrottlingPolicy (apply a policy)
  3. Get-ThrottlingPolicy (displays/reads the policy)
  4. Remove-ThrottlingPolicy (Delete the policy)

Read the settings of an existing policy(default policy)

Execute the below command to read the settings of the exiting policy, By default the client throttling policy has its IsDefault parameter set to true

Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}

the output will look like the below picture


Each parameter has its meaning, few are listed below:

  • MaxConcurrency - how many concurrent connection a specific user can have against and exchange server
  • PercentTimeInCAS - what percentage of a minute can be spent running CAS server code
  • PercentTimeInAD - what percentage of a minute can be spent running LDAP request
  • PercentTimeInMailboxRPC - what percentage of a minute can be spent running mailbox RPC request.

Here in the default policy the OWAMaxConcurrency is set to 5.

Creating a New throttling policy

We can use the command New-ThrottlingPolicy to create new policy. In the below e.g. we are going to create a policy in which the OWAMaxConcurrency will be set to 2 and turn off the OWAPercentTimeInCAS  

New-ThrottlingPolicy -Name ClientThrPolicy -OWAMaxConcurrency 80 -OWAPercentTimeInCAS $null;

below picture shows the policy which we have created now. 


The policy is now created, now let us look at how will we apply it.

Assigning a new throttling policy to user

We can use the cmdlet Set-Mailbox to assign the new throttling policy.

The command will look like

$variable = Get-ThrottlingPolicy ClientThrPolicy; and then hit Enter

Set-Mailbox -Identity praveenb -ThrottlingPolicy $variable; hit Enter




Now we can verify the properties of the user praveenb by using the command below,

Get-Mailbox -Identity praveenb |fl

Removing Throttling policies

You can only remove the polcies which are not non-default and currently not been associated with any accounts. For doing it you can use the command Remove-ThrottlingPolicy command.

Remove-ThrottlingPolicy ClientThrPolicy

Typical server busy message is shown below(for this I have set the OWAPercentTimeInAD parameter to 1, hence the client can only stay with AD for 1% of a minute).



Client throttling is very useful in most of the situation, but you need to be extra careful while implementing the same. The client throttling can have negative impact if you are using a BES(Blackberry enterprise server) server, so it is always better to assign a new policy to the besadmin account to have uninterrupted Blackberry operation.

Hope this helps you to understand what is client throttling policy in exchange 2010.


theme by reviewshub