蔡文郁,胡毕炜
(杭州电子科技大学电子信息学院,杭州 310018)
随着海洋开发和信息产业的发展,海洋信道传递信息的需求大大增加,水下传感器网络的研究意义与实用价值日益凸显[1],可广泛应用于海洋资源勘探、海底灾害监测、意外搜索救援、辅助导航和战术反潜等领域。水下传感器网络具有信道延时大、噪声高、损耗大、多勒普效应严重等特点,水声信号在介质中会相互干涉,信号不能在一定范围内同时传输,因此水下传感器网络中节点必须按照特定规则共享同一信道,研究高效与低能耗的MAC协议对于构建水下传感网至关重要[2]。
目前国内外已经针对无线传感网提出了很多较为成熟的MAC协议,主要可分为非竞争类MAC协议和竞争类MAC协议[3]。非竞争类MAC协议主要包括TDMA(时分复用协议)、FDMA(频分复用协议)以及CDMA(码分复用协议),竞争类协议主要包括MACA(基于信道预约类协议)、CSMA(载波侦听类协议)以及ALOHA(基于随机多址类协议)[4]。Azar Z等人[5]设计了一种基于TDMA的水下传感网MAC协议,该协议为所有节点分配特定的时隙,基站节点运行一种集中式算法来分配和协调各个节点的通信,但是这种集中控制方式会造成大量的能量消耗。Cheon J等人[6]提出了基于OFDM的多信道协议NOGO-MAC,基站根据与发送节点的距离为发送节点分配信道,这充分考虑到了水下传感网的动态性及链路的不确定性,但是该协议需要一个资源充足的基站进行集中式调度,这对于部署区域广阔的水下传感网而言实现难度较大。Fan G等人[7]提出了一种基于CDMA的MAC协议,该协议为每条链路安排了不同的扩频序列,但是也会导致很多不必要的数据包重传,严重浪费本就稀缺的水下带宽资源。Molins M等人[8]提出了一种基于MACA改进的Slotted-FAMA协议,采用握手机制避免了数据帧冲突,但是该机制也导致了信道利用率很低。Petrioli C等人[9]提出了基于CSMA的延迟容忍协议PDAP,利用载波侦听技术提高网络带宽的利用率,但是传播延时较大,很难有效地避免访问冲突。Chirdchoo N等人[10]提出了基于ALOHA改进的ALOHA-CA协议,利用短预约帧竞争信道,但是该协议中数据包的冲突概率随着网络负载增长呈指数增加,不利于突发数据传输场景中使用。
上述协议大多适用于网络参数与拓扑结构较为稳定的静止无线传感网,将其应用在复杂多变的水下环境时会产生极大的能耗,并且会大量占用原本稀缺的水下带宽资源[11]。为了克服这些问题,Parrish N等人[12]提出了一种适用于水下传感网的CSMA-ALOHA混合协议:CW-MAC。CW-MAC协议在ALOHA的基础上增加了随机退避、虚拟载波侦听以及数据确认接收机制,从而降低了传输信道的数据包碰撞率,保证了整个水下传感网的高吞吐量以及低能耗,并且其占用水下带宽资源不多。但是对于不同位置的差异化传感器节点,CW-MAC协议对节点信道控制权的优先级并没有区别对待,这就无法保证信道利用的公平性。根据该思想,本文在CW-MAC协议的基础上提出了两种基于异构竞争窗口优化策略的水下传感网MAC协议(HCW-MAC),以保证差异化节点信道利用的公平性。
水下传感器网络的星型拓扑结构如图1所示,具有多个水下传感器节点和一个Sink节点,水下传感器节点作为发送节点,Sink节点作为唯一的接收节点,Sink节点位置一般设置在网络区域的中心,传感器节点的数据包通过单跳传输方式发送到Sink节点。
图1 水下传感网星型拓扑结构
CW-MAC协议的工作原理如下:对将要发送数据的传感器节点配置退避计时器,假设第n个发送节点的退避时间为Tn,定义如下:
Tn=cwn×δ
(1)
式中:cwn为随机产生的计时初始值,其取值区间为[0,CW],CW是所有传感器节点计时最大值,δ表示固定时隙,在该时隙内发送节点可以通过虚拟载波侦听信道的状态信息。然后每个节点计时器启动,通过RTS/CTS、DATA/ACK握手来完成对信道状态的虚拟载波侦听以及数据包的发送。
CW-MAC协议中的CW值决定了节点获得信道控制权的优先级,但是所有发送节点CW值相同的设置并不合理。CW-MAC协议中RTS、CTS以及ACK数据帧都有包含信道状态信息,因为数据帧传播有时延,不同位置的节点获得信道状态信息的时间也会不同,这就导致节点在参与信道竞争过程中难以保证公平性,因此节点获得信道控制权的优先级(即配置的CW值)需要根据其所在位置做出调整。
通过上述分析可知,传感器节点所配置的CW值需要根据节点位置进行优化调整。本文提出了两种异构竞争窗口优化策略:基于按到Sink节点距离异构调整竞争窗口策略的HCW-MACⅠ协议,基于按到静默节点(指当前没有获得信道控制权的发送节点)距离异构调整竞争窗口策略的HCW-MAC Ⅱ协议。
在CW-MAC协议中,当某节点数据包发送任务完成后,Sink节点会广播ACK数据包给所有下一轮待发送的节点,告知数据接收成功且信道处于空闲状态,但是实际上传感器节点的分布并不均匀,如图2 所示各个节点到Sink节点的欧式距离都不相同,因此ACK数据包传输到各个发送节点的时延存在时间差异。
图2中Sink节点A广播ACK数据包给发送节点B、C、D、E、F,其中节点C发送任务刚完成。假设所有发送节点配置的CW值相同,由于ACK数据包在信道上传输的速率不变,因此距离Sink节点最近的节点B能够最早通过ACK数据包获取信道空闲的信息,距离Sink节点最远的节点F获取该信息的时间最晚。因此节点F启动计时器的时间最晚,从而导致空闲侦听以及随机退避的时间最长,节点F对信道的利用率最低(即F节点获得信道控制权的可能性最小)。
图2 ACK数据包传播时延差异
通过上述分析可以得知,发送节点获得信道控制权的优先级与其到Sink节点的距离成正比。为了提高各个节点占用信道的公平性,本文提出基于按到Sink节点距离不同优化调整竞争窗口策略的HCW-MACⅠ协议,该协议根据发送节点与Sink节点之间的距离来设置发送节点的CW值。其CW值的设置原则是:为了保证各个节点获得信道控制权的公平性,对于距离Sink节点较远的发送节点来说,需要减小其随机退避的时间来增大控制信道的可能性,因而该节点的CW值要适当减小;同理,距离Sink节点较近的发送节点的CW值要适当增大。
现在不妨设发送节点到Sink节点的距离值集合S={S1,S2,…,Sn},则发送节点到Sink节点的平均距离为:
(2)
依照上述的CW设置原则,本文针对节点i配置的CWi值,如式(3)所示:
(3)
式中:cw表示CW-MAC协议中发送节点的竞争窗口初始值。
在CW-MAC协议中,当某节点的发送任务启动时,该节点会广播RTS数据包给Sink节点以及所有的静默节点,告知数据正在请求发送且信道处于忙碌状态,但是各个静默节点到该节点的距离各不相同,因此RTS数据包传输到各个静默节点的时延存在的时间差异。
图3(a)中,节点C在发送任务启动后,广播RTS数据包给Sink节点A以及静默节点B、D、E、F,因此其中距离节点C最近的节点E能够最早通过RTS数据包获取信道忙碌的信息,距离节点C最远的节点F获取该信息的时间最晚。图3(b)选取节点C、E、F对RTS数据包传播时延差异造成的影响进行分析,其中DC,E、DC,F分别表示RTS数据包在节点CE、CF之间的传播时延。假设节点C在t=0时刻开始发送,由于节点E在[0,DC,E]时间段内没有侦听到信道忙碌,此时若该节点发送RTS数据包会引起碰撞。同理,节点F在[0,DC,F]时间段内发送RTS数据包也会造成碰撞。因此,“碰撞率”是本文MAC协议应该考虑的因素之一。
图3 RTS数据包传播时延差异
假定各个节点的数据包到达服从参数为λ的泊松分布,节点E、F分别在[0,DC,E]、[0,DC,F]时间段内不会与节点C产生数据包碰撞的概率为:
(4)
(5)
现在假设M为发送节点总数,可以得知节点i不会与所有静默节点产生数据包碰撞的概率为:
(6)
为了减少由数据包碰撞造成的影响,本文提出基于按到静默节点距离异构竞争窗口策略的HCW-MAC Ⅱ协议,该协议根据发送节点与静默节点之间的距离来设置发送节点的CW值。CW值的设置原则是:与所有静默节点之间平均距离较小的发送节点,由于其碰撞率较低,可以采取较为激进的发送策略,即适当减小该节点设置的CW值,反之采取较为保守的发送策略,即适当增大该节点设置的CW值。
现在定义发送节点i到所有静默节点的平均距离为:
(7)
对所有Sinter(i)求均值有:
(8)
依照上述的CW设置原则,本文针对节点i配置的 CWi值,提出的计算公式为:
(9)
式中:节点j表示除i之外的静默节点,Si,j表示节点i、j之间的距离值,cw表示CW-MAC协议中发送节点的竞争窗口初始值。
本文仿真采用了NS-3仿真平台[13]中的水声通信网络(Underwater Acoustic Network)模型,通过该模型对CW-MAC协议进行性能验证,并与本文提出的两种改进型HCW-MAC协议进行吞吐量与能耗性能的对比分析。仿真环境假定水下传感器网络拓扑采用星型结构,并且传感器节点分布于一个圆形区域,主要仿真参数采用CW-MAC协议的仿真参数[12],如表1所示。
本文采用平均吞吐量以及平均能耗作为仿真的性能指标。平均吞吐量定义如下:
(10)
式中:NumPacket、PacketSize 与 t 分别表示传输成功的数据包数、单个数据包的字节数以及仿真时间。平均吞吐量Tavg表示每秒传输成功的数据位数,单位为bit/s,Tavg值越大表示吞吐量性能越好。
表1 仿真参数初始值
假设传感器节点总数为N(包括发送节点与Sink节点),单个数据包传输周期为T,由于发送节点发送RTS数据包以及Sink节点发送ACK数据包均采用广播方式,因此单个数据包单次传输成功时,发送节点的能耗为:
Esend=Ps×[TRTS×(N-1)+TDATA]+Pr×(TCTS+TACK)
(11)
Sink节点的能耗为:
Ereceive=Ps×[TCTS+TACK×(N-1)]+Pr×(TRTS+TDATA)
(12)
静默节点的能耗为:
Eidle={Pr×(TRTS+TACK)+Pi×[T-(TRTS+
TDATA+TCTS+TACK)]}×(N-2)
(13)
式中:Ps、Pr以及Pi分别表示节点的发送功率、接收功率以及空闲功率,TRTS、TCTS、TDATA及TACK分别表示发送或者接收RTS数据包、CTS包、数据包及ACK数据包所消耗的时长。
因此单个数据包单次传输成功所需要的总能耗为:
Etotal=Esend+Ereceive+Eidle
(14)
由于数据包也会存在传输失败的情况,本文在仿真过程中将该情况仅归咎于在握手过程中RTS数据包发生了碰撞,并且在碰撞后节点的等待时间为T1,产生碰撞的节点个数为n,此时单个数据包单次传输失败时的总能耗为:
(15)
在数据包一旦传输失败后会启动重发机制,本文仿真时限定了最大为3次的重发次数,超出限定时数据包丢弃。假设在一个仿真周期内,传输成功与失败的数据包总数为TotalNumPacket,传输成功的数据包个数为NumPacket。因此平均能耗计算公式如下:
(16)
平均能耗表示成功传输一个数据包所需要消耗的能量,单位为joule/packet,平均能耗Eavg值越小表示能耗性能越好。
本文首先对CW-MAC协议进行性能验证:(1)将CW值设为横轴变量,依次调整发送节点个数为5、15以及30,其他参数保持初始值不变,CW-MAC协议的平均吞吐量以及能耗仿真结果如图4所示。(2)将CW值设为横轴变量,依次调整节点分布圆半径为100 m、250 m以及400 m,其他参数保持初始值不变,CW-MAC协议的平均吞吐量以及能耗仿真结果如图5所示。
图4 CW-MAC性能仿真(发送节点数目不同)
图5 CW-MAC协议性能仿真(节点分布圆半径不同)
由图4、图5可以得到的仿真结论如下:在相同的仿真环境中,当CW值不断增大时,信道平均吞吐量呈先上升后下降的趋势,平均能耗呈先下降后略微上升的趋势。这是由于CW值在刚开始增加时,各个节点退避计时区间增大,从而降低了数据包碰撞的可能性,因此吞吐量以及能耗性能均会显著提升;CW值增大到一定程度会导致节点退避时间过长,信道利用率降低,平均吞吐量也会随之下降,同时引起了节点不必要的空闲侦听,由于空闲功耗值略小,因而平均能耗只是略微上升。从上述曲线变化趋势可知,吞吐量和能耗性能最优时均有对应的CW极值点。图4中发送节点个数为5、15、30时吞吐量性能最优对应的CW值分别为35、80、188,能耗性能最优对应的CW值分别为31、73、185;图5中节点分布圆半径为100 m、250 m以及400 m时吞吐量性能最优对应的CW值分别为60、80、133,能耗性能最优对应的CW值分别为55、73、127。下文对HCW-MAC协议的仿真中,配置给各个发送节点的是仿真环境中性能最优时对应的CW值。
对HCW-MAC协议进行性能仿真时,将信道的“输入负载”设为横轴变量,“输入负载”表示数据包大小的归一化值,当“输入负载”值为a时,数据包大小为(1 024×a)byte,本文将a的取值区间设置为[0.1,2.5],步进值为0.1。具体仿真过程分为以下两部分:①依次调整发送节点个数为5、15以及30,其他参数保持初始值不变,3种MAC协议的平均吞吐量以及能耗仿真结果比对如图6所示。②依次调整节点分布圆半径为100 m、250 m以及400 m,其他参数保持初始值不变,3种MAC协议的平均吞吐量以及能耗仿真结果比对如图7所示。
图6 3种MAC协议性能仿真比对(发送节点数目不同)
图7 3种MAC协议性能仿真比对(节点分布圆半径不同)
由图6、图7可得如下结论:①在相同的仿真环境中,两种HCW-MAC协议的吞吐率、能耗性能相对于CW-MAC协议均有所提升,并且HCW-MAC Ⅱ协议的性能提升程度高于HCW-MACⅠ协议。②从图6可以得知,当节点分布范围一定时,随着发送节点个数增加,HCW-MAC Ⅱ协议相对HCW-MACⅠ协议的吞吐率、能耗性能提升优势愈加明显。这是因为“碰撞率”与发送节点个数成正比,基于改善“碰撞率”影响提出的HCW-MAC Ⅱ协议性能提升明显。③从图7可以得知,当发送节点个数一定时,两种HCW-MAC协议的吞吐率、能耗性能提升程度与节点分布范围成正比。这是因为节点分布范围越广,发送节点和Sink节点、静默节点之间的平均距离均会越大,因此本文提出的HCW-MAC协议性能提升越多。
本文针对水下传感网MAC协议设计的难题,根据不同传感器节点竞争窗口的差异化进行优化的思想,在CW-MAC协议的基础上提出了两种改进型HCW-MAC协议,HCW-MAC协议针对信道利用的公平性来提升MAC协议的吞吐量及能耗性能,仿真结果验证了算法的性能。下一步的工作将研究MAC层与路由层的交互,利用网络层的路由信息来跨层设计MAC协议,实现水下传感网中数据包的多跳传输。
[1] 张美燕,蔡文郁. 基于多AUV协作的稀疏水下传感网定位技术研究[J]. 传感技术学报,2017,30(8):1274-1280.
[2] 彭凌峰,刘俊. 水声传感网MAC协议的研究进展[J]. 数字通信,2014,41(2):31-37.
[3] 王佳. 基于蚁群算法和BP神经网络的信道分配策略的研究[J]. 传感技术学报,2016,29(3):445-450.
[4] Climent S,Sanchez A,Capella J V,et al. Underwater Acoustic Wireless Sensor Networks:Advances and Future Trends in Physical,MAC and Routing Layers[J]. Sensors,2014,14(3):795-833.
[5] Azar Z,Manzuri M T. A Latency-Tolerant MAC Protocol for Underwater Acoustic Sensor Networks[C]//Proceedings of International Conference on Control,Automation and Systems,Seoul,South Korea,2010:849-854.
[6] Cheon J,Cho H S. A Delay-Tolerant OFDMA-Based MAC Protocol for Underwater Acoustic Sensor Networks[C]//Proceedings of IEEE Symposium on Underwater Technology(UT)and Workshop on Scientific Use of Submarine Cables and Related Technologies(SSC),Tokyo,Japan,2011:1-4.
[7] Fan G,Chen H,Xie L,et al. An improved CDMA-Based MAC Protocol for Underwater Acoustic Wireless Sensor Networks[C]//Proceedings of Wireless Communications,Networking and Mobile Computing,Wuhan,China,2011:1-4.
[8] Molins M,Stojanovic M. Slotted FAMA:A MAC Protocol for Underwater Acoustic Networks[C]//Proceedings of OCEANS 2006,Boston,Massachusetts,USA,2006:1-7.
[9] Petrioli C,Petoccia R. A Comparative Performance Evaluation of MAC Protocols for Underwater Sensor Networks[C]//Proceedings of OCEANS 2008,Quebec City,Canada,2008:1-10.
[10] Chirdchoo N,Soh W S,Chua K. Aloha-Based MAC Protocols with Collision Avoidance for Underwater Acoustic Networks[C]//Proceedings of 26th Annual IEEE Conference on Computer Communications,Anchorage,USA,2007:2271-2275.
[11] Parrish N,Tracy L,Roy S,et al. System Design Considerations for Undersea Networks;Link and Multiple Access Protocols[J]. IEEE Journal on Selected Areas in Communications,2008,26(9):1720-1730.
[12] 李超,王峰,刁博宇,等. 一种新型水下传感网MAC协议[J]. 指挥与控制学报,2015,1(4):465-469.
[13] 马春光,姚建盛. NS-3网络模拟器基础与应用[M]. 北京:人民邮电出版社,2013.