一种基于低速率无线网络的蔓延式广播方法

文档序号:8946260阅读:182来源:国知局
一种基于低速率无线网络的蔓延式广播方法
【技术领域】
[0001]本发明涉及无线低速率网络的通信方法,具体是一种基于低速率无线网络的蔓延式广播方法。
【背景技术】
[0002]随着物联网技术的发展及普及,无线网络应用越来越广泛。现有无线网络主要存在点播、组播及广播三种基本的通信方式,其中,点播是指某一网络节点向网络中的另一节点发送一次数据的行为,组播是指某一网络节点同时向网络中指定的多个节点发送相同数据的行为,广播是指某一网络节点同时向网络中所有的节点发送相同数据的行为。
[0003]点播的优势在于可精准的传递消息,但是在实际使用环境中,由于干扰的存在,两节点之间的链路常常存在不稳定的情况,点与点之间直接的通信链路有时候不能建立。广播能克服点播所存在的缺陷,其应用时,任一节点收到来自其他节点的广播消息后都会立即处理并将本条广播消息再传递出去。
[0004]在传统的星型网络(如W1-Fi网络)中,因为位于拓扑末端的节点发出的广播信号必须由路由器处理并寻找到信号通路之后才会转发,且同一广播包路由节点不会再次转发。因此,广播不仅可确保信息能传递出去,且能避免信道阻塞的发生。然而,在无线低速率网络(如基于802.15.4的通信技术和基于SublG无线通信技术及其衍生技术都是属于低速率无线技术。)中沿用传统网络的广播方法(即数据包直接发送到信号传递介质中,所有符合广播协议的数据包一旦被路由节点接收就被转发出去。)时,由于无线低速率网络中网络节点一般是无中心的(网络中的任一节点都是网络中的路由节点),网络中的任一节点在收到广播消息以后都会进行转发,很容易出现多个节点同时发射出转发数据包的信号,而无线低速率网络中一个数据包的传递需要耗费大量的时间,这就易导致信道阻塞(多个节点同时广播)的产生。而且无线低速率传感网络往往伴随的是动态组网(即路由表是不断更新),网络闲置时依旧会有大量的网络维护信息在网络中传递,一旦信道阻塞现象出现,整个网络信道都会被相干的信号叠加充满,且没有多余的时隙可以用于无线网络维护,这将会导致网络渐渐崩溃,最终导致组网失败,网络的功能不复存在。

【发明内容】

[0005]本发明的目的在于克服现有技术的不足,提供了一种基于低速率无线网络的蔓延式广播方法,其应用时能避免信道阻塞的发生。
[0006]本发明解决上述问题主要通过以下技术方案实现:一种基于低速率无线网络的蔓延式广播方法,包括以下步骤:
步骤一、根据待广播区域内节点的分布状态建立具有多个转发节点的转发节点列表,其中,转发节点用于转发广播命令,在转发节点列表建立时应保证待广播区域内任一节点发送广播命令时,通过转发节点列表中的转发节点能使得待广播区域内所有节点均接收到该广播命令; 步骤二、发送广播命令的节点将打包好的广播命令发至其附近的节点;
步骤三、每一个收到广播命令的节点遍历转发节点列表并判断其是否在转发节点列表之内,若不在转发节点列表内,则直接解析命令内容并执行命令;若在转发节点列表内,其不仅解析命令内容并执行命令,而且将广播命令再次打包发至其附近未接收该广播命令的节点;
步骤四、转发节点列表中所有转发节点都已执行过一次转发后结束广播。其中,本发明所述的节点为网络中存在的可以进行通信的设备。
[0007]本发明在具体实施时,可由中央控制器对待广播区域内所有节点进行集中控制,中央控制器接收和处理节点上报的信息,然后做出决策并下发控制命令至各个节点。其中,节点发送广播命令时,转发节点列表包含在广播命令包内进行发送。
[0008]进一步的,所述转发节点列表中转发节点选取时,任意相邻两个转发节点分别为位于彼此通信距离内的节点。
[0009]进一步的,所述转发节点列表的数量为多个,任意两个转发节点列表之间至少有一个转发节点不同;所述步骤一还包括选取任意一个转发节点列表来转发广播命令,并判断选取的转发节点列表中转发节点是否存在故障,若是则切换转发节点列表并再次判断,直至确认选取的转发节点列表中所有转发节点无故障时进行下一步骤,若否则直接进入下一步骤。其中,步骤一中判断选取的转发节点列表中转发节点故障的方式是通过与待判断节点进行一次双向通信来确定的。
[0010]综上所述,本发明具有以下有益效果:本发明应用时通过预先定义转发节点列表,限定采用的转发节点列表中的转发节点才进行广播,其余节点只接收并执行广播命令的内容且不再将广播转发出去,如此,本发明可以用最少的转发次数完成广播命令的覆盖,能节省无线信道的占用时间,避免信道阻塞的发生。
【附图说明】
[0011]图1为本发明一个具体实施例的流程图。
【具体实施方式】
[0012]下面结合实施例及附图,对本发明做进一步地的详细说明,但本发明的实施方式不限于此。
[0013]实施例:
如图1所示,一种基于低速率无线网络的蔓延式广播方法,包括以下步骤:步骤1、建立多个转发节点列表;步骤2、选择任意一个转发节点列表作为广播命令转发表;步骤3、判断选取的转发节点列表中转发节点是否存在故障,若是则切换转发节点列表并再次判断,若否则进入下一步骤;步骤4、发送广播命令的节点发出广播命令;步骤5、判断收到广播命令的节点是否在转发节点列表内,若是解析命令内容并执行命令,而且将广播命令再次打包发出,然后进入下一步骤,若否则直接解析命令内容并执行命令;步骤6、转发节点列表中所有转发节点都已执行过一次转发后结束广播。
[0014]本实施例的步骤I在具体实施时需获取待广播区域内每一个节点的物理分布状态,转发节点列表根据待广播区域内节点的分布状态建立,每个转发节点列表均具有多个转发节点,转发节点用于转发广播命令,在转发节点列表建立时应保证待广播区域内任一节点发送广播命令时,通过一个转发节点列表中的转发节点能使得待广播区域内所有节点均接收到该广播命令。本实施例每个转发节点列表中转发节点选取时,任意相邻两个转发节点分别优选为位于彼此通信距离内的节点,即假如存在A、B两个相邻的节点,A节点为B节点通信范围内所有节点中距离最远的节点,B节点为A节点通信范围内所有节点中距离最远的节点。本实施例建立的多个转发节点列表中,任意两个转发节点列表之间至少有一个转发节点不同。
[0015]本实施例步骤3在判断转发节点列表存在故障时,切换转发节点列表并再次判断,直至确认选取的转发节点列表中所有转发节点无故障时才进入下一步骤。本实施例步骤4中发送广播命令的节点发出广播命令时,具体将打包好的广播命令发至其附近的节点。本实施例步骤5的具体实施如下:每一个收到广播命令的节点遍历转发节点列表并判断其是否在转发节点列表之内,若不在转发节点列表内,则直接解析命令内容并执行命令;若在转发节点列表内,其不仅解析命令内容并执行命令,而且将广播命令再次打包发至其附近未接收该广播命令的节点。本实施例在具体实施时,对转发次数进行预设,则本实施例的步骤6通过判断转发次数是否已经达到预设值来判断转发节点列表中的节点都已经执行过一次转发。
[0016]以下为本实施例应用时的一个具体案例:在同一区域网络中具有I?50号共50个节点,其排布时按5行10列矩阵式排布,编号时第一排从左至右按I?10顺次编号,第二排从左至右按11?20顺次编号,第三
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1