CN1299478C - 无线自组织网络中基于节点的度的路由搜寻和维护方法 - Google Patents
无线自组织网络中基于节点的度的路由搜寻和维护方法 Download PDFInfo
- Publication number
- CN1299478C CN1299478C CNB2004100034663A CN200410003466A CN1299478C CN 1299478 C CN1299478 C CN 1299478C CN B2004100034663 A CNB2004100034663 A CN B2004100034663A CN 200410003466 A CN200410003466 A CN 200410003466A CN 1299478 C CN1299478 C CN 1299478C
- Authority
- CN
- China
- Prior art keywords
- node
- route
- degree
- packet
- addr
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 43
- 230000005540 biological transmission Effects 0.000 claims abstract description 33
- 238000004891 communication Methods 0.000 claims abstract description 21
- 230000009191 jumping Effects 0.000 claims description 71
- 238000012423 maintenance Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 14
- 238000011144 upstream manufacturing Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 3
- 230000015572 biosynthetic process Effects 0.000 claims description 2
- 238000000205 computational method Methods 0.000 claims description 2
- 238000005265 energy consumption Methods 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000008901 benefit Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 238000004088 simulation Methods 0.000 description 3
- 230000007480 spreading Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000002407 reforming Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
无线自组织网络中基于节点的度的路由搜寻和维护方法属于无线通信网络技术,其特征在于:它从节点的度的统计特性出发,提出了一种考虑了节点竞争和拥塞状况的选路准则,以便使节点选择那些流经节点时竞争节点少的路由作为数据包的传送路由,从而在不增加网络开销的前提下,在相同的节点移动速率时数据包具有更高的投递率,更短的延时。在具体采用何种路由选择参数时,要考虑上层业务特性的要求。此外,它还可以很容易地嵌入至现有的路由算法中。采用本发明提出的选路准则的路由方法具有简单、高效、节点能量消耗公平的优点。
Description
技术领域
无线自组织网络,即Ad Hoc网络,中基于节点的度的路由搜寻和维护方法,属于无线通信网络技术领域。
背景技术
目前,各种通信和网络技术飞速发展,特别是无线通信网络的使用已经逐渐走入成熟,包括各种无线蜂窝通信网络(如:GSM、WCDMA、CDMA2000等)、无线局域网(如:IEEE 802.11系列标准、欧洲的HiperLAN标准等)以及正日益引起业界和学术界重视的无线自组织网络(AdHoc网络)。无线局域网(WLAN)和Ad Hoc网络被普遍认为将成为未来整个无线通信网络的有益组成部分,以实现方便、高速、有效地无线接入。Ad Hoc网络既可以作为未来实现无线接入的一种方式,同时它还可自组织地单独构成一个无线网络,在这种网络中,节点可以随机运动,每个节点既是源节点和目的节点,同时也担当路由器的功能,即:对流经本地节点的数据包进行寻路转发。由于Ad Hoc网络的构建非常简单、方便,因此它非常适用于军事应用、会议场所、学生教室、抗洪救灾、地震抢险及一些突发事件的发生现场,它能够迅速为人们提供一个可靠、有效的无线通信网络,而不需要预先构建任何通信基础设施。
对于Ad Hoc网络而言,为实现网络中的任何两个节点均可以正常通信,需要设计一个良好的路由算法来实现路由功能。而Ad Hoc网络的多种时变特性,比如:无线信道的变化、网络拓扑结构的变化、上层业务的变化、节点电池能量的变化等等,使得路由算法的设计面临重大挑战。在已提出的路由算法中,大多以最短路径作为选路准则,如:目的序号距离矢量路由算法(DSDV-Destination Sequenced Distance Vector Routing)、Ad Hoc按需距离矢量路由算法(AODV-Ad Hoc On-Demand Distance Vector Routing)、动态源路由算法(DSR-Dynamic Source Routing)等。此外,有些文献还提出一些结合其它因素的选路准则,比如:相邻节点之间的信号强度、相邻节点之间的相关稳定度、节点的功耗、业务的服务质量保证(Quality-of-Service)、负载均衡等,有些路由算法进而同时考虑了几方面的因素。但是,这些算法存在如下缺点:
1)未对网络中的拥塞状况加以考虑;
2)大多需要节点周期性发送与路由选择有关的控制信息,从而增加了网络开销,并进一步使得网络更加拥塞;
3)由于未对网络的拥塞状况加以考虑,从而导致网络中节点的能量消耗分布不公平,即:某些节点可能会由于负载过重而过早能量耗尽,这将进一步加重网络拓扑结构的变化;
4)对于那些考虑了网络拥塞状况的负载均衡路由算法来说,大多是以节点缓冲区(即:用于保存数据的存贮器空间)中的数据包数目或正在通信的连接数目(即:正在通信的路由数目)来表示网络负载状况。这样做的一个后果是:路由算法和业务之间存在耦合,即:路由算法的选路结果和节点缓冲区中保存的数据包数目或连接数目之间会相互影响。从而导致网络不稳定,甚至所选路由会发生震荡现象。特别是当上层业务速率变化迅速时,这些算法的性能将进一步降低。而业务的突发性更大大增加了这些算法处理网络负载的难度。而且,这些算法中的大多数同样需要节点周期性发送控制信息,从而增加了网络开销。
为了使得路由算法能够高效工作,在Ad Hoc网络中的路由算法设计应该遵循如下两个原则:
1)简单;
2)尽量降低网络开销。
发明内容
本发明的目的在于提供一种网络开销较低、同时考虑各个节点的竞争情况、搜寻和维护较为简单的Ad Hoc网络中基于节点的度的路由搜寻和维护方法。
本发明的特征在于:它是在无线收发设备,即节点,也称路由器,构成的无线自组织,即Ad Hoc,通信网络内各移动设备中依次按以下步骤实现的:
初始化设定:数据包的类型及其内含的数据项,并存入各节点存贮器中:
1)路由请求数据包,即RREQ,内含以下数据项:
数据包类型,用“Type”表示;源节点地址,用“Src_Addr”表示;目的节点地址,用“Dest_Addr”表示;节点发送的RREQ数据包的序号,用“Seq_Num”表示;用跳数表示的数据包的寿命,用“TTL”表示,根据网络规模预设最大寿命为MaxM+1,其中MaxM是一条路由中可能包含的最多的中间节点数目;从源节点到当前节点的路由长度,用“Cur_Len”表示;源节点的N跳度用“Src_Degree”表示,N跳度是指N倍于节点的发射和接收半径的范围内的节点数,在实际中,由于节点无法获知静止节点,即不活动节点,的存在,因此它也等同于上述范围内的活动节点数,即有数据包需要发送的节点的数目,一般N选择1或2;目的节点的N跳度,用“Dest_Degree”表示,其中,N跳度的定义如上所述;RREQ流经的中间节点的节点地址,用“Addr_1~Addr_MaxM”表示,其中MaxM表示一条路由中可能的最多的中间节点数目;RREQ流经的各种中间节点的N跳度,用“Degree_1~Degree_MaxM”表示,同样,MaxM表示一条路由中可能的最多的中间节点数目;
2)路由应答数据包,即RREP,内含以下数据项:Type、Src_Addr、Dest_Addr、Seq_Num、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X以及Degree_1~Degree_X,其中由Addr_1~Addr_X来构成一条完整的路由,Degree_1~Degree_X表示对应于Addr_1~Addr_X的节点的N跳度信息,其余各数据项的定义如前所述,其中X表示RREP中包含的路由的中间节点数目为X,X不大于MaxM;
3)路由失败数据包,即RERR,内含以下数据项:Type、Src_Addr、Dest_Addr、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X、Degree_1~Degree_X、Error_Up_Addr以及Error_Down_Addr,其中Type、Src_Addr、Dest_Addr、Src_Degree、Dest_Degree、Addr_1~Addr_X及Degree_1~Degree_X的含义如前所述,而Cur_Len表示从发生错误的节点到目前节点的跳数;Error_Up_Addr表示发现下一跳节点无法到达的节点地址;Error_Down_Addr表示无法到达的下一跳节点的节点地址;
4)业务数据包内含以下数据项:Type、Src_Addr、Dest_Addr、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X、Degree_1~Degree_X、Traffic_Data以及Alpha,其中Type、Src_Addr、Dest_Addr、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X、Degree_1~Degree_X的含义如前所述,Traffic_Data表示业务数据包的上层业务数据;Alpha表示用户对于业务数据包的延时、丢包率、带宽的要求参量;
设定以下参数及其有关的中间变量,分别存入个节点中的存贮器内:
路径寿命的超时时间阈值,它表示:若在这段时间内,节点没有监测到任何沿该路径的业务流数据包,则节点认为该路径已经失效,从而将该路径,即路由,从路由缓冲区中删除;
路由缓冲区,它指各节点的存贮器中保存路由的存贮空间;
数据包缓冲区,它指各节点的存贮器中保存上层业务数据包的存贮空间;
网络预先设定的业务数据包的最大允许发送次数;
网络预先设定的一条路由中含有的最大允许节点数;
设计计算一条路由的路由选择参数RSM的下述三种算法程序,计算三种路由参数RSM1,RSM2及RSM3,把它连同路由选择准则的计算程序一起存入各节点的存贮器中,所述的路由选择准则是指:当α值取值较小时,RSM值取RSM3,在路由缓冲区中选择一跳具有最小的RSM3值的到达目的节点的路由;当α取值较大时,RSM值从RSM1或RSM2中选取一个,当RSM值取RSM1时,在路由缓冲区中选择一条具有最小的RSM1值的到达目的节点的路由;所述的RSM1、RSM2及RSM3的计算方法如下:
其中,M为一条路由中包含的节点数;H为一条路由中包含的跳数,H=M-1;Di为路由流经的第i个节点的N跳度;D为路由流经的M个节点的平均N跳度;α是用户在业务数据包中指定的,它是用户根据数据包的延时、丢包率、带宽而设定的一个参量,同时,该参量表明了上层业务特性对路由的总竞争节点数和各节点的竞争节点数的标准方差的侧重程度,0<α<1,当对标准方差侧重程度较小时,α取值要小些,反之,则α值较大;
所述的路由搜寻方法依次含有以下各步骤:
(1)当某节点产生一个上层业务数据包时,该节点便成为源节点,它首先判断是否有数据包正在发送,若有,则将该业务数据包***数据包缓冲区中,等待该数据包发送完毕后再发送当前数据包;若没有数据包正在发送,则它根据上述RSM选路准则从自己的路由缓冲区中选择一条到达目的节点的有效路由;
(2)若该节点的路由缓冲区中不存在从该节点出发的有效路由,便发起路由搜寻过程,即该节点把自身地址和N跳度填充入RREQ中并广播发送;若存在,便转入路由维护过程;
(3)中间节点在收到RREQ后,便检查是否首次接收到本RREQ,若为非首次接收到,便丢弃本RREQ,搜寻过程结束;若为首次收到本RREQ,中间节点便把自身地址和N跳度填充入RREQ中并转发;
(4)目的节点收到RREQ后,根据存贮器中预先确定的选路准则和路由缓冲区的各条路径的各个RSM值,选择最佳路由,所选的各条路径也包括目的节点从RREQ中提取相应的节点地址和N跳度来形成的一条到达源节点的路径;
(5)目的节点把包括各节点地址和N跳度在内的最佳路由信息填充入RREP中并向源节点发送;
(6)最佳路由的中间节点接收到RREP后,便根据自己节点的N跳度去更新RREP中与自己对应的节点的N跳度信息,并转发至RREP中所包含路由的上行节点;
(7)源节点接收到RREP后,便获得一条从源节点到目的节点的有效路由,并存入自己的路由缓冲器中,路由搜寻过程结束;
所述的路由维护方法依次含有以下各步骤:
(1)源节点可以根据上述步骤(7)得到的一条从源节点到目的节点的有效路由,也可以根据上述步骤(2)中在上层业务数据包产生后直接从路由缓冲区中得到的有效路由,把节点地址和相应的N跳度信息填充入当前要发送的业务数据包中,并把该业务数据包发送出去;
(2)源节点若发现其下行链路无法正常通信,即下一跳节点无法到达,便更新路由缓冲区中的路由信息,并计数当前业务数据包的发送次数,转步骤(11);源节点若发现其下行链路可以正常通信,则步骤(3);
(3)中间节点根据自己节点的N跳度去更新业务数据包中与自己对应的节点的N跳度信息,并根据业务数据包中的路由信息转发该业务数据包;
(4)中间节点若发现其下行链路无法维持正常通信,即下一跳节点无法到达,便更新自己节点的路由信息,并使本业务数据包的发送次数加1,然后转步骤(5);若所有中间节点均可以维持正常通信,则目的节点可以接收到业务数据包,路由维护过程结束;
(5)中间节点检查当前业务数据包的重发次数是否达到网络预先设置的发送次数,若达到,则丢弃该数据包,然后向源节点发送路由失败数据包,即RERR,转步骤(7);若没有达到,则判断路由缓冲区中是否存在其他有效路由;
(6)若路由缓冲区中存在其他有效路由,则沿新路由发送当前业务数据包,路由维护过程结束;若不存在,则丢弃当前业务数据包,然后向源节点发送RERR;
(7)接收到RERR的中间节点,更新本地路由缓冲区中相应的路由信息,并用本地节点的N跳度信息更新RERR中相应的N跳度信息,然后把RERR转发至该RERR中包含路由的上行节点;
(8)源节点接收到RERR后,更新本地路由缓冲区中的路由信息;
(9)源节点检查数据缓冲区中是否仍有业务数据包等待发送,若有,则检查路由缓冲区中是否存在其他有效路由,转步骤(10);若数据缓冲区中没有业务数据包等待发送,则路由维护过程结束;
(10)若源节点发现路由缓冲区中没有有效路由,则重新发起路由搜寻过程,路由维护结束;若发现路由缓冲区中存在有效路由,则业务数据包沿新路由发送,路由维护过程结束;
(11)源节点判断当前业务数据包的发送次数是否达到网络预定的发送次数,若达到,则丢弃该数据包,转步骤(9);若没有达到,则判断路由缓冲区中是否存在其他有效路由,转步骤(10)。
在多跳Ad Hoc网络中,尽管存在上述的多种时变特性,但是网络的局部拓扑结构仍然是相对稳定的。这是因为,若网络拓扑结构变化异常迅速,则数据包的传送将只能采用“泛滥”(所谓“泛滥”是指源节点不指定任何路径而直接将数据包发送出去,接收到数据包的节点若发现本地节点不是目的节点则将数据包转发出去,直至数据包到达目的节点或者寿命截止为止)的形式发送,任何路由算法都将失效。因此,为了使得路由算法比“泛滥”的方法有效,局部网络拓扑结构的相对稳定是一个必要条件。基于此,本发明提出了一个Ad Hoc网络中基于节点的度的路由算法(NDBR),该算法正是充分利用了Ad Hoc网络中局部拓扑结构的稳定性。假定节点的发射和接收距离为R,则本发明对“节点的N跳度和N跳活动度”定义如下:
在以节点为中心,NR为半径的范围内的节点数目称为“节点的N跳的度”,简称“节点的N跳度”(N=1,2,...,为自然数);在以节点为中心,NR为半径的范围内的活动节点(即:该节点有数据包需要发送)数目称为“节点的N跳的活动度”,简称“节点的N跳活动度”(N=1,2,...,为自然数)。
值得指出的是,在实际通信网络中,由于节点无法获知其周围的不活动节点(即:节点没有任何数据包需要发送)的存在,因此每个节点所能获知的N跳度实际上也就是N跳活动度。
NDBR将路由流经节点的N跳度的统计特性来作为选路准则。从而可以使得源节点选择那些流经竞争节点数目少的路由,从而避免了数据包流经的竞争节点较多的路由,这样,一方面可以使得数据包更快的到达目的节点,另一方面使得节点的能量消耗情况尽量公平,不至于使得那些拥塞链路处的节点消耗过多。
假定一条路由中包含M个节点、H跳,即:H=M-1,而路径流经的第i个节点的N跳度为Di(1≤i≤M)。定义
本发明提出,可利用如下的统计量作为路由选择参数(RSM)。
在确定了RSM(RSM1、RSM2还是RSM3)之后,路由选择准则如下:在路由缓冲区(即:节点存贮器中保存路由的存贮空间)中,选择一条具有最小的RSM值的到达目的节点的路由。对于RSM3而言,α的大小由用户根据上层业务特性(如:延时、丢包率、带宽等)来指定,主要表现为对路由的总竞争节点数目和竞争节点数目标准方差的侧重程度,若路由的总竞争节点数目对于上层业务的成功传输更重要,则α可尽量小一些,反之大一些。
仿真试验表明,当节点的移动速率相同时,本发明的数据包投递率、数据包的传输延时均优于传统的动态源路由方法,即DSR;但网络开销却低于DSR。随着节点移动速率的增加,本发明提出的路由搜寻和维护方法的优势更加明显,当速率达到10米/秒时,在数据包投递率方面,采用RSM3选路准则的路由方法要比DSR方法提高20%左右;在数据包传输延时方面,采用RSM3选路准则的路由方法要比DSR方法性能提高40%左右。而对于网络开销,随着节点速率的增加,本发明提出的方法和传统的DSR方法相比,网络开销的差别逐渐减小,但采用RSM3选路准则的路由方法仍比DSR方法的网络开销小,在节点速率为10米/秒时,大约小5%左右。
附图说明
图1.RREQ数据包结构示意图。
图2.RREP数据包结构示意图。
图3.RERR数据包结构示意图。
图4.业务数据包结构示意图。
图5.本发明提出的路由搜寻方法的程序流程框图。
图6.本发明提出的路由维护方法的程序流程框图。
图7.数据包投递率比较图。
图8.数据包传输延时比较图。
图9.网络开销比较图。
具体实施方式
本发明提出的基于节点的度的路由算法可以容易地嵌入现有的DSR算法中,其实施主要包括以下几个部分:1)节点的N跳度的估计,这可以通过采用前人提出的方法加以实现;2)N的确定,为简单起见,一般N可选择为1或2;3)算法的路由搜寻和路由维护过程的软件实现。
NDBR准则中所需要的节点的N跳度,可以通过前人提出的一些方法来获得,比如:通过在MAC(Media Access Control-媒体接入控制)层使用卡尔曼滤波器的方法;通过周期性发送控制信息的方法(这将增加网络开销)等。同时,在具体的路由算法实现中,NDBR采用一跳度、二跳度还是更多跳度的统计量来作为选路参数则主要取决于网络设计的复杂度、网络开销和Ad Hoc网络中所采用的MAC协议三个方面。在实际中,N跳度的获得不可避免地会有误差,但是由于NDBR算法对最佳路由的选择是通过比较各条路由的RSM值,因此节点的N跳度误差对算法性能影响不大。
值得注意的是,除了本发明中所提出的这些统计量可以作为路由选择参数之外,还可以设计其它的基于节点的度的统计量作为路由选择参数,这主要取决于通信网络的设计者。
NDBR算法同动态源路由算法(DSR)一样,是一种按需驱动的源路由算法。在这种算法中,节点仅保存和维护正在使用的路由信息。NDBR算法包含两个阶段:1)路由搜寻;2)路由维护。在NDBR中,每种数据包类型都包含了“地址”和“度”域,它们记录了数据包流经节点的节点地址和节点N跳度。此外,每个节点会监测流经本节点的任何数据包,并从中提取数据包流经节点的节点地址和N跳度。它们都会在节点的路由缓冲区中保存下来,同时保存路由的建立时间,并启动路径寿命的超时计时器(即:网络预设一超时时间值,若在这段时间内,节点没有监测到任何流经该路径的数据包通过,则节点认为该路径已经失效,从而将该路径从路由缓冲区中删除掉)。
这种算法的路由搜寻和路由维护过程大体如下:
当一个业务数据包到达时,节点首先根据RSM选路准则从路由缓冲区中选择路由。如果节点不能找到一条到达目的节点的路由,节点将触发如下的路由搜寻过程。源节点广播发送路由请求数据包(RREQ),该数据包中如图1所示,其中“Type”表示数据包类型(包括路由请求RREQ、路由应答RREP、路由失败RERR和业务数据包);“Src_Addr”表示源节点地址;“Dest_Addr”表示目的节点地址;“Seq_Num”表示节点发送的RREQ数据包的序列号,用来标识源节点发送的RREQ的唯一性;“TTL”表示以跳数来表示的数据包寿命;“Cur_Len”表示从源节点到目前节点的路由长度;“Src_Degree”表示源节点的N跳度;“Dest_Degree”表示目的节点的N跳度;“Addr_1~Addr_MaxM”和“Degree_1~Degree_MaxM”分别表示RREQ数据包流经的中间节点的节点地址和N跳度,其中MaxM表示一条路由的最大中间节点个数。
在接收到RREQ后,节点若发现首次接收到该RREQ,并且本节点不是目的节点,则将自身的地址和N跳度添加到RREQ数据包中并转发出去。这样,RREQ数据包中不仅包含了它所流经的所有节点的节点地址,而且也包含了这些节点的N跳度。当RREQ到达目的节点后,目的节点会从RREQ中提取相应的节点地址和N跳度来构成一条到达源节点的路由,并根据NDBR的选路准则确定的路由选择参数计算该路径的RSM值。从而,目的节点可以从其路由缓冲区中根据NDBR选路准则选择一条最佳路由,并将该路由包含在路由应答数据包(RREP)中发送至源节点。RREP数据包结构如图2所示,各个域的含义同RREQ中的数据域含义,区别仅在于RREP数据包中的路由是固定的。
中间节点接收到RREP后,会将RREP中对应的节点的N跳度更新,并将该数据包发往RREP中所包含路由的上行节点。最终,RREP数据包到达源节点,从而源节点获得到达目的节点的一条路由。这样,业务数据包就可沿该路由传送至目的节点。路由搜寻过程以源节点获得到达目的节点的一条完整路由为标志而完成。图5表示出了NDBR算法的路由搜寻过程示意图。
在业务数据包传输过程中,若一个节点发现其下行链路无法维持正常通信,则该节点更新本地的路由信息,并检查当前业务数据包的发送次数是否达到网络预先设置的发送次数,若达到,则丢弃该数据包,然后向源节点发送路由失败数据包(RERR);若没有达到,则判断路由缓冲区中是否存在到达目的节点的有效路径,若存在,则沿新路径发送当前业务数据包;若不存在,则丢弃当前业务数据包,然后向源节点发送路由失败数据包(RERR)。接收到RERR的节点,更新本地的相应路由信息和RERR中的相应N跳度信息,并转发至RERR中包含路径的上行节点。当RERR到达源节点后,源节点首先更新本地路由缓冲区中的路由信息,然后检查当前业务数据包的发送次数是否达到网络预先设置的发送次数,若达到,则丢弃该数据包,同时判断上层业务数据缓冲区(节点用于存贮上层业务数据包的存贮空间)中是否仍然有数据包等待发送,若有则根据NDBR确定的选路准则从路由缓冲区搜寻最佳路由,若没有找到最佳路由,则源节点将重新发起另一次路由搜寻过程;若找到,则业务数据包沿新路由发送。若节点发现当前业务数据包的发送次数没有达到网络预先设置的发送次数,则节点根据NDBR确定的选路准则从路由缓冲区搜寻最佳路由,若没有找到最佳路由,则源节点将重新发起另一次路由搜寻过程;若找到,则业务数据包沿新路由发送。路由失败数据包和业务数据包的结构示意图分别如图3和图4所示。具体路由维护过程见图6的路由维护示意图。
为验证和比较算法性能,我们对该发明中提出的路由算法进行了仿真,仿真硬件条件如下:计算机主频2.6Ghz,硬盘20G,内存512M。
具体仿真环境如下:30个节点在600米×600米的范围内按照“random way point”模型(随机移动点模型)随机移动,该模型中最小的节点移动速率设置为1m/s,最大的节点运动速率分别设置为2m/s、4m/s、6m/s、8m/s和10m/s。每个节点产生CBR(Constant BitRate-恒定速率)业务(每个数据包2048比特,1秒钟产生4个数据包),从剩余的29个节点中随机选择一个作为目的节点。物理层和MAC层采用IEEE 802.11a标准,速率为54Mbps,MAC协议选择为基本的CSMA/CA协议(Carrier Sense Multiple Access with CollisionAvoidance-带冲突监测的载波侦听多址协议),即:源节点发送业务数据包,目的节点发送确认数据包,即可完成一次数据包传输过程。在路由维护算法中,设定业务数据包的最大允许发送次数为2。在仿真中,设定N=1,并且假定节点的N跳度偏差服从均匀分布,误差为10%,即:节点的N跳度与实际的N跳度之间的偏差最大为10%。我们用“NDBR-1”、“NDBR-2”和“NDBR-3”分别表示采用RSM1、RSM2和RSM3(α=0.5)路由选择参数的路由算法;“DSR”表示为考虑节点的N跳度的动态源路由算法。图7、图8、图9和表1表示出了这种条件下的仿真结果。可见,NDBR算法可以在不增加网络开销的情况下获得更高的数据包投寄率、更小的数据包传输延时,并且在采用RSM3的路由选择参数的情况下,节点发送的数据包数目的标准方差最小,见下表,由于节点的能量消耗主要决定于节点发送数据包的数目多少,因此这种路由算法对于节点的能量消耗情况来说最公平。
表1.节点发送的数据包数目的标准方差比较
路由方案 | 节点移动速率(米/秒) | ||
2 | 6 | 10 | |
DSR | 672.07 | 630.29 | 657.10 |
NDBR-1 | 643.09 | 654.71 | 674.29 |
NDBR-2 | 704.75 | 671.71 | 715.20 |
NDBR-3 | 605.29 | 579.80 | 585.29 |
Claims (1)
1、无线自组织网络中基于节点的度的路由搜寻和维护方法,其特征在于,它是在无线收发设备,即节点,也称路由器,构成的无线自组织,即Ad Hoc,通信网络内各移动设备中依次按以下步骤实现的:
初始化设定:数据包的类型及其内含的数据项,并存入各节点存贮器中:
1)路由请求数据包,即RREQ,内含以下数据项:
数据包类型,用“Type”表示;源节点地址,用“Src_Addr”表示;目的节点地址,用“Dest_Addr”表示;节点发送的RREQ数据包的序号,用“Seq_Num”表示;用跳数表示的数据包的寿命,用“TTL”表示,根据网络规模预设最大寿命为MaxM+1,其中MaxM是一条路由中可能包含的最多的中间节点数目;从源节点到当前节点的路由长度,用“Cur_Len”表示;源节点的N跳度用“Src_Degree”表示,N跳度是指N倍于节点的发射和接收半径的范围内的节点数,在实际中,由于节点无法获知静止节点,即不活动节点的存在,因此它也等同于上述范围内的活动节点数,即有数据包需要发送的节点的数目,N选择1或2;目的节点的N跳度,用“Dest_Degree”表示,其中,N跳度的定义如上所述;RREQ流经的中间节点的节点地址,用“Addr_1~Addr_MaxM”表示,其中MaxM表示一条路由中可能的最多的中间节点数目;RREQ流经的各种中间节点的N跳度,用“Degree_1~Degree_MaxM”表示,同样,MaxM表示一条路由中可能的最多的中间节点数目;
2)路由应答数据包,即RREP,内含以下数据项:Type、Src_Addr、Dest_Addr、Seq_Num、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X以及Degree_1~Degree_X,其中由Addr_1~Addr_X来构成一条完整的路由,Degree_1~Degree_X表示对应于Addr_1~Addr_X的节点的N跳度信息,其余各数据项的定义如前所述,其中X表示RREP中包含的路由的中间节点数目为X,X不大于MaxM;
3)路由失败数据包,即RERR,内含以下数据项:Type、Src_Addr、Dest_Addr、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X、Degree_1~Degree_X、Error_Up_Addr以及Error_Down_Addr,其中Type、Src Addr、Dest_Addr、Src_Degree、Dest_Degree、Addr_1~Addr_X及Degree_1~Degree_X的含义如前所述,而Cur_Len表示从发生错误的节点到目前节点的跳数;Error_Up_Addr表示发现下一跳节点无法到达的节点地址;Error_Down_Addr表示无法到达的下一跳节点的节点地址;
4)业务数据包内含以下数据项:Type、Src_Addr、Dest_Addr、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X、Degree_1~Degree_X、Traffic_Data以及Alpha,其中Type、Src_Addr、Dest_Addr、Cur_Len、Src_Degree、Dest_Degree、Addr_1~Addr_X、Degree_1~Degree_X的含义如前所述,Traffic_Data表示业务数据包的上层业务数据;Alpha表示用户对于业务数据包的延时、丢包率、带宽的要求参量;
设定以下参数及其有关的中间变量,分别存入各节点中的存贮器内:
路径寿命的超时时间阈值,它表示:若在这段时间内,节点没有监测到任何沿该路径的业务流数据包,则节点认为该路径已经失效,从而将该路径,即路由,从路由缓冲区中删除;
路由缓冲区,它指各节点的存贮器中保存路由的存贮空间;
数据包缓冲区,它指各节点的存贮器中保存上层业务数据包的存贮空间;
网络预先设定的业务数据包的最大允许发送次数;
网络预先设定的一条路由中含有的最大允许节点数;
设计计算一条路由的路由选择参数RSM的下述三种算法程序,计算三种路由参数RSM1,RSM2及RSM3,把它连同路由选择准则的计算程序一起存入各节点的存贮器中,所述的路由选择准则是指:当α值取值较小时,RSM值取RSM3,在路由缓冲区中选择一条具有最小的RSM3值的到达目的节点的路由;当α取值较大时,RSM值从RSM1或RSM2中选取一个,当RSM值取RSM1时,在路由缓冲区中选择一条具有最小的RSM1值的到达目的节点的路由;所述的RSM1、RSM2及RSM3的计算方法如下:
其中,M为一条路由中包含的节点数;H为一条路由中包含的跳数,H=M-1;Di为路由流经的第i个节点的N跳度;
D为路由流经的M个节点的平均N跳度;α是用户在业务数据包中指定的,它是用户根据数据包的延时、丢包率、带宽而设定的一个参量,同时,该参量表明了上层业务特性对路由的总竞争节点数和各节点的竞争节点数的标准方差的侧重程度,0<α<1,当对标准方差侧重程度较小时,α取值要小些,反之,则α值较大;
所述的路由搜寻方法依次含有以下各步骤:
(1)当某节点产生一个上层业务数据包时,该节点便成为源节点,它首先判断是否有数据包正在发送,若有,则将该业务数据包***数据包缓冲区中,等待该数据包发送完毕后再发送当前数据包;若没有数据包正在发送,则它根据上述RSM选路准则从自己的路由缓冲区中选择一条到达目的节点的有效路由;
(2)若该节点的路由缓冲区中不存在从该节点出发的有效路由,便发起路由搜寻过程,即该节点把自身地址和N跳度填充入RREQ中并广播发送;若存在,便转入路由维护过程;
(3)中间节点在收到RREQ后,便检查是否首次接收到本RREQ,若为非首次接收到,便丢弃本RREQ,搜寻过程结束;若为首次收到本RREQ,中间节点便把自身地址和N跳度填充入RREQ中并转发;
(4)目的节点收到RREQ后,根据存贮器中预先确定的选路准则和路由缓冲区的各条路径的各个RSM值,选择最佳路由,所选的各条路径也包括目的节点从RREQ中提取相应的节点地址和N跳度来形成的一条到达源节点的路径;
(5)目的节点把包括各节点地址和N跳度在内的最佳路由信息填充入RREP中并向源节点发送;
(6)最佳路由的中间节点接收到RREP后,便根据自己节点的N跳度去更新RREP中与自己对应的节点的N跳度信息,并转发至RREP中所包含路由的上行节点;
(7)源节点接收到RREP后,便获得一条从源节点到目的节点的有效路由,并存入自己的路由缓冲器中,路由搜寻过程结束;
所述的路由维护方法依次含有以下各步骤:
(1)源节点可以根据上述步骤(7)得到的一条从源节点到目的节点的有效路由,也可以根据上述步骤(2)中在上层业务数据包产生后直接从路由缓冲区中得到的有效路由,把节点地址和相应的N跳度信息填充入当前要发送的业务数据包中,并把该业务数据包发送出去;
(2)源节点若发现其下行链路无法正常通信,即下一跳节点无法到达,便更新路由缓冲区中的路由信息,并计数当前业务数据包的发送次数,转步骤(11);源节点若发现其下行链路可以正常通信,则步骤(3);
(3)中间节点根据自己节点的N跳度去更新业务数据包中与自己对应的节点的N跳度信息,并根据业务数据包中的路由信息转发该业务数据包;
(4)中间节点若发现其下行链路无法维持正常通信,即下一跳节点无法到达,便更新自己节点的路由信息,并使本业务数据包的发送次数加1,然后转步骤(5);若所有中间节点均可以维持正常通信,则目的节点可以接收到业务数据包,路由维护过程结束;
(5)中间节点检查当前业务数据包的重发次数是否达到网络预先设置的发送次数,若达到,则丢弃该数据包,然后向源节点发送路由失败数据包,即RERR,转步骤(7);若没有达到,则判断路由缓冲区中是否存在其他有效路由;
(6)若路由缓冲区中存在其他有效路由,则沿新路由发送当前业务数据包,路由维护过程结束;若不存在,则丢弃当前业务数据包,然后向源节点发送RERR;
(7)接收到RERR的中间节点,更新本地路由缓冲区中相应的路由信息,并用本地节点的N跳度信息更新RERR中相应的N跳度信息,然后把RERR转发至该RERR中包含路由的上行节点;
(8)源节点接收到RERR后,更新本地路由缓冲区中的路由信息;
(9)源节点检查数据缓冲区中是否仍有业务数据包等待发送,若有,则检查路由缓冲区中是否存在其他有效路由,转步骤(10);若数据缓冲区中没有业务数据包等待发送,则路由维护过程结束;
(10)若源节点发现路由缓冲区中没有有效路由,则重新发起路由搜寻过程,路由维护结束;若发现路由缓冲区中存在有效路由,则业务数据包沿新路由发送,路由维护过程结束;
(11)源节点判断当前业务数据包的发送次数是否达到网络预定的发送次数,若达到,则丢弃该数据包,转步骤(9);若没有达到,则判断路由缓冲区中是否存在其他有效路由,转步骤(10)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100034663A CN1299478C (zh) | 2004-03-26 | 2004-03-26 | 无线自组织网络中基于节点的度的路由搜寻和维护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100034663A CN1299478C (zh) | 2004-03-26 | 2004-03-26 | 无线自组织网络中基于节点的度的路由搜寻和维护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1564544A CN1564544A (zh) | 2005-01-12 |
CN1299478C true CN1299478C (zh) | 2007-02-07 |
Family
ID=34477606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100034663A Expired - Fee Related CN1299478C (zh) | 2004-03-26 | 2004-03-26 | 无线自组织网络中基于节点的度的路由搜寻和维护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1299478C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8078740B2 (en) | 2005-06-03 | 2011-12-13 | Microsoft Corporation | Running internet applications with low rights |
US8185737B2 (en) | 2006-06-23 | 2012-05-22 | Microsoft Corporation | Communication across domains |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060215577A1 (en) * | 2005-03-22 | 2006-09-28 | Guichard James N | System and methods for identifying network path performance |
JP2008544616A (ja) * | 2005-06-14 | 2008-12-04 | ノキア コーポレイション | 好ましいパス・ソース・ルーティングと、マルチギャランティQoSと、リソースの予約・管理・解放とを備える高性能な通信バスを提供する、装置、方法およびコンピュータ・プログラム |
CN100364296C (zh) * | 2005-06-24 | 2008-01-23 | 清华大学 | 基于优化直径网络的按度值对目的节点分段迭代的路由法 |
US7720016B2 (en) | 2005-10-28 | 2010-05-18 | Hong Kong Applied Science And Technology Research Institute Co., Ltd. | Multi-hop routing method with bandwidth reservation in wireless network |
TWI342142B (en) * | 2006-08-21 | 2011-05-11 | Ind Tech Res Inst | Methods and systems for routing protocal |
CN101212420B (zh) | 2006-12-27 | 2010-09-29 | 华为技术有限公司 | 重定向器、中继、路由信息配置***及更新方法 |
CN101282279B (zh) * | 2007-04-04 | 2010-12-01 | 同济大学 | 基于可用带宽测量的无线自组织网络路由方法 |
CN101340361B (zh) * | 2007-07-05 | 2012-04-25 | 华为技术有限公司 | 数据包中转限制方法及设备 |
CN100442786C (zh) * | 2007-07-10 | 2008-12-10 | 北京航空航天大学 | 基于树形结构的路由方法 |
CN101179594B (zh) * | 2007-11-22 | 2012-09-05 | 复旦大学 | 无线自组织网络环境中基于服务距离的服务发现方法 |
CN101286930B (zh) * | 2008-05-30 | 2010-12-08 | 华南理工大学 | 一种多跳无线自组织网络的拥塞自适应路由方法 |
CN101296180B (zh) * | 2008-06-19 | 2010-11-10 | 上海交通大学 | 基于吞吐量性能的无线Mesh网络自适应路由方法 |
CN101399851B (zh) * | 2008-10-30 | 2011-09-07 | 北京邮电大学 | 一种无线对等网络中节点的多源调度方法 |
CN101888326A (zh) * | 2009-05-15 | 2010-11-17 | 华为技术有限公司 | 业务连接建立方法、路径计算单元设备及网络*** |
CN101599968B (zh) * | 2009-06-29 | 2012-09-19 | 北京航空航天大学 | 可靠匿名传输方法及*** |
CN101945436B (zh) * | 2009-07-06 | 2013-04-17 | 华为技术有限公司 | 一种流量调度的方法、设备和*** |
CN101789900B (zh) * | 2009-11-19 | 2012-08-15 | 福建星网锐捷网络有限公司 | 组播转发路径的查询方法、中间节点和管理节点 |
CN101867519B (zh) * | 2010-06-03 | 2013-03-13 | 中国人民解放军91655部队 | 一种自组网的动态区域路由方法及*** |
CN101917335B (zh) * | 2010-08-04 | 2012-03-28 | 华南理工大学 | 一种保证服务质量的体域网多跳协作能量均衡路由方法 |
CN102404819A (zh) * | 2012-01-04 | 2012-04-04 | 南京大学 | 一种在无线自组织网中基于路径跳数和节点相对运动速度的路由选择方法 |
CN102595552B (zh) * | 2012-02-23 | 2014-12-10 | 武汉中元通信股份有限公司 | 基于自适应动态机制的无线分组网按需路由维护方法 |
CN103595657B (zh) * | 2013-10-25 | 2016-10-12 | 西安电子科技大学 | 基于分布式情景感知的分层式网络路由方法 |
CN103986648B (zh) * | 2014-05-06 | 2018-03-20 | 安徽理工大学 | 一种基于链路稳定性和能量感知物联网路由修复方法 |
CN107276729B (zh) * | 2017-07-21 | 2019-08-20 | 中国联合网络通信集团有限公司 | 长链路业务请求超时重发方法及中间节点 |
CN107507416B (zh) * | 2017-07-28 | 2020-08-25 | 东北大学 | 一种基于节点距离改变拥塞权重的缓解公交网络时延的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5987011A (en) * | 1996-08-30 | 1999-11-16 | Chai-Keong Toh | Routing method for Ad-Hoc mobile networks |
WO2002063847A2 (en) * | 2001-02-06 | 2002-08-15 | Certicom Corp. | Mobile certificate distribution in a public key infrastructure |
WO2002078272A1 (en) * | 2001-03-23 | 2002-10-03 | Kent Ridge Digital Labs | A method and system for providing bridged mobile ad-hoc networks |
US6683865B1 (en) * | 1999-10-15 | 2004-01-27 | Nokia Wireless Routers, Inc. | System for routing and switching in computer networks |
CN1479487A (zh) * | 2003-07-22 | 2004-03-03 | 中国科学院计算技术研究所 | 无线自组织网络中保障寻径可靠性的方法 |
CN1483266A (zh) * | 2000-09-06 | 2004-03-17 | ŵ�������繫˾ | Ad-hoc网络中的多播路由 |
-
2004
- 2004-03-26 CN CNB2004100034663A patent/CN1299478C/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5987011A (en) * | 1996-08-30 | 1999-11-16 | Chai-Keong Toh | Routing method for Ad-Hoc mobile networks |
US6683865B1 (en) * | 1999-10-15 | 2004-01-27 | Nokia Wireless Routers, Inc. | System for routing and switching in computer networks |
CN1483266A (zh) * | 2000-09-06 | 2004-03-17 | ŵ�������繫˾ | Ad-hoc网络中的多播路由 |
WO2002063847A2 (en) * | 2001-02-06 | 2002-08-15 | Certicom Corp. | Mobile certificate distribution in a public key infrastructure |
WO2002078272A1 (en) * | 2001-03-23 | 2002-10-03 | Kent Ridge Digital Labs | A method and system for providing bridged mobile ad-hoc networks |
CN1479487A (zh) * | 2003-07-22 | 2004-03-03 | 中国科学院计算技术研究所 | 无线自组织网络中保障寻径可靠性的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8078740B2 (en) | 2005-06-03 | 2011-12-13 | Microsoft Corporation | Running internet applications with low rights |
US8185737B2 (en) | 2006-06-23 | 2012-05-22 | Microsoft Corporation | Communication across domains |
US8335929B2 (en) | 2006-06-23 | 2012-12-18 | Microsoft Corporation | Communication across domains |
US8489878B2 (en) | 2006-06-23 | 2013-07-16 | Microsoft Corporation | Communication across domains |
Also Published As
Publication number | Publication date |
---|---|
CN1564544A (zh) | 2005-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1299478C (zh) | 无线自组织网络中基于节点的度的路由搜寻和维护方法 | |
CN107318146B (zh) | 移动集群自组网的拓扑控制方法 | |
Avokh et al. | Dynamic balanced spanning tree (DBST) for data aggregation in wireless sensor networks | |
Chaba et al. | Simulation based performance analysis of on-demand routing protocols in MANETs | |
CN103024856B (zh) | 位置启发因子在无线自组网蚁群节能路由建立的应用方法 | |
Bello et al. | Power control and performance comparison of AODV and DSR ad hoc routing protocols | |
Huang et al. | A routing algorithm based on cross-layer power control in wireless ad hoc networks | |
CN109874162A (zh) | 高空高速移动节点自组网的混合式路由协议设计优化方法 | |
CN106685819B (zh) | 一种基于节点能量划分的aomdv协议节能方法 | |
Lee et al. | Ad hoc on-demand distance-vector routing scalability | |
CN115134928B (zh) | 频段路由优化的无线Mesh网络拥塞控制方法 | |
Hui et al. | A survey of multipath load balancing based on network stochastic model in Manet | |
CN107801227A (zh) | 一种面向无线传感器网层次化分析的路由调度方法 | |
CN103532667A (zh) | 基于孙子剩余定理的无线传感器网络数据可靠传输方法 | |
CN103686916A (zh) | 一种基于剩余能量和期望传输次数的工业无线传感网多路径数据传输方法 | |
Yassein et al. | A new probabilistic Linear Exponential Backoff scheme for MANETs | |
Shi et al. | A clustering algorithm of ad-hoc network based on honeycomb division | |
Zhang et al. | Scalability of an ad hoc on-demand routing protocol in very large-scale mobile wireless networks | |
Weiguang et al. | Egwra: QoS routing algorithm in wireless mesh networks based on evolutionary game theory | |
Kumar et al. | A brief survey on energy efficient routing parameters protocols in WSN | |
CN108990128A (zh) | 移动网络中基于移动感知的路由设计方法 | |
Arya et al. | Performance Analysis of optimize AODV and AODV routing protocol | |
Jing et al. | On-demand multipath routing protocol with preferential path selection probabilities for MANET | |
Goyal et al. | Comparative Study of AODV and DSR Routing Protocols for MANET: Performance Analysis | |
Wang et al. | The research of a multiple disjoint paths routing protocol for ad hoc sensor networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |