(云南电网有限责任公司红河供电局 云南红河 661400)
摘要:大规模,分布式的智能感知组件及其传感感知数据流的实时,双向,可靠流动已经成为智能电网的重要特征之一。本文提出了一种应用于电网环境的无线传感器改进AODV路由协议优化设计,以 提高海量传感组件之间的数据传输性能与能量利用效率。具体的,通过改进路由请求消息,引入节点电量等级,负荷状态,代价因子函数等手段,在路由选择的过程中充分考虑节点能量和负荷状况,避免在处于拥塞状态和剩余能量不足的节点上建立路由。改进的路由优化设计更符合无线传感网络的应用需求,选择剩余能量多、负载小及跳数短的链路作为路由,提高了数据传输的可靠性、均衡网络的能量消耗,提高了网络的数据传输性能。仿真实验验证了上述机制的有效性。
关键词:智能传感;路由协议;智能电网
引言
大规模传感组件的普及在保障电网安全稳定运行,提升系统的鲁棒性,安全性与运行效率等方面起着重要应用[1]。目前,大规模,分布式的智能感知组件及其传感感知数据流的实时,双向,可靠流动已经成为智能电网的重要特征之一[2]。这些海量传感组件之间形成无线传感器网络,节点设备既作为采集终端完成数据的监测、采集,同时作为路由设备,完成信息的多跳传递与转发,网络不依赖现有的通信设备[3-5]。节点间以自组织、多跳中继的方式完成信息的传输,最终实现电网传感监控数据流的双向流动[6,7]。
无线传感网的的数据通信协议,尤其是多跳路由协议是海量传感感知数据安全可靠传输的关键 [8-10]。无线传感器网络的路由协议负责将采集到的数据分组的从源节点通过其它节点转发到目的节点:找到源节点和目的节点间的最优化路径,然后将数据沿着最优化的路径进行转发。系统路由层通常使用较为成熟的无线自组网按需距离矢量(Ad hoc On-Demand Distance Vector,AODV)协议进行路由选择[8,11]。AODV路由协议的特点是按需建立路由,当节点有通信需求才启动路由发现过程,甴源节点开始向周围节点广播路由请求RREQ(Route Request)消息,中继节点接收和转发 RREQ 消息,当有中继节点为目的节点或存在到目的节点的路径时,立即发送路由回复(Route Replay,RREP)消息给源节点,AODV协议按照最短跳数原则进行路由选择[12]。
应用于智能电网环境中的无线传感器网络,需要结合智能电网具体应用场景,以及传感器网络特点,对现有AODV路由协议进行优化设计,包括:(1)传输路径选择仅依据最短路径原则,在有线网络中正确而有效。但在无线网络中,收发端节点间路径最短,即跳数最少,意味着中继节点间的传输距离增加,信号经历的衰落也相应增加,链路更易由于干扰丢包,通信质量不能得到保障,最短路径并不一定是最优路经。(2)无线传感网中,节点能量与发射功率通常有限。AODV算法在路由选择过程中,主要考虑信息传递的高效性,并未考虑到节点剩余能量和节点能量消耗的问题,节点能量耗尽不仅会导致通信链路中断,网络中的关键节点断电会极大地降低网络性能,甚至造成网络中断和瘫痪[13,14]。(3)智能电网中所需传感监测节点数量巨大同时带宽受限,节点数量的增加同时也以意味着节点间通信量的增加,处于网络中心的节点需要频繁地进行数据转发和消息回复,网络拥塞会导致时延增大和投递率下降,影响系统性能[15,16]。
针对以上问题,本文提出了一种应用于电网环境的无线传感器改进AODV路由协议设计。具体的,在路由请求阶段,改进了协议的RREQ消息,增加了用于表示路由转发代价因子权值的COST_MESTRICS字段;在路由发现的过程中,提出了节点电量等级因子和节点负荷状态因子两个参数,作为节点是否参与转发的判断依据;提出了基于节点电量等级因子、节点负荷状态因子以及跳数权值3方面因素的代价因子函数,在路由选择的过程中充分考虑节点能量和负荷状况,避免在处于拥塞状态和剩余能量不足的节点上建立路由。改进的路由协议更符合无线传感网络的应用需求,选择剩余能量多、负载小及跳数短的链路作为路由,提高了数据传输的可靠性、均衡网络的能量消耗,提高了网络的数据传输性能。
本文后续部分组织如下,第二节介绍基于传统AODV协议所做的主要改进。第三节给出优化设计后的改进路由算法流程及详细说明。第四节是应用举例,验证和分析上述算法的优势。第五节是总结。
1.改进的多跳路由优化设计
AODV路由协议的特点是按需建立路由,当节点有通信需求才启动路由发现过程,当该节点路由表中不存在(或已失效)到达目的节点的路由表项时,源节点开始向周围节点广播路由请求消息RREQ,中继节点接收和转发 RREQ 消息,当有中继节点为目的节点或存在到目的节点的路径时,立即发送路由回复消息RREP给源节点,AODV协议按照最短跳数原则进行路由选择。本文针对现有AODV协议的改进主要有:设计路由请求RREQ_CM消息,引入节点电量等级因子,引入节点负荷状态因子,引入代价因子函数,最后形成优化的路由协议算法。
1.1路由请求RREQ_CM消息
首先,改进AODV路由协议中的RREQ消息的帧格式,为RREQ消息分组添加了累计代价函数值字段COST_MESTRICS,扩展后的路由请求RREQ_CM消息帧格式如表1所示。其中,传统的AODV的RREQ帧格式中的以下字段均予以保留并保持一致:分组类型、保留字段、转发跳数计数器、路由请求识别码、目的节点的IP地址、目的节点序列号、源节点IP地址、源节点序列号。增加累计代价函数值字段COST_MESTRICS,用于表示由节点剩余能量、节点符合状况以及跳数三方面信息综合表征的节点路由转发代价。
表1 路由请求RREQ_CM消息帧格式
1.2节点电量等级因子
无线传感网节点采用电池供电,节点电量对于网络性能有重要影响,采用 表示节点剩余电量百分比,如式(1)所示。
式(1)
其中, 为节点当前剩余电量, 为该节点电池最大充电量。将节点剩余电量百分比划分为若干区间,不同区间对应不同的节点电量等级因子。各节点可根据本节点 值确定所属的剩余电量区间,进而计算更新本节点的电量等级因子。优选地,节点剩余电量百分比可采用如下区间划分。
式(2)
根据节点的电量检测模块,检测节点剩余,并计算更新节点电量的百分比,当 时,表明节点能量非常充足,能够承担长时间的数据交换和传输,为该节点赋予最高的能量等级因子,作为转发节点,参与路由;当 时,说明网络中该节点的能量较为充足,可以被作为中间转发节点,为该节点赋予适中的能量等级因子;当 时,说明网络中该节点能量已经不充足,应该避免过多地使用该节点参与路由,如果再长时间的承担路由和转发工作,可能导致节点能量迅速降低,当使用该节点转发,会引起较大端到端时延,为该节点赋予较低的能量等级因子;当节点能量百分比 ,说明节点电量即将耗尽,应避免使用该节点参与路由转发。
1.3节点负荷状态因子
节点负荷状态因子,用于说明节点的符合状况,使用 表示节点的队列长队列长度百分比,具体如式(3)所示。
式(3)
其中, 为节点当前队列长度, 为该节点分组缓存的最大长度。将节点负荷百分比划分为若干区间,不同区间对应不同的节点负荷状态因子。各节点可根据本节点 值确定所属的负荷百分比区间,进而计算更新本节点的负荷状态因子。在无线传感器网络中,节点分组缓存的最大长度 为64。优选地,节点负荷百分比可采用如下区间划分。
式(4)
根据节点的符合状态检测模块,检测当前缓存队列长度,并计算更新节点状态负荷因子。当 时,表明节点当前负荷超重,使用该节点转发,会导致缓存队列溢出,引起较大端到端时延,应该避免使用该节点参与路由,为该节点赋予最高的负荷状态因子;当 时,说明网络中该节点负荷较重,尽量避免使用该节点作为中间转发节点,因为使用该节点转发,会引起较大端到端时延,为该节点赋予较高的节电负荷状态因子;当 时,说明网络中该节点处于轻度负荷状态,可以使用该节点承担路由和转发工作,为该节点赋予适中的能量等级因子;当节点能量等级因子 ,说明节点处于正常工作状态,推荐使用此节点进行路由转发,为该节点赋予较低的节点负荷状态因子。
1.3 代价因子函数
考虑到智能电网系统带宽受限,传感器网络节点能量受限等具体条件的约束,节点的代价因子函数应该考虑:节点负荷状态因子,节点电量因子,和节点跳数权值等三个方面的因素。节点跳数权值可以根据接收到的转发请求报文消息计算得出。节点转发的代价因子函数表示为:
式(5)
各节点在收到RREQ_CM消息后,根据报文信息,得出节点的跳数权值 ,计算并更新节点负荷状态因子,节点电量因子。通过上述3个参数,根据代价因子函数计算,得到节点自身的转发代价权值。之后,需要将本节点的代价权值与RREQ_CM报文中的代价权值累加,得到该路径的代价权值,并填写如本节点的RREQ_CM消息。
式(6)
2.路由协议算法
在上述改进机制的基础上,本文所提出的路由协议算法流程如图1所示。与经典AODV算法比较,改进部分体现在以下几个方面:
(1)发送源节点没有到达目的节点的路由信息时,对发送节点广播的RREQ消息,进行的扩展,改进为RREQ_CM消息;
(2)中间节点接收到消息之后,要根据RREQ_CM,获得上一跳节点的累计代价因子权值;
(3)中间节点根据本节点的剩余电量和节点队列缓存长度,计算本节点的电量等级因子及负荷状态因子;
(4)中间节点根据本节点的电量等级因子及负荷状态因子,判断本节点是否适合传输,不适合则直接将报文丢弃,适合则继续进行消息转发。具体的,通过节点能量等级因子和节点负荷状态因子的计算,如果节点的能量等级因子处于最低值同时节点的负荷状态因子为最高值时(上文中节点能量等级因子和负荷状态因子分别为E5和L1时),说明该节点电量即将耗尽的同时节点负荷较重或缓存队列已经溢出,此时节点若再收到请求转发消息RREQ_CM,则进行丢弃处理,否则进入下一步,计算代价因子函数。
(5)中间节点继续消息转发时,需要基于本节点的电量等级因子、负荷状态因子以及跳数权值,计算并更新本节点的代价因子权值,并将本节点的代价因子权值累计到RREQ_CM消息的代价函数值域,确定本节点与源节点之间的最优路径。
详细算法流程图如下图所示
图2 经过优化设计后的路由算法流程
3.应用实例与分析
下面通过一个应用实例分析本文所提出的改进算法的优势。网络拓扑如图3所示,当新源节点和目的节点需要进行消息传递时,新源节点主动发起路由请求消息,通过中间节点广播,建立路由,传统的AODV协议按照最短跳数原则对路径进行选择,所以当RREQ消息到达接收端时,目的节点会选择路由2或者路由3作为最终路由。但是如果综合考虑路径的节点剩余能量,节点的负荷状况以及节点跳数等因素,求出路径的代价因子权值,这两条路径的跳数最短,但是这两条链路代价因子权值比较大,如果这两条作为传输链路,极有可能发生中断或出现很大延迟,影响网络的整体性能。
因此,采取本文所提出的路由优化设计机制,综合考量节点剩余能量,节点的负荷状况以及节点跳数等因素,选择路径代价因子权值COST_MESTRICS值最小的路由4作为传输数据的链路,保障传输效果的同时,均衡网络的能量消耗和负载的,提高了网络的数据传输性能以及传感器网络的生存时间。
图3 目的节点的路径选择示意图
4.总结
本文对面向智能电网的无线传感器网络多跳路由机制进行了优化设计与研究。针对传统AODV路由算法的潜在缺陷,提出了一系列改进机制,提高路由算法对能量消耗和链路负载的适应性。具体的,通过改进路由请求消息,引入节点电量等级,负荷状态,代价因子函数等手段,能够有效提高数据传输的性能和网络的生存时间。
参考文献:
[1]余贻鑫,栾文鹏.智能电网述评[J].中国电机工程学报,2009,29(34):1-8.
[2]曹军威,万宇鑫,涂国煜,张树卿,夏艾瑄,刘小非,陈震,陆超.智能电网信息系统体系结构研究[J].计算机学报,2013,36(01):143-167.
[3]张勇,张哲,严亚勤.智能电网调度控制系统电网实时监控与智能告警技术及其应用[J].智能电网,2015,3(09):850-855.
论文作者:李梦婷1,万琪2,万军3
论文发表刊物:《电力设备》2017年第24期
论文发表时间:2017/12/19
标签:节点论文; 路由论文; 因子论文; 负荷论文; 电量论文; 能量论文; 消息论文; 《电力设备》2017年第24期论文;