3 数据链路层(二):差错控制、差错检测和纠正

目录

  • 1 差错控制、差错检测和纠正
    • 1.1 差错类型和差错控制
      • 1、差错类型
      • 2、差错控制方法
    • 1.2 差错控制编码
      • 1、差错控制编码介绍
      • 2、差错控制方式
      • 3、编码分类
      • 4、几种差错控制编码的价绍
        • 奇偶校验码
        • 循环冗余校验码
        • 海明码

1 差错控制、差错检测和纠正

数据在传输中可能被破坏,因此需要进行检错和纠错。差错产生主要是由于线路本身电气特性所产生的随机噪声(也称热噪声)、信号振幅、频率和相位的衰减或畸变、电信号在传输介质上的反射回音效应、相邻线路的串扰、外界的电磁干扰和设备故障等因素造成的。

1.1 差错类型和差错控制

1、差错类型

差错分为单比特差错和突发差错

  • 单比特差错:在传输的数据单元中只有一个比特发生了改变(0变1或1变0)
  • 突发差错:在传输的数据单元中有两个或两个以上的比特发生了改变,这两个或两个以上的比特不一定连续,差错的比特之间是否有间隔,只要是在一个帧内

2、差错控制方法

提高通信可靠性的办法有两种:

  • 选择合适的硬件:选用高质量的传输介质并提高信号功率强度,采取最佳的信号编码和调制手段,使传输信号特性与信道特性达到最好的匹配,但是增加了成本。 → 物理层
  • 在传输过程中进行差错控制:采用编码的方法进行查错或纠错处理 → 数据链路层

1.2 差错控制编码

1、差错控制编码介绍

在实际信道上传输数字信号时,由于信道传输特性不理想及加性噪声的影响,所收到的数字信号不可避免地会发生错误。为了在已知信噪比的情况下达到一定的误比特率指标,首先应合理设计基带信号,选择调制、解调方式,采用频域均衡和时域均衡,使误比特率尽可能降低,但若误比特率仍不能满足要求,则必须采用信道编码,即差错控制编码,将误比特率进一步降低,以满足指标要求。

差错控制编码,简单来说就是尽量减少数据单元比特差错的编码

差错控制编码实现方式:

  • 1.在发送端被传输的信息序列上附加一些监督码元,这些多余的码元与信息码元之间以某种确定的规则相互关联(约束)
  • 2.接收端按照既定的规则检验信息码元与监督码元之间的关系
  • 3.一旦传输过程中发生差错,则信息码元与监督码元之间的关系将受到破坏,从而可以发现错误,乃至纠正错误

2、差错控制方式

差错控制方式有三种:

  • 自动请求重发ARQ(Automatic Repeat request,也叫检错重发):
    • 采用检错码实现
    • 使用冗余技术
    • 常用的检错重发系统有三种:停发等候重发、返回重发和选择重发
  • 前向纠错FEC(Forward Error Correction)
    • 采用纠错码实现
  • 混合纠错(简称HEC):前向纠错方式和检错重发方式的结合

冗余技术:在发送方的数据单元中增加一些用于检查差错的附加位,便于接收端进行检错。一旦传输的正确性被确认,这些附加位就被接收端丢弃,并给发送端发一个确认应答ACK(acknowledgment)。当接收端接收到的检错码检测到差错时,就给发送端发送一个否定应答NAK(negative acknowledgment),并要求发送端重发数据
在这里插入图片描述

3、编码分类

差错控制系统中使用的信道编码可以有多种。

  • 按照差错控制编码的不同功能,可分为
    • 检错码:只具有检错能力的编码
      • 常用的检错码有:奇偶、校验和、循环冗余校验
    • 纠错码:既能检错又具有自动纠错能力的编码
      • 特点:实现复杂,编码和解码速度慢,效率较低,造价高而且费时
      • 适用场景:一般用于没有反向信道或线路传输时间长、重发费用较高的场合
      • 常用的纠错码有:海明码、二进制卷积码、里德所罗门码、低密度校验码
    • 纠删码:兼有纠错和检错能力,当发现不可纠正的错误时可以发出错误指示或者简单地删除不可纠正错误的信息段落
  • 按照信息码元和附加的监督码元之间的检验关系,可以分为
    • 线性码:若信息码元与监督码元之间的关系为线性关系,即满足一组线性方程式,则称为线性码
    • 非线性码:若信息码元与监督码元之间的关系不存在线性关系,则称为非线性码
  • 按照信息码元和监督码元之间的约束方式不同可以分为分组码和卷积码
  • 按照信息码元在编码后是否保持原来的形式不变,可划分为系统码和非系统码
  • 按照纠正错误的类型不同,可以分为纠正随机错误的码和纠正突发错误的码
  • 按照构造差错控制编码的数学方法来分类,可以分为代数码、几何码和算术码
  • 按照每个码元取值不同,可以分为二进制码和多进制码

4、几种差错控制编码的价绍

奇偶校验码

奇偶校验(Parity)码:

  • 是一种检错码
  • 实现方式:在信息位的后面附加一个检验位,使得码字中“1”的个数保持为奇数或偶数的编码方法。
  • 分类:
    • 一维空间有:“水平奇偶校验码”和“垂直奇偶校验码”
    • 二维空间有:“水平垂直奇偶校验码”
  • 适用场景:信道干扰不太严重及信息位不太长,以及计算机通信网的数据传送(如计算机串行通信)
  • 案例:
    在这里插入图片描述
循环冗余校验码

循环冗余校验码CRC(Cyclic Redundancy Check)又称多项式码:

  • 检错码
  • 实现原理:收发双方约定好,使用同一个生成多项式G(x)的系数做除法运算,得出的余数作为冗余位,然后将冗余位作为附加位放到二进制位序列后传输,实现差错检查的目的
海明码

海明码:

  • 可以纠正单比特差错的编码
  • 实现原理:通过增加冗余位进行纠错的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/540906.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文看懂红帽认证含金量有多高!

近期好多人来问红帽认证,有些是还在校的大学生,有些是已经工作的运维小伙伴。!现在的就业和职场环境下,系统学Linux确实是非常必要的。今天就给大家详细介绍下红帽认证,看看它的含金量有多高! 红帽认证是什么?红帽认证等级?红帽…

vmware workstation虚拟机报错”该虚拟机似乎正在使用中“

虚拟机报错: 解决方法: 进入到虚拟机的安装目录里,将lck结尾的文件删掉即可 重新点击虚拟机恢复正常

跨境热点!TikTok直播网络要求是什么?

TikTok直播作为一种互动性强、实时性要求高的社交媒体形式,对网络环境有着一系列特定的需求。了解并满足这些需求,对于确保用户体验、提高直播质量至关重要。本文将深入探讨TikTok直播对网络环境的要求以及如何优化网络设置以满足这些要求。 TikTok直播的…

Stripe Web 购买集成

图片被吞了可以来这里看:https://juejin.cn/post/7346388511338381364 1. 准备事项 Stripe 账号域名以及配套的网站Stripe 账号付款信息公钥和私钥 2. 配置产品以及价格 可以通过 API 或者 Stripe 管理后台来进行配置 产品:就是商品,只需…

黑群晖: 未在 DS918+ 中检测到硬盘 之 解决方案

黑群晖: 未在 DS918 中检测到硬盘 之 解决方案 操作如下: 进入BIOS,将sata operation 设置为 AHCI 即可

Windows,MacOS,Linux下载python并配置环境图文讲解

Windows 打开python官网 点击download 点击黄色按钮 另存为 打开文件 全选 配置安装路径 安装中 关闭路径长度限制 完成 验证 同时按住winr(win就是空格键左边的东西) 输入cmd 键入python,如果出现版本(红框)即安装成功 MacOS 同理打开python官网 点击最新版本 拖…

长安逸动行车记录仪删除恢复方法

行车记录仪的品牌很多,但是主机厂自带的相对较少,之前处理过像特斯拉、极氪、领克等车载的记录仪恢复。今天我们来看一个长安逸动原厂行车记录仪的恢复案例。 故障存储:8G存储卡 fat32文件系统 故障现象: 这个卡的容量不算大,算是小卡&am…

计算机网络笔记(湖科大教书匠版本)

第一章、 ①三种交换方式 电路交换、分组交换、报文交换(被分组交换所取代) 1.电路交换:会一直占用通道,不适合计算机之间的数据通信 2.分组交换:通常我们把表示该数据的整块数据称为一个报文。 先把较长的报文划…

虚幻引擎5比Maya更好用吗?来看看Maya大神眼中的虚幻引擎5

这两年,大家总在争论: 虚幻引擎5(UE5)比Maya更好用吗? 未来会替代Maya吗? 虚幻引擎5(UE5)的快速发展,让许多传统Maya动画师感到焦虑和迷茫。但不要担心,这篇文章旨在解决你的困扰。…

基于springboot+vue实现的大学计算机课程管理平台的设计与实现(全套资料)

一、系统架构 前端:vue | antv 后端:springboot | mybatis-plus 环境:jdk17 | mysql | maven | node | redis 二、代码及数据库 三、功能介绍 01. 登录页 02. 首页 03. 系统基础模块-用户管理 04. 系统基础模块-部门…

Linux学习之网络

目录 认识协议 网络协议初始 协议分层 OSI七层模型 TCP/IP的四层模型 数据包封装和分用 以太网通信 ip地址与MAC地址 网络编程套接字 端口号(port) 认识协议 网络字节序 socket接口 网络的产生是计算机历史的必然性,是计算机发展…

ResNet学习笔记

一、residual结构 优点: (1)超深的网络结构(突破1000层) (2)提出residual模块 (3)使用Batch Normalization加速训练(丢弃dropout) 解决问题: (1) 梯度消失和…