基于信道分配的认知无线网络路由协议的实现方法与流程

文档序号:11207668阅读:511来源:国知局
基于信道分配的认知无线网络路由协议的实现方法与流程
本发明涉及通信
技术领域
,具体地说是基于信道分配的认知无线网络路由协议的实现方法。
背景技术
:无线通信技术自二十世纪诞生以来得到了高速发展,给人们的生活带来了极大的便利,同时无线网络技术也被广泛用于军事、工业、商业等诸多领域,是人类社会和经济发展的重要组成部分,作为数据传输的载体,有限的频谱资源已经难以满足人类目前的通信需求。在此背景下,为了缓解越来越紧张的频谱资源,认知无线电技术得到了广泛的关注,被应用于认知无线网络,其核心思想是认知用户采用特有的检测装置自动对当前环境中可用频谱进行感知,找到空闲信道,在不干扰授权用户的前提下,择机接入信道,达到频谱复用的目的,从而提高网络传输性能。这就是认知无线网络与传统无线网络的最大区别,应用了认知无线电技术,路由协议自然也会有所不同。针对这一点,学者们提出了许多有价值的适用于认知无线网络的路由协议,能够在一定程度上解决网络中的各种问题,主要分为两类:集中式路由和分布式路由。集中式路由是在掌握网络拓扑结构和全部节点的频谱可用性的前提下求出最优路由,其缺点是在网络拓扑和频谱资源变化较大时,路由代价很大;分布式路由是指采用按需路由和频谱分配相结合的方式建立路由,在需要发送数据的时候,才开始发起路由请求,在建立路由的同时分配信道,从而避免频繁更新全局信息,提高路由性能。许多研究成果表明,在每一跳上建立路由请求的同时考虑信道的选择,要比独立进行的性能好很多。.jsorp(jointspectrumassignmenton-demandroutingprotocol)[3]和olch(on-leastchannelhandoff)[4]虽然考虑到路由时延对路由性能的影响,但没有充分考虑由于授权用户随时接入信道造成对认知用户的干扰而引起的路由性能的下降。传统路由协议aodv节点通信时,路由选择过程中没有考虑到信道分配的问题。而不同于传统无线网络,认知无线网络是一种二级网络,认知节点也叫次级用户,只有在一级用户的授权频段空闲时,才能使用这些频段进行数据通信,路由协议的设计必须考虑信道分配。为了满足网络性能要求,保证吞吐量和规定的数据传输,每个认知节点都具有认知无线电技术,能在多条可用信道间切换,切换到空闲信道进行通信。主用户也就是一级用户对信道的占用是抢占式的,认知用户一旦检测到主用户在使用授权信道,必须立即无条件退出频道,所以在认知无线网络中,设计的路由协议必须考虑到主用户对认知用户的干扰,同时认知节点需要不断的在不同信道上切换,因此带来的信道切换时延也是不可忽视的。尤其是在多跳网络数据发送过程中,这种问题更加明显。当某一节点同时在不同的路由路径中作为中继节点转发数据时,若两条路径所选的信道不一样时,节点必须在不同的信道间进行切换,才能保证多条路径正常通信,这就导致了信道频繁切换时延。另一方面对于认知无线网络多信道多跳路由,相比于单跳路由,主用户活动严重影响了端到端的稳定性。单跳路由只需考虑本地的信道可用率,而多跳路由必须考虑所有链路的稳定性,因为每条链路失效都会对端到端稳定性造成影响。假设一条路径为s-a-b-d,假设由于授权用户的活动导致a-b之间的选择的信道不可用,使得链路失效,无论其他链路是否连通,整条链路还是不可用的,若想完成数据传输,必须重建路由,而路由的重建往往会造成额外的时延和更多的能量浪费。所以对于多跳路由在考虑路径时,必须考虑到路由的稳定性。本发明提出了一种基于信道分配的认知无线网络路由协议(spectrumallocationroutingprotocol,sarp),在考虑了信道可用率和信道切换时延的基础上,进行信道选择,确保信道可用的前提下,以端到端时延最短作为最佳路由的选择标准,提高路由的时延性能和数据的投递率。技术实现要素:本发明所要解决的技术问题是提供基于信道分配的认知无线网络路由协议的实现方法,以信道可用率和信道切换时延为信道选择标准,在确保信道可用的条件下,减少信道切换次数,降低路由时延,提高数据投递率。本发明为解决上述技术问题所采用的技术方案是:基于信道分配的认知无线网络路由协议的实现方法,包括以下步骤:步骤一、当网络中源节点收到上层的数据包,有数据要发送给目的节点,如果检测存在到达目的节点的有效路径,则按照有效路径传输,如果检测到没有合适有效路由时,即主动发起路由发现过程,进行步骤二;步骤二、源节点在控制信道上广播路由请求信息包,该信息包包含源节点地址、目的节点地址、源节点到当前节点的路由列表以及当前节点的信道状态表;步骤三、邻节点收到源节点发送的路由请求信息包后,首先判断是否收到过该信息,如果收到过就直接丢弃,以免造成路由环路;如果没有收到过,则进行步骤四;步骤四、邻节点根据收到的路由请求信息包判断自己是否是目的节点,如果是目的节点,则结合自身信道列表选择最佳信道,并建立反向路由,将路径节点信息以及所选的信道封装到路由响应信息包中,如果不是目的节点,则进行步骤五;步骤五、邻节点根据收到的路由请求信息包判断自己是否在信道列表中,如果不在信道列表中,则丢弃该路由请求信息包,如果在信道列表中,则进行步骤六;步骤六、收到路由请求信息包的邻节点判断与上一节点是否存在公共可用信道,如果不存在,则丢弃该路由请求信息包,如果存在,则进行步骤七;步骤七、邻节点通过信道选择算法选择最优信道作为这一跳的传输信道,然后更新自身路由表,并修改路由请求信息包相应字段后继续转发选择下一跳的传输信道,直到路由请求信息包到达目的节点;步骤八、目的节点收到第一个路由请求信息包后,首先启动一个定时器,在定时器结束后,如果没有收到其他的路由请求信息包,就按照该路由请求信息包建立反向路由,把路径所有节点信息以及所选的信道封装到路由响应信息包中,并沿此路径发送,以此确定了数据传输的路径;如果目的节点从不同路径收到多个路由请求信息包,则对这些路由进行筛选得到最优的传输路径,该传输路径可在保证链路信道可用概率的前提下使整条链路的时延最小。本发明所述步骤七中邻节点选择最优信道的信道选择算法为:(1)节点n在接收到节点m的信道状态表后,首先根据两节点的信道状态表选择两节点的公共可用信道集,并提取出两节点信道状态表中信道可用概率和切换时延;(2)分别计算各个信道的信道可用率pi=pmi·pni,其中pmi、pni分别表示节点m和节点n在信道i的可用概率;(3)分别计算各个信道的信道切换时延si=smi+sni,其中smi、sni分别表示节点m和节点n切换到信道i的时延代价;(4)计算每个符合条件的信道的权重weight=αpi-(1-α)si,并按照从大到小的顺序依次排列,从中选择权重最大的信道作为数据传输频道,其中α为0到1之间的常量。本发明所述的任一认知节点在信道i的可用概率的更新方法为,认知节点通过信道i发送数据后,信道可用概率按以下方式更新:其中pi'是节点在发送数据之前信道i的可用概率,pinit是在0-1之间的常量,γ∈(0,1),k为正整数,γ,k是根据网络流量历史信息选取的经验值。本发明所述γ,k及pinit的取值分别为:γ=0.8,k=2,pinit=0.8。本发明所述的任一节点由当前信道切换到信道i的信道切换时延的计算方法为:si=k×|bwcurrent-bwi|,其中k为比例系数,取值为k=10ms/mhz;|bwcurrent-bwi|表示从当前工作信道切换到信道i的频率间隔,bwcurrent表示当前信道的带宽,bwi表示信道i的带宽。本发明所述步骤八中对路由进行筛选以得到最优的传输路径的具体方法为:(1)根据各个路由请求信息包中的路由列表中信道可用概率计算整条链路的投递率,假设源节点s与目的节点d通信所选路由路径为path(s,d)={s,fw1,fw2,…,fwi,…,fwh,d},fwi表示第i个中继节点,则路由路径总跳数hops为hops=h+1,并且第i+1跳的路由链路仅与第i跳的路由链路相关,因此整条路径是一个马尔可夫过程,因此链路投递率计算公式如下:其中表示链路没有受到主用户活动的干扰,认知用户可以正常使用该信道;只有满足链路投递率约束条件ps,d≥p的路由才能作为候选路由,其中p的值与网络环境有关;(2)根据每个路由请求信息包中最初记录的时间与当前时间计算路由请求信息包到达目的节点的时延,并从小到大依次排序;(3)从时延序列中选择最先满足链路投递率约束条件的路径作为数据传输路由。本发明的有益效果是:本发明的路由协议主要是以信道可用率和信道切换时延为信道选择标准,综合考虑了链路投递率和端到端时延,在确保信道可用的条件下,选择端到端时延最短的作为最佳路由,减少信道切换次数,降低路由时延,提高数据投递率,保证了数据传输的可靠性;该协议不需要中心控制节点管理全网络的频谱分布信息,采用基于历史信息的信道可用率评估授权信道的使用情况,有效地降低数据传输过程中授权用户对路由的干扰,降低信道失效的次数,使得全网获得较高的数据投递率和较低的数据投递时延;采用局部维护机制对已选的路由进行维护,更能适应环境多变的多信道认知无线网络。附图说明图1为本发明路由请求信息包格式图;图2为本发明邻节点处理路由请求信息包的流程;图3为本发明路由协议与tdrp、carp在不同通信节点距离下时延仿真对比图;图4为本发明路由协议与tdrp、carp在不同通信节点距离下数据投递率仿真对比图;图5为本发明路由协议与tdrp、carp在不同发送率下的时延仿真图;图6为本发明路由协议与tdrp、carp在不同发送率下的数据投递率仿真对比图。具体实施方式基于信道分配的认知无线网络路由协议的实现方法,包括以下步骤:步骤一、当网络中源节点收到上层的数据包,有数据要发送给目的节点,如果检测存在到达目的节点的有效路径,则按照有效路径传输,如果检测到没有合适有效路由时,即主动发起路由发现过程,进行步骤二;步骤二、源节点在控制信道上广播路由请求信息包,该信息包包含源节点地址、目的节点地址、源节点到当前节点的路由列表以及当前节点的信道状态表;步骤三、邻节点收到源节点发送的路由请求信息包后,首先判断是否收到过该信息,如果收到过就直接丢弃,以免造成路由环路;如果没有收到过,则进行步骤四;步骤四、邻节点根据收到的路由请求信息包判断自己是否是目的节点,如果是目的节点,则结合自身信道列表选择最佳信道,并建立反向路由,将路径节点信息以及所选的信道封装到路由响应信息包中,如果不是目的节点,则进行步骤五;步骤五、邻节点根据收到的路由请求信息包判断自己是否在信道列表中,如果不在信道列表中,则丢弃该路由请求信息包,如果在信道列表中,则进行步骤六;步骤六、收到路由请求信息包的邻节点判断与上一节点是否存在公共可用信道,如果不存在,则丢弃该路由请求信息包,如果存在,则进行步骤七;步骤七、邻节点通过信道选择算法选择最优信道作为这一跳的传输信道,然后更新自身路由表,并修改路由请求信息包相应字段后继续转发选择下一跳的传输信道,直到路由请求信息包到达目的节点;步骤八、目的节点收到第一个路由请求信息包后,首先启动一个定时器,在定时器结束后,如果没有收到其他的路由请求信息包,就按照该路由请求信息包建立反向路由,把路径所有节点信息以及所选的信道封装到路由响应信息包中,并沿此路径发送,以此确定了数据传输的路径;如果目的节点从不同路径收到多个路由请求信息包,则对这些路由进行筛选得到最优的传输路径,该传输路径可在保证链路信道可用概率的前提下使整条链路的时延最小。进一步,本发明所述步骤七中邻节点选择最优信道的信道选择算法为:(1)节点n在接收到节点m的信道状态表后,首先根据两节点的信道状态表选择两节点的公共可用信道集,并提取出两节点信道状态表中信道可用概率和切换时延;(2)分别计算各个信道的信道可用率pi=pmi·pni,其中pmi、pni分别表示节点m和节点n在信道i的可用概率;(3)分别计算各个信道的信道切换时延si=smi+sni,其中smi、sni分别表示节点m和节点n切换到信道i的时延代价;(4)计算每个符合条件的信道的权重weight=αpi-(1-α)si,并按照从大到小的顺序依次排列,从中选择权重最大的信道作为数据传输频道,其中α为0到1之间的常量。进一步,本发明所述的任一认知节点在信道i的可用概率的更新方法为,认知节点通过信道i发送数据后,信道可用概率按以下方式更新:其中pi'是节点在发送数据之前信道i的可用概率,pinit是在0-1之间的常量,γ∈(0,1),k为正整数,γ,k是根据网络流量历史信息选取的经验值。进一步,本发明所述γ,k及pinit的取值分别为:γ=0.8,k=2,pinit=0.8。进一步,本发明所述的任一节点由当前信道切换到信道i的信道切换时延的计算方法为:si=k×|bwcurrent-bwi|,其中k为比例系数,取值为k=10ms/mhz;|bwcurrent-bwi|表示从当前工作信道切换到信道i的频率间隔,bwcurrent表示当前信道的带宽,bwi表示信道i的带宽。进一步,本发明所述步骤八中对路由进行筛选以得到最优的传输路径的具体方法为:(1)根据各个路由请求信息包中的路由列表中信道可用概率计算整条链路的投递率,假设源节点s与目的节点d通信所选路由路径为path(s,d)={s,fw1,fw2,…,fwi,…,fwh,d},fwi表示第i个中继节点,则路由路径总跳数hops为hops=h+1,并且第i+1跳的路由链路仅与第i跳的路由链路相关,因此整条路径是一个马尔可夫过程,因此链路投递率计算公式如下:其中表示链路没有受到主用户活动的干扰,认知用户可以正常使用该信道;只有满足链路投递率约束条件ps,d≥p的路由才能作为候选路由,其中p的值与网络环境有关;(2)根据每个路由请求信息包中最初记录的时间与当前时间计算路由请求信息包到达目的节点的时延,并从小到大依次排序;(3)从时延序列中选择最先满足链路投递率约束条件的路径作为数据传输路由。进一步,本发明路由协议建立之后,授权用户可能会随时占用授权信道导致节点间通信中断,从而导致整条链路的失效,因此必须对已建立的路由进行维护,当节点检测到授权用户的干扰时,采用以下方法进行路由维护:1)局部维护;首先重新检测失效的链路中两节点间是否存在其他的公共可用信道,如果存在就采用信道选择算法重新选择信道,确保数据传输正常进行,如果两节点间不存在公共可用信道必须重建路由。2)重建路由;如果由于主用户的干扰,两节点间通信终中断,且检测不到公共可用信道,就必须重新进行路由发现过程,建立路由。此时发生错误的认知节点沿着路由向源节点发送rrer控制包,通知源节点路由已经失效,源节点收到路由错误消息后立即停止发送数据,重新启动路由发现过程建立路由。实验仿真与分析采用matlab对本发明提出的基于信道分配的认知无线网络路由协议进行仿真验证并分析仿真结果,本发明的路由协议(简称sarp)分别与基于时延的路由协议(简称tdrp)和基于信道可用概率的路由协议(简称carp)在端到端时延和数据投递率方面做对比。1.仿真参数设置采用2000m*2000m的仿真场景,在此矩形平面区域内,随机地部署200个认知节点。网络中有9条数据信道和一个公共控制信道,不同信道的信道状态相互独立且随机,占用时长和空闲时长服从指数分布,我们设计两个相互间隔的定时器来模拟主用户的行为。所有认知节点可以随意使用公共控制信道,且在初始状态下认知节点的接口都在控制信道上,每个分组发送1000个数据包,其他仿真环境参数的设置如表1。表1仿真参数设置参数名参数值仿真场景大小2000m*2000m授权用户数9认知用户数200最大传输距离200m授权信道带宽10m相邻信道间隔10mhz数据包大小1024bit稳定性约束条件0.62.仿真结果及性能分析与本发明协议(sarp)做对比的是基于时延的路由协议tdrp以及基于信道可用概率的路由协议carp,在端到端时延和网络数据投递率两个方面进行了对比。端到端时延是指数据包从源节点传递到目的节点所需的累积时延;数据投递率是指目的节点接收到的数据包数量与源节点发送数据包数量的比值。(1)不同通信节点距离下路由性能的比较仿真场景是相同网络范围,不同源、目的节点距离对路由性能进行评估,源节点固定,分别与不同距离的目的节点通信,其他认知节点随机分配。源节点与目的节点的距离分别取值500、1000、1500、200,数据包发送速率为20kbit/s。由图3可以看出,三种路由算法的平均时延会随着源节点与目的节点的增大而增加,这主要是因为距离增大,从源节点到目的节点的跳数增加,数据传输时延和处理时延增加,因而平均时延也相应的增加。还可以看出在通信两点距离较小时,基于时延的路由协议tdrp和本发明sarp优于基于信道可用概率的路由协议carp,但是随着传输距离增大,路由跳数会增加,基于时延的路由协议tdrp由于稳定性不高需要多次重建路由导致端到端时延增大,基于信道可用概率的路由协议carp虽然因稳定性稍优于基于时延的路由协议tdrp不需要多次重建路由,但是其本身选择路由时就没有选择具有最佳时延的路由,所以其端到端时延也很高。本发明sarp充分考虑了信道可用率和路由时延因而相对于其他两种路由协议表现最好。不可靠的无线链路可能导致一定的丢包率,我们从数据投递率检测无线链路丢包对路由的影响。从图4可以看出,三种协议的数据投递率会随着通信节点的距离增加而降低,但是仔细观察可以看出,本发明sarp相对于其他两种协议降低的速率较低,这是因为通信节点距离增加,路由跳数也会增加,基于时延的路由协议tdrp由于没有选择信道可用率较高的路由,从而造成很大的丢包率,平均投递率下降很快,而基于信道可用概率的路由协议carp和本发明sarp的投递率考虑到了信道可用率,路由稳定性较高,并不会下降的太快。(2)不同数据包发送率下路由性能的比较仿真场景是在相同网络范围下同一对源、目的节点对路由性能进行评估,其他认知节点随机分配。源节点与目的节点的数据包发送率kbit/s分别取值20、40、60、80,通信节点距离为1500m。从图5中可以看出,当数据包发送速率增加时,三种路由协议的平均时延都会增加,但是基于信道可用概率的路由协议carp相对于其他两种协议明显增加的较快,这是因为基于信道可用概率的路由协议carp选择的是可用信道概率较高的信道进行数据传输,发送速率太快信道竞争激烈,会造成节点的拥塞,时延随之增加。而基于时延的路由协议tdrp和本发明sarp在选择信道时考虑到了信道切换时延问题,因此能较好的缓解发送速率增大带来的时延。从图6可以看出,当数据包发送率较小时,三种协议的平均投递率表现非常接近,但是随着发送速率增加,基于时延的路由协议tdrp的平均投递率下降的非常快,因为其选择路由时只考虑到的时延最短,没有关心信道可用概率,造成数据包的丢失,投递率随之下降。而基于信道可用概率的路由协议carp和本发明sarp由于选择了信道概率较大的路由,投递率下降幅度相对较低。因此考虑到数据投递率和端到端延时两个评价指标,本文提出的sarp相比较于其他两种协议表现较好,比基于时延的路由协议tdrp的数据投递率高,比基于信道可用概率的路由协议carp的端到端时延短。仿真实验表明,本发明提出的路由协议相比于基于时延的路由和基于信道可用率的路由协议,在数据包传输时延、和数据投递率方面表现更好。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1