论文部分内容阅读
Ad Hoc网络是一种不依赖于固定基础设施的、自组织的无线网络。网络中所有节点的地位平等,具有无中心、多跳路由、拓扑结构动态变化等特点。在军事、灾难救助、移动办公等领域有着广泛的应用前景。
Ad Hoc网络一般采用平面式结构,但随着网络中节点的增多及节点移动性的增强,会出现路由开销增加,路由频繁中断,网络处理能力下降等问题。为此,人们提出了分簇式结构。在通常的分簇Ad Hoc网络中,簇由簇头和簇成员组成,簇头负责簇内成员节点之间的通信及本簇成员节点和其它簇成员节点间的通信。因此,如何选择出最合适的簇头节点,是分簇算法的关键问题。另外,Ad Hoc网络固有的节点移动性可能造成网络中链路的频繁断开,节点间的通信很难得到保障。因而,如何建立和维护链路,提供更好的路由服务,成为Ad Hoc网络路由协议研究的重要问题。
本文在综合分析已有分簇算法的基础上,提出了一种基于权重的动态分簇算法(WDCA)。首先,该算法根据簇内成员数动态调整簇成员到簇头的最大跳数,打破了传统分簇算法中固定最大跳数的限制,保障了簇头节点位于簇的中心位置。具体方法是,事先设定最佳簇成员数和簇头到簇成员的最大跳数,当簇头的一跳邻居中能够加入该簇的节点都加入该簇后,如果簇成员数仍没有达到预先设定的最佳簇成员数,则可允许距簇头两跳的节点加入该簇,直到该簇的簇成员数达到最佳簇成员数或者簇头到簇成员的最大跳数达到预先设定的最大跳数。其次,该算法在选择簇头节点时,综合考虑了节点的邻居数、与其邻居节点的相对速度、到其邻居节点的平均距离、电池能量等因素,使得选出的簇头更趋于合理。仿真结果表明,与经典的加权分簇算法(WCA)相比,WDCA算法的簇头稳定性和网络负载均衡都有显著提高。
利用WDCA分簇算法,本文提出了动态分簇的AODV路由协议(DC_AODV)。在DC_AODV中,每个簇成员都有到簇头的路由,簇头节点负责簇内节点的通信与簇间路由的查找。簇间路由采用与AODV类似的按需路由发现策略,只有当节点需要与另一个簇中的节点通信时才发起簇间路由的查找工作。考虑到簇头节点既要管理与维护簇内路由,又要查找簇间路由,其能量消耗远远大于簇成员节点,因而DC_AODV建立路由时,尽量避开簇头节点,以减少簇头节点的能量消耗。仿真结果表明,与AODV协议相比,DC_AODV协议的数据报文发送成功率有显著提高,平均路由发现时间也有明显减少。