Logo principale
La motivazione vincerà sempre sul talento. (Norman R. Augustine)
Torna alla pagina iniziale Aggiungi ai Preferiti Area Riservata Contatto
::: Testo | A- | A+ | A0 :::
   Pagina iniziale // Protocolli // Il protocollo TCP
::: Cambia visualizzazione ::: who am i? :::   

Il protocollo TCP

Sveliamo i misteri del protocollo più utilizzato al mondo in questa semplice rubrica.

Transmission Control Protocol (TCP) è uno standard TCP/IP definito nell'RFC 793, "Transmission Control Protocol (TCP)" che fornisce un servizio di consegna di pacchetti affidabile, orientato alla connessione.

Il Transmission Control Protocol:

  • Garantisce la consegna dei datagrammi IP.
  • Esegue la segmentazione e il riassemblaggio di grandi blocchi di dati inviati dai programmi.
  • Garantisce l'appropriata sequenza e l'ordinata consegna dei dati segmentati.
  • Esegue controlli sull'integrità dei dati trasmessi utilizzando i calcoli di checksum.
  • Invia messaggi positivi nel caso in cui i dati siano stati ricevuti. Vengono inviati anche avvisi negativi per i dati non ricevuti, attraverso l'utilizzo di riconoscimenti selettivi.
  • Offre un metodo preferenziale di trasporto per programmi che devono utilizzare un'affidabile trasmissione dei dati basati sulla sessione, come i database client/server e i programmi di posta elettronica.

Funzionamento del protocollo TCP

TCP è basato sulla comunicazione point-to-point tra due host di rete. TCP riceve i dati dai programmi e li elabora come un flusso di byte. I byte vengono raggruppati in segmenti che TCP poi numera e dispone in sequenza per la consegna.

Affinché due host TCP possano scambiarsi i dati, sarà innanzitutto necessario che ognuno di loro stabilisca una sessione con l'altro. Una sessione TCP viene inizializzata attraverso un processo noto come handshake a tre vie. Questo processo sincronizza i numeri di sequenza e fornisce informazioni di controllo che sono necessarie per stabilire una connessione virtuale tra
entrambi gli host.

Dopo che l'iniziale handshake a tre vie è completato, i segmenti vengono inviati e riconosciuti in un modo sequenziale tra entrambi gli host inviante e ricevente. Un processo di handshake simile viene utilizzato da TCP prima della chiusura di una connessione per verificare che entrambi gli host abbiano terminato di inviare e ricevere tutti i dati.

I segmenti TCP vengono incapsulati e inviati all'interno di datagrammi IP.

Porte TCP

Le porte TCP utilizzano una specifica porta del programma per la consegna dei dati inviati utilizzando il Transmission Control Protocol (TCP). Le porte TCP sono più complesse e operano in modo diverso rispetto alle porte UDP.

Mentre una porta UDP opera come una singola coda di messaggi e come l'endpoint di rete per la comunicazione basata su UDP, l'endpoint finale per ogni comunicazione TCP è una connessione univoca. Ciascuna connessione TCP è identificata in modo univoco da endpoint doppi.

Ogni singola porta del server TCP è in grado di offrire l'accesso condiviso a più connessioni perché tutte le connessioni TCP vengono identificate in modo univoco da due coppie di indirizzo IP e porte TCP (accoppiando un indirizzo/porta per ogni host connesso).

I programmi TCP utilizzano numeri di porta riservati o conosciuti, come è mostrato nell'illustrazione che segue.

Il lato server di ogni programma che utilizza le porte TCP ascolta i messaggi in arrivo sul loro numero di porta conosciuto. Tutti i numeri di porta del server TCP inferiori a 1.024 (e alcuni numeri più elevati) sono riservati e registrati dall'Internet Assigned Numbers Authority (IANA).

La tabella che segue è un elenco parziale di alcune porte conosciute del server TCP utilizzate da programmi standard basati su TCP.

Numero porta TCP Descrizione
20 Server FTP (canale dati)
21 Server FTP (canale di controllo)
23 Server Telnet
53 Trasferimenti di zona Domain Name System
80 Server Web (HTTP)
139 Servizio di sessioni NetBIOS

Per un elenco aggiornato, completo di tutte le porte TCP conosciute correntemente registrate, consultare il sito web IANA Port Numbers (informazioni in inglese).

Articolo visitato 3155 volte e votato 179 volte (media: 3.9721 su 5)

Voto:
Un commento:
(facoltativo)
::: Pagina iniziale ::: Torna all'inizio della pagina ::: Stampa la pagina ::: 
Valid HTML 4.01 Transitional Valid CSS!