当前课程知识点:计算机网络 >  第三章:数据链路层 >  附录3:本章的无背景乐的视频 >  3-2差错处理概述

返回《计算机网络》慕课在线视频课程列表

3-2差错处理概述在线视频

下一节:3-3纠1位错的海明码

返回《计算机网络》慕课在线视频列表

3-2差错处理概述课程教案、知识点、字幕

各位好

我们已经知道数据链路层的

一个主要的功能

是要保证我们传输的帧是可靠的

但是任何信道

即使是光纤

它也会出错

出了错之后呢就要进行处理

怎么处理这些差错呢

首先你就是要检测出错误

然后再说用什么手段去处理

处理错误的手段呢

通常就是纠错和检错两种

差错的类型分两种

一种是单个的错误

它是分散在各个数据块里面的

还有一类呢是突发错误

集中在某个块里面

我们举个例子

比如说有一个数据块

它的大小是1000个比特

总共有100个这样的块

如果我们的出错率是千分之一

那么单个错误就分散在

每一个数据块里面

也就是说这100个千位块

每个块里面都有一个错误

而突发错误呢

它是集中在一个数据块里边

整个块100个块里面

有一个块是错误的

其他的块都是正确的

一般来讲呢

突发错误比单个的错误

更加难以处理

但是呢我们会用一些巧妙的方法

利用处理单个错误的方法

来应对 对付这个突发的错误

差错处理刚才我们说了有两种

一种是纠错一种是检错

那么纠错是什么呢

是一种前向纠错的技术

当它检查出错误

发现了错误之后

它要试图从错误中恢复出

正确的那个码来

因为纠错码它需要纠错

所以它需要太多的冗余位

纠错的开销是比较大的

它在有线网络里头极少采用

主要用于无线网络里头

而检错码呢

它只能发现错误

不能从错误中恢复

但是呢我们可以通过其他的手段

比如说重传来恢复

局域网里头通常采用的是检错码

两种处理方法

适用于不同的网络环境

下面呢我们来探讨几个跟差错

错误处理相关的几个概念

第一个叫码字

码字指的是包含数据位

和校验位的N位单位

或者N位模式

跟码字相关的另外一个概念呢

叫海明距离

两个码字的海明距离

指的是两个码字之间

不同位的数目

比如说有两个码字

第一个码字

10001001

另外一个码字

10110001

这两个码字

它的海明距离是3

为什么呢

是因为在这两个码字里边

它只有三位码字

就是从第三位开始

第三位、第四位、第五位

这三位码字它是不同的

其他的位都是相同的

那么不同的位数是3

那么它的海明距离就是3

那么这个

两个码字的海明距离

其实是可以用异或来计算的

异或就把这两个码字

按位进行异或的运算

运算的结果里边

你数1的个数

1的个数就是海明距离

全部码字的海明距离

指的是在任意两个码字之间的

海明距离的最小值

作为全部码字的海明距离

比如说有100个码字

它们两两之间都有一个海明距离

最小的那个海明距离是50

那么这个50

就是整个码字的海明距离

海明距离它的物理意义是这样的

就是如果海明距离为d

那么一个码字

要变成另外一个码字的话

至少需要跳变d位

海明距离与检错的关系是这样的

海明距离为d+1的编码

能检测出d位的差错

为什么呢

因为在距离为d+1的检错码里面

只改变d位的错

不可能跳变为另一个合法的码字

我们要注意的是理解这句话

在编码系统里面

既有合法的码字

也有非法的码字

非法的码字指的是错误的码字

举一个例子来看

比如说我们熟知的奇偶校验码

海明距离是2

也就是说d等于2

d等于2就能查出一个错误

2减1一个错误

奇偶校验码

指的是在一个校验位

可以追加到我们要传输的数据后面

举个例子

比如说有一个要传输的数据

是10111000这8位

那如果我们做偶校验的话

我们就数8位里边它1的个数

它1的个数是4个

那么我们在后面

只能追加0

保证编码后的码字里面

1的个数是偶数个

所以它的后面只能追加0

如果我们要采用奇校验的话

我们在这个码字后面

就必须要加一个1了

因为加一个1

才让整个码字它的1的个数是5

是奇数个

下面我们来看一个例子

来理解这个码字

海明距离跟检错

能够检错的位数的关系

比如说一个系统

它要传输的原始的码字是两位数

就是00、01、10和11

这四个值

假如我们采用偶校验来进行编码

编码后的码字就是

000、011、101和110

假如说这个时候

接收方收到一个码字是001

它在系统里面发现

这个001它不是这四个

合法码字中的任何一个

所以它知道这是一个非法的码字

所以它立刻就判断

这是一个错误的码字

出错了

检查出错误来了

那么001

我们知道可能它就是000

跳变一位之后变成的

所以它就判定为错

这是一个正确的检错方法

但是如果说我们的系统

收到一个000

这是一个合法的码字

是正确的

接收方只能把它判定为正确

因为它是四个合法码字中的一个

但是我们不排除

它是110跳变两个

就把11这两位跳变为0

跳变2之后变成的一个错误码字

但是系统对这种情况

是无能为力的

海明距离等于2的奇偶校验

是可以检查出一个错误的

发生一个比特的跳变

我们可以检测出来

但是如果发生两个比特

这样的偶数个跳变

接收方是无能为力的

是无法检测出这个错误

认为这个码字是正确的

这是它的局限性

接下来我们看一下

海明距离与纠错的关系

海明距离为2d+1的编码

能纠正d位差错

为什么呢

因为在这个时候

如果一个码字

有发生d位的错误

那么它仍然距离原来的码字最近

是d

距离是d

那么我们就可以直接恢复出

正确的码字来

它离谁最近

它就恢复出那个码字

这是海明距离与纠错的关系

我们举一个例子来看一看

比如说有一个系统

有四个合法的码字

这四个合法的码字呢都是十位的

第一个是10个0

第二个是5个0 5个1

第三个是5个1 5个0

第四个是10个1

这四个码字

它们的海明距离是5

利用刚才那句话

描述的2d+1等于5

我们可以算出d等于2

所以我们可以纠正出

两位错误来

假如说我们的发送方

发送的是5个0 5个1

这样的码字

接收方收到的码字却是这样的

7个0 3个1

接收方接下来它会做这样一个事情

它会把这个码字和

合法的码字进行海明距离的计算

它看这个码字离谁的海明距离更小

也就是说离谁更近

它发现呢

这个码字离5个0 5个1

它的海明距离是2

是最小的

所以

它就把这个码字纠正为5个0 5个1

就恢复出正确的码字来了

我们再看另外一个例子

发送方发送的是10个0

接收方收到了一个码字

是7个0 3个1

也就是说

后面的3个0发生了跳变

跳变成了3个1

发生了3个跳变

能不能够纠正出错误来呢

我们来看一下

接收方收到这个码字

它做的工作仍然是第一步去看

它是不是合法的码字

它发现这个码字

在不是4个合法码字之一

所以它是有错误的

但是它离哪个码字最近呢

它发现它离5个0 5个1

这个码字的海明距离只有2

是最近的

所以它就把这个码字

恢复成5个0 5个1

但是我们知道

发送方发送的不是这个

是10个0

所以就错了

也就是说

刚才那句话

海明距离相距为2d+1的编码系统

它只能够纠正出d位错误

绝对不可能纠正出d+1位

或者更多的错误来

像刚才我们这个例子就是

它的海明距离是5

所以它顶多能纠正两位错误

发生了三位错误

它就无能为力了

就犯错了

随着海明距离的增加

纠错的能力也增加了

也就是说

海明距离越大

纠错能力越强

比如说我们的海明距离为3

可以纠正一个错误

而海明距离为5

才可以纠正出两个错误来

当一个系统中的海明距离

增加的时候

合法的码字就减少了

即信道的利用率

或者编码的效率就降低了

其实这是一对矛盾

小结一下

在通信世界里边

可以说不存在完美的信道

任何信道都会出错

错误呢

分成单个错误和突发的错误两类

处理错误的手段呢也有两类

纠错和检错

这两类方法呢各有优缺点

你需要根据不同的传输环境

来选择其中的一种

海明距离量度了两个码字之间的

不同位数

海明距离也决定了

能够纠错或检错的位数

计算机网络课程列表:

第零章

-本课程简介

--课程组织

--课程简介和学习目标

--第44次中国互联网络发展状况统计报告201909

第一章 概述

-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

--伦敦奥运会开幕式之Tim Berners Lee

--附录说明

-第一章 概述--章节测试

-附录4:本章的无背景乐的视频

--1-2互联网网络发展史

--1-3 常用的基本概念

--1-4参考模型

--1-5参考模型相关的概念

--关于附录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:海底光缆

--ABB投资建造世界领先的海底电缆敷设船

--动画演示海底光缆铺设

--附录说明

--外部链接

-第二章 物理层--章节测试

-附录5:本章的无背景乐的视频

--2-1物理层概述及信号分析

--2-2引导性传输介质

--2-3复用技术

--2-4调制技术

--2-5公共交换电话网络

--关于附录5的说明

第三章:数据链路层

-3.1 数据链路层概述

--Video

--数据链路层概述

-3.2 差错处理概述

--Video

--差错处理概述

-3.3 纠1位错的海明码

--Video

--纠1位错的海明码

-3.4 检错码

--Video

--检错码

-3.5基本数据链路协议1~3

--Video

--基本数据链路协议1~3

-3.6 滑动窗口协议

--Video

--滑动窗口协议

-3.7 回退n帧

--Video

--回退n帧

-3.8 选择性重传

--Video

--选择性重传

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-第三章:数据链路层--章节测试

-附录3:本章的无背景乐的视频

--3-1数据链路层功能和成帧

--3-2差错处理概述

--3-3纠1位错的海明码

--3-4检错码

--3-5 6个模拟的DLL协议之1-3

--3-6 滑窗协议

--3-7 回退n帧

--3-8 选择性重传

--关于附录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-1 MAC子层概述

--4-2 ALOHA协议

--4-3 CSMA协议

--4-4 以太网概述

--4-5 以太帧格式

--4-6_二层交换的基本原理

--4-7 生成树协议

--4-8 虚拟局域网

--4-9 二层设备

--关于附录3的说明

第五章 网络层

-5.1 网络层引言

--Video

--网络层引言

-5.2 IP地址

--Video

--IP地址

--子网规划实例

-5.3 子网规划

--Video

--子网规划

-5.4 IP寻址

--Video

--你手机的IPv4地址跟地理位置绑定在一起吗?

--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

--RIP为什么会衰败

-5.14 链路状态路由选择LS

--Video

--链路状态路由选择LS

-5.15 单区域OSPF

--Video

--开放的最短路径优先(OSPF)

-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-1_网络层引言

--5-2_IP地址

--5-3_子网规划

--5-4_IP寻址

--5-5_IP分组

--5-6 什么是IPv6?

--5-7_IPv6地址

--5-8IPv6分组

--5-9过渡技术

--5-10_路由从何而来?

--5-11 距离矢量路由选择协议

--5-12_路由信息协议RIP

--5-13_ RIP为什么会衰落

--5-14_链路状态路由选择协议

--5-15_单区域OSPF

--5-16 无类域间路由 CIDR

--5-17_网络地址翻译 NAT

--5-18_互联网控制消息协议ICMP

--5-19_地址解析协议 ARP

--5-20_拥塞控制

--5-21流量整形

-说说你在家的用网体验

-RIP是否会卷土重来?

-说说你遭遇过的ARP病毒

第六章 传输层

-6.1 传输层概述

--Video

--传输层概述

-6.2 用户数据报协议 UDP

--Video

--用户数据报协议 UDP

-6.3 通信模型

--Video

--通信模型

-6.4 TCP数据段

--Video

--TCP数据段

-6.5 TCP三次握手建立连接

--Video

--TCP三次握手建立连接

-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通信模型

--6-4TCP数据段

--6-5 TCP三次握手建立连接

--6-6 TCP连接释放

--6-7 TCP传输策略

--6-8 TCP拥塞控制

--6-9 TCP定时器等

套接字编程

-linux

--1_Socket_UDP_简介(linux)

--1_Socket_TCP_简介(linux)

--2_Socket_UDP_代码讲解(linux)

--2_Socket_TCP_代码讲解(linux)

--3_Socket_UDP_调试(linux)

--3_Socket_TCP_调试(linux)

-windows

--UDP_1_SOCKET简介

--UDP_2_代码讲解

--UDP_3_代码调试

--TCP_1_Socket简介

--TCP_2_代码讲解

--TCP_3_代码调试

第七章 应用层

-7.1 应用层概述

--Video

--应用层概述

--说说你用得最多的应用是哪个?

--畅想你想研发的一个应用

-7.2 域名系统 DNS 概述

--Video

--域名系统 DNS 概述

-7.3 DNS之域名解析

--Video

--域名解析

-7.4 电子邮件 e-mail

--Video

--电子邮件 e-mail

-7.5 万维网 WWW

--Video

--万维网 WWW

--如果没有Web,互联网会怎样?

-7.6 其它应用

--Video

--其它应用

-附录1:思考题

--html

-附录2:术语中英对照表

--html

-第七章 应用层--章节测试

-附录3: 本章无背景音乐的视频

--7-1_应用层概述

--7-2_域名系统 DNS 概述

--7-3_DNS之域名解析

--7-4_电子邮件

--7-5_万维网 WWW

--7-6_其它应用

3-2差错处理概述笔记与讨论

也许你还感兴趣的课程:

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