3.4.3 可靠传输的实现机制 —— 回退N帧协议.pdf

4.3 (二)回退N帧协议GBN

1. 停止-等待协议SW的缺点及优化

  • 缺点:停止-等待协议SW的信道利用率很低,若出现超时重传,利用率更低。
  • 优化:采用流水线传输可以提高信道利用率。

image.png

2. 回退N帧协议

在流水线传输的基础上,利用发送窗口限制发送方可连续发送数据分组的个数。

  1. 使用3个比特给分组编序号,0-70−7
  2. 发送窗口的尺寸 W_TWT 取值:1 < W_T <= 2^3-11<WT<=23−1,本例取 W_T=5WT=5
  3. 接收窗口W_RWR的取值:W_R=1WR=1

当 W_T=1WT=1 为停止-等待协议SW。

(1)无差错情况

无差错情况:正常发送与接受,无误码或丢失等情况。(若W_T=1,则为停止-等待协议)
image.png

(2)累计确认

累计确认:接收方不一定要对收到的数据分组逐个发送确认,而是可以在收到几个数据分组后(由具体实现决定)对 按序到达的最后一个数据分组发送确认。ACK_nACKn表示序号为n及以前的所有数据分组都已正确接收。

即使 AKC1丢失了,也有ACK4来确认,发送方也可能不必重传。

image.png

  • 累计确认的优点:减少接收方的开销、减少对网络资源的占用。
  • 累计确认的缺点:不能向发送方及时发送接收方正确接受数据分组的信息。

    (3)有差错情况
  • 在本例中。尽管序号为6,7,0,1的数据分组正确到达接收方,但由于5号数据分组误码不被接受,它们也“受到牵连”而不被接受。发送方还要重传这些数据分组,这就是所谓的 Go-back-N (回退N帧)

  • 可见,当通信线路质量不好时,回退N帧协议的信道利用率并不比停止-等待协议高
  • (在本例中,假设重复确认后没有立即重传=>除法重传计时器)

image.png

(4)W_TWT超过其上限7

若W_TWT超过取值范围,例如W_T=8WT=8,会出现什么情况?
image.png

如果是失败重传,序号为0-7;如果是发送新的分组,序号也为0-7。就无法分辨新旧数据分组了。

3. 回退N帧协议总结

  • 回退N帧协议在流水线传输的基础上利用发送窗口来限制发送方连续发送数据分组的数量,是一种连续ARQ协议。
  • 在协议的工作过程中发送窗回和接收窗口不断向前滑动,因此这类协议叉称为滑动窗回协议。
  • 由于回退N帧协议的特性,当通信线路质量不好时,其信道利用率并不比停止-等待协议高。

image.png

例题:

image.png