基于软件定义WSN的同质节点的能耗均衡方法

2020-06-05 12:18王克重
小型微型计算机系统 2020年6期
关键词:中继能耗阈值

王克重,鲍 宇,杨 轩,张 宇

1(中国矿业大学计算机科学与技术学院,江苏徐州221116)

2(中国矿业大学矿山数字化教育部工程中心,江苏徐州221116)

1 引 言

时消耗的能量较多.因此,需要对WSN 中节点的能耗均衡方法进行详细研究.

随着我国5G 技术的不断发展,无线传感器网络(Wireless Sensor Network)将更广泛的应用到工业,农业,医疗等各个领域[1].在工业中,应用于生产过程自动化,设备状态监测;在农业中,应用于蔬菜生产基地中温室湿度,温度等的控制;在医疗中,应用于监测人体的各项生理指标等[2].

WSN 中的感知节点(sensor nodes)分布在被监控区域的各个位置,与sink 的距离远近不一,而节点的能耗与距离有关,因此SNs 面临能耗不均的问题.另外,自组网的方式,网络不能灵活控制节点的数据传输方向,导致节点在传输数据

2 相关工作

软件定义网络(Software-defined Network)是美国斯坦福大学提出的一种网络架构,随后被学术研究人员和工业界广泛应用[3].SDN 通过数据平面与控制平面分离的技术,将网络设备的控制功能从逻辑中分离出来,转移到概念上的高层网络实体控制器中[4].

为延长WSN 的生存时间,提高WSN 的性能,可采取优化部署网络节点,或完善路由协议.文献[5]采用优化部署网络节点的方法,将WSN 划分为若干集群,在集群内部选举若干节点作为中继节点(relay nodes),并为RNs 额外提供能量.数据在集群内部传输时,每个集群中的RNs 按照顺序转换,称之为“虚拟移动中继”方法.这种方法有效延长了网络的生存时间,但主要应用于线性网络中,并且需要事先选定RNs配给额外能量,如何选定RNs 是需要考虑的问题.文献[6]基于LEACH 协议提出EBCA 方法,将节点按层次划分为远层,中层和近层三层结构.选取中继时,远层SNs 选取中层SNs作为 RNs,中层 SNs 选取近层 SNs 作为 RNs.传输数据时,SNs 感知数据的一部分传输给RNs,一部分传输给簇首.而每条路径传输的数据量,则由远层SNs 根据路径上的节点数量,位置求解,以达到能耗均衡的目的.该方法在一定程度实现了能耗均衡,但选取中继的方法未阐述,并且没有考虑簇首的能量损耗.文献[7]采用博弈论方法完善路由协议,通过不断博弈,实现能耗均衡.在该方法中,节点首先确定邻居节点,然后将自身的剩余能量信息传递给邻居节点,以便在下一轮运行时进行概率判断.文献[6,7]中,簇内各节点均存储本簇内所有节点的剩余能量信息,以在下一轮选取最优中继节点,实现能量的均衡,但这需要更多的存储空间,以空间换时间,会对网络的性能有一定的影响.文献[10]提出了一个软件定义无线传感网络的结构,定义了设备管理,拓扑管理的相关报文格式,但是对于选举中继的报文格式未明确说明.

在大型WSN 中,使用LEACH 协议,将节点划分为若干集群,在集群中随机选取RNs,以延长网络的生存时间.在小型WSN 中,由于节点数较少,采用随机选举RNs 的方式对网络的生存时间提升较小,甚至会降低网络的生存时间.而采用非随机选取RNs,可以选择使网络生存时间最长的中继位置,有效提升网络生存时间.但是何时选取RNs,怎样选取RNs是现存的问题.

3 SDN-WSN 模型

3.1 SDN-WSN 网络结构

图1 SDN-WSN 模型Fig.1 SDN-WSN model

通过对现存网络结构的能耗分析,发现集中式的网络控制方式可以提高网络的生存时间,因此,本文提出了一种基于软件定义WSN 的网络结构.如图1所示,SDN-WSN 有基础设施层、控制与传输层和用户层三个层次.其中控制节点为单节点,由图中sink 节点充当.由于单节点控制相比于多节点控制具有存储开销少,通信开销小,响应速度快等优点[8],因而SDN-WSN 中选取单节点控制方式.但是,单节点控制方式可能出现单点失效问题[9].

1)基础设施层.在SDN-WSN 中,基础设施层由布置在各处的SNs 组成,网络初始时,直接与sink 通信.基础设施层的主要功能是感知数据和转发数据.

2)控制与传输层.由sink,无线路由器和无线电发射塔组成.基础设施层中SNs 的控制功能集中在sink 中,是网络的核心.sink 为用户提供了可编程的北向接口,以及定义了转发设备指令集合的南向接口[9].sink 通过南向接口将数据转发规则传输给SNs,以此控制SNs 的数据流向.无线路由器与无线电发射塔是数据的传输中介,可将SNs 感知的数据传输给用户.

3)用户层.由各类用户组成,包括便携主机,智能终端等.通过控制与传输层提供的接口,用户根据需求开发应用程序.如果需要多用户监控,可在便携主机或智能终端上安装监测软件,对数据采集情况实时监控.

3.2 控制节点功能设计

控制与传输层中的sink 是SDN-WSN 的核心,主要包括拓扑发现功能,设备管理功能,存储功能以及重定义管理功能等[9],如图2 所示.拓扑发现功能通过底层协议收集 SNs 的信息,形成全局视图下的网络拓扑结构信息,并保存在存储中.设备管理功能包括传感设备的管理,延迟管理等[10].重定义管理功能是指,当SNs 能量降低到设定值后,sink 根据公式、算法为其选举中继的过程,该过程称之为重定义网络(Redefine the network).

图2 控制节点的功能Fig.2 Functions of the control node

重定义网络时,sink 需要将RNs 的编号发送给SNs.由于Samaresh Bera[10]等人未对重定义网络的报文格式设计,因此,本文根据Samaresh Bera 等人的报文格式,设计了重定义网络的报文格式,如图3 所示.其中重要字段的含义如下:

图3 重定义网络报文格式Fig.3 Redefine the network message format

长度:整个报文的长度L.

类型:设置为单播和多播,在网络运行初期,sink 通过多播向SNs 传输转发规则.当一个节点的能量下降到能量阈值后,sink 以单播形式将转发规则传输给SNs.

SNs-ID:表示感知节点的编号.

操作:定义了多种操作,主要包括节点登陆,退出,更改节点的数据传输目的地等,是重定义网络报文中重要的字段.

TTL:表示报文的生存时间.

校验位:检验数据完整性.

4 SDN-WSN 重定义网络方法

4.1 能耗模型

本文使用文献[11]提出的自由空间模型,即节点的能耗与距离的二次方相关.由于硬件技术的快速发展,采集设备的能量损耗主要集中在传输数据,接收数据,其他的能量损耗基本可以不计[12].假设在单位时间内,SNs 采集和发送1bit 数据,由公式(1),公式(2)可以分别计算在t 时间内SNs 传输、接收数据需要的能量[1,13].

其中,εrx,εele是与距离相关的常量;εamp是与距离相关的系数,与发送放大器的能耗有关[13];α 是路径损耗指数,且2≤α≤4[5].

当SNs 剩余的能量低于设定值时,由A 类节点变为B 类节点,SDN-WSN 重定义网络,为B 类节点选举中继,更新网络拓扑.选举出RNs 的能量消耗可由公式(3)计算,其中t 表示运行时间,n 表示有(n-1)个节点将其作为中继.

4.2 重定义网络方法

为在下文表示方便,进行如下定义.

定义1.能量阈值(Ethreshold):SNs 的能量降低到设定值时,工作模式与网络拓扑将被SDN 能耗均衡算法重定义.

定义2.A 类节点:SNs 剩余的能量高于能量阈值,称这类节点为A 类节点.

定义3.B 类节点:SNs 剩余的能量低于能量阈值,称这类节点为B 类节点.

SDN-WSN 中与sink 距离近的节点能量消耗慢,与sink距离较远的节点能量消耗快,死亡早,导致网络中节点能量消耗不均问题突出.因此,本文为节点定义了能量阈值,当节点的能量低于能量阈值时,由A 类节点变为B 类节点,sink 根据SDN 能耗均衡算法为B 类节点选取中继,重定义网络,能量阈值的选取与最优中继节点的位置有关.如图4 所示,使用重定义网络后,SNs 变为两层结构,B 类节点在剩余生存时间内,只向中继传输数据.

图4 SDN-WSN 重定义网络图示Fig.4 SDN-WSN redefines the network diagram

由于sink 重定义网络,导致网络生存周期内出现两个阶段:t1阶段SNs 向 sink 传输数据,t2阶段 SNs 向中继传输数据.因此,为使网络的生存时间最长,需要求解t1,t2之和的最大值,也即求网络生存时间的最优解问题,其优化目标函数如公式(4)所示.

其中,d1表示 SNs 与 sink 之间的距离,d3表示 RNs 与sink 之间的距离,d2表示SNs 与RNs 之间的距离,约束公式(7)-公式(9)保证节点之间的距离符合要求.

根据目标函数及约束,可用优化工具求出d3的值.在部署节点时,可将中继部署在d3的位置,或者部署在最接近d3的位置,以延长网络的生存时间.

表1 算法涉及的变量及含义Table 1 Variables and implications of the algorithm

本文设计了SDN 能耗均衡算法(SDN Energy Consumption Equalization Algorithm),当节点剩余的能量低于能量阈值时,sink 节点根据SDNECEA,重定义网络.SDNECEA 涉及的变量及含义如表1 所示.Clusterflag 值为1 时,表示消息来自 SNs,值为 2 时,表示消息来自 RNs.NodeType 值为 1 时,表示为A 类节点,值为2 时,表示为B 类节点,算法如下.

5 仿真与结果分析

设计实验,对网络中感知节点的能耗进行仿真测试.本文只考虑SNs,RNs 接收和转发时的能量损耗,不考虑其他能量损耗.仿真参数如表2 所示.为测试SDNECEA 方法是否有效、效果如何,设计实验1,实验2 进行验证.节点的能耗与距离有关,所以在SNs 与sink 间选取不同的距离,设计对比实验3,实验4,探索使用SDNECEA 方法与不使用SDNECEA 方法,使用SDNECEA 方法与其他方法,对网络生存时间的影响.

实验1.根据上节提出的重定义网络方法,选取d1=10m进行仿真实验,测试网络的生存时间是否延长.根据公式(4)-公式(9)求得 d1=10m 时 d3=4.795m.通过仿真发现,使用重定义网络方法前,网络的生存时间为1018,如图5(a)所示.使用重定义网络方法后,网络的生存时间为1021,如图5(b)所示.结果表明,经过重定义网络后,网络的能量消耗更均衡,网络的生存时间也延长了0.29%,但是延长的效果不显著.

表2 仿真参数设置Table 2 Simulation parameter setting

图5 d1=10 时能耗仿真结果Fig.5 Simulation results of energy consumption when d1=10

实验2.考虑到节点的能量消耗与距离有关,设置d1=20m 进行仿真实验,观察网络生存时间延长的效果是否显著.根据公式可求得d1=20m 时d3=8.685m.通过仿真发现,使用重定义网络方法前,网络的生存时间为679,如图6(a)所示.使用重定义网络方法后,网络的生存时间为706,如图6(b)所示.结果表明,经过重定义网络后,网络的生存时间延长了3.97%,网络延长的效果较为显著,能耗较为均衡.

图6 d1=20 时能耗仿真结果Fig.6 Simulation results of energy consumption when d1=20

根据实验1,实验2 推测,当d1的值越大时,网络生存时间延长的效果越显著,设计实验3 比较SNs 在不同距离下延长时间的效果如何.

实验3.设计 d1的值分别为10m,20m,30m,40m,50m,对应d3的值分别为 4.795m,8.685m,11.586m,13.758m,15.434m.通过仿真发现,使用重定义网络方法后,不同的d1值,网络的生存时间各延长了3,27,64,95,120,比使用重定义网络方法前的生存时间各延长了 0.29%,3.97%,14.68% ,32.65%,58.82%,如图8 所示.实验结果说明,SDNECEA 可以实现节点的能耗均衡.当d1的值较大时,网络生存时间延长较多,节点的能耗更均衡.但是当d1的值较小时,网络生存时间延长较少,SDNECEA 的效果不明显.

为了进一步确定该算法的优劣,对比了直接传输,随机选取中继位置,文献[6]的EBCA 以及SDNECEA,四种方法的网络生存时间.

实验4.如图7 所示,使用随机中继位置的方法,当中继节点选择适当的时候可以提升网络的生存时间,但是如果选择不当,甚至会降低网络的生存时间;使用EBCA 对网络的生存时间有提升,但是提升效果不明显;使用SDNECEA 对网络生存时间的提升较为显著,且较为稳定.

图7 四种方法实验结果Fig.7 Experimental results of four methods

图8 不同方法延长网络生存时间的比例Fig.8 Different methods to extend the proportion of network lifetime

如图8 所示,采用随机中继位置的方法,效果不稳定,当中继位置选取不当时,反而会降低网络的生存时间;采用EBCA,对网络生存时间有提升,但是提升效果有限;采用本文方法,网络的生存时间随着距离的增大而提升,效果较为显著,但是当距离较近时,提升的时间较短,效果较差.实验表明,本文提出的方法对提升网络生存时间更有效.

6 结束语

针对现有网络中,节点能耗严重不均衡的情况,本文提出了一种基于软件定义WSN 的同质节点的能耗均衡方法.为了减少数据传输过程中的能量损耗,采用软件定义网络的思想,将网络拓扑的重构控制功能从物理设备分离出来,集中在sink 节点,虽然集中管理控制功能会额外消耗能量,但现有条件下,可为sink 提供充分的能量.通过抽象的优化模型,求解最优中继位置.部署节点时,可选择最优中继位置,或者最接近中继的位置,以实现网络的能耗均衡.当节点的剩余能量降低到能量阈值后,sink 根据SDNECEA 重定义网络.实验结果表明,在节点剩余能量低于能量阈值后,使用SDNECEA 重定义网络,网络的能耗更均衡,网络生存时间最高可延长58.82%.但是,在近距离使用SDNECEA 方法,实验的效果不显著.在进一步的研究中,还需要对以下方面进行研究:

1)网络优化问题;

2)节点同步问题.

猜你喜欢
中继能耗阈值
120t转炉降低工序能耗生产实践
改进的软硬阈值法及其在地震数据降噪中的研究
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
探讨如何设计零能耗住宅
改进小波阈值对热泵电机振动信号的去噪研究
水下飞起滑翔机
日本先进的“零能耗住宅”
“鹊桥号”成功发射
Link—16中继时隙自适应调整分配技术研究