Approfondimenti
VoIP UDP vs TCP: perché la voce viaggia (quasi sempre) su UDP

Nel mondo VoIP (Voice over IP), la scelta tra UDP vs TCP non è un dettaglio da network engineer, ma una decisione che impatta direttamente su latenza, jitter, perdita di pacchetti e qualità percepita della chiamata. VoIP si appoggia allo stack TCP/IP, ma per il trasporto della voce in tempo reale usa quasi sempre UDP (User Datagram Protocol), mentre TCP (Transmission Control Protocol) viene utilizzato soprattutto per il SIP signaling e per i servizi non real-time. Per inquadrare meglio il tema, può essere utile partire da una panoramica su cos’è il VoIP aziendale e sui termini fondamentali del VoIP.
IP, TCP, UDP e pacchetti VoIP
Alla base di Internet c’è il protocollo IP (Internet Protocol), che si occupa di instradare i pacchetti IP da una sorgente a una destinazione. Sopra IP operano i protocolli di trasporto TCP e UDP, che stabiliscono come quei pacchetti vengono consegnati alle applicazioni.
Pacchetti IP e frame audio VoIP
- Ogni pacchetto IP è una sorta di “busta” con indirizzo sorgente e indirizzo di destinazione.
- Nel VoIP, la voce viene campionata, codificata dal codec e incapsulata in frame che rappresentano tipicamente 10–30 ms di audio per pacchetto (20 ms è un valore molto comune).
- Questi pacchetti devono arrivare in modo regolare e con ritardi contenuti: l’obiettivo non è l’affidabilità assoluta, ma la continuità del flusso in tempo reale.
TCP (Transmission Control Protocol)
- È un protocollo orientato alla connessione: prima di trasmettere dati esegue un handshake (3-way handshake) per instaurare la connessione.
- È affidabile: ogni segmento viene confermato (ACK), in caso di perdita vengono effettuate ritrasmissioni, l’ordine dei dati è garantito.
- Mantiene uno stato di connessione (finestre, numeri di sequenza, controllo di congestione).
- È ideale per applicazioni dove l’integrità del dato è più importante della latenza, come HTTP/HTTPS, email, file transfer.
UDP (User Datagram Protocol)
- È un protocollo connectionless: non prevede handshake, ogni datagramma viene inviato in modo indipendente verso la destinazione.
- Non prevede acknowledgment né ritrasmissioni integrate: se un pacchetto si perde, non viene ritentato automaticamente.
- Non garantisce l’ordine dei pacchetti: possono arrivare anche fuori sequenza.
- È ottimizzato per bassa latenza e semplicità, sacrificando parte dell’affidabilità. Questo lo rende adatto a VoIP, streaming in tempo reale e gaming.
VoIP UDP vs TCP: tempo reale contro affidabilità assoluta
Il nodo centrale del confronto VoIP UDP vs TCP è la gestione del tempo reale. In una chiamata, è più importante che la voce arrivi subito (anche con qualche piccolo difetto) piuttosto che perfettamente integra ma in ritardo di un secondo.
Latenza e ritrasmissioni
- Le raccomandazioni ITU-T indicano che una latenza unidirezionale fino a circa 150 ms è generalmente accettabile; oltre i 300–400 ms il dialogo comincia ad assomigliare a una comunicazione “a scatti”.
- Con TCP, la perdita di un pacchetto attiva meccanismi di ritrasmissione e controllo di congestione: l’endpoint deve attendere, ritrasmettere e riordinare i dati, introducendo ritardi anche di 1–2 secondi in condizioni di rete congestionata.
- Con UDP, i pacchetti persi non vengono ritrasmessi: la conversazione prosegue, magari con un brevissimo “buco” nell’audio, ma senza accumulare ritardi significativi (scenario generalmente preferibile per una conversazione naturale).
Jitter e jitter buffer
- Il jitter è la variazione del ritardo di arrivo dei pacchetti rispetto al ritmo previsto.
- Per compensarlo, i telefoni VoIP e i softphone usano un jitter buffer: un piccolo buffer che accumula qualche pacchetto RTP e li rilascia a intervalli regolari.
- Un jitter buffer più ampio riduce l’impatto del jitter ma aumenta la latenza complessiva; uno troppo piccolo riduce la latenza ma espone di più agli effetti del jitter.
- Con UDP, abbinato a un jitter buffer ben dimensionato e a una rete configurata con QoS, è possibile mantenere un buon equilibrio tra latenza e stabilità del flusso.
Packet loss e qualità percepita (MOS)
- Nel VoIP, una piccola percentuale di packet loss (ad esempio 1–3%) è spesso tollerabile: i codec moderni e l’orecchio umano “mascherano” piccoli buchi nell’audio.
- La qualità percepita si misura spesso con il MOS (Mean Opinion Score), che sintetizza giudizi soggettivi su una scala tipica da 1 a 5: più la latenza è bassa e jitter/loss sono contenuti, più il MOS si avvicina a 4–5.
- Con TCP, il packet loss viene mascherato dalle ritrasmissioni, ma l’aumento di latenza e jitter può abbattere il MOS anche se “in teoria” nessun pacchetto viene perso.
RTP e RTCP: come viaggia la voce su UDP
La voce in una chiamata VoIP non viaggia direttamente “su UDP”, ma tramite lo stack RTP/RTCP su UDP:
- RTP (Real-time Transport Protocol) incapsula i campioni audio/video, aggiungendo timestamp e numeri di sequenza per permettere alla destinazione di ricostruire il flusso nella giusta timeline.
- RTCP (RTP Control Protocol) è il canale di controllo, che scambia periodicamente statistiche su jitter, packet loss, ritardi, permettendo di monitorare e, in alcuni casi, adattare la qualità del flusso.
- Entrambi i protocolli sono progettati per lavorare sopra UDP, proprio per servire applicazioni in tempo reale dove è preferibile perdere qualche pacchetto piuttosto che introdurre ritardi importanti.
A livello di rete, router e switch possono riconoscere il traffico RTP e applicare QoS (prioritizzazione, code dedicate) per garantire che i pacchetti voce abbiano precedenza rispetto ad altri flussi meno sensibili. Una configurazione QoS corretta è uno degli strumenti principali per mantenere bassa latenza e jitter in scenari VoIP.
SIP, signaling e VoIP UDP vs TCP
Oltre al media RTP, ogni chiamata VoIP si appoggia su un protocollo di segnalazione, di solito SIP (Session Initiation Protocol), che gestisce:
- le registrazioni dei dispositivi (SIP phones, softphone, gateway, PBX) presso un SIP server;
- l’instaurazione della chiamata (INVITE), eventuali modifiche, e il teardown (BYE);
- lo scambio di parametri come codec supportati, indirizzi e porte per i flussi RTP.
SIP over UDP
- È la modalità storicamente più diffusa: il traffico SIP viene trasportato tramite UDP (di solito sulla porta 5060).
- È leggero e semplice: ogni messaggio SIP è un datagramma indipendente, e non esiste una connessione TCP da instaurare e mantenere.
- Per un VoIP provider che gestisce migliaia di SIP devices e registrazioni periodiche, l’uso di UDP riduce drasticamente il carico di handshake, keepalive e stato di connessione da gestire.
SIP over TCP e SIP over TLS
- SIP su TCP introduce una connessione affidabile che può essere utile quando i messaggi SIP diventano molto grandi (ad esempio con molti header o contatti multipli) o quando si vuole sfruttare meglio il comportamento di alcuni firewall/NAT.
- SIP su TLS (SIP over TCP cifrato) aggiunge un livello di sicurezza, proteggendo le credenziali e i dettagli di signaling; è sempre più utilizzato in contesti dove la privacy e la protezione del signaling sono importanti, ad esempio in ambito enterprise o regolamentato.
- Il rovescio della medaglia è un maggior overhead per handshake, cifratura e mantenimento delle sessioni, che può impattare la scalabilità di un SIP server che gestisce un grande numero di dispositivi.
In pratica, molte piattaforme e carrier VoIP moderni supportano tutte e tre le opzioni (UDP, TCP, TLS) per SIP; la scelta dipende da un equilibrio tra scalabilità, sicurezza e comportamento della rete. Per un approfondimento sulla scelta del trasporto SIP, si può vedere ad esempio una panoramica come quella proposta da alcuni provider di piattaforme VoIP dedicate, che confrontano pro e contro di SIP su UDP, TCP e TLS in scenari reali.
Registrazioni SIP, PBX e scalabilità
In scenari di produzione, un VoIP carrier o un provider di servizi VoIP deve gestire registrazioni periodiche da parte di migliaia di SIP phones, PBX, gateway distribuiti su molte reti diverse.
- Con SIP su TCP, ogni dispositivo mantiene una connessione attiva; il server deve gestire lo stato di migliaia di connessioni contemporanee, gestire keepalive e chiusure pulite, e reagire alle interruzioni di rete.
- Con SIP su UDP, ogni REGISTER è un singolo pacchetto, e il server mantiene stato solo a livello applicativo (chi è registrato, da quale IP/porta, con quale scadenza), senza dover gestire lo stato a livello di trasporto.
Per questo, in molte architetture di grandi dimensioni si preferisce mantenere SIP su UDP per le registrazioni e il signaling generico, ricorrendo a TCP/TLS solo quando ci sono requisiti specifici legati a sicurezza o restrizioni di rete.
Qualità VoIP: sintomi tipici di problemi TCP/UDP
Dal punto di vista degli utenti finali, i problemi di trasporto e di rete si manifestano come:
- voce metallica o distorta: spesso associata a packet loss elevato o jitter non gestito correttamente dal jitter buffer;
- scoppiettii, static, crackle: dovuti a pacchetti RTP che arrivano “a burst” o fuori tempo a causa di congestione di rete o QoS assente;
- lag nelle risposte ed effetto “parlare uno sopra l’altro”: legati a latenza unidirezionale eccessiva (soprattutto se superiore a 300–400 ms), talvolta aggravata da meccanismi di ritrasmissione tipici di TCP quando la voce, per errore, transita su un trasporto non adatto.
Questi sintomi sono spesso più legati a rete, router, firewall e QoS che al VoIP in sé. Per questo è importante progettare l’infrastruttura in coerenza con i requisiti voce e scegliere correttamente router e apparati ottimizzati per VoIP.
VoIP UDP vs TCP: casi d’uso e best practice
Casi d’uso tipici di TCP
- Web (HTTP/HTTPS): pagine, API, applicazioni web, dove l’integrità dei dati è prioritaria.
- Email (SMTP, IMAP, POP): non si accetta la perdita di contenuti, e la latenza è meno critica.
- File transfer (FTP, SFTP, SMB): ogni byte deve arrivare intatto, anche a costo di tempi più lunghi.
- Alcune sessioni SIP in cui si vogliono sfruttare vantaggi specifici del trasporto TCP o TLS (ad esempio per sicurezza o per superare certi firewall).
Casi d’uso tipici di UDP
- VoIP (RTP audio/video) e in generale applicazioni voce in tempo reale.
- Streaming video live, dove occasionali perdite sono preferibili al buffering prolungato.
- Gaming online, dove la reattività è più importante della consegna perfetta di ogni singolo pacchetto.
- Altri servizi real-time come DNS e alcune VPN.
Best practice riassuntive per VoIP UDP vs TCP
- Trasportare RTP su UDP, non su TCP, per mantenere bassa latenza e jitter.
- Usare SIP su UDP come impostazione di default, valutando SIP su TCP/TLS solo quando ci sono esigenze di sicurezza o caratteristiche particolari della rete.
- Applicare QoS per dare priorità al traffico RTP rispetto ad altri flussi IP.
- Monitorare costantemente latenza, jitter, packet loss e MOS con strumenti di controllo e analisi.
Come può aiutare un provider VoIP specializzato
Un VoIP provider esperto non si limita a fornire numerazioni e traffico, ma progetta e gestisce l’intera catena tecnica che va dai SIP phones al PBX, fino alla rete IP sottostante:
- scegliendo il trasporto più adeguato (UDP, TCP, TLS) per SIP in base a sicurezza, scalabilità e topologia di rete;
- ottimizzando la rete per il trasporto RTP su UDP con QoS, parametri corretti di jitter buffer e controllo delle code;
- monitorando la qualità delle chiamate tramite statistiche RTP/RTCP e indicatori come MOS;
- fornendo supporto nella scelta di router, gateway, telefoni e software VoIP adatti all’ambiente aziendale.
Se stai valutando un nuovo progetto VoIP o vuoi migliorare qualità e affidabilità di una piattaforma esistente, puoi approfondire i servizi VoIP Epiclink e le guide dedicate al mondo voce su IP, dal confronto DECT vs VoIP fino alla scelta del miglior software per centralino VoIP.
Articoli recenti


