基于WSN数据汇集应用的汽车电子节点负载均衡算法研究

2015-07-24 15:13:32刘辉赵磊欧阳陈华
电脑知识与技术 2015年14期
关键词:负载均衡

刘辉 赵磊 欧阳陈华

摘要:该文针对基于WSN数据汇集的汽车电子节点负载均衡问题提出了可以使负载分配均衡、延长网络寿命的动态负载均衡算法,并对动态负载均衡算法的原理、各方面计算模型以及相关算法进行了具体阐述,并进一步验证了该算法的可行性和优势。

关键词:WSN;数据汇集;汽车电子节点;负载均衡

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2015)14-0211-02

WSN(无线传感器网络)当前是一个最新研究热点,具有大规模、自组织、功率消耗低、成本投入低等特点,在未来的网络应用有很广阔的发展前景。无线传感器网络主要适用于环境监测,例如 大气、水质监测、深林防火一级智能交通等等领域。无线传感器网络的应用过程中,传感器把周期性获取的环境数据不断的汇集至Sink节点的相关应用称为数据汇集应用。该应用过程中,相关数据从多个节点以多跳的方式向Sink节点汇集,因为上游节点需要负责将数据转发给下游节点的工作,因此上游节点比下游节点要承担更大的负载,进而形成漏斗效应。如果数据流量分配过程中分支流量不均衡,上游节点就可能因为承载过大成为热节点。节点负载过重会加快热节点能量的消耗,缩短网络的寿命,出现提前死亡现象。虽然针对WSN负载均衡的相关方法有很多,但整体效果都不太理想,本文基于WSN数据汇集应用,提出了一种应用于汽车电子系统节点的节点负载均衡新算法——动态负载均衡算法(DLB-DGA)。动态负载均衡算法把负载压力消息由上游节点传输给下游节点,然后结合压力消息由下游节点对父节点的流量进行调整分配,尽可能使上游节点的负载均衡到达最大程度,进而降低热点负载,达到延长网络寿命的目的。

1 动态负载均衡算法原理

WSN数据汇集中的节点除了Sink节点以外剩下的网络节点都是数据源。网络节点把采集到的信息数据都汇集至Sink节点,整个过程形成了一个多对一形式的网络数据流。与Sink节点距离较近的内层节点(又称上游节点)相对距离较远的外层节点((又称下游节点))负载较重,这可以称为一种漏斗效应。

通过对WSN数据汇集的应用特点的分析研究可得到以下定理和推论:

定理:上游节点负载的总和大于下游负载总和。定理证明:设定M为网络总层数,i、j代表层次,且0

推论:Sink相邻节点的负载总大于其他任何层次节点负载总和。推论证明:假设i层为Sink相邻节点,i=1,因为定理1成立,所以1

通过邻居发现以及广播算法,WSN能够让每个节点清楚与Sink节点的层次关系,并且可以知道自己上跳节点的信息。Sink的非相邻节点与Sink节点之间不能直接进行通信,而必须通过父节点把数据信息转发给Sink节点。一般情况下,每个WSN对应的父节点有很多个,当每个父节点的数据分配不合理时就会出现父节点或者上游节点负载不均衡的问题,负载过重的情况下很容易导致节点提前死亡,缩短网络寿命。因此动态负载均衡算法的一个关键问题就是要如何让上游节点负载得到最大程度的均衡。

动态负载均衡算法的基本思想:上游节点报给下游节点的上游节点数据转发量经过下游节点分析、处理之后,即对父节点的数据流量进行动态调整,进而使上游节点的负载到达最佳均衡状态。

可以用节点的数据传输压力来形象定义上游节点数据转发量情况,可以简称为压力,数据传输压力的方向和数据流方向是相反的。首先提出压力计算模型,节点通过该计算模型计算出对下游节点施加的压力,并把计算结果通过一定方式汇报给下游节点。上游节点的负载情况通过压力来反映,随着上游节点转发情况的变化,压力值也不断变化,如果上游的数据量大,压力值就大。子节点通过流量均衡计算模型对父节点的压力差进行均衡分配,得到父节点流量分配比例表,最后子节点根据父节点流量分配比例表来进行数据转发。该应用过程属于一个动态反馈过程,最终使得上游节点的负载达到最佳均衡状态。

2 动态负载均衡算法解析

2.1动态负载均衡算法中的压力计算模型

对动态负载均衡算法原理进行分析可以得出数据转发情况是决定压力值的关键性因素,所以压力与数据转发量之间成正比关系。从定理1中的漏斗效应中上游节点负载的总和大于下游负载总和以及节点的网络层次关系可以发现,低层次的压力贡献相对于高层次要大,此时就可以对压力进行量化性定义。节点i(i取任意值)转发数据形成的压力表示如下:[p(i)=f(i)2h(i)-1] ( p(i)表示产生的压力,f(i)表示数据传输量, h(i)表示层次跳数)。

2.3动态负载均衡算法步骤

为了实现网络负载的动态均衡,在该算法中定义出3个以广播方式传输的消息指令。指令1由Sink节点发出,主要为了发现节点层次,让节点知道与Sink节点的层次关系,并建立父子列表。指令2用于子节点对父节点的节点流量报告,如果有数据需要传输给父节点时,指令2可以在数据上传过程中稍到。指令3是父节点汇报子节点压力。动态负载均衡算法步骤主要步骤如下:

第一,Sink节点发出指令1,网络节点收到指令1后通过广播算法发现层次,获取每个节点与Sink节点的层次关系,并建立父子节点列表。节点没有初始化的情况下初始化父节点压力为零,对父节点进行流量平均分配,然后进行采集和传输数据。

第二,父节点的压力处于均衡状态时可以依据当前父节点流量表的比例进行数据传输,如果不均衡就需要执行第四步操作。

第三,如果有子节点存在,需要结合公式[p父(i)=p父(i)m父(i)+f父+fi2h(i)-1]来计算子节点压力,当压力值变化时需要通过指令3来告知子节点,然后返回第二步骤。

第四,根据流量计算模型的相关公式对新的父节点流量表进行计算,并通过指令2把新的流量信息通告给父节点,之后返回第三步骤。

利用TOSSIM进行仿真实验,实验中对动态负载均衡算法与动态负载平衡树方法、静态负载平衡树方法、最短路径树方法等节点负载均衡算法进行对比发现,动态负载均衡算法有可行性,并且相比其它算法表现出更优越的效果。

3 结束语

文章针对用于汽车电子系统的WSN数据汇集应用中负载分配不均衡的问题提出了动态动态负载均衡算法(DLB-DGA),该算法可以有效解决节点负载不均衡导致的早死现象,延长了网络寿命。而且动态负载均衡算法的应用环境要求低,实用性强,应用过程中不需要其他手段支持。由于该算法的实现是在一定假设条件下进行的,所以要需要进一步探究、完善。

参考文献:

[1] 陈志涛. 浅谈无线传感器网络研究现状与应用[J]. 计算机光盘软件与应用. 2012(09) .

[2] 何丽莉,孙冰怡,姜宇,等. 基于ZigBee的无线传感器网络管理系统架构设计[J]. 吉林大学学报:理学版, 2012(04) .

[3] 邢唱白. 浅谈基于MSP430和nRF905的无线传感器网络设计[J]. 科技信息, 2012(23).

[4] 梁毓明,张振利. 井下无线传感器网络网关节点的设计[J]. 金属矿山, 2012(07) .

[5] 李琦,张坤,李旭东. 热网远程监控中的无线传感器网络硬件设计与实现[J]. 化工自动化及仪表. 2012(07) .

[6] 潘绍明,罗功坤,劳有兰. 基于无线传感器网络的RFID系统[J]. 仪表技术与传感器,2012(06).

[7] 彭鑫. 车载自组网节点定位及频谱分配策略研究[D].湖南大学, 2011 .

[8] Perillo M,Zhao C,Heinzelman W.On the problem of unbalancedload distribution in wireless sensor networks[C]//Globe ComWorkshops 2004.[S.l.]:IEEE,2004:74-79.

[9] 张重庆,李明禄,伍民友.数据收集传感器网络的负载平衡网络构建方法[J].软件学报, 2007,18(5):1110-1121.

猜你喜欢
负载均衡
LBS检索容灾架构研究
Linux负载均衡集群技术在网络服务器中的应用
软件导刊(2016年12期)2017-01-21 16:10:11
Oracle MAA在汽车行业电子政务平台中的应用
软件导刊(2016年12期)2017-01-21 15:43:08
社区教育平台运营策略研究
软件(2016年4期)2017-01-20 09:39:56
异构环境下改进的LATE调度算法
基于负载均衡的云资源调度策略研究
基于新型VPN 技术的高校校园网改造
基于云计算的虚拟实验系统的设计及应用
基于离散PSO算法的医疗云存储部署策略
多站点同步更新系统的设计
科技视界(2016年3期)2016-02-26 20:16:57