La caratteristica più tecnica che distingue SOCKS5 dal proxy HTTP è la capacità di trasportare traffico UDP. Il proxy HTTP funziona solo su TCP; non può in alcun modo inoltrare pacchetti UDP. Questa differenza diventa determinante nel gaming, nelle chiamate vocali e in alcuni scenari DNS.
Il comando UDP ASSOCIATE
In SOCKS5 il trasporto UDP viene avviato con il comando CMD=0x03 (UDP ASSOCIATE). Il meccanismo è diverso da quello TCP:
Dettaglio cruciale: la connessione TCP è il "ciclo di vita" della sessione UDP. Se il client non mantiene aperta la connessione TCP, il relay si chiude.
Intestazione del pacchetto UDP
I pacchetti UDP non vengono inviati direttamente; a ogni pacchetto viene anteposta una piccola intestazione SOCKS5:
Questa intestazione aggiuntiva consente di instradare i pacchetti UDP verso la destinazione corretta attraverso il relay. La dimensione dell'intestazione comporta qualche byte di overhead per pacchetto.
Il problema del supporto: quasi ovunque assente
Sebbene UDP ASSOCIATE sia definito nell'RFC, nella pratica non è supportato diffusamente. Le ragioni sono operative:
| Parte | Situazione tipica | Perché |
|---|---|---|
| Provider di proxy commerciali | Generalmente disattivato | Difficoltà di gestione degli abusi e delle risorse |
| Librerie client | Supporto parziale | Implementazione più complessa rispetto al TCP |
| Browser | No | Non ne hanno bisogno |
| Server installato da te | Configurabile | Il controllo è totalmente tuo |
L'espressione "supportiamo SOCKS5" può non includere il supporto UDP. Se ti serve UDP, chiedilo esplicitamente e testalo nella versione di prova.
In quali scenari serve?
Attività che richiedono UDP
- Il traffico in tempo reale dei giochi online.
- Protocolli di chiamate vocali e video.
- Instradare le query DNS attraverso il proxy.
- Alcuni protocolli di streaming.
- Connessioni basate su QUIC / HTTP-3.
Attività che non richiedono UDP
- Web scraping e raccolta dati.
- Gestione di account sui social media.
- Integrazioni API.
- SEO e monitoraggio dei prezzi.
- Verifica degli annunci pubblicitari.
Per il rapporto tra proxy e gaming un proxy abbassa il ping nei giochi puoi consultare il nostro articolo; lì abbiamo trattato anche il ruolo dell'UDP nel traffico di gioco.
Nota su QUIC e HTTP/3
Il web moderno si sta spostando sempre più verso il protocollo QUIC, che funziona su UDP. Se il tuo proxy non trasporta UDP, il client ricade automaticamente su HTTP/2 basato su TCP. Di solito funziona senza problemi, ma in alcuni casi produce latenza aggiuntiva.
Poiché quasi tutti i siti offrono un fallback HTTP/2, nella pratica non si riscontrano problemi. Tuttavia, nelle attività sensibili alla latenza è bene conoscere questo comportamento.
Come testare
Testare il supporto UDP da riga di comando non è semplice come per il TCP. Il modo più rapido è ottenere conferma scritta dal provider e fare una prova con la tua applicazione reale nella versione di prova.
Riepilogo
SOCKS5 può trasportare traffico UDP con il comando UDP ASSOCIATE — qualcosa che un proxy HTTP non può fare in alcun modo. Il supporto però non è diffuso; la maggior parte dei provider commerciali tiene l'UDP disattivato. In attività come web scraping, gestione degli account e raccolta dati non hai bisogno di UDP. Negli scenari come gaming, VoIP e tunneling DNS è invece indispensabile e va assolutamente confermato prima dell'acquisto. Per i dettagli sul prodotto la nostra pagina sui proxy SOCKS5 puoi consultarlo.