基于DRNG与DLSS拓扑结构的网络模型优化研究
2021-11-16彭文良
彭文良
摘要:对基于邻近图的主流拓扑控制算法进行了阐述,通过OMNET++软件仿真建模,设计出基于DRNG与DLSS拓扑控制算法的网络模型,仿真并收集分析数据结果,结果表明:改进DLSS算法与DRNG算法都能够实现通信拓扑结构的简化,达到降能的目的;改进DRNG算法比DLSS算法优化的拓扑结构的鲁棒性更好,更适合实际应用推广。同时提出改进和优化的策略。
关键词:无线传感器网络;拓扑控制;邻近图;DRNG;DLSS;
中图分类号:TP391 文献标志码:A 文章编号:1008-4657(2021)02-0079-05
0 引言
无线传感器网络是集合信息传递、接收和处理与一体的自组织的网络系统,涉及环境、医疗、军事、工业、农业以及交通等应用领域[1]。拓扑控制技术是保证无线传感器网络通信机制与数据融合的重要支撑技术之一,对于网络结构的优化与节能降耗等方面具有直接关系[2]。陈军[3]提出了一种启发式分簇拓扑控制方法,利用粒子群实现通信节点的分簇,从而提升通信网络的连通性与生命周期。刘志龙等[4]采用群交叉与变异的方式达到非均匀分簇,控制传感器节点的剩余能量与负载直接的均衡,在较大的网络吞吐量下仍然能够保持较长的生命周期。除了通过建立粒子群算法达到网络拓扑结构的控制之外,还可以通过优化节点可靠性权值的方式达到节能的目的。宋伟奇等[5]通过构建网络节点模型优化传输节点的权值约束,提升数据传输的流畅度,达到延长网络寿命周期的目的。本文通过OMNET++软件对改进后的DRNG(Directed Relative Neighborhood Graph)算法与DLLS(Directed Local Spanning Subgraph)算法的网络模型进行仿真,比较不同节点优化技术的优势,为拓扑控制技术在无线传感器网络的节能降耗研究提供依据。
1 基于邻近图的拓扑控制
1.1 DRNG算法改进
在DRNG算法中[6],在得到u的邻居节点集之后,在邻居节点集内寻找距离节点u最远的节点v,并且根据这两节点间的距离来确定节点的最大发射功率。所以此算法的最终目的就是找到距离节点最远的邻居节点。在原有的DRNG算法中需要判断所有的n个邻居节点是否为u的邻居节点,而改进DRNG算法减少了n/2需要确定的邻居节点的个数。那么在寻找邻居节点的时候如果对于它的可达节点进行排序,算法的复杂度将会从原来的n4比较次数下降为n2比较次数。算法步骤如图1所示。
DRNG算法改进主要是在确定可达邻居集合N后,将N中的节点按照与u的距离从大到小进行排序,记为v1、v2、v3、...、vn。每个节点vi(i=1,2,3,...,n)两两之间的集合{vi+1,vn},如果不存在一点p满足max{d(u,p),d(v,p)}< d(u,v),则vi即是u的最远邻居节点。按照vi到u的距离d(ui,v)调节发射功率。
1.2 DLSS的拓扑控制算法
基于DLSS算法的拓扑结构的通信流程与DRNG算法的结构类似[6]。通过每个节点发送最大功率的广播Hello信息,结合DLSS算法的节点定位确定邻居节点从而实现最高效率的通信路径筛选。具体的算法如下:
输入参数:Gu:u的可达邻居子图G;
输出参数:Su=(V(Su),E(Su)),根据Gu得到的局部生成子图。
Begin
1 Sort(E (Gu));将E(Gu)中的边按照权重排序
2 for each edge (u0,v0) in the order
3 if u0 is not connected to v0 in Su
4 E(Su):=E(Su)∪{(u0,v0)}
5 end if
6 end
End
在完成上述过程后,调整节点发射功率,使之能与最远的邻居节点通信。最后将拓扑图中的单向边删去,仅保留双向连通的链路,保证网络的双向连通。
1.3 基于邻近图的仿真建模
本文使用OMNET++(Objective Modular Network TestBed in C++)仿真软件进行实验的仿真。
1.3.1 节点模块构成
在OMNET++中其实节点也可以看成是一个混合模块,只是有几个混合模块和简单模块相互连接就构成了节点。在本文的实验中建立了最基本的节点模块:BaseNode。参数如下:
parameters:
string applType; //type of the application layer
string netwType; //type of the network layer
string mobType; //type of the mobility module可以設置节点是否移动
@display("bgb=301,256,white");
整个节点内部个模块之间的连接:
nic.upperGateOut --> net.lowerGateIn;
nic.upperGateIn <-- net.lowerGateOut;
nic.upperControlOut --> { @display("ls=red;m=m,70,0,70,0"); } -->net.lowerControlIn;
nic.upperControlIn <-- { @display("ls=red;m=m,70,0,70,0"); } <--net.lowerControlOut;
net.upperGateOut --> appl.lowerGateIn;
net.upperGateIn <-- appl.lowerGateOut;
net.upperControlOut --> { @display("ls=red;m=m,70,0,70,0"); } -->appl.lowerControlIn;
net.upperControlIn <-- { @display("ls=red;m=m,70,0,70,0"); } <-- appl.lowerControlOut;
radioIn --> nic.radioIn;
1.3.2 功率与通信距离
在接收灵敏度一定情况下,采用无线发射功率P和接收半径R之间关系是:
P∝Rn(2 < n < 5)(1)
也就是P可能会远远大于R2。n的取值与很多因素有关,主要是环境因素,在本文的实验环境中,通过设置一系列参数之后,使得n取值为3,与一般实际情况相符合。一般而言,传感器节点的无线通信半径在100 m以内比较合适。因此,本文选择0~99 m作为节点通信实验的测试距离。
1.3.3 功率调节
将路径损失系数alpha设置为3.0,将最小信号衰减阀值sat设置为-84 dBm,载波频率carrierFrequency设置为2.412e+9 Hz。在OMNET++中有对于发射功率和节点间距的一个计算函数,但是在仿真过程中发现,在距离超过50 m的时候就存在较大的偏差,因此,本文分别通过调节节点发射间距和节点发射功率,得出两者之间的函数关系。然后再另选一些点,并且根据两者之间的距离,将他们的功率调节为由公式计算得出的值,验证是否能够相互通信。
2 基于邻近图的仿真结果分析
2.1 调整功率与通信距离的关系
2.1.1 实验场景
对于本次实验场景已有一定的描述,如图2所示。
node[0]向周围发送BROADCAST_MESSAGE信号,如果node[1]在收到发送的信号之后认为该信号是有效信号,即信号强度大于sensitivity则认为是有效信号,发送BROADCAST_REPLY_MESSAGE。否则,node[1]节点将会将该广播信号认为是干扰信号直接丢弃。
2.1.2 节点距离与发射功率的关系
根据功率调整与距离调节的方式,探讨节点距离与发射功率之间的关系,分别测量了间距为10~99 m之间的发射功率,结果如表1所示。随着间距的不断增大调整功率随之增大,并在间距为99 m时,功率达到100 mW。
2.2 邻近图算法控制与网络生命周期分析
2.2.1 改進DRNG和DLSS算法功率比较
在200 m * 200 m的范围内设置10个随机分布的节点,节点的最大发射功率为100 mW,节点的最大发射距离为99 m。根据改进DRNG和DLSS算法,分别计算得到节点对应的发射功率。节点分布如图3所示。
由图3可知,除0号节点外,在改进DRNG和DLSS算法的相同坐标下的发射功率均一致。而在0号节点中,DLSS算法的发射功率较大,达到10.1 mW。
2.2.2 仿真实验与结果
图4显示了网络运行中的节点建立拓扑的过程,在建立初期,已经确立了每个节点的发射功率。图4(a)中的node[8]首先发送广播消息,图4(b)的node[9]节点和node[5]同时接收到广播消息,形成消息队列,node[9]节点首先转发reply消息,然后node[5]节点转发消息,如图4(c)所示。
(a) node[8]发送广播信号(b) node[7]发送reply信号(c) node[5]发送reply信号图4 节点信号发送过程图
如果网络节点的初始发射功率为最大值,经过如图4的网络节点不断转发探测过程,建立了网状的网络拓扑关系图如图5(a)所示。用改进DRNG拓扑控制算法即按照表1发射功率,确立的拓扑结构如图5(b)所示。图5(c)是按照DLSS算法得到个拓扑结构。
从图5中可以看出,在网络的拓扑结构中无论是采用改进DRNG算法还是DLSS算法优化,拓扑图都比原始图更简化,从而实现通信网络的节能与生存时间的延长。对比图5(b)和图5(c)可以看出在网络通信链路上DLSS算法优化的路径比较单一化,仅仅存在一条通信回路,所以DLSS算法优化的拓扑网络比改进DRNG算法更节能。然而,改进DRNG算法优化的拓扑结构中存在两条可选择的通信链回路,在网络结构稳定性上比DLSS算法更好,既保证了网络结构的通信降能耗,也保障网络结构通信的稳定性。因此,在实际应用中改进DRNG算法相较于DLSS算法更具推广性与实用性。
3 结论
拓扑控制技术是无线传感网络实现节能降耗,延长通信生命周期的关键。本文在原有DRNG算法的基础上,利用寻找最远通信节点的方式重新对算法进行优化,并与经典DLSS算法和原始拓扑结构进行比较分析与仿真,得到以下结论:改进DLSS算法与DRNG算法都能够实现通信拓扑结构的简化,达到降能的目的;改进DRNG算法比DLSS算法优化的拓扑结构的鲁棒性更好,更适合实际应用推广。
参考文献:
[1] 李安莹,房鑫平,孙福阳.无线传感器网络拓扑控制研究综述[J].中国新技术新产品,2015(23):17.
[2] 司永洁,张健.低损耗无线传感器网络拓扑控制算法仿真[J].计算机仿真,2019,36(10):273-276.
[3] 陈军.无线传感器网络启发式分簇拓扑控制方法[J].科学技术与工程,2018,18(19):94-99.
[4] 刘志龙,张淋江,周红雷,等.非均匀分簇无线传感器网络拓扑控制仿真[J].计算机仿真,2019,36(4):260-264.
[5] 宋伟奇,王代远.基于节点优化的无线传感网络拓扑控制方法研究[J].广西民族大学学报(自然科学版),2019,25(3):80-83.
[6] 陈功平,王红.基于邻近图拓扑构造算法的仿真设计[J].绥化学院学报,2020,40(2):158-160.
[责任编辑:许立群]