当前课程知识点:网络技术与应用 >  第2讲 数据通信基础 >  2.4 差错控制 >  2.4-1 差错控制—检错码

返回《网络技术与应用》慕课在线视频课程列表

2.4-1 差错控制—检错码在线视频

2.4-1 差错控制—检错码

下一节:2.4-2 差错控制—确认和重传

返回《网络技术与应用》慕课在线视频列表

2.4-1 差错控制—检错码课程教案、知识点、字幕

信号在传输过程当中出错是难免的

差错控制技术就是为了解决信号在传输过程当中出错的

一种技术

它主要包括两个方面

一个是怎么样终端检测出这种错误

另外一个是怎么样来纠正这种错误

而检错码就是为了让接收端

检测出信号在传输过程当中错误的方法

下面我们就来学习出错的现象和原因

以及常用的两种检错码的生成方法

所谓出错 很简单

就是发送端发送的二进制位流和接收端接收到的二进制位流

不一致

比如说 发送端发送了一个1010

而经过物理链路传输以后

接收端接收到的信号变成了1011

传输过程出错有可能是某一个二进制位

也有可能随机的多个二进制位

也有可能是连续的多个二进制位

那么通常在网络当中

出错的二进制位往往是连续的多位二进制位

但是连续多位二进制位起始位在哪里是随机的

网络出现这种错误的现象

在二进制位流从发送端到接收端

经历的每一个步骤都有可能发生

比如要提高数据的传输速率就有可能增加出错的概率

对于数字传输系统来说

我们往往通过增加幅度的离散值的数量来提高

每一位码元表示的二进制数的位数

但是表示的二进制数位数越多 那么幅度之间的差距就越小

那么出错的概率就越大

对于模拟传输系统来说

那么往往通过增加信号的状态数

来提高每一位码元表示的二进制数的位数

那么这些都有可能增加数据传输过程当中出错的概率

那么怎么样让接收端检测到数据是出错了呢

如果说 光传输一个数据

那么接收端是很难判断数据是对的还是错的

比如说 刚才发送端发送的1010这样一个二进制位流

而接收到的是一个1011

那么接收端怎么判断这个1011错了呢

因此我们在发送数据的同时

可能还要增加一些其它的控制信息

检错码就是为了使得接收端能够检测出数据传输过程当中

发生的错误而添加的附加信息

那么这个检错码应该可以通过某一种算法

然后对原始的二进制位经过一定的运算得到

下面 我们看一下检错码的生成过程和传输出错检测的过程

在发送端原始数据的基础上增加一个检错码

那么这个检错码是通过对原始数据经过一定的计算得到

那么把这个检错码和原始数据一起封装成一个分组

通过网络传输到接收端

接收端接收到这个分组以后

把数据分离出来

以同样的算法计算出一个检错码

如果这个检错码跟接收到的检错码是相等的

说明数据传输是正确的

如果是不相等的 那么说明数据在传输过程当中出错了

那么生成的检错码有什么要求呢

通常我们说 计算检错码的函数最好是具备这样几个特点

第一 对于不同的数据能够计算出不同的检错码

如果说不同的数据检错码是相同的

那么对方就很难判断数据是正确还是错误

第二个 检错码的位数要远远地小于原来的数据

而且是固定的位数

第三 函数计算的过程要非常的简单

而事实上 要符合这样三个特点的函数是不存在的

因为相对来说 这三个特点是互相矛盾的

因此 在计算的过程当中

选择计算检错码的函数时

需要在函数的计算复杂度 检错码的位数

以及传输出错监测能力 这三个方面进行综合平衡

下面 我们来具体看一下两种常用的检错码

首先我们来看一下检验和 这种检错码的生成过程

下面我们来看一下计算的方法

把数据分成长度固定的几个数据段

这个长度通常以字节为单位

或者是字节的整数倍

或者是一个字节为单位

分成若干个数据段 把数据段按照反码的运算规则

来进行累加

累加以后产生一个值 然后把这个值取反

取反以后的值作为检错码

这是检验和的计算过程

下面我们来举一个例子

比如说 我们要把一个字符串0123456

这样一个字符串计算出一个检错码

那么我们把字符串生成的二进制位流以8位为单位

进行分段

然后求出一个检验和

我们第一位的0传输过程当中变成了7

就是出错了

那么我们看一下接收端怎么检测出这样一个错误

首先 我们把0123456转换成二进制位流

就用它的ASCII码表示

然后以8位为单位分段

分段以后的数据段以反码的运算规则相加

我们反码的运算规则就是最高位的进位加到最低位上

那么形成一个累加和

这是01100110

然后把累加和取反

就得到了检验和

我们说 累加和和检验和之间有这样一个关系

就是这两个数相加以后是全1

然后把相加以后的全1结果取反应该是0

这是发送端发送的数据

那么我们假设第一个数据0变成了7

接收端把接收到的数据重新按照同样的方法来进行分段

并且按照反码运算规则进行累加

得到了这样一个累加和

我们把这个累加和跟接收到的数据的检验和进行相加

然后相加以后的结果不是全1

取反以后不是0

因此就可以判断接收到的数据发生了错误

这是检验和的生成和检测过程

那么 检验和的这种方法非常简单 也方便

它能够检测出单段数据当中连续多位二进制数错误

但是对于分布在多段数据当中的二进制数错误

就有可能无法检测出来

比如说 有这样一个二进制位流

我们把它进行分段以后 是这样一个结果

那么对于接收端接收到的数据是这样一个二进制位流

也就是说 在发送的二进制位流当中

第二段的最后两位发生了错误

到了接收端就由01变成了10了

第三段的最后两位由10变成了01了

发送端的累加和 和接收端的累加和正好是一样的

这样一种情况 检验和的方法就检测不出来

那么检验和的算法在计算机网络当中

还是常常被用来作为检错技术

但是 为了提高传输网络的检错能力

它需要和其它检错技术一起使用

下面我们看另外一种检错码的生成方法

就是循环冗余码

这个循环冗余检验机制是这样子的

我们来看一下循环冗余码的生成过程

假设传输过程当中要传输这样一串二进制位流

就是11000011

我们把它记为M(x)

对这个传输的数据 需要找一个除数

假设记为G(x)

假定现在已经找到这个除数是10011

然后把G(x)的最高位指数记为r

那么对于现在找出来的这个除数来说 r=4

第三步 把原来的数据乘上2的r次方

就得到这样一个数

然后 用得到的这个数除以找到的G(x)

然后得到一个余数R

这个R就是我们要传输的数据的检错码

那么从这里我们可以看出来

检错码的生成最关键的就是要找一个G(x)

那么在接收端接收这个检错的过程是怎么做的

接收到的这个数据 比如说是M(x)'

用这个数据再乘上2的r次方

再减掉检错码R

然后在除以找到的这个除数G(x)

如果能够整除的话

那么说明发送端的M(x)和接收端的M(x)'是相同的

没有出错

否则的话 数据就出错了

所以 循环冗余码的生成最重要的是要找一个除数G(x)

我们把这个G(x)也称为生成多项式

当然 G(x)要找的话非常的复杂

我们在这里就不详细地介绍了

从刚才的讨论中可以看出来

循环冗余码具有这样一些特点

第一个 要通过精心挑选最高阶数为r的生成多项式G(x)

第二个 循环冗余检验可以检测出所有奇数位二进制数的错误

所有长度≤r的连续位的错误

和大多数长度≥r+1的连续位数的错误

它都能够检测出来

这个是可以得到证明的

目前Internet中常用的检错码是检验和与循环冗余检验

那么循环冗余检验的检错能力远远大于检验和

网络技术与应用课程列表:

先导语

-课程先导语

--先导语

第1讲 概论

-1.1 网络内涵

--网络内涵

-1.2 互联网发展过程

--互联网发展过程

-1.2 互联网发展过程--作业

-1.3 交换方式

--电路交换

-- 虚电路交换

--数据报交换

--三种交换方式比较

--html

-1.3 交换方式--作业

-1.4 计算机网络体系结构和协议

--分层结构

--网络体系结构与协议

--OSI体系结构

--TCP/IP体系结构

-1.4 计算机网络体系结构和协议--作业

-第一讲内容的启示

--html

-例题分析

--例题分析

-测验--作业

第2讲 数据通信基础

-本讲内容简介

--2.0 数据通信基础

-2.1 数据传输系统

--2.1 数据传输系统

-2.1 数据传输系统--作业

-2.2 信号

--2.2 信号

-2.2 信号--作业

-2.3 编码和调制

--2.3-1 编码

--2.3-2 调制

-2.3 编码和调制--作业

-2.4 差错控制

--2.4-1 差错控制—检错码

--2.4-2 差错控制—确认和重传

-2.4 差错控制--作业

-2.5 传输媒体

--2.5 传输媒体

-2.5 传输媒体--作业

-2.6 Packet Tracer6.2使用说明

--2.6 Packet Tracer6.2使用说明

-第二讲内容的启示

--html

-例题分析

--例题分析

-测验--作业

第3讲 以太网

-以太网发展过程与内容简介

--3.1 以太网发展过程和本讲内容简介

-以太网发展过程与内容简介--作业

-3.1 总线形以太网

--3.1-1 总线形以太网基础

--3.1-2 基带传输与曼彻斯特编码

--3.1-3 数据帧封装格式:mac帧

--3.1-4 CSMA/CD算法

--3.1-5 CSMA/CD算法缺陷

-3.1 总线形以太网--作业

-3.2 网桥与冲突域分割

--3.2-1 网桥与冲突域分割

--3.2-2 网桥工作过程演示

-3.2 网桥与冲突域分割--作业

-3.3 交换式以太网与VLAN

--3.3-1 VLAN与广播域分割

--3.3-2 单交换机VLAN划分过程

--3.3-3 跨交换机VLAN划分

--3.3-4 跨交换机VLAN划分配置过程演示

-3.3 交换式以太网与VLAN--作业

-3.4 以太网标准

--3.4 以太网标准

-3.4 以太网标准--作业

-第三讲内容的启示

--html

-例题分析

--例题分析

-案例设计

--案例设计

-测验--作业

第4讲 无线局域网

-本讲内容简介

--无线局域网

-4.1 无线局域网概述

--4.1-1 无线数据传输

--4.1-2 无线局域网体系结构

-4.1 无线局域网概述--作业

-4.2 无线局域网应用方式

--4.2 无线局域网组网方式

-4.2 无线局域网应用方式--作业

-4.3 无线局域网MAC层

--4.3-1 无线局域网的MAC帧

--4.3-2 DCF和CSMA/CA

-4.3 无线局域网MAC层--作业

-4.4 终端接入无线局域网过程

--4.4 终端接入无线局域网过程

-4.4 终端接入无线局域网过程--作业

-4.5 无线局域网设计和分析

--4.5-1 无线局域网设计

--4.5-2 无线局域网设计演示实验

-第四讲内容的启示

--html

-例题分析

--例题分析

-测验--作业

第5讲 IP和网络互连

-本讲内容简介

-- IP与网络互连

-5.1 网络互连机制

--5.1 网络互连机制

-5.1 网络互连机制--作业

-5.2 网际协议

--5.2-1 IP-分类编址

--5.2-2 IP-无分类编址

--5.2-3 IP-分组格式

-5.2 网际协议--作业

-5.3 IP分组传输过程

--5.3 IP分组传输过程

-5.3 IP分组传输过程--作业

-5.4 路由表建立过程

--5.4-1 人工配置静态路由项

--5.4-2 路由协议与动态路由项

-5.4 路由表建立过程--作业

-5.5 IP over以太网

--5.5 IP Over以太网

-5.5 IP over以太网--作业

-5.6 三层交换机与VLAN间通信过程

--5.6-1 多端口路由器实现VLAN间通信过程

--5.6-2单臂路由器实现VLAN间通信过程

--5.6-3 三层交换机实现Vlan间通信过程

--5.6-4 三层交换机实现VLAN间通信过程演示实验

--5.6-5 互联设备之间的区别

-5.7 Internet控制报文协议

--5.7 Internet控制报文协议

-5.7 Internet控制报文协议--作业

-第五讲内容启示

--html

-案例设计

--案例设计

-例题分析

--5.9-1 例题分析1

--5.9-2 例题分析2

--5.9-3 例题分析3

-测验--作业

第6讲 Internet接入技术

-本讲内容简介

--本讲内容简介

-6.1 Internet接入控制机制

--6.1 Internet接入控制机制

-6.1 Internet接入控制机制--作业

-6.2 以太网和ADSL接入技术

--6.2-1 通过以太网接入Internet过程

--6.2-2 通过ADSL接入Internet过程

-6.2 以太网和ADSL接入技术--作业

-6.3 家庭局域网接入方式与无线路由器

--6.3-1 家庭局域网接入方式

--6.3-2 家庭无线路由器的配置

-6.3 家庭局域网接入方式与无线路由器--作业

-6.4 接入综合演示实验

--6.4 接入综合演示实验

-6.4 接入综合演示实验--作业

-第六讲内容的启示

--html

-例题分析

--第六讲 例题分析

-测验--作业

第7讲 传输层

-本讲内容简介

--传输层

-7.1 传输层服务特性

--传输层服务特性

-7.1 传输层服务特性--作业

-7.2 端口号

--端口号

-7.3 用户数据报协议UDP

--用户数据报协议UDP

-7.3 用户数据报协议UDP--作业

-7.4 传输控制协议TCP

--TCP特点和格式

--建立和释放连接过程

--TCP差错控制机制

--TCP拥塞控制机制

-- TCP的几点说明

-7.4 传输控制协议TCP--作业

-第七讲内容启示

--html

-例题分析

--例题分析

-测验--作业

第8讲 应用层

-本讲内容简介

-- 应用层

-8.1 应用结构

--应用结构

-8.1 应用结构--作业

-8.2 域名解析

--8.2-1 域名结构与资源记录

--8.2-2 域名解析过程

--8.2-3 DNS演示实验

-8.2 域名解析--作业

-8.3 动态主机配置协议

--8.3-1 动态主机配置协议

--8.3-2 DHCP无中继演示实验

--8.3-3 DHCP中继演示实验

-8.3 动态主机配置协议--作业

-8.4 万维网

-- 万维网

-8.4 万维网--作业

-8.5 电子邮件

--html

-8.6 文件传输协议

--html

-例题分析

--例题分析

-案例设计

--CH8 案例设计

-应用层启示

--html

-测验--作业

第9讲 网络安全

-本讲内容简介

--9.0 网络安全内容简介

-9.1 网络安全概述

--9.1-1 网络安全现状与目标

--9.1-2 网络攻击举例

--9.1-3 DHCP欺骗攻击演示实验

-9.1 网络安全概述--作业

-9.2 网络安全基础

--9.2-1 数据加密

--9.2-2 报文摘要和数字签名

-9.2 网络安全基础--作业

-9.3 病毒检测与防御技术

--9.3 病毒检测与防御技术

-9.3 病毒检测与防御技术--作业

-9.4 以太网安全技术

--9.4-1 以太网安全技术

--9.4-2 防DHCP欺骗演示实验

-9.4 以太网安全技术--作业

-9.5 无线局域网安全技术

--9.5 无线局域网安全技术

--9.5-2 无线局域网安全演示实验

-9.5 无线局域网安全技术--作业

-9.6 防火墙

--9.6-1 无状态分组过滤器

--9.6-2 有状态分组过滤器

-9.6 防火墙--作业

-9.7 安全协议

--9.7 安全协议

-9.7 安全协议--作业

-例题分析

--例题分析

-防火墙演示实验

-- 防火墙演示实验

-案例设计

--案例设计

-网络安全的启示

--html

-测验--作业

附录

-附录1:综合应用分析

--综合应用分析

-附录2:Cisco实际设备网络构建与配置

--Cisco实际设备网络构建与配置

期末考试

-期末考试--考试试题

2.4-1 差错控制—检错码笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。