TCP滑动窗口的讲解疑问

来源:2-8 TCP的滑窗

YogurtJ

2020-02-02

在TCP滑窗的9分35秒左右,
老师讲到 “此时,只有收到对端大于32的序号的ACK,即收到32到40之间某个ACK序号的回执的时候,咱们的滑动窗口才会发生移动。
这里假设收到对端序号为36的ACK回执,则滑动窗口会向右移动4位,到36这个地方,进而我们的程序就能够发送序号为52到55的数据了”

我认为不是应该只要收到了对端序号为36的ACK, TCP会话发送端的滑动窗口就会向右移动四位,而是对端序号为36的ack以前的所有ack都收到了,滑动窗口才会移动?。

不然的话,比如说发送方的34序号的包在中途lost了,但是36的包没有lost并收到了ACK,按老师的说法滑动窗口直接移到了从36开始,可是34却还没有得到正确发送

疑问来自于我用了这个的网站的动画做实验的时候如果只收到36而没收到34的话,滑动窗口没有移动
https://media.pearsoncmg.com/aw/ecs_kurose_compnetwork_7/cw/content/interactiveanimations/selective-repeat-protocol/index.html

希望祥仔可以解答疑惑,感谢!

写回答

1回答

翔仔

2020-02-03

同学好,确实是这样的,当时讲得不明白,多了个"某个",非常抱歉,这里更正一下,滑动窗口向右滑动的前提是左边界已经接收到确认了,所以应该是32-36已经全部收到ack,才会移动到36

2
0

剑指Java面试-Offer直通车 百度资深面试官授课

招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航

8442 学习 · 1872 问题

查看课程