introduction
Vous rencontrez des problèmes de connectivité lorsque des visiteurs d'autres pays accèdent à votre site Web? Vous vous demandez pourquoi la vitesse de téléchargement depuis votre serveur étranger est lente? Vous pouvez configurer des algorithmes d'optimisation TCP pour aider à résoudre le problème.
Il existe plusieurs algorithmes d'optimisation TCP bien connus. Tous ces algorithmes ne sont pas gratuits, par exemple, Zeta-TCP. Cependant, dans cet article, je vais présenter un algorithme d'optimisation TCP gratuit à hautes performances appelé Hybla.
Préparation
Pour configurer Hybla, vous devez être équipé de:
- Un serveur VPS ou dédié avec Linux (version LTS préférée).
- Si VPS, vérifiez que la virtualisation est KVM. Sinon, il n'aura pas suffisamment de privilèges pour appeler les fonctions de noyau appropriées.
- Exécutez
/sbin/modprobe tcp_hybla
pour activer Hybla et utilisez lsmod | grep hybla
pour vérifier si l'optimisation peut fonctionner normalement.
Configuration
Si votre version du noyau est plus récente, par exemple CentOS 6.x 2.6.32, vous pouvez utiliser la commande répertoriée ci-dessous pour afficher les algorithmes d'encombrement disponibles. Hybla sera affiché, une fois que vous l'avez chargé.
sysctl net.ipv4.tcp_available_congestion_control
Vous pouvez temporairement configurer un VPS Vultr pour le test avant d'utiliser Hybla dans un environnement de production.
Ajoutez les lignes répertoriées ci-dessous à /etc/sysctl.conf
.
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.ip_local_port_range = 10000 65000
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_max_tw_buckets = 5000
net.core.rmem_max = 67108864
net.core.wmem_max = 67108864
net.ipv4.tcp_rmem = 4096 87380 67108864
net.ipv4.tcp_wmem = 4096 65536 67108864
net.core.netdev_max_backlog = 250000
net.ipv4.tcp_mtu_probing=1
net.ipv4.tcp_congestion_control=hybla
Vous pouvez activer la modification immédiatement à l'aide de la commande sysctl -p
. Hybla est désormais activé.
Commencez au démarrage
Le didacticiel répertorié ci-dessus nécessite que vous exécutiez les commandes /sbin/modprobe hybla
et sysctl -p
manuellement après chaque redémarrage. Pour activer cet algorithme automatiquement, vous pouvez utiliser ces étapes comme modèle. Ils ont été écrits pour CentOS.
Ajoutez un hybla.modules
fichier au /etc/sysconfig/modules
répertoire et entrez le contenu ci-dessous:
#!/bin/sh
/sbin/modprobe tcp_hybla
Accordez ensuite les privilèges d'exécution de fichier:
chmod +x hybla.modules