SOCKS5 est un protocole très léger — son handshake ne représente que quelques dizaines d'octets et il n'introduit aucune surcharge une fois le transfert de données commencé. S'il paraît malgré tout lent en pratique, la cause n'est généralement pas le protocole, mais la configuration du client.
Le vrai coût : les allers-retours du handshake
Chaque aller-retour coûte un temps de round-trip (RTT). Si le RTT vers le proxy est de 34 ms, le seul établissement de la connexion approche les 200 ms. Réutiliser la connexion supprime ce coût.
1. Utilisez un pool de connexions
C'est ici que se trouve le gain le plus important. Ouvrir une nouvelle connexion SOCKS5 pour chaque requête revient à payer le coût du handshake à chaque fois. Avec le keep-alive, vous pouvez faire passer plusieurs requêtes dans le même tunnel.
L'erreur la plus fréquente consiste à créer un nouvel objet Session ou agent à chaque requête. Cela revient à ce que le pool ne fonctionne jamais.
2. Équilibrez les timeouts
Un timeout trop court interrompt des requêtes saines ; un timeout trop long laisse attendre des connexions mortes. En SOCKS5, trois valeurs distinctes doivent être réglées :
| Phase | Recommandé | Remarque |
|---|---|---|
| Connexion (connect) | 10–15 s | Temps pour atteindre le proxy |
| Lecture (read) | 25–40 s | Temps de réponse de la cible |
| Attente du pool (pool) | 5–10 s | Attente d'une connexion libre |
Si le point de sortie est une ligne résidentielle ou un réseau mobile, augmentez ces valeurs. Sur un proxy mobile, un timeout de lecture de 10 secondes interrompt une part importante des requêtes saines.
3. Maîtrisez le coût de la résolution DNS
socks5h L'utilisation de empêche les fuites mais déplace la résolution vers le proxy. Si le résolveur du proxy est lent, cela génère une latence supplémentaire. Il existe deux points d'équilibre :
- Priorité à la confidentialité :
socks5hutilisez-le et acceptez la latence supplémentaire. - Priorité à la vitesse, confidentialité secondaire : résolvez localement et envoyez l'IP — mais le nom de domaine fuit alors sur le réseau local.
- Équilibre :
socks5hutilisez-le, mais si la liste de cibles est fixe, gardez les connexions ouvertes longtemps ; la résolution n'est effectuée qu'une fois.
4. Réglez correctement la concurrence
Le débit se stabilise autour de 32 tandis que la latence p95 grimpe rapidement. Le point optimal se situe généralement là où la courbe commence à s'aplatir ; au-delà, seule la file d'attente s'allonge.
Pour le calcul de la simultanéité, consultez notre article sur la limite de connexions simultanées vous pouvez le consulter.
5. N'oubliez pas la compression
SOCKS5 ignorant totalement le contenu, la décision de compresser revient entièrement au client. Accept-Encoding: gzip, br Assurez-vous que l'en-tête est bien envoyé — sur du contenu texte, il apporte 65 à 80 % d'économie, ce qui se répercute directement sur les temps.
Mesure
time_connect et time_appconnect L'écart entre les deux indique le coût total du handshake SOCKS5 et de l'établissement TLS.
Pour une mesure plus complète notre article sur les tests de vitesse et test de ping consultez notre outil.
Résumé
SOCKS5 est en soi un protocole rapide ; la lenteur provient presque toujours d'une absence de réutilisation des connexions. Configurez correctement le pool, adaptez les timeouts au type de sortie, déterminez la concurrence par la mesure et préservez la compression. Ces quatre points réunis augmentent nettement la vitesse effective d'une opération SOCKS5 typique. Pour les options produit rendez-vous sur notre page proxy SOCKS5 vous pouvez le consulter.