- 为了解决传输信道较长的场景,避免一次只传输一组数据,设定发送窗口,这样就可以一次传输多组数据
- 对于发送方
- 发送窗口的尺寸Wt的取值范围是1<Wt<2^n-1,n为构成分组序号的比特数量
- Wt = 1, 就是停止等待协议
- Wt>2^n-1,接收方无法分辨新,旧数据分组
- 发送方可在未收到接收方确认分组的情况下,将序号落在发送窗口内的多个数据分组全部发送出去
- 发送方只有收到对已发送数据分组的确认时,发送窗口才能向前相应滑动
- 发送方收到多个重复确认时,可在重传计时器前尽早开始重传,由具体实现决定
- 发送方发送窗口内某个已发送的数据分组产生超时重发时,其后续在发送窗口内且以发送的数据分组未必必须全部重传,主要应对的是没有确认信息,就没必要接着重传
- 对于接收方
- 接收方数据窗口尺寸Wr=1,因此接收方只能按序接收数据分组
- 接收方只接收序号落在接收窗口内且无误码的数据分组,并且将接收窗口向前滑动一个位置,与此同时给发送方发回确认分组。为了减少开销,接收方不一定每收到一个按序到达且无误码的数据分组就给发送方发回一个确认分组
- 接收方收到未按序到达的数据分组,除丢弃外,还要对最近按序接收的数据分组进行确认
- 注意:因为在协议工作过程中发送窗口和接收窗口不断向前滑动,因此也称为滑动窗口协议,由于回退N帧协议的特性,当通信线路质量不好时,其信道利用率不比停止等待协议的高