Partager via


Réglage des performances des serveurs de fichiers NFS

Services pour le modèle NFS

Les sections suivantes fournissent des informations sur le modèle NFS (Microsoft Services for Network File System) pour la communication client-serveur. Étant donné que NFS v2 et NFS v3 sont toujours les versions les plus largement déployées du protocole, toutes les clés de Registre à l’exception de MaxConcurrentConnectionsPerIp s’appliquent uniquement à NFS v2 et NFS v3.

Aucun réglage du Registre n’est requis pour le protocole NFS v4.1.

Vue d’ensemble du service pour le modèle NFS

Les services Microsoft pour NFS constituent une solution de partage de fichiers pour les entreprises qui disposent d’un environnement mixte Windows et UNIX. Ce modèle de communication se compose d’ordinateurs clients et d’un serveur. Les applications sur le client demandent des fichiers qui sont situés sur le serveur via le redirecteur (Rdbss.sys) et le mini-redirecteur NFS (Nfsrdr.sys). Le mini-redirecteur utilise le protocole NFS pour envoyer sa requête via TCP/IP. Le serveur reçoit plusieurs requêtes des clients via TCP/IP et les achemine vers le système de fichiers local (Ntfs.sys), qui accède à la pile de stockage.

La figure suivante montre le modèle de communication pour NFS.

modèle de communication nfs

Paramètres de paramétrage pour les serveurs de fichiers NFS

Les paramètres de Registre de REG_DWORD suivants peuvent affecter les performances des serveurs de fichiers NFS :

  • Lectures optimales

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\OptimalReads
    

    La valeur par défaut est 0. Ce paramètre détermine si les fichiers sont ouverts pour FILE_RANDOM_ACCESS ou pour FILE_SEQUENTIAL_ONLY, en fonction des caractéristiques d’E/S de la charge de travail. Définissez cette valeur sur 1 pour forcer l’ouverture des fichiers pour FILE_RANDOM_ACCESS. FILE_RANDOM_ACCESS empêche le système de fichiers et le gestionnaire de cache de prérécupérer.

    Remarque

    Ce paramètre doit être soigneusement évalué, car il peut avoir un impact potentiel sur la croissance du cache de fichiers système.

  • RdWrHandleLifeTime

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\RdWrHandleLifeTime
    

    La valeur par défaut est 5. Ce paramètre contrôle la durée de vie d’une entrée de cache NFS dans le cache de handle de fichier. Le paramètre fait référence aux entrées de cache qui ont un handle de fichier NTFS ouvert associé. La durée de vie réelle est approximativement égale à RdWrHandleLifeTime multipliée par RdWrThreadSleepTime. La valeur minimale est 1 et la valeur maximale est de 60.

  • RdWrNfsHandleLifeTime

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\RdWrNfsHandleLifeTime
    

    La valeur par défaut est 5. Ce paramètre contrôle la durée de vie d’une entrée de cache NFS dans le cache de handle de fichier. Le paramètre fait référence aux entrées de cache qui n’ont pas de handle de fichier NTFS ouvert associé. Les services pour NFS utilisent ces entrées de cache pour stocker des attributs de fichier pour un fichier sans conserver un handle ouvert avec le système de fichiers. La durée de vie réelle est approximativement égale à RdWrNfsHandleLifeTime multipliée par RdWrThreadSleepTime. La valeur minimale est 1 et la valeur maximale est de 60.

  • RdWrNfsReadHandlesLifeTime

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\RdWrNfsReadHandlesLifeTime
    

    La valeur par défaut est 5. Ce paramètre contrôle la durée de vie d’une entrée de cache de lecture NFS dans le cache des descripteurs de fichiers. La durée de vie réelle est approximativement égale à RdWrNfsReadHandlesLifeTime multipliée par RdWrThreadSleepTime. La valeur minimale est 1 et la valeur maximale est de 60.

  • RdWrThreadSleepTime

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\RdWrThreadSleepTime
    

    La valeur par défaut est 5. Ce paramètre contrôle l’intervalle d’attente avant d’exécuter le thread de nettoyage sur le cache du handle de fichier. La valeur est en cycles, et elle n’est pas déterministe. Un tique équivaut à environ 100 nanosecondes. La valeur minimale est 1 et la valeur maximale est de 60.

  • File Handle Cache Size in MB

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\FileHandleCacheSizeinMB
    

    Valeur par défaut : 4. Ce paramètre spécifie la mémoire maximale à consommer par les entrées de cache du handle de fichier. La valeur minimale est 1 et la valeur maximale est 1*1024*1024*1024 (1073741824).

  • LockFileHandleCacheInMemory

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\LockFileHandleCacheInMemory
    

    La valeur par défaut est 0. Ce paramètre spécifie si les pages physiques allouées pour la taille de cache spécifiée par FileHandleCacheSizeInMB sont verrouillées en mémoire. La définition de cette valeur sur 1 active cette activité. Les pages sont verrouillées en mémoire (pas paginées sur disque), ce qui améliore les performances de résolution des handles de fichiers, mais réduit la mémoire disponible pour les applications.

  • MaxIcbNfsReadHandlesCacheSize

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\MaxIcbNfsReadHandlesCacheSize
    

    La valeur par défaut est 64. Ce paramètre spécifie le nombre maximal de handles par volume pour le cache de données de lecture. Les entrées de cache de lecture sont créées uniquement sur les systèmes qui ont plus de 1 Go de mémoire. La valeur minimale est 0 et la valeur maximale est 0xFFFFFFFF.

  • HandleSigningEnabled

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\HandleSigningEnabled
    

    La valeur par défaut est 1. Ce paramètre contrôle si les handles qui sont donnés par le serveur de fichiers NFS sont signés par chiffrement. La définition de la valeur 0 désactive la signature.

  • RdWrNfsDeferredWritesFlushDelay

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\RdWrNfsDeferredWritesFlushDelay
    

    La valeur par défaut est 60. Ce paramètre est un délai d’attente souple qui contrôle la durée de la mise en cache des données NFS V3 UNSTABLE Write. La valeur minimale est 1, et la valeur maximale est de 600. La durée de vie réelle est approximativement égale à RdWrNfsDeferredWritesFlushDelay multipliée par RdWrThreadSleepTime.

  • CacheAddFromCreateAndMkDir

    HKLM\System\CurrentControlSet\Services\NfsServer\Parameters\CacheAddFromCreateAndMkDir
    

    La valeur par défaut est 1 (activée). Ce paramètre contrôle si les descripteurs ouverts pendant les procédures CREATE et MKDIR RPC des gestionnaires NFS V2 et V3 sont conservés dans le cache de descripteurs de fichier. Définissez cette valeur sur 0 pour désactiver l’ajout d’entrées au cache dans les chemins de code CREATE et MKDIR.

  • AdditionalDelayedWorkerThreads

    HKLM\SYSTEM\CurrentControlSet\Control\SessionManager\Executive\AdditionalDelayedWorkerThreads
    

    Augmente le nombre de threads de travail différés créés pour la file d’attente de travail spécifiée. Les threads de travail différés traitent les éléments de travail qui ne sont pas considérés comme critiques en termes de temps et dont la pile de mémoire peut être vidée pendant l’attente des éléments de travail. Un nombre insuffisant de threads réduit le taux de service des éléments de travail ; une valeur trop élevée consomme inutilement les ressources système.

  • NtfsDisable8dot3NameCreation

    HKLM\System\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation
    

    La valeur par défaut dans Windows Server 2012, Windows Server 2012 R2 et les versions ultérieures de Windows Server est 2. Dans les versions antérieures à Windows Server 2012, la valeur par défaut est 0. Ce paramètre détermine si NTFS génère un nom court dans la convention d’affectation de noms 8dot3 (MSDOS) pour les noms de fichiers longs et pour les noms de fichiers qui contiennent des caractères du jeu de caractères étendus. Si la valeur de cette entrée est 0, les fichiers peuvent avoir deux noms : le nom spécifié par l’utilisateur et le nom court généré par NTFS. Si le nom spécifié par l’utilisateur suit la convention d’affectation de noms 8dot3, NTFS ne génère pas de nom court. La valeur 2 signifie que ce paramètre peut être configuré par volume.

    Remarque

    Le volume système a 8dot3 activé par défaut. Tous les autres volumes dans Windows Server 2012 et Windows Server 2012 R2 ont 8dot3 désactivés par défaut. La modification de cette valeur ne modifie pas le contenu d’un fichier, mais elle évite la création d’attributs de nom court pour le fichier, ce qui modifie également la façon dont NTFS affiche et gère le fichier. Pour la plupart des serveurs de fichiers, le paramètre recommandé est 1 (désactivé).

  • NtfsDisableLastAccessUpdate

    HKLM\System\CurrentControlSet\Control\FileSystem\NtfsDisableLastAccessUpdate
    

    La valeur par défaut est 1. Ce commutateur global système réduit la charge et les latences d’E/S de disque en désactivant la mise à jour de la date et de l’heure pour le dernier accès au fichier ou au répertoire.

  • MaxConcurrentConnectionsPerIp

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rpcxdr\Parameters\MaxConcurrentConnectionsPerIp
    

    La valeur par défaut du paramètre MaxConcurrentConnectionsPerIp est 16. Vous pouvez augmenter cette valeur jusqu’à un maximum de 8192 pour augmenter le nombre de connexions par adresse IP.