Tuesday, June 15, 2010

Understanding Client Throttling Policies

Exchange 2010 introduced a new feature called Client Throttling. 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. In daily basis we are troubleshooting exchange performance issue and using Exchange server user monitor {Exmon} tool. And find the some users who are utilizing the server more then other users.

Client throttling helps us the following:

• Users are not intentionally misusing the system
• Avoid any unplanned CAS traffic into our system
• Users of various connectivity methods are sharing resources proportionally.

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.

The four PowerShell cmdlets that we can use to defining policies include:
• New-ThrottlingPolicy
• Remove-ThrottlingPolicy
• Get-ThrottlingPolicy
• Set-ThrottlingPolicy

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}



Exchange ActiveSync, IMAP, POP, Exchange Web Services, OWA & Windows Powershell are the components covered by the default throttling policy. The components are governed by four policy parameters.

• MaxConcurrency: Maximum concurrent connections a user can have against a 2010 server at a given time.
• PercentTimeInCAS: Percentage of a minute that can be spent running CAS code.
• PercentTimeInAD: Percentage of a minute that can be spent running LDAP requests.
• PercentTimeInMailboxRPC: Percentage of a minute that can be spent running mailbox RPC requests.

Creating a New throttling policy:

We can use below Powershell command for creating new throttling:

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

Assigning a new throttling policy to user

We can use the cmdlet Set-Mailbox to assign the new throttling policy.
The command is :

$variable = Get-ThrottlingPolicy ClientThrPolicy; and then hit Enter
Set-Mailbox -Identity dinesh -ThrottlingPolicy $variable; hit Enter

Now we can verify the properties of the user dinesh by using the command below:

Get-Mailbox -Identity dinesh |fl

Removing Throttling policies:

For removing throttling we can use below cmdlet:

Remove-ThrottlingPolicy ClientThrPolicy

No comments:

Post a Comment