首页> 中国专利> 一种基于带宽约束和最小负载的移动自组网路径选择方法

一种基于带宽约束和最小负载的移动自组网路径选择方法

摘要

本发明涉及一种基于带宽约束和最小负载的移动自组网路径选择方法,所采用的方法是:当节点需要和另外一个节点传输业务时,节点广播路由请求分组;中间节点收到路由请求报文时,比较本节点和目的节点的地址;当目的节点收到从源节点来的路请求时,检查当前的时间是否小于在规定的时间内接收路由请求的时间。本发明解决了移动自组网中由于拓扑结构动态变化而使带宽资源难以确定和由于负载分配不均衡而导致网络中负载重的节点快速耗尽能源,使网络的连接性快速减弱而最终缩短了网络总体生存时间的难题。并使用NS2仿真工具对本发明与现有的AODV协议进行了比较,仿真结果表明,BLLM在分组投递率、丢包率和吞吐量等方面都优于AODV。

著录项

  • 公开/公告号CN101123576A

    专利类型发明专利

  • 公开/公告日2008-02-13

    原文格式PDF

  • 申请/专利权人 武汉理工大学;

    申请/专利号CN200710053276.6

  • 发明设计人 李腊元;何昆鹏;李春林;郑四海;

    申请日2007-09-20

  • 分类号H04L12/56(20060101);H04L12/28(20060101);H04Q7/20(20060101);

  • 代理机构武汉开元专利代理有限责任公司;

  • 代理人潘杰

  • 地址 430070 湖北省武汉市武昌珞狮路122号

  • 入库时间 2023-12-17 19:45:36

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-11-06

    未缴年费专利权终止 IPC(主分类):H04L12/56 授权公告日:20110209 终止日期:20120920 申请日:20070920

    专利权的终止

  • 2011-02-09

    授权

    授权

  • 2008-04-09

    实质审查的生效

    实质审查的生效

  • 2008-02-13

    公开

    公开

说明书

技术领域

本发明属于一种移动网络领域,具体地讲是一种基于带宽约束和最小负载的移动自组网路径选择方法。

背景技术

近年来,随着多媒体应用日益普及和移动自组网的商业化,在移动自组网中提供服务质量已经成为一个不可回避的问题,服务质量保证也已成为通信系统必须支持的一项重要功能,对于移动自组网也是一样,服务质量是指发送和接收信息的用户之间,以及用户与传输信息的集成服务网络之间关于信息传输的质量约定,是网络传输业务流时需要满足的一系列服务要求,一般包括:带宽、时延、时延抖动、分组丢包率等。服务质量保证就是网络要采取一系列策略和措施来确保对用户业务承诺的服务质量。服务质量保证是一个全局问题,网络中的各节点、节点上各个协议层次要相互协作,共同完成。为了保证服务质量,要掌握尽量准确的网络状态信息,比如链路的可用带宽、时延等,这样才能根据业务的服务质量需求,选择链路质量好、具有足够可用资源的路径传递数据。

在移动自组网中,由于功率与带宽受限,路由协议应该在移动节点之间公平地分配路由任务。而传统的大多数自组网路由协议运行的结果都是使产生的众多路由经过一小部分处于网络中心位置的节点。大量数据通过少量节点传输必然导致网络出现和瓶颈,使分组排队等待时延和分组丢失增加,网络的连接性将随之减弱,网络的分裂最终导致呼叫失败,缩短了网络的总体生存时间。因此,有必要在路由选择时考虑网络中各节点的负载和拥塞情况,对网络进行负载均衡,使网络保持、高效、稳定的运行,网络的综合性能达到最优。

NS2是network simulator(网络模拟器)的简写,它是一个离散事件模拟器,由美国加州Berkeley大学LBL,Xerox PARC,UCB和USC/ISI共同开发的网络仿真集成环境,具有开放性好、扩展性强、适用于Windows和Linux系统平台的特点,是一个出色的研究网络拓扑结构、分析网络传输的仿真工具。NS2由OTc1和C++两种语言编写而成。C++语言运行速度比较快,容易实现复杂的数据类型和精确的、复杂的算法,因此,适合具体协议的详细模拟和实现;OTc1语言运行速度比较慢,但是可以很方便地(并且交互的)修改,不需要编译,也不容易出错,因此它适合用来做模拟配置。NS2可以完成的功能包括:①构建网络拓扑。NS2中网络拓扑是由node和link构成,其中node大约可被看作是对实现网络底三层设备的一个模拟,link则可被视为是对物理传输链路的模拟。②实现RTP协议的Agent。NS2中,Agent是对某一个网络协议的模拟,NS2预先实现了UDP Agent和TCP Agent以及一些常用网络应用协议的Agent。③加载应用数据流由Application/Traffic来实现。RTP Agent本身已实现了产生数据流的工作;无须加载Application。

发明内容

本发明的目的是提供一种在保证为业务提供传输所需要的带宽的基础上选择一条负载最小的路径进行业务传输的基于带宽约束和最小负载的移动自组网路径选择方法,从而保证了业务在网络中快速、高效和稳定的传输,使网络的综合性能达到最优,从而解决在移动自组网中,由于拓扑结构动态变化,使带宽资源难以确定;另一方面,对于负载分配不均衡而导致网络中负载重的节点快速耗尽能源,使网络的连接性快速减弱而最终缩短了网络总体的生存时间的问题。

为了实现上述目的,本发明所采用的方法是:在移动自组网中作传输业务时,按下述步骤完成:

第一步骤:当节点需要和另外一个节点传输业务时,节点广播路由请求分组,路由请求分组包括以下内容:目的节点IP地址和序列号、源节点的IP地址和序列号、业务需要的带宽、业务的ID号、负载信息、跳数;

第二步骤:中间节点收到路由请求报文时,比较本节点和目的节点的地址;

第三步骤:当目的节点收到从源节点来的路请求时,检查当前的时间是否小于在规定的时间内接收路由请求的时间。

本发明解决了移动自组网中由于拓扑结构动态变化而使带宽资源难以确定和由于负载分配不均衡而导致网络中负载重的节点快速耗尽能源,使网络的连接性快速减弱而最终缩短了网络总体生存时间的难题。并使用NS2仿真工具对本发明与现有的AODV协议进行了比较,仿真结果表明,BLLM在分组投递率、丢包率和吞吐量等方面都优于AODV。

附图说明

图1为5个节点的连通图。

图2为由7个节点组成的无线网络。

图3为本发明的流程图。

图4为本发明的分组投递率图。

图5为本发明的丢包率图。

图6为本发明的吞吐量图。

具体实施方式

下面结合附图对本发明作进一步的详细描述。

移动自组网中节点之间共享传输媒介是无线网络的显著特点之一,这一特性导致相邻节点间的信号会相互干扰,从而影响信息的正常传输。通过一个简单的例子说明考虑带宽因素确实有可能改善网络的性能。图1是5个节点的连通图,图中的点代表网络中的节点,图中的边代表节点之间的无线链路,假设信道的容量为C。当节点1和节点5要通信时,传统的基于最短路径的路径选择方法会选择路径C-D-E。从图中可以看出,由于链路C同时收到链路A、B、D和E的干扰,它的有效带宽只能达到C/5。如果所传输的业务流要求的带宽超出C/5,通信的质量将得不到保证。若选择路径A-B-D-E,将获得C/3的有效带宽。所以考虑节点间的相互干扰,把节点的带宽资源作为路径选择的标准,会获得更好的传输性能。进一步从排队论的角度考虑,在每个节点中都有数据包在队列中等待发送,若在进行路径选择时不考虑队列中数据包的个数,会大大增加数据包在队列中的等待时延,从而增大了数据包从源节点到目的节点的时延,同时,导致队列中的数据包的个数超过缓冲区的限度而发生丢包的现象。

对任意的移动自组网可以表示为一有向图G={V,E},V、E分别表示节点集和链路集,若P是由链路11,12,...,1n-1或由节点v1,v2,...,vn组成的从节点S到节点D的一条路径,其中链路11是节点v1,v2之间的一条链路。路径P的可用带宽用B(P)表示,路径P的负载用L(P)表示。因此,在移动自组网中,基于带宽约束和最小负载的路径选择问题可以描述为:在给定的网络G=(V,E)中,某源主机S向目的主机D发送业务流,业务流所需求的带宽是Bq,若存在n条S到D的路径P1,P2,...,Pn。则满足本发明的路径P应满足以下条件:

B(P)≥Bq

L(P)=min{L(Pi)|i=1,2,...,n}

在无线网络中,计算节点的可用带宽时,除了节点本身,还要考虑其邻节点的影响。图2是由7个节点组成的无线网络,其中实线连接的两个节点可以直接通信,虚线表示节点之间正在发送业务流。如果节点A要经过D向E发送业务,在链路AD上就可能发生拥塞,然而此时这段链路并没有承载任何业务,这是因为在无线传输中,节点与它周围一定范围内的所有节点共享频率资源,当一定范围内的所有业务对带宽的需求超过网络的传输能力时,就会发生拥塞。因此,在度量一段链路的可用带宽时,不仅要考虑本节点的业务,还要考虑节点周围的业务对资源的使用情况。

本发明定义任意节点D的“共享频率集”为I(D),I(D)是由满足下面条件的节点N组成:N处在节点D的直接通信范围内,也就是说,N可以接收到D发送的数据或D可以接收到N发送的数据。在图1中,节点A、B、C和E就处在D的“共享频率集”中。

以下是在带宽计算中要用到的变量:

B(D):节点D的总带宽。为了更接近现实,节点的总带宽是随机产生的。

Ball(D):节点D被占用的总带宽。

Bc(D):节点D的当前可用带宽。

B(j):数据流j的带宽。

(1)Ball(D)的计算

计算当前占用节点D的信带宽需考虑以下二个部分:

Bs(D):节点D本身被占用的带宽,即节点D为其它业务流预留的总带宽。

Bn(D):节点D的共享频率集中的节点被占用的带宽之和。

Bs(D)和Bn(D)可以从节点保存的信息中获取。因此,节点D的剩余带宽可以用下面的式子得到:

Ball(D)=Bs(D)+Bn(D)

=Bs(D)+Bs(A)+Bs(B)+Bs(C)+Bs(E)

(2)Bc(D)的计算

节点D的可用带宽为节点D的总带宽减去节点D被占用的总带宽:

Bc(D)=B(D)-Ball(D)

当一条业务流j要经过节点D时,若计算得的D的可用带宽Bc(D)≥B(j)时,则允许数据流的接入,否则拒绝接入。

无线移动自组网中移动节点的网络负载不但与经过该节点的业务有关,而且与经过其邻居节点的业务也有关,后者称之为业务干扰。下面是负载计算时用到的变量:

L(D):节点D自身的业务负载。

LI(D):节点D的业务干扰负载。

TL(D):节点D总的业务负载。

(1)L(D)的计算

假定链路容量为C,业务平均长度为L,节点接口队列长度为q,则任意一个节点D的负载L(D)为:

L(D)=μDqD/(1+qD)

式中,μD=CD /LD

(2)LI(D)的计算

业务干扰LI(D)可以定义为节点D的共享频率集I(D)中的节点的业务负载之和:

<mrow><mi>LI</mi><mrow><mo>(</mo><mi>D</mi><mo>)</mo></mrow><mo>=</mo><munder><mi>&Sigma;</mi><mrow><mo>&ForAll;</mo><mi>N</mi><mo>&Element;</mo><mi>I</mi><mrow><mo>(</mo><mi>D</mi><mo>)</mo></mrow></mrow></munder><mi>L</mi><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow></mrow>

(3)TL(D)的计算

节点的业务负载TL(D)包括自身的业务量L(D)以及共享频率集I(D)中的节点的业务干扰LI(D)之和:

<mrow><mi>TL</mi><mrow><mo>(</mo><mi>D</mi><mo>)</mo></mrow><mo>=</mo><mi>L</mi><mrow><mo>(</mo><mi>D</mi><mo>)</mo></mrow><mo>+</mo><mi>LI</mi><mrow><mo>(</mo><mi>D</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>&mu;</mi><mi>D</mi></msub><msub><mi>q</mi><mi>D</mi></msub><mo>/</mo><mrow><mo>(</mo><mn>1</mn><mo>+</mo><msub><mi>q</mi><mi>D</mi></msub><mo>)</mo></mrow><mo>+</mo><munder><mi>&Sigma;</mi><mrow><mo>&ForAll;</mo><mi>N</mi><mo>&Element;</mo><mi>I</mi><mrow><mo>(</mo><mi>D</mi><mo>)</mo></mrow></mrow></munder><mi>L</mi><mrow><mo>(</mo><mi>N</mi><mo>)</mo></mrow></mrow>

(4)路径上负载的计算

从源节点到目的节点的路径P的负载为路径上所有中间节点I的业务负载的总和:

<mrow><mi>C</mi><mrow><mo>(</mo><mi>P</mi><mo>)</mo></mrow><mo>=</mo><munder><mi>&Sigma;</mi><mrow><mi>I</mi><mo>&Element;</mo><mi>P</mi></mrow></munder><mi>TL</mi><mrow><mo>(</mo><mi>I</mi><mo>)</mo></mrow></mrow>

本发明的具体步骤是:

(1)当节点需要和另外一个节点传输业务时,节点广播路由请求分组,路由请求分组包括以下内容:

目的节点IP地址和序列号、源节点的IP地址和序列号、业务需要的带宽、业务的ID号、负载信息、跳数;

(2)中间节点收到路由请求报文时,比较本节点和目的节点的地址;

①如果自己不是目的节点,判断是否收到过该请求,如果收到过则丢弃该请求,否则转向步骤②;

②计算当前剩余的带宽并与业务要求的带宽比较,若小于业务要求的带宽,则丢弃该请求,否则转向步骤③;

③计算本节点的总业务负载,更新路由请求分组中记录的参数:修改路由请求分组中的负载信息,跳数加1。然后建立到源节点的反向路由,并在路由条目中记录业务的ID号。最后向邻节点广播该路由请求报文。

(3)当目的节点收到从源节点来的路请求时,检查当前的时间是否小于在规定的时间内接收路由请求的时间。

①如果是就继续等待,否则转向步骤②;

②从多个路由请求中选择一条负载最小的,并沿着该请求建立的反向路由进行路由回复,中间节点收到路由回复后进行资源预留,建立到目的节点的正向路由,并在路由条目中记录业务的ID号。

时间复杂度表示执行一次协议操作所需要运行的步数。本发明在节点每次通信时,需要发送路由请求进行带宽预约,因此,源节点发出路由请求分组,目的节点返回一个路由回复分组,来回穿越网络两次,时间复杂度是2d数量级的,即O(2d),其中d为网络的直径。通信复杂度是指执行协议操作所需要传送的信息数,在这里,节点进行一次路由请求最坏的情况是路由的查询是在各个节点分布式同时进行,则通信复杂度为O(2N),其中N是网络中节点的个数。

流程图(图3)中RREQ表示路由请求分组,RREP表示路由回复分组。T表示肯定,F表示否定。

为了分析本发明的性能,进行了相应的仿真实验,实验选择AODV协议作为参照对象,比较了本发明与AODV的分组投递率、吞吐量和丢包率这三项指标。协议的模拟实现是基于网络仿真软件NS2进行的。实验中选择一个包含有30个节点的场景,场景大小为800m×1000m的矩形区域,每个节点随机选择自己的运动方向和运动速度,最大运动速度分别为10m/s,20m/s,35m/s,60m/s,100m/s,场景维持时间为500s。分组速率为2个/s,每个请求需要传送包为1000B的数据包,各节点带宽值采用范围为(1-5)Mbps的随机数产生。

仿真结果表明,本发明的性能都要优于AODV,从图4可以看出,本发明和AODV在不同速度下的分组投递率要高于AODV的分组投递率,随着移动速度的增大,本发明的分组投递率下降的缓慢而AODV的分组投递率下降的幅度很大。在图5中,本发明的丢包率要低于AODV,且随着移动速度的变化,本发明的丢包率处于比较平稳的状态,而AODV则快速上升。图6是两者吞吐量的比较,当节点移动速度较慢时,本发明的吞吐量略高于AODV,而当节点的移动速度加快时,本发明的吞吐量要高出AODV很多。

本说明书中未作详细描述的内容所与本领域专业技术人员公知的现有技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号