Tous les emplacements actifs · 99.99% uptime
SOCKS5

Réglages de performance SOCKS5

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

FIGURECoût en allers-retours de l'établissement d'une connexion SOCKS5
ALLER-RETOURHandshake TCP (vers le proxy)34 msSalutation SOCKS534 msAuthentification34 msRequête CONNECT34 msHandshake TLS (vers la cible)68 ms0 ms204 ms au total

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.

FIGURERéutilisation de connexion sur SOCKS5
Configuration du client01# Python requests — utilisez Session (pool automatique)02import requests03s = requests.Session()04s.proxies = {"https": "socks5h://kullanici:sifre@proxy.example.com:1080"}05adapter = requests.adapters.HTTPAdapter(pool_connections=8, pool_maxsize=8)06s.mount("https://", adapter)07# Désormais, les appels s.get(...) utilisent le même tunnel0809# Node.js — réutilisation de l'agent10import { SocksProxyAgent } from "socks-proxy-agent";11const agent = new SocksProxyAgent("socks5h://proxy.example.com:1080");12agent.keepAlive = true;13// Utilisez le même objet agent pour toutes les requêtes1415# INCORRECT : créer un nouvel agent/session à chaque requête

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 :

PhaseRecommandéRemarque
Connexion (connect)10–15 sTemps pour atteindre le proxy
Lecture (read)25–40 sTemps de réponse de la cible
Attente du pool (pool)5–10 sAttente d'une connexion libre
Pour le residential et le mobile

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é : socks5h utilisez-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 : socks5h utilisez-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

FIGUREConcurrence et débit sur SOCKS5
MESURE010213141Débit (requêtes/s)latence p95 (×100 ms)248163264

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

FIGUREMesure des temps phase par phase
Terminal01# Temps par phase avec curl02curl --socks5-hostname proxy.example.com:1080 -s -o /dev/null \\03 -w "dns:%{time_namelookup} baglanti:%{time_connect} tls:%{time_appconnect} ilk-bayt:%{time_starttransfer} toplam:%{time_total}\\n" \\04 https://example.com0506# Exécutez 20 fois et prenez la médiane07for i in $(seq 1 20); do08 curl --socks5-hostname proxy.example.com:1080 -s -o /dev/null \\09 -w "%{time_total}\\n" https://example.com10done | sort -n | awk "{a[NR]=\$1} END {print \"medyan:\", a[int(NR/2)+1]}"

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.

Questions fréquentes

01SOCKS5 est-il plus lent qu'un proxy HTTP ?

Le handshake demande un aller-retour de plus, mais les octets échangés sont minimes. Une fois le transfert de données commencé, il n'y a aucune différence de vitesse entre les deux protocoles. L'écart se situe uniquement à l'établissement de la connexion et n'intervient qu'une seule fois.

02Le pool de connexions fonctionne-t-il avec SOCKS5 ?

Oui. Vous pouvez faire passer plusieurs requêtes HTTP dans le même tunnel SOCKS5. Il suffit de réutiliser l'objet Session/Agent de votre client.

03L'utilisation de socks5h ralentit-elle les choses ?

Un peu, oui : la résolution étant effectuée côté proxy, elle ajoute un aller-retour. Mais si vous réutilisez vos connexions, ce coût n'est payé qu'une fois et devient négligeable.

04Comment choisir les valeurs de timeout ?

Selon le type de sortie. Pour du datacenter, 10 secondes de connexion et 25 secondes de lecture suffisent. Pour des sorties residential et surtout mobiles, portez ces valeurs respectivement à 15 et 40 secondes.

05Comment déterminer le niveau de concurrence ?

Réalisez un test de montée en charge progressive : mesurez le débit et la latence p95 avec les valeurs 2, 4, 8, 16, 32. Restez en dessous du point où le débit se stabilise et où la latence commence à grimper.

Articles et pages associés

ÉTAPE SUIVANTE

Renforcez votre infrastructure proxy dès aujourd'hui.

Démarrez en quelques minutes avec un forfait payant, ou essayez d'abord notre liste de proxys gratuits.

FREEPROXY.TR

Vous cherchez un proxy gratuit ? Vous êtes au bon endroit

Une plateforme proxy complète pour consulter des adresses de proxy gratuits à jour, comparer les types HTTP et SOCKS et vérifier vos connexions proxy avec des outils gratuits.