1.基于信道分配的认知无线网络路由协议的实现方法,其特征在于:包括以下步骤:
步骤一、当网络中源节点收到上层的数据包,有数据要发送给目的节点,如果检测存在到达目的节点的有效路径,则按照有效路径传输,如果检测到没有合适有效路由时,即主动发起路由发现过程,进行步骤二;
步骤二、源节点在控制信道上广播路由请求信息包,该信息包包含源节点地址、目的节点地址、源节点到当前节点的路由列表以及当前节点的信道状态表;
步骤三、邻节点收到源节点发送的路由请求信息包后,首先判断是否收到过该信息,如果收到过就直接丢弃,以免造成路由环路;如果没有收到过,则进行步骤四;
步骤四、邻节点根据收到的路由请求信息包判断自己是否是目的节点,如果是目的节点,则结合自身信道列表选择最佳信道,并建立反向路由,将路径节点信息以及所选的信道封装到路由响应信息包中,如果不是目的节点,则进行步骤五;
步骤五、邻节点根据收到的路由请求信息包判断自己是否在路由列表中,如果不在路由列表中,则丢弃该路由请求信息包,如果在路由列表中,则进行步骤六;
步骤六、收到路由请求信息包的邻节点判断与上一节点是否存在公共可用信道,如果不存在,则丢弃该路由请求信息包,如果存在,则进行步骤七;
步骤七、邻节点通过信道选择算法选择最优信道作为上一节点到该邻节点这一跳的传输信道,然后更新自身路由表,并修改路由请求信息包相应字段后继续转发选择下一跳的传输信道,直到路由请求信息包到达目的节点;邻节点选择最优信道的信道选择算法为:(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之间的常量;
步骤八、目的节点收到第一个路由请求信息包后,首先启动一个定时器,在定时器结束后,如果没有收到其他的路由请求信息包,就按照该路由请求信息包建立反向路由,把路径所有节点信息以及所选的信道封装到路由响应信息包中,并沿此路径发送,以此确定了数据传输的路径;如果目的节点从不同路径收到多个路由请求信息包,则对这些路由进行筛选得到最优的传输路径,该传输路径可在保证链路信道可用概率的前提下使整条链路的时延最小;对路由进行筛选以得到最优的传输路径的具体方法为:(1)根据各个路由请求信息包中的路由列表中信道可用概率计算整条链路的投递率,假设源节点S与目的节点D通信所选路由路径为path(S,D)={S,fw1,fw2,…,fwi,…,fwh,D},fwi表示第i个中继节点,fwh表示第h个中继节点,则路由路径总跳数hops为hops=h+1,并且第i+1跳的路由链路仅与第i跳的路由链路相关,因此整条路径是一个马尔可夫过程,因此链路投递率计算公式如下:其中 表示链路 没有受到主用户活动的干扰,认知用户可以正
常使用该信道;只有满足链路投递率约束条件PS,D≥P的路由才能作为候选路由,其中P的值与网络环境有关;
(2)根据每个路由请求信息包中最初记录的时间与当前时间计算路由请求信息包到达目的节点的时延,并从小到大依次排序;
(3)从时延序列中选择最先满足链路投递率约束条件的路径作为数据传输路由。
2.根据权利要求1所述的基于信道分配的认知无线网络路由协议的实现方法,其特征在于:任一节点在信道i的可用概率的更新方法为,任一节点通过信道i发送数据后,根据以下方式更新该节点在信道i的可用概率,针对节点m: 其中Pmi表示节点m在信道i的信道可用概率;P′mi表示更新前节点m在信道i的信道可用概率,pinit是在0-1之间的常量,γ∈(0,1),k为正整数,γ,k是根据网络流量历史信息选取的经验值。
3.根据权利要求2所述的基于信道分配的认知无线网络路由协议的实现方法,其特征在于:所述γ,k及pinit的取值分别为:γ=0.8,k=2,pinit=0.8。
4.根据权利要求1所述的基于信道分配的认知无线网络路由协议的实现方法,其特征在于:任一节点计算当前信道切换到信道i的时延代价的方法为:针对节点m:Smi=k×|BWcurrent-BWi|,其中Smi表示节点m切换到信道i的时延代价,其中k为比例系数,取值为k=
10ms/MHz;|BWcurrent-BWi|表示从当前工作信道切换到信道i的频率间隔,BWcurrent表示当前信道的带宽,BWi表示信道i的带宽。