Duda sobre nros de secuencia TCP

Duda sobre nros de secuencia TCP

de Diego Damian Berrueta Gonzalez -
Número de respuestas: 2

Buenas, 

Suponiendo que A y B tienen una conexión TCP establecida previamente y se da la siguiente secuencia de segmentos:

A -> B    sec: 30, ack: 70, datos: 'J' 

B -> A    sec: 70, ack: 31, datos: 'M' 

A -> B    sec: 31, ack: 71, sin datos

Cual sería el sec del siguiente segmento A -> B?? Lo mas lógico sería q fuera 32 pero no sabría explicarlo así que dejo la duda planteada. 

Aclaración: la pregunta me surge pq en el libro encontré que el número de secuencia aumenta según la cantidad de bytes de la carga útil de los segmentos pero el último segmento de la secuencia es un Ack puro sin datos entonces no sabría si el próximo nro de secuencia de A a B debería ser 32 o 31. (Entiendo que en el establecimiento de la conexión el numero de secuencia del ack del cliente es uno mas que el del syn del cliente, pero el libro dice explícito que eso sucede,  en el caso que presento no me queda claro como sería) 

Gracias

En respuesta a Diego Damian Berrueta Gonzalez

Re: Duda sobre nros de secuencia TCP

de Martin Giachino -

Creo que en el libro está claro, yo ahora no tengo la versión en español, pero te paso lo que dice la versión en inglés: "TCP's use of sequence numbers reflects this view in that sequence numbers are over the stream of transmitted bytes and not over the series of transmitted segments. The sequence number for a segment is therefore the byte-stream number of the first byte in the segment."

No, es 31 porque en el ACK no mandaste datos y que por otra parte es el byte que el receptor (B) te dice que está esperando. El numero de secuencia es un reflejo de la cantidad de bytes que has enviado antes.

Martín