Paramétrage de Performances pour Windows Server 2008 R2 Serveur de Fichiers

Téléchargez dès à présent le document en format pdf

 


Article par Marc Lognoul (MVP File System Storage Architecture)

Marc Lognoul est actuellement consultant, architecte d’infrastructure indépendant travaillant pour le compte de SSII et de grands comptes. Spécialisé dans les technologies d’infrastructure Microsoft, il contribue activement aux forums TechNet.


Sommaire de l'article

  • Introduction
  • Aperçu
  • Pré-requis
  • Paramétrage par Composant
    • Stockage
    • Réseau
    • Processeur
    • Options de paramétrage diverses
    • Les Elements Exogènes

Introduction

Windows Server 2008 R2 offre un niveau de performances jamais atteint pour le rôle « Serveur de Fichiers ». Cet article a pour vocation de détailler les paramètres et les configurations permettant d’optimiser les performances en fonction d’un usage générique ou de scenarii spécifiques.

Aperçu

Dans le cas d’un usage de type « serveur de fichiers », les composants suivants sont prépondérants :

  • Le sous-système de stockage : disques, contrôleurs, système de fichiers…
  • La couche réseau : commutateur, carte réseau, pile TCP/IP et protocole de partage SMB
  • Le processeur : dans une moindre mesure, le processeur sera sollicité. Le niveau de sollicitation exact dépendra du scénario d’usage et des possibilités de déchargement offerts par les autres composants (carte réseau, contrôleur de stockage…)

La quantité de mémoire vive joue un rôle moins prépondérant.

Pré-requis

Avant de procéder à la mise en place d’une configuration décrite  dans  cet article, il est primordial que les pré-requis suivants soient rencontrés :

  • Les dernières mises à jour Windows Server 2008 R2 doivent être installées
  • Les pilotes, firmware etc (y compris ceux des disques, contrôleurs etc) doivent l’être également
  • Les composants réseaux doivent être parfaitement opérationnels et correctement paramétrés. La compatibilité entre le paramétrage de ceux-ci et celui de Windows doit être soigneusement vérifiée
  • L’outil d’analyse des bonnes pratiques intégré à Windows Server 2008 R2 (Best Practices Analyzer) devrait être employé avant et après la mise en place de la configuration. Les erreurs et commentaires rapportés par celui-ci doivent être pris en compte et intégrés à la solution mise en place

Haut de page | Haut de page

Paramétrage par Composant

Stockage

Type de Technologie de Stockage

La nature de la technologie de stockage choisie (DAS ou SAN) est moins déterminante que son paramétrage et, si applicable, le fait qu’elle soit partagée ou non. La probabilité de partage étant plus grande avec une solution de stockage de type SAN, celle-ci offre toutefois un niveau de flexibilité bien supérieur.

Contrôleur

Le contrôleur, destiné à une connexion SAN (HBA avec connexion fibre par exemple) ou DAS (SCSI, eSATA, SAS..) revêt une importance primordiale pour différentes raisons :

  • Il offre une fonctionnalité de cache en lecture et parfois en écriture, avec également une possibilité de protection en cas de rupture d’alimentation en énergie
  • Il est déterminant quant aux types de configuration RAID supportées et le cas échéant si des combinaisons sont possibles
  • Il peut s’avérer être un goulet d’étranglement en ce qui concerne la bande passante, le débit total potentiel de la solution de stockage, le nombre de disques connectables voire le nombre de LUNs adressables dans le cas d’une connexion SAN. Certains modèles de contrôleurs permettent également l’agrégation de ceux-ci en mode haute disponibilité ou équilibrage de charge

Disques

La technologie des disques influence directement la fiabilité, la capacité, le débit, le temps d’accès et le coût de ceux-ci.

Les disques classiques (mécaniques) peuvent être de différentes technologies : SATA, SCSI et SAS (Serial Attached SCSI). La technologie SATA offre un bon niveau de performance pour un coût réduit, la technologie SCSI est vieillissante et pénalisée par un coût qui reste relativement élevé. La technologie SAS offre le meilleur niveau de performance, notamment une vitesse de rotation plus élevée, mais son coût est également élevé. Elle serait également plus fiable que les autres.

Le cache intégré au disque peut également s’avérer déterminant pour le niveau de performance.

Même s’il est communément admis que les disques de type Solid State (SSD) sont les plus performants, leur coût et leur capacité limitée réduisent actuellement leur adoption massive.

Afin d’obtenir un résultat optimal, il faut s’assurer de la compatibilité entre les disques et le contrôleur. Il est également recommandé, autant que faire se peut, d’utiliser des disques identiques (même marque, même modèle et si possible, même série de production). La mise à jour du firmware des disques n’est pas à négliger.

Enfin, les solutions de type SAN les plus avancées permettent, pour un même LUN (Logical Unit Number) de combiner, de faire varier le type de disque utilisé en fonction de l’usage qui en est fait, voire de combiner des technologies afin d’obtenir un résultat optimal en terme de coût/performance. Les blocks étant distribués sur un grand nombre de disque, on parle de fragmentation normale et naturelle que l’on ne peut contrer au niveau du système d’exploitation.

Configurations RAID

La configuration RAID est déterminante pour le niveau de performance, la capacité de stockage réellement utilisable ainsi que le coût total et celui induit par la consommation énergétique.

Cet article Wikipédia détaille avec précision tous les types de RAID ainsi que leurs implications en termes de performance, disponibilité et coût : http://fr.wikipedia.org/wiki/RAID_(informatique).

Le tableau ci-dessous compare les types de RAID les plus courants ainsi que que leurs avantages, inconvénients, coût et usages.

Type Avantages/ Inconvénients Usage recommandé
JBOD : « Just a bunch of disks »

Avantages :

  • Facile à mettre en œuvre et économique
  • Bonne performances pour les accès concurrents séquentiels (Streaming, téléchargement de grands fichiers…)

Inconvénients :

  • Pas de redondance
  • Pas d’équilibrage de charge entre les disques

Streaming audio/vidéo

Téléchargement de fichiers, de préférence peu de fichiers mais de grande taille

Note : les données étant susceptibles d’être perdues lors de la perte d’un disque, il est impératif de prévoir une méthode de sauvegarde adaptée

RAID 0 : Agrégat sur 2 disques

Avantages :

  • Facile à mettre en œuvre et économique
  • Meilleurs ratio coût/performances pour presque tous les types d’usage
  • Distribution automatique de la charge entre les deux disques

Inconvénients :

  • Pas de redondance
  • Capacité limitée, croissance impossible

Presque tous les types d’usage pour autant que les données puissent être reconstruites après la perte d’un ou deux disques

Note : il est fréquemment recommandé de placer le fichier d’échange de Windows sur ce type de configuration. Bien que cela garantisse un niveau de performance élevé, une défaillance entrainera le plantage du système

RAID 1 : Miroir

Avantages :

  • Facile à mettre en œuvre et économique
  • Tolérance de panne
  • Accès rapide en lecture

Inconvénients :

  • Accès en écriture moins performant

Fichiers de journalisation de transaction de base de données

Données critiques

Données accédées en lecture avec un certain niveau de concurrence

RAID 5 : Agrégat par bande avec parité

Avantages :

  • Tolérance de panne
  • Accès rapide en lecture
  • Distribution automatique de la charge entre les disques

Inconvénients :

  • Coût plus élevé (minimum 3 disques, consommation en hausse)
  • Accès en écriture moins performant
  • Impact sur la performance lors d’une reconstruction

Données critiques

Accès principalement en lecture

Ecritures de petite taille à éviter

RAID 10 : Combinaison du RAID 1 et du RAID 0

Avantages :

  • Tolérance de panne
  • Haute performance en lecture et écriture
  • Distribution automatique de la charge entre les disques

Inconvénients :

  • Coût plus élevé (4 disques, consommation en hausse)

Données critiques

Haute performance pour tous les types d’usage

 

Priorité des IO

Depuis Windows Server 2008, les applications peuvent définir des niveaux de priorités pour les entrées/sorties en fonction de leurs besoins afin, notamment, de privilégier les activités d’avant-plan.

Toutefois, cela peut s’avérer contreproductif dans le cas d’un serveur de fichiers. Il est dès lors possible de contourner ce mécanisme en restaurant une priorité maximale pour un périphérique donné, dans ce cas une unité de stockage.

Par le biais du gestionnaire de périphériques, il faut repérer l’identifiant du périphérique : localiser le périphérique ne question, afficher ses propriétés, aller sur l’onglet « Détails » ensuite afficher la valeur de la propriété « Device Class ID » et la noter.

Configurer le périphérique grâce au paramètre de registre suivant :

IdlePrioritySupported

  • \System\CurrentControlSet\Control\DeviceClasses\IDENTIFIANT DU PERIPHERIQUE\DeviceParameters\Classpnp\(REG_DWORD)
  • Valeurs : 0

Partitionnement logique

La réaction, la taille et le placement des volumes physiques devront être dictés par les considérations suivantes :

  • Le regroupement de volumes logiques sur un volume physique en fonction de l’usage : même type d’accès, tolérance de panne…
  • Incidence de la géométrie des disques physiques : dans la plupart des cas, le volume physique est d’abord rempli en commençant par son extrémité, les données les plus éloignées du centre étant potentiellement accessibles avec un niveau de performance plus élevée
  • L’incidence de la taille d’une partition logique sur les opérations de maintenance et de réparation
  • Les possibilités d’augmentation ou de réduction de capacité
  • Les limites du système : usage des lettres pour nommer les volumes etc…

Le Système de Fichiers

Bien que Windows supporte plusieurs systèmes de fichiers, seul le NTFS offre toutes les garanties de performance de haut niveau, de montée en charge et de fiabilité. Cet article couvre donc le paramétrage de celui-ci exclusivement.

Alignement du disque

Sur les versions de Windows Server antérieures à 2008, le décalage par défaut de la structure du disque logique par rapport à la structure réelle du disque visiblement pouvaient entrainer une dégradation importante de la performance à cause du non-alignement de ceux-ci.

Windows Server 2008 et à fortiori R2 adapte le décalage de départ en fonction de la taille réelle du disque physique. Le tableau ci-dessous détaille les valeurs par défaut qui sont d’applications. Celles-ci se trouvent paramétrées sous la clé de registre HKLM\SYSTEM\CurrentControlSet\Services\VDS\Alignment.

Taille du disque Décalage de départ par défaut
Moins de 4 GB 65.536 (64KB)
De 4 GB à 8 GB 1.048.576 (1 MB)
De 8 GB à 32 GB 1.048.576 (1 MB)
Plus de 32GB 1.048.576 (1 MB)

 

Bien que ces valeurs par défaut conviennent dans la plupart des cas, il se peut que certains types de technologies de stockage (certains SAN par exemple), requièrent un paramétrage spécifique pour un fonctionnement optimal. Dans ce cas le fournisseur de la solution sera le plus à même d’indiquer le décalage exact à paramétrer.

La commande Diskpart permet d’effectuer la plupart des opérations relatives au disque dont la création de partitions en spécifiant le décalage de départ : https://technet.microsoft.com/en-us/library/cc770877(WS.10).aspx

Taille des clusters

La taille de cluster par défaut sur un volume formaté en NTFS est liée à la taille de ce volume. Le tableau ci-dessous reprend les combinaisons possibles par défaut.

Taille du Volume Taille du cluster par défaut
De 7 MB à 16 TB 4 KO
De 16 TB à 32 TB 8 KO
De 32 TB à 64 TB 16 K0
De 64 TB à 128 TB 32 K0
De 128 TB à 256 TB 64 KO

 

Utiliser une taille de cluster supérieure à celle par défaut, bien qu’entrainant une perte potentielle d’espace disque, peut s’avérer bénéfique afin de faire correspondre à la taille des IO habituellement utilisés par l’application. De manière générale, moins il y a de fichiers et plus ceux-ci sont de grande taille, plus grande la taille de cluster devrait être, cette règle permettant d’éviter le gâchis d’espace disque.

Il est important de signaler que si la taille de cluster excède 4 K0, la compression native NTFS n’est plus supportée.

Options de paramétrage du Système de Fichiers NTFS

NtfsDisable8dot3NameCreation

  • HKLM\System\CurrentControlSet\Control\FileSystem\REG_DWORD)
  • Valeurs: 0 (défaut) ou 1

Ce paramètre détermine si le NTFS doit, lors de la création d’un nouveau fichier ou lors du renommage d’un fichier existant créer une entrée dans la MFT correspondant au nom de fichier au format MS-DOS (8.3). Prévenir la création de cette 2ème entrée permet de limiter la charge si un grand nombre de fichiers doivent être créés ou renommés. Ce paramètre n’a pas d’effet rétroactif sur les fichiers existants avant l’application, il est donc primordial de le configurer avant la mise en service du serveur. S’il est paramétré par le biais du registre, il s’appliquera à tous les disques logiques formatés en NTFS, ce qui pourrait donner des problèmes de compatibilité pour certaines applications installées sur le disque C :. Il peut donc s’avérer préférable de recourir au paramétrage par disque logique (ex, D : uniquement), cela se faisant par la commande FSUTIL 8dot3name.

NtfsDisableLastAccessUpdate

  • HKLM\System\CurrentControlSet\Control\FileSystem\(REG_DWORD)
  • Valeurs : 1 (défaut) ou 0

Le système de fichiers NTFS est capable de maintenir un attribut pour chaque fichier qui reflète la date et l’heure du dernier accès. Cela peut s’avérer utile dans le cadre d’un inventaire sur l’utilisation des fichiers ou de solution de sauvegarde/restauration qui ne se baseraient pas, par exemple, sur le bit d’archivage. Cette mise à jour est désactivée par défaut, afin d’éviter la surcharge inhérente à cette tâche.

Il est à noter que la valeur par défaut est de 0 dans les versions de Windows antérieures à Windows Server 2008 et Windows Vista.

NtfsMftZoneReservation

  • HKLM\System\CurrentControlSet\Control\FileSystem\(REG_DWORD)
  • Valeurs : de 1 (défaut) à 4 (multiplicateur de 200MB)

Lors du formatage d’une partition logique en NTFS, le système réserve une quantité d’espace disque contiguë dédiée à la table de fichiers maîtres (MFT). Si le volume en question est destiné à contenir un grand nombre de répertoires ou de fichiers, le système fera grandir cette table selon le besoin. Malheureusement, il est possible que cette croissance entraine une fragmentation de celle-ci.

Pré-réserver un espace plus grand permettra donc de lutter contre cette fragmentation. La valeur du paramètre est un coefficient multiplicateur de 200MB.

MaximumTunnelEntries

  • HKLM\System\CurrentControlSet\Control\FileSystem\(REG_DWORD)
  • Valeurs: 1024 (défaut). 0 (zéro) désactive cette fonction

Le principe de « Tunneling » est un moyen de combiner des instructions vers le système de fichiers afin de produire un résultat proche d’un système de cache. Ce paramètre contrôle le nombre d’instructions maximum pouvant être mise en cache.

MaximumTunnelEntryAgeInSeconds

  • HKLM\System\CurrentControlSet\Control\FileSystem\(REG_DWORD)
  • Valeurs: 15 (secondes). Nombre de secondes à définir.

Ce paramètre contrôle la durée maximum de mise en cache.

Haut de page | Haut de page

Réseau

La ou les cartes Réseaux

La ou les cartes réseaux devraient être idéalement de type Gigabit. Certaines cartes peuvent même atteindre 10 Gigabit, à condition que les composants réseaux auxquels elles se rattachent soient compatibles.

Si la carte le permet (c’est fréquemment le cas des cartes 10 ou 100 MBIT) il est préférable d’opter pour un paramétrage manuel de la vitesse du lien et du duplex, il est important de paramétrer de la même manière les commutateurs auxquels ces cartes seraient connectées. Il se peut que certaines cartes Gigabit imposent la négociation automatique.

Les cartes haut de gamme intègrent leur lot de fonctionnalités déterminantes pour le niveau de performances, certaines d’entre-elles sont décrites plus bas.

L’augmentation de bande passante par l’ajout de cartes réseaux non agrégées

Afin d’augmenter la bande passante potentielle du serveur, il est possible d’ajouter plusieurs cartes réseaux de les configurer afin que celles-ci fonctionnent en parallèle de manière indépendante les unes des autres.

La répartition de charge se fait grâce au principe du tourniquet (round-robin) paramétré au niveau du service DNS, chaque carte possédant sa propre adresse IP renseignée sur un même hôte.

Cette architecture ne permet pas de garantir la haute disponibilité car il n’y a pas de détection de panne et de désactivation  de l’élément fautif. Toutefois si un changement d’adresse IP devait se produire, la connexion entre le client et le serveur serait maintenue grâce mécanisme de persistance (« durability ») offerte par protocole SMB.

L’augmentation de bande passante par agrégation de liens (Norme 802.3a…)

L’agrégation de liens (link agregation ou Teaming, selon le vocabulaire des différents fournisseurs) permet de lier plusieurs cartes réseaux physiques et les présenter comme une seule. Cette fonctionnalité n’est pas offerte  nativement par Windows Server mais par un ensemble de pilotes et d’applications livrées par les fournisseurs tel que HP, Intel ou Broadcom par exemple.

A condition de disposer de l’infrastructure réseau compatible et configurée de la manière idoine, (commutateurs notamment), elle permet d’augmenter la capacité réseau (bande passante) en réception (Receive) et en émission (Transmit) ou bien elle garantit une haute disponibilité (failover).

Dans la plupart des cas, cette architecture est transparente pour les applications, y compris pour le rôle « Serveur de fichiers ». La distribution de la charge entre les membres formant cet agrégat de liens se fait moyennant une légère surcharge au niveau du ou des processeur(s).

Lors de la sortie de Windows Server 2008, la politique de support produit concernant le « teaming » s’est grandement assouplie, voir l’article de base de connaissance suivant : https://support.microsoft.com/kb/254101/fr.

Techniques de décharge de la couche réseau de Windows

Les cartes réseaux modernes intègrent des technologies permettant de décharger la couche réseau de Windows d’un certain nombre de tâches. Ces fonctionnalités sont la plupart du temps paramétrables par le biais des propriétés du pilote de la carte réseau.

Calcul de Checksum

Le calcul permettant de vérifier l’intégrité des transmissions UDP/TCP peut être effectué directement par la carte réseau au lieu de la pile TCP/IP de Windows. Cette option est en général paramétrable dans les propriétés du pilote de la carte et évite de surcharger le CPU du serveur.

Segmentation des paquets TCP de grande taille (Large Send Offload)

Cette technologie, paramétrable également par le biais des propriétés du pilote de la carte réseau, permet de transférer la charge liée à la segmentation des paquets TCP du CPU du serveur vers la carte réseau.

Décharge TCP (TOE, TCP Offload Engine)

Les cartes réseaux haut de gamme permettent de transférer toute une série d’opérations habituellement dévolues à la pile TCP/IP de Windows Serveur. Celles-ci incluant la gestion des ACK TCP, le calcul des Checksum (voir plus haut), etc…

La pile TCP/IP de Windows

La pile TCP/IP de windows Server 2008 R2 a considérablement évolué par rapport aux versions précédentes. Elle intègre notamment des processus automatiques de configuration qui rendent inutiles beaucoup de paramétrages manuels communément appliqués aux versions antérieures de Windows. Toutefois, certaines options, restent paramétrables manuellement.

Le Receive-Side Scaling (RSS)

Par le passé, la charge de travail occasionnée par les opérations d’une carte réseau ne pouvait se répartir que sur un processeur ou cœur à la fois. Depuis Windows Server 2003 Service Pack 1 mais surtout Windows Server 2008 R2, le Receive-Side Scaling permet de répartir le travail sur de multiples CPU ou cœurs.

Windows Server 2008 R2 permet également de mettre en place des affinités entre les CPU et les cartes réseaux afin de paramétrer encore plus finement cette technologie.

Options de paramétrage du  Receive-Side Scaling

*MaxRSSProcessors

  • HKLM\SYSTEM\CurrentControlSet\Control\Class\{XXXXX72-XXX}\<Numéro de la carte>\
  • Valeurs : nombre de CPU à allouer à cette carte réseau

*RssBaseProcNumber

  • HKLM\SYSTEM\CurrentControlSet\Control\Class\{XXXXX72-XXX}\<Numéro de la carte>\
  • Valeurs : nombre de CPU de base alloués au RSS pour une carte réseau donnée

*NumaNodeID

  • HKLM\SYSTEM\CurrentControlSet\Control\Class\{XXXXX72-XXX}\<Numéro de la carte>\
  • Valeurs : identifiant du nœud NUMA alloué au RSS pour une carte réseau donnée

Dans le cas d’un système NUMA (Accès mémoire non uniforme), ce paramètre détermine l’affinité entre une carte réseau et un nœud NUMA.

Mise au point automatique de la fenêtre de réception TCP (TCP auto-tuning)

A partir de Windows Server 2008, la taille de la fenêtre de réception TCP n’est plus fixée de manière statique mais dynamique en fonction des circonstances. Cela assure donc une utilisation optimale de la bande passante mise à disposition du serveur.

La protection contre les attaques de type « SYN »

Les versions de Windows antérieures à Windows Server 2008/Windows Vista intégraient une protection contre les attaques de type “SYN” à paramétrer manuellement. Le paramétrage ne tenait pas compte du contexte d’utilisation et de charge et se comportait de manière monolithique.

A partir de Windows Server 2008/Windows Vista, ce type de protection est automatique, non désactivable mais intègre un algorithme de détection d’attaque et de gestion de la réponse en fonction des ressources système disponibles.

Protocole de Partage SMB

Windows Server 2008 R2 intègre la version la plus récente du protocole de partage de fichiers Microsoft : Server Message Block V2.1 (SMB v2.1). Celui-ci apporte des améliorations supplémentaires par rapport à la version 2.0 introduite par Windows Server 2008 et Windows Vista.

De manière générale, le protocole SMB est devenu moins verbeux et plus compact (plusieurs instructions contenues dans une transaction). Cela bénéficie grandement aux performances, en particulier à travers des connexions WAN.

Toutefois, pour tirer parti de ces dernières améliorations, une version récente de Windows sur le poste client est requise. Le tableau ci-dessous reprend les différentes combinaisons en fonctions des versions serveur et client.

Versions Client/Serveur Version précédentes de Windows

Windows Vista SP1/

Windows Server 2008

Windows 7/Windows Serveur 2008 R2
Version précédentes de Windows SMB v1 SMB v1 SMB v1

Windows Vista SP1/

Windows Server 2008

SMB v1 SMB v2.0 SMB v2.0
Windows 7/Windows Serveur 2008 R2 SMB v1 SMB v2.0 SMB v2.1

 

Options de paramétrage du protocole SMB

TreatHostAsStableStorage

  • HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\(REG_DWORD)
  • Valeurs : 0 (défaut) ou 1

Ce paramètre détermine la manière dont le serveur va ou non effectuer les commandes de type « Write Flush ». Dans le cas d’un serveur protégé contre les pertes de données (panne de courant, défaillances empêchant les écritures mises en cache…), l’activation de ce paramètre peut abaisser  la latence dans les communications client/serveur en réduisant le nombre d’opérations.

AsynchronousCredits

  • HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\(REG_DWORD)
  • Valeurs : 512 (défault) ou plus

Ce paramètre contrôle le nombre maximum de commandes SMB asynchrones simultanées pour une même connexion. Augmenter cette valeur peut s’avérer bénéfique si le serveur de fichiers  en question héberge des fichiers servis par l’intermédiaire d’un serveur Web (IIS) car celui-ci pourrait devoir servir un grand nombre de fichiers simultanément en exploitant la même connexion. Il en va de même pour d’autres applications effectuant un grand nombre d’opérations simultanées via une même connexion.

Smb2CreditsMin and Smb2CreditsMax

  • HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\(REG_DWORD)
  • Valeurs pour Smb2CreditsMin 64 (défaut) ou plus
  • Valeurs pour Smb2CreditsMax : 1024 (défaut) ou plus

Ces paramètres permettent de contrôler la fourchette du nombre d’opérations permises pour un client donné. Si les ressources du serveur le permettent, augmenter cette fourchette permet de supporter un plus grand nombre d’opérations simultanées.

MaxThreadsPerQueue

  • HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\ (REG_DWORD)
  • Valeur: 20 (défaut) ou plus

Ce paramètre contrôle le nombre de threads alloués afin de servir des requêtes concurrentes. Un nombre plus élevé de threads permet d’augmenter les possibilités de montée en charge à condition que le nombre de processeurs ou cœurs le permette.

RequireSecuritySignature

  • HKLM\system\CurrentControlSet\Services\LanmanServer\Parameters\(REG_DWORD)
  • Valeurs : 0 (défaut) ou 1

Le protocole SMB intègre une fonctionnalité de vérification de l’intégrité des données grâce à une signature sur le transfert de celles-ci. L’activation de cette fonction sur le serveur obligera les clients à s’y conformer ce qui entrainera une surcharge côté client et côté serveur. Il est donc préférable de l’activer uniquement si les impératifs de sécurité l’imposent.

Signature SMB

Le protocole SMB intègre un mécanisme garantissant l’intégrité des informations transférées. Pour ce faire, une signature est appliquée sur les transactions effectuée par le protocole.

Le calcul et l’application de ces signatures peuvent entrainer une diminution des performances. Si les conditions de sécurité le permettent, il peut donc s’avérer intéressant de désactiver cette fonction. L’article de la base de connaissances Microsoft suivant détaille la fonction en question ainsi que son paramétrage : https://support.microsoft.com/kb/887429/fr.

Haut de page | Haut de page

Processeur

Gestion de l’alimentation

Windows Server 2008 R2 propose 3 plans de base de gestion de l’alimentation : économique, équilibré ou haute performance. A moins de devoir recourir à une réduction drastique de la consommation, il est préférable d’opter pour le plan équilibré, voire haute performance si la charge l’impose. Ce dernier provoquant évidemment une consommation accrue.

La commande powercfg /energy permettra de déterminer le plan le plus adapté.

Options de paramétrage liées aux processeur(s)

AdditionalCriticalWorkerThreads

  • Chemin: HKLM\System\CurrentControlSet\Control\SessionManager\Executive\(REG_DWORD)
  • Valeurs: 0 (défaut) ou plus

Cette option contrôle l’accroissement du nombre de threads ajoutés à ceux par défaut tournant en mode noyau utilisés pour les opérations de lecture par avance et d’écriture différée. L’augmentation de ce paramètre permet d’augmenter les possibilités de montée en charge à condition que le nombre de processeurs ou cœurs le permette.

Haut de page | Haut de page

Options de paramétrage diverses

ValidateKdcPacSignature

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters(DWORD)
  • Valeur: 1 (défaut) ou 0

Protocole d’authentification prépondérant à partir de Windows 2000, Kerberos intègre un mécanisme de vérification de l’intégrité des habilitations définies pour chaque utilisateur authentifié lorsqu’il ouvre une session sur un serveur et un service donné.

Sur Windows Server 2008 R2, ce mécanisme est désactivé par défaut. A moins que les contraintes de sécurité l’obligent, il est préférable de laisser cette configuration en l’état sous peine de provoquer des allers retours supplémentaires entre le serveur et le contrôleur de domaine lors de l’ouverture de sessions distantes (Network Logon).

Les Elements Exogènes

Certains éléments installés sur Windows Server 2008 R2 peuvent se révéler déterminants pour les performances :

  • Les solutions d’Anti-virus et d’anti logiciels malicieux
  • Les solutions de protection réseau, de type pare-feu etc…
  • Les solutions de gestion de la bande passante : QoS…

Il est donc déterminant de tester la configuration finale avec et sans ces éléments, afin de bien identifier leurs incidences sur le niveau de performance. La plupart intègre un ou plusieurs composants tournant en mode noyau (pilote etc…), il est donc recommandé d’effectuer des tests d’innocuité en désinstallant ceux-ci et non pas en désactivant simplement une option dans le panneau de configuration, par exemple.

Haut de pageHaut de page