ARQ概述
传统自动重传请求分成为三种,即停等式(stop-and-wait)ARQ,回退n帧(go-back-n)ARQ,以及选择性重传(selective repeat)ARQ。后两种协议是滑动窗口技术与请求重发技术的结合,由于窗口尺寸开到足够大时,帧在线路上可以连续地流动,因此又称其为连续ARQ协议。三者的区别在于对于出错的数据报文的处理机制不同。三种ARQ协议中,复杂性递增,效率也递增。除了传统的ARQ,还有混合ARQ(Hybrid-ARQ)。
ARQ
停止等待协议(停等式ARQ)
因为是讨论可靠传输的原理,因此把传送的数据单元称为分组,而不考虑在那个层次上传输的。
1 无差错情况
2出现差错
实现超时重传,每发送完一个分组时设置一个超时计时器
。
- A在发送完一个分组后,
必须暂时保留已发送的分组副本
,只有在收到相应的确认后才能清除暂时保留的分组副本。 - 分组和确认分组都必须进行
编号
。一一对应 - 超时计时器设置的时间应
大于分组传输的平均往返时间
。(计时器的确定复杂,经过哪些网络、网络拥塞情况等不确定因素)
简化图
3确认丢失和确认迟到
B收到了M1的重传后有两种动作:
- 丢弃这个重复的分组M1,不向上层交付
- 向A发送确认。不能认为已经发送过确认就不发送,A重传M1表示A未接受到确认。
(b)A会收到重复的确认,丢弃
使用上述的机制,就可以在不可靠的传输网络上实现可靠的同行
ARQ(Automatic Repeat reQuest)自动重传请求
4信道利用率
RTT>Td时,信道利用率特别低。
连续ARQ协议
发送方:维持一个发送窗口,窗口内的分组可以连续发送。
接收发:累计确认,接收到几个分组,对按序到达的最后一个分组确认。
回退N
发信侧不用等待收信侧的应答,持续的发送多个帧,假如发现已发送的帧中有错误发生,那么从那个发生错误的帧开始及其之后所有的帧全部再重新发送。