袁登会
(中国石油大学(华东)计算机科学与技术学院 青岛 266580)
随着建设海洋强国的重大国家战略的推进,目前面向海洋开发利用的智慧海洋及透明海洋研究的广度与深度不断加强。水下传感器网络中,节点通过水声信号通信,路由协议实现了将数据包从源节点经过多跳转发到目标节点的功能。但由于水下环境复杂,网络拓扑多变,水声通信存在高时延、高动态、高衰减、低带宽、水下节点能量有限等问题,很多在无线通信中经常使用的路由协议,在水声通信领域都无法实现预期的性能。
针对Ad Hoc 网络中由于节点移动性和能量约束而导致的频繁链路中断和节点死亡问题。文献[1]提出了一种基于地理位置的能量和移动性贪心周界无状态路由(EM-GPSR)能量均衡路由算法,将正进展区域划分为4 个子区域。根据源节点与目标节点之间的欧式距离以及节点的剩余能量,在候选子区域中选择下一跳节点。文献[2]提出一种基于权值函数的GPSR-W 协议。在数据传输过程中,考虑了相邻船舶的航行方向、链路风险、相邻船舶密度和邻近度等因素。
文献[3]提出一种基于邻节点筛选的GPSR-NS 协议。预测邻节点当前位置并运用空洞节点筛选机制,降低空洞出现的机率。文献[4]提出一种切线切换路由空洞处理算法(GTSR)。实时在关键节点从周边恢复算法转换为贪婪算法转发数据包。文献[5]提出了一种基于无迹卡尔曼滤波预测周边节点邻居的方法(GPSR-RLP)。文献[6]在GPSR协议的基础上引入速度矢量对中继节点选择方法进行优化。
在机会路由[7]协议中,候选项的选择通常基于地理信息或网络拓扑。基于矢量的转发(VBF)[8]是第一个为基于坐标信息的无线传感器网络开发的机会路由协议。自适应逐跳矢量转发(AHHVBF)[9]通过动态调整每个转发区域解决了水下稀疏网络中的冗余传输问题。文献[10]提出了一种编码感知的水下无线传感器网络的机会路由方法(CORS),使用拓扑信息自适应地扩展候选集。基于深度的路由(DBR)[11]是一种典型的基于接收端的机会路由协议,它使用深度信息来选择候选集。EEDBR[12]在候选集选择过程中考虑了剩余能量,这在降低分组投递率的同时优化了网络寿命。
移动自组网[13]是一种自组织的网络。它不需要基础设施的支持。文献[14]提出了一种改进的AOMDV协议,在路由发现阶段,选择最先到达的一条路径作为主路径进行传输数据,再选择一条路径作为备份路径。
EEGPSR 协议在原有GPSR 路由协议的基础上进行改进,通过选择邻近节点方向、邻居节点与目的节点的相对距离等两个指标对链路质量进行评价,对GPSR 路由协议的周边转发过程进行有效的改进,基于权值函数选取最优周边转发节点;其次,设置空洞标记,当节点陷入路由空洞时,此节点的空洞标记加1,当标记大于10 后,该节点不再作为中继节点,可以有效地解决路由空洞问题。
建立水下传感器网络,设置大量的移动传感器节点,节点应用OPNET 中的Random Way Point 移动模型。同时,不考虑水面设置声纳浮标或声纳汇聚节点,节点处于相同的水平面。所有节点在能量消耗和传输范围方面都是相同地位。
对于能耗模型,只考虑数据包发送与接收所消耗的能量。此外,发送数据包的过程中。传输k bit所消耗的能量[15]可表示为
OPNET采用的14个管道阶段对于水声信道并不适用。重新设计水声信道模型[16]如下。
1)传播时延:不再选取固定的声速经验值采用更精确的经验计算公式如式(4)所示:
式中,T为温度,S为盐度千分数,D为深度。
2)接收功率:传播损失TL的计算公式如下:
其中α为吸收因子,单位为dB/km,取值为
3)背景噪声:由Wenz模型进行描述,即
式(7)中,NLT、NLS、NLW与NLTℎ分别是湍流噪声、航运噪声、海面噪声与热噪声[17]。总噪声表示为
在本节中,给出了所提出的UWSN中的路由协议EEGPSR。
GPSR周期性地向邻居节点发送信标(Beacon)[18]信号得到邻居节点信息。Beacon 中包含节点标识和节点位置信息。在[0.5B,1.5B]上服从均匀分布随机选取信标发送间隔。通过该方法,可以有效地降低多个邻居节点同时发送Beacon 冲突。同时,检测到邻居节点远离或新节点加入。
1)邻近节点方向
如图1所示,A为当前节点,B是A的邻居节点,D 为目的节点。通过计算中继节点、邻居节点以及目的节点之间夹角的余弦值hi作为衡量指标的一项标准。
图1 邻近节点位置
2)邻居节点与目的节点的相对距离
d 为邻居节点与目的节点的距离,threshold_distance 表示的是当前节点与目的节点的欧式距离。
最终,构造当前节点的下一跳中继节点的权值函数为
对此进行了众多仿真实验,获取最优的权重为a=0.43,b=0.57。
算法流程如图2所示。
图2 EEGPSR协议的算法流程图
使用OPNET 对GPSR、EEGPSR 进行仿真。比较了该策略与GPSR 地理路由算法的性能,以及该策略在不同移动速度下的性能。仿真参数设置如表1。
表1 仿真参数
图3 显示了两种路由协议在不同网络节点数下的数据包成功投递率。随着节点密度的增加,数据包成功投递率增加。由于GPSR 只采用贪婪转发,所以GPSR 的包分发率是最低的,而且所选链路的稳定性不如EEGPSR 算法。其中,EEGPSR 的包成功率最高。这是因为EEGPSR 将节点的移动性作为首要考虑因素,并且考虑了邻居节点的密度,从而提高了链路的稳定性及数据包传送率。
图3 数据包成功投递率1
图4显示了GPSR,EEGPSR路由算法的端到端时延与节点移动速度之间的关系。节点移动速度从0.5 m/s 增加到1.2 m/s 时,端到端延迟发生了对应的提高。这是因为当节点具有移动性时,邻居节点获得的路由信息可能会过时,节点必须重新发现路由才能进行数据传输。而当移动速度越快,下一跳节点越容易脱离出当前节点的转发范围,此时数据重传的几率大大增加。
图4 端到端时延
图5为GPSR,EEGPSR路由协议在不同移动速度下的数据包成功传递率。节点移动速度从0.5 m/s 增加到1.2 m/s 时,包成功传递率降低。这是因为当节点具有移动性时,邻居节点获得的路由信息可能会过时,而当移动速度越快,下一跳节点越容易脱离出当前节点的转发范围,从而发生链路中断现象,此时路由空洞出现的几率大大增加。
图5 数据包成功投递率2
图6为GPSR,EEGPSR路由协议在不同节点通信范围下的能量消耗。从图中可以看出,节点通信范围从400 m 增加到800 m 时,能量消耗降低。这是因为随着节点通信范围的提升,逐渐降低了由于某些节点通信半径过小不足以寻找到下一跳中继节点而造成路由空洞的风险,从而减少数据包的多次重传问题、造成多次能量消耗。
图6 能量消耗
为了解决水声自组织网络中由于节点移动和能量约束引起的频繁链路中断和节点死亡问题,提出了一种基于地理位置的高效节能的路由算法EEGPSR。传统的地理路由算法没有充分考虑能源消耗的不平衡造成的连续运动和能量约束的节点,而该算法考虑了节点的移动性、节点的能量状态,同时考虑限制单跳转发区域来选择下一跳。仿真结果表明,该算法具有较低的能量消耗、较低的端到端时延、较高的数据包成功投递率,能有效规避路由空洞的发生。