差错检测和纠正技术
我们知道,数据报在链路层中传输时,可能会出现比特损失(如0变成1,1变成0),我们当然不想要传输错误的数据报,因此我们需要对数据进行差错检测和纠正。
差错检测一般和纠正同时实现,差错检测技术有以下几种
- 奇偶校验(用来描述差错纠正以及背后的思想)
- 检验和方法(通常更多的应用于运输层)
- 循环冗杂检测(通常更多的应用在适配器的链路层)
纠正的作用:当我们一个数据报出错时,一般会要求重发,而发送方重发的开始需要收到一个NAK或者超时,而纠正技术就能减少这段时延,这样就能显著提高数据传输的速度
奇偶校验
奇偶校验基本思想:我们假设数据D有d个比特,如果我们用的是偶校验,这在这d个比特后再加一个校验比特(0或1),让这d+1个比特中1的个数为偶数个
例:
D: 1 1 0 1
偶校验:校验比特:1
奇校验:校验比特:0
校验比特一般放在一个单独的字段
在偶检验方案中,如果接收方检查到接受到的比特中1的个数为奇数个,这说明出现了奇数个比特错误
显然,这种校验是不够健壮的,因为当出现偶数