.:SiMoNeT:.

 

[3]. 3 Way- Handshake

Il processo di sincronizzazione di una connessione TCP/IP viene definita 3 Way-HandShake

(3 Vie, Stretta di Mano). In pratica avviene in questo modo:

L'Origine invia un pacchetto con il flag SYN impostato e con un SEQ che chiameremo ISN

(Initial Sequence Number, Numero iniziale di sequenza) ad un deamon, server. Il computer

che ha ricevuto il pacchetto decide se accettarlo o meno (se il campo porta destinazione

è effettivamente in ascolto), e se viene accettato invia un altro numero s_ack che è l'ISN

incrementato e il suo numero di SEQUENZA con il flag SYN e ACK impostato. A questo punto

l'origine invia il suo numero di SEQUENZA che è il numero ACK che ha ricevuto e il campo

s_ack che risulta uguale al ISN incrementato questa volta con il flag ACK impostato. Questo

processo risultera più comprensibile con questi schemi:

MITTENTE: [ISN = CALCOLO ISN, SYN IMPOSTATO] ---> RICEVENTE

RICEVENTE: [SEQ = CALCOLO SEQ, ACK = ISN+1 SYN IMPOSTATO] --> MITTENTE

.

. /| \

/|\ |

| + --------+

+----|----+

| |

\|/ \|/

' '

MITTENTE: [SEQ = ACK, ACK = SEQ, ACK IMPOSTATO] --> RICEVENTE

Vediamo una sessione dump di una sincronizzazione di una connessione TCP/IP:

127.0.0.1:2118 >127.0.0.1:25 SEQ:2361518645 ACK:0 FLAGS: SYN

127.0.0.1:25 >127.0.0.1.1:2118 SEQ:0548318403 ACK:2361518646 FLAGS: SYN ACK

|\

127.0.0.1:2118 >127.0.0.1.2:23 SEQ:2361518646 ACK:0548318403 FLAGS: ACK

Da questo punto la connessione è sincronizzata.

 

<Pag 2

Pag 4>

 

Directory con Motore di ricerca di Moby Dyck.com