Recherche de site Web

Comment augmenter les connexions TCP/IP sous Linux


Linux est largement utilisé pour les serveurs et les applications réseau. L’un des problèmes courants rencontrés par les administrateurs est l’atteinte du nombre maximal de connexions TCP/IP. Lorsque cette limite est atteinte, les utilisateurs peuvent rencontrer des erreurs de connexion.

Cet article explique comment augmenter le nombre maximum de connexions TCP/IP sous Linux.

Comprendre les connexions TCP/IP

TCP/IP (Transmission Control Protocol/Internet Protocol) est le protocole de communication fondamental utilisé sur Internet. Chaque connexion TCP nécessite des ressources système. Lorsqu’il y a trop de connexions actives, le système peut refuser de nouvelles connexions ou ralentir.

En augmentant le nombre maximal de connexions autorisées, vous pouvez améliorer les performances du serveur et gérer davantage d’utilisateurs simultanés.

Vérification des limites de connexion actuelles sous Linux

Avant de modifier les paramètres, il est bon de connaître le nombre maximum de connexions TCP autorisées sur votre système à l’aide de la commande sysctl suivante :

sysctl net.ipv4.tcp_max_syn_backlog

Cette commande indique le nombre de connexions incomplètes autorisées. De plus, pour afficher le nombre total de descripteurs de fichiers disponibles (ce qui affecte le nombre maximal de connexions), utilisez :

ulimit -n

Le résultat de cette commande indique la limite actuelle de fichiers ouverts, ce qui inclut les connexions TCP.

Augmentation des limites de connexion TCP sous Linux

Pour augmenter le nombre maximal de connexions TCP/IP, vous devez modifier quelques paramètres dans les fichiers de configuration du système.

1. Augmenter les connexions TCP sous Linux

Le paramètre tcp_max_syn_backlog contrôle le nombre de connexions semi-ouvertes pouvant être mises en file d’attente.

Pour modifier cette valeur, utilisez un éditeur de texte pour modifier le fichier /etc/sysctl.conf :

sudo nano /etc/sysctl.conf

Ajoutez ou modifiez la ligne suivante.

net.ipv4.tcp_max_syn_backlog = 4096

Vous pouvez remplacer 4096 par une valeur plus élevée en fonction de vos besoins.

Pour appliquer les modifications, exécutez la commande suivante.

sudo sysctl -p

2. Augmenter le nombre de descripteurs de fichiers

Le nombre de descripteurs de fichiers détermine le nombre de connexions que votre système peut gérer.

Pour augmenter cette limite, ouvrez le fichier /etc/security/limits.conf.

sudo nano /etc/security/limits.conf

Ajoutez les lignes suivantes à la fin du fichier.

*          soft    nofile     100000
*          hard    nofile     100000

Cela fixe les limites souples et strictes pour le nombre maximal de fichiers ouverts à 100 000. Vous pouvez ajuster ce nombre en fonction de vos besoins.

3. Mettre à jour la limite de descripteurs de fichiers à l’échelle du système

En plus des limites spécifiques à l’utilisateur, vous pouvez également augmenter la limite à l’échelle du système pour les descripteurs de fichiers dans le fichier /etc/sysctl.conf.

sudo nano /etc/sysctl.conf

Ajoutez ou modifiez la ligne suivante.

fs.file-max = 100000

Enregistrez et fermez le fichier, puis appliquez les modifications :

sudo sysctl -p

Vérification des limites de connexion TCP sous Linux

Pour vous assurer que les modifications ont été appliquées correctement, utilisez les commandes suivantes.

sysctl net.ipv4.tcp_max_syn_backlog
cat /proc/sys/fs/file-max
ulimit -n

Configuration supplémentaire (en option)

Si vous souhaitez affiner davantage vos paramètres réseau, vous pouvez ajuster des paramètres supplémentaires dans le fichier /etc/sysctl.conf.

Voici quelques paramètres utiles :

tcp_fin_timeout : Réduire le temps de maintien de la connexion dans l’état FIN-WAIT-2, ce qui permet une réutilisation plus rapide des connexions.

net.ipv4.tcp_fin_timeout = 15

tcp_tw_reuse : Réutilisez les sockets TIME-WAIT pour les nouvelles connexions, ce qui peut améliorer la gestion des connexions.

net.ipv4.tcp_tw_reuse = 1

tcp_max_orphans : Augmentez le nombre maximal de sockets TCP orphelins. Ceci est utile pour les systèmes à charge élevée.

net.ipv4.tcp_max_orphans = 8192

Après avoir apporté des modifications supplémentaires, n’oubliez pas de les appliquer à l’aide des éléments suivants :

sudo sysctl -p
Conclusion

En suivant ces étapes, vous pouvez augmenter le nombre maximal de connexions TCP/IP dans votre système Linux, ce qui aidera votre serveur à gérer plus de connexions simultanées, améliorant ainsi les performances et l’expérience utilisateur.

Surveillez toujours les performances de votre serveur et ajustez ces paramètres si nécessaire pour maintenir un fonctionnement optimal.

Articles connexes: