Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Consideraciones de configuración de SMB
Asegúrese de que los modos de administración de energía del sistema operativo y BIOS se establecen según sea necesario, lo que puede incluir el modo de alto rendimiento o el estado C modificado. Asegúrese de que los controladores de dispositivo de red y almacenamiento más recientes, más resistentes y rápidos estén instalados antes de configurar cualquier ajuste del bloque de mensajes del servidor (SMB).
No habilite los servicios ni características que no necesite el servidor de archivos y los clientes. Considere la posibilidad de deshabilitar servicios o características innecesarios, como:
- Almacenamiento en caché del lado cliente
- Minifiltros del sistema de archivos
- Filtros de firewall
- IPSEC
- Compresión NTFS
- Cifrado NTFS
- Tareas programadas
- Servicio de búsqueda
- Cifrado de SMB
- Firma SMB
- Teredo
Copiar archivos es una operación común realizada en un servidor de archivos. Windows Server tiene varias utilidades de copia de archivos integradas que puede ejecutar mediante un símbolo del sistema. Robocopy se recomienda para estas operaciones. Windows Server 2008 R2 introdujo la opción de Robocopy, lo que mejora significativamente la /mt velocidad en las transferencias remotas de archivos mediante varios subprocesos al copiar varios archivos pequeños. También se recomienda usar la opción /log para reducir la salida de la consola redirigiendo los registros a un dispositivo NUL o a un archivo. Al usar xcopy, se recomienda agregar las /q opciones y /k a los parámetros existentes. La primera opción reduce la sobrecarga de CPU al reducir la salida de la consola y esta última reduce el tráfico de red.
Ajuste del rendimiento de SMB
El rendimiento del servidor de archivos y las optimizaciones disponibles dependen del protocolo SMB que se negocia entre cada cliente y el servidor, y en las características del servidor de archivos implementadas. La versión de protocolo más alta disponible actualmente es SMB 3.1.1 en Windows Server 2022, Windows Server 2016 y Windows 10. Puede comprobar qué versión de SMB está en uso en la red mediante Windows PowerShell Get-SMBConnection en clientes y Get-SMBSession | FL servidores.
Familia de protocolos SMB 3.0
SMB 3.0 se introdujo en Windows Server 2012 y se ha mejorado aún más en Windows Server 2012 R2 (SMB 3.02) y Windows Server 2016 (SMB 3.1.1). Esta versión introdujo tecnologías que podrían mejorar significativamente el rendimiento y la disponibilidad del servidor de archivos. Para obtener más información, consulta SMB en Windows Server 2012 y 2012 R2 2012 y Novedades de SMB 3.1.1.
SMB Directo
SMB Directo introdujo la capacidad de usar interfaces de red RDMA para un alto rendimiento con baja latencia y un uso bajo de CPU.
Siempre que SMB detecta una red compatible con RDMA, intenta usar automáticamente la funcionalidad RDMA. Si el cliente SMB no se puede conectar mediante la ruta de acceso RDMA, vuelve al uso de conexiones TCP/IP. Todas las interfaces RDMA compatibles con SMB Direct también deben implementar una pila TCP/IP y SMB multicanal lo reconoce.
SMB Directo no es necesario en ninguna configuración de SMB, pero siempre se recomienda para los usuarios que quieran una menor latencia y un menor uso de la CPU.
Para obtener más información sobre SMB Directo, consulta Mejorar el rendimiento de un servidor de archivos con SMB directo.
SMB multicanal
SMB multicanal permite a los servidores de archivos usar varias conexiones de red simultáneamente y proporciona un mayor rendimiento.
Para obtener más información sobre SMB multicanal, consulta Implementar SMB multicanal.
Escalabilidad horizontal de SMB
La escalabilidad horizontal de SMB permite que SMB 3.0 en una configuración de clúster muestre un recurso compartido en todos los nodos de un clúster. Esta configuración activa o activa permite escalar aún más los clústeres del servidor de archivos, sin una configuración compleja con varios volúmenes, recursos compartidos y recursos de clúster. El ancho de banda máximo del recurso compartido es el ancho de banda total de todos los nodos de clúster del servidor de archivos. El ancho de banda total ya no está limitado por el ancho de banda de un solo nodo de clúster, sino que depende de la capacidad del sistema de almacenamiento de respaldo. Puede aumentar el ancho de banda total al agregar nodos.
Para obtener más información sobre la escalabilidad horizontal de SMB, consulte la Introducción al servidor de archivos de escalabilidad horizontal para datos de aplicaciones y la entrada de blog Escalar horizontalmente o no escalar horizontalmente, esa es la cuestión.
Contadores de rendimiento para SMB 3.0
Los siguientes contadores de rendimiento de SMB se introdujeron en Windows Server 2012, se consideran el conjunto base de contadores al supervisar el uso de recursos de SMB 2 y versiones posteriores. Registre los contadores de rendimiento en un registro de contadores de rendimiento local y sin formato (.blg). Es menos costoso recopilar todas las instancias mediante el carácter comodín (*)y, a continuación, extraer instancias concretas durante el procesamiento posterior mediante Relog.exe.
Recursos compartidos de cliente de SMB
Estos contadores muestran información sobre los recursos compartidos de archivos en el servidor al que acceden los clientes mediante SMB 2.0 o versiones posteriores.
Si está familiarizado con los contadores de disco normales en Windows, es posible que observe un cierto parecido. Eso no es por accidente. Los contadores de rendimiento de los recursos compartidos de cliente SMB se diseñaron para que coincidan exactamente con los contadores de disco. De este modo, puede reutilizar fácilmente cualquier guía sobre el ajuste del rendimiento del disco de la aplicación que tenga actualmente. Para obtener más información sobre la asignación de contadores, consulte el blog de contadores de rendimiento por cliente compartido.
Recursos compartidos de servidor SMB
Estos contadores muestran información sobre los recursos compartidos de archivos SMB 2.0 o posteriores en el servidor.
Sesiones del servidor SMB
Estos contadores muestran información sobre las sesiones de servidor SMB que usan SMB 2.0 o superior.
Activar contadores en el lado servidor (recursos compartidos de servidor o sesiones de servidor) puede tener un impacto significativo en el rendimiento de las cargas de trabajo de E/S elevadas.
Reanudar filtro de clave
Estos contadores muestran información sobre el filtro de clave de reanudación.
Conexión de SMB Directo
Estos contadores miden distintos aspectos de la actividad de conexión. Un equipo puede tener varias conexiones directas SMB. Los contadores de conexión directa SMB representan cada conexión como un par de direcciones IP y puertos. La primera dirección IP y puerto representan el punto de conexión local de la conexión y la segunda dirección IP y el puerto representan el punto de conexión remoto de la conexión.
Relaciones de contadores de rendimiento de disco físico, SMB, CSV FS
Para obtener más información sobre cómo están relacionados los contadores de disco físico, SMB y CSV FS (sistema de archivos), consulte la siguiente entrada de blog: Contadores de rendimiento de volúmenes compartidos de clúster.
Ajuste de parámetros para servidores de archivos SMB
La siguiente REG_DWORD configuración del Registro puede afectar al rendimiento de los servidores de archivos SMB:
Smb2CreditsMin y Smb2CreditsMax
HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\Smb2CreditsMinHKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\Smb2CreditsMaxLos valores predeterminados son 512 y 8192 para Windows Server, respectivamente. Estos parámetros permiten al servidor limitar la simultaneidad de la operación de cliente dinámicamente dentro de los límites especificados. Algunos clientes pueden lograr un mayor rendimiento con límites de simultaneidad más altos, por ejemplo, copiar archivos a través de vínculos de alta latencia y ancho de banda alto. Estos valores predeterminados se aplican a Windows Server, no a Windows.
Sugerencia
Antes de Windows 10 y Windows Server 2016, el número de créditos concedidos al cliente varía dinámicamente entre Smb2CreditsMin y Smb2CreditsMax en función de un algoritmo que intentó determinar el número óptimo de créditos que se deben conceder en función de la latencia de red y el uso de crédito. En Windows 10 y Windows Server 2016, el servidor SMB se cambió para conceder créditos incondicionalmente a petición hasta el número máximo de créditos configurado. Como parte de este cambio, se quitó el mecanismo de limitación de crédito, que reduce el tamaño de la ventana de crédito de cada conexión cuando el servidor está bajo presión de memoria. El evento de memoria baja del kernel que desencadenó la limitación solo se marca como inútil cuando el servidor no tiene memoria suficiente (< unos pocos MB). Dado que el servidor ya no reduce las ventanas de crédito, la configuración Smb2CreditsMin ya no es necesaria y ahora se omite.
Puede supervisar los Recursos compartidos de cliente de SMB\Paradas de crédito/segundo para ver si hay algún problema con los créditos.
AdditionalCriticalWorkerThreads
HKLM\System\CurrentControlSet\Control\Session Manager\Executive\AdditionalCriticalWorkerThreadsEl valor predeterminado es 0, lo que significa que no se agregan subprocesos de trabajo de kernel más críticos. Este valor afecta a la cantidad de hilos que usa la caché del sistema de archivos para las solicitudes de lectura anticipada y escritura diferida. Aumentar este valor puede permitir más E/S en cola en el subsistema de almacenamiento, y puede mejorar el rendimiento de E/S, especialmente en sistemas con muchos procesadores lógicos y hardware de almacenamiento eficaz.
Nota:
Esta configuración se aplica principalmente a los sistemas operativos Windows 7, Windows Server 2008 R2 y versiones anteriores. En sistemas operativos posteriores, Cache Manager sigue consumiendo indirectamente este valor, pero no crea subprocesos de trabajo dedicados en sistemas operativos posteriores. En su lugar, este valor influye indirectamente en la cantidad de elementos de trabajo de cada tipo (trabajadores genéricos, escritores diferidos, etc.) que Cache Manager asignará para su envío posterior al grupo de subprocesos del kernel.
Sugerencia
Considere aumentar el valor si los datos con modificaciones del administrador de caché (caché de contador de rendimiento\páginas con modificaciones) superan aproximadamente el 25 % de la memoria o si el sistema está realizando numerosas E/S de lectura sincrónica.
MaxThreadsPerNumaNode
HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\MaxThreadsPerNumaNodeEl valor predeterminado es 20. Aumentar este valor aumenta el número de subprocesos que el servidor de archivos puede usar para atender solicitudes simultáneas. Si es necesario atender un gran número de conexiones activas, aumentar el valor puede mejorar el rendimiento cuando los controladores de filtro de terceros ineficaces afecten a la E/S. Es mejor instalar controladores de filtro de terceros actualizados y controladores de impresión que procesan E/S de forma más eficaz en lugar de modificar esta configuración.
Sugerencia
Una indicación de que puede ser necesario aumentar el valor es si las colas de trabajo SMB2 están creciendo relativamente mucho (el contador de rendimiento "Colas de trabajo del servidor\Longitud de cola\SMB2 sin bloqueo*" es constantemente superior a ~100).
Nota:
En SMB1 y en Windows Server 2012 y Windows Server 2008, maxThreadsPerQueue se usó para controlar esta configuración. SMB1 está en desuso y ya no está instalado, y esta configuración ya está inactiva.
AsynchronousCredits
HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\AsynchronousCreditsEl valor predeterminado es 512. Este parámetro limita el número de comandos SMB asincrónicos simultáneos que se permiten en una sola conexión. Algunos casos (por ejemplo, cuando hay un servidor front-end con un servidor IIS de back-end) requieren una gran cantidad de simultaneidad (para solicitudes de notificación de cambio de archivo, en particular). El valor de esta entrada se puede aumentar para admitir estos casos. El valor predeterminado es para Windows Server, no para Windows.
RemoteFileDirtyPageThreshold
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\RemoteFileDirtyPageThresholdEl valor predeterminado es 5 GB. Este valor determina el número máximo de páginas sucias en la memoria caché (por archivo) para una escritura remota antes de que se realice un vaciado en línea. No se recomienda cambiar este valor a menos que el sistema experimente ralentizaciones coherentes durante escrituras remotas pesadas. Este comportamiento de ralentización normalmente se vería donde el cliente tiene un rendimiento de E/S de almacenamiento más rápido que el servidor remoto. El cambio de configuración se aplica al servidor. El cliente y el servidor hacen referencia a la arquitectura del sistema distribuido, no a sistemas operativos concretos; Por ejemplo, una copia de datos de Windows Server a otro servidor de Windows Server a través de SMB seguiría implicando un cliente SMB y un servidor SMB. Para obtener más información, consulte Solución de problemas de rendimiento de Caché y Administrador de memoria.
Ejemplo de optimización del servidor SMB
La siguiente configuración puede optimizar un equipo para el rendimiento del servidor de archivos en muchos casos. La configuración no es óptima o adecuada en todos los equipos. Debe evaluar el impacto de cada uno de los valores antes de aplicarlos.
| Parámetro | Importancia | Predeterminado |
|---|---|---|
| AdditionalCriticalWorkerThreads | 64 | 0 |
Contadores de monitores de rendimiento de cliente SMB
Para obtener más información acerca de los contadores de cliente SMB, consulte Sugerencia del servidor de archivos de Windows Server 2012: Nuevos contadores de rendimiento de cliente SMB por recurso compartido proporcionan una gran información.