停止等待:每发送完一个分组就停止发送,等待对方的确认。在收到确认后再发送下一个分组。
超时重传:每发送一个分组,保存该分组的拷贝(方便丢失后超时重传),设置一个超时计时器,如果在超时计时器到期之前收到对方的确认,就撤销已设置的超时计时器。如果超时计时器到期之前没有收到确认,就进行重传。
信道利用率
停止等待协议的优点是简单,缺点是信道利用率太低。
流水线传输
为了提高传输效率,发送发可以不使用低效率的停止等待协议,而是采用流水线传输。
流水线传输:就是发送方可连续发送多个分组,不必每发完一个分组就停顿下来等待对方的确认。这样可使信道上一直有数据不间断地在传送。
当使用流水线传输时,就要使用下面介绍的连续ARQ协议和滑动窗口协议。
连续ARQ协议
发送方的发送窗口:位于发送窗口内的5个分组都可连续发送出去,而不需要等待对方的确认。
接收方累计确认:不必对收到的分组逐个确认,而是在收到几个分组后,对按序到达的最后一个分组发送确认。表示到这个分组为止的所有分组都已正确收到了。
- 优点:容易实现,即使确认丢失也不必重传
- 缺点:不能向发送方反映出接收方已经正确收到的所有分组的信息
例如,如果发送方发送了前5个分组,而中间的第3个分组丢失了。这时接收方只能对前两个分组发出确认。发送方无法知道后面三个分组的下落,而只好把后面的三个分组都再重传一次。这就叫做Go-back-N(回退N),表示需要再退回来重传已发送过的N个分组。可见当通信线路质量不好时,连续ARQ协议会带来负面的影响。