太阳集团tcy8722

当前位置: 首页 >应用方案 >技术应用 >

无线传输协议减少网络丢包率有哪些处理机制?

前文讲解了是什么是无线通信应用中的网络丢包率,本文太阳集团tcy8722物联网无线通信技术人员整理了可以减少网络丢包率的处理机制,如下文所示:

①PHY层的减少丢包机制:

物理层的丢包,就是发送端发送了信号,但是接收端没有接收到信号。这也是最简单也是最常见的原因,通常就是发射端的功率低了,发射端距离接收端太远。

遇到这种情况,通常会想到的办法就是提高发射功率,信号能发射得更远。但是根据香农定律,在相同信道带宽下,信号携带的信息量越少,对信噪比的需求越低,对信噪比需求越低就意味着对功率的需求越低。

这时除了提高功率,还有一种方式就是扩频。比如典型的ZigBee模块上使用的DSSS扩频,原本ZigBee的信道带宽有2MHz,也就是能在1秒钟内输出2M个0或1的信号。通常我们使用8个0或1的信号表示一个字节,但是DSSS的作用下,需要64个0或1的信号来表示一个字节。这样使用无线信号传输一个字节需要64个0或1,即使信号在传输过程中发生了失真,接收端也能对信号进行纠错。这也就是为什么ZigBee的传输稳定性优于433MHz通信。正常情况下,ZigBee模块在20dBm发射功率的情况下,传输距离可达1公里。

网络丢包率减少机制

还有一种情况,就是天线的问题。任何一种天线都有天线增益系数以及方向性。通常外置天线的增益就优于PCB天线,在设备空间充足的情况下尽量选择外置天线。而天线的方向性也是要考虑的因素,例如棒状天线的信号覆盖范围就是一个扁球体,平行天线的位置信号非常好,而天线轴线延长线位置信号差得多。

②MAC层减少丢包的机制:

ZigBee的IEEE 802.15.4系列协议为例,该协议的MAC层具有以下几个重要的功能。

载波侦听和CSMA机制:

IEEE 802.15.4协议具备基于载波侦听的CSMA机制。设备在每次发射信号前,会侦听当前信道是否繁忙,并在信道空闲的时候发射信号。很多sub-G芯片也带有载波侦听功能的,但是缺少类似CSMA这样的协议机制。CSMA则规定了信道侦听的方法:发射前在一个随机时间内持续侦听信道,这样就能适当避免两个相同的设备同时发射信号;随机时间到达后尝试发送信号,如果发送失败就再侦听一次,并且下一次随机时间范围继续扩大(2倍),这样就能避免更多的设备同时发射信号;如果多次尝试都失败,而且达到了最大次数限制,那么这个信号就算丢包了。

自动应答机制:

IEEE 802.15.4协议MAC层有两种主要通信方式:广播和点播。点播到目标时,目标节点会返回ACK帧。发送端没有收到ACK帧,会尝试重传信号,如果多次重传都没收到ACK就算丢包。另外接收端回复MAC-ACK的时候是不受CSMA机制可以强行发送的,发送端在CSMA机制下成功将点播信号送出去后,只需要0.2~0.5毫秒就能收到ACK。

因此,导致MAC层丢包常见的现象就是CSMA失败丢包和MAC-ACK失败丢包,和物理层的丢包不同的是这两种丢包都可以被发送端自己检测到。通常遇到这种丢包,应用上的处理就是丢包重传功能机制。但是重传也是要讲究科学性的,比如恶意信号干扰导致CSMA失败重传就没法解决;接收目标不存在导致的 MAC-ACK失败重传也是没法解决的。

PHY层和MAC层的一系列处理机制都是为了减少丢包而设计的,但是无法保证绝对没有丢包,因此无线应用设计中,最关键就是遇到丢包了该怎么办。

查看技术文章和免费咨询技术问题可以访问成都太阳集团tcy8722电子科技有限公司官网及各官方平台:

微信号:cdebyte

今日头条:太阳集团tcy8722

新浪微博:成都太阳集团tcy8722



太阳集团tcy8722