检错码 - 奇偶校验


错误和错误检测

当比特在计算机网络上传输时,由于干扰和网络问题,它们可能会损坏。损坏的比特会导致接收方收到虚假数据,这被称为错误。

错误检测技术负责检查通过网络传输的帧中是否发生了错误。它不考虑错误位的数量和错误的类型。

为了进行错误检测,发送方需要与数据位一起发送一些额外的位。接收方根据额外的冗余位执行必要的检查。如果发现数据没有错误,则在将消息传递到上层之前删除冗余位。

有三种主要的错误检测技术:奇偶校验、校验和和循环冗余校验 (CRC)。

奇偶校验位

奇偶校验是通过向数据添加一个额外的位(称为奇偶校验位)来完成的,以使 1 的数量根据奇偶校验类型为偶数或奇数。奇偶校验仅适用于单比特错误检测。

奇偶校验的两种类型是

  • 偶校验 - 此处消息中的总位数为偶数。

  • 奇校验 - 此处消息中的总位数为奇数。

通过奇偶校验进行错误检测

发送端 - 创建帧时,发送方计算帧中 1 的数量,并添加奇偶校验位,其值如下确定 -

  • 在偶校验的情况下:如果 1 的数量为偶数,则奇偶校验位值为 0。如果 1 的数量为奇数,则奇偶校验位值为 1。
  • 在奇校验的情况下:如果 1 的数量为奇数,则奇偶校验位值为 0。如果 1 的数量为偶数,则奇偶校验位值为 1。

接收端 - 接收到帧后,接收方计算帧中 1 的数量。在偶校验的情况下,如果 1 的数量为偶数,则接受该帧;否则,拒绝该帧。在奇校验的情况下,如果 1 的数量为奇数,则接受该帧;否则,拒绝该帧。

示例

假设发送方想使用偶校验方法发送数据 1001101。它将添加奇偶校验位,如下所示。

接收方将通过计算 1 的总数是否为偶数来确定是否发生了错误。当接收上述帧时,可能出现三种情况:无错误、单比特错误检测和无法检测多比特错误。这说明如下 -

更新于:2020年6月27日

16K+ 浏览量

开启你的职业生涯

完成课程获得认证

开始学习
广告