Réglage des performances réseau de Windows 7 pour LAN

8

Je souhaite régler la pile TCP de Windows 7 pour la vitesse dans un environnement LAN.

Un peu d'informations générales: j'ai un Citrix XenServer configuré avec Windows 2008R2, Windows 7 et Debian Lenny avec le noyau Citrix, les machines Windows ont des outils installés, le iperfprocessus serveur s'exécute sur un hôte différent, également Debian Lenny. Les serveurs sont par ailleurs inactifs, les tests ont été répétés plusieurs fois pour confirmer les résultats.

Bien que les tests avec iperf2008R2 puissent atteindre environ 600-700 Mbps sans aucun réglage, mais je ne trouve aucun guide ou ensemble de paramètres permettant à Windows 7 d'atteindre quelque chose de plus de 150 Mbps sans changement de taille de fenêtre TCP en utilisant le -wparamètre to iperf.

J'ai essayé d' utiliser netsh autotuiningà disabled, experimental, normalet highlyrestricted- aucun changement. Changer congestionproviderne fait rien, tout comme rsset chimney.

La définition de tous les paramètres disponibles sur les mêmes valeurs que sur l'hôte Windows 2008R2 n'aide pas.

Résumer:

  • Paramètres par défaut de Windows 2008R2: 600 à 700 Mbps
  • Debian, paramètres par défaut: 600 Mbps
  • Paramètres par défaut de Windows 7: 120 Mbps
  • Windows 7 par défaut iperf -w 65536,: 400-500Mbps

Bien que les performances manquantes de 400 Mbps soient imputables à la mauvaise carte réseau Realtek de l'hôte XenServer (je peux faire environ 980 Mbps de mon ordinateur portable au serveur iperf), cela n'explique pas pourquoi Windows 7 ne peut pas atteindre de bonnes performances sans régler manuellement la taille de la fenêtre à le niveau d'application.

Alors, comment régler Windows 7?

Hubert Kario
la source

Réponses:

2

Essayez d'activer le moteur de déchargement RSS et TCP :

netsg int tcp set global rss=enabled
netsh int tcp set global chimney=enabled 
alvosu
la source
C'est la valeur par défaut sur Windows 2008R2, cela n'aide pas.
Hubert Kario
Essayez de les désactiver.
joeqwerty
désactivé, activé aucune différence
Hubert Kario
2

Il peut s'agir d'un pilote réseau différent dans Windows 2008R2 par rapport à Windows 7. De plus, xenserver fournit-il toujours le même nic virtuel à Windows 2008R2 et Windows 7? Parce que si c'est différent, un pilote différent sera chargé.

Il peut y avoir des différences de performances.

EDIT: Je viens de me rappeler que Windows 7 par défaut a de très petits tampons d'envoi / réception. Dans certaines applications que je développais, j'ai trouvé que sous Windows 7, c'était quelque chose de pathétique comme 8 Ko. Sous Ubuntu Linux, c'est environ 120 Ko. Vous pouvez lire quelque part que la limite est de 64 Ko. Ceci est en fait incorrect pour les versions ultérieures de Windows. J'ai trouvé qu'il pouvait être réglé sur 1 Mo et plus. Bien qu'une petite augmentation des performances soit remarquée quand elle est aussi grande.

Ce lien fournit certains paramètres de réglage tcp dans le registre qui s'appliquent à l'ensemble du système. Sachez que bon nombre de ces options peuvent être remplacées par les applications elles-mêmes.

http://www.psc.edu/networking/projects/tcptune/ http://www.psc.edu/networking/projects/tcptune/OStune/winxp/winxp_stepbystep.html

Essayez d'augmenter la taille de la fenêtre et d'envoyer / recevoir des tampons. Espérons que ces paramètres de registre dans le lien s'appliquent toujours à Windows 7.

Mat
la source
Alors pourquoi si je règle une fenêtre TCP plus grande, la vitesse augmente? Et non, XenServer ne modifie pas la carte réseau présentée.
Hubert Kario
Je disais simplement que cela pourrait être une raison. Je suis développeur et je suis en train de développer une application qui pousse des charges de données à une vitesse proche du gigabit. Cependant, en développant sur virtualbox, j'ai découvert des différences de performances avec différents pilotes nic. Oui, l'augmentation de la fenêtre TCP augmentera le débit car il y aura moins de paquets de retour d'acquittement. Avez-vous arrêté toutes les autres machines virtuelles dans Xen pour vous assurer que Windows est le seul à l'utiliser?
Matt
Mon utilisation habituelle du réseau sur l'hôte Xen est inférieure à 60-90 Ko / s. Et vérifié le pilote, il charge le même. En remarque, Xen et Virtualbox sont des hyperviseurs complètement différents, l'un est de type 1, le second est de type 2. En outre, j'ai vu les mêmes problèmes de performances avec les installations nues. J'ai principalement mentionné la virtualisation pour éliminer les problèmes matériels.
Hubert Kario
Je viens juste de me souvenir de quelque chose. Détails dans la réponse principale.
Matt
1

L'autotuning TCP (ce que vous avez déjà exclu), MTU qui a déjà été traité et MMCS (planification de classe multimédia) sont généralement les grandes différences. Étant donné que MMCS n'a pas encore été résolu, essayez de le désactiver.

Assurez-vous que la mise à l'échelle automatique de votre fenêtre TCP est désactivée si vous êtes à ou près de la vitesse LAN.

Les instructions sont disponibles ici: http://smallvoid.com/article/winnt-services-mmcss.html

iivel
la source
Je ne sais pas si je l'ai changé (comme cela fait plus de 6 mois depuis) ​​mais ça a l'air prometteur, je vais l'essayer demain.
Hubert Kario
N'a pas beaucoup aidé, a amélioré les performances de 10 à 20%.
Hubert Kario
0

Vous ne devriez pas voir le pilote Realtek dans Windows comme une machine virtuelle sur Citrix XenServer. Si vous le faites, cela signifie que vous n'avez pas installé XenTools. La carte réseau Realtek que vous voyez est une carte émulée fournie par le service QEMU à l'intérieur de Dom 0 (domaine 0). Après l'installation de Windows OS, avant de faire quoi que ce soit d'autre, en particulier l'installation d'applications, vous devez installer XenTools. De plus, la vitesse est codée en dur après l'installation de XenTools (comme indiqué dans le Guide de l'utilisateur VM), car il n'y a pas de limite de vitesse sur un périphérique virtuel.

James
la source
1
de la question d'ouverture: "Realtek NIC dans l' hôte XenServer "
Hubert Kario