
Al observar la imagen a continuación, tomada del libro de Ilya Grigorik - Redes de navegador de alto rendimiento, puedo entender que el paquete SYN elige un número de secuencia aleatorio que se incrementa en el paquete SYN ACK (N+1). Finalmente, en el paquete ACK se incrementan tanto los números de secuencia (N+1) como los de reconocimiento (N+1).
Al realizar la prueba con Wireshark, obtuve el paquete ACK con un número de reconocimiento = N+1, pero elNúmero de secuencia = norte. ¿Es esto un error del autor cuando dice que en el paquete ACK se incrementan tanto los números de secuencia como los de acuse de recibo?
Respuesta1
RFC 793estadosrepetidamenteque el número de acuse de recibo es el número de secuencia deel siguiente paquete que finaliza espera recibir. Por tanto, siempre será mayor que el número de secuencia.
Por ejemplo, en la sección 2.6:
Los segmentos también llevan un número de acuse de recibo que es el número de secuencia del siguiente octeto de datos esperado de transmisiones en dirección inversa.
En la sección 3.1:
Número de reconocimiento: 32 bits
Si el bit de control ACK está establecido, este campo contiene el valor del siguiente número de secuencia que el remitente del segmento espera recibir. Una vez que se establece una conexión, ésta siempre se envía.
La sección 3.3 explica en detalle cómo funcionan los números de secuencia y por qué funcionan de la forma en que lo hacen. Probablemente le resulte mucho más esclarecedor que su libro.