APP下载

非坚持型载波监听多路访问机制对LoRa网络扩展性的影响

2023-09-27万义程杨光祥张庆达甘晨阳

计算机应用 2023年9期
关键词:数据包时延信道

万义程,杨光祥,2*,张庆达,甘晨阳,易 林

(1.重庆工商大学 人工智能学院,重庆 400067;2.检测控制集成系统重庆市工程实验室(重庆工商大学),重庆 400067)

0 引言

物联网(Internet of Things,IoT)作为互联网的扩展和延伸,能够提供信息的采集、处理和传输等一系列高效的服务,为智能化时代提供重要的支撑。关于物联网的定义有很多,Čolaković 等[1]将物联网架构定义为由感知层、网络层和应用层三部分组成的技术架构,其中网络层通过无线通信技术将感知层信息实时、准确地传送于应用层,是物联网应用中数据交互的桥梁,因此无线通信技术的发展是当前物联网面临的挑战之一。考虑到物联网发展范式[1-6],在更广泛的应用中,数据的传输通常具有稀疏性,同时需要具备远程传输的性能。此外,随着大量设备部署到物联网中,网络覆盖范围、基础设施成本、功耗和使用寿命在多种应用场景中也越发重要。低功耗广域网(Low Power Wide Area Network,LPWAN)作为一种提供低功耗和远程通信的无线解决方案,不仅支持设备高密度部署,而且能在免费的ISM(Industrial Scientific Medical)频段上运行,极大地为用户部署个人或公共网络设施提供了便捷性,所以LPWAN 也被广泛应用于物联网中。

LoRa(Long Range Radio)联盟提出了LoRaWAN(LoRa Wide Area Network)作为LPWAN 中占据主导地位的长距离通信技术标准[3,5],而Semtech 公司则设计了一种专有的物理层调制方式——LoRa,通过牺牲数据速率从而换取通信覆盖范围[2]。从本质上讲,LoRa 是基于线性调制扩频(Chirp Spread Spectrum,CSS)技术[7],根据载波频率(Carrier Frequency,CF)、扩频因子SF(Spreading Factor)、带宽(BandWidth,BW)和编码速率(Coding Rate,CR)对基带信号进行调制。其中CR 用于向前纠错技术,CR 越小(ICR=4/(4+n),n∈{1,2,3,4}),短脉冲干扰导致的误码率越低,传输鲁棒性越高。此外,为了提高数据传输的稳定性,LoRaWAN 标准还设计了自适应速率(Adaptive Data Rate,ADR)机制,通过链路预算与网关敏感度[8]确定终端节点最佳传输速率,使用较高的SF以较低的数据速率为代价来提高链路鲁棒性。ADR 机制不仅可以增加LoRa 网络容量[8],而且能降低发射机功耗和扩展通信范围[9]。此外,由于LoRaWAN 具有远距离、低功耗、低成本的特点[10],且支持双向通信,能在各种应用中灵活部署,近年来受到了越来越多的关注。截至2022 年,LoRaWAN 已经在171 个国家部署,在农业、工业、智慧城市等领域都有广泛的应用[11]。

尽管LoRaWAN 凭借LoRa 调制技术和ADR 机制具有一定的扩展性;然而,LoRaWAN 是基于ALOHA 的信道接入控制协议,不具备碰撞避免机制,终端设备可以在任意时刻发送信号。当多个终端使用同一信道传输信号时,信号之间会发生碰撞,造成信号重叠。而LoRa 接收机是通过匹配滤波的方式对信号进行解调,虽然LoRa 接收机的一个通道能够同时监听6 个SF不同的信号,但在同一时刻只能处理一个信号。当采用同一SF调制的多个LoRa 信号发生重叠时,解调过程可能会出现多个峰值,接收机将无法正确识别。因此在LoRaWAN 中,信号共信道传输时,基于ALOHA 的传输调度方式会引发严重的信道冲突,导致链路稳定性和服务质量显著下降,极大降低了网络的扩展性。文献[12]中对LoRaWAN 的扩展性进行了分析,该研究表明了共信道干扰是限制LoRaWAN 扩展性的主要因素,网络的扩展性会随着终端设备数量的增加而呈指数级下降。

为了提高LoRa 网络的扩展性,不少学者认为不同SF调制的信号之间具有正交性,利用SF正交性的特点,创建虚拟信道。如:文献[9]中提出了一种SF分配机制的协议,通过将Class A 和Class B 终端设备RX2 窗口移动到数据传输窗口前,使终端节点可以通过RX2 窗口接收到由网关发送的配置帧,配置帧中包含节点当前传输所需的SF参数,能提高传输链路的稳定性,从而降低丢包率。而当终端节点连续使用相同SF进行数据传输时,同样由配置帧改变终端节点的SF,保证同SF的LoRa 信号非共信道传输,从而减小同SF的信号发生碰撞的概率。文献[13]中认为具有不同SF的多个终端可以同时在同一通道中运行,通过创建虚拟通道的方式避免同SF信号产生的干扰,以提高LoRa 网络性能。同样,Zhang等[14]认为不同SF之间的LoRa 信号相互独立,将多个不同SF的LoRa 用户接入同一信道中,能提高网络吞吐量。

最近,Croce 等[15-16]指出,不同SF调制下的LoRa 信号是不完全正交的,他们通过SF不同的两个LoRa 信号模拟碰撞过程,研究了SF间碰撞的影响,证实了不同SF之间的信号同样会产生干扰。类似地,Mahmood 等[17]和Waret 等[18]通过相关实验表明了SF间的干扰会极大降低LoRa 网络性能,特别是对于较高的SF,由于数据帧在空中传输时间更长,导致较高SF的信号发生冲突的概率更大。文献[9,13-14]中认为不同SF之间是独立的子系统,从而创建虚拟信道具有很强的假设性,这会严重高估LoRaWAN 的性能。

因此,如何减少或避免LoRa 网络中同SF干扰和SF间干扰,提高LoRa 网络扩展性,是当前研究的关键性问题。为了减少LoRa 信号冲突的发生,文献[19-21]中提出了用载波监听多路访问(Carrier Sense Multiple Access,CSMA)机制替代LoRaWAN 中ALOHA 的调度机制,通过先听后发(Listen-Before-Transmit,LBT)的方式降低信号冲突的概率,从而提高LoRa 网络扩展性。但以上研究都并未具体阐述如何在LoRa网络中实现CSMA 机制以及终端节点如何选择退避时间。上述研究大多都仅从仿真实验中分析了CSMA 运用于LoRa网络中的数据包交付率和总体能耗两方面,且这些研究的实验结果之间具有较大的差异,难以从中得到较准确的比较结果;而对于时延、信道利用率等方面,上述文献没有进行细致研究。

虽然本文同样是想利用CSMA 实现LBT 机制,以减小共信道中信号冲突的概率,从而提高LoRa 网络扩展性。但当前CSMA 的变体有很多,本文提出用争用式的非坚持型CSMA(Non-Persistent CSMA,NP-CSMA)协议替代LoRaWAN中随机调度协议ALOHA,通过协调LoRa 网络中各个节点接入信道的时间,尽量避免冲突的发生。

本文的主要工作如下:

1)对LoRa 调制技术进行了介绍,考虑了LoRa 物理层编码对接收机正确解调的影响,通过MatLab 对LoRa 调制技术性能和SF之间不完全正交性进行分析,并分别给出了误码率(Bit Error Ratio,BER)在10-4的条件下解调所需的信噪比(Signal-Noise Ratio,SNR)阈值和确保SF间信号不受干扰影响的信号干扰比(Signal-Interference Ratio,SIR)阈值。

2)对NP-CSMA 在LoRa 网络中的调度机制进行了充分的阐述,并基于NP-CSMA 在LoRa 网络中的调度过程分析了NP-CSMA 在LoRa 网络中数据包交付率(Packet Delivery Rate,PDR)和信道利用率的理论性能。通过NS3 仿真平台对NP-CSMA 在LoRa 网络中的数据包交付率、信道利用率、时延以及能耗进行了仿真实验,进一步分析了NP-CSMA 对LoRa 网络扩展性的影响。实验结果表明,NP-CSMA 能在LoRa 终端节点保持相对较低功耗运行条件下,不仅为LoRa网络提供更高的数据包交付率和信道利用率,而且能增加网络容纳的节点数量,充分反映了NP-CSMA 可以有效提高LoRa 网络可扩展性。

1 LoRa技术

1.1 LoRa调制技术

LoRa[2]作为LoRaWAN 的物理层,是来源于CSS 调制的一种调制技术。与传统CSS 技术相比,LoRa 进一步改善了频谱利用率[7],因此具有更好的抗多径多普勒效应和抗衰落能力。LoRa 调制将一个携带SF个比特的码元分割为2SF个码片(chip)进行扩频传输,这使得LoRa 信号具有很强的抗干扰性。LoRa 为调制信号提供了三种带宽B的设置和6 种不同的SF值,如式(1)所示:

LoRa 调制利用了啁啾(chirp)信号,通过循环移位的方式对基本chirp 信号进行线性调频,从而得到调制信号,该调制信号在一个符号时间Ts(也称为扫频周期)内,它的频率在[fmin,fmax](上啁啾up-chirp)或[fmax,fmin](下啁啾down-chirp)范围内线性变化(B=fmax-fmin)。反映在时间上,LoRa信号的一个符号的持续时间Ts可以看成由2SF个长度为Tchip的时间片组成,通过循环移位整数倍Tchip时间来表示出2SF种信息,每个符号起始位置的初始频率偏移承载所需传输的信息[7,15]。文献[7,22]中对LoRa 调制进行了详细说明,本文仅以up-chirp 信号和循环左移对LoRa 调制进行介绍。up-chirp信号可表示为:

其中,fc为载波频率,根据eiθ=cosθ+i sinθ,有s(t)=cosφ(t)+j sinφ(t),因此φ(t)为up-chirp 信号的相位。所以可知up-chirp 信号的瞬时频率为:

而LoRa 调制在对基本up-chirp 信号进行线性调频前,首先需要将传输信息调制到初始频率上,然后再经过线性调频将生成的LoRa 信号的频率扩展到整个带宽。假设LoRa 信号携带的SF个比特组成的信息用向量V=(v0,v1,…,vSF-1)表示,则循环移位值K可表示为式(4),循环左移后LoRa 信号的载波初始频率用f0表示。

根据循环移位的性质,对基本up-chirp 信号的瞬时频率函数循环左移后,LoRa 信号的瞬时频率是一个由斜率相同的两个线性函数组成的分段函数,在某一时刻频率会发生跳变。假设跳变时刻为T0,在[0,T0]时间段内,LoRa 信号的频率从f0线性调频至fmax,然后在T0时刻频率发生跳变,由fmax变为fmin;最后在[T0,Ts]时间内,从fmin线性调频至f0。在LoRa中,传输一个LoRa 符号所需要的时间为Ts=2SF/B,所以调频斜率B/Ts=B2/2SF,由于带宽B=fmax-fmin,则有f0=K⋅B/2SF+fmin,那么频率跳变时刻T0=(2SF-K)/B,因此LoRa调制信号的瞬时频率可表示为式(5)。

图1 为多个连续符号组成的LoRa 信号在B=125 kHz 和SF=8 时的频率变化,可以看出,LoRa 信号的频率在一个符号时间内表现为一个分段函数。

图1 基于up-chirp,K=50,100,150,200,225的LoRa信号频率变化Fig.1 Frequency variation of LoRa signal with K=50,100,150,200,225 based on up-chirp

将式(5)代入式(2),基于up-chirp 和循环左移的LoRa 调制信号波形可以表示为式(6)。图2 是K=50 的LoRa 调制信号在SF=8 时的信号实部和虚部。

图2 基于up-chirp的LoRa信号的实部和虚部(K=50,SF=8)Fig.2 Real and imaginary parts of LoRa signal based on up-chirp(K=50,SF=8)

1.2 LoRa解调技术

解调的本质就是滤波[22],无线信号解调的首要处理过程是对信号进行采样,使模拟信号转换为数字信号,即A/D(Analog to Digital)变换。对于基于up-chirp 和循环左移的LoRa 信号解调过程,以单倍采样为例,当LoRa 接收机接收到LoRa 信号并进行采样时,假设LoRa 接收机单次采样的时间表示为△t,在某一时刻采样用t表示,由于采样频率与LoRa信号在调制过程中所使用的带宽B相等,那么△t=1/B,t=n△t=n/B。式(6)中LoRa 信号sm(t)经过采样后,序列长度N=Ts/△t=2SF,然后再将参数t=n△t=n/B和Ts=2SF/B代入式(6),从而得到sm(t)采样后的数字信号,它的表达式如式(7)所示。在式(7)中,由于n为整数,所以e-j2πn可表示为式(8)。

LoRa 接收机对LoRa 信号完成采样后,就需要对得到的LoRa 数字信号进行解调,将数字LoRa 信号g[n]与本地匹配的降线性调频信号d[n]相乘以实现解线性调频的目的。需要注意的是,匹配信号d[n]的调频斜率与g[n]互为相反数,序列长度与g[n]相等,初始频率为fmin,如式(9)所示。

对r[n]进行快速傅里叶变换(Fast Fourier Transform,FFT)可得:

r[n]的频谱R[n]是一个冲激函数,在k=K处存在峰值,在其他点处幅度为零。图3 是K=50 时,图2 中的LoRa 信号在单倍采样的条件下,解线性调频后的FFT 输出。

图3 基于up-chirp的LoRa调制信号解线性调频后的FFT输出(K=50)Fig.3 FFT output of LoRa signal based on up-chirp after demodulating linear frequency modulation(K=50)

1.3 LoRa调制性能

在一个完整的通信系统中,信源在被调制之前,通常还需要进行信道编码以获得编码增益,从而提升系统的抗干扰能力。同样,对于完整的LoRa 收发链,LoRa 发射机在发送信号之前,除了通过LoRa 调制带来扩频增益以保证传输链路具有较好的抗干扰性之外,物理层还需要对原始信息进行一系列信道编码操作,包括白化、纠错编码、交织和格雷映射,都是专门为提高系统对干扰的鲁棒性而设计的[16]。LoRa 采用汉明编码[23-24]进行纠错编码,根据一定规则对原始信息比特序列插入若干个奇偶检验码(取决于编码速率)。而交织的目的是将连续传输的信息离散化,再利用纠错编码技术纠正传输信息中因信号失真导致原本比特相同的某个分组的比特序列发生改变或丢失的错误,从而提高接收机正确解码概率。Tapparel 等[23-24]通过软件定义的无线电(Software Defined Radio,SDR)和MatLab 分别实现了完整的LoRa 物理层收发通信系统。

通常误码率(BER)是表征一个调制技术性能的重要指标之一,为了更准确地评估LoRa 调制BER 性能与信噪比(SNR)之间的关系,本文基于文献[24]中在MatLab 中实现的LoRa 调制解调器对LoRa 物理层通信进行了模拟实验。在对原始信息进行汉明编码时,采用4/8 的编码速率,调制带宽为125 kHz,信道模型使用加性高斯白噪声信道(Additive White Gaussian Noise,AWGN),利用AWGN 信道模型和设定的SNR值对发送的LoRa 信号加噪,SNR 值以0.5 dB 的步长从-30 dB 增加至-5 dB。图4 为LoRa 调制在AWGN 信道下的BER 与SNR 之间的关系,表1 则是当BER 为10-4时,不同SF对应的SNR 阈值,这一结果与文献[2,7,12]中给出的结果大致相同。另一方面,从表1 给出的SNR 阈值来看,LoRa 信号功率即使远低于底噪,也同样能被接收机正确解调,这意味着,LoRa 调制技术具有较强的抗干扰能力,LoRa 发射机能以较低的功耗发送信号就足以满足通信需求,当然这往往是通过牺牲传输速率来换取接收机在较低的信噪比条件下具有较好的正确解码性能。

表1 BER为10-4时不同SF对应的SNR阈值Tab.1 SNR thresholds corresponding to different SF when BER is 10-4

图4 不同SF下LoRa调制的BER与SNR的关系Fig.4 Relationship between BER and SNR for LoRa modulation at different SF

1.4 不完全正交性分析

扩频因子不同的LoRa 信号之间具有准正交性特点[2,6]。Croce 等[15]根据信号之间的相关性,表明了SF不同的两个LoRa 信号之间的互相关函数在任意时刻几乎为0;然而这并不意味着使用不同SF调制的LoRa 信号之间完全相互隔离、正交,因为Croce 等[15]同样指出,当两种SF不同的传输发生信号碰撞造成信号重叠时,如果期望接收的信号与干扰信号的功率不具可比性,由于接收机是通过寻找峰值来判定接收信号的信息,而SF之间准正交性不能完全抑制干扰的影响,因此这会导致接收机无法从重叠的信号中正确分离出期望接收的信号的信息。以图5 为例,假设SF=9 的参考信号是接收机期望接收的信号,SF=8 的干扰信号为干扰源,为了便于演示,本文使这两个信号开始传输时间和结束时间相同。根据SIR 的计算如式(12)所示,使SF=9 的参考信号的幅度和SF=8 的干扰信号幅度满足SIR=-20 dB,当接收机接收到由这两个信号叠加构成的组合信号时,接收机将在FFT 的输出处观察到多个峰值,使得接收机在识别参考信号的过程中会出现歧义,无法从组合信号中得到有用信息,如图6 所示。

图5 基于up-chirp,由K=150的参考信号和K=50,100的干扰信号重叠组成的LoRa信号Fig.5 Based on up-chirp,LoRa signal composed of a reference signal with K=150 and interference signals with K=50,100

图6 SIR=-20 dB的条件下,K=150的参考信号和K=50,100的干扰信号重叠组成的LoRa信号解线性调频后的FFT输出Fig.6 At SIR=-20 dB,FFT output of LoRa signal composed of a reference signal with K=150 and interfering signals with K=50,100

其中:Pref、Aref为参考信号的功率与它的幅度;Pint、Aint为干扰信号的功率与它的幅度。

本节的目的是量化出确保不同SF的LoRa 信号之间互相隔离从而抑制同信道SF间干扰的SIR 阈值。与1.3 节类似,同样需要考虑物理层编码对接收器正确解调的影响。因此,基于文献[24]中在MatLab 中实现的LoRa 调制解调器,本文在没有噪声的信道模型下,对LoRa 接收机接收由两种SF调制的重叠信号进行了模拟。在仿真的过程中,假设发射机与接收机完全同步,参考信号的幅度Aref设置为1,SIR 以0.5 dB 的步长从-30 dB 增加至5 dB,根据SIR 设定的值,则干扰信号的幅度为此外,在实际的信号传输过程中,干扰信号与参考信号的开始时间往往不同步,因此实验过程中需要对干扰信号的传输进行一定的随机时间偏移,以消除干扰信号与参考信号的时间同步。对于任何一种两个SF 的组合模拟,本文都考虑干扰信号与一个参考信号完全重叠,目的是保证重叠信号中实际SIR 符合给定的数值,减少仿真实验的复杂性,但这并不影响实验结果。

本节通过比较解调后的比特序列和调制比特序列来获得BER,从而确定隔离SF间干扰所需的SIR 阈值。图7 为SF=9 的参考信号在不同SFint的干扰信号组合情况下,接收机的BER 与SIR 之间的关系,表2 则总结了当BER 为10-3,LoRa 接收机解调多种SF组合信号中参考信号所应满足的SIR 阈值,这一结果与文献[16]中给出的结果大致相同。

表2 BER为10-3的条件下,多种SF组合信号中参考信号解调所需的SIR阈值Tab.2 SIR thresholds required for demodulation of reference signals in combined signals of multiple SF when BER is 10-3

图7 不同SFint的干扰信号的组合下,SF=9的参考信号的BER与SIR之间的关系Fig.7 Relationship between BER and SIR of reference signal with SF=9 under combinations of interference signals with different SFint

从表2 来看,由于保证SF之间的传输不受干扰的影响所需的SIR 阈值很小,在某种程度上,可以认为SF之间具有正交性,也使多个重叠信号的并行传输具有可能性。但是LoRa 接收机的接收通道数量有限,重叠的信号在传输过程中往往会发生捕获效应,网关仅能接收功率较强的信号,而功率较低的信号将会被丢失;另一方面,受信道衰落的影响,当干扰信号比参考信号更接近网关时,可能导致干扰信号的功率显著高于参考信号,接收机无论是干扰信号还是参考信号都将无法正确解调。此外,在节点密度较大的LoRa 网络中,通常是多个终端节点的传输发生信号冲突,这同样会使干扰信号的功率显著高于参考信号,文献[15,17]中就对这些情况进行了详细的阐述。

2 基于LoRa网络的NP-CSMA

LoRaWAN 的局限性主要体现在两方面:一是基于ALOHA 的传输调度方式;二是SF不完全正交性。当LoRa 信号共信道传输时,基于ALOHA 的调度方式和SF不完全正交性会引发严重的信号抑制问题,而根据造成抑制的干扰信号所使用的SF的不同,干扰可以分为同SF干扰和SF间干扰。对于无线网络来说,在不考虑由环境因素导致的链路不稳定的情况下,数据的冲突是影响网络性能的主要因素。

目前,CSMA 种类有很多,无线局域网中由IEEE 802.11标准规定的CSMA/CA 协议是当前具有代表性的方法之一[21]。但考虑到CSMA/CA 是一种坚持CSMA(One-Persistent CSMA,1P-CSMA)协议的变体,在CSMA/CA 网络中,由于它的退避机制是采用退避计时器冻结的方式[21,25],这需要终端节点不间断地监听信道,所以相较于CSMA/CA,NP-CSMA 更适用于低功耗无线广域网。为了提高LoRa 网络扩展性,本文提出用争用型介质访问控制协议NP-CSMA 替代LoRaWAN 中随机型的调度方式ALOHA,通过先听后发的机制降低信号碰撞的概率,减少LoRa 网络中的共信道抑制。

典型的LoRa 网络结构为星型拓扑结构[26],LoRa 终端设备通过单跳指定的ISM 频段与网关进行无线连接。而在LoRa 使用的免费ISM 频段中,运行在不同频带的传输信道之间互不干扰[26],那么通过为每个扩频因子分配唯一的信道,使多个不同SF的信号传输分别容纳在单独的信道中,以并行传输的方式可以有效避免SF的不完全正交性对信号产生的抑制,而国内最佳部署LoRa 网络的频段470 MHz 正好为LoRa 信号传输提供了8 条对齐的信道[27]。因此,在将NPCSMA 应用于LoRa 网络的过程中,仅需关注如何调度同SF的终端节点之间的传输,以降低同SF信号冲突的概率。本文将针对单个网关和单个SF介绍NP-CSMA 在LoRa 网络中的调度机制,为了能满足并行传输的需求,网关应配备SX1301 模块,因为SX1301 可以同时监听8 个上行通道。

2.1 信道活动检测

在无线局域网中,终端节点在发送数据之前通过检测信道中的信号强度(Received Signal Strength Indicator,RSSI)是否超过一定的阈值实现对信道状态的监听[25],这一信道监听过程也几乎是瞬时完成。然而受路径损耗、阴影效应等影响,无线信号在传输过程中会发生损耗,导致传输于信道中的无线信号的RSSI 值变化范围很大,这会使终端节点在侦听信道状态的过程中发生误判。尤其是对于覆盖范围在几百米甚至几千米的LoRa 网络来说,由于发送端通常以较低的功耗发送,LoRa 信号的RSSI 值往往会低于底噪,因此LoRa 终端通过检测信道中的RSSI 值的方式显然不适用。但LoRa 芯片提供了信道活动检测(Channel Activity Detection,CAD)模式[28],终端节点可以通过请求切换到CAD 模式,然后从信道获取LoRa 信号的前导码符号,从而实现对信道状态的感知,如图8 所示。相较于直接通过RSSI 值判定信道状态方式,LoRa 终端利用CAD 模式可以更准确地判定信道中是否存在传输信号[21]。这一过程需要LoRa 终端维持CAD模式在几个LoRa 符号时间,而根据SF的不同,CAD 模式的持续时间TCAD在1.75Ts,SF=7和2.25Ts,SF=12之间。

图8 LoRa终端信道活动检测过程Fig.8 LoRa terminal channel activity detection process

2.2 调度策略

本文利用NP-CSMA 替代LoRaWAN 中的ALOHA,通过CSMA 的冲突避免机制缓解共信道同SF干扰问题,从而提高LoRa 网络扩展性。将NP-CSMA 应用于LoRa 网络的关键就是如何协调LoRa 网络中各个节点接入信道的时间,尽量避免冲突的发生。在802.11 标准规范中,所有类型的CSMA 协议都是通过分布协调功能(Distributed Coordination Function,DCF)机制让节点以争用的方式获取信道使用权,从而协调节点共享信道,这种机制通常适用于单跳分布式组网中,与LoRa 单跳星型的LoRa 网络结构相似。因此,将NP-CSMA 应用于LoRa 网络中具有可行性。但802.11 标准对DCF 规范的请求发送帧和清除发送帧(Request-To-Send/Clear-To-Send,RTS/CTS)机制不适用于LoRa 网络中。由于这种机制是将网络分配向量(Network Allocation Vector,NAV)包含于RTS/CTS 帧中,通过RTS-CTS 握手对信道进行预约,以实现虚拟载波监听机制,从而进一步缓解信号冲突问题,然而在LoRa 使用的频段中,终端节点的发送通常受到了无线电占空比的限制,RTS/CTS 机制会使LoRa 网络具有很大的时延。因此,本文只对基础的DCF 机制进行阐述。

在基于基础DCF 机制的CSMA 网络中,终端节点必须在持续检测信道空闲一段时间后才能发送数据,这段时间称为帧间隔(Inter Frame Space,IFS)。802.11 标准根据IFS 长短为数据帧定义了多种优先级,优先级越高,IFS 越短[26]。由于LoRa 终端在侦听信道过程中,往往需要维持CAD 模式一段时间,因此,可以利用CAD 持续时间为LoRa 网络设计不同的信道使用优先级。本文假设LoRa 网络中的所有节点发送的数据优先级相同,在满足最小的TCAD情况下,如果信道空闲,终端节点即可发送数据。图9 是NP-CSMA 在LoRa 网络中调度方式,LoRa 网络采用的退避机制与NP-CSMA 类似,LoRa 退避过程已经在图8 进行了介绍。当终端节点检测到信道繁忙时,终端节点进入睡眠状态以节省能耗,并随机等待一段时间后再重新切换到CAD 模式以侦听当前信道中是否存在传输信号。随机等待时间如式(13)所示,其中Tdata表示数据包传输时间(也称空中传输时间),如式(14)所示。本文规定最大重传次数n为4,当n大于4 时即认为发送失败。此外,在式(13)中,本文增大了退避时间的空间,以减少终端节点选择相同退避时间的情况,进一步降低信号冲突的概率。由于受到无线电占空比的限制,LoRa 终端的传输通常具有一定的周期性。

图9 NP-CSMA在LoRa网络中的调度方式Fig.9 Scheduling method of NP-CSMA in LoRa networks

其中:npreamble为前导码符号数;PL为PHY 层有效荷载的字节大小。PHY 层报头如果存在,H=1;否则,H=0。CRC表示PHY层有效荷载的循环冗余检验位是否存在,存在为1;否则为0。DE表示低速率优化是否启用,启用为1;禁用为0。ceil 表示向上取整函数。CR代表编码速率。

3 理论分析

在研究ALOHA、CSMA 等协议性能时,通常假定数据的传输服从泊松分布[29-30],如式(15)所示。λ表示在一个数据包的传输时间Tdata内所有终端节点发送数据包数量的平均值,而λ 又等价于当前网络容纳的终端节点数量G。

在αTdata时间内k个终端节点进行数据传输的概率为:

当信道空闲时,终端节点发送的数据包能成功接收,因此终端节点发送数据包的成功概率即信道空闲概率:

G用式(18)表示,意为网络通信负载率:

其中:ti为节点i的发送时间;Ti_period为节点i的发送周期。

由于LoRaWAN 是基于ALOHA 的传输协议,因此,在不考虑捕获效应的情况下,它的脆弱期是空中传输时间的2倍,αLoRaWAN=αALOHA=2,那么LoRaWAN 的理论数据包交付率(PDR)性能等于e-2G。此外,在LoRaWAN 构建的LoRa 网络中,一个LoRa 数据帧被成功传输需要满足两个条件:

1)在当前数据帧传输开始时,前面正在传输数据帧的LoRa 终端节点数量为0,以避免当前的传输与之前的传输发生重叠。这意味着,在前一个传输时间Tdata内,信道需要保证空闲状态,因此,这一条件发生概率可表示为:

2)在当前长度为Tdata的传输窗口内,没有终端节点尝试传输LoRa 数据帧。假设LoRa 终端节点尝试传输数据的时间t是独立同分布,并用fT(t)表示为LoRa 终端节点传输时间的概率密度函数。那么,满足第二个条件的概率可表示为:

因此,根据式(19)、(20),在LoRaWAN 中数据帧被成功传输的概率可表示为式(21):

对于NP-CSMA 在LoRa 网络中的理论PDR 值,由于终端节点在切换到CAD 模式后需要维持至少一个TCAD时间,只有当监听到信道为空闲状态时才能进行数据传输。与LoRaWAN 不同,在NP-CSMA 中LoRa 终端节点仅需考虑当前传输时隙(包括TCAD)的空闲状态。通常,在CSMA 性能分析的相关研究中,大多数都是假设两个连续传输的时间间隔即为传播时延,例如文献[29-32]。然而,LoRaWAN 中的传播时延比数据传输的时间长度Tdata小得多,所以在分析这种网络时通常会忽略传播时延。因此,本文假设两个LoRa 数据帧的尝试传输时间间隔大于等于TCAD,并且发送LoRa 数据帧的终端节点可以互相监听到对方,那么这两个传输就不会在一个给定的时隙中发生碰撞。这意味着在NP-CSMA 构建的LoRa 网络中,当满足上述条件时,终端节点的数据传输才能被成功接收。考虑到这一点,本文将上述条件分割为四个独立的子条件,当一个传输时隙同时满足以下四个独立条件时,一个LoRa 数据帧才能通过NP-CSMA 协议成功传输。

1)在当前传输时隙的最初TCAD期间,没有任何节点进行传输,即在TCAD时间内,信道为空闲状态。因此,假设TCAD内的传输数据包数量的平均值为GCAD,G表示为Tdata内所有终端节点发送数据包数量的平均值,GCAD可以表示为式(22),条件1 的概率可表示为式(23):

2)考虑到隐蔽站点问题,当前传输时隙的最初TCAD期间,除了要保证信道空闲,同时也要保证隐蔽站点没有进行任何数据的传输。假设隐蔽终端节点数量与总节点数量比率为ρ,此外,为了简单起见,并假设所有的终端节点观察到的比率ρ都相同,那么这个条件满足的概率为:

3)依据图9 中NP-CSMA 在LoRa 网络中的调度过程,当终端节点通过CAD 模式维持一个TCAD并完成信道监听后,终端节点在发送数据帧开始时,需要确保当前隐蔽节点尝试传输数据的数量为零,以避免隐蔽节点的传输造成信号冲突。所以这个条件满足的概率是:

4)由于终端节点只有监听到信道空闲后,才会进行数据的传输,因此假设pfree是LoRa 终端在CAD 检测后发现信道空闲的概率。而这个概率又可表示为pfree=1 -pbusy,其中pbusy是检测到一个正在进行传输的概率,即一个非隐蔽终端正在传输帧的概率。这个概率可以近似为pbusy≈ntxptx,ptx是在一次CAD 检测后至少进行一次传输的概率,ntx是一个帧传输的长度Tdata可以被TCAD整除的数值。假设一旦终端节点在一个TCAD时间段中传输了一个帧,在接下来的时间段中(Tdata可以看成由ntx个TCAD组成)任何其他传输将被取消。如果信道空闲(概率同样为pfree),并且在一个TCAD时间段至少有一次来自非隐蔽终端的传输,那么ptx=pfree⋅而由于ntx=Tdata/TCAD,pfree可以表示为式(26):

假设psucc_NP-CSMA为NP-CSMA 在LoRa 网络中成功传输的概率,psucc_NP-CSMA=p1p2p3pfree,根据式(21)中LoRaWAN 成功传输概率的计算公式,LoRa 终端通过NP-CSMA 协议的成功传输概率可表示为式(28)。

对于LoRaWAN 和NP-CSMA 的理论信道利用率性能,本文分别给出了LoRaWAN 和NP-CSMA 的理论PDR 性能。依据S=Psucc⋅G,LoRaWAN 和NP-CSMA 的信道利用率理论值可分别表示为式(29)和式(30):

4 仿真实验与结果分析

为了分析NP-CAMA 对LoRa 网络扩展性的影响,本文利用NS3 仿真平台,将LoRaWAN 与NP-CSMA 构建的LoRa 网络进行了模拟,并针对不同的网络通信负载情况,对PDR、信道利用率、时延以及能耗进行比较,这些网络性能指标通常是针对单个信道或单个SF下的比较。本文中NP-CMSA 并没有采用确认机制,也就是说终端节点发送非确认型信息;而LoRaWAN 在实际应用中,上行数据流通常为确认型消息类型,通过重传的方式提高网络的服务质量,所以本文也增加了与确认型LoRaWAN 的比较。

4.1 实验设置

本文的仿真场景由一个配备SX1301 模块、天线高度为15 m 的网关和若干个配备SX1272 模块、天线高度为1 m 的终端节点组成,终端节点的位置随机散落在由网关为中心组成的圆形区域内。在该场景中,本文采用基于真实城市环境中测量得到的Okumura-Hata 模型模拟信号传输过程的损耗[9],传播损耗公式如式(31)所示,其中:f为LoRa 设备使用的频段,单位为MHz;Hgateway为LoRa 网关的天线高度,单位为m;dl为网关与LoRa 终端节点之间的距离,单位为km;HED为LoRa 终端节点的天线高度,单位为m。对于仿真场景中的圆形区域半径,为了避免终端节点位置的随机性导致实验结果差异较大,本文在测试单个SF下的数据包交付率、信道利用率、时延和能耗都是基于理想条件下,也就是对单个终端节点而言,在不存在干扰的情况下,节点发送的任何数据包接收机都能正确接收。信号强度计算公式如式(32)所示,其中:Ptx为信号发送功率,Gtx为发送器天线增益,Grc为接收器天线增益,PL为传播损耗,NF为接收器噪声系数(也称馈线损耗),M为链路裕度;Prc与Ptx的单位为dBm,Gtx、Grc、PL、NF与M的单位是dB。

假设式(32)中Ptx=14,Gtx+Grc-NF-M=-4,依据文献[2]中给出的SX1301 接收灵敏度阈值,可以计算出SF=7在470 MHz 频段下的覆盖范围大约为2 640 m,因此本文设定节点随机散落的圆形区域半径为2 km,以保证节点处于理想条件,图10 是400 个终端节点在该圆形区域的分布情况。在仿真模拟中,不存在数据包本身丢失信息导致误码的情况。另外,对LoRaWAN 和NP-CSMA 的差异比较需要合理控制仿真变量,表3 为基本参数设置,每个模拟运行时间为2 h,终端设备的终端地址按顺序方式分配,终端设备的传输时间均匀分布在0 到1.2 倍的发送周期之间,为了尽量避免模拟结果具有随机性,模拟使用不同的随机流运行10 次,对模拟结果取平均值。

表3 基本仿真参数Tab.3 Basic simulation parameters

图10 400个终端节点在半径为2 km圆形区域的分布情况Fig.10 Distribution of 400 terminal nodes in circular area with radius of 2 km

由于协议类型的不同,仿真参数具有一定差别。表4 列出了LoRaWAN 和NP-CSMA 在测试数据包交付率、信道利用率、时延和能耗的仿真实验参数。假设在NP-CSMA 构建的LoRa 网络中,终端节点侦听信道时所需的功耗与接收信号所消耗的功率相同,因此终端节点维持CAD 模式所消耗的能耗如式(33)所示。此外,为了保证LoRaWAN 和NP-CSMA网络中的终端设备的数据发送周期都恰好满足1%的占空比,本文将数据周期设置为100Tdata,那么SF不同、物理(Physical,PHY)层负载大小不同会使数据的发送周期长度发生变化。实际上采用上述方式决定数据发送周期有利于LoRaWAN、NP-CSMA,因为在网络容纳节点数量相同的情况下,对单个上行链路而言,固定的数据发送周期会使高SF比低SF表现出更大的信号冲突概率,导致更高SF下的网络具有相对较低的性能。

表4 LoRaWAN和NP-CSMA仿真实验参数Tab.4 LoRaWAN and NP-CSMA simulation experimental parameters

4.2 实验结果

4.2.1 数据包交付率(PDR)

仿真实验过程中,数据包的传输不存在接收机误码。那么在理想的网络环境条件下,信号的冲突是影响网络PDR的唯一因素。依据式(18)中G的计算公式,当空中传输时间与发送周期比值不变时,在相同节点数量情况下,无论是非确认型LoRaWAN 还是非确认型NP-CSMA,它们在不同长度的空中传输时间下具有相同的PDR。

为了验证这点,本文分别针对SF=7 和SF=10,在MAC 层有效载荷MACPayload=50 B 的情况下进行分析,从图11 可以看出非确认型LoRaWAN 与NP-CSMA 在SF=7 和10 表现出的PDR 曲线几乎重合,同时非确认型LoRaWAN 也与理论的ALOHA 几乎具有相同的PDR。NP-CSMA 的PDR 性能与理论PDR 性能存在一些差异,这是因为通常分析CSMA 理论性能总是以最大通信负载率进行衡量[29-30],而在仿真实验中,在1 个发送周期内,尝试传输的终端节点数往往因退避的原因会小于理论的通信负载,因此数据发生冲突的概率会小于理论情况。但随着终端节点数量的增加,仿真中NP-CSMA的PDR 性能会逐渐接近理论PDR 值。此外,在实际应用中,由于捕获效应的存在,非确认型LoRaWAN 的PDR 会略高于图11 中的结果[33]。但随着终端节点数量的增加,最终它的PDR 仍然几乎为0。

图11 随着终端节点数量的增加,在单信道和MACPayload=50 B的情况下,LoRaWAN、NP-CSMA在SF=7,10下的PDRFig.11 With increase of node number,PDR of LoRaWAN,NP-CSMA with SF=7,10 under conditions of single channel and MACPayload=50 B

而与非确认型LoRaWAN 不同,确认型LoRaWAN 无论SF=7 还是10,当网络负载较低时,它的PDR 都比非确认型LoRaWAN 高3~10 个百分点。确认型LoRaWAN 在负载较低时,SF=10 下的PDR 比SF=7 高3~6 个百分点;在负载较高时,SF=10 下的PDR 相较于SF=7 会急速退化为非确认型LoRaWAN。这是因为SF越大,空中传输时间越长,重传时冲突概率越大,平均重传次数增加,且SF=7 时的发包数量大于SF=10,因此高负载下确认型LoRaWAN 在SF=7 时要优于SF=10 的PDR。但无论是确认型LoRaWAN 还是非确认型LoRaWAN,随着网络容纳节点数的增加,NP-CSMA 显然能提供更好的PDR,尤其当网络容纳100 个节点时,或者说网络通信负载率为1 时,NP-CSMA 的仿真PDR 性能比LoRaWAN高58.09%。

4.2.2 信道利用率

从时间层面上,信道利用率是反映终端节点在一个发送周期的时间内,成功发送数据所需要的时间占整个发送周期的比率。假定终端节点的发送周期通过式(34)度量,其中T为终端节点运行时间,ni_sent表示终端节点i在时间T内发送的数据包数量,式(34)中终端节点运行时间T应满足足够大的情况,从而减小计算出的结果与实际发送周期的误差,而依据信道利用率计算公式S=Psucc⋅G,因此信道利用率又可表示为式(35)。

其中:Psucc即PDR,是网关成功接收的数据包数量与所有终端节点发送数据包数量的比值,当式(35)中每个终端节点具有相同的发送时间ti,那么该等式可以等价于式(36)。ni_received表示终端节点i被成功接收的数据包数量。实际上,根据信道利用率的概念,式(36)同样适用于终端节点发送数据包时间不等的情况。

由于终端节点在一段时间内的发包频率与发送周期成正比,从式(36)可以看出,数据包发送时长和发送周期会影响信道利用率。在本文的仿真实验中,同一SF的一组节点具有相同的空中传输时间和发送周期,假设在单信道下所有终端节点在时间Tsimulation内发送包总数和被成功接收包总数分别记为Nsent和Nreceived,那么LoRaWAN 和NP-CSMA 的信道利用率可以通过式(37)进行计算。

在4.2.1 节中,本文验证了当空中传输时间与发送周期比值相同时,非确认型LoRaWAN 和NP-CSMA 在SF为7 和10时几乎具有相同的PDR,这意味着相同的情况下,非确认型LoRaWAN 和NP-CSMA 的信道利用率在SF为7 和10 时几乎相同,图12 呈现了这一结果。

图12 随着终端节点数量的增加,在单信道和MACPayload=50 B的情况下,LoRaWAN、NP-CSMA在SF=7,10下的信道利用率Fig.12 With increase of node number,channel utilization of LoRaWAN,NP-CSMA with SF=7,10 under conditions of single channel and MACPayload=50 B

主要原因是在实验过程中,信号在这两种不同SF下发生的碰撞概率略微不同,NP-CSMA 在终端节点数量相同时,SF=7 和10 会表现出相同的信道利用率。此外,从图12 来看,NP-CSMA 仿真中的信道利用率性能会相对低于理论值,因为仿真实验中NP-CSMA 的终端节点因退避的原因使得在一发送周期内传输数据包的次数会小于理论值。而对于确认型LoRaWAN 来说,SF越大,重传时冲突概率越大,重传次数增加,因此SF=7 下的信道利用率总是大于SF=10 下的信道利用率,但随着网络节点密度的增加,丢包率的升高,信道利用率将会逐渐趋近于0。从图12 可以看出,NP-CSMA 与LoRaWAN 相比,相同节点数量的情况下,NP-CSMA 在SF=7和SF=10 的信道利用率明显高于非确认型LoRaWAN 和确认型LoRaWAN,尤其是与LoRaWAN 的饱和信道利用率18.8%相比,NP-CSMA 的饱和信道利用率将近达到59.2%,提高了214.9%。这与图中给出的理论值相差不大。而且在信道利用率同等处于饱和状态下,NP-CSMA 容纳的终端节点数量也大于LoRaWAN,容纳的节点数增加了60.0%。

4.2.3 时延

网络时延包含4 个部分:传播时延、处理时延、发送时延和等待时延。在LoRa 网络中,通常数据的传播和处理具有极小的延迟,因此本文在研究LoRaWAN 和NP-CSMA 的时延过程中,传播时延和处理时延可忽略不计。对于非确认型LoRaWAN,网络时延主要有数据传输过程引起的发送时延和占空比限制引起的等待时延。由于占空比的存在,连续两次的数据传输的时间节点会存在两种情况:占空比限制前和占空比限制后。假定终端节点生成消息的时间符合均匀分布,对于传输时间发生在占空比限制前的数据包来说,它的平均延迟即为占空比限制的中值,而本文中终端节点生成消息时间发生在1.2 倍的发送周期内,也就是说非确认型LoRaWAN 由占空比限制引起的总体平均延迟为100Tdata/2.4。但由于实际中终端节点生成消息具有较强的随机性,为了降低协议间比较的复杂性,在测试确认型LoRaWAN 和NP-CSMA 的时延的过程中暂不考虑由占空比导致的延迟。

图13 是基于两种数据包负载长度,对确认型LoRaWAN和NP-CSMA 在SF=7 和SF=10 下的时延进行仿真的实验结果。在图13 中,由于确认型LoRaWAN 的终端节点的每次传输都具有独立性,对于每个数据包来说,无论是否发生重传,它被成功接收的概率都可表示为e-2G,当然数据包重传发生的概率取决于前一次传输过程中是否被正确接收的概率。当数据包发生重传后,网络通信负载G可能增大也可能减少,这导致被成功接收的数据包中发生重传的占比具有随机性。而确认型LoRaWAN 在不考虑占空比导致的延迟情况下,它的网络时延主要为重传导致的延迟,在SF=7 和SF=10的平均时延曲线是一种随机状态。对于MACPayload=30 B和MACPayload=50 B 的数据包发生8 次重传时,它们的延迟将分别达到360 s 和490 s。与确认型LoRaWAN 不同,在NPCSMA 中,当终端节点检测到信道繁忙时,会随机退避一段时间,然后重传数据包,从而降低信号冲突的概率;退避次数的增加会使终端节点选择退避时间的空间增大,终端节点选择相同退避时间的情况减少,从而进一步降低信号冲突的概率。当NP-CSMA 部署更多终端节点时,由于信号发生冲突的概率增加,被成功接收的信号中发生重传的占比也就越大,且平均重传次数也会越多,使得退避导致的等待时延越大,因此在图13 中,NP-CSMA 在SF=7 和SF=10 的平均时延会随着终端节点数量的增加而增加。当网络通信负载很高时,NP-CSMA 的平均时延不如非确认型LoRaWAN,原因是本文在设计NP-CSMA 在LoRa 网络中的调度策略时,扩大了节点的退避选择空间,从而增加NP-CSMA 的PDR 性能;另一方面,则是由于确认型LoRaWAN 在网络节点密度较大时,成功接收的数据包中重传的占比很小,而NP-CSMA 中成功接收的数据包中重传的占比却随着节点数量的增加而增加。这也导致NP-CSMA 在网络节点密度很大时,它的平均时延会表现得比非确认型LoRaWAN 差。在图13 中,当节点数小于170 时,即G=1.7 时,NP-CSMA 在SF=7 和SF=10 的平均时延都要优于确认型LoRaWAN,尤其是节点数量小于100 时。

图13 基于MACPayload=30,50 B两种数据包负载长度,确认型LoRaWAN和NP-CSMA在SF=7,10下的平均时延Fig.13 Average latency of confirmed LoRaWAN and NP-CSMA with SF=7,10 based on two packet load lengths of MACPayload=30,50 B

4.2.4 能耗

为更好地比较LoRaWAN 和NP-CSMA 的能耗,本文对终端节点每次发送数据包所需的平均能耗进行分析。与非确认型LoRaWAN 相比,在NP-CSMA 中,终端节点在每次传输前需要额外消耗能量用于信道检测,该能耗的大小取决于终端节点CAD 持续时间;此外,对于终端节点在退避期间进入睡眠状态所消耗的能量可以忽略不计。在确认型LoRaWAN中,终端设备在发送完数据包后,需要开启一个短接窗口RX1/RX2 接收来自网关的确认信息[19]。在LoRaWAN 规范中,来自下行链路的确认信息使用的速率通常与确认型LoRaWAN 终端设备在上行链路中传输时使用的速率相同。

图14 是LoRaWAN 和NP-CSMA 的终端节点分别在SF=7,10 下发送一个MACPayload=50 B 的数据包的平均能耗。假定以非确认型LoRaWAN 在SF=7 和SF=10 的平均能耗作为准线,非确认型LoRaWAN 节点在SF=7 和SF=10 下分别消耗9.54 mJ 和57.2 mJ 用于一次数据包的传输。确认型LoRaWAN 在SF=7 和SF=10 下需额外消耗1.5 mJ 和6 mJ 左右的能量接收来自网关的确认消息。而NP-CSMA 与非确认型LoRaWAN 相比,由于终端节点在转换CAD 模式后,仅需维持较短的时间就能完成对信道状态的检测,因此两者在SF=7 和SF=10 下发送一次数据包的平均能耗差异较小。SF越大,终端节点转换为CAD 模式的持续时间也会越长,所以NP-CSMA 的节点在SF=10 下CAD 模式所消耗的能量大于SF=7。节点密度较大时,由于冲突概率的增加,终端节点检测信道的频率也会增加,因此NP-CSMA 下的终端节点完成一次数据的传输消耗的能量也相对较多。NP-CSMA 的终端节点在SF=7 和SF=10 的条件下,CAD 模式造成的能耗大约为0.2~0.5 mJ 和0.9~3.5 mJ,比确认型LoRaWAN 降低了1.0~1.3 mJ 和2.5~5.1 mJ。此外,从PDR 性能层面考虑,确认型LoRaWAN 无法通过额外的能耗获得较好的PDR 性能,而NP-CSMA 却能用相对较低的额外能耗换取PDR 性能;如果对被网关成功接收的数据包所消耗的平均能耗进行比较,在LoRaWAN 中重传导致的能耗可能会比NP-CSMA 终端节点重传过程以及CAD 模式所需的能耗更高。

图14 LoRaWAN、NP-CSMA的终端节点在SF=7和10下发送一个MACPayload=50 B的数据包所需的平均能耗Fig.14 Average energy consumption of a single packet with MACPayload=50 B sent by terminal node of LoRaWAN,NP-CSMA at SF=7,10

5 结语

受限于远近条件和多个信号存在发生碰撞的可能,当LoRa 网络节点密度较大时,SF之间不完全正交性将无法抑制它们之间的信号干扰。因此为了减少LoRaWAN 中基于ALOHA 的传输调度方式和SF之间的不完全正交性所导致的同SF干扰和SF间干扰对LoRa 网络扩展性的影响,本文提出了用NP-CSMA 协议替代LoRaWAN 中随机调度协议ALOHA,通过LBT 机制尽量减少共信道同SF信号冲突的概率;而不同SF之间的传输,则为每个SF分配唯一的信道,使多种SF不同的信号传输分别容纳在单独的信道中的方式来避免SF间的干扰。为了分析NP-CSMA 在LoRa 网络中的性能,通过理论分析和利用NS3 仿真平台对NP-CSMA 与LoRaWAN 进行了比较。实验结果表明,在相同的条件下,虽然NP-CSMA 中的LoRa 节点需要消耗一定的能耗维持CAD模式用于信道检测,但与确认型LoRaWAN 相比,NP-CSMA能通过牺牲更低的额外能耗提供更好的PDR 性能,而且它的饱和信道利用率明显高于LoRaWAN。对于NP-CSMA 的时延,从网络服务质量考虑,NP-CSMA 虽然在高密度节点网络中表现出的平均时延不如确认型LoRaWAN,但NP-CSMA却能通过退避机制降低分组丢包率,减少了重传导致延迟的增加;而且NP-CSMA 在网络中等通信负载情况下,它的平均时延优于确认型LoRaWAN,可以为LoRa 网络提供更好的服务质量,说明NP-CSMA 可以提高LoRa 网络的扩展性。对于后续的工作,将会对NP-CSMA 运用于LoRa 网络中在捕获效应条件下的性能和并行传输的性能进行详细的研究,以及通过硬件平台去进一步分析NP-CSMA 在LoRa 网络中的可行性。

猜你喜欢

数据包时延信道
基于GCC-nearest时延估计的室内声源定位
基于改进二次相关算法的TDOA时延估计
SmartSniff
FRFT在水声信道时延频移联合估计中的应用
基于分段CEEMD降噪的时延估计研究
基于导频的OFDM信道估计技术
一种改进的基于DFT-MMSE的信道估计方法
基于MED信道选择和虚拟嵌入块的YASS改进算法
一种基于GPU的数字信道化处理方法
视觉注意的数据包优先级排序策略研究