web-dev-qa-db-fra.com

Comment réduire TCP latence pour les jeux?

J'utilise Ubuntu pour les jeux. Dans les jeux compétitifs, chaque milliseconde compte.

Je sais que beaucoup de personnes qui utilisent Windows utilisent quelque chose appelé Leatrix Latency Fix , qui est essentiellement un script qui modifie TCPAckFrequency. Cela réduit la latence des jeux en ligne en augmentant la fréquence des accusés de réception TCP envoyés au serveur de jeux.

Sur Mac OS X, vous pouvez obtenir cet effet en exécutant Sudo sysctl -w net.inet.tcp.delayed_ack=0.

J'ai entendu dire que le noyau Linux possède une pile IP très avancée et qu'il peut utiliser de nombreux algorithmes différents TCP permettant d'éviter les encombrements. Je ne sais pas si cela a quelque chose à voir avec la fréquence d'acquittement de TCP. J'ai également entendu dire que le noyau Linux ajuste automatiquement les paramètres TCP/IP pour optimiser les performances.

Puis-je faire quelque chose pour réduire la latence TCP/IP?

6
Anonymous

Vous devez vous assurer que tout ce qui se trouve en dehors de votre ordinateur se comporte bien.

Exécutez un traceroute sur le serveur de jeu. Où la latence augmente-t-elle? Est-ce normal ou cela se passe-t-il dans des endroits où cela ne devrait pas?

Par exemple, un saut de New York à Londres va ajouter de la latence. Cinquante millisecondes environ après le premier bond de votre routeur signifient probablement un équipement défectueux dans votre dernier kilomètre; double-cocher avec vos voisins.

Combien de temps de latence avez-vous pour votre routeur? Passer d'une connexion Wi-Fi à une connexion filaire n'est peut-être pas toujours possible, mais cela pourrait vous faire gagner environ cinq millisecondes.

Est-ce que votre ordinateur est assez bon pour le jeu? Parfois, le jeu aura une performance sous-optimale sous Wine, et bien, si un jeu ne peut pas traiter les paquets dans un tour temps de trajet (votre temps de latence vers le serveur de jeu, mesuré par ping ou traceroute doublé), le goulot d’étranglement n’est en réalité pas le réseau.

Votre ping compte-t-il même? La plupart des jeux en temps réel nécessitent une interpolation pour fonctionner correctement. Cela signifie que vous jouez "dans le passé". Par exemple, dans les jeux Source, chaque joueur a déjà joué 0,1 seconde dans le passé, ce qui signifie que tous les joueurs avec une latence à deux chiffres jouent réellement sur un même champ. Personnellement, je joue à 160 Ping sur des serveurs TF2 aux États-Unis et je n’ai pas vraiment de problèmes avec cela. Lisez-en plus ici.Lisez ici à propos de la pile réseau Unreal.

2
badp

Mon père était un grand fan de TCP Doctor ou d’un programme de ce type dans Windows parce qu’il jurait que son Internet était tellement plus rapide avec cela. Personnellement, je n'ai jamais vu de différence. Mais, il m'a demandé comment il pourrait le faire sous Linux. Il était tellement déçu qu'il ne pouvait pas utiliser le programme. Alors, j'ai fait mes recherches. Vous avez raison, Linux ajuste activement la fenêtre de réception TCP et de nombreux autres aspects de TCP. À moins que vous n'ayez de vrais problèmes, je laisserais les choses telles quelles.

Cependant, si vous sentez que vous devez modifier, voici une référence d'aspect décent (mais gardez à l'esprit que tous les fichiers dont ils parlent sont automatiquement gérés et ajustés par le noyau, sauf si vous les modifiez à l'exécution): http://www.speedguide.net/articles/linux-tweaking-121

0
Chuck R