水下无线传感器网络自适应锥体矢量路由协议
2024-05-30刘淳,王敏,2*
刘 淳,王 敏,2*
(1.云南师范大学 信息学院,云南 昆明 650500;2.云南师范大学 民族教育信息化教育部重点实验室,云南 昆明 650500)
0 引言
水声传感器网络(Underwater Acoustic Wireless Sensor Networks,UWSNs)是一种用于实现水下信息收集和数据传输的技术[1],在海洋探索、环境监测等领域中发挥着重要作用[2]。然而,UWSNs面临着多种困难。如多径效应造成信号衰减,影响到信号质量;水流导致节点移动,增加维持稳定通信的复杂性;节点依赖电池供电,能源管理成为网络长期运行的关键。因此,提高UWSNs数据传输的可靠性和效率性成为本文研究的主要动机。
VBF在规划路由路径和可扩展性方面表现出色[3],但由于固定的管道设计,使得其在高动态水下环境中的适应性和能效仍存在局限。Nicolaou等[4]提出的HH-VBF(Hop-by-Hop Vector-Based Forwarding),通过每跳创建虚拟管道,为每个转发节点使用单独的矢量,克服了VBF对管道半径阈值敏感的问题。但在节点密集情况下,HH-VBF由于恒定的管道半径,导致出现重复数据包和增加能耗问题。Yu等[5]提出的自适应逐跳向量转发协议AHH-VBF,通过动态调整管道半径和传输功率,降低了网络能耗,并改进包的持有时间,降低了传播延迟。但是,AHH-VBF在密集环境中产生大量重复数据包,并且在稀疏环境中传输连续性和可靠性存在不稳定。Khan等[6]提出的自适应逐跳锥形向量转发协议AHHC-VBF,通过构建锥形转发结构,根据节点的分布自适应调整锥形的高度和开口,减少网络中的冗余包数量。但AHHC-VBF在稀疏网络环境下会面临着下一跳转发节点的传输距离范围之内没有符合转发的空洞情况。
本文提出自适应锥体矢量路由协议(Adaptive Cone Vector Routing Protocol,ACVRP),在VBF的管道中引入锥体候选区域,根据节点密度来自适应调整锥体区域大小和方向,减少冗余分组的传输,避免空洞情况。在选择候选节点中,优先选择剩余能量高和距离较远的节点作为下一跳,以提高投递率,减少传输跳数。
1 自适应锥体矢量(ACVRP)路由协议
1.1 ACVRP设计思想
为了减少网络中冗余数据包的转发,降低网络整体能耗以及保证数据投递率的同时避免出现空洞,ACVRP采用动态锥体区域作为下一跳候选区域,如图1所示。ACVRP根据区域中节点的密度自适应调整锥体的方向和大小;为减少发送方到Sink节点传输的总跳数,实现降低能耗和减少传输时延的目的,ACVRP通过综合考虑节点的剩余能量、区域内邻居节点到锥体顶角节点的距离和邻居节点到锥体中轴线的距离3个因素,来确定下一跳节点转发的优先级。
图1 ACVRP模型
1.2 基于密度的自适应锥体候选区域划分
1.2.1 锥体区域内邻居节点数量计算
锥体区域内节点应同时位于锥体区域和管道区域内,即:(1)锥体顶点到邻居节点的向量与锥体中轴线的夹角小于或等于锥体顶角的一半;(2)邻居节点到管道中轴线的距离小于或等于管道宽度的一半。具体如下。
同时满足以上2点,即可计入锥体候选区域内的节点数N。
1.2.2 锥体内节点密度计算
锥体内节点密度Ddensity为:
(1)
1.2.3 锥体区域动态调整设计
初始化锥体顶角θi=60°,其母线长为传输半径R。为确定锥体方向的调整,将节点的上半球形传输区域划分为左右2个半区,计算并比较2个半区的密度大小,若Leftdensity≥Rightdensity,则锥体方向逆时针旋转α°;若Leftdensity 锥体方向确定后,调整锥体大小以满足角度阈值Tangel。将当前锥体区域内的密度Ddensity与角度阈值Tangel进行比较,来决定增加还是减小锥体顶角θ,最终调整方向和大小后的锥体区域见图1中阴影锥形部分。 锥体顶角θ调整设定如下。 当网络密度Ddensity>Tangel时,锥体顶角θ应减小,即: θ=θinitial×(1-k×(Ddensity-Tangel)) (2) 当网络密度Ddensity≤Tangel时,锥体顶角θ应增大,即: θ=θinitial×(1+k×(Tangel-Ddensity)) (3) 其中,k是一个调整系数,用于确定锥体内节点的密度变化对θ的影响程度。 综合考虑3个属性来设置节点的转发优先级。 Ej:邻居节点j的剩余能量,剩余能量越大,优先级越高; Sij:邻居节点到该节点的距离,距离短的跳数更少; Sic:邻居节点到锥体中轴线的距离,距离短传输更加集。 综上,对于邻居节点的HoldingTime设计如式(4): (4) 其中,Emax表示节点的初始能量;α、β、γ是调整因素的权重。 为评估ACVRP,采用了仿真实验方法。使用NS-3仿真平台和Aqua-Sim NG软件比较ACVRP与VBF、AHH-VBF及AHHC-VBF的投递率、平均能耗和传输时延[7-8]。 如图2所示,显示了ACVRP与VBF、AHH-VBF及AHHC-VBF在100—1000个节点数下的包投递率。ACVRP和AHHC-VBF具有较高的投递率,ACVRP在节点规模达到300之后投递率基本稳定在0.95左右。在不同网络规模下,ACVRP的平均投递率与VBF、AHH-VBF和AHHC-VBF相比分别提高48.4%、18.7%和2.1%。 图2 不同规模下的投递率 在平均能耗方面,如图3所示,由于ACVRP和AHHC-VBF使用范围更小的锥形作为候选区域,进一步减少了冗余通信,所以能耗相比最低。在不同网络节点规模下,ACVRP的平均能耗与VBF、AHH-VBF和AHHC-VBF相比分别降低76.88%、43.25%和7.71%。 图3 不同规模下的平均能耗 如图4所示,ACVRP、AHH-VBF和AHHC-VBF相较于VBF表现出较好的延迟性能。在不同网络规模下,ACVRP的传输时延与VBF、AHH-VBF和AHHC-VBF相比分别降低40.91%、14.18%和7.79%。ACVRP通过自适应调整数据传输路径,减少了传输跳数,从而降低了传输时延。 图4 不同规模下的传输时延 综上所述,ACVRP在投递率、平均能耗和传输时延方面均优于VBF及其典型的改进协议,说明ACVRP能够更好地适应UWSNs中大规模动态性的特点。 本文针对UWSNs的高动态性提出自适应锥体矢量(ACVRP)路由协议。采用锥体候选区域,根据节点的密度进行动态调整锥体区域的方向和大小,保证足够的候选节点,减少冗余分组的传输,降低总体能耗。此外,综合考虑邻居节点的剩余能量、邻居节点到锥体中轴线的距离以及邻居节点到当前节点的距离,设置下一跳节点的转发优先级,提高包投递率的同时,减少传输跳数,降低传输时延,提高网络的整体能效。仿真实验结果显示,与VBF、AHH-VBF以及AHHC-VBF相比,ACVRP在数据包投递率、能效和端到端延迟方面均表现出较好的性能。未来工作将专注于进一步优化ACVRP的算法性能,以提高其在不同网络规模和复杂水域环境中的适应性和稳定性。此外,考虑在实际水下环境中对协议进行进一步的测试和优化。1.3 下一跳节点的优先级设计
2 性能评估
3 结语