基于QoS约束的网络路由算法的研究
- 格式:pdf
- 大小:239.96 KB
- 文档页数:6
http://www.paper.edu.cn
- 1 - 基于QoS约束的网络路由算法的研究1
赵新伟,李腊元
武汉理工大学计算机科学与技术系,武汉(430063)
E-mail:zxwzxwzxw_2004@163.com
摘 要:AODV是Ad hoc网络中经典的按需路由协议,Q_AODV是在AODV协议的基础上改
进后满足QoS约束的路由协议,CEDAR是一种分级的路由协议,本文对Ad-hoc网络中这两
种常见的路由协议进行了仿真比较和分析,仿真结果表明,当整个网络中要传送的数据包个
数增多时,CEDAR的性能要好于Q_AODV。
关键词:Ad hoc网络,QoS 路由,Q_AODV,CEDAR
1. 引言
从总体上说,目前所提出的各种路由协议可以分为表驱动路由和按需路由两大类。
(1) 在表驱动路由协议(先应路由协议) 中,每个节点试图维护到所有已知目的节点的
路由表,节点之间周期性和在网络拓扑发生变化时交换路由信息, 减少了获得路由的延迟,
使源节点能够立即判断目的节点的可达性, 但是消耗了较多的网络资源, 此外它完全浪费了
一些资源来建立和重建那些根本没有被使用的路由。
(2) 在按需路由协议(反应路由协议)中,节点不需要花费资源来维护无用的路由, 但路
由发现过程费用比较昂贵而且不可预测, 路由延迟与先应路由协议中恒定的查表时间相比,
更加多变。另外,结合表驱动路由和按需路由优点的混合式路由协议方案也被广泛采用。
2.Ad Hoc按需距离矢量路由协议-AODV(Ad-hoc On Demand
Distance Vector)
AODV[1-2]
路由协议是一种按需的距离矢量路由协议。对于采用AODV路由协议的网络,
只有当源节点A要与目的节点B建立通信时,节点A才去请求到达节点B的路由,而不必维护
到达其他节点的路由(因为节点A与其他节点没有建立通信),搜索路由的过程称为路由获得,
与DSDV路由协议类似,AODV路由协议也采用序列号来表示路由消息的新旧。
AODV路由协议是这样获得路由信息的:当网络中的某个节点(源节点)需要到达另一个
节点(目的节点)的路由时,源节点向它的所有邻节点广播一个路由请求消息RREQ,各邻节
点采用泛洪的方式在网络中传播RREQ消息,直至RREQ消息到达目的节点或到达某一能提
供所需路由的中间节点为止。RREQ消息为每一个转发它的中间节点建立一个临时的,到达
源节点的路由(称为反向路由)。当RREQ消息到达目的节点或到达某一能提供所需路由的中
间节点时,一个路由应答RREP消息按照RREQ消息经过的路径反向传送给源节点。在RREP
反向传向源节点时,RREP消息给每一个转发它的中间节点建立一个到达目的节点的路由(称
为正向路由)。上述由RREQ建立的反向路由和由RREP建立的正向路由都是有寿命的,当经
过一个规定的时间而这些路由没有得到更新时,这些路由将被节点从路由表中删除。
在AODV路由协议中,每一个节点都要定期广播HELLO消息(一个特殊的RREP消息)。
一个节点是通过接收其他节点广播的HELLO消息来发现它的邻节点的。
3.Q_AODV
AODV(Ad Hoc On Demand Distance Vector)协议是经典的自组网路由协议。它按需的建
1
本课题得到国家自然科学基金项目(基金号:60672137,90304018)的资助。 http://www.paper.edu.cn
- 2 - 立和维护路由, 采用目的节点排序的方式有效避免路由环路。Chenxi Zhu等在AODV 协议的
基础上设计了一种QoS路由协议,为了描述方便, 称之为Q_AODV[3]
。
该算法为每个路由条目定义五种状态: 空闲(NONE)、接收路由请求(REQ)、已经预约
(RESV)、上游断路(BRK_U)和下游断路(BRK_D),采用软状态方便地保证了QoS 的有效性,
即为每个状态设置计时器, 当计时器超时或者收到路由控制消息时, 节点转移到另外一个状
态。下面描述路由建立和维护的过程。
节点按需进行路由发现, 路由请求分组RREQ中携带业务需要的最小带宽和分组经过的
路径带宽。收到RREQ的节点判断自己当前的链路带宽是否满足业务需要, 如果满足,则更新
RREQ分组中的路径带宽,同时在路由表中增加一个到源节点的路由, 然后把RREQ分组广播
出去,节点状态由NONE变成REQ,此后不再处理该RREQ分组的副本;如果不满足业务的要求,
则丢弃RREQ分组,节点保持NONE状态,仍然可以处理该RREQ分组的副本。为了保证整条路
由的带宽满足业务的要求, 中间节点即使保存了到目的节点的路由,也不能回复路由应答。目
的节点收到路由请求,沿RREQ分组经过的路由向源节点发送应答分组RREP,收到RREP分组
的节点,在本节点预约资源, 状态由REQ变成RESV,源节点收到RREP,QOS路由建立成功。
协议按需进行路由维护,节点转发分组的时候,延长相应路由条目的RESV状态的有效时
间。当处于活跃路径上的节点检测到自己与下游节点的链路中断,立即向源节点报告链路失
败, 同时把自己的状态由RESV变成BRK_U,但是此时并不释放资源,在BRK_U状态的有效时
间内又收到了来自同一个源节点的路由请求, 就继续使用上一次为该流预约的资源, 节点的
状态相应的由BRK_ D转化成REQ。在一个状态的有效时间里没有收到控制消息, 转化为
NONE状态。检测到自己与上游节点出现断路情况也做同样的处理。
Q _ AODV 协议是按需的路由协议,链路状态信息携带在路由请求分组中,只引入了很
少的开销;采用“软状态”的方法保证QoS 路由的有效性,每个状态设置生存时间,计时器超时
而没有被更新, 则认为失效, 触发路由维护。这些作法减少了路由控制开销, 而另一方面,也
增加了路由建立和修复的时间。
4. 核心提取的QoS 路由协议CEDAR
核心提取的QoS 路由协议CEDAR[4-5]
(core-extracted distribuited routing protocol)算法是
一种分级的路由协议。网络中的节点分成统制节点和从属节点两类,由所有的统制节点组成
“核心网”。CEDAR 的实现分成3步:核心网络的建立、链路状态信息的传播和QoS路由的计
算。
4.1 核心网的提取和维护
核心网络(core)由核心节点以及连结相邻的核心节点之间的链路组成。核心网络的构建
在组网期,需要周期的维护。当一个节点断开了与其统制节点的连接, 它或者任命一个核心节
点作为它的统制节点, 或者推荐一个邻节点加入到核心节点集, 或者自己加入到核心节点
集。如果一个核心节点发现它与所有的从属节点断开了连接就与邻节点断开虚链路, 离开核
心节点集, 并且在核心节点集中找一个核心节点作为自己的支配节点。
4.2 链路状态信息的传播
核心节点维护自己管辖范围内的拓扑和链路状态信息, 还要记录距离自己比较远的可
靠链路信息。节点监测与邻居节点的链路带宽, 当发现变化幅度超过某个值, 就把报告给自
己的核心节点。链路状态的变化信息称为“加减波”, 由核心节点通过核心广播在网络中传http://www.paper.edu.cn
- 3 - 播。“加减波”信息的传播根据一定的策略, 这个策略保证了: 链路质量降低的“减波”比链路
质量增加的“加波”信息传得快, 而质量高的链路信息传得远。
4.3 路由的计算
QoS 路由的计算分成两个步骤: 核心路径的建立和QoS 路由的建立。
首先利用核心广播建立源节点的统制节点到目的节点的统制节点的核心路径。然后, 沿
核心路径搜索满足业务要求的QoS路由。
如果在一次搜索中无法找到,则建立到距离自己最远的核心节点的核心路径以及满足
QoS 要求的路由, 然后以该节点为源,重复以上的工作,经过若干次迭代,最终得到QoS 路由。
如果中间过程找不到满足要求的路由,路由发现失败。
CEDAR 综合了反应式和先应式两种因素。加减波机制为QoS 路由计算提供了稳定的
链路状态信息,加减播门限的设定对协议开销和性能有很大的影响。按需的进行路由的建立
和维护,利用核心网,把路由发现限制在少数核心节点的范围内,一定程度上降低了开销。
CEDAR 引入核心网的概念,协议的性能很大程度取决于核心网的稳定程度和有效性。
当网络拓扑变化比较剧烈时,核心路径频繁中断,核心网的收敛需要一段时间,而在此之前建
立的QoS路由都是无效的。
目前关于CEDAR的研究十分活跃, 有的学者把CEDAR和AODV 结合起来,对CEDAR
的性能进行改进
5.仿真试验
利用MANET工作小组推荐的NS2[6-7]
仿真软件对AODV 性能进行测试。NS2是由CMU
Monarch研究小组在原来的NS基础上扩展的可以用于对多跳无线网络进行仿真的软件。实验
选择Q_AODV协议为参照对象,考察和比较两个协议的路由开销,报文发送成功率、吞吐量、
路由负载这三项指标。实验MAC层协议采用802.11,节点数的取值分别为50、100、150、200、
250、300、350,400和450, 仿真节点移动范围设置为长方形区域。节点移动速度低速时选
择最大值为1m/s,高速时最大速度为20m/s,移动到目标后的停顿时间为30秒,并假设包丢失率
为0, 仿真中节点的运动模型采用“random waypoint”模型。仿真时间是900 s。预先设定运动
范围、节点个数、最大速度、网络负载,产生不同的场景文件,作为仿真测试的输入。实验中
每个样本数据由5次仿真结果的平均值得到。
图1路由开销 http://www.paper.edu.cn
- 4 -
图2报文发送成功率
图3吞吐量
6.仿真结果分析
从图1可以看到,随着节点数的增加,两种协议下得到的路由开销都在增加,这是因为
当参与传递数据报文的节点数增加时,整个网络变得越来越繁忙,传递的数据报文数也越来
越多,从而使得路由开销也随之增加,另外,从图1还可以看到,当节点数小于200时,CEDAR
协议下所得到的路由开销要大于Q_AODV,这是两种协议自身的特性决定的,Q_AODV 协议
是按需的路由协议, 链路状态信息携带在路由请求分组中, 只引入了很少的开销;采用“软状
态”的方法保证QoS 路由的有效性, 每个状态设置生存时间, 计时器超时而没有被更新, 则
认为失效, 触发路由维护,这些作法减少了路由控制开销,而CEDAR协议是一种分级的路
由协议,CEDAR 的实现分成3 步:核心网络的建立、链路状态信息的传播和QoS 路由的计
算,因此路由的建立需要一定的时间,而随着时间的推移,情况就不同了,当CEDAR核心
网络的建立完成以后,加减波机制为QoS 路由计算提供了稳定的链路状态信息, 加减播门限
的设定对协议开销和性能有很大的影响。按需的进行路由的建立和维护, 利用核心网, 把路
由发现限制在少数核心节点的范围内, 一定程度上降低了开销,因此,我们看到,随着节点
数的增加,CEDAR协议下所得到的路由开销要小于Q_AODV。