Livello di trasporto: TCP, UDP, QUIC, porte e socket

Livello di trasporto: TCP, UDP, QUIC, porte e socket sono i concetti al centro di questa lezione, dedicata alla comunicazione end-to-end tra processi applicativi.

Il testo spiega che il livello di trasporto ha il compito di fornire un canale logico di comunicazione tra applicazioni, sfruttando i servizi del livello di rete. Vengono poi presentati i principali protocolli di trasporto: TCP, UDP e QUIC.
TCP offre una comunicazione affidabile e orientata alla connessione, grazie a meccanismi come ACK, ritrasmissione, controllo di flusso e controllo della congestione. UDP, invece, è un protocollo più semplice e veloce, non orientato alla connessione e non affidabile, adatto a comunicazioni in tempo reale come streaming, VoIP, giochi online e applicazioni IoT.

La lezione introduce anche QUIC, un protocollo moderno basato su UDP ma progettato per offrire comunicazioni più rapide, sicure ed efficienti, soprattutto nel Web moderno e in HTTP/3. Nella parte finale vengono spiegati i concetti di porta e socket, utili per indirizzare i dati verso il processo corretto e gestire la comunicazione tra applicazioni.


Bibliografia

Fonti primarie

  • Eddy, W. (Ed.). (2022). Transmission Control Protocol (TCP). RFC 9293. IETF / RFC Editor.
  • Postel, J. (1981). Transmission Control Protocol. RFC 793. IETF / RFC Editor.
  • Allman, M., Paxson, V., & Blanton, E. (2009). TCP Congestion Control. RFC 5681. IETF / RFC Editor.
  • Paxson, V., Allman, M., Chu, J., & Sargent, M. (2011). Computing TCP’s Retransmission Timer. RFC 6298. IETF / RFC Editor.
  • Postel, J. (1980). User Datagram Protocol. RFC 768. IETF / RFC Editor.
  • Eggert, L., Fairhurst, G., & Shepherd, G. (2017). UDP Usage Guidelines. RFC 8085. IETF / RFC Editor.
  • Iyengar, J., & Thomson, M. (2021). QUIC: A UDP-Based Multiplexed and Secure Transport. RFC 9000. IETF / RFC Editor.
  • Thomson, M., & Turner, S. (2021). Using TLS to Secure QUIC. RFC 9001. IETF / RFC Editor.
  • Iyengar, J., & Swett, I. (2021). QUIC Loss Detection and Congestion Control. RFC 9002. IETF / RFC Editor.
  • Bishop, M. (2022). HTTP/3. RFC 9114. IETF / RFC Editor.
  • IANA. Service Name and Transport Protocol Port Number Registry.
  • Cotton, M., Eggert, L., Touch, J., Westerlund, M., & Cheshire, S. (2011). Internet Assigned Numbers Authority (IANA) Procedures for the Management of the Service Name and Transport Protocol Port Number Registry. RFC 6335. IETF / RFC Editor.
  • The Open Group. The Open Group Base Specifications — Sockets.

Fonti secondarie

  • Kurose, J. F., & Ross, K. W. Computer Networking: A Top-Down Approach. Pearson.
  • Tanenbaum, A. S., & Wetherall, D. J. Computer Networks. Pearson.
  • Comer, D. E. Internetworking with TCP/IP, Volume 1. Pearson.
  • Comer, D. E. Computer Networks and Internets. Pearson.
  • Peterson, L. L., & Davie, B. S. Computer Networks: A Systems Approach. Morgan Kaufmann.
  • Stevens, W. R. TCP/IP Illustrated, Volume 1: The Protocols. Addison-Wesley.
  • Stevens, W. R., Fenner, B., & Rudoff, A. M. UNIX Network Programming, Volume 1: The Sockets Networking API. Addison-Wesley.
  • Forouzan, B. A. Data Communications and Networking. McGraw-Hill.

Vuoi aiutarmi a scrivere articoli come questo?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

No responses yet

Sostieni il progetto

Tutti i materiali che condivido nascono da una convinzione molto semplice: una buona formazione non dovrebbe limitarsi a insegnare quali pulsanti premere, ma aiutare a comprendere le idee, i principi e i processi che stanno dietro agli strumenti.

Per questo dedico una parte significativa del mio tempo a studiare, organizzare e produrre contenuti gratuiti dedicati al multimedia, al design e alla comunicazione visiva. Articoli, lezioni, approfondimenti e risorse che hanno l’obiettivo di rendere accessibili argomenti spesso affrontati in modo frammentario o superficiale.

Questo lavoro richiede però tempo, ricerca e cura. Ogni guida, ogni video, ogni materiale pubblicato gratuitamente è il risultato di molte ore di studio, scrittura e revisione.
Sostenere il progetto attraverso Patreon significa permettermi di continuare a produrre contenuti educativi di qualità, mantenerli accessibili al maggior numero possibile di persone e dedicare più energie alla costruzione di una risorsa che possa essere utile a studenti, professionisti e appassionati.

Se credi che una conoscenza più profonda, rigorosa e consapevole del multimedia abbia valore, il tuo contributo non sostiene soltanto il mio lavoro: aiuta a rendere queste risorse disponibili per tutta la comunità.
Grazie per il supporto e per la fiducia.

Patreon è troppo impegnativo?

Puoi sostenermi anche con una donazione libera, senza abbonamento e senza impegno.
Anche un piccolo contributo mi aiuta a continuare a creare giochi, contenuti didattici e materiali gratuiti con più libertà.

Support the project

All the materials I share stem from a very simple conviction: good training should not be limited to teaching which buttons to press, but should help people understand the ideas, principles, and processes behind the tools.

That is why I dedicate a significant portion of my time to researching, organizing, and producing free content focused on multimedia, design, and visual communication—articles, lessons, in-depth analyses, and resources aimed at making accessible topics that are often addressed in a fragmented or superficial way.

However, this work requires time, research, and care. Every guide, video, and piece of material published for free is the result of many hours of study, writing, and revision.
Supporting the project via Patreon enables me to continue producing high-quality educational content, keep it accessible to as many people as possible, and devote more energy to building a resource that benefits students, professionals, and enthusiasts alike.

If you believe that a deeper, more rigorous, and informed understanding of multimedia is valuable, your contribution does more than just support my work: it helps make these resources available to the entire community.
Thank you for your support and trust.

Is Patreon too demanding?

You can also support me with a voluntary donation—no subscription or commitment required.

Even a small contribution helps me continue creating games, educational content, and free materials with greater freedom.