信道选择方法、 装置和网状网节点实体设备 【技术领域】
本发明涉及通信技术领域,尤其涉及一种信道选择方法、装置和网状网节点实 体设备。背景技术
网状 (Mesh) 网络也被称为多跳 (multi-hop) 网络,是一种与传统无线网络完全 不同的新型无线网络技术。 Mesh 网络是一个动态的可以不断扩展的网络架构,任意的 两个设备均可以保持无线互联。 Mesh 网络要比传统的无线网络更加稳定,这是因为在 Mesh 网络的数据通信中,网络性能的发挥并不仅依靠某个节点。 在传统的无线网络中, 如果固定的 AP 发生故障,那么该网络中所有的无线设备都不能进行通信 ;而在 Mesh 网 络中,如果某个节点的无线接入点 (Access Point ;以下简称 :AP) 发生故障,该发生故 障的节点可以重新再选择一个 AP 进行通信,这样数据仍然可以高速地到达目的地。 另外,从物理角度来说,无线通信意味着通信距离越短,通信的效果会越好 ; 因为随着通信距离的增长,无线信号不但会衰弱而且会相互干扰,从而降低数据通信的 效率。 而在 Mesh 网络中,是以一条条较短的无线网络连接代替以往长距离的连接,从而 可以保证数据以高速率在节点之间快速传递。
Mesh 网络基于呈网状分布的众多 AP 之间的相互合作和协同,具有宽带、高速 和高频谱效率的优势,具有动态自组织、自配置和自维护等突出特点。
但是,在实现本发明过程中,发明人发现现有技术中至少存在如下问题 :在 Mesh 网络信道管理中,现有技术只制定了信道切换协议,对于信道选择并没有明确的规 定。 这样,由于 Mesh 网络中各个节点分布在一个较大的区域,一个信道在 A 区域具有 最佳信道指标,并不能保证该信道在 B 区域的信道指标好,从而不能保证 Mesh 网络中的 所有节点都工作在信道指标比较好的信道上, Mesh 网络的整体性能欠佳。
发明内容
本发明实施例提供一种信道选择方法、装置和网状网节点实体设备,以保证 Mesh 网络中的所有节点均工作在信道指标比较好的信道上,提高 Mesh 网络的整体性 能。
本发明实施例提供一种信道选择方法,包括 :
当网状网 (Mesh) 节点需要进行信道切换时,所述 Mesh 节点向所述 Mesh 节点的 邻居节点发送信道选择通告信元,所述信道选择通告信元携带所述 Mesh 节点选择的待切 换信道的标识 ;
所述 Mesh 节点接收所述邻居节点的信道选择结果 ;
当所述 Mesh 节点所在网络中的所有节点均同意切换到所述待切换信道时,所述 Mesh 节点切换到所述待切换信道。
本发明实施例还提供一种信道选择装置,包括 :发送模块,用于当网状网 (Mesh) 节点需要进行信道切换时,向所述 Mesh 节点 的邻居节点发送信道选择通告信元,所述信道选择通告信元携带所述 Mesh 节点选择的待 切换信道的标识 ;
接收模块,用于接收所述邻居节点的信道选择结果 ;
切换模块,用于当所述 Mesh 节点所在网络中的所有节点均同意切换到所述待切 换信道时,切换到所述待切换信道。
本发明实施例还提供一种网状网节点实体设备,包括上述信道选择装置。
通过本发明实施例,当 Mesh 节点需要进行信道切换时,该 Mesh 节点向该 Mesh 节点的邻居节点发送信道选择通告信元,该信道选择通告信元携带所述 Mesh 节点选择的 待切换信道的标识 ;在该 Mesh 节点所在网络中的所有节点均同意切换到上述待切换信道 之后,该 Mesh 节点切换到该待切换信道。 从而可以实现 Mesh 网络中的所有节点均工作 在信道指标比较好的信道上,进而可以提高 Mesh 网络的整体性能。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或 现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是 本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1 为本发明信道选择方法一个实施例的流程图 ;
图 2 为本发明信道选择方法另一个实施例的流程图 ;
图 3 为本发明信道选择通告信元的结构一个实施例的示意图 ;
图 4 为本发明 Mesh 节点对接收到的信道选择通告信元进行处理一个实施例的流 程图 ;
图 5 为本发明 Mesh 网络拓扑一个实施例的结构示意图 ;
图 6 为本发明信道选择装置一个实施例的结构示意图 ;
图 7 为本发明信道选择装置另一个实施例的结构示意图。 具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施 例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实 施例是本发明一部分实施例,而不是全部的实施例。 基于本发明中的实施例,本领域普 通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保 护的范围。
图 1 为本发明信道选择方法一个实施例的流程图,如图 1 所示,该信道选择方法 可以包括 :
步骤 101,当 Mesh 节点需要进行信道切换时,该 Mesh 节点向该 Mesh 节点的邻 居节点发送信道选择通告信元,该信道选择通告信元携带该 Mesh 节点选择的待切换信道 的标识。
具体地, Mesh 节点可以将该信道选择通告信元承载在信标 (beacon) 帧或探测(probe) 应答帧中发送给该 Mesh 节点的邻居节点。
本实施例中,该信道选择通告信元可以包括发起者字段、发起者节点字段、新 信道字段和状态字段 ;其中,可以将新信道字段的值设置为该 Mesh 节点选择的待切换信 道的标识,例如 :该待切换信道的编号等可以唯一标识该待切换信道的标识,以在该信 道选择通告信元中携带该 Mesh 节点选择的待切换信道的标识。
另外,该 Mesh 节点可以将该 Mesh 节点发送的信道选择通告信元中发起者字段 的值设为 “1”,表示该信道选择通告信元由该 Mesh 节点发起 ;可以将发起者节点字段 的值设为该 Mesh 节点的媒体接入控制 (Media Access Control ;以下简称 :MAC) 地址 ; 可以将状态字段的值设为 “1”,表示该 Mesh 节点同意切换到上述待切换信道。 当然以 上仅是本发明的一种示例,并不构成对本发明的限定。
步骤 102, Mesh 节点接收邻居节点的信道选择结果。
具体地, Mesh 节点可以接收邻居节点发送的 beacon 帧或 probe 应答帧,该 beacon 帧或 probe 应答帧中携带上述信道选择结果。
本实施例中,邻居节点可以通过设置信道选择通告信元中状态字段的值,来表 示该邻居节点的信道选择结果 ;举例来说,邻居节点可以通过将信道选择通告信元中状 态字段的值设为 “0”,来表示该邻居节点不同意切换到上述待切换信道 ;或者,该邻 居节点可以通过将信道选择通告信元中状态字段的值设为 “1”,来表示该节点同意切 换到上述待切换信道 ;当然,这只是本发明的一种示例,并不构成对本发明的限定。 然 后,邻居节点可以将设置好的信道选择通告信元承载在 beacon 帧或 probe 帧中发送给 Mesh 节点。 步骤 103,当 Mesh 节点所在网络中的所有节点均同意切换到待切换信道时,该 Mesh 节点切换到待切换信道。
上述实施例中,当 Mesh 节点需要进行信道切换时,该 Mesh 节点向该 Mesh 节点 的邻居节点发送信道选择通告信元,该信道选择通告信元携带该 Mesh 节点选择的待切换 信道的标识 ;在该 Mesh 节点所在网络中的所有节点均同意切换到上述待切换信道之后, 该 Mesh 节点切换到该待切换信道。 从而可以实现 Mesh 网络中的所有节点均工作在信道 指标比较好的信道上,进而可以提高 Mesh 网络的整体性能。
图 2 为本发明信道选择方法另一个实施例的流程图,如图 2 所示,该信道选择方 法可以包括 :
步骤 201,当 Mesh 节点需要进行信道切换时,该 Mesh 节点对符合该 Mesh 节点 的信道选择条件的信道,按照信道强度由强到弱的顺序进行优先级排序。
其中,该 Mesh 节点的信道选择条件可以为信道强度大于 -65dbm,当然本发明 实施例并不仅限于此,本发明实施例对信道选择条件的设置方式不作限定。
步骤 202, Mesh 节点从排好序的信道队列中选择优先级最高的信道作为待切换 信道。
步骤 203, Mesh 节点初始化该 Mesh 节点的信道选择通告信元。
具体地,该信道选择通告信元的结构可以如图 3 所示,图 3 为本发明信道选择通 告信元的结构一个实施例的示意图,本实施例中,该信道选择通告信元至少可以包括发 起者字段、发起者节点字段、新信道字段和状态字段 ;
下面对各字段的定义进行介绍。
(1) 可以将发起者字段的值设为 “1”,表示该 Mesh 节点发起信道选择通告 ; 可以将发起者字段的值设为 “0”,表示信道选择通告由其他 Mesh 节点发起,并被当前 的 Mesh 节点传播。
(2) 发起者节点字段的值可以设置为发起信道选择通告的 Mesh 节点的 MAC 地 址。
(3) 新信道字段的值可以设置为发起信道选择通告的 Mesh 节点选择的待切换信 道的标识,该待切换信道的标识可以为该待切换信道的编号等可以唯一标识该待切换信 道的标识。
(4) 状态字段的值表示 Mesh 节点的状态,可以参照表 1 设置状态字段的值。
表1
本实施例中,当 Mesh 节点需要进行信道切换时,该 Mesh 节点可以初始化该 Mesh 节点的信道选择通告信元。 具体地,该 Mesh 节点可以将发起者字段的值设为 “1”,表示该 Mesh 节点发起信道选择通告 ;可以将发起者节点字段的值设置为该 Mesh 节点的 MAC 地址 ;可以将新信道字段的值设置为该 Mesh 节点选择的待切换信道的标 识 ;可以将状态字段的值设为 “1”,表示该 Mesh 节点同意切换到待切换信道。
步骤 204, Mesh 节点将信道选择通告信元发送给该 Mesh 节点的邻居节点。
具体地,该信道选择通告信元可以单播或多播传送。 本实施例中,Mesh 节点可 以将信道选择通告信元承载在 beacon 帧或 probe 应答帧中发送。
步骤 205, Mesh 节点接收邻居节点的信道选择结果。
具体地,邻居节点可以将信道选择结果承载在 beacon 帧或 probe 应答帧中发送给 Mesh 节点。
本实施例中,邻居节点可以通过设置信道选择通告信元中状态字段的值,来表 示该邻居节点的信道选择结果 ;参照表 1,邻居节点可以通过将信道选择通告信元中状 态字段的值设为 “0”,来表示该邻居节点不同意切换到上述待切换信道 ;或者,该邻 居节点可以通过将信道选择通告信元中状态字段的值设为 “1”,来表示该节点同意切 换到上述待切换信道 ;当然,这只是本发明的一种示例,并不构成对本发明的限定。 然
后,邻居节点可以将设置好的信道选择通告信元承载在 beacon 帧或 probe 帧中发送给 Mesh 节点。
步骤 206,当 Mesh 节点所在网络中的所有节点均同意切换到待切换信道时,该 Mesh 节点切换到待切换信道。
本实施例中,当发起信道选择的 Mesh 节点的所有邻居节点的信道选择通告信元 中状态字段的值均为 “3” 时,表示该 Mesh 所在网络中的所有 Mesh 节点都同意切换到 待切换信道,这时,该 Mesh 节点可以发起信道切换尝试,切换到待切换信道。
如果发起信道选择的 Mesh 节点接收到至少一个邻居节点的信道选择通告信元中 状态字段的值为 “0” 时,表示该 Mesh 节点所在网络中有至少一个节点不同意切换到上 述待切换信道,这时,如果信道队列中仍有可选信道,则该 Mesh 节点将上述待切换信道 从信道队列中删除,并从该信道队列中选择优先级次高的信道重新发送信道选择通告信 元,以此类推,直至信道队列中无可选信道。
当该 Mesh 节点所在网络中有至少一个邻居节点不同意切换到待切换信道,且信 道队列中已没有可选信道时,发起信道选择的 Mesh 节点将取消该 Mesh 节点发起的信道 选择通告 ;然后,该 Mesh 节点可以发送取消信道选择帧给该 Mesh 节点的邻居节点 ;该 Mesh 节点的邻居节点接收到取消信道选择帧之后,会发送取消信道选择帧给各自的邻居 节点。 另外,本实施例中,一个 Mesh 节点接收到该 Mesh 节点的邻居节点发送的信道 选择通告信元之后,可以执行图 4 所示的流程,图 4 为本发明 Mesh 节点对接收到的信道 选择通告信元进行处理一个实施例的流程图,如图 4 所示,该流程可以包括 :
步骤 401,Mesh 节点接收该 Mesh 节点的邻居节点发送的信道选择通告信元,该 邻居节点发送的信道选择通告信元携带该邻居节点选择的待切换信道的标识。
具体地, Mesh 节点可以接收该 Mesh 节点的邻居节点通过 beacon 帧或 probe 应 答帧发送的信道选择通告信元。
其中,该邻居节点设置信道选择通告信元的方式可参照步骤 203 中的描述,在 此不再赘述。
步骤 402,Mesh 节点判断是否仅接收到该 Mesh 节点的一个邻居节点发送的信道 选择通告信元 ;如果是,则执行步骤 403 ;如果该 Mesh 节点先后接收到该 Mesh 节点的 至少两个邻居节点发送的信道选择通告信元,则执行步骤 404。
步骤 403, Mesh 节点接受该信道选择通告信元,然后执行步骤 405。
步骤 404,Mesh 节点接受 MAC 地址最小的邻居节点发送的信道选择通告信元, 然后执行步骤 405。
步骤 405,Mesh 节点根据该 Mesh 节点的信道选择条件确定是否选择邻居节点发 送的信道选择通告信元中携带的待切换信道。
步骤 406, Mesh 节点更新该 Mesh 节点的邻居信道选择表和该 Mesh 节点的信道 选择状态。
本实施例中,在 Mesh 节点接受该 Mesh 节点的邻居节点发送的信道选择通告信 元之后,无论该 Mesh 节点是否选择邻居节点发送的信道选择通告信元中携带的待切换 信道,该 Mesh 节点都会在该 Mesh 节点的邻居信道选择表中记录邻居节点的信道选择情
况,这样,当该 Mesh 节点发现该 Mesh 节点的信道选择表中邻居节点处于信道选择状态 时,该 Mesh 节点不会再发起信道选择。 也就是说,在接受邻居节点发送的信道选择通告 信元之后,切换到待切换信道之前,该 Mesh 节点不会再发起信道选择。
并且,在 Mesh 节点接受该 Mesh 节点的邻居节点发送的信道选择通告信元之 后,无论该 Mesh 节点是否选择邻居节点发送的信道选择通告信元中携带的待切换信道, 该 Mesh 节点都会更新自身的信道选择状态,例如 :可以参照表 1,当该 Mesh 节点确定 选择邻居节点发送的信道选择通告信元中携带的待切换信道时,该 Mesh 节点可以将自身 的信道选择状态设为 “1”,表示该 Mesh 节点同意切换到上述待切换信道 ;或者,当该 Mesh 节点不同意选择上述待切换信道时,可以将自身的信道选择状态设为 “0”,表示 该 Mesh 节点不同意切换到上述待切换信道。
步骤 407, Mesh 节点将该 Mesh 节点的信道选择结果发送给该 Mesh 节点的邻居 节点。
本实施例中,该 Mesh 节点可以将该 Mesh 节点的信道选择结果设置在信道选择 通告信元中,然后通过 beacon 帧或 probe 应答帧将该信道选择通告信元发送给邻居节点。
具体地, Mesh 节点可以将该 Mesh 节点的信道选择通告信元中发起者字段的值 设为 “0”,表示信道选择通告由邻居节点发起并被该 Mesh 节点传播 ;可以将状态字段 的值设为该 Mesh 节点的信道选择状态,例如 :“0” 或 “1” 等 ;这时,信道选择通告 信元中发起者节点字段的值为发起信道选择通告的邻居节点的 MAC 地址,新信道字段的 值为发起信道选择通告的邻居节点选择的待切换信道。
设置完信道选择通告信元之后,该 Mesh 节点可以将该信道选择通告信元承载在 beacon 帧或 probe 应答帧中发送给该 Mesh 节点的所有邻居节点。
另外,本实施例中,在 Mesh 节点接收到取消信道选择帧之后,该 Mesh 节点会 将接收到的取消信道选择帧发送给该 Mesh 节点的邻居节点,并且该 Mesh 节点不再发起 信道选择。
上述实施例实现了 Mesh 网络中的所有节点均工作在信道指标比较好的信道上, 进而提高了 Mesh 网络的整体性能。
下面通过一个具体实例对本发明实施例提供的信道选择方法进行详细介绍。
图 5 为本发明 Mesh 网络拓扑一个实施例的结构示意图,如图 5 所示,该 Mesh 网络中包括 5 个 Mesh 节点 (Mesh Point ;以下简称 :MP),分别为 MP1、 MP2、 MP3、 MP4 和 MP5。
这里假设 MP1 需要进行信道切换,并选择一个待切换信道,假设该待切换信道 的标识为 “11”,其中 MP1 选择待切换信道的方法可以参照本发明图 2 所示实施例步骤 201 ~步骤 202 的描述,在此不再赘述。 然后,MP1、MP2、MP3、MP4 和 MP5 将执行 以下步骤完成信道切换。
步骤 1,MP1 发送信道选择通告信元给 MP2 和 MP3,并将 MP1 的信道选择状态 置为 “1”。
步骤 2,MP2 和 MP3 接收到 MP1 的信道选择通告信元之后,根据自身的信道情 况及待切换信道在节点处的情况,确定是否同意选择该待切换信道。
步骤 3,如果 MP2 和 MP3 同意选择待切换信道, MP2 和 MP3 将各自的信道选择状态置为 “1”,并发送信道选择通告信元给各自的邻居节点 ;MP1 收到 MP2 和 MP3 发送的信道选择通告信元之后,发现 MP2 和 MP3 发送的信道选择通告信元中状态字段的 值均为 “1”,表示 MP2 和 MP3 均同意切换到待切换信道,这时, MP1 将该 MP1 的信 道选择状态置为 “2”。
另外,如果 MP2 和 MP3 中有一个节点不同意切换到待切换信道,该节点可以将 信道选择状态置为 “0”,并通过信道选择通告信元发送给邻居节点,MP1 接收到该信道 选择通告信元之后,如果信道队列中仍有可选信道, MP1 将从信道队列中删除之前选择 的待切换信道,并选择信道队列中优先级次高的信道,重新发起信道选择 ;如果信道队 列中已没有可选信道, MP1 将取消本次信道选择 ;但本实施例以 MP2 和 MP3 同意切换 到待切换信道为例进行说明。
步骤 4,MP4 收到 MP2 和 MP3 发送的信道选择通告信元之后,发现 MP2 和 MP3 发送的信道选择通告信元中状态字段的值均为 “1”,表示 MP2 和 MP3 均同意切换到待 切换信道,这时, MP4 将根据待切换信道在 MP4 处的信道情况,确定是否同意切换到待 切换信道,如果 MP4 同意切换到待切换信道, MP4 将自身的信道选择状态置为 “1”, 并发送信道选择通告信元给该 MP4 的邻居节点。 MP2 和 MP3 收到 MP4 发送的信道选择 通告信元之后, MP2 和 MP3 发现 MP4 同意切换到待切换信道,并且 MP1 也同意切换到 待切换信道,这时,MP2 和 MP3 的所有邻居节点均同意切换到待切换信道,于是 MP2 和 MP3 可以将各自的信道选择状态置为 “2”,表示 MP2 和 MP3 的所有邻居节点均同意切 换到待切换信道,然后 MP2 和 MP3 会发送信道选择通告信元给各自的邻居节点,即 MP1 和 MP4。 接收到 MP2 和 MP3 发送的信道选择通告信元之后,MP1 发现 MP2 和 MP3 的信 道选择状态均为 “2”,也就是说,这时 MP2 和 MP3 的所有邻居节点同意切换到待切换 信道,但 MP1 无法确定网络中的所有节点是否均同意切换到待切换信道,因此 MP1 还是 将自身的信道选择状态置为 “2”。
同样,接收到 MP2 和 MP3 发送的信道选择通告信元之后,MP4 发现 MP2 和 MP3 的信道选择状态均为 “2”,也就是说,这时 MP2 和 MP3 的所有邻居节点同意切换到待 切换信道,但是这时 MP4 还不能确定 MP5 是否同意切换到待切换信道,所以 MP4 不能 确定该 MP4 的所有邻居节点是否均同意切换到待切换信道,因此 MP4 还是将自身的信道 选择状态置为 “1”。
另外,如果 MP4 不同意切换到待切换信道, MP4 将信道选择状态置为 “0”, 并通过信道选择通告信元发送给邻居节点,MP2 和 MP3 接收到 MP4 发送的信道选择通告 信元之后,将各自的信道选择状态置为 “0”,并通过信道选择通告信元发送给邻居节点 MP1, MP1 接收到该信道选择通告信元之后,如果信道队列中仍有可选信道, MP1 将从 信道队列中删除之前选择的待切换信道,并选择信道队列中优先级次高的信道,重新发 起信道选择 ;如果信道队列中已没有可选信道,MP1 将取消本次信道选择。 但本实施例 以 MP4 同意切换到待切换信道为例进行说明。
步骤 5,MP5 接收到 MP4 发送的信道选择通告信元之后,发现 MP4 发送的信道 选择通告信元中状态字段的值为 “1”,表示 MP4 同意切换到待切换信道,如果 MP5 也 同意切换到待切换信道,由于 MP5 只有一个邻居节点 MP4,而 MP4 同意切换到待切换信
道,这说明 MP5 的所有邻居节点均同意切换到待切换信道,因此 MP5 将自身的信道选择 状态置为 “2”,并发送信道选择通告信元给 MP5 的邻居节点 ;MP4 接收到 MP5 发送的 信道选择通告信元之后,发现 MP4 所有邻居节点的信道选择状态均为 “2”,这就说明 MP4 的所有邻居节点均同意切换到待切换信道,因此 MP4 将该 MP4 自身的信道选择状态 置为 “2”,并发送信道选择通告信元给 MP4 的邻居节点。
步骤 6, MP2 和 MP3 接收到 MP4 发送的信道选择通告信元之后, MP2 和 MP3 发现各自的邻居节点,以及 MP2 和 MP3 各自邻居节点的邻居节点均同意切换到待切换信 道,但是由于 MP2 和 MP3 无法确定网络中的所有节点是否均同意切换到待切换信道,因 此 MP2 和 MP3 还是将各自的信道选择状态置为 “2”。
MP5 接收到 MP4 发送的信道选择通告信元之后,发现 MP4 发送的信道选择通告 信元中状态字段的值为 “2”,表示 MP4 以及 MP4 的所有邻居节点均同意切换到待切换 信道,由于 MP5 仅有 MP4 这一个邻居节点,因此这时 MP5 可以确定该 MP5 所在网络中 的所有节点均同意切换到待切换信道,因此 MP5 将自身的信道选择状态置为 “3”,并 发送信道选择通告信元给 MP5 的邻居节点。
步骤 7,MP4 接收到 MP5 的信道选择通告信元之后,发现 MP5 发送的信道选择 通告信元中状态字段的值为 “3”,并且 MP4 的另外两个邻居节点 MP2 和 MP3 的信道 选择状态为 “2”,这时, MP4 也可以确定该 MP4 所在网络中的所有节点均同意切换到 待切换信道,因此 MP4 将自身的信道选择状态置为 “3”,并发送信道选择通告信元给 MP4 的邻居节点。 步骤 8, MP2 和 MP3 收到 MP4 的信道选择通告信元之后,发现 MP4 发送的信 道选择通告信元中状态字段的值为 “3”,并且 MP2 和 MP3 的另一个邻居节点 MP1 的信 道选择状态为 “2”,这时, MP2 和 MP3 可以确定 MP2 和 MP3 所在网络中的所有节点 均同意切换到待切换信道,于是 MP2 和 MP3 将各自的信道选择状态设置为 “3”,继续 发送信道选择通告信元给各自的邻居节点。
步骤 9,MP1 接收到 MP2 和 MP3 发送的信道选择通告信元之后,发现该 MP1 自 身的所有邻居节点 (MP2 和 MP3) 的信道选择状态为 3,这说明整个网络均同意切换到待 切换信道, MP1 将发起信道切换。
上述实例中,信道选择通告信元的设置方式请参照本发明图 2 所示实施例的描 述,在此不再赘述。 另外,当一个 Mesh 节点接收到至少两个节点发送的信道选择通告信 元,需要对接收到的信道选择通告信元进行取舍时,该 Mesh 节点可以参照本发明图 4 所 示实施例中提供的方法,在此不再赘述。
本发明实施例提供的信道选择方法利用 beacon 帧或 probe 应答帧以固定频率发送 的特点,将信道选择通告信元加入到 beacon 帧或 probe 应答帧中,所以在信道选择过程 中不额外占用现有的信道资源。 并且在默认情况下,每个 Mesh 节点以 100 毫秒为固定 周期发送 beacon 帧或 probe 应答帧,网络会自动收敛。 另外,在一个 Mesh 节点发起一 个信道选择后,只有该 Mesh 节点所在网络中的所有节点都对待切换信道比较满意之后, 该 Mesh 节点才可以切换到待切换信道,这样在该 Mesh 节点切换到待切换信道之后,该 Mesh 节点所在网络中的其他节点将不会立即重新选择待切换信道,所以也就避免了网络 振荡的发生 ;本实施例中,发起信道选择的 Mesh 节点所在网络中的所有节点均以一定
的信道选择条件同意切换到待切换信道,如果该网络中所有节点均同意切换到待切换信 道,则说明该待切换信道达到了该网络中所有节点的信道选择条件,例如 :当该信道选 择条件为信道强度大于 -65dbm 时,在信道选择完成并发生信道切换后,该网络中信道强 度平均值将会大于 -65dbm,从而提高了 Mesh 网络中的信道质量。
本发明实施例提供的信道选择方法的基本原理就是从一个节点开始,逐渐扩散 到整个网络,然后再回到该节点,达到收集整个网络信息的目的 ;该原理未来也可以用 于基于分布式的其它应用。
本领域普通技术人员可以理解 :实现上述方法实施例的全部或部分步骤可以 通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中, 该程序在执行时,执行包括上述方法实施例的步骤 ;而前述的存储介质包括 :ROM、 RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图 6 为本发明信道选择装置一个实施例的结构示意图,本实施例中的信道选择 装置可以作为网状网节点实体设备,或者网状网节点实体设备的一部分,实现本发明图 1 所示实施例的流程。 如图 6 所示,该信道选择装置可以包括 :发送模块 61、接收模块 62 和切换模块 63。 其中,发送模块 61,用于当 Mesh 节点需要进行信道切换时,向该 Mesh 节点的 邻居节点发送信道选择通告信元,该信道选择通告信元携带该 Mesh 节点选择的待切换信 道的标识 ;具体地,发送模块 61 可以将该信道选择通告信元承载在 beacon 帧或 probe 应 答帧中发送给该 Mesh 节点的邻居节点。
本实施例中,该信道选择通告信元可以包括发起者字段、发起者节点字段、新 信道字段和状态字段 ;其中,可以将新信道字段的值设置为该 Mesh 节点选择的待切换信 道的标识,例如 :该待切换信道的编号等可以唯一标识该待切换信道的标识,以在该信 道选择通告信元中携带该 Mesh 节点选择的待切换信道的标识。
接收模块 62,用于接收邻居节点的信道选择结果 ;具体地,接收模块 62 可以接 收邻居节点发送的 beacon 帧或 probe 应答帧,该 beacon 帧或 probe 应答帧中携带上述信道 选择结果。
切换模块 63,用于当该 Mesh 节点所在网络中的所有节点均同意切换到待切换信 道时,切换到上述待切换信道。
上述信道选择装置中,当 Mesh 节点需要进行信道切换时,发送模块 61 向该 Mesh 节点的邻居节点发送信道选择通告信元,该信道选择通告信元携带该 Mesh 节点选 择的待切换信道的标识 ;在该 Mesh 节点所在网络中的所有节点均同意切换到上述待切换 信道之后,切换模块 63 切换到该待切换信道。 从而可以实现 Mesh 网络中的所有节点均 工作在信道指标比较好的信道上,进而可以提高 Mesh 网络的整体性能。
图 7 为本发明信道选择装置另一个实施例的结构示意图,本实施例中的信道选 择装置可以作为网状网节点实体设备,或者网状网节点实体设备的一部分,实现本发明 图 1 和图 2 所示实施例的流程。 与图 6 所示的信道选择装置相比,不同之处在于,图 7 所示的信道选择装置还可以包括 :
排序模块 64,用于对符合 Mesh 节点的信道选择条件的信道,按照信道强度由强 到弱的顺序进行优先级排序 ;
选择模块 65,用于从排序模块 64 排好序的信道队列中选择优先级最高的信道作 为待切换信道。
进一步地,该信道选择装置还可以包括 :
删除模块 66,用于当网络中有至少一个节点不同意切换到待切换信道,且该信 道队列中仍有可选信道时,将该待切换信道从上述信道队列中删除 ;
这时,选择模块 65 还可以在删除模块 66 删除该待切换信道之后,从信道队列中 选择优先级次高的信道重新发送信道选择通告信元。
进一步地,该信道选择装置还可以包括 :
取消模块 67,用于当网络中有至少一个节点不同意切换到待切换信道,且该信 道队列中已没有可选信道时,取消信道选择通告。
进一步地,该信道选择装置还可以包括 :接受模块 68,用于在接收模块 62 接 收到 Mesh 节点的邻居节点发送的信道选择通告信元之后,如果该接收模块 62 仅接收到 该 Mesh 节点的一个邻居节点发送的信道选择通告信元,则接受该信道选择通告信元 ;或 者,如果接收模块 62 先后接收到该 Mesh 节点的至少两个邻居节点发送的信道选择通告信 元,则接受 MAC 地址最小的邻居节点发送的信道选择通告信元 ;上述邻居节点发送的信 道选择通告信元携带该邻居节点选择的待切换信道的标识。
进一步地,该信道选择装置还可以包括 :
确定模块 69,用于在接受模块 68 接受邻居节点发送的信道选择通告信元之后, 根据该 Mesh 节点的信道选择条件确定是否选择邻居节点发送的信道选择通告信元中携带 的待切换信道 ;
更新模块 610,用于在确定模块 69 确定是否选择邻居节点发送的信道选择通告 信元中携带的待切换信道之后,更新该 Mesh 节点的邻居信道选择表和该 Mesh 节点的信 道选择状态 ;
这时发送模块 61,还用于将 Mesh 节点的信道选择结果发送给该 Mesh 节点的邻 居节点。
上述信道选择装置可以实现 Mesh 网络中的所有节点均工作在信道指标比较好的 信道上,进而可以提高 Mesh 网络的整体性能。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或 流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分 布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。 上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是 :以上实施例仅用以说明本发明的技术方案,而非对其限制 ; 尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解 :其 依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等 同替换 ;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方 案的精神和范围。