计算机网络之差错控制

2023-10-09 02:10

本文主要是介绍计算机网络之差错控制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

计算机网络之差错控制

数据链路层的差错控制(纠错编码)

注意链路层的编码和物理层的编码是不一样的。

编码VS编码

数据链路层编码和物理层的数据编码与调制不同。物理层编码针对的是单个比特,解决传输过程中比特的同步等问题,如曼彻斯特编码。而数据链路层的编码针对的是一组比特,它通过冗余码的技术实现一组二进制比特串在传输过程是否出现了差错。

冗余编码

在数据发送之前,先按某种关系附加上一定的冗余位,构成一个符合某一规则的码字后再发送。当要发送的有效数据变化时,相应的冗余位也随之变化,使码字遵从不变的规则。接收端根据收到码字是否仍符合原规则,从而判断是否出错。

例如我要给你一串骨肉相连,为了防止运输过程中被人偷吃,我可以添加一块冗余肉,当你收到的时候检查肉的个数是奇数还是偶数,这样就可以知道过程中是否出现差错。

检错编码——奇偶校验码

在这里插入图片描述

奇偶校验码的特点:

只能检查出奇数个比特的错误,检错能力为50%

检错编码——CRC循环冗余编码

在这里插入图片描述

在这里插入图片描述

相除的过程中,是通过异或的逻辑进行相减的,即同0异1。

最终发送的数据是11010110111110

接收端检错过程

把收到的每一个帧都除以同样的除数,然后检查得到的余数R。

1.余数为0,判定这个帧没有差错,接受。

⒉.余数为不为0,判定这个帧有差错(无法确定到位),丢弃

FCS的生成以及接收端CRC检验都是由硬件实现,处理很迅速,因此不会延误数据的传输。

一般由硬件完成的事件,都比较迅速。

纠错编码——海明码

相较于检错编码,海明码不仅可以发现错误,还能找到位置纠正错误。

在这里插入图片描述

海明距离

两个合法编码(码字)的对应比特取值不同的比特数称为这两个码字的海明距离(码距),一个有效编码集中,任意两个合法编码(码字)的海明距离的最小值称为该编码集的海明距离(码距)。

在这里插入图片描述

确定校验码位数

在这里插入图片描述

确定校验码和数据的位置

在这里插入图片描述

求出校验码的值

在这里插入图片描述

检错并纠错

在这里插入图片描述

101对应的10进制数正好是第五位错了。

检错并纠错

[外链图片转存中…(img-8izEZguS-1666680907775)]

101对应的10进制数正好是第五位错了。

这篇关于计算机网络之差错控制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/169596

相关文章

计算机网络基础概念 交换机、路由器、网关、TBOX

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、VLAN是什么?二 、交换机三、路由器四、网关五、TBOXTelematics BOX,简称车载T-BOX,车联网系统包含四部分,主机、车载T-BOX、手机APP及后台系统。主机主要用于车内的影音娱乐,以及车辆信息显示;车载T-BOX主要用于和后台系统/手机APP通信,实现手机APP的车辆信息显示与控

CCF推荐C类会议和期刊总结(计算机网络领域)

CCF推荐C类会议和期刊总结(计算机网络领域) 在计算机网络领域,中国计算机学会(CCF)推荐的C类会议和期刊为研究者提供了广泛的学术交流平台。以下是对所有C类会议和期刊的总结,包括全称、出版社、dblp文献网址以及所属领域。 目录 CCF推荐C类会议和期刊总结(计算机网络领域) C类期刊 1. Ad Hoc Networks 2. CC 3. TNSM 4. IET Com

[计算机网络]-计网学习笔记-计网知识点总结(附完整笔记)

本笔记是跟着 b站 湖科大教书匠 视频做的笔记,其中图片为视频中的 PPT,加上了自己的注释。         这是原视频链接。大家可以参照着笔记看原视频。视频中的 PPT 做的非常好。         【计算机网络微课堂(有字幕无背景音乐版)】https://www.bilibili.com/video/BV1c4411d7jb?vd_source=1146b07cc2d66

计算机网络知识自学笔记(Chatgpt 回答)

目录 文章目录 phy芯片 lan8720A 和网卡的区别???MAC地址 和IP的区别是啥???1. **用途和作用范围**:2. **层次差异**:3. **分配方式**:4. **持久性和作用**:5. **数据传输中的作用**:小结: 还有网关 是啥 可以举个通俗易懂的例子吗通俗易懂的例子:具体应用:小结: 结合这个案例 可以讲下 ip地址和mac地址分别是啥 和作用分别是啥吗?

第十六篇:走入计算机网络的传输层--传输层概述

1. 传输层的功能 ① 分割与重组数据 一次数据传输有大小限制,传输层需要做数据分割,所以在数据送达后必然也需要做数据重组。 ② 按端口号寻址 IP只能定位数据哪台主机,无法判断数据报文应该交给哪个应用,传输层给每个应用都设置了一个编号,这个编号就是端口,目的端口可以定位报文应该发给哪个应用处理。 ③ 连接管理 面向连接的传输,需要对连接进行管理。 ④ 差错控制和流量控制

计算机网络11——数据库语法2

目录 1、变量 (1)局部变量 (2)会话变量 (3)系统变量 2、判断选择 (1)if选择语法 (2)case选择 3、循环 (1)while循环 (2)其他循环 4、存储过程 5、触发器 6、事务:transaction 事务的特性 使用 1、变量 (1)局部变量 函数里面定义的,变量名  类型 (2)会话变量 本次连接会话有效,不需要定义声明,直接

计算机网络练级第一级————认识网络

网络搁哪? 网络大家应该都很熟悉了,但网络具体是怎么构成的,怎么用的?长话短说 我认为网络就是计算机里的快递业务,从一台计算机中发出,网络接收到数据后,就要把这个数据安全快速完整地发到目标主机上。 大家肯定在想,谁都知道吧,这个人搁这搁这。但主题确实也是从这里开始。 网络的发展史(了解) 独立模式: 这个时期,有点像网络的原始人时期,这个时期每个计算机只能有自己的数据,程序员想要另

计算机网络(运输层)

运输层概述 概念 进程之间的通信 从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。 当网络的边缘部分中的两个主机使用网络的核心部分的功能进行端到端的通信时,只有位于网络边缘部分的主机的协议栈才有运输层,而网络核心部分中的路由器在转发分组时都只用到三层(到网络层)的功能。 进程之间通信流程 以体系结构的角度来看

计算机网络10——数据库语法1

目录 1、sql语句执行顺序 2、多表查询 3、写sql的步骤 4、去重 5、视图 6、自定义函数:function 7、调用函数 1、sql语句执行顺序 一般情况下:1、from 2、where 3、select 如果有分组和having:from 分组 having最后执行 2、多表查询 内联:select * from 表1 inner join 表2 on

计算机网络13——IM聊天系统——网络功能实现——UDP

目录 1、类的成员变量 2、魔鬼数字 3、创建接收数据的线程 4、线程函数 5、防止旧接收到的数据被新数据覆盖掉 6、拷贝用的函数:memcpy_s 7、回收线程资源 8、计数器-1 (1)结束线程工作 (2)关闭句柄 测试代码 1、类的成员变量 同一个类中的多个函数中都要使用的变量应设置为类的成员变量 2、魔鬼数字 解决方法:定义成宏 目的:1、好理解