Sistemi di elaborazione dell'informazione / Reti

La sincronia trilaterale

Come inizia la trasmissione di un flusso di dati TCP? La sequenza iniziale è detta three-way handshaking o sincronia trilaterale, perché si compone di tre fasi. La sincronia trilaterale avviene più o meno come se tra mittente e destinatario ci fosse uno scambio di messaggi del tipo:

  1. "Iniziamo una connessione, fammi sapere se sei in linea e hai ricevuto questa richiesta".

  2. " Sì, io ho ricevuto la tua richiesta e sono pronto a stabilire il collegamento ".

  3. "Va bene, ho ricevuto la tua conferma di ricezione; ecco i primi dati per te".

Questa fase iniziale è essenziale per le applicazioni che richiedono un trasferimento affidabile dei dati, cioè un collegamento che garantisca che ogni pacchetto sarà ricevuto correttamente. Il protocollo FTP (File Transfer Protocol, Protocollo di Trasferimento dei File), ad esempio, usa TCP per essere sicuro di trasferire integralmente i file, e non ha alcun altro meccanismo incorporato per eseguire ciò. La figura seguente mostra il contenuto dell' intestazione TCP durante la sincronia trilaterale. In particolare, sono visualizzati i campi che contengono i numeri di porta del programma che invia i dati e di quello che li riceve, il numero di sequenza e quello di conferma di ricezione, nonché alcuni bit di flag che hanno un ruolo importante (SYN e ACK).

All'inizio della connessione il mittente (client) invia un pacchetto con il bit SYN impostato a 1, il che significa che contiene una richiesta di inizio connessione. Il numero di sequenza non parte da zero, ma da un valore casuale (il numero 3245) per evitare confusioni con altre connessioni in corso con lo stesso server. Il numero di conferma è invece 0 perché, ovviamente, il pacchetto è il primo della sequenza tra client e server. Il server replica con un pacchetto in cui SYN è parimenti impostato a 1, il numero di sequenza ha un valore casuale (il numero 7654) e il numero della conferma di ricezione vale 3246, cioè 3245+1. Infine, il terzo pacchetto inviato dal client conferma la ricezione del precedente (la conferma di ricezione vale 7655=7654+1) e imposta il bit SYN a 0, per indicare che la connessione è cominciata.






















































Tutto quanto riportato in questa pagina è a puro scopo informativo personale. Se non ti trovi in accordo con quanto riportato nella pagina, vuoi fare delle precisazioni, vuoi fare delle aggiunte o hai delle proposte e dei consigli da dare, puoi farlo mandando un email. Ogni indicazione è fondamentale per la continua crescita del sito.