设传输层采用SR协议,发送窗口(Ws)和接收窗口(Wr)均为3,分组编号空间为[0,7],上层有编号为0-4的5个分组等待传输层

设传输层采用SR协议,发送窗口(Ws)和接收窗口(Wr)均为3,分组编号空间为[0,7],上层有编号为0-4的5个分组等待传输层连续发送,发送端在发送过程中,先后收到确认ACK1、ACK0、ACK3、ACK4、ACK2,接收端 收到分组的编号顺序是:0、1、4、3、2,而且未收到过重复的分组。试问:
(1)接收端在正确收到0号分组后做了哪些操作?
(2)发送端在收到ACK1后做了哪些操作?
(3)当针对2号分组的计时器超时后,发送端做了哪些操作?
(4)发送端在收到ACK0后做了哪些操作?
(5)接收端在正确收到2号分组后做了哪些操作?
【正确答案】:(1)接收端在正确收到 0 号分组后,向发送方发送 ACK0,将 0 号分组交付上层,将接收窗口的“接收基序号”滑动到 1。
(2)发送端在收到 ACK1 后,将 1 号 分 组 标记为已接收。
(3)当针对 2 号分组的计时器超时后,发送端 重发 2 号分组,并启动针对 2 号分组的计时器重新开始计时。
(4)发送端在收到 ACK0 后,将 0 号分组标记为已接收,此时发送窗口内的1 号分组已被标记为已接收,但 2 号分组仍未被确认“已接收”,因此将滑动窗口向右移动,使发送基序号变为 2,利用可用分组号 3、4 分别发送 3、4 号分组,分别启动针对 4、5 号分组的计时器开始计时。
(5)接收端在正确收到 2 号分组后,发送 ACK2,将 2、3、4 号分组一并交付上层,将接收窗口的“接收基序号”向右滑动到 5。