Three-Way Handshake – SYN, SYN+ACK, ACK (TCP)

0
21787

Three-Way Handshake ou 3-Way Handshake (Handshake de três vias) é responsável pelo estabelecimento de conexões no TCP.

Protocolo TCP
O protocolo TCP é um serviço de entrega de pacotes que garante a entrega e a integridade do pacote e funciona basicamente na conexão lógica entre dois computadores. Nesse tipo de comunicação, ambos os computadores entre em conformidade de como será feito o envio dos pacotes entre si. Quando uma
informação é transmitida, mecanismos de verificação de integridade garantem que a informação seja recebida sem erros.
É utilizado em transmissões onde nenhum tipo de erro é aceitável (http(web) , ftp etc), por conta dos vários mecanismos de verificação citados acima, isso o torna relativamente lento comparado ao protocolo UDP que possui mecanismos de verificação mais simples.

Three-Way Handshake (3-Way Handshake) – Funcionamento

ACK = Acknowledgement (Reconhecimento)
SYN = Synchronize (Sincronizar)

Estabelecimento de conexões
1. O cliente envia um pacote com a flag SYN ativa;
2. O servidor responde com um pacote com as flags SYN + ACK;
3. O cliente responde com um pacote ACK.

Exemplo:
1. Cliente: Servidor, estou enviando a mensagem 100 (Número de sequência do cliente). Dá pra sincronizar (SYN)?
2. Servidor: Claro, sincroniza a mensagem 200 (Número de sequência do servidor) que estou enviando (SYN). Prossiga com a mensagem 101 (ACK).
3. Cliente: Ok, estou enviando a mensagem 101. Prossiga com a mensagem 201 (ACK).