3.3、差错检测

news2025/7/19 21:01:57

3.3、差错检测

3.3.1、比特差错

比 特 差 错 \color{red}比特差错

  • 实际的通信链路都不是理想的,比特在传输过程中可能会产生差错: 1 1 1 可能会变成 0 0 0 ,而 0 0 0 也可能变成 1 1 1

比特流在传输过程中由于受到各种干扰,就可能会出现比特差错,或称为误码

image-20221124195854303

误 码 率 B E R \color{red}误码率 BER BER ( Bit Error Rate )

  • 在一段时间内,传输错误的比特占所传输比特总数的比率。

使用 差 错 检 测 码 \color{red}差错检测码 来检测数据在传输过程中是否产生了比特差错,是数据链路层所要解决的重要问题之一

  • 以太网版本 2 2 2MAC 的帧尾,就是 4 4 4 字节的帧检验序列 FCS 字段,

    要写入该字段的内容,也就是检测码。

    接收方主机收到帧后,就可以判断出帧在传输过程中是否出现了误码

    image-20221124200159825

  • 点对点 PPP 帧的格式,其帧尾中也包含了一个长度为 2 2 2 字节的帧检验序列 FCS 字段

    image-20221124200253437

3.3.2、奇偶校验

奇偶校验

  • 在待发送的数据后面 添 加 1 位 奇 偶 校 验 位 \color{red}添加1位奇偶校验位 1,使整个数据(包括所添加的校验位在内)中 " 1 " 的 个 数 \color{red} "1"的个数 "1"为奇数(奇校验)或偶数(偶校验)。
  • 如果有 奇 数 个 位 发 生 误 码 \color{red}奇数个位发生误码 ,则奇偶性发生变化, 可 以 检 查 出 误 码 \color{red}可以检查出误码 ;
  • 如果有 偶 数 个 位 发 生 误 码 \color{red}偶数个位发生误码 ,则奇偶性不发生变化, 不 能 检 查 出 误 码 ( 漏 检 ) \color{red}不能检查出误码(漏检) );

若收发双发约定采用奇校验。那么在数据后面添加的校验位应该为比特 1 1 1,使得比特 1 1 1 的总数为奇数。

  • 若产生误码用红色表示,接收方收到的比特流进行奇校验,发现比特 1 1 1 的总数为偶数而不是奇数,就知道了传输过程中发生了误码

即:采用奇校验。着比特1的数量的奇性改变,可以检查出错误。


若传输过程中产生 2 2 2 位误码,接收方收到的比特流进行奇校验,发现比特 1 1 1 的总数为奇数,就误认为传输过程中没有发生误码

即:采用奇校验,比特 1 1 1 的数量的奇性不改变。是无法检查出错误的。


偶校验同理

image-20221124201229240

3.3.3、循环冗余校验 CRC (Cyclic Redundancy Check)

  • 收发双方约定好一个 生 成 多 项 式 \color{red}生成多项式 G ( x ) G(x) G(x);
  • 发送方基于待发送的数据生成多项式计算出差错检测码( 冗 余 码 \color{red}冗余码 ),将其添加到待传输数据的后面一起传输;
  • 接收方通过生成多项式来计算收到的数据是否产生了误码;

发送方的处理

  • 其中余数就是被计算出的冗余码

image-20221124201717255

接收方的处理

image-20221124201752170


生成多项式举例

image-20221124201901160


image-20221124202427590


image-20221124202622457

3.3.4、说明

检 错 码 \color{red}检错码 只能检测出帧在传输过程中出现了差错,但并不能定位错误,因此 无 法 纠 正 错 误 \color{red}无法纠正错误

要想纠正传输中的差错,可以使用冗余信息更多的 纠 错 码 \color{red}纠错码 进行 前 向 纠 错 \color{red}前向纠错 。但纠错码的开销比较大,在 计 算 机 网 络 中 较 少 使 用 \color{red}计算机网络中较少使用 使

循环冗余校验 CRC 有很好的检错能力( 漏 检 率 非 常 低 \color{red}漏检率非常低 ),虽然计算比较复杂,但非常 易 于 用 硬 件 实 现 \color{red}易于用硬件实现 ,因此被 广 泛 应 用 于 数 据 链 路 层 \color{red}广泛应用于数据链路层 广

在计算机网络中通常采用后续中将要讨论的 检 错 重 传 方 式 \color{red}检错重传方式 来纠正传输中的差错, 或 者 仅 仅 是 丢 弃 检 测 到 差 错 的 帧 \color{red}或者仅仅是丢弃检测到差错的帧 ,这取决于数据链路层向其上层提供的是可靠传输服务还是不可靠传输服务。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

K8S基础知识学习

目录 一、什么是 Kubernetes ? Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称K8S。 K8S用于容器化应用程序的部署,扩展和管理。 K8S提供了容器编排,资源调度,弹性伸缩,部署管理&a…

详解设计模式:简单工厂模式

简单工厂模式(Smiple Factory Pattern):定义一个工厂类,他可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类,简单工厂模式也被称为静态工厂模式。 ~ 本篇内容包括&#xf…

若依(Ruoyi-Vue-Plus版)——1.登录(SaToken)

这里学习一下若依框架的一个扩展版本: RuoYi-Vue-Plus: 后台管理系统 重写RuoYi-Vue所有功能 集成 Sa-TokenMybatis-PlusJacksonXxl-JobSpringDocHutoolOSS 定期同步 (gitee.com) 官方文档:文档预览 - Gitee.com 项目有关SaToken登录写在最后&#xff0c…

论文阅读笔记 | 三维目标检测——SECOND算法

如有错误,恳请指出。 文章目录1. 背景2 网络结构2.1 3d Backbone2.2 Loss Compute2.3 Data Augment3. 实验结果paper:《SECOND: Sparsely Embedded Convolutional Detection》 1. 背景 鉴于VoxelNet等3d检测算法中使用的3d卷积会导致计算量大且推理速度…

智慧税务解决方案-最新全套文件

智慧税务解决方案-最新全套文件一、建设背景税务大数据现状和挑战1、数据割裂,外部数据整合不足,智能化应用不足2、缺乏统一治理,数据资产不清,质量不高3、数据获取效率低,数据冗余、查询效率低4、 运营运维体系不健全…

【Linux】---进程地址空间

文章目录什么是进程地址写时拷贝为什么要有进程地址为了保护物理内存更方便进行进程和进程数据的解耦统一视角操作系统怎么管理进程地址区域划分在之前学习C/C的时候都会提到 地址这个概念,我们写代码时创建变量,定义函数等都会有其对应的地址空间。而地…

成为数字游民,他们为何「All in Web3」?

成为数字游民,他们为何「All in Web3」? “早上好,夜之城。” 赛博朋克承载着一代人对未来世界的遐想。今年上映的「赛博朋克:边缘行者」中,主人公大卫面临着不夜城旧有制度的高压和控制,对旧有秩序不断发…

C++STL-string类的实现(下)

文章目录1. 流插入和流提取1.1 流插入1.2 流提取2. 现代写法的拷贝构造和赋值函数2.1 现代写法的拷贝构造2.1 现代写法的赋值函数3. string类的迭代器实现3.1 正向迭代器1. 流插入和流提取 1.1 流插入 可能有的同学会这样去写:以一个字符串形式来输出。还有的人会这…

《CTFshow - Web入门》03. Web 21~30

Web 21~30web21知识点题解web22知识点题解web23知识点题解web24知识点题解web25知识点题解web26知识点题解web27知识点题解web28知识点题解web29知识点题解web30知识点题解web21 知识点 tomcat 认证爆破burpsuite暴力破解(Sniper)之custom iterator使用…

用Numba:一行代码将Python程序运行速度提升100倍

用Numba:一行代码将Python程序运行速度提升100倍 在《用PyPy加速Python程序》中我们看到,PyPy通过JIT技术可以将Python的运行速度平均提高3-4倍。但即便是提升后,Python的执行速度依然无法与C/C/Rust同日而语。并且PyPy对Python程序的优化对…

【计算机毕业设计】33.快递取件预约系统源码

一、系统截图(需要演示视频可以私聊 摘 要 本论文主要论述了如何使用JSP技术开发一个快递取件预约系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论…

GEO振弦式钢筋计适用范围

适用范围 钢筋计:用于监测岩土工程混凝土建筑物的应力,适用于长期埋设在水工建筑物或其他建 筑物内部,测量结构物内部的钢筋应力。 锚杆应力计:钢筋计用于测量锚杆应力时,成为锚杆应力计。装上锚杆应力计的锚杆称…

Flink部署之Yarn

Flink部署之Yarn 一、环境准备 1、Flink 是一个分布式的流处理框架,所以实际应用一般都需要搭建集群环境。 需要准备 3 台 Linux 机器。具体要求如下: 系统环境为 CentOS 7.5 版本。安装 Java 8。安装 Hadoop 集群,Hadoop 建议选择 Hadoop…

ORB-SLAM2 ---- Tracking::TrackReferenceKeyFrame函数

目录 1.函数作用 2.步骤 3.code 4.函数解析 4.1 将当前帧的描述子转化为BoW向量 4.2 总体解释 1.函数作用 用参考关键帧的地图点来对当前普通帧进行跟踪。 2.步骤 Step 1:将当前普通帧的描述子转化为BoW向量 Step 2:通过词袋BoW加速当前帧与参考帧…

PG::Covfefe

nmap -Pn -p- -T4 --min-rate1000 192.168.205.10 nmap -Pn -p 22,80,31337 -sCV 192.168.205.10 先查看31337端口的robots.txt目录,几个隐藏文件未发现可利用的地方 dirb对31337路径的枚举中发现了.ssh 访问后发现存在私钥 下载id_rsa和id_rsa.pub 得知用户名为…

Vscode-Git graph怎么看?

VScode可以使用插件查看git提交图谱,这个图谱看起来眼花缭乱,今天花时间看懂了,在这里分享一下。 在Vscode插件中搜索git graph安装 打开git项目,在左下角可以看到git graph 在右侧可以看到按照时间分布的commit,代表…

Java JSP JAVAweb在线考试系统源码网上考试系统源码(ssm考试管理系统)

JSP在线考试系统源码网上考试系统源码(ssm考试管理系统)

PLC中ST编程的IF判断

如果判断条件是如果...否则...的时候; 如果wData的值是16进制的FFFF,十进制的65535;就执行IF中的语句,否则就执行ELSE中的; 当wData的值为0时,因不符合IF的判断条件,执行了ELSE中的语句&#x…

MySQL索引底层数据结构

索引简介 索引是一个排好序的数据结构,包含着对数据表里所有记录的引用指针,如下图所示。索引文件和数据文件一样都存储在磁盘中,数据库索引的目的是在检索数据库时,减少磁盘读取次数。 常见的索引数据结构包括二叉树、红黑树、…

node多版本控制

今天遇到一个问题: 下载了一个vue项目,一直卡在npm install阶段,折腾了半天,发现是版本太高了,需要降低一下版本,但是其他项目需要高版本的,这不就冲突了; 找到了一个node多版本控制…