TCP e UDP a confronto
Confronti il TCP affidabile e basato sulla connessione con l'UDP veloce e leggero.
TCP e UDP a confronto è una lezione Network+ Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Network+ Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Network+ Academy include 4 lezioni in totale.
Due protocolli di trasporto
Al livello di trasporto, la maggior parte del traffico internet viene gestita da due protocolli: TCP (Transmission Control Protocol) e UDP (User Datagram Protocol).
Entrambi trasferiscono dati tra le applicazioni, ma fanno scelte molto diverse nel compromesso tra affidabilità e velocità. Sapere quando utilizzare ciascuno è una competenza fondamentale per Network+.
TCP è orientato alla connessione
TCP è orientato alla connessione: prima di inviare i dati stabilisce una connessione, assicurandosi che entrambe le parti siano pronte. Garantisce che i dati arrivino completi e nell'ordine corretto.
Se un segmento viene perso, TCP rileva l'assenza e lo ritrasmette. Questa affidabilità rende TCP la scelta per pagine web, email e trasferimenti di file, dove ogni byte è importante.
L'handshake a tre vie
TCP avvia una connessione con un handshake a tre vie: SYN, SYN-ACK, ACK. Il client invia SYN, il server risponde con SYN-ACK e il client conferma con ACK.
Il flusso di dati inizia solo dopo questo scambio. L'handshake sincronizza entrambe le parti ed è un argomento classico d'esame: ricordi i tre passaggi nell'ordine corretto.
Client -> SYN
Server -> SYN-ACK
Client -> ACKUDP è senza connessione
UDP è senza connessione: invia i dati immediatamente, senza handshake e senza garantire la consegna o l'ordine. Invia semplicemente i pacchetti, chiamati datagrammi, verso la destinazione.
Questo rende UDP veloce e leggero, ma se necessario l'applicazione deve gestire autonomamente eventuali dati persi o ricevuti fuori ordine.
Affidabilità contro velocità
Il compromesso fondamentale è chiaro: TCP aggiunge affidabilità tramite conferme e ritrasmissioni, con un costo in termini di tempo e sovraccarico. UDP evita tutto questo per privilegiare la velocità pura.
- TCP: affidabile, ordinato, più lento.
- UDP: veloce, leggero, con consegna best-effort.
Scelga in base a ciò che conta di più: accuratezza o velocità.
Quando conviene TCP
Utilizzi TCP quando ogni byte deve arrivare correttamente. La navigazione web (HTTP/HTTPS), la posta elettronica (SMTP) e il trasferimento di file (FTP) si basano tutti su TCP.
La perdita di una parte di una pagina web o di un file lo danneggerebbe, quindi il costo dell'affidabilità di TCP vale ampiamente il risultato. La maggior parte del traffico internet in termini di volume utilizza TCP.
Quando conviene UDP
Utilizzi UDP quando la velocità e la bassa latenza sono più importanti della consegna perfetta. Le chiamate vocali e video in tempo reale, i giochi online e lo streaming utilizzano spesso UDP.
Durante una videochiamata, perdere leggermente un fotogramma è meglio che interrompere la riproduzione per ritrasmetterlo. Anche le ricerche DNS utilizzano UDP per le loro query rapide e di piccole dimensioni.
Controllo del flusso e finestre
TCP include il controllo del flusso per evitare di sovraccaricare il destinatario, utilizzando una finestra scorrevole che regola la quantità di dati in transito prima della conferma.
Esegue anche il controllo della congestione, rallentando quando la rete è occupata. UDP non dispone di nessuna di queste funzioni e lascia completamente all'applicazione il controllo della velocità.
Header e overhead
L'header di TCP è più grande (almeno 20 byte) perché contiene numeri di sequenza, conferme e flag. L'header di UDP è di soli 8 byte e contiene esclusivamente le porte di origine e destinazione e la lunghezza.
L'header UDP più piccolo significa meno overhead per pacchetto, contribuendo al vantaggio in termini di velocità per il traffico in tempo reale ad alto volume.
Scegliere tra i due
Per decidere, si chieda: l'applicazione ha bisogno di una consegna garantita e ordinata? In caso affermativo, TCP. Se dà priorità alla velocità e può tollerare qualche perdita, UDP.
Molti protocolli effettuano questa scelta consapevolmente: DNS utilizza UDP per le query rapide, ma passa a TCP per i trasferimenti di grandi dimensioni. Comprendere il compromesso spiega queste scelte progettuali.
TCP e UDP insieme
Entrambi i protocolli utilizzano i numeri di porta per indirizzare il traffico verso l’applicazione corretta, argomento della prossima lezione. Condividono lo schema di indirizzamento, ma differiscono per le garanzie di consegna.
Conoscere le differenze tra TCP e UDP è fondamentale per comprendere i protocolli e le porte specifici presentati nelle prossime lezioni del corso.
Verifica rapida
Associare il protocollo all’esigenza.
Riepilogo
Ha confrontato TCP e UDP.
- TCP: orientato alla connessione, affidabile e ordinato; utilizza l’handshake SYN/SYN-ACK/ACK.
- UDP: senza connessione, veloce, con consegna best effort e senza handshake.
- TCP è adatto al Web, alla posta elettronica e al trasferimento di file; UDP è adatto a voce, video, videogiochi e query DNS.
- TCP aggiunge il controllo del flusso e della congestione; UDP lascia questi aspetti all’applicazione.
- Entrambi utilizzano i numeri di porta per raggiungere le applicazioni.
Domande Frequenti
La lezione «TCP e UDP a confronto» è gratuita?
Sì — il testo completo di «TCP e UDP a confronto» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Network+ Academy, passa a CoddyKit PRO. Il corso Network+ Academy include 4 lezioni in totale.
Cosa imparerò in «TCP e UDP a confronto»?
Confronti il TCP affidabile e basato sulla connessione con l'UDP veloce e leggero. Eserciti Network+ Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Network+ Academy?
Non è richiesta alcuna esperienza precedente. Network+ Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «TCP e UDP a confronto»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Network+ Academy?
Sì. Ogni lezione Network+ Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- TCP e UDP a confronto
- A cosa servono i numeri di porta
- Protocolli Web e di trasferimento file
- Protocolli per accesso remoto e posta