当前课程知识点:计算机网络 > 第三章:数据链路层 > 3.4 检错码 > Video
各位好
纠错码需要较多的冗余位
信道的利用率不高
在出错率不高
更关注传输效率的局域网内
主要采用的不是纠错码
而是检错码
检错码有很多
比如奇偶校验码
互联网校验和
循环冗余校验码等等
奇偶校验是常见的检错方法
奇偶位取值等同于对数据位
进行模2和的运算
比如我们要发送一个数据位串
1110000
如果采用偶校验的话
我们就会在它的后面追加一个1
保证它传输的1的个数是偶数个
如果我们收到一个码字
它是11100101
我们发现在这个码字里边
有五个1是奇数个
我们就可以判定这个码字是错的
如果我们收到一个码字
它是11011001
我们发现里面也有五个1
是奇数个
也可以判定这个码字是错的
当接收方收到一个码字是
11101101
它发现这里面有六个1
是偶数个
所以它把它判定为正确
但事实上这个码字
是刚才那个码字跳变两个
也就是发生两个错误之后
形成了一个码字
所以它的判定是错误的
那么整个奇偶校验
它能够判断正确的概率
大概是50%
另外一个常用的检错码
是互联网校验和
校验和通常是按照N位码字
来进行模2加运算
发方将运算结果
附加在数据报文的尾部
作为校验位
比如常用的十六位的互联网
补码校验和
我们今天重点要学习的检错码
是循环冗余检错码
简称CRC
CRC的工作原理是这样的
任何一个k位的帧
可以看成是一个k-1次的多项式
比如说
一个待传输的数据帧
1011001
它可以看成是这样的一个多项式
X的6次方加X的4次方加X的3次方
加X的0次方
在采用CRC这个系统里面
一定要有一个生成多项式G(x)
G(x)的奇数是r阶
这个r就是冗余位
设定一个m位的帧
它的多项式为M(x)
m是大于r的
也就是说数据位
一般来说是大于冗余位的
M(x)呢
也比生成多项式G(x)长
接着下来呢
我们把M(x)乘上X的r次方
再除以G(x)生成多项式
得到一个商Q(x)和一个余数R(x)
现在呢我们就可以把X的R次方
乘以M(x)减去余数
那么减出来的这个值
一定能够被G(x)整除
即余数为0
这是发方做的动作
而接收方呢
把收到的码字去除生成多项式
如果除的结果为0
能够整除
表明传输无错误
如果结果不为0
就表明传输的过程里头
发生了错误
CRC它的思想
我们可以用一个十进制的类似例子
来仿真一下
比如说我们的收发双方约定
能够被3整除
发送方如果发送一个数字23
那么23除3的话是不能除尽的
有一个余数2
所以发送方就用23减去这个余数
等于21
所以事实上它编码之后
发送的是21
接收方收到这个码字
如果是21的话
它就去除3
如果刚好能除尽
表明没有发生传输错误
如果收到的是22
不能够被3除尽有余数
就表明传输的过程里头出了错
但是如果我们收到24
你想一想
会发生什么情况呢
在刚才讲到的CRC的工作原理里头
我们用到了模2运算
什么是模2运算呢
模2加和模2减
都等同于一个异或运算
即相同为0 相异得1
也就是说0加0等于0 0加1得1
同样地
0减1得1
0减0得0
举一个例子
有一个数据帧是1101011011
m是等于10的
它可以写成对应的多项式M(x)
这个系统它采用的生成多项式
G(x)是这样的
奇数r等于4阶
接下来呢
我们把M(x)移位
也就是说乘上X的4次方
变成了这个样子
接着下来呢
我们把移位后的数据
去除以生成多项式
得到一个余数
1110
我们再把移位后的数据帧
减去这个余数
得到一个11010110111110
这个就是我们发送方
编码之后的码字
也就是说它发出去的码字
就是这个样子的
当这个码字到达接收方的时候
接收方把这个收到的码字
去除生成多项式10011
如果能整除就表明
接收的码字是正确的
无误的
如果收到的码字是发生了错误的
就变成了另外一个
那么它得到的结果
一定是有一个余数的
在计算CRC循环冗余校验码的时候
非常关键的就是
要有一个生成多项式
这些生成多项式国际标准里面
有一个非常著名的标准是CRC32
这个标准就是用在我们以太网
计算循环冗余校验时用的
小结一下
检错码有很多
常见的有奇偶校验
互联网校验和
循环冗余校验等等
采用循环冗余校验的系统
一定要约定一个生成多项式
采用CRC的发送方
它的码字就是被除数
减去模2除法的余数
接收方是用同样的方法
来判定余数是否为0
为0则无错
不为0则代表传输有错
-本课程简介
--课程组织
-1.1 为什么要学习计算机网络?
-1.2 互联网络发展史
--Video
--互联网络发展史
-1.3 常用的基本概念
--Video
--常用的基本概念
-1.4 参考模型(重点)
--Video
--参考模型
-1.5 参考模型相关的概念
--Video
--数据如何传输
-1.6 本课程的组织
--Video
--课程组织
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-附录3:伦敦奥运会开幕式之Tim Berners Lee
--附录说明
-第一章 概述--章节测试
-附录4:本章的无背景乐的视频
--1-4参考模型
--关于附录4的说明
-2.1 数据通信的理论基础
--Video
-2.2 有导向的传输介质
--Video
--有导向的传输介质
-2.3复用技术
--Video
--复用技术
-2.4调制技术
--Video
--调制技术
-2.5公共交换电话网络
--Video
--公共交换电话网络
-2.6物理层设备
--Video
--物理层设备
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-附录3:光纤熔接
--Video
-附录4:海底光缆
--附录说明
--外部链接
-第二章 物理层--章节测试
-附录5:本章的无背景乐的视频
--2-3复用技术
--2-4调制技术
--关于附录5的说明
-3.1 数据链路层概述
--Video
--数据链路层概述
-3.2 差错处理概述
--Video
--差错处理概述
-3.3 纠1位错的海明码
--Video
--纠1位错的海明码
-3.4 检错码
--Video
--检错码
-3.5基本数据链路协议1~3
--Video
-3.6 滑动窗口协议
--Video
--滑动窗口协议
-3.7 回退n帧
--Video
--回退n帧
-3.8 选择性重传
--Video
--选择性重传
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第三章:数据链路层--章节测试
-附录3:本章的无背景乐的视频
--3-4检错码
--3-6 滑窗协议
--3-7 回退n帧
--关于附录3的说明
-4.1 MAC子层概述
--Video
--MAC子层概述
-4.2 ALOHA协议
--Video
--ALOHA协议
-4.3 CSMA协议
--Video
--CSMA协议
-4.4 以太网概述
--Video
--以太网概述
-4.5 以太网帧格式
--Video
--以太帧格式
-4.6 二层交换的基本格式
--Video
-4.7 生成树协议
--Video
--生成树协议
-4.8 虚拟局域网
--Video
--虚拟局域网
-4.9 二层设备
--Video
--二层设备
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第四章 介质访问控制子层--章节测试
-附录3:本章的无背景乐的视频
--4-9 二层设备
--关于附录3的说明
-5.1 网络层引言
--Video
--网络层引言
-5.2 IP地址
--Video
--IP地址
--子网规划实例
-5.3 子网规划
--Video
--子网规划
-5.4 IP寻址
--Video
--IP寻址
-5.5 IP分组
--Video
--IP分组
-5.6 什么是IPv6?
--Video
--什么是IPv6?
-5.7 IPv6地址
--Video
--IPv6地址
-5.8 IPv6分组
--Video
--IPv6分组
-5.9 IPv6过渡技术
--Video
--IPv6过渡技术
-5.10 路由从何而来?
--Video
--路由如何而来
-5.11 距离矢量路由选择协议
--Video
-5.12 路由信息协议RIP
--Video
--RIP
-5.13 RIP为什么衰落?
--Video
-5.14 链路状态路由选择LS
--Video
-5.15 单区域OSPF
--Video
-5.16 无类域间路由 CIDR
--Video
--CIDR
-5.17 网络地址翻译 NAT
--Video
--NAT
-5.18 互联网控制消息协议 ICMP
--Video
--ICMP
-5.19 地址解析协议 ARP
--Video
--ARP
-5.20 拥塞控制
--Video
--拥塞控制
-5.21 流量整形
--Video
--流量整形
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第五章 网络层--章节测试1
-第五章 网络层--章节测试2
-第五章主观测试题
-附录3:本章的无背景乐的视频
--5-2_IP地址
--5-3_子网规划
--5-4_IP寻址
--5-5_IP分组
--5-9过渡技术
--5-21流量整形
-6.1 传输层概述
--Video
--传输层概述
-6.2 用户数据报协议 UDP
--Video
-6.3 通信模型
--Video
--通信模型
-6.4 TCP数据段
--Video
--TCP数据段
-6.5 TCP三次握手建立连接
--Video
-6.6 TCP连接释放
--Video
--TCP连接释放
-6.7 TCP传输策略
--Video
--TCP传输策略
-6.8 TCP拥塞控制
--Video
--TCP拥塞控制
-6.9 TCP定时器等
--Video
--TCP定时器等
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第六章 传输层--章节测试
-附录3:本章的无背景乐的视频
--6-1传输层概念
--6-2UDP
--6-3通信模型
-linux
-windows
-7.1 应用层概述
--Video
--应用层概述
-7.2 域名系统 DNS 概述
--Video
-7.3 DNS之域名解析
--Video
--域名解析
-7.4 电子邮件 e-mail
--Video
-7.5 万维网 WWW
--Video
--万维网 WWW
-7.6 其它应用
--Video
--其它应用
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第七章 应用层--章节测试
-附录3: 本章无背景音乐的视频
--7-4_电子邮件
--7-6_其它应用