当前位置:首页 期刊杂志

一种基于AODV的改进协议的能量优化方案

时间:2024-05-20

方胜吉,李广庆,黄 岩

吉林医药学院计算机教研室,吉林吉林 132013

0 引言

AdHoc 网络中的节点具有移动性、多跳性及临时性,并且节点本身是由电池供电,这就限制了AdHoc 网络的持续时间。当部分网络节点没有能量时将会给网络的整体性能带来严重影响。所以,AdHoc 的能量问题广受关注。

AODV 协议是一个建立在DSR 和DSDV 基础上的按需路由协议,分别借鉴了DSDV 的目的节点序列号及DSR 的路由发现的思想。相比之下,AODV 协议有着更好的可扩展性,更适合在移动性强、负载高的网络环境中使用。针对AODV 协议中移动节点能耗不均衡,结合AdHoc 网络节点密度与能耗的关系,本文提出一种基于AODV 协议的改进协议能量优化方案。

1 AODV 协议详述

AODV 协议具体通过路由发现和路由维护两个过程实现的。

1)路由发现过程:AODV 协议中,当源节点需要与某个节点通信,并且未包含该点的路由信息时,会向所有相邻节点发送RREQ 分组,路由发现过程开始。相邻节点首先确认RREQ 分组是否来自自身以及之前是否收到过该分组信息,如果是则直接丢弃,否则会发送该RREQ 分组并建立反向路由。

在RREP 分组沿着反向路径传到源节点的过程中,中间节点都会刷新节点信息、生存时间和节点序号,其它反向路由会因超时而自动删除。当源节点收到RREP 分组时,路由发现过程结束;

2) 路由维护过程: AODV 协议只维护处于活动状态的路由。AdHoc 网络中,当处于通信状态的源节点移动到邻节点通讯范围外,链路就会中断,源节点需重发路由请求,在活动路由上的中间节点一旦发现其到下一跳邻节点的链路中断,便会向其上端活跃节点发送RERR 分组。当源节点收到RERR 分组后,如果仍要与目的节点通信,则需重新发起路由发现过程。

3 Pro-AODV 协议

Pro-AODV 协议继承了AODV 协议的按需特性,既节点只在有数据发送时才建立路由,更新路由表及网络拓扑结构;Pro-AODV 协议的路由发现过程会尽量避免电量低的节点,选择电量高的节点参加数据的转发。与只将最小跳数作为衡量标准来选择和维护路由信息的协议不同,Pro-AODV 协议同时考虑到了路径整体上的能耗,与AODV 协议相比,路由维护过程不光在链路中断的情况下进行,当侦测到路由链路上某个中间节点的剩余电量低于预设的门限值时,也会发起路由维护过程。

Pro-AODV 协议将路由的代价定义为了路径上最大独立节点剩余电量代价与路径跳数的乘积。“式1”为路由代价的表达式 :

其中L 为从源节点到目的节点的某条路由,hc 表示转发跳数,i 表示中间节点,ci 表示i 点剩余电量代价。其中ci 并非节点剩余电量的倒数,而是用分段函数表示,如“式2”,式中E 为节点初始能量值,e(i)为节点剩余电量,Threshold 为节点剩余电量的门限值。初始阶段,网络中节点剩余电量很高,Pro-AODV 协议与AODV 协议的路由选择方式相同,这样做可保持网络中各节点结余能量的均衡使用。

4 Pro-AODV 协议分组格式改进

为了实现Pro-AODV 协议,需对AODV 协议中的RREQ、RREP 分组进行扩充,扩充的RREQ 是在原有结构上增加一个16bit 的REQMK 字段用于记录源节点到当前节点的最大剩余电池能量代价,扩充的RREP 是在原有结构上增加一个16 位的REPMK 用于记录目的节点到当前节点的最大剩余电池能量代价。

5 Pro-AODV 协议操作过程

1)RREQ 分组的产生:与AODV 协议相同,在源节点发起路由发现过程时,会广播一条RREQ 分组。区别是,Pro-AODV协议要对RREQ 分组中新增的REQMK 域进行设置,其初始值为0,表示RREQ 分组刚从源节点发出;

2)RREQ 分组的处理与转发:首先,在节点的缓冲区中设置一个变量S,节点收到RREQ 分组后,对比S 与接收到相同RREQ 分组的次数,确定该RREQ 分组的处理方法,当S 等于1时,Pro-AODV 协议与AODV 协议对RREQ 分组的处理方式相同;当S 不等于1,且节点接收到相同RREQ 分组次数小于等于S 时,此分组将被后续的过程处理;若收到的RREQ 分组次数大于S,直接丢弃该RREQ 分组。当节点首次接收到RREQ 分组时,首先会将RREQ 消息中携带的源节点IP 地址等信息填入自身缓存中,然后根据分组内REQMK 域与跳数域中的信息计算出路由代价,并填入广播ID 的缓存中[4]。若之后又收到相同且被处理次数小于S 的RREQ 分组,就对其所经历路由的代价与广播ID缓存中的路由代价做出对比,然后根据结果做出相应的处理。若RREQ 所经历路由的代价小于广播ID 缓存中的路由代价,就更新广播ID 缓存中的路由代价;反之直接丢弃该RREQ 分组。RREQ 分组被节点接收后,也会与AODV 协议一样建立反向路由

3)RREP 分组的产生:以下两种情况会产生RREP 分组:

(1) 在目的节点收到RREQ 分组后产生;与AODV 协议对收到的第一个RREQ 分组直接进行回复不同,Pro-AODV 协议中,目的节点每收到一个RREQ 分组都会立即沿着RREQ 分组传递的路径向源节点回复一个RREP 分组,这就会造成源节点先后可能收到多个RREP 分组的情况。此时,源节点会对比先后收到的多个RREP 分组,根据分组中携带的信息选出较优的一条路径作为数据传输的路由。与AODV 协议不同,目的节点回复的RREP 分组中还需将REPMK 域的内容置为0,表示该RREP 分组是由目标节点发送的;

(2)中间节点接收RREQ 分组后产生:收到RREQ 分组后,它首先会判断自身剩余电池能量与门限值Threshold 的大小关系。若小于门限值,则直接丢弃该RREQ 分组,反之则回复RREP 分组。

4)RREP 分组的接收与转发:当节点收到RREP 分组后, Pro-AODV 协议首先会根据RREP 分组中目的节点序列号与路由表条目中相应序列号的大小关系决定是否更新路由表的条目:若两者相等,会通过RREP 分组中REPMK 内容与转发跳数内容的乘积来计算路由代价,对比后将相应路由表条目更新为较小的。若以上比较都相同,最后会判断RREP 分组与路由表条目中路由跳数的大小,将路由表条目中的跳数更新为小的一项。当某一中间节点的正向路由建立或更新好后,会通过反向路由回传RREP 分组。

6 结论

本文首先介绍了Ad Hoc 网络节点密度对网络能耗的影响。然后介绍了一种基于AODV 协议的路由改进协议——Pro-AODV协议。新协议改进了AODV 协议中的分组结构、路由发现及路由维护过程,缩减移动网络节点的能耗,延长其生存时间,提高网络的寿命。

[1]曾静.移动Ad hoe多播中的节能技术研究[D].吉林大学,2007,3.

[2]赵迪.Ad Hoc网络路由协议性能研究与AODV协议的优化[D].西南交通大学,2009.

[3]张学,陆桑璐,陈贵海,等.无线传感器网络的拓扑控制[J].软件学报,2007(4),18(4):943-954.

[4]Newman M E J.Random graphs as models of networks//Bornholdt S,Schuster H G eds. Handbook of Graphs and Networks.Berlin: Wiley-VCH,2003::35-68

[5]路纲,周明天,牛新征,等.无线网络邻近图综述[J]. 软件学报,2008,19(4):888-911.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!