单天线多信道认知无线传感器网络路由控制方法转让专利

申请号 : CN201110359126.4

文献号 : CN103108371B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 田骥吴呈瑜蒋铃鸽何晨田军吕超

申请人 : 上海交通大学富士通株式会社

摘要 :

本发明针对单一汇聚节点和单天线多信道的认知无线传感器网络设计了一种跨层优化的单天线多信道认知无线传感器网络路由控制方法,其定义了路由特征数概念,设计了多信道半握手机制;以数据传输全路径的信道优先级与节点收发功耗的加权和最小为优化指标生成多条本地路由,并按信道/节点组合形式保存在各节点路由表中,从而以分布式路由算法实现了全网路由优化,降低了协议开销,提高了网络鲁棒性,方便了机会性频谱资源利用;通过应用多信道半握手机制,减少了数据传输中的信道切换。试验结果表明,根据本发明的路由协议在利用机会性频率资源和限制节点功耗的情况下支持QoS。在限制节点功耗条件下,减小通信时延和丢包率。

权利要求 :

1.一种单天线多信道认知无线传感器网络路由控制方法,其特征在于,包括以下步骤:

第一步、网络中节点生成路由表:

网络启动后,所有节点建立自己的初始信道优先级列表,汇聚节点将自己的信道优先级列表转换为路由表格式,并以洪泛方式发起路由生成;

其中,在洪泛过程中,每个节点收到路由表后进行以下计算,其中,节点d表示当前节点,节点s表示邻居节点,然后按[j d Cjd]格式形成路由条目:Cjd=Cjs+αRjs+βPsd

其中,Cjd为信道j/节点d组合的路由特征数,Cjs为邻居节点s的路由表中信道j/节点s组合的路由特征数,Rjs为节点d信道优先级列表中信道j的优先级,Psd为节点s到节点d的发送功率,α,β为设定的常数,调整其相对大小即可改变Rjs、Psd在Cjd中的权重;

其中:各节点路由表格式为:按路由特征数从小到大的顺序保存多个候选路由条目,条目中各元素依次指示信道编号、中继节点、以及路由特征数,每个条目以信道/节点组合形式构成一条候选数据传输路由;节点路由表中保存的条目数上限为一定值;当候选条目数大于该上限时,按路由特征数从大到小的顺序舍弃,直至满足该上限值为止;但若所有路由条目取舍结束后,某一信道的所有相关条目均被舍弃,则额外增加保留该信道路由特征数最小的条目;

其中,在数据传输阶段,这些条目仍然保存于路由表中;

第二步、路由选择与数据传输:当源节点有数据发送时,首先选择路由,从自己的路由表中选取具有最小路由特征数的信道/节点组合进行发送,如果该信道或接收节点不可用,即源节点未收到接收节点的CTS,则按照已经排序的路由条目选取次优组合;其中:在数据传输过程中,采用多信道半握手机制继续使用当前信道进行数据后续传输;

第三步、路由维护与更新:各节点路由生成由汇聚节点发起,周期性维护更新,更新时沿用各节点当前信道优先级列表计算路由特征数;

路由特征数是源节点到汇聚节点全路径参数的加权和。

2.根据权利要求1所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,采用多信道半握手机制继续使用当前信道进行数据后续传输的步骤具体为:第二中继节点在公共控制信道听到第一中继节点发出的CTS后,其中该CTS包搭载了第二中继节点被第一中继节点选中和第一中继节点将在信道i接收数据的信息,在自己的路由表中选择路由特征数最小的信道i/节点组合以确定自己的下一跳节点,并进行时间估算,时间到后在公共信道广播一个CTS,通知自己的下一跳节点准备在信道i接收数据;

之后自己跳到信道i并向第一中继节点发送CTS确认,之后,两个节点就可以直接发送数据;如果当前路由不可用,即发送节点未收到接收节点的CTS或ACK),该中继节点采用重新选择路由。

3.根据权利要求1或2所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,路由特征数用于优化从源节点到汇聚节点的路由,其计算公式为:Cjd=Cjs+αRjs+βPsd

其中,Cjd为信道j/节点d组合的路由特征数,Cjs为邻居节点s的路由表中信道j/节点s组合的路由特征数,Rjs为节点d信道优先级列表中信道j的优先级,Psd为节点s到节点d的发送功率,α,β为加权系数。

4.根据权利要求1所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,如果数据传输中出现用户冲突,则按照已经排序的路由条目选取次优组合。

5.根据权利要求1所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,多信道半握手机制是中继节点从自己的路由表中按路由特征数最小的当前信道/节点组合确定自己的下一跳节点,并在当前信道和公共控制信道分别发送CTS包,通知前导节点和后续节点,以保持数据传输在当前且可用信道上进行。

6.根据权利要求1所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,节点路由表中保存的条目数大于或等于网络中信道数目。

7.根据权利要求1所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,节点建立自己的初始信道优先级列表具体为:设网络中有n条信道,网络启动后,所有节点以随机方式按1~n的顺序建立自己的初始信道优先级列表,其中序号越小则优先级越高,并在网络运行中随当前使用信道的状态变化更新。

8.根据权利要求7中所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,随当前使用信道的状态变化更新具体为:若节点在信道i连续收发成功M次,就将信道i的优先级提高K1级;只要节点与其他用户在信道i发生冲突,就将信道i的优先级降低K2级;若信道i已处于最高/最低优先级,则不再升高/降低;其中,M、K1、K2为设定常数。

9.根据权利要求1所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,所述第三步包括如下步骤:

1)每个节点设置一个计时器T1,当计时器T1到时后,则不再发送RTS和CTS;但正在传输过程中的数据包继续传输,直到该数据包在本次通信的节点对之间传输完毕;

2)所有节点空闲下来以后,统一回到公共控制信道等待;

3)汇聚节点除计时器T1外,另有计时器T2,在T1到时后,同时启动T2进行计时,T2应大于等于节点间单次传输数据包的时长;

4)在T2到时后,汇聚节点在公共控制信道再次发起新的路由表生成,此时路由特征数计算沿用各节点当前信道优先级列表。

10.根据权利要求1所述的单天线多信道认知无线传感器网络路由控制方法,其特征在于,在所述第二步中,源节点有数据包要发送时,首先在公共控制信道上监听邻居节点是否处于发送状态,如果有任何邻居节点正在发送,则待其发送结束后再发送自己的信息,否则,在公共控制信道向由源节点路由表确定的第一中继结点发送RTS,其中,RTS包含有根据源节点路由表选择的数据传输信道信息;第一中继节点收到RTS后,如果之前没有监听到其他节点占用源节点所选信道的消息,则在公共控制信道回复CTS,这个CTS中包含第一中继节点路由表中使用该被选信道条目所确定的下一跳节点编号,其中,如果路由表中有多个使用该被选信道的条目,则从中选择路由特征数最小的条目,以通知源节点和下一跳节点,即中继节点2,然后自己跳到被选信道,再次向源节点发送CTS,并准备接收数据;源节点在公共控制信道收到CTS后,也跳到被选信道,并在该信道再次收到CTS后开始发送数据;

当选中的第二中继节点在公共控制信道收到CTS后,就进行时间估算,估算时间到时,在公共控制信道发送CTS,并跳到第一中继节点通信所在的数据信道向第一中继节点再次发送CTS,当第一中继节点接收数据完毕,收到这个CTS,则马上在这个数据信道向第二中继节点发送数据;

如果源节点选中的信道被占用,则第一中继节点不回复CTS,源节点没有收到CTS,就在路由表中选择次优的路由条目,根据这个条目再次向相应的节点发送RTS;

如果传输路径上某个中继节点在收到数据后不能继续使用原信道,则该节点按自身路由表重新选取后续中继节点和传输信道,并向相应节点发RTS,然后传输数据。

说明书 :

单天线多信道认知无线传感器网络路由控制方法

技术领域:

[0001] 本发明涉及一种用于认知无线传感器网络数据通信的路由协议,属信息技术领域,具体地,涉及一种单天线多信道认知无线传感器网络路由控制方法。背景技术:
[0002] 无线传感器网络(Wireless Sensor Networks,WSN)和大量其他无线电设备或系统“不受约束”地共享未授权频段,在使用频率资源时依一定概率互相冲突,导致数据传输失败。为解决这个问题,能捕捉和利用机会性频率资源的认知无线传感器网络(Cognitive Radio Sensor Networks,CRSN)受到关注和研究,而设计适用的路由算法是其中重要的组成部分。
[0003] 关于认知无线电网络,目前已有多种路由协议,典型的有文献“Efficient Routing Algorithms for Multi-Channel Dynamic Spectrum Access Networks”,2nd IEEE International Symposium on New Frontiers in Dynamic Spectrum Access Networks,2007,PP.288-291提出的一种基于单天线,多信道,多跳DSA(Dynamic Spectrum Access)网络的路由算法;文献“Joint on-demand routing and spectrum assignment in Cognitive Radio Networks”,2007 IEEE International Conference on Communications,Vols 1-14,PP.6499-6503提出的一种将频谱配置和按需路由结合起来的方案;文献“Stability-driven routing and spectrum selection protocol in cognitive radio networks”Proceedings of the 2009 IEEE International Conference on Communications Technology and Applications,2009,PP.269-73提出的一种将路由选择和频谱选择相结合的策略。这些协议本身面向CR设计,较少结合WSN的特点,因此直接应用于WSN存在着不足。
[0004] 由于结构及硬件的多样性,工作环境的复杂性,应用需求的千差万别,目前WSN尚没有“全能,普适”的路由协议,现有路由协议中比较有代表性的是定向扩散模型DD(文献Directed Diffusion:A Scalable and Robust Communication Paradigm for Sensor Networks[A].Proceedings of the 6th Annual ACM/IEEE International Conference on MobiCom’00[C],2000:56~67),这是一种按需查询的平面路由协议;SAR协议(文献Protocols for Self-organization of a Wireless Sensor Network[J].IEEE Personal Communications,2000,7(5):16~27),这是第一个考虑支持QoS的平面路由协议,节点需要维护多个树结构。其他还有分层路由、地理定位辅助路由等协议。这些协议一般只关注网络内部通信质量(如数据碰撞等),通常不考虑多种设备共存环境下外部因素对路由选择的影响;其次,以单跳方式生成路由,而未考虑源节点到目的节点整条传输路径的优化;对按需路由生成方式,每个节点在收到数据后,需要重新寻路,这在一定程度上增加了系统的传输时延;再者,通常以降低节点能耗为主要目标,对于节点能量受限的WSN这是十分重要的。但节点低能耗不是WSN的唯一性能指标,对于一些实时性要求高的应用领域(如网络控制系统,多媒体WSN等),降低传输时延无疑是不能忽视的问题。因此需要折中处理低功耗和低时延这一对矛盾,达成多指标综合优化。
发明内容:
[0005] 本发明提出了一种适用于单一汇聚节点的单天线多信道(含与其他用户平等共享的机会性信道)认知无线传感器网络的路由协议。该路由方案是一种“全路径跨层优化、分布式多选路由、分级使用机会性信道、信道握手保持”的主动式平面路由;通过引入信道优先级和路由特征数概念以及多信道半握手机制,MAC层和网络层跨层优化,设计了多指标平衡优化的路由生成,选择,维护方案和数据传输方案;在利用机会性频率资源和限制节点能耗的条件下支持QoS(降低传输时延和丢包率)。
[0006] 根据本发明的一个方面,提供一种单天线多信道认知无线传感器网络路由控制方法,包括以下步骤:
[0007] 第一步、网络中节点生成路由表:
[0008] 网络启动后,所有节点建立自己的初始信道优先级列表,汇聚节点将自己的信道优先级列表转换为路由表格式,并以洪泛方式发起路由生成;
[0009] 其中,在洪泛过程中,每个节点收到路由表后进行以下计算(节点d表示当前节点,节点s表示邻居节点),然后按[j d Cjd]格式形成路由条目:
[0010] Cjd=Cjs+αRjs+βPsd
[0011] 其中,Cjd为信道j/节点d组合的路由特征数,Cjs为邻居节点s的路由表中信道j/节点s组合的路由特征数,Rjs为节点d信道优先级列表中信道j的优先级,Psd为节点s到节点d的发送功率,α,β为设定的常数,调整其相对大小即可改变Rjs、Psd在Cjd中的权重;此计算式和路由特征数概念为本发明全路径优化,平衡处理通信质量与节点功耗要求的核心措施。
[0012] 其中,各节点路由表格式为:按路由特征数从小到大的顺序保存多个候选路由条目,条目中各元素依次指示信道编号、中继节点、以及路由特征数,每个条目以信道/节点组合形式构成一条候选数据传输路由;节点路由表中保存的条目数上限为一定值;当候选条目数大于该上限时,按路由特征数从大到小的顺序舍弃,直至满足该上限值为止;但若所有路由条目取舍结束后,某一信道的所有相关条目均被舍弃,则额外增加保留该信道路由特征数最小的条目;
[0013] 其中,在数据传输阶段,这些条目仍然保存于路由表中。此规定是本发明提高网络路由鲁棒性,分布式优化的核心措施。
[0014] 第二步、路由选择与数据传输:
[0015] 当源节点有数据发送时,首先选择路由,从自己的路由表中选取具有最小路由特征数的信道/节点组合进行发送,如果该信道或接收节点不可用,即源节点未收到接收节点的CTS,则按照已经排序的路由条目选取次优组合,依此类推。此选路方式为本发明机会性利用空闲频段的核心措施。;其中:在数据传输过程中,采用多信道半握手机制继续使用当前信道进行数据后续传输;
[0016] 由于路由特征数是源节点到汇聚节点全路径参数的加权和,按其最小值选择的路由即为源节点到汇聚节点的最优路由;故在数据中继传输过程中,采用多信道半握手机制继续使用当前信道进行数据后续传输,从而以分布式路由实现了全局路由优化;
[0017] 第三步、路由维护与更新:由于节点的退出、进入、移动等原因,WSN的拓扑结构是动态变化的,为适应这种情况,本发明是一种动态路由,各节点路由生成由汇聚节点发起,周期性维护更新,更新时沿用各节点当前信道优先级列表计算路由特征数。
[0018] 优选地,采用多信道半握手机制继续使用当前信道进行数据后续传输的步骤具体为:第二中继节点在公共控制信道听到第一中继节点发出的CTS后,其中该CTS包搭载了第二中继节点被第一中继节点选中和第一中继节点将在信道i接收数据的信息,在自己的路由表中选择路由特征数最小的信道i/节点组合以确定自己的下一跳节点(不再单独由路由特征数最小选择下一跳节点),并进行时间估算,时间到后在公共信道广播一个CTS,通知自己的下一跳节点准备在信道i接收数据;之后自己跳到信道i并向第一中继节点发送CTS确认,之后,两个节点就可以直接发送数据;如果当前路由不可用,即发送节点未收到接收节点的CTS或ACK),该中继节点采用重新选择路由。此机制是本发明提高通信质量的核心所在。
[0019] 优选地,路由特征数用于优化从源节点到汇聚节点的路由,其计算公式为:
[0020] Cjd=Cjs+αRjs+βPsd
[0021] 其中,节点d表示当前节点,节点s表示邻居节点,Cjd为信道j/节点d组合的路由特征数,Cjs为邻居节点s的路由表中信道j/节点s组合的路由特征数,Rjs为节点d信道优先级列表中信道j的优先级,Psd为节点s到节点d的发送功率,α,β为加权系数。
[0022] 优选地,如果数据传输中出现用户冲突,则按照已经排序的路由条目选取次优组合。
[0023] 优选地,多信道半握手机制是中继节点从自己的路由表中按路由特征数最小的当前信道/节点组合确定自己的下一跳节点,并在当前信道和公共控制信道分别发送CTS包,通知前导节点和后续节点,以保持数据传输在当前且可用信道上进行。
[0024] 优选地,节点路由表中保存的条目数大于或等于网络中信道数目。
[0025] 优选地,节点建立自己的初始信道优先级列表具体为:设网络中有n条信道,网络启动后,所有节点以随机方式按1~n的顺序建立自己的初始信道优先级列表,其中序号越小优先级越高,并在网络运行中随当前使用信道的状态变化更新。
[0026] 优选地,随当前使用信道的状态变化更新具体为:若节点在信道i连续收发成功M次,就将信道i的优先级提高K1级;只要节点与其他用户在信道i发生冲突,就将信道i的优先级降低K2级;若信道i已处于最高/最低优先级,则不再升高/降低;其中,M、K1、K2为设定常数。
[0027] 优选地,所述第三步包括如下步骤:
[0028] 1)每个节点设置一个计时器T1,当计时器T1到时后,则不再发送RTS和CTS;但正在传输过程中的数据包继续传输,直到该数据包在本次通信的节点对之间传输完毕;
[0029] 2)所有节点空闲下来以后,统一回到公共控制信道等待;
[0030] 3)汇聚节点除计时器T1外,另有计时器T2,在T1到时后,同时启动T2进行计时,T2应大于等于节点间单次传输数据包的时长;
[0031] 4)在T2到时后,汇聚节点在公共控制信道再次发起新的路由表生成,此时路由特征数计算沿用各节点当前信道优先级列表。
[0032] 优选地,在所述第二步中,源节点有数据包要发送时,首先在公共控制信道上监听邻居节点是否处于发送状态,如果有任何邻居节点正在发送,则待其发送结束后再发送自己的信息,否则,在公共控制信道向由源节点路由表确定的第一中继结点发送RTS,其中,RTS包含有根据源节点路由表选择的数据传输信道信息;第一中继节点收到RTS后,如果之前没有监听到其他节点占用源节点所选信道的消息,则在公共控制信道回复CTS,这个CTS中包含第一中继节点路由表中使用该被选信道条目所确定的下一跳节点编号,其中,如果路由表中有多个使用该被选信道的条目,则从中选择路由特征数最小的条目,以通知源节点和下一跳节点,即中继节点2,然后自己跳到被选信道,再次向源节点发送CTS,并准备接收数据;源节点在公共控制信道收到CTS后,也跳到被选信道,并在该信道再次收到CTS后开始发送数据;
[0033] 当选中的第二中继节点在公共控制信道收到CTS后,就进行时间估算,估算时间到时,在公共控制信道发送CTS,并跳到第一中继节点通信所在的数据信道向第一中继节点再次发送CTS,当第一中继节点接收数据完毕,收到这个CTS,则马上在这个数据信道向第二中继节点发送数据;
[0034] 如果源节点选中的信道被占用,则第一中继节点不回复CTS,源节点没有收到CTS,就在路由表中选择次优的路由条目,根据这个条目再次向相应的节点发送RTS;
[0035] 如果传输路径上某个中继节点在收到数据后不能继续使用原信道,则该节点按自身路由表重新选取后续中继节点和传输信道,并向相应节点发RTS,然后传输数据。
[0036] 与现有技术相比,本发明至少具有以下优点:
[0037] ①引入信道优先级概念对可利用率不同的机会性频率资源分级,并应用于路由生成;规定了信道优先级升降方法,动态自适应通信环境的变化。
[0038] ②引入MAC层信息,跨层优化路由层;通过设置路由特征数,在整条传输路径上统筹考虑单天线多信道无线传感器网络节点间信道通信质量和各节点功耗、评价各信道/节点组合的综合性能(路由特征数越小,综合性能越好),从而筛选出优化的信道/节点组合并形成路由。
[0039] ③分布式路由算法,每个节点只保存自己单跳范围内的路由表,而不需维护全网路由。但由于每条路由根据包含全路径信道优先级、节点能耗等全局信息的优化指标确定,所以本路由算法是一种全路径优化的本地算法,网络运行中,各节点不需维护全网路由即可获得全局优化,降低了协议开销。
[0040] ④具有“断点续传”功能。为适应多种电磁设备共存的应用环境和单一汇聚节点(可能导致传输路径较长)的网络结构,节点路由表包含多个信道/节点组合,并按路由特征数从小到大的顺序排列。数据传输过程中如果被选中的或使用中的组合与其他用户冲突,节点可从路由表中按信道当前状态和路由特征数另选路由重传数据。提高了路由鲁棒性,保证了在其他用户干扰情况下的网络连通性。
[0041] ⑤数据中继传输时,通过多信道半握手机制减少信道切换次数,避免节点在公共控制信道反复进行协商,提高通信实时性。
[0042] ⑥支持QoS。在限制节点功耗条件下,减小通信时延和丢包率。附图说明:
[0043] 图1为本发明路由表生成示意图;
[0044] 图2为本发明中多信道半握手机制示意图;
[0045] 图3为本发明与WOR方法平均传输时延对比曲线;
[0046] 图4为本发明与WOR方法丢包率对比曲线。具体实施方式:
[0047] 下面举例说明本发明的实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0048] 在实例中与WOR(Weighted on-demand routing)路由算法进行了比较,该 算 法 是 Wei Guo 等 在 文 献“A Weighted On-Demand Routing Algorithm in Multichannel Multihop Wireless Network,IEEE International Conference on Communication,Circuits and Systems and West Sino Expositions,Vol.1,pp.424-427,2002”中提出的一种路由算法,它以单跳范围内的信道容量和节点间收发功率的加权和作为选择路由与信道的判别数,每一个中继节点按判别数独立地选择其后续节点和数据传输信道。
[0049] 本实施例以一个含15个节点(其中节点1为汇聚节点),5个信道(其中信道0为公共控制信道)的网络场景为例进行试验;网络中15个节点随机分布,除汇聚节点外的其他节点等概率产生长度相同(10个时隙)的数据包。系统中控制信息包长度为3个时隙。实施步骤为:
[0050] 第一步:路由生成:
[0051] 如图1所示,节点F为汇聚节点,各节点路由表格式为:按路由特征数从小到大的顺序保存多个候选路由条目(条目中各元素依次为信道编号,中继节点,路由特征数),每个条目以信道/节点组合形式表示一条候选数据传输路由。保存的条目数上限为一定值,可根据应用场景和需求确定(一般应大于或等于网络中信道数目)。当候选条目数大于该上限时,按路由特征数从大到小的顺序舍弃,直至满足上限值为止。但若所有路由条目取舍结束后,某一信道的所有相关条目均被舍弃,则额外增加保留该信道路由特征数最小的条目。在数据传输阶段,这些条目仍然保存于路由表中。
[0052] 1)设网络中有n条信道,网络在“陌生环境”中启动后,所有节点以随机方式按1~n的顺序建立自己的初始信道优先级列表(序号越小,优先级越高),并在网络运行中随当前使用信道的状态变化更新(若节点在信道i连续收发成功M次,就将信道i的优先级提高K1级;只要节点与其他用户在信道i发生冲突,就将信道i的优先级降低K2级;若信道i已处于最高/最低优先级,则不再升高/降低。M、K1、K2为设定常数)。
[0053] 汇聚节点将自己的信道优先级列表转换为上述路由表格式并向邻居节点广播发送,网络中路由信息在公共控制信道以洪泛方式传输。
[0054] 2)在洪泛过程中,每个节点收到邻居节点路由表后进行以下计算(节点d表示当前节点,节点s表示邻居节点),然后按[j d Cjd]格式形成路由条目。
[0055] Cjd=Cjs+αRjs+βPsd
[0056] 其中,Cjd为信道j/节点d组合的路由特征数,Cjs为邻居节点s的路由表中信道j/节点s组合的路由特征数,Rjs为节点d信道优先级列表中信道j的优先级,Psd为节点s到节点d的发送功率,α,β为设定的常数,调整其相对大小即可改变Rjs、Psd在Cjd中的权重。
[0057] 采用洪泛方式建立路由,一个节点可能收到来自多个节点的多个路由表,按上述方法得到的路由条目数可能大于设定上限,此时先处理信道/节点组合相同的条目(即:信道相同,后续节点相同),只保留特征数最小的一个条目参加路由表排序,其他均舍弃;
然后按路由特征数从大到小的顺序舍弃多余的不同组合条目,但若所有路由条目取舍结束后,某一信道的所有相关条目均被舍弃,则额外增加保留该信道路由特征数最小的条目。在数据传输阶段,这些条目仍然保存于路由表中。
[0058] 第二步:路由选择与数据传输:
[0059] 1)当源节点需要发送数据时,首先选择路由,从自己的路由表中选取具有最小路由特征数的信道/节点组合进行发送,如果该信道或接收节点不可用(源节点未收到接收节点的CTS),则按照已经排序的路由条目选取次优组合,依此类推。比如,如图1所示(本发明路由表生成示意图(信道数为3,路由条目数上限为4;路径上数字表示节点间通信功率;结点A、B、C的路由表中最底下两个条目为编号>4而舍弃的路由)),当图1中节点C需要向汇聚节点F发送数据,就会优先选择在信道2向节点D进行传输;若节点D未向节点C发送CTS,则选择次优的条目,使用信道1向节点E发送数据。
[0060] 2)由于路由特征数是源节点到汇聚节点全路径参数的加权和,按其最小值选择的路由即为源节点到汇聚节点的最优路由;故在数据中继传输过程中,采用多信道半握手机制继续使用当前信道进行数据后续传输,即当某个中继节点在公共控制信道听到邻居节点的CTS,得知自己被邻居节点选中和邻居节点将要用于接收数据的信道i后,在自己的路由表中选择路由特征数最小的信道i/节点组合以确定自己的下一跳节点(不再单独由路由特征数最小选择下一跳节点),并进行时间估算,时间到后在公共信道广播一个CTS,通知自己的下一跳节点准备在信道i接收数据;同时自己跳到信道i等待,并在信道i向前面邻居节点发送CTS确认,之后通信双方就可以直接发送数据。无需跳回公共信道重新沟通,切换信道。例如在图1中,当节点D在信道2接收到来自节点C的数据后,根据自己的路由表,选择信道2/节点F路由,继续留在信道2向节点F发送数据。
[0061] 如果当前路由发生用户冲突或数据碰撞(发送节点未收到接收节点的CTS或ACK),该节点以自己为起点采用上述方法重新选择路由。
[0062] 具体编程方法为:源节点有数据包要发送时,首先在公共控制信道上监听邻居节点是否处于发送状态,如果有任何邻居节点正在发送,则待其发送结束后再发送自己的信息,否则,在公共控制信道向最优中继节点(由源节点路由表确定,简称为中继节点1,依此类推)发送RTS(RTS中包含有根据源节点路由表选择的数据传输信道信息);中继节点1收到RTS后,如果之前没有监听到其他节点占用源节点所选信道的消息,则在公共控制信道回复CTS,这个CTS中包含中继节点1路由表中使用该被选信道条目所确定的下一跳节点编号(如果路由表中有多个使用该被选信道的条目,则从中选择路由特征数最小的条目),以通知源节点和下一跳节点(中继节点2),然后自己跳到被选信道,再次向源节点发送CTS,并准备接收数据;源节点在公共控制信道收到CTS后,也跳到被选信道,并在该信道再次收到CTS后开始发送数据。
[0063] 当选中的中继节点2在公共控制信道收到CTS后,就进行时间估算,估算时间到时,在公共控制信道发送CTS,并跳到中继节点1通信所在的数据信道向中继节点1再次发送CTS,当中继节点1接收数据完毕,收到这个CTS,则马上在这个数据信道向中继节点2发送数据。后续中继节点依次类推。
[0064] 如果源节点选中的信道被占用,则中继节点1不回复CTS,源节点没有收到CTS,就在路由表中选择次优的路由条目,根据这个条目再次向相应的节点发送RTS。
[0065] 如果传输路径上某个中继节点在收到数据后不能继续使用原信道,则该节点按自身路由表重新选取后续中继节点和传输信道,并向相应节点发RTS,然后按上述方式传输数据。
[0066] 第三步:路由维护与更新:
[0067] 由于节点的退出、进入、移动等原因,WSN的拓扑结构是动态变化的,为适应这种情况,本发明是一种动态路由,各节点路由生成由汇聚节点发起,周期性维护更新。但WSN又区别于Ad hoc等与移动终端有关的无线自组织网络,WSN的拓扑结构一般不会频繁变化,每个节点的路由表中又保存了多条路径,这些路径同时失效的概率很小,所以路由更新周期可以比较长,以减小节点能耗。更新操作步骤如下:
[0068] 1)每个节点设置一个计时器T1,当计时器T1到时后,则不再发送RTS和CTS,但正在传输过程中的数据包继续传输,直到该数据包在本次通信的节点对之间传输完毕。
[0069] 2)所有节点空闲下来以后,统一回到公共控制信道等待。
[0070] 3)汇聚节点除计时器T1外,另有计时器T2,在T1到时后,同时启动T2进行计时,T2应大于等于节点间单次传输数据包的时长,以保证正在传输中的数据包顺利传完。
[0071] 4)在T2到时后,汇聚节点在公共控制信道再次发起新的路由表生成,此时路由特征数计算沿用各节点当前信道优先级列表。
[0072] 结合图3和图4进一步描述本发明的优点,其中,图3为本发明与WOR方法平均传输时延对比图(节点数为15,信道数为5,路由条目数上限为8,ɑ=β=0.5),图4为本发明与WOR方法丢包率对比图(节点数为15,信道数为5,路由条目数上限为8,ɑ=β=0.5)。
[0073] 图3和图4为在15个节点,5条信道的场景下,分别采用本发明方法和WOR方法得到的平均传输时延和平均丢包率随节点数据包产生率变化的对比曲线图。
[0074] 如图3、图4所示,根据本发明的CRSN路由算法的传输时延仅为WOR路由算法的50%左右,显著提高了网络通信的实时性,为高标准的后续应用奠定了基础;另一方面,对数据产生概率高的网络,根据本发明的CRSN路由算法丢包率与WOR算法相似,在数据产生概率不高的情况下,本发明路由算法的丢包率低于WOR路由算法,而目前较多WSN应用属于这种情况(如灾害预警、环境监测等)。