Вопрос

Ok so I've got this question for homework, I'm given that 'Host X' sends 'Host Z' a packet and the Seq=46 and Ack=87 and the payload/data = 'Hello?'

From there I am given: a packet sent from Host Z to Host X with payload='Go away' and the last packet sent from Host X to Host Z with the data='No!'

The homework is to find out what the value of the Seq and Ack of the last two packets would be. I know the handshake is over so it's not just as simple as adding 1 to the Seq and putting it into the Ack of the next packet. I read somewhere that when a payload is received the recipient then issues an Ack equal to 1 + the length of the payload in bytes. If that is correct how would I go about turning those strings into bytes? And what happens with the Seq? Is that still grabbed straight form the prior packets Ack?

Thank you all so much.

Assuming each character is equal to one byte, I will go ahead and answer my question, and if I'm wrong hopefully someone will correct me.

I am making the assumption that the Seq and Ack I'm given is the first transmission out of the handshake, so:

X->Z Seq=45 Ack=NULL
X<-Z Seq=86 Ack=46
X->Z Seq=46 Ack=87

X->Z Seq=46 Ack=87 data='Hello?'  (6 bytes)
X<-Z Seq=87 Ack=52 data='Go away' (7 bytes)
X->Z Seq=52 Ack=94 data='No!'     (3 bytes)

I believe that is all and that what I have above is correct, but please let me know if I did something wrong. Thank you all again.

Это было полезно?

Решение

I would recommend installing wireshark, and playing. You can look at the individual TCP segments, flags and data. You get a feel for how it works after a while.

I think your answer is correct, you could add the flags and len like this as well to help in understanding.

X->Z [SYN]      Seq=45
X<-Z [SYN, ACK] Seq=86 Ack=46
X->Z [ACK]      Seq=46 Ack=87

X->Z [ACK]      Seq=46 Ack=87 Len=6 data='Hello?'  
X<-Z [ACK]      Seq=87 Ack=52 Len=7 data='Go away'
X->Z [ACK]      Seq=52 Ack=94 Len=3 data='No!'

Note there is at least one more sequence, even if the application layer dose nothing else.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top