搜索
您的当前位置:首页正文

一种用于Ad Hoc网络的分簇算法

来源:尚车旅游网
维普资讯 http://www.cqvip.com 2007年12月 舰船电子对抗 Dee.2007 第3O卷第6期 SHIPB0ARD EI ECTR0NIC C0UNTERMEASURE Vo1.3O No.6 一种用于Ad Hoc网络的分簇算法 刘长利,徐神 (电子工程学院,合肥230037) 摘要:Ad Hoc网络是动态变化的拓扑结构,具有无中心和自组织的特点,如何对它进行有效地管理至今没有得到 很好的解决。提出了一种基于权值的分簇算法,有效解决了这个问题,从而提高了网络管理的灵活性和可扩展性, 使之更适合于管理大规模、多种环境的Ad Hoe无线网络。 关键词:Ad Hoe网络;权值;分簇算法 中图分类号:TN915.07 文献标识码:A 文章编号:CN32 1413(2007)06—0091—03 A Kind of Clustering Algorithm Used for Ad Hoc Network LIU Chang—li,XU Yi (Electronic Engineering Institute.Herei 230037,China) Abstract:The Ad Hoc network is the dynamically variational topological structure,and has the characteristics of no-centre and self—organizing.how to manage it effectively has not been solved wel1 yet.This paper puts forward a kind of clustering algorithm based on the weight value,which effectively solves the problem and improves the agility and expansibility of the network manage—— ment in order tO manage large scale Ad Hoc wireless networks under different kinds of conditions. Key words:Ad Hoc network weight value;clustering algorithm 0 引 言 但是建立和维护簇结构会引入一定的开销,可 以通过设计合理的分簇算法来减少这种开销。总的 Ad Hoc网络由自由移动的节点组成,节点间 来说,分簇结构可以对网络中的移动节点进行有效 通过无线链路进行通信。网络的组成不需要预先架 组织并合理分配网络资源。因此,分簇的网络结构 设的基础设施,节点以自组织的方式构成l临时的通 可以在很大程度上提高Ad Hoc网络的性能和实用 信系统,可以灵活地适应拓扑结构的变化。Ad Hoc 性。分簇算法的选择依赖于应用需求、网络环境和 网络的体系结构主要有平面结构和分级结构2种。 节点特征。不同的分簇算法具有不同的目标,包括 平面结构中所有节点地位平等,共同协作完成节点 最小化簇计算和维护开销、最小化簇头、最大化簇稳 间的通信。该结构中不存在瓶颈节点,但是可扩充 定性和最大化节点生存时间等。 性差。在分级结构中,网络节点按照分簇算法分成 若干簇,每个簇由】个簇头和若干簇成员组成。簇 1 分簇算法性能的评价参数 头相当于1个本地控制节点,它负责管理本簇范围 通常,分簇算法满足假设: 内的节点,负责簇内节点间的通信,同时为簇间节点 (1)在网络初始化时,每个节点可以通过交互 的通信提供合适的路由信息。分级结构的网络可扩 控制消息知道其邻居节点的ID号。 充性好,网络规模不受限制。当由于节点的移动、加 (2)1个节点发出的消息能够被其所有的邻居 入或退出而引起拓扑结构发生变化时,可以将这种 节点在很短时间内正确地收到。 变化的影响限制在一定区域内而不会扩散到整个网 (3)在分簇算法执行期间,网络拓扑不发生 络中。 改变。 收稿日期:2006—09—30 维普资讯 http://www.cqvip.com

92 舰船电子对抗 第3O卷 主要评价参数:分簇数目就是簇首的数目,分簇 数目越多,所使用的信道数量就越大。当簇之间相 距两跳以上时,就可以使用同一信道,即空分复用, 这样可以有效利用为数不多的信道资源。 节点到节点的跳数对分组的传输时延有很大的 影响,采用最短路径算法,以增加网络的传输效率, 簇的大小(簇的规模)指簇内所含节点的数目,表示 使用同一信道的用户数目,簇的大小关系到每个节 点究竟有多少通信能力的问题。如果数目过大,在 每个节点业务量增大时,容易产生拥塞,而且每个节 点的碰撞概率也会大大增加,这必须通过簇首协调, 限制每个节点的增加。总之,簇的大小选择得越合 适,网络性能就越好。通常簇的大小可由功率控制 改变节点之间的通信链路状态来实现,簇的大小的 优化就是控制簇内节点数,以便每个节点乃至整个 网络达到最高的通信容量。 一个好的分簇算法应该使算法对节点的运动具 有一定的稳定性,即当只有一些节点发生移动或网 络结构发生较慢变化时,分簇结构不发生剧烈变化, 整个网络只是针对发生变化的部分进行分簇调整, 使脱网的节点在最短时间内就近加入簇,而其余部 分保持不变。簇首的频繁变动会导致簇首无法对其 簇进行有效控制,而失去对该区域的控制能力,同时 严重影响其它一些与之相关的协议性能的好坏,增 加用于重新控制的开销,并降低信道的利用率。下 面将介绍一种基于权值的Ad HOC网络分簇算法。 2 基于权值的Ad HOC网络分簇 算法 2.1 算法思想 本算法是一种基于权值的分簇算法,每个节点 被赋予1个权值w( ).通过权值的比较来选择 簇首,进而生成整个簇。在权值的计算中,将综合考 虑节点所处的网络环境和本身状态。一个节点是否 适合担任簇首主要受到2个因素的影响: (1)节点的网络环境。包括 与其邻居节点之 间的相对速度和它的度D( )。这个相对速度越 低,则节点之间的相对位置变化越小,生成的簇结构 越稳定 临近节点的个数越多,则网络的统治集越 小,信息传输的路径越短。并且如果其与临近节点 的距离之和越小,临近节点收到的信号衰减也就相 应越少。所以选节点密集处的某适合节点为簇头, 一方面可以保证各节点收到正确的信号;另一方面 各节点依据距离调整自己的放射功率来保证与簇头 通信,能达到节能的目的。 (2)节点本身状态。包括节点的发射功率和节 点的剩余电池能量。簇首节点除了要完成本身的通 讯任务外,还要维护簇的结构、回应其成员节点的通 讯请求、簇间寻路等,因此应尽量选取功率大、电池 能量高的节点作簇头,因为功率大的节点作簇头,辐 射范围大,包含节点多,可以减少簇头的总个数,提 高网络的吞吐率。而电池能量大的节点作簇头,可 以保证节点扮演簇头的时间长,减少簇的重构,增加 簇的稳定性。因此簇首节点的选取应该满足一定的 处理能力和能量状态要求,才不至于成为通讯瓶颈。 节点 的权重计算公式为: W( )一W S +W Sl。 (1) 式中:W( ),W Wl。 ,S Sl(1c分别为节点 的 权值,网络状态权重,本机状态权重,网络状态值和 本机状态值,且有w +W-。。一1。 调整w 和w。。 可以适应多种网络环境。例如 当网络拓扑变化较大,节点相对移动较怏,而各个节 点的处理性能基本相当时,就可以把w 和w 设 置大一点以保证簇结构的稳定性。如果情况相反, 则可以调整w 。 和w。。 的值以便选择处理性能更强 的节点担任簇首,避免传输瓶颈的产生。 s 用来描述当前的网络状态。它本身也是一 个加权和。它包括节点与邻居节点的相对移动速度 V I( r( ))和节点 的度D( )。这里相对速 度是以连续2个报文的接收功率P的比值作为节 点相对移动性测量的依据,称之为节点 对应邻居 节点 ,的相对移动量。其计算公式如下: p re】(i,J)一10lg (2) 』i一・i 所以网络状态值S ,的计算方法如下: S 。 一W1×V re1( 。r(V ))+W2×D(V )(3) 式中:w +W 一1。调整w 和w 可以使网络参 数S 适应于多种网络环境。 S。。 用来描述节点本身的状态。它包括节点的 计算速度、存储器大小和电池剩余量。这些内容反 映了节点对数据包的处理能力和自身的能量状态。 它是衡量一个节点是否适于担任簇首的另一个重要 因素。其计算方法如下: Sl。 =W ×C(V.)+W2×PW(V ) (4) 式中:C(V )为本机性能量化值,它主要以计算速 度、存储器大小为基础;Pw(V 为剩余能量的量化 维普资讯 http://www.cqvip.com

第6期 刘长利等:一种用于Ad Hoc网络的分簇算法 93 值,它以电池剩余能量为基础。 2.2 算法描述 本算法是一个动态、分布执行的算法。每个节 点被赋予1个全局唯一的ID号。算法用HELL() 消息建立和维持与相邻节点的链路。节点 用 CH(V )消息宣布自己为簇首节点。用JION(V,, V )消息请求加入以V,为簇首的簇,成为其成员节 点。若V,为簇首节点,则用R(V ,V,)消息拒绝节 点V 加入请求,或者用A(V ,V,)消息接受节点 的加入请求。 2.2.1簇的构建 在网络初始建簇或有新节点V加入时,都将通 过初始化过程来构建簇,决定节点在网络中应该担 当的角色。各个节点通过HELLO消息建立邻接链 路,计算出初始权值,并通过HELI O消息来传输自 己的权值和可用度。各个节点通过比较邻居节点的 权值来选择执行相应的子过程。若节点V 判断自 己为相邻节点中权值最大的节点,则向所有邻居节 点发送CH(V )消息,宣布自己成为簇首节点。开 始接受邻居节点的加入请求,同时在HELLO消息 中设置表明自己为簇首的标志位和所有已经接受的 成员节点的ID号。若节点V 判断自己邻接节点中 V,的权值大于自己,同时V 发出了CH(V,)消息, 那么节点 发出JION(V ,V )消息,请求加入。 若节点V 收到了簇首V,发出的A(V ,V )消息或者 在V,的HEI LO消息中设置表明自己成为成员节 点的标志位和簇首的ID号,则Ⅵ判断自己的请求 被拒绝。若节点V 收到V,的R(V ,V,)消息或者在 2个连续V,的HEI LO消息中找不到自己的ID号, 则V 判断自己的请求被拒绝。若节点 发现所有 权值大于自己的邻居节点,是簇首节点但可用度为 零,或者作为成员节点加入其它簇,那么节点V 将 发出CH(V ),宣布自己成为簇首。 2.2.2簇的合并 如果一个临时簇头CH(V )被包含在另一个簇 头CH(V,)里面,则子簇头CH(V )连同它的成员 一同加入到父簇头中,对于合并有一定的上限规则, 例如跳数和节点数等。在合并之后,这一高级的簇 头被作为新选簇的簇头。 2.2.3簇的更新和维护 在簇的初始化完成以后,随着节点的移动,能量 下降以及障碍物等因素的影响,网络的拓扑结构会 发生变化,网络链路会发生新建和失效。当发生下 列情况时都有可能使簇内成员组成发生变化:(1)1 个新节点进入网络;(2)1个已存在的节点离开网 络;(3)1个节点进入新的簇头覆盖区;(4)1个节 点离开现在的簇头覆盖区。 因为簇头与每个节点之间定期进行通信,当簇 头确认1个节点离开该簇时,则将该节点从簇内成 员删除:当收到新的节点信息且满足所需的条件(如 跳数、节点数)时,则加入该节点为簇成员,若不满足 条件,通知该节点。该节点则需在运动中继续寻找 新的簇头,若找不到,宣称自己为新的簇头,引发簇 的重构。当移动的两簇头之间的距离小于等于某一 规定要求时,也要引发重构。 3 结束语 本文提出的算法综合考虑了Ad Hoc网络节点 本身状态和网络环境对网络分簇的影响,以权值作 为选举簇首的关键因素,从而使该算法更适合于多 种网络环境下的大规模Ad Hoc无线网络管理,更 有利于在此基础上进行的路由协议、调度算法等的 设计。然而簇的大小究竟多少才能更好地保证整个 网络的负载平衡,提高网络吞吐率,更好地进行簇的 维护等,这些都是算法需要改进的地方。此外如何 在基于簇的管理基础上设计具有节能策略、安全保 障、组播功能和QoS支持等扩展特性的路由协议等 都需要进一步深入研究。 参考文献 [1] Alwan A,Bagrodia R,Bambos N,et a1.Adaptive mo— bile multimedia networks[J].IEEE Personnal Corn— mun,1996,3(2):34—51. [2] Mainak Chatterjee,Sajal K Das,Damla Turgut WCA. A weighted clustering algorithm for mobile ad hoc net— works[J].Journal of Cluster Computing,Special issue on Mobile Ad hoc Networking,2002(5):193—204. E3] Wang Hai-tao,Tian Chang,Zheng Shao—ren.A novel clutering algorithm in ad hoc network and its perform— anee simulations[J].Journal of System Simulation, 2003,15(2):193—197. [4]Gerla M,sai J T C.Multicluster mobile,muhimedia ra— dio network[J].Wireless Networks,1995,1(3):255 —265. [5]Kaixin Xu,Xiaoyan Hong,Geral M.An ad hoc network with mobile backbones[J].IEEE.ICC,2002(5):3138 —3】43. 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top