Descripción de las directivas de limitación de peticiones de clientes

Se aplica a: Exchange Server 2010

Última modificación del tema: 2009-11-17

Microsoft Exchange Server 2010 usa directivas de limitación de peticiones clientes para administrar el rendimiento de su organización de Exchange. Para hacerlo, Exchange realiza un seguimiento de los recursos que consume cada usuario e impone límites de ancho de banda de la conexión, si es necesario.

Entre otras cosas, la limitación del cliente le ayuda a asegurarse de que:

  • Los usuarios no agoten el sistema de forma voluntaria.
  • Los usuarios no agoten el sistema de forma involuntaria.
  • Los usuarios de diversos métodos de conectividad compartan los recursos de forma proporcional.

Contenido

Directivas predeterminadas y no predeterminadas

Descripción de parámetros de directivas

Parámetros y comandos del Shell de administración de Exchange

Tareas de administración de directivas de limitación comunes

Contadores de rendimiento de limitación

Directivas predeterminadas y no predeterminadas

Aunque hay una directiva de limitación de cliente predeterminada, eso, generalmente, es suficiente para administrar la carga colocada en su sistema de Exchange, puede personalizar la directiva predeterminada de acuerdo con las necesidades de su organización.

Si está alojando varios arrendatarios en su organización de Exchange, puede definir la carga aceptable para cada usuario de un arrendatario. De manera similar, si se encuentra en una organización local, puede definir una carga aceptable de acuerdo con cada usuario. Mediante las directivas, Exchange evalúa de qué manera cada usuario usa el sistema y garantiza que la carga por usuario resultante entre en los límites aceptables tal como lo define la directiva del usuario. El sistema de limitación de cliente realiza el seguimiento del uso del sistema basándose en el usuario y usa la directiva de limitación asociada con ese usuario para determinar si lo limita o no.

Cuando se crea una organización de Exchange, se crea automáticamente una directiva de limitación predeterminada que rige, de manera implícita, a todos los usuarios dentro de esa organización.

En las instalaciones de Exchange 2010 Enterprise, existe una directiva de limitación predeterminada única que se denomina Primera organización. En las instalaciones del servicio de Outlook Live, cada arrendatario tiene su propia directiva de limitación predeterminada.

Descripción de parámetros de directivas

Las configuraciones de directivas de limitación se administran a través del Shell de administración de Exchange con los cmdlets Get-ThrottlingPolicy, Set-ThrottlingPolicy, New-ThrottlingPolicy y Remove-ThrottlingPolicy.

La carga aceptable de una directiva de limitación está definida por los valores de parámetros del cmdlet de esa directiva de limitación. Los tipos de componentes cubiertos por las directivas de limitación son los siguientes:

  • Microsoft Exchange ActiveSync 
  • Servicios web de Exchange
  • IMAP
  • aplicación web de Outlook
  • POP
  • Windows PowerShell

Todos los tipos de componentes tiene parámetros de directivas que funcionan de manera similar salvo el tipo de componente Windows PowerShell.

Los tipos de componentes comunes están regidos por cuatro parámetros de directivas: <Component Acronym>MaxConcurrency, <Component Acronym>PercentTimeInAD, <Component Acronym>PercentTimeInCAS y -<Component Acronym>PercentTimeInMailboxRPC. Los nombres de los parámetros están precedidos por el acrónimo de tipo de componente. La siguiente tabla muestra los acrónimos de tipo de componente que se usan para los parámetros en los cmdlets de las directivas de limitación.

Acrónimos de tipo de componente usados en los cmdlets de las directivas de limitación

Acrónimo de componente Descripción Ejemplo

EAS

Exchange ActiveSync

En el parámetro EASPercentTimeInCAS, el acrónimo de componente EAS representa el componente de Exchange ActiveSync.

EWS

Servicios web de Exchange

En el parámetro EWSPercentTimeInCAS, el acrónimo de componente EWS representa el componente de servicios web de Exchange.

OWA

aplicación web de Outlook

En el parámetro OWAPercentTimeInCAS, el acrónimo de componente OWA representa el componente de aplicación web de Outlook.

IMAP

IMAP4

En el parámetro IMAPPercentTimeInCAS, el acrónimo de componente IMAP representa el componente de IMAP4.

POP

POP3

En el parámetro POPPercentTimeInCAS, el acrónimo de componente POP representa el componente de POP3.

Nota

Los usuarios de mensajería unificada se consideran usuarios de servicios web de Exchange y sus conexiones al servidor de Exchange quedan limitados por los parámetros de los servicios web de Exchange, tales como EWSMaxConcurrency, EWSPercentTimeInAD, EWSPercentTimeInCAS y EWSPercentTimeInMailboxRPC.

Volver al principio

MaxConcurrency

El valor para un parámetro de directiva MaxConcurrency indica cuántas conexiones simultáneas puede tener un usuario especificado respecto a un servidor de Exchange al mismo tiempo. Se conserva una conexión desde el momento en que se recibe una solicitud hasta que se envía una respuesta en su totalidad al solicitante. Si los usuarios intentan efectuar más solicitudes simultáneas de las que permite su directiva, el nuevo intento de conexión falla. Sin embargo, las conexiones existentes permanecen válidas. <Component Acronym>MaxConcurrency tiene un rango válido de 0 a 100 inclusive. Para indicar que <Component Acronym>MaxConcurrency debe quedar sin límite, este valor se debe establecer en $null.

Importante

No se deben establecer parámetros de directivas de limitación en $null salvo que haya una necesidad comercial para hacerlo. Los usuarios sin limitación no tienen restricciones en cuanto a su capacidad de colocar gran carga en el servidor de manera involuntaria o por accidente.

PercentTimeInCAS, PercentTimeInAD y PercentTimeInMailboxRPC

El valor para un parámetro de directivas de PercentTimeInCAS, PercentTimeInAD o PercentTimeInMailboxRPC indica qué porcentaje de un minuto se puede usar:

  • Ejecución del código de servidor de acceso de cliente (<Component Acronym>PercentTimeInCAS)
  • Ejecución de las solicitudes LDAP (<Component Acronym>PercentTimeInAD)
  • Ejecución de las solicitudes RPC de buzones (<Component Acronym>PercentTimeInMailboxRPC)

Un valor de 100 indica que por cada ventana de un minuto, el proceso puede emplear 60 segundos de ese tiempo consumiendo el recurso en cuestión. Aunque parezca que un proceso nunca encontrará una limitación con un valor establecido en 100, se debe tener en cuenta el efecto de solicitudes simultáneas. Si un proceso realiza dos solicitudes que consumen 60 segundos por cada código que se ejecute en el servidor de acceso de cliente, el proceso usará, efectivamente, 120 segundos en una ventana de 60 segundos; esto representa un valor de <Component Acronym>PercentTimeInCAS de 200 por ciento.

Para indicar que PercentTimeInCAS, PercentTimeInADPercentTimeInMailboxRPC debe quedar sin límite, este valor se debe establecer en $null.

Importante

No se deben establecer parámetros de directivas de limitación en $null salvo que haya una necesidad comercial para hacerlo. Los usuarios no tienen restricciones en cuanto a su capacidad de colocar gran carga en el servidor de manera involuntaria o por accidente.

Es importante destacar que <Component Acronym>PercentTimeInCAS es un superconjunto superpuesto de <Component Acronym>PercentTimeInAD y <Component Acronym>PercentTimeInMailboxRPC. Esto significa que el consumo del tiempo de procesamiento del servidor de acceso de cliente siempre será mayor que los consumos en <Component Acronym>PercentTimeInAD y <Component Acronym>PercentTimeInMailboxRPC. Esto sucede porque el componente de Exchange, para realizar una llamada Active Directory o RPC, ya debe ejecutar el código del servidor de acceso de cliente. Además, el consumo en el tiempo de procesamiento para <Component Acronym>PercentTimeInCAS no se detiene mientras las llamadas LDAP o RPC se realizan. Aunque la solicitud puede estar esperando de manera sincrónica una respuesta de Active Directory o del almacenamiento de Exchange, el proceso aún consume un subproceso en el servidor y, por lo tanto, debe continuar teniendo que pagar por ese uso. Como resultado, el valor de <Component Acronym>PercentTimeInCAS debe estar establecido en un valor mayor que <Component Acronym>PercentTimeInAD y*<Component Acronym>PercentTimeInMailboxRPC*.

Volver al principio

Parámetros y comandos del Shell de administración de Exchange

En esta sección se explican los siguientes parámetros de Windows PowerShell:

  • PowerShellMaxConcurrency
  • PowerShellMaxCmdlets
  • PowerShellMaxCmdletsTimePeriod
  • PowerShellMaxCmdletQueueDepth

PowerShellMaxConcurrency

En el contexto de Shell remoto, el parámetro PowerShellMaxConcurrency define el número máximo de sesiones de Shell remoto que un usuario de Shell remoto puede tener abiertas al mismo tiempo. En el contexto de los servicios web, el parámetro PowerShellMaxConcurrency especifica el número de cmdlets simultáneos que un usuario puede ejecutar al mismo tiempo. El valor de este parámetro no se relaciona necesariamente con el número de exploradores abiertos por el usuario.

PowerShellMaxCmdlets

El parámetro PowerShellMaxCmdlets establece el número de cmdlets que se pueden ejecutar por periodo de tiempo sin que sean limitados. Este parámetro depende directamente del valor definido por el parámetro PowerShellMaxCmdletsTimePeriod. Ambos valores se deben establecer al mismo tiempo.

PowerShellMaxCmdletsTimePeriod

El parámetro PowerShellMaxCmdletsTimePeriod establece el periodo de tiempo, en segundos, en que un usuario puede ejecutar el número de cmdlets definidos por el parámetro PowerShellMaxCmdlets.

PowerShellMaxCmdletQueueDepth

El parámetro PowerShellMaxCmdletQueueDepth establece el número de operaciones que un usuario puede ejecutar al mismo tiempo. Este valor afecta directamente al comportamiento de los parámetros PowerShellMaxCmdlets y PowerShellMaxConcurrency. Por ejemplo, el parámetro PowerShellMaxConcurrency usará hasta, por lo menos, dos operaciones definidas por el parámetro PowerShellMaxCmdletQueueDepth, pero las operaciones adicionales también se contarán en comparación con la limitación cada vez que el cmdlet se ejecute. La cantidad de operaciones que cuentan a favor de la limitación depende de los cmdlets que se están ejecutando. Se recomienda que el valor del parámetro PowerShellMaxCmdletQueueDepth sea al menos tres veces superior al valor del parámetro PowerShellMaxConcurrency. Este parámetro no afectará las operaciones que se ejecuten mediante el Panel de control de Exchange ni las operaciones que se ejecuten mediante los servicios web de Exchange .

Administración del límite de directivas de cliente

El Shell de administración de Exchange permite modificar y ver la configuración de las directivas de limitación mediante los cmdlets descritos en la siguiente tabla.

Cmdlets para administrar directivas de limitación de cliente en un servidor de acceso de cliente

Nombre de cmdlet Descripción

New-ThrottlingPolicy

Este cmdlet crea una nueva directiva de limitación.

Remove-ThrottlingPolicy

Este cmdlet quita una directiva de limitación.

Get-ThrottlingPolicy

Este cmdlet permite ver la configuración de directiva de limitación.

Set-ThrottlingPolicy

Este cmdlet modifica todas las configuraciones disponibles para una directiva de limitación.

Nota

Para asociar una directiva de limitación con un usuario único o un grupo de usuarios, use el parámetro ThrottlingPolicy con los cmdlets New-Mailbox y Set-Mailbox.

Administración de la configuración de directiva de limitación de cliente por cada usuario

Puede usar el parámetro ThrottlingPolicy de los cmdlets Set-Mailbox y New-Mailbox en el Shell de administración de Exchange para asociar las directivas de limitación de cliente con un usuario o grupo de usuarios al modificar las propiedades de los buzones. Para obtener más información, consulte Set-Mailbox y New-Mailbox.

Volver al principio

Tareas de administración de directivas de limitación comunes

Los siguientes son algunas formas de administrar las directivas de limitación de cliente.

Recuperación de directivas de limitación predeterminadas

De manera predeterminada, las directivas de limitación tienen el parámetro IsDefault configurado como True. Puede recuperar la directiva de limitación predeterminada mediante el filtro de where-object. En el ejemplo siguiente, se muestra cómo recuperar la directiva de limitación predeterminada.

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

Recuperación de la directiva de limitación que rige a un usuario

Puede establecer las directivas de limitación por cada usuario. Por lo tanto, quizás, desee recuperar la directiva que rige a un usuario específico. Puede obtener el parámetro ThrottlingPolicy del buzón de correo del usuario en el que está interesado y transferirlo al cmdlet Get-ThrottlingPolicy. En el siguiente ejemplo, se usa el buzón de correo de un usuario llamado Antonio Bermejo.

$policy = $null;
$policyLink = (Get-Mailbox tonysmith).ThrottlingPolicy;
if ($policyLink -eq $null)
{ 
    $policy = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}
}
else
{
    $policy = $policyLink | Get-ThrottlingPolicy;

Creación de una directiva de limitación nueva y no predeterminada

Para crear una directiva de limitación nueva y no predeterminada, ejecute el cmdlet New-ThrottlingPolicy y establezca los parámetros que desee. Los parámetros que se omiten heredarán los valores de la directiva de limitación predeterminada. En el ejemplo siguiente se crea una nueva directiva de limitación, ClientThrottlingPolicy2. La nueva directiva tiene casi las mismas configuraciones de una directiva de limitación predeterminada. La diferencia es que la directiva de limitación nueva y no predeterminada, ClientThrottlingPolicy2, establece EWSPercentTimeInCAS en 80 y desactiva la limitación EWSPercentTimeInAD.

New-ThrottlingPolicy -Name ClientThrottlingPolicy2 -EWSPercentTimeInCAS 80 -EWSPercentTimeInAD $null;

Asignación de una directiva de limitación no predeterminada a un usuario

Para asignar una directiva de limitación no predeterminada a un usuario, use el cmdlet Set-Mailbox, de la siguiente manera.

$b = Get-ThrottlingPolicy ClientThrottlingPolicy2;
Set-Mailbox -Identity tonysmith -ThrottlingPolicy $b;

Si un usuario está regido por una directiva de limitación no predeterminada y desea que el usuario use la directiva predeterminada, puede creer que se puede realizar este cambio al configurar el parámetro ThrottlingPolicy en $null. Desafortunadamente, la configuración del parámetro ThrottlingPolicy en $null no modifica el objeto de buzón. Para hacer que la directiva de limitación predeterminada se aplique al usuario, debe establecer, de manera explícita, la directiva de limitación predeterminada para ese usuario mediante el siguiente comando.

$policy = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}
Set-Mailbox -Identity tonysmith -ThrottlingPolicy $policy;

Búsqueda de todos los usuarios controlados por una directiva de limitación específica

Si desea conocer qué usuarios están controlados por una directiva de limitación específica, ejecute el cmdlet Get-Mailbox y filtre la identidad de la directiva de limitación, tal como se muestra en el siguiente ejemplo. En este ejemplo, $policy es la directiva para la cual está filtrando.

Get-Mailbox | where-object {$_.ThrottlingPolicy -eq $policy.Identity}

Quitar las directivas de limitación

Solamente se pueden quitar directivas de limitación que son directivas no predeterminadas y que no están asociadas a buzones. Para hacerlo, ejecute el cmdlet Remove-ThrottlingPolicy y transfiera la identidad de la directiva de limitación mediante el uso del siguiente comando.

Remove-ThrottlingPolicy ClientThrottlingPolicy2

Si tiene una directiva de limitación asociada con usuarios, primero, debe reasignar esos usuarios a otra directiva y, a continuación, puede eliminar la directiva que desea eliminar. En el ejemplo siguiente, se muestra cómo hacerlo.

$policy = Get-ThrottlingPolicy ClientThrottlingPolicy2;
$mailboxes = Get-Mailbox | where-object {$_.ThrottlingPolicy -eq $policy.Identity};
$defaultPolicy = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true};
foreach ($mailbox in $mailboxes)
{
Set-Mailbox -Identity $mailbox.Identity -ThrottlingPolicy $defaultPolicy;
}
Remove-ThrottlingPolicy ClientThrottlingPolicy2;

Modificación de las directivas de limitación

Una directiva de limitación existente (incluida la predeterminada) se modifica si se ejecuta el cmdlet Set-ThrottlingPolicy y especifica qué parámetros debe cambiar. Por ejemplo, para cambiar el valor de parámetro EWSMaxConcurrency de la directiva de limitación predeterminada a 4, se puede usar el siguiente comando.

$a = Get-ThrottlingPolicy | where-object {$_.IsDefault -eq $true}
$a | Set-ThrottlingPolicy -EWSMaxConcurrency 4

Contadores de rendimiento de limitación

Debido a que la limitación ayuda a regir el uso general de los componentes de Exchange en un servidor de Exchange, a menudo, es útil examinar cómo la limitación afecta el sistema. Exchange ofrece un grupo de contadores de rendimiento de limitación por proceso. Por ejemplo, un proceso de Exchange, tal como aplicación web de Outlook tendrá su propio grupo de contadores y los servicios web de Exchange tendrán su propio grupo. En la herramienta de rendimiento de Windows, estos contadores se denominan instancias.

Volver al principio