0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何检测丢包?常用这两种方式

亿佰特物联网应用专家 2023-08-25 08:22 次阅读

丢包重传是数据通信应用里面一项非常重要的功能,特别是在无线通信中是一项决定通信协议先进程度的指标。今天主要着重介绍如何检测丢包,之后再介绍重传机制。

如何检测丢包?

要想丢包重传,首先必须得检测到丢包,没有丢包就没有重传。在无线通信中,对于丢包的检测通常有两种方式:载波监听应答机制

01

载波侦听

载波侦听是一种常见的丢包检测方法,而在载波侦听基础之上又发展出CSMA/CA。CSMA/CA也可以看做一种重传机制,我们经常使用的Wi-FiZigBee就采用了这种机制。通信设备在发送消息前,会打开接收并维持一段很短的时间。在这个很短的时间内,无线单元会检测同频段是否有其它的干扰信号,例如ZigBee设备在做载波侦听时,既要检测是否有Wi-Fi、蓝牙在发射信号,又会检测是否有其它的ZigBee在发射信号。如果干扰信号来自Wi-Fi或者蓝牙,ZigBee设备会测量它的功率有没有自己大,功率没自己大就压过去,功率比自己大就果断丢包;而ZigBee设备在载波侦听时如果遇到其它的ZigBee设备,不管对方功率是否比自己大,都会主动丢包,即让别人先走。

02

应答机制

判断丢包的另一个方法是增加应答机制,通常通信协议都会有OSI七层模型。七层协议中从链路层开始,每一层都可以添加应答机制。层级越低越接近硬件,应答机制的响应就越快。

77683972-42dd-11ee-8e12-92fbcf53809c.png

OSI七层模型

我们还是以ZigBee的应答机制为例。ZigBee的OSI模型,具有应答机制的目前仅限MAC层(数据链路层)APS层(传输层)。但是在实际应用中,很多时候还会为应用层添加应答机制。MAC层的应答是响应最快的,也叫做MAC-ACK,通常都在ZigBee的无线收发单元中硬件自动产生。接收端设备收到ZigBee数据帧后120微秒以广播的方式发出来。同时MAC-ACK也是ZigBee中最短的帧,帧长只有5字节,加上帧前导码和同步帧累计11字节。按照ZigBee的250kbps传输速率每个字节需要32微秒,一个MAC-ACK帧的占空时间352微秒。也就意味着发送端在发送一个MAC帧后,会在120+352=472微秒后收到该MAC帧对应的MAC-ACK。同样ZigBee的MAC层也规定发送端如果在540微秒内没有收到对应的MAC-ACK则认为是丢包。

MAC-ACK采用广播发送,首先可以减少MAC-ACK帧中表示地址的字段,减少帧长度,让ACK帧占空时间更短,发送端可以根据MAC-ACK帧中的帧序号来判断是否自己的MAC-ACK;其次MAC-ACK采用广播的方式,也可以提醒其它的ZigBee设备自己正在通信,其它的ZigBee设备如果这个时候也在进行载波侦听,就能主动避让正在通信的设备。在ZigBee的MAC层,载波侦听和MAC-ACK是双管齐下,这样能保证丢包检测的准确性。另外ZigBee的广播消息是不会产生MAC-ACK的。

77bdd800-42dd-11ee-8e12-92fbcf53809c.png

ZigBee参考模型

多元化的丢包检测机制

ZigBee除了MAC层有应答机制,传输层和应用层也有应答机制。ZigBee是一个多跳的Mesh网络,而MAC层的传输只能满足单跳传输,因此ZigBee在传输层也做了应答,也叫做APS-ACK。ZigBee发送端把一个消息传输给ZigBee接收端,中间会经过多个ZigBee路由器节点的转发。接收端收到消息后,会通过相同的路由路径,把APS-ACK发给发送端,发送端收到APS-ACK就认为发送消息到达了接收端。如果发送端在6秒(默认值)后没有收到APS-ACK则会认为数据丢包。

ZigBee的系统中通常都只对应用层开放接口,在应用层开放的接口中最常见的就是一个叫做“AF Data Confirm”的检测接口,它综合了MAC层丢包(含MAC-ACK丢包和载波侦听丢包)、网络层丢包及传输层丢包等底层丢包信息。ZigBee的顶层应用中可以知道当前发送的消息是否丢包。

应用层的应答

MAC层和传输层的丢包检测,都属于系统层的丢包。还有一种丢包就是应用层的丢包,比如一个调光开关给一个空调设备发了一条“把亮度调到50%”的指令。这条指令如果不丢包,会有什么结果?肯定是空调会去执行“把亮度调到50%”,但是空调只有温度没有亮度,也就是说这条指令发给了不该发的目标。这个时候就需要应用层的应答来解决这个问题。比如空调收到了“把亮度调到50%”后,可以向发送端回复应用层应答“看清楚我不是灯泡”。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 无线
    +关注

    关注

    31

    文章

    5451

    浏览量

    173245
  • 检测
    +关注

    关注

    5

    文章

    4482

    浏览量

    91444
  • 数据通信
    +关注

    关注

    2

    文章

    431

    浏览量

    33755
  • CSMA
    +关注

    关注

    0

    文章

    28

    浏览量

    12990
收藏 人收藏

    评论

    相关推荐

    什么是电流保护的接线方式?有哪两种接线方式?

    方式。下面将对这两种接线方式进行介绍。 一、完全星形接线方式 完全星形接线方式,也称为三相三继电器接线
    的头像 发表于 10-06 17:37 1046次阅读
    什么是电流保护的接线<b class='flag-5'>方式</b>?有哪<b class='flag-5'>两种</b>接线<b class='flag-5'>方式</b>?

    Linux应用层控制外设的两种不同的方式

    众所周知,linux下一切皆文件,那么应用层如何控制硬件层,同样是通过 文件I/O的方式来实现的,那么应用层控制硬件层通常有两种方式
    的头像 发表于 10-05 19:03 455次阅读
    Linux应用层控制外设的<b class='flag-5'>两种</b>不同的<b class='flag-5'>方式</b>

    接地保护分为哪两种方式

    接地保护是电气工程中非常重要的一安全措施,其目的是确保电气设备和系统在发生故障时能够安全地将电流导向地面,从而保护人身安全和设备安全。接地保护主要分为两种方式:工作接地和保护接地。以下是对
    的头像 发表于 08-05 10:24 992次阅读

    涡流检测常用检测方式

    涡流检测是一非破坏性检测技术,广泛应用于金属构件的无损检测。它利用电磁感应原理,通过在被检测物体中产生涡流,
    的头像 发表于 07-26 15:26 867次阅读

    plc与传感器的两种连接方式

    在工业自动化领域,PLC(可编程逻辑控制器)与传感器的连接是实现自动化控制的关键环节。本文将详细介绍PLC与传感器的两种主要连接方式:模拟量连接和数字量连接。这两种连接方式各有优缺点,
    的头像 发表于 07-25 09:36 1296次阅读

    wdm设备的两种传输方式

    系统中,有多种传输方式,其中最常见的两种是密集波分复用(DWDM)和粗波分复用(CWDM)。 1. 密集波分复用(DWDM) 1.1 DWDM技术原理 密集波分复用(Dense Wavelength Division Multiplexing,简称DWDM)是一
    的头像 发表于 07-18 09:45 471次阅读

    三相负载的连接方式有哪两种

    三相负载的连接方式主要有星形连接(Y连接)和三角形连接(Δ连接)两种这两种连接方式在电气工程中非常常见,它们各自具有不同的特性和应用场景。下面将介绍
    的头像 发表于 07-17 10:33 3970次阅读

    控制器有哪两种实现方式?各有何优缺点?

    介绍这两种实现方式的优缺点。 硬件控制器 硬件控制器是一使用专用硬件电路来实现控制功能的控制器。它通常由一组逻辑电路、寄存器、计数器等组成,用于实现特定的控制逻辑。 优点: 性能高 :由于硬件控制器使用专用电路
    的头像 发表于 06-30 10:33 1210次阅读

    PCBA加工中常见的两种焊接方式详解

    ,在PCBA行业中经常被使用。接下来深圳PCBA加工厂家为大家详细介绍PCBA加工手工焊接的两种方式,为您揭秘行业内的技术细节。 PCBA加工过程中常用焊接方式 第一
    的头像 发表于 06-14 09:18 537次阅读

    电动汽车的充电方式有哪两种

    随着电动汽车(EVs)的普及,充电站的建设也在全球范围内迅速扩展。电动汽车充电站主要分为大类:交流充电站和直流充电站。这两种充电站各有特点,为不同类型的电动车辆提供充电服务。 交流充电站 交流
    的头像 发表于 05-16 17:19 775次阅读

    变频器的两种无速度传感器矢量控制模式有什么区别?

    在变频器控制模式中,有无速度矢量传感器模式,该模式又分为两种,无感矢量0和无感矢量1,这两种模式的本质原理是什么?对变频器的控制电机性能和系统稳定性响应什么的有什么影响?具体应用上哪种方式更好一点,或者而言
    发表于 02-22 21:45

    异或门两种常见的实现方式

    这两种实现方式都能够实现异或门的功能,具体的选择取决于设计需求和逻辑门的可用性。实际构建异或门时,可以使用离散电子元件(如晶体管、二极管等)或整合电路芯片(如 TTL、CMOS 等)来实现。
    的头像 发表于 02-04 17:30 1.2w次阅读
    异或门<b class='flag-5'>两种</b>常见的实现<b class='flag-5'>方式</b>

    外部中断有哪两种触发方式?如何选择和设定?

    外部中断有两种触发方式:电平触发和边沿触发** 。
    的头像 发表于 01-28 17:31 6149次阅读
    外部中断有哪<b class='flag-5'>两种</b>触发<b class='flag-5'>方式</b>?如何选择和设定?

    一次性保险丝与自恢复保险丝这两种之间有什么差别?

    一次性保险丝与自恢复保险丝这两种之间有什么差别? 一次性保险丝和自恢复保险丝是两种用于电气系统中的保险器件,它们在功能和特性上存在一些差异。本文将对这两种保险丝进行比较,并详细解释它们的定义
    的头像 发表于 01-04 14:13 1676次阅读

    网络率正常范围及其影响因素

    网络中,数据是以IP分组的形式传输的,每个数据都有一个唯一的标识符。当接收方未能收到发送方发送的数据时,就称为发生了。通常,网络
    的头像 发表于 12-29 14:45 6153次阅读