47 votes

Pourquoi est-ce que j'obtiens 950 Mbps en amont mais seulement 360 Mbps en aval sur Gigabit Ethernet ?

J'ai deux ordinateurs de bureau qui se parlent directement. Ils sont tous deux équipés d'adaptateurs réseau Gigabit Ethernet. C'est 1 Gbps ou 1000 Mbps. Je les ai connectés à l'aide d'un câble UTP Cat6 tout neuf de 10 mètres de long. droit et je suis assez proche de ce maximum théorique. Le gestionnaire des tâches de Windows (onglet Réseau) indique 844 - 946 Mbps dans une direction. Mais dans l'autre direction, il n'affiche que 326 à 365 Mbps.

Local: 192.168.100.152
Remote: 192.168.100.151

L'ordinateur local fonctionne sous Windows 8.1 Pro, et je l'ai connecté à distance à l'autre ordinateur qui fonctionne sous Windows Vista Ultimate.

Résultats de l'Iperf

J'ai utilisé Iperf pour effectuer quelques tests. J'ai effectué le test pendant 60 secondes à chaque fois. J'ai effectué le test 10 fois pour chaque direction de communication. J'ai ensuite dressé ce tableau avec les résultats des tests pour obtenir une moyenne.

192.168.100.152 -> 192.168.100.151          106 MB/s
192.168.100.152 -> 192.168.100.151          107 MB/s
192.168.100.152 -> 192.168.100.151          108 MB/s
192.168.100.152 -> 192.168.100.151          107 MB/s
192.168.100.152 -> 192.168.100.151          107 MB/s
192.168.100.152 -> 192.168.100.151          104 MB/s
192.168.100.152 -> 192.168.100.151          101 MB/s
192.168.100.152 -> 192.168.100.151          108 MB/s
192.168.100.152 -> 192.168.100.151          108 MB/s
192.168.100.152 -> 192.168.100.151          108 MB/s
----------------------------------------------------
Min: 101 MB/s    Max: 108 MB/s    Avg: 106.4 MB/s (851.2 Mbps)

192.168.100.152 <- 192.168.100.151          41.1 MB/s
192.168.100.152 <- 192.168.100.151          41.1 MB/s
192.168.100.152 <- 192.168.100.151          41.1 MB/s
192.168.100.152 <- 192.168.100.151          41.0 MB/s
192.168.100.152 <- 192.168.100.151          41.0 MB/s
192.168.100.152 <- 192.168.100.151          41.1 MB/s
192.168.100.152 <- 192.168.100.151          41.0 MB/s
192.168.100.152 <- 192.168.100.151          41.1 MB/s
192.168.100.152 <- 192.168.100.151          41.1 MB/s
192.168.100.152 <- 192.168.100.151          41.1 MB/s
-----------------------------------------------------
Min: 41.0 MB/s    Max: 41.1 MB/s    Avg: 41.07 MB/s (328.56 Mbps)

Ma question est la suivante : pourquoi est-ce tellement plus lent dans l'autre sens ?

Gestionnaire des tâches Windows

Voici le diagramme du réseau tel qu'il apparaît lors de l'exécution des tests dans Iperf.

a b

Prêtez attention au diagramme des deux captures d'écran suivantes !

c d

Avez-vous remarqué le passage de "1 Gbps" à "500 Mbps" dans le coin supérieur droit lorsque je suis passé de l'envoi à la réception de données. Pourquoi ce changement ? Est-ce qu'il détecte en quelque sorte l'autre port réseau en tant que moitié de 1 Gbps dans un sens, mais pourtant complet dans l'autre sens ?

Test de transfert de fichiers

J'ai effectué d'autres tests avec un fichier de données, afin d'obtenir des relevés plus réalistes de disque à disque. J'ai créé un fichier de 1 Go à cette fin. Je n'ai utilisé que les fonctions de partage de fichiers par défaut de Windows. À partir de l'ordinateur local, je me suis connecté au partage C$ sur l'ordinateur distant et j'ai fait glisser le fichier d'un côté à l'autre (saut de corde), en changeant le nom du fichier à chaque fois. J'ai chronométré tout cela au mieux de mes capacités et voici ce que j'ai obtenu.

192.168.100.152 -> 192.168.0.151    1073741824 Byte    25 s    40,96 MB/s
192.168.100.152 -> 192.168.0.151    1073741824 Byte    20 s    51.2 MB/s
192.168.100.152 -> 192.168.0.151    1073741824 Byte    16 s    64 MB/s
192.168.100.152 -> 192.168.0.151    1073741824 Byte    16 s    64 MB/s
192.168.100.152 <- 192.168.0.151    1073741824 Byte    11 s    93.091 MB/s
192.168.100.152 <- 192.168.0.151    1073741824 Byte    34 s    30.118 MB/s
192.168.100.152 <- 192.168.0.151    1073741824 Byte    11 s    93.091 MB/s
192.168.100.152 <- 192.168.0.151    1073741824 Byte    11 s    93.091 MB/s

Le débit indiqué par le diagramme de copie de fichiers de Windows raconte une autre histoire. Ici, je télécharge deux fichiers, l'un après l'autre, à deux endroits différents sur le même disque. La première copie indique 107 Mo/s soutenus à 41 %, et la seconde 98,9 Mo/s soutenus à 87 %.

e f

Cela correspond donc aux résultats que j'ai obtenus avec l'outil Iperf. Voici maintenant à quoi cela ressemble lorsque je télécharge vers l'ordinateur distant.

g h i

Elle maintient un débit de 103 Mo/s jusqu'à 73 %, avant de redescendre à 27,3 Mo/s à 82 %, puis de remonter d'un cran pour atteindre 49,1 Mo/s à 93 %.

Voici deux autres diagrammes de "montagnes russes" à l'aspect amusant.

j k

Mise à jour 1 - Vitesse du lien

J'ai essayé de désactiver l'adaptateur Wifi sur l'ordinateur distant. (L'adaptateur Wifi était déjà désactivé sur l'ordinateur local.) Je pense que c'est ce que Timtech voulait dire par ce commentaire. J'ai eu la même idée - que le fait d'avoir des adaptateurs filaires et sans fil activés en même temps limitait le débit de l'adaptateur filaire au niveau de l'adaptateur Wifi (en s'adaptant à l'adaptateur le plus lent pour des raisons de compatibilité). En effet, l'adaptateur Wifi (DWA-160 Wireless N dans ce cas) est généralement détecté comme une liaison "52 Mbps" - "104 Mbps" par l'ordinateur Vista.

Dans la capture d'écran suivante, l'ordinateur distant est configuré en tant que serveur et l'ordinateur local en tant que client (192.168.100.152 <- 192.168.100.151).

l

Mais la déconnexion de l'adaptateur Wifi de l'ordinateur distant n'a pas amélioré le faible débit de ma connexion filaire.

Et ce n'est pas tout ! Dans le gestionnaire des tâches de Windows sur l'ordinateur distant, la vitesse de liaison pour l'adaptateur câblé (LAN 1) apparaît comme "1 Gbps". Si vous vous référez aux captures d'écran ci-dessus, vous pouvez voir qu'elle est détectée comme une liaison "500 Gbps" sur l'ordinateur local. Ainsi, pour la même connexion filaire, Windows Vista indique qu'il s'agit d'une liaison de 1 Gbps, alors que dans le même temps, Windows 8.1 Pro indique qu'il s'agit d'une liaison de 500 Gbps... lequel des deux a raison alors ?

Voici à quoi cela ressemble sur l'ordinateur distant lorsque je le configure en tant que client et l'ordinateur local en tant que serveur (192.168.100.152 -> 192.168.100.151).

m

Comme vous pouvez le voir ici, environ 95 % de la liaison de 1 Gbps est utilisée. Cela correspond à 950 Mbps. C'est exactement ce que j'ai obtenu dans le test ci-dessus. Mais dans l'autre sens, c'est une toute autre histoire.

Mise à jour 2 - Duplexage et MDI-X

Comme l'ont suggéré certains d'entre vous, j'ai vérifié les paramètres duplex. L'ordinateur local et l'ordinateur distant étaient tous deux configurés en mode de négociation automatique, comme le montrent les captures d'écran ci-dessous.

n o

J'ai essayé de passer à "1.0 Gbps Full duplex" sur les deux ordinateurs. J'ai ensuite effectué le même type de tests que précédemment, en utilisant Iperf. Avec l'ordinateur local comme serveur et l'ordinateur distant comme client, j'obtiens environ 950 Mbps maximum. Avec l'ordinateur local comme client et l'ordinateur distant comme serveur, j'obtiens environ 360 Mbps.

Jetez un coup d'œil à ces captures d'écran.

p q

Ce que vous voyez ici est le diagramme pour le chargement et le téléchargement entre les deux ordinateurs. Le graphique le plus élevé (95 - 98% d'utilisation) est local à distant (amont 192.168.100.152 -> 192.168.100.151). Le graphique inférieur (~ 33 % d'utilisation) correspond à un téléchargement de distant à local (en aval 192.168.100.152 <- 192.168.100.151).

Pour tenter d'exclure tout problème lié à Auto MDI-X, j'ai branché l'un de ces adaptateurs croisés à l'une des extrémités du câble (l'ordinateur local).

r

Cela ferait certainement du câble un câble croisé. Je l'ai même fait tester avec un testeur de réseau ! Il est effectivement croisé maintenant (broches 1/3, 2/6) !

J'ai donc maintenant un vrai câble croisé entre les deux ordinateurs, et j'ai réglé manuellement "1.0 Gbps Full duplex". Pourtant, j'ai toujours le même problème. D'autres idées ? A part la mise à jour de l'ordinateur Vista (ou la réinstallation de l'ordinateur 8.1) ?

Mise à jour 3 - Limitation logicielle ou matérielle ?

Je pense que j'ai deux systèmes d'exploitation qui ne sont pas compatibles l'un avec l'autre. Il s'agit de deux systèmes Windows, mais tous les systèmes Windows ne sont pas égaux. Je vais devoir essayer d'utiliser Vista sur les deux, ou 8.1 Pro sur les deux et voir quel type de débit j'obtiens. Cela signifie qu'il faut acheter une mise à niveau. Maudite soit la société Microsoft.

Les deux ordinateurs sont d'ailleurs construits sur mesure. Voici quelques spécifications.

Local
-----
Gigabyte GA-EP45-UD3R
Intel Core 2 Quad Q9650
Intel P45
Corsair XMS2 DHX TwinX DDR2 PC6400/800MHz 4 GB
Realtek 8111C chips (10/100/1000 Mbit)
WD Caviar Black WD1002FAEX
Windows 8.1 Pro 64-bit

Remote
------
Gigabyte GA-X38-DQ6
Intel Core 2 Duo E4500
Intel X38
Corsair XMS2 DHX TwinX DDR2 PC6400/800MHz 4 GB
Dual Realtek 8111B chip (10/100/1000 Mbit)
WD Caviar Black WD1002FAEX
Windows Vista Ultimate 64-bit

Tonny a suggéré que la machine Vista pourrait utiliser une mauvaise puce Realtek. J'ai donc déterré ces spécifications. Je vois maintenant que la machine Vista utilise une révision B de 8111 alors que la machine locale utilise une révision C de la même puce. Cela signifie-t-il quelque chose ? Les deux sont clairement spécifiés pour 1000 Mbit (voir ci-dessus) par le fabricant. Se pourrait-il que le 8111B soit aussi peu performant (360 Mbps) ?

Ces disques atteignent un débit de 107 Mo/s en rafale. C'est exactement le chiffre que j'ai constaté lors du test sur l'ordinateur local. Mais même la lecture/écriture séquentielle ou aléatoire soutenue de 55 MB/s ne se traduit PAS par 360 Mbps. Cela devrait me donner environ 440 Mbps, et non les 360 Mbps que j'obtiens. Je ne pense donc pas qu'il s'agisse d'un goulot d'étranglement, d'autant plus qu'ils utilisent tous deux le même modèle de disque. De plus, l'opération de copie de fichiers est une chose, mais Iperf n'utilise pas du tout de disques, il n'utilise que la mémoire RAM pour les tests.

Mise à jour 4 - TCP Checksum Offload

Comme l'a suggéré Tonny, j'ai essayé de désactiver le déchargement de la somme de contrôle TCP (pour IPv4 et IPv6).

s t

J'ai également rétabli la fonction "Speed & Duplex" sur auto pour les deux ordinateurs. Mais cela n'a rien changé. J'ai toujours un débit faible dans un sens et élevé dans l'autre.

Mise à jour 5 - Nouvelle version du pilote

J'ai essayé de mettre à jour la version du pilote local et distant avec la dernière version téléchargée sur le site web de Gigabyte et sur le site web de Realtek.

Update path...

On local (RTL8111C):
8.1.510.2013 (2013-05-10, Microsoft)
8.20.815.2013 (2013-08-15, Realtek)

On remote (RTL8111B):
6.241.623.2010 (2010-06-23, Realtek)
6.250.908.2011 (2011-09-08, Realtek)
6.252.1109.2012 (2012-11-09, Realtek)

u v w x

J'ai toujours le même débit médiocre dans une direction.

Mise à jour 6 - Utilisation de l'unité centrale

J'ai vérifié l'utilisation du processeur. Cela ne devrait pas poser de problème. Voici ce que j'ai constaté.

On local...

Download: 4 - 10 %
Upload:   4 - 10 %
Idle:     0 -  4 %

On remote...

Download: 24 - 38 %
Upload:   10 - 25 %
Idle:      1 -  6 %

Local (download, upload, idle)...

y z aa

À distance (téléchargement, chargement, inactivité)...

ab ac ad

La télécommande utilise beaucoup plus de puissance de l'unité centrale, mais c'est aussi celle qui est équipée du Core 2 Duo le plus lent. Mais elle n'a jamais dépassé le seuil des 38 % au cours de mes tests. Ce qui est particulièrement intéressant ici, c'est qu'il utilise beaucoup plus de puissance CPU lors du téléchargement (local -> distant) que lors de l'upload (local <- distant).

Ainsi, avec un débit de 950 Mbps, il utilise 38 % et à 360 Mbps, il utilise 25 %. De plus, l'utilisation des cœurs n'est pas équilibrée, il utilise un cœur plus que l'autre. Je ne sais pas trop quelle conclusion en tirer. L'ordinateur local n'affiche pas l'utilisation des cœurs, je ne peux donc pas la comparer. Mais l'utilisation du CPU est uniforme sur l'ordinateur local (10 % sur le téléchargement/upload).

Mise à jour 7 - Nouvelle carte réseau Intel Gigabit

J'ai installé un tout nouvel adaptateur réseau Gigabit PCI-Express d'Intel pour remplacer le Realtek RTL8111B intégré à l'ordinateur distant, qui est censé être trop lent en téléchargement. Le numéro de produit de l'adaptateur Intel est EXPI9301CT. Cet adaptateur est censé être très bon d'après les commentaires que j'ai lus. Je veux juste écarter cette possibilité de goulot d'étranglement.

ae

J'ai effectué quelques tests avec Iperf pour Windows et voici les résultats.

Local (download, upload)...

af ag

A distance (téléchargement, upload)...

ah ai

En moyenne, cet adaptateur est un peu plus lent que l'adaptateur Realtek. Je pense que son overhead est plus petit que celui de Realtek et que le débit continu est donc plus stable. Mais je n'obtiens toujours qu'environ 360 Mbps dans une direction et 950 Mbps dans l'autre, même avec cet adaptateur Intel.

local: 192.168.100.152 (win 8, realtek 8111c)
remote: 192.168.100.154 (vista, intel desktop ct)

192.168.100.152 -> 192.168.100.154    113 MB/s
192.168.100.152 -> 192.168.100.154    104 MB/s
192.168.100.152 -> 192.168.100.154    103 MB/s
192.168.100.152 -> 192.168.100.154    104 MB/s
192.168.100.152 -> 192.168.100.154    102 MB/s
192.168.100.152 -> 192.168.100.154    104 MB/s
192.168.100.152 -> 192.168.100.154    101 MB/s
192.168.100.152 -> 192.168.100.154    102 MB/s
192.168.100.152 -> 192.168.100.154    101 MB/s
192.168.100.152 -> 192.168.100.154    104 MB/s
----------------------------------------------
Max: 113 MB/s    Min: 101 MB/s    Avg: 103.8 MB/s

192.168.100.152 <- 192.168.100.154    42.2 MB/s
192.168.100.152 <- 192.168.100.154    41.2 MB/s
192.168.100.152 <- 192.168.100.154    41.1 MB/s
192.168.100.152 <- 192.168.100.154    43.0 MB/s
192.168.100.152 <- 192.168.100.154    42.3 MB/s
192.168.100.152 <- 192.168.100.154    42.3 MB/s
192.168.100.152 <- 192.168.100.154    40.2 MB/s
192.168.100.152 <- 192.168.100.154    40.9 MB/s
192.168.100.152 <- 192.168.100.154    41.3 MB/s
192.168.100.152 <- 192.168.100.154    42.0 MB/s
-----------------------------------------------
Max: 43.0 MB/s    Min: 40.2 MB/s    Avg: 41.65 MB/s

Je n'ai aucune idée de la raison pour laquelle il a atteint 113 Mo/s lors du premier test, de local à distant. Il a conservé cette vitesse pendant toute la durée du test, le graphique étant presque plat à 113 Mo/s. Comme précédemment, j'ai utilisé un intervalle de 60 secondes pour chaque essai. Lors du test suivant, la vitesse est tombée à 104 MB/s.

Comme vous pouvez le constater par ces valeurs, j'ai toujours le même débit avec cet adaptateur Intel qu'avec l'adaptateur Realtek intégré. Je pense donc que l'on peut dire que cela n'a rien à voir avec l'adaptateur lui-même. Nous pouvons donc cesser d'accuser le RTL8111B d'être une puce inférieure/moins performante que le RTL8111C que l'on trouve sur l'autre carte mère. Cela ressemble de plus en plus à un problème de logiciel/OS/configuration, ou les trois à la fois.

Mise à jour 8 - Excellents résultats avec Ubuntu LINUX

Après avoir épuisé toutes les autres options, j'ai finalement décidé de faire quelques tests avec Linux, et j'ai obtenu d'excellents résultats. J'ai utilisé un système Ubuntu Linux 13.10 Live et Iperf pour Linux (version 2.0.5-3) sur une machine locale et distante. Voici les résultats.

=======================================================
REALTEK 8111C <-> REALTEK 8111B | IPERF ON UBUNTU LINUX
=======================================================

local: 192.168.100.152
remote: 192.168.100.151

192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
192.168.100.152 -> 192.168.100.151    112 MB/s
----------------------------------------------
Max: 112 MB/s    Min: 112 MB/s    Avg: 112 MB/s

192.168.100.152 <- 192.168.100.151    110 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
192.168.100.152 <- 192.168.100.151    110 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
192.168.100.152 <- 192.168.100.151    111 MB/s
----------------------------------------------
Max: 111 MB/s    Min: 110 MB/s    Avg: 110.8 MB/s

Local (download, upload, idle)...

aj ak al am an

Comme vous pouvez le voir, j'obtiens le même débit dans les deux sens lorsque j'utilise Ubuntu. Est-ce parce que j'utilise le même système d'exploitation sur les deux machines, ou est-ce autre chose ? Est-ce que j'obtiendrais le même débit si j'avais les mêmes versions de Windows sur les deux machines ? Je ne comprends pas pourquoi cela aurait de l'importance si j'utilisais une version de Windows légèrement dépassée, à savoir Vista, sur une machine et la version la plus récente sur l'autre.... Je veux dire que Vista est toujours un système d'exploitation actuel et soutenu par Microsoft. Windows XP est une autre histoire.

Mais je sais qu'ils font tout ce qu'ils peuvent pour tuer Vista. Par exemple, la dernière version d'Office 2013 n'est intentionnellement pas prise en charge par Windows Vista. Je suis sûr que Microsoft souhaite que Vista n'ait jamais existé. Tout comme ils souhaiteront que Windows 8.0 n'ait jamais existé. Mais je suis généralement aussi tenace qu'eux, et je ne mets à jour mes installations Windows que lorsque c'est absolument nécessaire.

La question est donc de savoir comment obtenir le même débit dans les deux sens avec deux versions différentes de Windows. Windows Vista devrait être capable d'atteindre une vitesse de l'ordre du gigabit - ce n'est pas un système d'exploitation vieux de 20 ans, ce n'est pas de Windows 95 dont nous parlons. Vista est un système d'exploitation moderne. Je n'ai pas encore testé la même version de Windows sur les deux machines. Il se peut qu'il y ait une différence dans l'implémentation de TCP ou autre entre les deux versions du système d'exploitation. Si c'est le cas, je serai probablement obligé de mettre à jour la machine Vista. Soit cela, soit passer à Linux. Je ne suis pas prêt à payer plus pour moins. Pourquoi devrais-je mettre à jour Windows juste pour obtenir un débit de Gigabit dans les deux sens ?

Mise à jour 9...

Câble

J'ai essayé d'inverser le câble. J'ai obtenu les mêmes résultats que précédemment. J'ai également acheté un nouveau câble de raccordement Cat 6 et je l'ai essayé. Les résultats du test de débit étaient les mêmes. Le câble n'est donc pas en cause. Je n'ai utilisé que des câbles de raccordement préterminés/moulés. Le câblage devrait donc être correct. Mais j'ai l'intention de terminer mes propres câbles d'installation plus tard.

FW et AV

En ce qui concerne le pare-feu (FW) et l'antivirus (AV), je n'utilise aucun logiciel FW ou AV tiers. Je n'ai que le pare-feu Windows et Security Essentials. Je les ai désactivés sur les deux machines. Les résultats du test de débit sont les mêmes qu'auparavant.

ao ap

aq ar as

Test de vitesse du réseau local

J'ai installé LAN Speed Test Lite 1.3 sur la machine locale. Je crois que le test est effectué entre la mémoire de la machine locale et le lecteur de disque de la machine distante. Je n'en suis pas certain. Mais il demande un chemin de partage sur la machine distante. J'ai utilisé o$ share sur la machine distante.

at au av

Upload: 427 Mbps
Download: 420 Mbps

Je ne fais pas trop confiance à ces résultats. Si vous regardez le graphique, vous pouvez voir qu'il varie beaucoup tout au long du test. Il s'agissait d'un test "successif", c'est-à-dire un test d'écriture (téléchargement) d'abord, puis un test de lecture (téléchargement). Il est évident que si vous effectuez un test de téléchargement simultané, le débit global sera plus faible. Mais ces tests ne m'intéressent pas. Jusqu'à présent, je n'ai fait que des tests "successifs" avec des tests de transfert de fichiers dans Windows (partage de fichiers/smb) et dans Iperf.

Je n'ai pas effectué de tests de mémoire à mémoire avec LAN Speed Test parce qu'il nécessite l'utilisation d'un programme appelé LST Server sur l'ordinateur distant, et ce programme nécessite un enregistrement pour pouvoir être utilisé.

Mise à jour 10...

Tests des lecteurs de disques

J'ai utilisé Crystal Disk Mark 3.0.3 pour tester les lecteurs de disques. Voici les résultats.

Local disk: 118 MB/s read, 113 MB/s write
Remote disk: 70 MB/s read, 69 MB/s write

Il s'agit de vitesses de lecture et d'écriture séquentielles basées sur 5 exécutions et une charge de 1000 Mo.

Il s'agit du disque local (marquage du disque, lecture, écriture)...

aw ax ay

Et voici le disque distant...

az

Mais je ne comprends pas... ces résultats semblent contradictoires.

D'accord, le disque local peut lire à 118 MB/s, ce qui permettrait le téléchargement signalé d'environ 100 MB/s. Mais le disque distant ne pourrait pas le recevoir s'il n'est capable d'écrire qu'à 69 MB/s. Mais par un tour de magie, j'obtiens toujours un peu plus de 100 MB/s en upload en moyenne.

L'inverse est plus logique. Si le disque distant peut lire à 70 MB/s et le disque local écrire à 113 MB/s, le téléchargement ne devrait pas être plus rapide que 70 MB/s. J'obtiens en moyenne un téléchargement d'environ 40 MB/s. Cela semble raisonnable.

Je ne peux donc rien conclure de ces résultats. Je veux dire que le lecteur de disque de l'ordinateur local est à peine utilisé. C'est aussi le disque qui contient le système d'exploitation et c'est la seule partition de ce système. Le disque distant, quant à lui, est presque plein, et il est également divisé en plusieurs partitions. Cependant, il n'est pas utilisé pour le système d'exploitation. J'ai choisi la lettre de lecteur O: pour le test ici, car c'est la partition qui a le plus d'espace libre.

(Notez que j'ai utilisé la lettre de lecteur C: dans les tests précédents, qui se trouve sur un disque Seagate complètement séparé contenant le système d'exploitation de la machine distante. Ces résultats ne sont donc pas comparables).

Mise en cache de l'écriture

Avec la mise en cache de l'écriture sur le disque activée, j'ai obtenu les résultats suivants.

Local to remote: 106 MB/s
Remote to local: 42.2 MB/s

J'ai ensuite désactivé la mise en cache de l'écriture sur tous les lecteurs du disque distant et du disque local.

ba bb

Je n'ai pas redémarré car aucun redémarrage n'a été demandé pour que les changements prennent effet. J'ai ensuite obtenu les résultats suivants.

Local to remote: 106 MB/s
Remote to local: 42.1 MB/s

Il n'y a pratiquement pas eu de changement. Il n'y a pas eu de redémarrage, et aucun redémarrage n'a été demandé.

Paquet QOS

J'ai ensuite désactivé QOS Packet Scheduler pour l'adaptateur approprié sur la machine distante, puis sur la machine locale.

bc bd

Local to remote: 107 MB/s
Remote to local: 41.9 MB/s

Il n'y a pas de changement significatif à ce niveau. Là encore, aucun redémarrage n'a été demandé.

Paquets jumbo

J'ai ensuite activé les paquets jumbo. J'ai utilisé le paramètre 4 GB car 4 KB est la plus grande taille MTU supportée par les deux machines.

be bf

Local to remote: 105 MB/s
Remote to local: 33.3 MB/s

Ici, le téléchargement (local vers distant) n'a pas été affecté, mais le débit de téléchargement a été réduit de manière significative. Aucun redémarrage n'a été demandé, mais j'ai décidé de redémarrer les deux machines quand même, juste pour faire bonne mesure. J'ai ensuite refait les mêmes tests et j'ai obtenu les résultats suivants.

Local to remote: 117 MB/s
Remote to local: 33.2 MB/s

L'upload est donc encore plus rapide, mais le download est toujours plus lent qu'avant ces changements, même après le redémarrage. Je me serais attendu à ce que les deux augmentent un peu. Qu'est-ce que cela signifie ?

6voto

Chris Olstrom Points 71

Sur la base de votre réponse :

@ewhac Taille de la fenêtre TCP sur la machine locale la taille de la fenêtre sur la machine distante. La valeur par défaut est de 0,06 Mo sur la machine locale (win 8) et 0.01 MB sur la machine distante (vista). Doivent-ils avoir la même valeur ? même valeur ? Comment puis-je lui demander de deviner le MSS ? Est-ce que ce serait l'option -m ("print maximum segment size") ? En général, je ne définis rien de cela. Pourquoi devrais-je le faire ? - Sammy 30 Nov à 21:39

La taille de la fenêtre TCP représente la quantité maximale de données que la pile TCP peut envoyer en aveugle sur le câble avant de s'arrêter et d'attendre de recevoir des accusés de réception de la machine distante - en d'autres termes, la quantité maximale de trafic non accusé de réception sur le câble. Le fait que la fenêtre TCP sur la machine Vista soit beaucoup plus petite que sur la machine Windows Se7en confirme la théorie selon laquelle vous ne remplissez pas suffisamment le tuyau avant de vous arrêter et d'attendre les ACK.

Par conséquent, la première chose à faire est d'augmenter la taille de la fenêtre TCP sur la machine Vista à l'aide de la commande -w argument. 0,01 Mo est une unité peu utile ; je suppose qu'il s'agit de 16 Ko. Commencez donc par 16 Ko et effectuez un test :

iperf -c -w 16K ...

Doublez la taille de la fenêtre et répétez le test :

iperf -c -w 32K ...

Avec un peu de chance, vous devriez observer une augmentation de la vitesse. Continuez à doubler la taille de la fenêtre jusqu'à ce que vous ne constatiez plus d'augmentation significative de la vitesse.

5voto

Anis Abboud Points 729

Comme indiqué précédemment, vous devrez modifier la taille de la fenêtre TCP dans iperf afin d'obtenir un débit plus élevé sur des liens à faible latence et à grande vitesse. Les différentes versions de Windows (ou d'iPerf) peuvent avoir des tailles de fenêtre par défaut différentes. Essayez "-w 256k" pour commencer sur à la fois le client et le serveur.

Pouvez-vous confirmer la direction de la flèche de vos graphiques ? Dans iPerf, les données sont poussées de du client vers le serveur (contrairement à ce que je pense habituellement).

Vous pouvez exclure les disques durs de la liste des causes, car iPerf ne touche pas les disques durs.

Je pense que vous avez déjà vérifié que vous utilisez les derniers pilotes NIC. Il ne devrait pas être nécessaire de régler manuellement la vitesse/le duplex. Il en va de même pour les trames jumbo : elles ne valent pas la peine d'être utilisées avec du matériel moderne.

Vérifiez que les fonctions LSO (Large Send Offload) et LRO (Large Receive Offload) sont activées sur les deux cartes réseau. Certains pilotes de carte réseau utilisent des noms différents (ou des options multiples qui contrôlent ce comportement). En général, elles sont toutes activées par défaut.

3voto

intA Points 201

Je pense que vous avez besoin de lire un peu plus sur le fonctionnement de l'iperf. Si vous ne définissez pas la taille correcte de la fenêtre tcp, vos résultats varieront considérablement. Je crois qu'il s'agit du commutateur -w. Ce site web vous aidera à calculer la taille optimale de la fenêtre TCP. Vous devez connaître le RTT et la bande passante pour le calculer. http://www.kehlet.cx/docs/tcpwin.php

Essayez également d'autres outils tels que "LAN Speed test" lite qui effectue des transferts ascendants et descendants entre les parts à chaque extrémité. Ses résultats sont assez proches dans les tests que j'ai effectués avec lui. Veillez également à vérifier la vitesse maximale d'exécution de vos disques durs.

3voto

majika Points 31

Quelques points qui pourraient vous aider La pile TCP IP est désormais implémentée différemment dans les versions postérieures à Windows 7. Je regarderais de près mes optimisations TCP, il n'y a peut-être pas grand chose à faire entre vos deux boîtes mais cela vaut quand même la peine de modifier certains paramètres sur votre boîte vista.

L'utilisation de netsh int tcp set global congestionprovider=ctcp a été amortie. Pour définir ou modifier le fournisseur de congestion, il convient d'utiliser la commande suivante :

Lire l'article ici : http://forums.speedguide.net/showthread.php?280646-When-will-TCP-Optimizer-support-Windows-8-amp-Windows-Server-2012

netsh int tcp set supplemental custom 300 10 ctcp disabled 50 Puis tapez : netsh int tcp set supplemental custom

Pour plus de détails sur la commande ci-dessus, il suffit de taper : netsh int set supplemental

Pour vérifier quel fournisseur de congestion vous utilisez actuellement, procédez comme suit : netsh int tcp show supplemental

Mais seul Win Server 2012 peut créer des modèles personnalisés CTCP peut être un problème.

La mise à l'échelle automatique peut également être un facteur.

Cela vaut peut-être la peine de jeter un coup d'œil à vos pilotes, qui ont peut-être besoin d'une mise à niveau ou d'un déclassement, et de voir lesquels fonctionnent le mieux.

On peut également penser aux tailles de paquets écrites sur le disque dur Quelle est la taille des secteurs de votre disque dur formatés à 512b ~ 64K, cela pourrait être un goulot d'étranglement pour la mise en cache Cela vaut la peine d'être pris en considération lors de l'utilisation de vitesses en GBit - ou de tester avec un disque SSD à la place !

Avez-vous envisagé d'activer les paquets Jumbo (si cela s'applique à votre carte d'interface réseau) ?

2voto

Mike Pennington Points 2809

Excellents résultats avec Ubuntu LINUX

Cela vous semble assez familier... vous êtes inexplicablement mauvais iperf sous Windows, mais le même matériel fonctionne parfaitement sous Linux.

Après avoir mené cette bataille à plusieurs reprises, j'en suis arrivé à la conclusion que iperf dans Windows est défectueux . Je ne sais pas pourquoi... honnêtement, j'ai cessé de m'en soucier parce que je sais que je peux toujours obtenir des résultats sains avec linux.

Si vous voulez savoir pourquoi vous obtenez de si mauvaises performances, ne cherchez pas plus loin que l'application.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X