Handshake TCP a 3 vie (SYN, SYN-ACK, ACK)

Sommario:

Anonim

Che cos'è HandShake a tre vie TCP?

L'HANDSHAKE A TRE VIE o un handshake a 3 vie TCP è un processo utilizzato in una rete TCP / IP per stabilire una connessione tra il server e il client. È un processo in tre fasi che richiede che sia il client che il server si scambino pacchetti di sincronizzazione e riconoscimento prima che inizi il processo di comunicazione dati reale.

Il processo di handshake a tre vie è progettato in modo tale che entrambe le estremità ti aiutino ad avviare, negoziare e separare contemporaneamente le connessioni socket TCP. Ti consente di trasferire più connessioni socket TCP in entrambe le direzioni contemporaneamente.

In questo tutorial sul networking, spiegheremo:

  • Cos'è il TCP Three-Way Hand Shake?
  • Tipi di messaggi TCP
  • Processo di handshake a tre vie TCP
  • Esempio del mondo reale

Tipi di messaggi TCP

Messaggio Descrizione
Syn Utilizzato per avviare e stabilire una connessione. Ti aiuta anche a sincronizzare i numeri di sequenza tra i dispositivi.
ACK Aiuta a confermare dall'altra parte che ha ricevuto il SYN.
SYN-ACK Messaggio SYN dal dispositivo locale e ACK del pacchetto precedente.
FIN Utilizzato per terminare una connessione.

Processo di handshake a tre vie TCP

Il traffico TCP inizia con un handshake a tre vie. In questo processo di handshake TCP, un client deve avviare la conversazione richiedendo una sessione di comunicazione con il Server:

Diagramma della stretta di mano a 3 vie
  • Passaggio 1: nel primo passaggio, il client stabilisce una connessione con un server. Invia un segmento con SYN e informa il server che il client dovrebbe iniziare la comunicazione e con quello che dovrebbe essere il suo numero di sequenza.
  • Passaggio 2: in questo passaggio il server risponde alla richiesta del client con il segnale SYN-ACK impostato. ACK ti aiuta a indicare la risposta del segmento che viene ricevuto e SYN indica quale numero di sequenza dovrebbe essere in grado di iniziare con i segmenti.
  • Passaggio 3: in questo passaggio finale, il client riconosce la risposta del server ed entrambi creano una connessione stabile e inizierà l'effettivo processo di trasferimento dei dati.

Esempio del mondo reale

Ecco un semplice esempio del processo di handshake a tre vie che consiste in tre passaggi:

  • L'host X inizia la connessione inviando il pacchetto TCP SYN alla sua destinazione host. I pacchetti contengono un numero di sequenza casuale (ad esempio, 4321) che indica l'inizio dei numeri di sequenza per i dati che l'Host X dovrebbe trasmettere.
  • Dopodiché, il server riceverà il pacchetto e risponderà con il suo numero di sequenza. La sua risposta include anche il numero di riconoscimento, ovvero il numero di sequenza di Host X incrementato di 1 (qui, è 4322).
  • L'host X risponde al server inviando il numero di riconoscimento che è principalmente il numero di sequenza del server che viene incrementato di 1.

Al termine del processo di trasmissione dei dati, TCP termina automaticamente la connessione tra due endpoint separati.

Sommario

  • L'handshake TCP a 3 vie o a tre vie o l'handshake a 3 vie TCP è un processo utilizzato in una rete TCP / IP per stabilire una connessione tra server e client.
  • Syn utilizza per avviare e stabilire una connessione
  • ACK aiuta a confermare all'altra parte che ha ricevuto il SYN.
  • SYN-ACK è un messaggio SYN dal dispositivo locale e ACK del pacchetto precedente.
  • FIN viene utilizzato per terminare una connessione.
  • Processo di handshake TCP, un client deve avviare la conversazione richiedendo una sessione di comunicazione con il server
  • Nella prima fase, il client stabilisce una connessione con un server
  • In questa seconda fase, il server risponde alla richiesta del client con il set di segnali SYN-ACK
  • In questa fase finale, il client riconosce la risposta del Server
  • TCP termina automaticamente la connessione tra due endpoint separati.