一种基于方向性天线的AdHoc传输数据的方法与流程

文档序号:14923350发布日期:2018-07-13 07:06阅读:200来源:国知局

本发明涉及一种移动自组网(manet)路由协议,具体说是一种基于方向性天线的adhoc传输数据的方法。



背景技术:

近来,方向性天线已经被广泛应用于无线adhoc网络。在相同功率下,方向性天线可以产生更高的增益和更远的传输范围,因此可以提高网络的空间复用率和吞吐量。另外,方向性天线的引入还能减少网络中邻居节点之间的同频干扰。同时,由于方向性天线发射距离远,可以带来以下优点:①减少路由转发的跳数。由于单跳传输距离的增加,使得在源节点到目的节点之间距离一定的情况下,数据包可以通过更少的转发次数从源节点转发到目的节点。②减少数据包的时延。当数据包在已有的路径上传输时,时延主要由处理时延、排队时延、传输时延和传播时延组成。由于路由转发跳数的减少,数据包经过的节点数减少从而降低了处理时延、排队时延和传输时延,所以数据包端到端的时延也减少了。然而,由于方向性天线的波束集中特性,方向性天线单次转发只能在某一个方向上转发,这与网络中信息共享需求存在着一定的矛盾性,由此给邻居发现和路由协议的设计带来很大的挑战。

在adhoc中,网络拓扑是变化的,又由于方向性天线的引入,节点只能在某一方向进行发送和接收消息,导致网络中节点之间的链路很容易断裂,这样adhoc就成为了一个间歇式网络。

由于间歇式网络中从源节点到目的节点的完整路径不总是存在的,传统的端到端的移动自组网路由协议,例如,dsr(动态源路由协议)、aodv(无线自组网按需平面距离向量路由协议)不再适用于间歇式网络。现有的间歇式网络路由协议绝大多数关注于减少网络负载。为了减少网络中重复冗余的消息副本,有人提出了比较极端的方法——在网络中只发送每条消息的一个副本,这种方法避免了网络中重复冗余的消息副本,但是其传递时延高,并且投递率低。为此,基于多复制的路由协议被提出来,根据不同的网络需求和应用场景,节点有选择地发送多个消息副本。



技术实现要素:

针对基于方向性天线的adhoc,为了实现网络中节点之间的通信,本发明结合方向性天线的转换模式设计了一种新颖的路由协议,以减小消息传输时延、提高消息递交率。

本发明提供的基于方向性天线的adhoc路由协议,是一种基于方向性天线的adhoc传输数据的方法,具体包括如下步骤:

步骤一:根据已建立的邻居节点表中的信息,计算邻居节点之间的连通概率以及稳定性,选择出备选节点集合;

步骤二:在备选节点集合中,计算两跳范围内节点之间通信的等待时延和可持续传输时间;

步骤三:设定节点之间的可持续传输时间阈值,根据步骤二计算所得可持续传输时间,从备选节点集合中,选出能够成功到达目的节点的有效节点,获取有效路径集合。

所述的步骤一中,连通概率是:设节点j是节点i的邻居节点;i、j均为正整数;当节点i方向性天线处于扇区si时,节点j从节点i接收的消息总数目为

则节点i通过扇区si与节点j之间的连通概率表示为

其中,m表示节点i发送消息的总时间;τ是最小时间单位,(n+1)τ表示一次收发过程所用时间,n为正整数;表示节点i从扇区si接收到的消息占从所有扇区接收到的消息的比例。

所述的稳定性计算是:引入系数其中,为节点i的扇区集合,ei表示节点i在每个扇区内全部邻居节点从节点i接收到消息总数目;

则计算稳定性值ρ(i,j,si)值越大表示链路越稳定。

所述的步骤二中,备选节点集合中邻居节点作为中继节点,根据源节点、中继节点和两跳节点的方向性天线在相遇扇区的起始时间和结束时间,分两种情况来计算节点间通信的等待时延和可持续传输时间,情况a为中继节点在不同的扇区与源节点和两跳节点相遇,情况b为中继节点在同一扇区与源节点和两跳节点相遇。

所述的步骤三中,将步骤一计算的邻居节点之间的连通概率作为权重,将步骤二计算的两节点间的可持续传输时间乘以对应的权重作为两节点间最终的可持续传输时间;对于两跳范围内节点的路径,如果两跳的最终的可持续传输时间都大于设定的可持续传输时间阈值h,则表示该路径为有效路径,该路径中的中继节点为有效节点;否则,该路径为无效路径。

相对于现有技术,本发明的优点和积极效果在于:

①适用于基于方向性天线的adhoc;

②根据方向性天线的扇区和转换模式,引入了邻居节点之间的连通概率和稳定性,确保了所选路径的有效性;

③路径决策过程中,考虑了等待时延和可持续传输时间,有效提高了路由决策的准确性。

附图说明

图1是本发明实施例中邻居节点表的示意图;

图2是节点分布情况示意图;

图3a是方向性天线指向扇区时间分析示意图;

图3b是方向性天线指向扇区时间分析示意图;

图4是实例节点分布示意图。

具体实施方式

下面将结合图对本发明作进一步的详细说明。

本发明是一种针对基于方向性天线的adhoc的路由协议。由于方向性天线的使用,使得天线只能在某一扇区发送和接收消息,降低了节点之间的信息共享,例如,在某时刻,两节点处于彼此的通信范围内,但是它们的方向性天线并没有相对,这两个节点之间依然不能进行通信。因此,在基于方向性天线的adhoc中,节点之间的链路很不稳定。在建立路由过程中,必须考虑方向天线的转换模式和所在扇区。

本发明实现的基于方向性天线的adhoc路由传输数据的方法,具体过程包括以下几个步骤:

步骤一:根据已建立的邻居节点表中的信息,计算邻居节点之间的连通概率以及稳定性,选择出备选节点集合。

由邻居发现过程建立邻居节点表,如图1所示。其各字段含义如下:

1)neighborid:邻居节点的id;

2)sector_s:记录邻居节点接收此条消息时,其方向性天线所指向的扇区;

3)des_n(durationforeverysectoroftheneighbornode):记录邻居节点方向性天线在每个扇区的停留时间;

4)sector_n(sectoroftheneighbornodeforthelastcommunication):记录上一次发现该邻居节点时,节点自身方向性天线所指向的扇区;

5)tns_n(timetonextsectorofneighbornode):记录该邻居节点方向性天线到达下一扇区所需时间,即csi,节点每次广播消息时都会重置csi;

两跳节点列表中记录:

6)two-hopnodeid:记录两跳节点的id;

7)sector_n_t(sectoroftheneighbornodewithtwo-hopnodeforthelastcommunication):记录该邻居节点与两跳节点上一次通信的扇区;

8)des_t(durationforeverysectorofthetwo-hopnode):记录两跳节点在其邻居节点的每个扇区的持续时间;

9)sector_t(sectorofthetwo-hopnodeforthelastcommunication):记录与两跳节点最后一次通信的扇区;

10)tns_t(timetonextsectoroftwo-hopnode):记录两跳节点方向性天线到达下一扇区所需时间,与tns_n相同;

11)time_flag:记录两节点的方向性天线相对的开始时刻,即与该邻居节点相遇的时刻。

假设节点分布情况如图2所示,节点i需要发送数据,从其邻居节点表信息可知,节点j是它的邻居节点,为了确定节点i通过扇区si与节点j通信的可能性,计算节点i与节点j之间的连通概率,即节点i方向性天线位于si扇区时,能够与节点j通信的概率大小为:

其中,表示当节点i方向性天线处于扇区si时,节点j从节点i接收的消息总数目;si表示节点i方向性天线所在扇区,为节点i的扇区集合;m表示节点i发送消息的总时间;τ是最小时间单位,即发送一次hello消息所用的时间,接收response消息所用时间是nτ,所以(n+1)τ表示一次收发过程所用时间。表示节点i从扇区si接收到的消息占节点i从所有扇区接收到的消息的比例,计算公式如下:

其中,li表示节点i邻居节点表中记录的邻居节点集合。

另外,为了确定扇区si是节点i与节点j进行通信的最佳扇区,需要考虑二者邻居关系的稳定性,本发明引入一个系数σij如下:

其中,表示节点j从节点i全部扇区接收的消息总数目;表示节点i在每个扇区内全部邻居节点从节点i接收到消息总数目。

综合考虑和σij,本发明定义稳定性值如下:

ρ(i,j,si)值越大表示链路越稳定。根据ρ(i,j,si)由大到小从邻居节点中选取备选节点集合。

步骤二:在备选节点集合中,计算两跳范围内节点之间通信的等待时延和可持续传输时间。

如图3a和图3b所示,图中矩形框表示节点在某一扇区停留的时间,重叠部分(阴影区域)表示两节点方向性天线相对的时间段。矩形框的起点表示节点的方向性天线进入该扇区的时刻,矩形框的长度表示方向性天线在该扇区停留的时间。源节点i的矩形框的位置和长度是由扇区分布(已知)决定的,比如矩形框sij表示源节点i方向性天线在与节点j相对扇区所停留的时间,中继节点j和两跳节点k的矩形框的位置和长度分别由邻居节点表中的neighbor-informationarea和two-hopnodelist决定。时间轴零点的位置表示源节点i准备发送消息的时刻。源节点i可以在任意时刻发送消息,也就说点o的位置可以在矩形框sij上任意位置。根据点o位置,可以分为两种情况:a.位于重叠区域之前,如图3a中的o点;b.位于重叠区域,如图3a中的o'点和图3b中的o点。如果o点晚于重叠区域,如图3b中的o'点,它将必须等待下一个通信扇区。如图3a和3b所示,标记节点i与节点j方向性天线相对时,节点i方向性天线位于扇区sij,节点j方向性天线位于扇区sji,对应地,节点i方向性天线在扇区sij停留的时间为sij,节点j方向性天线在扇区sji停留的时间为sji;同理,标记节点j与节点k方向性天线相对时,节点j方向性天线位于扇区sjk,节点k方向性天线位于扇区skj,对应地,节点j方向性天线在扇区sjk停留的时间为sjk,节点k方向性天线在扇区skj停留的时间为skj。

消息被中继节点j成功接收后,中继节点j将消息发送给两跳节点k。根据此时中继节点j和两跳节点k之间的关系,需要考虑两种情况:a.中继节点j和两跳节点k的方向性天线不相对,如图3a所示,中继节点j需要等待一段时间,直到二者方向性天线相对可以实现通信;b.中继节点j和两跳节点k的方向性天线相对,如图3b所示,这时中继节点j可以立即把消息发送给两跳节点k。

从图3a和图3b可以看出,为了指明节点i、节点j和节点k三者的方向性天线所在扇区的位置和时间关系,需要知道天线指向这些扇区的起始时间和结束时间。下面说明计算相关的起始时间和结束时间:

源节点i方向性天线所指向扇区的起始时间和结束时间已知,即根据邻居节点表,可以获知以下信息:

中继节点j与源节点i方向性天线开始相对的时刻(即二者相遇时刻)为此时中继节点j方向性天线所在扇区为sji,它在该扇区预计停留总时间为剩余停留时间为表示节点j从扇区sji接收到的消息数/节点j从所有扇区接收到消息总数,t表示节点方向性天线旋转一周所用时间。这样,可以求得:中继节点j方向性天线离开扇区sji的时刻,即结束时间进入扇区sji的时刻,即开始时间同理,两跳节点k与中继节点j相遇时刻为此时两跳节点k方向性天线所在扇区为skj,它在该扇区skj预计停留总时间为剩余停留时间为所以两跳节点k方向性天线离开该扇区skj的时刻进入该扇区skj的时刻表示节点k从扇区skj接收到的消息数/节点k从所有扇区接收到消息总数。

上面计算获得sji和skj的起始时刻,下面计算sjk的起始时刻。

在计算中继节点j与两跳节点k相遇所在扇区sjk的开始时刻和结束时刻时,需要考虑之前所述的两种情况:

情况a.中继节点j在不同的扇区与源节点i和两跳节点k相遇,即sji≠sjk,如图3a所示,中继节点j方向性天线离开该扇区sjk的时刻相应的进入该扇区的时刻rf表示节点j从扇区f接收到的消息数/节点j从所有扇区接收到消息总数,扇区f为从扇区sji的下一个扇区到扇区sjk;表示节点j从扇区sjk接收到的消息数/节点j从所有扇区接收到消息总数。

情况b.中继节点j在同一扇区与源节点i和两跳节点k相遇,即sji=sjk,如图3b所示,则中继节点j方向性天线离开该扇区的时刻相应的进入该扇区的时刻

根据源节点、邻居节点和两跳节点的方向性天线在相关扇区的起始时间和结束时间,下面计算消息在三者之间的等待时延和可持续传输时间。

假设源节点i在t0时刻准备发送消息。定义:是路径h的第一跳的等待时间,是路径h的第二跳等待时间,是路径h第一跳的可持续传输时间,是路径h第二跳的可持续传输时间。路径h类似于图3a中的i→j→k。

在图3a的情况a下,如果表示源节点i准备发送消息的时刻早于其与中继节点j方向性天线相对的时刻,此时,

否则,如果源节点i准备发送消息的时刻t0在其与中继节点j方向性天线相对期间,此时,发送消息无需等待,即:

同理,中继节点j与两跳节点k间的等待时间可持续传输时间

因此,路径h总的传输时延

相应地,在图3b的情况b下,由于中继节点j在同一扇区与源节点i和两跳节点k相遇,消息从中继节点j传到两跳节点k无需等待,即

如果源节点i准备发送消息时刻t0早于三者方向性天线相对时刻,路径h总的传输时延两跳可持续传输时间相等,

否则,如果t0在三个节点方向性天线相对期间,无需等待,即两跳的可持续传输时间相等,即

步骤三:设定节点之间的可持续传输时间阈值,根据步骤二计算所得可持续传输时间,从备选节点集合中,选出能够成功到达目的节点的有效节点集合,即有效路径。

假设源节点i的备选节点集合中邻居节点子集为li,每个邻居节点具有βm(m∈li)个两跳节点。这样,到达两跳节点的潜在路径数目为定义这些潜在路径集合为下面,将从中选取能够成功到达两跳节点的子集,即有效路径集合

从步骤二计算分析过程可以看出,一个完整的传输周期包括等待时延和持续传输时间。对于一条从源节点到两跳节点的特定路径,例如路径h(i→j→k),其链路稳定性和持续传输时间决定其能否成功传输数据。因此,本发明提出了一个不等式来度量路径能否成功传输消息,即其中分别表示计算所得每跳最终的可持续传输时间,h表示每跳的理论传输时延和传播时延之和,为正数。由于节点之间距离相对较小,传播时延可以忽略不计,另外,每个数据包的大小都是相同的,所以假设每一跳的h都是相等的。实际上,该不等式表明了完成消息传输的每跳的最小可持续传输时间。

为了减少网络的负载,本发明给每个数据包设定一个生存时间γ,γ由传输数据包的路径决定的,如果一个数据包在网络中存在的时间超过其γ,则该数据包就会失效。表示路径r的等待时延,其计算与前面相同。

本发明利用不等式从潜在路径集合中选出有效路径子集

1a.对于每条路径设i、j、k分别是路径u上源节点、中继节点和两跳节点,都进行如下流程处理:令如果满足ωu>h,则该路径为有效路径,将其添加进有效节点集合中。

1b.如果经过1a过程处理,没有寻找到有效路径,即为空,则源节点继续邻居发现,直到发现有效路径。

1c.在有效路径集合中,根据链路稳定稳定系数σijσjkωu从高到底对每条路径进行排序。

为了控制网络负载,本发明设定每条消息的副本数量v。如果v小于有效路径的数量,则选取有效路径集合中的前v条有效路径进行传输;如果v大于有效路径数量,则有效路径集合中每条路径都用来传输消息副本。

另外,为了提高路由传输数据的健壮性,针对可能出现的极端情况——邻居节点表没有记录目标节点的信息,设计了一个补充路由传输数据算法,具体如下:

2a.源节点i将在其邻居节点中寻找具有邻居节点数量多于源节点i邻居节点数量的节点,例如节点j,满足|βj|>|li|,将其添加有效节点集合βj为节点j的邻居节点数量。

2b.如果经过2a过程没有找到有效邻居节点,即为空,源节点i将在寻找这些邻居节点,满足其邻居节点不同于源节点i的邻居节点,例如邻居节点j,βj≠li,将其添加进有效节点集合中。

2c.源节点i将把消息转发给这些有效节点进一步进行寻路。

实施例

本发明是一种针对基于方向性天线的移动自组网的路由协议,为了分析其性能,具体实施如下:

步骤一:根据已建立的邻居节点表中的信息,计算邻居节点之间的连通概率以及稳定性,选择出备选节点集合。

如图4所示,在一个20km×20km二维平面内,分布8个节点。每个节点安装相同方向性天线,通信半径r=10km,方向性天线辐射扇区角度为一共具有6个辐射扇区,按顺时针编号0-5。方向性天线旋转周期t=180τ,收发过程交替进行,一次接收消息历时9τ,一次发送消息历时1τ,这样一次收发过程历时10τ。节点移动速度较慢,其方向性天线旋转一周的时间内,大概行进15米,同时节点的行进方向是随机的。如图4所示,源节点⑧要向目的节点②发送消息,由源节点⑧邻居节点表可知,节点①,②,③,⑥,⑦,⑧之间连通概率较高,邻接关系相对稳定,就可以选出这些节点作为一个备选节点集合{①,②,③,⑥,⑦}。

步骤二:在备选节点集合中,计算两跳范围内节点之间通信的等待时延和可持续传输时间。

根据设定的方向性天线旋转模式,计算备选节点①,②,③,⑥,⑦之间的等待时延和可持续传输时间。

步骤三:设定节点之间的可持续传输时间阈值,根据步骤二计算所得可持续传输时间,从备选节点集合中,选出能够成功到达目的节点的有效节点集合,即有效路径。

如图4所示,在备选节点集合{①,②,③,⑥,⑦}中,源节点⑧到达目的节点②的路径一共存在两条:a.⑧→①→②;b.⑧→③→②。根据这两条路径的等待时延和可持续传输时间,判断其是否为有效路径。经过判断,这两条路径a、b均是有效路径。

源节点发送的消息副本数量控制在总节点数量的5%-20%,消息发送时刻随机,消息可以以很高的概率传到目的节点。通过分析,可以得出:由于方向性天线在存在邻居节点较多的的扇区内会停留较长时间,一定程度上增加了节点之间连通的时间,所以即使节点密度较低,依然可以保证节点之间较大的可持续传输时间,同时减少来自其它扇区干扰。另一方面,节点密度较高时,只需要发送较少的消息副本,就能保证较高的递交率和很低的传输时延。从而可以说明本发明设计的路由协议是可行的,具有很好的性能。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1