专利名称:一种基于相长干涉的无线网络传输的冲突解决方法与系统的制作方法
技术领域:
本发明涉及无线自组织网路与传感器网络领域,尤其涉及一种基于相长干涉的无线网络传输的冲突解决方法与系统。
背景技术:
随着通信、传感器制造、嵌入式计算的日益成熟,大规模无线传感器网络技术迅速发展并被广泛应用到环境、国防、救灾抢险、城市管理等诸多领域。典型的无线传感器网络由大量微型传感器节点组成,它们能够在恶劣及危险环境中迅速展开,并通过无线自组成 网,不受现有有线网络基础设施的限制。感知数据通过无线通信以多跳中继方式汇集到数据处理中心。无线传感器网络使人们在任何时间、地点和环境条件下实时获取大量详实而可靠的信息,体现“计算无处不在”理念。目前已经有大量研究工作致力于如何提高无线传感器网络的性能以及降低能量消耗。其中一个重要的方法就是通过减少网络中数据包的冲突来达到节省能量消耗的目标。数据包的冲突不仅造成了数据传输的失败,更重要的是冲突之后的重传又造成了额外的能量消耗。因此,解决数据包的冲突有着至关重要的意义。现有的冲突解决机制大部分是从链路访问控制层(MAC)出发,通过合理的安排和调度,使得发送者在不同的时间发送数据。从性质上划分,这些协议可以分成两类,分别是基于竞争的冲突解决方法和基于调度的冲突解决方法。其中,典型的MAC层协议,如载波监听多路访问控制协议(CSMA)就是一种基于竞争的冲突解决方法。虽然基于竞争的冲突解决方法操作简单,但其工作效率比较低,而且当发送者数目比较多时,这类协议的作用就更加无法体现出来,所以这类协议对于现在的大规模传感器网络而言,有一定的约束和弊端。另外一种是基于调度的协议,比如时分多址(TDMA),这类协议的一个特点是其效率要比基于竞争的冲突解决协议高,但其缺点在于调度发送者所带来的花费却要比前者要高很多,因此对于资源有限的传感器节点而言,是不适用的。
发明内容
本发明的目的在于提供一种冲突解决效率高,重传次数少,发送节点和接收节点能耗低的无线传传输冲突的解决方法和系统。为达此目的,本发明采用以下技术方案一种基于相长干涉的无线网络传输的冲突解决方法,包括当无线网络传输的接收节点检测到数据包冲突时,接收节点通过广播方式向发送节点发送竞争通知包;发送节点接收到所述竞争通知包后,向所述接收节点发送竞争数据包,竞争数据包长度代表发出该竞争数据包的发送节点的身份;接收节点根据相长干涉原理,通过竞争数据包长度识别出发送节点;接收节点安排每个识别出的发送节点的发送时刻,接收节点生成包含每个识别出的发送节点的发送时刻的调度包;接收节点通过广播方式向发送节点发送该调度包;发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,在该发送时刻向接收节点发送数据。其中,向所述接收节点发送竞争数据包之前,还包括所述发送节点使用随机数生成器,生成一个随机长度L,L的范围是5-100字节,把L作为竞争数据包长度,竞争数据包的负载的每个字节的内容都是OxFF。其中,检测到数据包冲突,具体为所述接收节点的接收芯片CC2420的CCA引脚大于阈值_77dBm,且接收到的数据包的CRC校验结果不正确,则检测到数据包冲突。 其中,接收节点安排每个识别出的发送节点的发送时刻,具体为所述接收节点根据竞争数据包长度作为优先级安排每个识别出的发送节点的发送时刻,其中,竞争数据包长度越大优先级越高。其中,发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,在该发送时刻向接收节点发送数据,具体为所述发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,如果当前时间不是该发送时刻,则进入休眠模式,并采用倒计时等待该发送时刻,如果当前时间是该发送时刻,则在该发送时刻向接收节点发送数据。一种基于相长干涉的无线网络传输的冲突解决系统,其特征在于,包括冲突检测与竞争通知包发送装置,用于当无线网络传输的接收节点检测到数据包冲突时,接收节点通过广播方式向发送节点发送竞争通知包;竞争数据包发送装置,用于发送节点接收到所述竞争通知包后,向所述接收节点发送竞争数据包,竞争数据包长度代表发出该竞争数据包的发送节点的身份;发送节点识别与调度装置,用于接收节点根据相长干涉原理,通过竞争数据包长度识别出发送节点;接收节点安排每个识别出的发送节点的发送时刻,接收节点生成包含每个识别出的发送节点的发送时刻的调度包;接收节点通过广播方式向发送节点发送该调度包;调度包读取与数据发送装置,用于发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,在该发送时刻向接收节点发送数据。其中,还包括初始化装置,用于向所述接收节点发送竞争数据包之前,所述发送节点使用随机数生成器,生成一个随机长度L,L的范围是5-100字节,把L作为竞争数据包长度,竞争数据包的负载的每个字节的内容都是OxfT。其中,冲突检测与竞争通知包装置所述的检测到数据包冲突具体为所述接收节点的接收芯片CC2420的CCA引脚大于阈值_77dBm,且接收到的数据包的CRC校验结果不正确,则检测到数据包冲突。其中,发送节点识别与调度装置安排每个识别出的发送节点的发送时刻,具体为所述发送节点识别与调度装置根据竞争数据包长度作为优先级安排每个识别出的发送节点的发送时刻,其中,竞争数据包长度越小优先级越高。其中,调度包读取与数据包发送装置收到所述调度包后,找到调度包中本发送节点的发送时刻,在该发送时刻向接收节点发送数据,具体为所述发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,如果当前时间不是该发送时刻,则进入休眠模式,并采用倒计时等待该发送时刻,如果当前时间是该发送时刻,则在该发送时刻向接收节点发送数据。本发明的有益效果为通过主动竞争,利用相长干涉原理,提高了冲突解决效率,减少了重传次数,降低了发送节点和接收节点的能耗,能量的利用效率得以提高。此外,通过减小冲突的概率,数据发送和接收的成功率得以提高,由此数据接收的延迟也大大减小。
图I为本发明一种基于相长干涉的无线网络传输的冲突解决方法第一实施例流程图。 图2为本发明一种基于相长干涉的无线网络传输的冲突解决方法第二实施例流程图。图3为本发明一种基于相长干涉的无线网络传输的冲突解决方法第二实施例数据包传输时序图。图4为本发明一种基于相长干涉的无线网络传输的冲突解决方法第二实施例数据流和控制流图。图5为本发明一种基于相长干涉的无线网络传输的冲突解决系统的框图。
具体实施例方式下面结合附图并通过具体实施方式
来进一步说明本发明的技术方案。本发明一种基于相长干涉的无线网络传输的冲突解决方法的第一实施例流程图如图I所示步骤101 :当无线传输网络的接收节点检测到数据包冲突时,接收节点通过广播方式向发送节点发送竞争通知包;步骤102 :发送节点接收到所述竞争通知包后,向所述接收节点发送竞争数据包,竞争数据包长度代表发出该竞争数据包的发送节点的身份;步骤103 :接收节点根据相长干涉原理,通过竞争数据包长度识别出发送节点;接收节点安排每个识别出的发送节点的发送时刻,接收节点生成包含每个识别出的发送节点的发送时刻的调度包;接收节点通过广播方式向发送节点发送该调度包;步骤104 :发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时亥IJ,在该发送时刻向接收节点发送数据。本实施例中发送节点只有最多两次的数据冲突,之后即可顺利发送,提高了冲突解决效率,减少了重传次数,降低了发送节点和接收节点的能耗。本发明一种基于相长干涉原理的无线传输冲突的解决方法的第二实施例流程图如图2所示步骤201:初始化。所有节点都进行相同的初始化,包括初始化冲突检测标志为零、初始化竞争数据包长度L、初始化调度队列为空、初始化竞争数据包的每个字节为OxfT。
竞争数据包的每个字节设置为Oxff才能保证数据传输的每个信号都是一样,从而确保竞争包的信号能够在叠加之后得到稳定有序的增强。竞争数据包长度L的取值范围为5 —100字节,例如取5字节、50字节或100字节。这个范围之内的取值及可保证每个发送节点都有特殊的数据竞争包长度值,而又不需要太大的功耗。步骤202 :判断是否接受者。是的话进行步骤203,否则进行步骤204。步骤203:冲突检测。 检测到冲突进行步骤205,否则进行步骤215。冲突为接收节点正在接收数据包或已经接收数据包而数据包无法被正确解析。具体满足两个条件1、接收芯片CC2420的CCA引脚大于阈值_77dBm ;2、接收节点收到的数据包无法被正确解析。步骤205 :发送竞争通知包。竞争通知包通过广播方式发送。步骤207 :等待竞争数据包。步骤209 :判断是否收到竞争数据包。收到数据包进行步骤211,否则进行步骤207步骤211 :节点识别和调度。节点识别和调度包括以下三个步骤1、获得冲突后竞争数据包在不同字段形成的能量级别;2、获得每个能量级别的持续时间;3、根据持续时间的长短生成调度队列。能量级别随着时间的推移逐步呈阶梯状下降。实用这种方案进行节点的识别和判断的效率高,重复发送的次数少,能量的利用率高。步骤213:发送调度包。调度包以广播的方式发送给发送节点,调度包根据调度队列生成,以 < 竞争数据包长度,发送时刻 > 为单兀。步骤215:接收数据包。步骤217 :判断数据包接收是否成功。数据包接收成功进行步骤219,否则进行213。步骤219:结束。步骤204:发送数据。步骤206 :判断是否收到回复。收到回复说明发送不成功,进行步骤208,否则进行步骤216。步骤208 :等待竞争通知包。步骤210 :判断是否收到竞争通知包。收到竞争通知包进行步骤212,否则进行步骤208。步骤212 :发送竞争数据包。发送节点向接收节点发送的竞争数据包的长度每个发送节点的都不一样。每个竞争数据包的长度都不同,才能保证接收节点准确地识别出每个发送节点,并根据竞争数据包的长度进行调度。步骤214 :等待竞争结果。步骤216:发送数据包。步骤218 :判断数据包是否发送成功。 数据包发送成功进行步骤219,否则进行步骤216。图3为第二实施例数据包传输时序图,图4为第二实施例数据流和控制流图,现结合两图对传输过程详细说明。假设有发送节点I、发送节点2、发送节点3共三个发送节点,其对应发送的数据包为数据包I、数据包2、数据包3。数据包2最先发送,数据包2尚未接收完毕数据包I和数据包3就开始发送,于是接收节点检测到冲突,发送竞争通知包;各发送节点在接收到竞争通知包之后发送竞争数据包,其中,发送节点3发送的竞争数据包最长,发送节点I发送的竞争数据包次之,发送节点2发送的竞争数据包最短;接收节点利用相长干涉原理根据竞争数据包对发送节点进行识别调度,排序依次为发送节点2、发送节点I、发送节点3 ;发送节点2、发送节点I、发送节点3依次发送,数据包;接收节点接收数据包,传输过程结束。本发明一种基于相长干涉的无线网络传输冲突解决系统的实施例框图如图5所
/Jn ο一种基于相长干涉的无线网络传输的冲突解决系统,包括争通知包发送装置505,当无线网络传输的接收节点检测到数据包冲突时,接收节点通过广播方式向发送节点发送竞争通知包;竞争数据包发送装置503,发送节点接收到所述竞争通知包后,向所述接收节点发送竞争数据包,竞争数据包长度代表发出该竞争数据包的发送节点的身份;发送节点识别与调度装506,接收节点根据相长干涉原理,通过竞争数据包长度识别出发送节点;接收节点安排每个识别出的发送节点的发送时刻,接收节点生成包含每个识别出的发送节点的发送时刻的调度包;接收节点通过广播方式向发送节点发送该调度包;调度包读取与数据发送装置504,发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,在该发送时刻向接收节点发送数据。竞争数据包发送装置503和调度包读取与数据发送装置504位于发送节点501,竞争通知包发送装置505和发送节点识别与调度装置506位于接收节点502。发送节点只有最多两次的数据冲突,之后即可顺利发送,提高了冲突解决效率,减少了重传次数,降低了发送节点和接收节点的能耗。以上结合具体实施例描述了本发明的技术原理。这些描述只是为了解释本发明的原理,而不能以任何方式解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式
,这些方式都将落入本发明的保护范围之内。
权利要求
1.一种基于相长干涉的无线网络传输的冲突解决方法,其特征在于,包括 当无线网络传输的接收节点检测到数据包冲突时,接收节点通过广播方式向发送节点发送竞争通知包; 发送节点接收到所述竞争通知包后,向所述接收节点发送竞争数据包,竞争数据包长度代表发出该竞争数据包的发送节点的身份; 接收节点根据相长干涉原理,通过竞争数据包长度识别出发送节点;接收节点安排每个识别出的发送节点的发送时刻,接收节点生成包含每个识别出的发送节点的发送时刻的调度包;接收节点通过广播方式向发送节点发送该调度包; 发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,在该发送时刻向接收节点发送数据。
2.根据权利要求I所述的冲突解决方法,其特征在于,所述向所述接收节点发送竞争数据包之前,还包括 所述发送节点使用随机数生成器,生成一个随机长度L,L的范围是5-100字节,把L作为竞争数据包长度,竞争数据包的负载的每个字节的内容都是OxFF。
3.根据权利要求I所述的冲突解决方法,其特征在于,所述检测到数据包冲突,具体为 所述接收节点的接收芯片CC2420的CCA引脚大于阈值_77dBm,且接收到的数据包的CRC校验结果不正确,则检测到数据包冲突。
4.根据权利要求I所述的冲突解决方法,其特征在于,所述接收节点安排每个识别出的发送节点的发送时刻,具体为 所述接收节点根据竞争数据包长度作为优先级安排每个识别出的发送节点的发送时亥IJ,其中,竞争数据包长度越大优先级越高。
5.根据权利要求I所述的冲突解决方法,其特征在于,所述发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,在该发送时刻向接收节点发送数据,具体为 所述发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,如果当前时间不是该发送时刻,则进入休眠模式,并采用倒计时等待该发送时刻,如果当前时间是该发送时刻,则在该发送时刻向接收节点发送数据。
6.一种基于相长干涉的无线网络传输的冲突解决系统,其特征在于,包括 冲突检测与竞争通知包发送装置,用于当无线网络传输的接收节点检测到数据包冲突时,接收节点通过广播方式向发送节点发送竞争通知包; 竞争数据包发送装置,用于发送节点接收到所述竞争通知包后,向所述接收节点发送竞争数据包,竞争数据包长度代表发出该竞争数据包的发送节点的身份; 发送节点识别与调度装置,用于接收节点根据相长干涉原理,通过竞争数据包长度识别出发送节点;接收节点安排每个识别出的发送节点的发送时刻,接收节点生成包含每个识别出的发送节点的发送时刻的调度包;接收节点通过广播方式向发送节点发送该调度包; 调度包读取与数据发送装置,用于发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,在该发送时刻向接收节点发送数据。
7.根据权利要求6所述的冲突解决系统,其特征在于,还包括初始化装置,用于向所述接收节点发送竞争数据包之前,所述发送节点使用随机数生成器,生成一个随机长度L,L的范围是5-100字节,把L作为竞争数据包长度,竞争数据包的负载的每个字节的内容都是Oxff0
8.根据权利要求6所述的冲突解决系统,其特征在于,所述冲突检测与竞争通知包装置所述的检测到数据包冲突具体为 所述接收节点的接收芯片CC2420的CCA引脚大于阈值_77dBm,且接收到的数据包的CRC校验结果不正确,则检测到数据包冲突。
9.根据权利要求6所述的冲突解决系统,其特征在于,所述发送节点识别与调度装置安排每个识别出的发送节点的发送时刻,具体为 所述发送节点识别与调度装置根据竞争数据包长度作为优先级安排每个识别出的发送节点的发送时刻,其中,竞争数据包长度越小优先级越高。
10.根据权利要求6所述的冲突解决系统,其特征在于,所述调度包读取与数据包发送装置收到所述调度包后,找到调度包中本发送节点的发送时刻,在该发送时刻向接收节点发送数据,具体为 所述发送节点接收到所述调度包后,找到调度包中的本发送节点的发送时刻,如果当前时间不是该发送时刻,则进入休眠模式,并采用倒计时等待该发送时刻,如果当前时间是该发送时刻,则在该发送时刻向接收节点发送数据。
全文摘要
本发明公开了一种基于相长干涉的无线网络传输的冲突解决方法与系统,该方法包括当无线网络传输的接收节点检测到数据包冲突时,接收节点向发送节点发送竞争通知包;发送节点接收到所述竞争通知包后,向所述接收节点发送竞争数据包,竞争数据包长度代表发出该竞争数据包的发送节点身份;接收节点根据相长干涉原理,通过竞争数据包长度识别出发送节点;接收节点安排每个识别出的发送节点的发送时刻,接收节点生成包含每个识别出的发送节点的发送时刻的调度包;接收节点向发送节点发送该调度包;发送节点接收到所述调度包后,按调度中的安排发送数据。本发明通过主动竞争,提高了冲突解决效率,减少了重传次数,降低了发送节点和接收节点的能耗。
文档编号H04W52/02GK102970737SQ20121047604
公开日2013年3月13日 申请日期2012年11月21日 优先权日2012年11月21日
发明者冀晓宇, 刘俊宏, 何源, 王继良, 刘云浩 申请人:无锡儒安科技有限公司