差错检测和纠错技术
-
发送方接受的挑战:为避免比特差错,使用差错检测和纠错比特(error-detection and-correction,EDC)来增强数据D。由于传输中比特翻转,到达目的地的EDC’和D’可能不同。
-
接收方接受的挑战:只接收到D’和EDC’判断D’和初始D是否相同,接收方可能无法知道接收的信息中包含比特差错。
-
奇偶校验
- 单个比特校验:不够健壮。
- 二位奇偶校验(two dimensional parity):包含比特值改变的列和行的校验值都会出现差错。——检测到出错并纠正。
- 前向纠错(Forward Error Correction,FEC):接收方检测和纠正差错的能力。
-
检验和方法
- 互联网检验和(Internet checksum):数据的两个字节作为16比特的整数对待并求和,这个和的反码形成了携带在报文首部的互联网检验和。
- 对检验和方法的评价:分组开销小,差错保护相对较弱。
-
循环冗余检测
- 循环冗余检测(Cyclic Redundancy Check,CRC),也称为多项式编码(polynomial code),将发送的比特传看做是系数为0和1的一个多项式。
- CRC编码操作:发送方和接收方首先协商一个r+1比特模式,称为生成多项式(generator),表示为G。要求G的最高有效位为1。对于