La Fibre

Télécom => Réseau => testdebit Comment tester son débit ? => Discussion démarrée par: vivien le 25 juin 2011 à 11:12:34

Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 25 juin 2011 à 11:12:34
(https://lafibre.info/images/tuto/201106_impact_du_ping_en_fonction_du_systeme_exploitation.png)

Les performances de Windows Vista sont identiques à celles de Windows 7.
Les performances de MacOS X 10.5 ou supérieur sont proche de Linux Ubuntu.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 25 juin 2011 à 11:21:30
Vous l'avez compris, la fenêtre de réception TCP (RWin) est la cause de la limitation de débit observé avec Windows.

Windows XP à une RWin fixe qu'il est possible de modifier via la base de registre.
Attention : Une RWin trop importante peut faire s'écrouler les débits : Les données envoyées et non acquittées peuvent être stockés dans des buffer sur des équipements du réseau (ou du modem) et si la capacité de ces buffers est dépassé, de nombreux paquets seront supprimés, entraînant de nombreuses ré-émissions et une chute du débit utile.

Les systèmes d'exploitations modernes ont une RWin dynamique : Si la connexion est bonne et le permet alors la RWin augmente. Si la connexion ne permet pas de RWin importante, la RWin n'augmente pas. En cas de pertes de paquet, la RWin peut même diminuer.

La limitation à 255 Ko maximum de la Rwin de Windows Vista et Windows 7 est lié à une limitation des API WinINet et WinHTTP. Il est complexe du supprimer cette limitation (je pense vous expliquer la méthode dans un prochain post, cela nécessite plusieurs modifications dans la base de registre).

(https://lafibre.info/images/logo/logo_FileZilla_50.png) FileZilla (http://filezilla-project.org/download.php) est un client FTP qui est développé pour na pas utiliser la RWin du système d’exploitation. A partir de Windows XP SP1, il est possible pour une application de modifier la RWin qu'elle va utiliser. La RWin de FileZilla est de 4 Mo fixe avec Windows XP et dynamique avec un maximum de plusieurs Mo avec Windows Vista et Windows 7.

(https://lafibre.info/images/tuto/RWin.png)
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 12 août 2011 à 22:33:04
Il n'est nécessaire de régler la MTU que pour les FAI qui font du PPPoE (PPPoE seul prend 6 octets, en cas de LNS, le MTU baisse de 20 octets).

Avec du PPPoA ou de l'IPoE (Free dégroupé) ou encore de l'IPoA (Bouygues Telecom dégroupé Dolmen et dégroupé OVH), la MTU est de 1500.

Dans le cas de mes tests, j'ai réalisé le graphe en me mettant dans un cas idéal : le client est relié directement au serveur. Je fais varier la latence avec un PC équipé de NetEm (https://lafibre.info/tutoriels/generer-des-pertes-de-paquets/) qui j'insert entre le client et le serveur. La MTU est donc de 1500.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: DomZ le 13 août 2011 à 16:35:17
La limitation à 255 Ko maximum de la Rwin de Windows Vista et Windows 7 est lié à une limitation des API WinINet et WinHTTP.
Il y a sûrement une raison technique qui fasse que Microsoft ait "bridé" le RWin, sinon pourquoi aurait-il fait cela ?
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 13 août 2011 à 17:03:22
Microsoft à bridé le multiplicateur de la Rwin de windows 7 à 4 (4 x 64 = 256 Ko) au cas où des entreprises auraient des vieux équipements qui ne prennent pas en compte ce multiplicateur. En effet de vieux équipements (plus en service aujourd'hui je vous rassure) ne sont pas compatible avec une Rwin > 64 Ko. En mettant un multiplicateur x128 si windows indique avoir une rwin de 256 Ko (2x128) alors l'équipement incompatible comprendra 2 Ko de Rwin. Avec un multiplicateur plus faible la perte de performances avec les équipements incompatible est plus faible. C'est donc un compromis entre les performances avec du matériel actuel et du matériel ancien qui n'est plus en service aujourd'hui.

Il faut que je réalise le tutoriel, quelques modifications dans la base de registre permet d'avoir un comportement du type Linux ou Filezilla sous windows.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: corrector le 13 août 2011 à 21:35:57
Rappelons tout d'abord que dans TCP les indications de quantité de données sont exprimées en un nombre d'octets, parce que TCP transmet des octets (pas des bits, des quadruplets, des mots). La Receive Window est une quantité de données donc un nombre d'octets.

La Receive Window effectue le contrôle de flux de TCP afin qu'un récepteur lent (ou puissant mais débordé!) ne soit pas saturé par les données reçues. Cette valeur correspond à la quantité de données que le récepteur croit pouvoir accepter dans l'immédiat. Le terme de contrôle de flux doit être pris avec des pincettes parce qu'il ne s'agit pas d'un port série où les données doivent être prises en compte impérativement pour ne pas être perdues : l'èmetteur TCP doit de toute façon garder toutes les données envoyées dont il ne sait pas qu'elles ont été reçues. Un récepteur qui annoncerait une RWin large mais qui se retrouverait saturé n'aurait qu'à ignorer les segments TCP qu'il ne sait pas gérer et l'envoyeur les retransmettrait plus lentement, en fonction de la RWin réduite annoncée.

La RWin n'est donc pas une garantie formelle de pouvoir accepter des données (heureusement), mais tout récepteur qui aurait la RWin plus gros que le ventre aurait une performance médiocre puisque l'envoyeur essaierait de saturer le récepteur en permanence.

Précisons qu'historiquement la RWin est un entier positif x codé sur 16 bits, donc limité à 64 Ko. Il n'était pas question de changer la taille du champ (donc réorganiser l'entête TCP, donc faire un TCPv2 à la place de TCPv1, comme IPv6 à la place d'IPv4) juste pour changer ça : il fallait ruser un peu pour faire rentrer plus de bits dans le formalisme de l'entête TCP, tout en maintenant la plus grande compatibilité possible : le code de TCP ne sait pas a priori si celui qui est en face est une implèmentation historique ou moderne de TCP.

Heureusement les concepteurs de TCP savaient bien dès le départ que le protocole serait perfectionné et ils ont prévu un mécanisme d'extension : les options TCP. Les options ne doivent servir qu'à des extensions qui ne sont pas obligatoires pour communiquer, sinon on aurait meilleur compte de définir un TCPv2 entièrement nouveau. (IP dispose aussi d'un tel système d'extensions optionnelles.)

Il faut donc que l'entête TCP soit compréhensible par une implèmentation historique qui regarde juste le champ RWin de 16 bits. Il faut donc (à peu près) conserver de sens ce champ.

Par ailleurs, si la possibilité de rajouter des informations par des options est précieuse, il ne faut pas non plus gaspiller la place disponible dans un paquet TCP avec une tripoté d'options encombrantes : le but est d'améliorer les performances pas de les diminuer. La possibilité de définir une option TCP "RWin vraie" codée sur plus de 16 bits qui supplanterait la RWin sur 16 bits de l'entête n'a pas été retenue, sans doute pour cette raison.

On peut remarquer que la possibilité d'indiquer une RWin de 1534111 octets exactement n'a aucun sens puisque la RWin est juste une estimation de la capacité de traitement future et pas une garantie sur la taille d'une zone mémoire réservée, donc la résolution de l'indication de la RWin n'a pas besoin d'être à l'octet près : il faut juste une précision relative correcte.

La RWin en octets peut maintenant être codée comme
RWin = x * 2**y
c'est à dire un entier multiplié par une puissance de 2.
x est codé par la RWin historique de l'entête TCP.
y est indiqué par une option TCP transmise par le récepteur TCP lors de l'ouverture de la connexion, appelé Window Scaling

Les contraintes sont donc :
1) pour un récepteur TCP x est variable mais y est une constante
2) de plus pour un TCP envoyeur historique qui ne comprend pas cette option TCP, RWin = x

Il faut donc dans ces contraintes choisir a priori une bonne valeur pour y avant qu'un seul octet soit transmis dans le TCP. Si dès que la RWin est plus grande que gRWin, on veut qu'un TCP envoyeur historique reçoive l'indication de RWin d'au moins hRWin (x >= hRWin), alors il faut limiter la valeur de y à log2 (gRWin / hRWin) ce qui limite la RWin annoncée (pour un envoyeur TCP moderne) à
x * 2**y
avec x = 64 K
et y = log2 (gRWin / hRWin)
soit RWin < 64 K * 2**log2 (gRWin / hRWin) = 64 K * gRWin / hRWin

Si on veut une performance optimale avec une implèmentation historique dès que la RWin dépasse gRWin, alors (hRWin = 64 Ko) on limite la RWin réelle à gRWin.

Si on suppose que la RWin va rarement baisser significativement, on peut prendre gRWin très grand, et donc avoir une bonne performance dans tous les cas.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Grincheux le 14 août 2011 à 06:56:52
Une partie des réponses aux questions de mon post précédent se trouve dans le post de vivien. Je viens aussi d'y découvrir qu'en plus de l'OS, certains softs optimisent les transferts.

Cela remet ma question "Optimiser, mais jusqu'où" d'actualité.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Kensei79 le 09 octobre 2011 à 15:19:30
Bonjour tout le monde,
vivien pourrais tu si il te plait nous donné la manip a effectué pour retiré la limitation de windows 7 pour le rwin, merci.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 11 octobre 2011 à 19:24:10
Non, je devrais avoir les infos demain ou après-demain.

Si je connaissais directement la manip je l'aurais donné :-)
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Kensei79 le 11 octobre 2011 à 22:11:26
C'est sympa vivien, je doute bien que c'est pas facile, j'ai effectué des recherche chez technet msdn et tout les sites les plus connu dans ce domaine, mais il n'y figure pas la manip.
J'espere avoir une reponse demain et que tu arrive a obtenir quelque chose, si non ben on aura pas le choix dans resté a notre sort LoL.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Kensei79 le 14 octobre 2011 à 23:38:26
Salut vivien, toujours pas de nouvelle?
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Kensei79 le 19 octobre 2011 à 21:07:46
Salut vivien, tu n'a toujours pas pu recupéré la manip?
Merci d'avance pôur la reponse.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Pinky le 12 juillet 2012 à 16:37:33
Vivien,

Le site 100ms.lafibre.info est ko, est-il toujours possible de faire des tests de débit avec ce ping supplèmentaire ?
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: corrector le 12 juillet 2012 à 16:38:57
100ms.lafibre.info n'est pas ko, le domaine n'existe plus.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 14 juillet 2012 à 14:04:28
Pour répondre à votre besoin https://testdebit.info (https://testdebit.info) a maintenant une colonne de plus : +90ms

Les fichiers avec +90ms ont un ping supplèmentaire de 90ms.

Il est également possible de se connecter en ftp sur 90ms.testdebit.info pour télécharger des fichiers en FTP et uploader (dans le dossier montant)

Sinon, il est possible de simuler simplement de la latence : Tutoriel pour générer des pertes de paquets / latence / gigue avec NetEm (https://lafibre.info/tutoriels/generer-des-pertes-de-paquets/).
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Pinky le 16 juillet 2012 à 19:13:46
Nickel, merci Vivien !
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Slaash le 02 avril 2013 à 20:57:30
Salut vivien, tu n'a toujours pas pu recupéré la manip?
Merci d'avance pôur la reponse.
Je pense que la réponse se trouve dans cette page : http://www.speedguide.net/articles/windows-7-vista-2008-tweaks-2574 (http://www.speedguide.net/articles/windows-7-vista-2008-tweaks-2574)

A voir du côté de "Disable Windows Scaling heuristics" et de "Compound TCP".

Si quelqu'un de plus expérimenté que moi peut confirmer... :)
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Pilou42 le 21 avril 2013 à 00:42:12
Merci pour le lien.
D'après ce que j'ai lu, et avec quelques recherches google, il semble qu'on ne puisse pas changer la Rwin dans Windows 7. Je ne sais pas si c'est lié à ça, mais lorsque je fais un test de téléchargement sur le serveur de test de lafibre, je ne dépasse pas 30Mo/s par fichier. Si je lance plusieurs fichiers simultanèment, j'arrive à 120Mo/s.


Également, je ne sais pas si c'est lié à la RWin, mais le ping a bien une incidence sur les téléchargements. Lorsque je télécharge sur le site 90ms.testdebit.info, avec IE 10 et Google Chrome, le téléchargement d'un fichier se fait bien à 30 Mo/s; en revanche, avec Firefox et Opera, je ne dépasse pas 2 Mo/s.
Donc en plus des limites du système d'exploitation, il semble que certains logiciels aient également des limites.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 21 avril 2013 à 09:36:04
IE 10 sous Windows 8 (je n'ai pas fais les tests sour Windows 7) et Chrome sous tous les Windows n'utilise pas les composants TCP/IP de Windows.

Pour Firefox et Opéra (et IE9 sous Windows 7), c'est bien les composants TCP/IP de Windows qui limitent la Rwin et donc le débit. La Rwin est en effet limitée à 255 Ko maximum avec le composant WinINet. C'est une limitation volontaire de Microsoft (j'ai ouvert un incident il y a quelques années).

Je trouve cela fort que Windows 8 bride les débits de Firefox / Opéra (la limitation à 255 Ko est sous la responsabilité de Microsoft) mais pas IE 10.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Bensay le 10 mai 2013 à 10:42:39
Et non pas de Google Chrome d'après ce que je comprends ?

Bensay
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 10 mai 2013 à 12:15:26
Non, Chrome utilise ses propres librairies pour se connecter a Internet : déjà avec Windows Vista / 7, il n'étais pas impacté par les pb de performance de la pile TCP/IP de Microsoft.

Je ferais de nouveaux tests lors de la sortie de Windows 8.1 avec un comparatif complet avec différents OS et Navigateurs.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Pilou42 le 10 mai 2013 à 13:10:22
Personnellement, même avec Google Chrome, un téléchargement (avec une seule connexion TCP) ne peux pas dépasser 30 Mo/s sous Windows 7 64 bits lorsque je télécharge sur un serveur performant comme testdebit.info. Lorsque je passe par un serveur Linux (c'est à dire que je lance le téléchargement sous Windows mais il passe par une passerelle Linux), là, j'arrive à dépasser les 100 Mo/s.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: kgersen le 10 mai 2013 à 14:27:28
"c'est à dire que je lance le téléchargement sous Windows mais il passe par une passerelle Linux" je comprend pas bien le sens la.

Sinon la limite de 30 Mo/s ressemble fortement a la limite moyenne en NAT des routeurs gigabit grand public (hormis ceux qui ont de accélération matérielle)
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Pilou42 le 10 mai 2013 à 18:33:05
En fait, avec Free, je peux récupérer Internet sans passer par la Freebox, et donc sans NAT, en récupérant le vlan 836. Lorsque je le fais avec Windows, mes téléchargements plafonnent à 30 Mo/s par connexion TCP.
Sous Linux, je n'ai pas cette limitation.

Lorsque j'utilise Linux pour récupérer la connexion (le Vlan 836) et que je fais de la NAT vers un ordinateur Windows, ce PC n'est plus bridé à 30 Mo/s et peut dépasser les 100 Mo/s.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: BadMax le 10 mai 2013 à 19:18:39
Euh tu peux etre plus clair ?

Cas 1 : le Vlan836 est connecté sur le Windows qui reçoit directement le trafic Internet -> bridage à 30Mo/s

Cas 2 : le Vlan836 est connecté sur le Linux qui reçoit directement le trafic Internet et fait du NAT pour le Windows -> pas de bridage

C'est ça ou bien ?
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Bensay le 10 mai 2013 à 19:30:37
Non, Chrome utilise ses propres librairies pour se connecter a Internet : déjà avec Windows Vista / 7, il n'étais pas impacté par les pb de performance de la pile TCP/IP de Microsoft.

Je ferais de nouveaux tests lors de la sortie de Windows 8.1 avec un comparatif complet avec différents OS et Navigateurs.

Ce sera avec grand plaisir,
Quelques béta circule pour cette nouvelles version de Windows 8.

à t'on plus d'info sur la façon de faire de Chrome ?

Bensay
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Pilou42 le 10 mai 2013 à 20:32:07
@BadMax: Oui c'est ça, désolé si je n'ai pas été clair, tu l'as bien reformulé ! :D
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: BadMax le 10 mai 2013 à 23:16:09
Ton problème ne serait-il pas plutot du à un problème de driver qui aurait un problème d'optimisation quand la carte réseau est en mode Vlan ?
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Pilou42 le 10 mai 2013 à 23:33:04
Ahah ! J'avais peur qu'on me pose la question ! ^^

J'ai supposé qu'une limitation de ce type n'était pas possible. Il s'agit d'un driver Intel (pour une carte Intel basée sur du Realtek). Je ne pense pas que le Vlan soit géré par une puce matérielle. Donc si c'est géré par le logiciel, on pourrait penser que je suis limité par mon processeur ou ma RAM, mais ce n'est pas le cas. Donc à part si il y a eu une limitation dans la programmation du Vlan, je ne pense pas que je sois limité par la gestion du Vlan.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 11 mai 2013 à 00:46:14
Tu pourrais faire un post pour résumer tes tests en indiquant bien le système d'exploitation et le navigateur utilisé, comment tu mesures le débit ?

Quand tu ajoute un linux, indiquer ce qu'il fait ? Je t'invite à faire sortir le trafic du linux qui fait le NAT sur un VLAN, histoire de confirmer que ce n'est pas le VLAN qui impacte les débits.

La limitation de la Rwin n'est qu'une cause parmi beaucoup d'autre qui peut brider le débit.

Il y a des choses assez étonnantes en très haut débit (> 100 Mb/s) dès que le ping est > 7ms.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Mastah le 03 juillet 2013 à 14:35:55
Le QoS (traffic shaping) est ultra important en très haut débit.
Sur pfSense j'avais des débits pourrave dès que je réalisais deux téléchargements (et plus) simultanés. A un tel débit, il y a une somme non négligeable d'Ack à faire passer et la ligne se retrouve très très vite saturé. Les routeurs classique peuvent aussi être très vite saturé, je ne parle pas des clients pas réellement prévus pour le très haut débit (cf. Windows, ...).

Avec une mise en place de traffic shaping, on peut utilisé quasiment 97% de sa bande passante en conservant un ping (et donc Ack) relativement très bon. Pour ma part en étant à 97% de charge de bande passante j'ai toujours un ping inférieur à 8ms (compris entre 5 et 8ms).
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Bensay le 20 octobre 2013 à 13:28:10
Non, Chrome utilise ses propres librairies pour se connecter a Internet : déjà avec Windows Vista / 7, il n'étais pas impacté par les pb de performance de la pile TCP/IP de Microsoft.

Je ferais de nouveaux tests lors de la sortie de Windows 8.1 avec un comparatif complet avec différents OS et Navigateurs.

Bonjour Vivien :) ,

Vu que la Release de Windows 8.1 est désormais disponible , ce comparatif est t'il toujours à l'ordre du jour ?

Cordialement

Bensay
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Thibault le 20 octobre 2013 à 13:47:07
Avec Windows 8.1 :
Test réalisé : téléchargement de 3 fichiers de 1Go par FTP, sur le même serveur avec une différence de 90 ms en plus pour le deuxième :
+0ms    : 3.5 + 3.9 + 3.6 = 11 mo/s
+90 ms : 2.5 + 1.9 + 2.5 = 6.7mo/s

Test réalisé sur une connexion 100mbs (par K-net), par câble ethernet cat6.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: vivien le 27 octobre 2013 à 11:48:05
L'informatique évolue et je vais faire un nouveau comparatif avec Windows 8.1 et les nouvelles versions de tous les navigateur.

Il faut juste que je trouve le temps et ce n'est pas gagné.
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: BadMax le 28 octobre 2013 à 10:17:24
On voit de suite l'impact du mariage et ses conséquences ;)
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Bensay le 28 octobre 2013 à 21:28:09
Et oui :)

En tout cas encore une fois , tout pleins de bonheur à vous Vivien.

Cdt

Bensay
Titre: Impact du ping sur le très haut débit en fonction du système d'exploitation
Posté par: Bensay le 13 juillet 2014 à 21:41:37
L'informatique évolue et je vais faire un nouveau comparatif avec Windows 8.1 et les nouvelles versions de tous les navigateur.

Il faut juste que je trouve le temps et ce n'est pas gagné.

Bonsoir Vivien,

As tu des nouvelles de ce coté la ?

D'autant plus avec l'arrivée des connexions 500/1Gbits/s

Cdt

Bensay