Sobes.tech
Junior

Cos'è il protocollo TCP?

sobes.tech AI

Risposta dell'AI

TCP (Transmission Control Protocol) è un protocollo di livello di trasporto nello stack di protocolli TCP/IP, che garantisce una consegna affidabile e orientata alla connessione di un flusso di byte tra le applicazioni.

Caratteristiche principali di TCP:

  • Affidabilità: Garantisce la consegna di tutti i segmenti di dati nell'ordine corretto, ritrasmettendo segmenti persi o danneggiati. Utilizza conferme (ACK) e timeout.
  • Orientato alla connessione: Prima di trasmettere i dati, viene stabilita una connessione logica tra mittente e destinatario (stretta di mano a tre fasi). La connessione viene mantenuta per tutta la sessione.
  • Controllo del flusso: Regola la velocità di trasmissione dei dati per evitare di sovraccaricare il buffer del destinatario. Utilizza una finestra di ricezione.
  • Controllo della congestione: Previene il sovraccarico della rete regolando dinamicamente la velocità di trasmissione in base alle condizioni della rete. Utilizza algoritmi come Slow Start e Congestion Avoidance.
  • Trasmissione in flusso: TCP considera i dati come un flusso continuo di byte, non come pacchetti separati. Garantisce che i dati vengano consegnati nello stesso ordine in cui sono stati inviati.
  • Comunicazione duplex: Permette di trasmettere dati in entrambe le direzioni contemporaneamente dopo l'instaurazione della connessione.

Applicazioni di TCP:

  • HTTP/HTTPS (traffico web)
  • FTP (trasferimento di file)
  • SMTP (posta elettronica)
  • SSH (gestione remota)

Confronto con UDP:

Caratteristica TCP UDP
Affidabilità Alta (garanzia di consegna) Bassa (senza garanzia)
Orientato alla connessione Sì (stabilimento e mantenimento) No (trasmissione senza stabilimento)
Ordinamento dei dati Sì (consegna nell'ordine di invio) No (può arrivare fuori ordine)
Controllo del flusso No
Controllo della congestione No
Velocità di trasmissione Inferiore (a causa dei costi aggiuntivi) Superiore
Esempi HTTP, FTP, SSH, SMTP DNS, DHCP, VoIP, giochi online