跳转至

等停差错控制协议介绍

等停差错控制协议(Stop-and-Wait Automatic Repeat Request,简称Stop-and-Wait ARQ)是一种常见的差错控制协议,用于在数据通信中实现可靠的传输。该协议基于停等原则,即发送方在发送每个数据包后会等待接收方的确认信息,只有在接收到确认后才发送下一个数据包。本文将介绍Stop-and-Wait ARQ的原理、工作流程和应用场景。

原理

Stop-and-Wait ARQ协议通过引入确认帧(ACK)和重传机制来实现可靠传输。其原理如下:

  1. 发送方将数据分成固定大小的数据帧(64B),并为每个数据帧分配一个唯一的序列号。

  2. 发送方发送数据帧到接收方,并开始启动计时器。

  3. 接收方接收数据帧后进行校验,如果数据正确无误,则发送一个ACK帧作为确认。

  4. 发送方接收到ACK帧后,停止计时器,表示该数据帧已被成功接收。然后发送下一个数据帧。

  5. 如果发送方在计时器超时前未收到ACK帧,它会假设数据帧丢失或损坏。发送方将重新发送相同的数据帧,直到接收到ACK帧。

  6. 接收方在接收到重复的数据帧时会丢弃它们,以避免重复处理。

  7. 这个过程会一直重复,直到所有数据帧都被正确接收。

工作流程

Stop-and-Wait ARQ协议的工作流程如下:

  1. 发送方将数据分成固定大小的数据帧。

  2. 发送方发送第一个数据帧,并启动计时器。

  3. 接收方接收数据帧,进行校验。

  4. 如果数据帧正确无误,接收方发送ACK帧作为确认。

  5. 发送方接收到ACK帧后,停止计时器,发送下一个数据帧。

  6. 如果发送方在计时器超时前未收到ACK帧,它会重新发送相同的数据帧。

  7. 接收方在接收到重复的数据帧时会丢弃它们。

  8. 这个过程会一直重复,直到所有数据帧都被正确接收。