top of page

PROTOCOLLO TCP

 

Il protocollo TCP è un protocollo punto a punto, cioè orientato alla connessione tra due host (client/server). La connessione avviene mediante un handshaking (consiste nella trasmissione dei pacchetti necessari per regolare i parametri di connessione.). TCP suddivide i dati dell'utente in segmenti di non più di 64KB e li incapsula in datagrammi IP. I segmenti sono organizzati in due sezioni:

 

  • un'intestazione standard di 20byte ;

  • un playload di dimensione variabile (max 64KB).

 

 

Un servizio di trasferimento si dice affidabile se:

 

  • i messaggi trasmessi giungono senza errori;

  • i messaggi trasmessi è consegnato una sola volta;

  • i messaggi trasmessi sono nello stesso ordine in cui sono stati trasmessi.

 

  • RTT (round trip time) il tempo di andata e ritorno tra mittente e ricevente.

  • RTO (retransmission time out) il massimo intervallo di tempo di andata e ritorno tra mittente e ricevente, dopodichè si considera il segmento perso.

  • ACK (segnale di ricezione) Per rendere affidabile un canale è necessario che venga effettuata la rivelazione degli errori in ricezione e quindi avvenga la ritrasmissione dei segmenti persi.

 

Perciò per rendere una trasmissione affidabile vengono effettuate le seguenti operazioni:

 

  • numerazione dei segmenti persi;

  • temporizzazione della trasmissione: per ciascun segmento inviato, TCP avvia un timer detto timer di ritrasmissione (RTO);

  • Finestra di trasmissione e ricezione (viene utilizzata per  scoprire i segmenti che devono essere ritrasmessi).

 

Tutto questo viene gestita come una struttura a coda, utilizzando due variabili, che sono:

 

  • SENDBASE: il numero d'ordine del byte più vecchio tra quelli trasmessi ma non raggiunti destinazione;

  • NEXTSEQNUM: il numero d'ordine del prossimo byte che deve essere ancora trasmesso.

bottom of page