handshake de três vias e número de sequência

handshake de três vias e número de sequência

Olhando a imagem abaixo, retirada do livro de Ilya Grigorik - High Performance Browser Networking, posso entender que o pacote SYN escolhe um número de sequência aleatório que é incrementado no pacote SYN ACK (N+1). Finalmente, no pacote ACK, ambos os números de sequência (N+1) e de confirmação (N+1) são incrementados.

Ao testar com o Wireshark, obtive o pacote ACK com número de reconhecimento = N+1, mas oNúmero de sequência = N. Isso é um erro do autor quando diz que no pacote ACK os números de sequência e de reconhecimento são incrementados?

insira a descrição da imagem aqui

Responder1

RFC 793estadosrepetidamenteque o número de confirmação é o número de sequência deo próximo pacote que o final espera receber. Assim, será sempre maior que o número de sequência.

Por exemplo, na seção 2.6:

Os segmentos também carregam um número de confirmação que é o número de sequência do próximo octeto de dados esperado de transmissões na direção reversa.

Na seção 3.1:

Número de confirmação: 32 bits

Se o bit de controle ACK estiver definido, este campo contém o valor do próximo número de sequência que o remetente do segmento espera receber. Depois que uma conexão é estabelecida, ela é sempre enviada.

A Seção 3.3 explica em detalhes como funcionam os números de sequência e por que funcionam dessa maneira. Você provavelmente achará isso muito mais esclarecedor do que seu livro.

informação relacionada