水声通信网络超低传输延迟控制方法研究

2021-11-08 01:59耿文凤
兵器装备工程学报 2021年10期
关键词:水声吞吐量时延

耿文凤

(郑州商学院 信息与机电工程学院,河南 巩义 451200)

1 引言

由计算、通信等不同功能节点组成的水下无线传感器网络称为水声通信网络,该网络广泛应用于石油、化学品泄漏检测、海洋环境检测、资源勘探与开发及海洋援助导航等领域[1-2]。水声通信网络具有特殊的组网形式,也有着传播延迟,传输耗能高,传播节点移动性等问题,但是,水下通信环境复杂,水下无线信道不稳定性较强,进一步影响了数据通信的传播[3]。由于水声信号在水下网络中的传播延迟太长,网络的吞吐量下降过大[4-5]。传播延迟影响载波传感器对数据传输的检测,导致载波截获不能有效地防止分组碰撞,从而降低了S-MAC协议的性能,为此,文献[6]为提高网络的有效覆盖率,实现网络的全连通,以Sink节点为根节点的树形拓扑结构,以保证节点间的有效连通为约束条件,以实现最大化覆盖的部署算法为主,对节点覆盖的最优位置进行求解,实现了有效覆盖率的明显提升。和文献[7]在传统感知帧结构的基础上,基于DBSCAN提出隐马尔科夫模型协作频谱预测算法,改进认知无线电网络频谱预测的帧结构,有效提高系统吞吐量。

本文在S-MAC协议的基础上,总结以往研究经验,设计了一种适用于水声通信网络的功率控制PC-CSMA/CA协议,并在该协议的基础上提出了一种可有效提高网络吞吐量、降低能耗、改善时延、减少节点暴露冲突的传输调度算法。

2 PC-CSMA/CA协议

2.1 S-MAC协议

S-MAC协议可有效减小能量消耗,在MAC层基础上增加周期性睡眠机制优化设计,促使没有工作指令的节点自动进入睡眠状态,减少节点侦听空闲时间,达到减小系统能量消耗的目的[8]。S-MAC协议采用退避机制来实现在数据的发送和接收中的信道竞争。S-MAC协议中的周期性休眠侦听机制同时又造成了网络中业务的延迟较大,在一些传感器网络应用中,需要有较高的带宽、较低的延迟,因此许多学者在S-MAC协议的基础上研究具有低延迟、高吞吐量性能的MAC协议,如文献[9]提出的基于跨层优化的低延迟无线传感器网络MAC协议(cross-layer optimization and coo rdinated adaptive-listening based MAC,CAL-MAC),该协议可以支持一个基本帧周期内连续3条通信,在吞吐量、延迟等方面较S-MAC协议都有了比较明显的改善。

S-MAC协议的设计以节能为前提,CAL-MAC协议的设计以改善S-MAC协议中延迟问题为前提,但是上述方法还存在着周期内节点的侦听活动不可改变、网络中数据包之间的碰撞概率较大时导致的网络吞吐量降低等问题,针对S-MAC协议的不足,设计了一种增加数据包的功率控制的PC-CSMA/CA协议。

2.2 PC-CSMA/CA协议

S-MAC协议采用握手机制,当网络处于高负载状态时,由于引入了RTS、CTS、data、ACK等控制帧,S-MAC协议的性能优于非握手协议,但同时也增加了协议的额外开销,能耗随之增加[10],与此同时,S-MAC协议的发射功率采用预先设置,设置的时候的需要考虑能满足最大通信距离要求的功率值。使用功率控制调度算法选择最优相邻节点,使网络中节点的拓扑连接得到优化,在保证网络连通性的同时,降低通信的冲突率,扩大网络的吞吐量。信息的传递以最优功率发射,并使通信节点具有反作用冲突节点的能力,从而在降低了网络中传输的延迟[11]。

设A表示通信距离最大值,ST表示通信机发射声源级,TL表示传播损失,DT表示接受端检测阈值,NL表示环境噪声级,依据声纳方程和海洋声传播模型[12],当A≥r时,为确保正确接收数据,则需满足条件如下:

DT≤ST-NL-TL(r)

(1)

TL(r)=μlgr+ar

(2)

由式(1)和式(2)可得:

ST≤μlgr+ar+NL+DT

(3)

其中:μ表示扩展损失系数,因为通信距离较小,所以以球面扩展计算,μ=20;r表示通信距离;a表示吸收系数,基于信号频道的经验公式为

(4)

S-MAC协议中最大可能发射声源级为

STmax=μlgA+aA+NL+DT

(5)

r满足接收信噪比的最小发射声源级为

STr=μlgr+ar+NL+DT

(6)

发射功率与发射声源级关系以公式表示为

P=10(ST-BST)/10/η

(7)

式中,η表示电声转换效率,BST为声功率的声源级。

r的发射功率最小与默认最大比为

φ=10(STr-STmax)/10=(r/A)β/10×10a(r-A)/10

(8)

由式(8)可知,已知通信距离,可求得相应发射功率,当r减为r/2,接收信噪比不变,发射功率可减小75%以上。适当的发射功率不仅可确保数据正确的传输,还能大幅度减小能耗,此优势对于水声通信网络具有十分重要的意义。

数据帧长度比控制帧长度大,有效减小总体能耗的方式为降低数据发送的功率,具体如图1所示。

图1 Rts/Cts测通信距离示意图

参见图1,节点M发送Rts前时间为t3,接收Cts时时间为t2,节点N的处理时间被忽略,传播延迟为

x=(t2-t3-t4-t5-t1)/2

(9)

式中,t4表示Rts持续时间,t5为Cts持续时间,通过Rts和Cts数据包长度除数据传输速率得到传播延迟值,t1表示节点N处理时间,利用式(8)可计算出功率百分比值。

在传播距离小,载波频率低的情况下,吸收损失较小,可以直接忽略吸收损失造成的误差[13]。当载波频率较高时会产生较大的吸收损失,则许对吸收损失部分加以修正以减少估计误差,与S-MAC协议相比较,PC-CSMA/CA协议增加了数据包的功率控制,有效达到减少能耗的作用。

3 延迟传输调度算法

上述的研究通过CSMA/CA的Rts/Cts预约自适应调整数据包传输功率,设计的更适用于水声通信网络的新的功率控制PC-CSMA/CA协议。水声通信网络传播延迟较长,节点通信通过握手机制后,Rts控制帧会相邻节点数据传输发生震荡,为了完成节点的无碰撞传输,Rts等待时间需要比传输帧抵达最大传输范围存在的传播延迟更大,同时Cts等待时间也需要比Rts传输时间再加双倍最大传播延迟时间更大。在PC-CSMA/CA协议的基础上提出了一种传输调度算法,控制帧数据传输接收(图2),节点B和节点C相互暴露,节点B给节点A传输一个Rts,节点A在合适的时间后给节点B传输一个Cts,合适的时间也为分组传输时间加最大传播延迟,当节点A在等传输Cts时,节点C收到了接节点B传输的Rts。

图2 控制帧数据传输接收算法示意图

依据传输调度算法伪码的描述:

Time register level(void * ARG)

struct multiboot_ uinfo*mb=(struct multiboot_ Uinfo *)parameter;

EDF_ uregister_ ulevel(EDF_ Uenable all);//level 0:EDF

CBS_ uregister_ ulevel(CBS_ Uenable all,0);//level 1:CBS

RR_ uegister_ ulevel(RRTICK,RR_.MAIN_ Yes,MB);//level 2:

loop

dummy_ uregister_ Ulevel();//Level 3:Virtual

Register module();

1/resource access protocol

CABS_ uregister_ umudule();

//Resource access protocol

Warning sound;

结合延迟传输调度算法流程(图3)对延迟传输调度算法加以阐述[14-16]。

图3 延迟传输调度算法流程框图

若想实现延迟传输调度算法,节点传输过程中需要满足:不能干扰邻节点的接收,在节点C向节点D传输时,节点C的Rts和数据不能干扰节点B对Cts和Ack的接收;节点B的Data和数据不能干扰节点C的Cts和Ack的接收。

检查节点C发送的Rts对节点A向节点B发送Cts的接收是否造成干扰。当t=0时,节点A发送的Cts在到达节点B的时间TCts(A)为

TCts(A)=TRts(B)+VCts+τCts(A)+VA→B

(10)

式中,节点B发送Rts的传输时间为TRts(B),随机节点控制帧的最大传播延迟时间为VCts,Cts帧处理时间为τCts(A),节点A发送Cts到节点B的传输时间为VA→B。

若想避免节点C发送Rts到节点B的干扰,发送时间排除在式(11)所示的时间范围内即可。

(11)

式中,VCts(A)为节点A发送Cts到节点B的信号持续时间;VCts(A)为节点A向节点B发送Ack的到达时间;VAck(A)为节点A向节点B发送Ack持续时间。Cts的数据长度为1Cts,数据包的传输速率为λData,随机两节点数据包最大传播延迟时间为VData,Data数据包处理时间为τData(B),Ack帧处理时间为τAck(A),Ack数据长度为1Ack。

检查节点D发送的Cts和Ack对节点B向节点A发送Data的接收是否造成干扰,节点D向节点C发送的Cts的时间为

TCts(D)=TRts(D)+VCts+τCts(D)+VD→C

(12)

式中,节点D发送Rts的传输时间为TRts(D),Cts帧处理时间为τCts(D),节点D发送Cts的传输时间为VD→C。

当式(13)的时间区间不在式(15)区间中时,节点C发送Rts可进行无干扰传输。节点D发送Cts给节点C的信号持续时间为

(13)

其中,VCts(D)为节点D发送Cts给节点C的信号持续时间;TAck(D)为节点D向节点C发送的Ack到达时间;VAck(D)为节点D发送Ack到节点C的持续时间。

节点B向节点C发送Data的到达时间为

TData(B)=TRts(B)+2VCts+τData(B)+τCts(A)+VB→C

(14)

节点B发送Data到节点C的持续时间为

(15)

4 实验分析

为了验证本文研究的水声通信网络超低传输延迟控制方法的应用效果,以应用于某区域的海洋环境检测水声通信网络为研究对象,从能量消耗、吞吐量和网络传输延迟3个方面进行评估,该水声通信网络的相关参数如表1所示。

表1 水声通信网络相关参数

4.1 吞吐量评估

目标节点在整体工作时间内,数据包被成功接收到的总量为水声通信网络数据流的吞吐量。实验考量的是端到端的平均吞吐量,分别采用文献[6]的基于深度可调节节点方法、文献[7]基于改进帧结构方法以及本文方法分别对所研究水声通信网络进行传输延时控制,统计3种方法控制下,水声通信网络不同分组间隔下端到端的平均吞吐量,结果如图4所示。其中,从水声通信网络中第一个数据分组开始发送时开始计时,直至最后一个数据分组被接收时停止,这段时间被称之为分组间隔。

图4 吞吐量曲线

由图4可知:由于基于深度可调节节点方法不能根据网络负载动态调整竞争窗口,在面临活跃节点增多时,会加大发送数据之间的振荡概率,源节点在发送数据分组时,目标节点还处于睡眠状态中,增加等待苏醒过程,会加剧网络节点之间的竞争,同时也会丢失许多数据分组,导致吞吐量偏低。基于改进帧结构方法能根据网络的流量变化而改变竞争窗口的值,有效降低了数据之间的振荡概率,随着动态活动时间的增加,基于改进帧结构方法能缓解网络拥挤带来的振荡,网络吞吐量性能明显优于基于深度可调节节点方法,但是依旧低于本文方法,由于本文方法可检测相邻节点传播延迟及其预期信息进行传输调度,利用增加并发传输补偿长传播延迟,大幅度降低了节点之间的振荡概率,明显提高了水声通信网络的吞吐量。实验结果表明,本文方法控制下的水声通信网络端到端的平均吞吐量较好。

4.2 时延状况评估

不同间隔时间内数据分组数量的延长时间被称为时延,3种方法控制下不同分组间隔的平均时延结果如图5所示。

图5 平均时延实验结果曲线

由图5可知:该水声通信网络开始处于负载状态,当分组间隔时间逐渐增加,3种方法控制下的水声通信网络时延明显加大,基于深度可调节节点方法因为争用窗口固定不定增加数据见的振荡概率,进行多次数据发送失败后的重传,导致网络的时延增大。基于改进帧结构方法在网络时延方面表现较好,随着分组间隔的加大,可以根据当前网络情况及时调控竞争窗口大小,明显减少网络拥挤时数据之间的振荡,一定程度减少网络的时延。而利用本文方法解决数据之间在网络拥挤时的振荡现象更胜一筹,结果表明,在网络时延优化上,本文方法效果相对最佳。

4.3 能量消耗评估

能耗的大小对水声通信网络的生命周期有较大影响,为此统计3种方法控制下该水声通信网络的平均能耗,如图6所示。

图6 平均能耗直方图

由图6可知:水声通信网络处于初始阶时,3种方法控制下的水声通信网络能耗未出现太大区别,随着时间间隔的延长,网络流量逐渐增大,基于深度可调节节点方法因为是在发生数据振荡之后才进行调整,并且随着流量的增大,发生震荡的几率也剧增,重传次数随之增加,所以能量消耗非常大。基于改进帧结构方法具有网路数据自行调整的能力,对网络适应能力相对更强,并且相对稳定,因此,基于改进帧结构方法在降低能耗方面效果略好于基于深度可调节节点方法,但是依旧不如本文方法,本文方法不仅大幅度降低了水声通信网络能量消耗,且本文方法控制下能耗更具稳定性,不受分组间隔时间影响。

5 结论

基于CSMA/CA协议,提出一种用于水声通信网络的超低传输延迟调度算法,利用声纳方程和海洋声传播模型进行Data帧的功率调整,得到PC-CSMA/CA协议。采用该协议检测预期信息和相邻节点传播延迟,可降低节点暴露冲突的发生,增加并发传输的机会;用以补偿长传播延迟,在吞吐量、时延性能、能量损耗各方面均具有明显优势,能有效解决因物理位置和传播延迟引起的空间不公平。

猜你喜欢
水声吞吐量时延
计算机网络总时延公式的探讨
计算机网络总时延公式的探讨
基于最小二乘法的超短基线水声定位系统校准方法
有些水声,像乡音
《舍不得星星》特辑:摘颗星星给你呀
2017年3月长三角地区主要港口吞吐量
2016年10月长三角地区主要港口吞吐量
2016年11月长三角地区主要港口吞吐量
暮饮
水声悠远