logo

Terminazione della connessione TCP

TCP (Transmission Control Protocol) è un protocollo di trasmissione che garantisce la trasmissione dei dati in modo ordinato e sicuro. Invia e riceve i pacchetti di dati nello stesso ordine. TCP è un quattro strati protocollo rispetto a OSI (Open System Interconnection Model), che è a sette strati processo di trasmissione. Si consiglia di trasmettere dati da protocolli di alto livello a causa della sua integrità e sicurezza tra server e client.

TCP necessita di un handshake a 4 vie per la sua terminazione. Per stabilire una connessione, TCP necessita di un handshake a 3 vie. Quindi, qui discuteremo il processo dettagliato di TCP per creare un file Stretta di mano a 3 vie per la connessione e a Handshake a 4 vie per la sua terminazione . Qui discuteremo di quanto segue:

Cos'è il TCP?

Strati di TCP

Connessione TCP (handshake a 3 vie)

Terminazione TCP (handshake a 4 vie)

Iniziamo.

coda di priorità Java

Cos'è il TCP?

TCP è un protocollo orientato alla connessione, ciò significa che stabilisce innanzitutto la connessione tra mittente e destinatario sotto forma di a stretta di mano . Dopo che entrambe le connessioni sono state verificate, inizia a trasmettere i pacchetti. Rende il processo di trasmissione privo di errori e garantisce la consegna dei dati. È una parte importante dei protocolli di comunicazione utilizzati per interconnettere i dispositivi di rete su Internet. L'intero sistema Internet si basa su questa rete.

TCP è uno dei protocolli più comuni che garantiscono da un capo all'altro consegna. Garantisce la sicurezza e l'integrità dei dati trasmessi. Stabilisce sempre una connessione sicura tra mittente e destinatario. Il trasmettitore è il server , e il ricevitore è noto come cliente . Possiamo anche dire che la trasmissione dei dati avviene tra server e client. Pertanto, TCP viene utilizzato nella maggior parte dei protocolli di alto livello, come FTP (File Transfer Protocol) , HTTP (Protocollo di trasferimento ipertesto) , E SMTP (Protocollo di trasferimento Mai semplice) .

Strati di TCP

I dati vengono quindi suddivisi in pacchetti, assegnati all'indirizzo, trasmessi, instradati e ricevuti a destinazione. Il processo di trasmissione comprende quattro livelli, livello di applicazione, livello di trasporto, livello Internet e livello di collegamento dati. IL livello di applicazione esegue la funzione simile ai tre livelli principali (applicazione, presentazione e sessione) del Modello OSI e controllare le specifiche dell'interfaccia utente. L'utente interagisce con il livello applicativo del modello TCP, come i sistemi di messaggistica e di posta elettronica. IL strato di trasporto fornisce una connessione dati affidabile e priva di errori. Divide i dati ricevuti dal livello dell'applicazione in pacchetti, il che aiuta a creare una sequenza ordinata. IL strato internet controlla l'instradamento del pacchetto e garantisce la consegna di un pacchetto a destinazione. Il livello di collegamento dati svolge la funzione simile ai due livelli inferiori (collegamento dati e fisico) del modello OSI. È responsabile della trasmissione dei dati tra le applicazioni o i dispositivi nella rete.

Prima di procedere verso la terminazione TCP è fondamentale comprendere il concetto di connessione TCP. Ci aiuterà a comprendere meglio il processo di risoluzione.

Connessione TCP (handshake a 3 vie)

L'handshake si riferisce al processo per stabilire una connessione tra il client e il server. La stretta di mano è semplicemente definita come il processo per stabilire un collegamento di comunicazione. Per trasmettere un pacchetto, TCP necessita di un handshake a tre vie prima di iniziare a inviare i dati. La comunicazione affidabile in TCP è definita come DI (Ritrasmissione del riconoscimento positivo). Quando un mittente invia i dati al destinatario, richiede una conferma positiva da parte del destinatario che confermi l'arrivo dei dati. Se la conferma non ha raggiunto il mittente, è necessario inviare nuovamente i dati. La conferma positiva da parte del ricevitore stabilisce una connessione riuscita.

string.valuedi Java

Qui, il server è il server e il client è il ricevitore. Il diagramma sopra mostra 3 passaggi per una connessione riuscita. Un handshake a 3 vie è comunemente noto come SYN-SYN-ACK e richiede sia la risposta del client che quella del server per scambiare i dati. SYN significa sincronizzare il numero di sequenza e ACK significa riconoscimento . Ogni passaggio è una sorta di stretta di mano tra il mittente e il destinatario.

Di seguito è mostrato il diagramma di una connessione TCP riuscita che mostra i tre handshake:

Terminazione della connessione TCP

Le tre strette di mano vengono discusse nei passaggi seguenti:

Passaggio 1: SYN

SYN è un segmento inviato dal client al server. Agisce come a richiesta di connessione tra il client e il server. Informa il server che il client desidera stabilire una connessione. La sincronizzazione dei numeri di sequenza aiuta anche a sincronizzare i numeri di sequenza inviati tra due dispositivi qualsiasi, dove lo stesso segmento SYN richiede il numero di sequenza con la richiesta di connessione.

Passaggio 2: SYN-ACK

È un segmento SYN-ACK o un segmento SYN + ACK inviato dal server. Il segmento ACK informa il client che il server ha ricevuto la richiesta di connessione ed è pronto per costruire la connessione. Il segmento SYN informa il numero di sequenza con cui il server è pronto per iniziare con i segmenti.

Passaggio 3: ACK

ACK (Riconoscimento) è l'ultimo passaggio prima di stabilire una connessione TCP riuscita tra il client e il server. Il segmento ACK viene inviato dal client come risposta all'ACK e al SN ricevuti dal server. Il risultato è la creazione di una connessione dati affidabile.

dichiarazione del caso Java

Dopo questi tre passaggi, il client e il server sono pronti per il processo di comunicazione dei dati. La connessione e la terminazione TCP sono full-duplex, il che significa che i dati possono viaggiare contemporaneamente in entrambe le direzioni.

Terminazione TCP (handshake a 4 vie)

Qualsiasi dispositivo stabilisce una connessione prima di procedere con la terminazione. TCP richiede l'handshake a 3 vie per stabilire una connessione tra il client e il server prima di inviare i dati. Allo stesso modo, per terminare o interrompere la trasmissione dei dati, è necessario un handshake a 4 vie. I segmenti richiesti per la terminazione TCP sono simili ai segmenti per costruire una connessione TCP (ACK e SYN) ad eccezione del segmento FIN. Il segmento FIN specifica una richiesta di terminazione inviata da un dispositivo all'altro.

Il client è il trasmettitore dei dati e il server è il ricevitore in un processo di trasmissione dei dati tra mittente e destinatario. Considera il diagramma di terminazione TCP seguente che mostra lo scambio di segmenti tra client e server.

Di seguito è mostrato il diagramma di una terminazione TCP riuscita che mostra i quattro handshake:

Terminazione della connessione TCP

Parliamo del processo di terminazione TCP con l'aiuto di sei passaggi che includono le richieste inviate e gli stati di attesa. I passi sono come segue:

Passaggio 1: FIN

FIN si riferisce a richiesta di cessazione inviato dal client al server. La prima richiesta di terminazione FIN viene inviata dal client al server. Rappresenta l'inizio del processo di terminazione tra client e server.

Passaggio 2: FIN_ACK_WAIT

Il client attende l'ACK della richiesta di terminazione FIN da parte del server. È un stato di attesa per il cliente.

matematica pow java

Passaggio 3: ACK

Il server invia il segmento ACK (Acknowledgement) quando riceve la richiesta di terminazione FIN. Indica che il server è pronto per chiudere e terminare la connessione.

Passaggio 4: FIN _WAIT_2

Il client attende il segmento FIN dal server. È un tipo di segnale approvato inviato dal server che mostra che il server è pronto a terminare la connessione.

Passaggio 5: FIN

Il segmento FIN viene ora inviato dal server al client. È un segnale di conferma che il server invia al client. Raffigura l'avvenuta approvazione della risoluzione.

Passaggio 6: ACK

Il client ora invia il segmento ACK (Acknowledgement) al server che ha ricevuto il segnale FIN, che è un segnale dal server per terminare la connessione. Non appena il server riceve il segmento ACK, termina la connessione.