一种无线mesh网络信道分配方法、装置及电子设备与流程

文档序号:17431602发布日期:2019-04-17 03:34阅读:270来源:国知局
一种无线mesh网络信道分配方法、装置及电子设备与流程

本发明涉及通信技术领域,特别是涉及一种无线mesh网络信道分配方法、装置及电子设备。



背景技术:

无线mesh网络(wirelessmeshnetwork,wmn)是一种可以用来接入互联网的宽带网络,它具有高容量和高速率等特点。它由网状分布的无线节点构成,通过自适应的节点发现、拓扑结构维护和多跳转发来实现节点之间互联互通。无线mesh网络属于一种特殊的移动自组织网络,它继承了部分无线局域网技术的特点,相当于把wlan(wirelesslocalareanetworks,无线局域网)和adhoc网络技术融合在一起,且具备这两种技术的优点。无线mesh网络的设计用途是让网络中的所有节点都能收发数据,从而提高网络的扩展性和健壮性,改进传统无线网络存在的弊端。无线mesh网络可以打破adhoc网、无线城域网等网络中的一些限制,使网络的性能大幅提高。

传统的单射频无线mesh网络只使用一个信道。由于无线信道是共享信道,竞争和干扰会发生在邻近节点的通信过程中,因此,严格意义上讲在一个干扰域内只能存在一条传输数据的链路。尽管应用很广泛的ieee802.11a协议中理论上具有54mb/s的峰值速率,但实际上,由于各种因素例如丢包、多个用户接入时发生冲突等影响,实际可以利用的速率大约只有峰值的二分之一,使网络传输数据的速率和整个网络的总容量受到了极大的限制,导致一些带宽要求比较高的数据业务在网络中不能传输。因此,需要给网络中的各个节点配置多个无线网卡(射频),这些射频利用正交的信道工作,就会使节点在接收数据的同时又能发送数据,而造成的干扰很小,就可以使无线mesh网络的容量大幅度地提高,这就是所谓的多射频多信道无线mesh网络(multi-radiomulti-channel,mr-mc)。

在多射频多信道无线mesh网络中,信道分配就是为节点的每一个射频和网络中的每一条链路分配相应的无线信道。因此,如何对多射频多信道无线mesh网络的各链路分配信道,仍然是亟待解决的问题。



技术实现要素:

本发明实施例的目的在于提供一种无线mesh网络信道分配方法、装置及电子设备,以实现了网络拓扑的维持以及链路冲突的最小化的多射频多信道无线mesh网络的信道分配方式。具体技术方案如下:

第一方面,本发明实施例公开了一种无线mesh网络信道分配方法,应用于无线mesh网络中的节点,所述方法包括:

判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

在所述当前节点为中心节点时,通过收集所述无线mesh网络中各剩余节点的数据包信息,获得所述无线mesh网络的网络状态信息;

利用所述无线mesh网络的网络状态信息以及第一预设公式,确定所述无线mesh网络中每条链路的链路权重;

利用所述无线mesh网络的网络状态信息以及第二预设公式,确定所述无线mesh网络中每两条链路组成的链路对的冲突系数;

针对每一条链路,对该链路的两个端节点的可用信道集合取交集,得到该链路的可用信道集合;

针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。

可选地,所述判断当前节点是否为无线mesh网络的拓扑结构的中心节点,包括:

在所述当前节点为所述无线mesh网络中唯一的网关节点时,判定所述当前节点是否为无线mesh网络的拓扑结构的中心节点;

当所述无线mesh网络中有多个网关节点时,通过预设公式计算所述当前节点的中心权重,在所述当前节点的中心权重最大时,判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

其中,所述预设公式为:

node_nums表示所述无线mesh网络中节点数量;hops(n,m)表示所述无线mesh网络中节点m到达网关节点n的最短路径的跳数;∑m∈v,m≠nhops(n,m)表示所述无线mesh网络中所有其他节点到达网关节点n的跳数总和。

可选地,所述通过收集所述无线mesh网络中各剩余节点的数据包信息,获得所述无线mesh网络的网络状态信息,包括:

通过广播信道,发送信道分配通知包cafp(channelassignmentfirstpacket)至所述无线mesh网络中各剩余节点;

接收各所述剩余节点返回的各信道分配消息数据包camp(channelassignmentmessagepacket),通过各所述camp数据包获得所述无线mesh网络的网络状态信息;其中,任一剩余节点的camp数据包包含该剩余节点的邻居节点身份信息、该剩余节点可用信道标识以及该剩余节点射频数目信息。

可选地,所述第一预设公式为:

weight(e)=α·weightp(e)+β·weightr(e)

weight(e)表示链路e的链路权重;weightp(e)表示所述链路e的对等模式链路权重;weightr(e)表示所述链路e的网关模式链路权重;α表示对等模式链路权重的比例因子,β表示网关模式链路权重的比例因子;α+β=1,0≤α,β≤1;

所述链路e的对等模式链路权重weightp(e)表示为:

weightp(e)=c(u)+c(v);

c(u)表示所述链路e的端节点u的中心权重;c(v)表示所述链路e的端节点v的中心权重;

当所述无线mesh网络中有一个网关节点时,所述链路e的网关模式链路权重weightr(e)表示为:

rall(root,u)表示从网关节点root到节点u的所有最短路径数目,r(root,u|e)表示经过所述链路e的网关节点root到节点u的最短路径数目;

当所述无线mesh网络中有多个网关节点时,所述链路e的网关模式链路权重weightr(e)表示为:

r1,r2,...rn表示所述无线mesh网络中的多个网关节点。

可选地,所述利用所述无线mesh网络的网络状态信息以及第二预设公式,确定所述无线mesh网络中每两条链路组成的链路对的冲突系数,包括:

针对任意两条链路ei(a1,b1)、ej(a2,b2)组成的链路对,计算该链路对中链路端节点a1与a2、a1与b2、b1与a2、b1与b2之间的最短路径跳数;

确定最短路径跳数的最小值dmin以及最短路径跳数的最大值dmax;

通过第二预设公式,确定链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数;

所述第二预设公式为:

conflict(ei,ej)表示链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数。

可选地,在针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及最小化冲突算法,确定使得当前网络冲突函数最小时该链路的目标信道之前,所述方法还包括:

按照链路权重由大到小的顺序,对各链路排序,得到链路序列;

所述针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道,包括:

依次选取所述链路序列的各链路,针对选取的当前链路,利用包含所述当前链路的链路对的冲突系数、所述当前链路的链路权重及所述当前链路的可用信道集合,确定所述当前链路的网络冲突函数:所述网络冲突函数表示如下:

conflict[e,l]表示链路e和链路l之间的冲突系数,link_chani表示分配到信道i上的链路集合,信道i为当前链路的可用信道集合中的第i个信道;

计算所述当前链路的网络冲突函数的最小值,得到所述当前链路的网络冲突函数最小时所述当前链路的目标信道。

可选地,在针对各链路,在所述针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道之后,所述方法还包括:

利用信道分配报文cap(channelassignmentpacket),分别下发各链路的目标信道信息到对应的节点。

第二方面,本发明实施例公开了一种无线mesh网络信道分配装置,应用于无线mesh网络中的节点,所述装置包括:

中心节点判断模块,用于判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

网络状态信息获取模块,用于在所述当前节点为中心节点时,通过收集所述无线mesh网络中各剩余节点的数据包信息,获得所述无线mesh网络的网络状态信息;

链路权重确定模块,用于利用所述无线mesh网络的网络状态信息以及第一预设公式,确定所述无线mesh网络中每条链路的链路权重;

冲突系数确定模块,用于利用所述无线mesh网络的网络状态信息以及第二预设公式,确定所述无线mesh网络中每两条链路组成的链路对的冲突系数;

可用信道集合确定模块,用于针对每一条链路,对该链路的两个端节点的可用信道集合取交集,得到该链路的可用信道集合;

目标信道确定模块,用于针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。

可选地,所述中心节点判断模块,包括:

第一中心节点判断子模块,用于在所述当前节点为所述无线mesh网络中唯一的网关节点时,判定所述当前节点是否为无线mesh网络的拓扑结构的中心节点;

第二中心节点判断子模块,用于当所述无线mesh网络中有多个网关节点时,通过预设公式计算所述当前节点的中心权重,在所述当前节点的中心权重最大时,判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

其中,所述预设公式为:

node_nums表示所述无线mesh网络中节点数量;hops(n,m)表示所述无线mesh网络中节点m到达网关节点n的最短路径的跳数;∑m∈v,m≠nhops(n,m)表示所述无线mesh网络中所有其他节点到达网关节点n的跳数总和。

可选地,所述网络状态信息获取模块,包括:

cafp发送子模块,用于通过广播信道,发送分配通知包cafp至所述无线mesh网络中各剩余节点;

网络状态信息获取子模块,用于接收各所述剩余节点返回的各信道分配消息数据包camp,通过各所述camp数据包获得所述无线mesh网络的网络状态信息;其中,任一剩余节点的camp数据包包含该剩余节点的邻居节点身份信息、该剩余节点可用信道标识以及该剩余节点射频数目信息。

可选地,所述第一预设公式为:

weight(e)=α·weightp(e)+β·weightr(e)

weight(e)表示链路e的链路权重;weightp(e)表示所述链路e的对等模式链路权重,weightr(e)表示所述链路e的网关模式链路权重;α表示对等模式链路权重的比例因子,β表示网关模式链路权重的比例因子;α+β=1,o≤α,β≤1;

所述链路e的对等模式链路权重weightp(e)表示为:

weightp(e)=c(u)+c(v)

c(u)表示所述链路e的端节点u的中心权重;c(v)表示所述链路e的端节点v的中心权重;

当所述无线mesh网络中有一个网关节点时,所述链路e的网关模式链路权重weightr(e)表示为:

rall(root,u)表示从网关节点root到节点u的所有最短路径数目r(root,u|e)表示经过所述链路e的网关节点root到节点u的最短路径数目;

当所述无线mesh网络中有多个网关节点时,所述链路e的网关模式链路权重weightr(e)表示为:

r1,r2,...rn表示所述无线mesh网络中的多个网关节点。

可选地,所述冲突系数确定模块,包括:

最短路径跳数计算子模块,用于针对任意两条链路ei(a1,b1)、ej(a2,b2)组成的链路对,计算该链路对中链路端节点a1与a2、a1与b2、b1与a2、b1与b2之间的最短路径跳数;

最小值、最大值确定子模块,用于确定最短路径跳数的最小值dmin以及最短路径跳数的最大值dmax;

冲突系数确定子模块,用于通过第二预设公式,确定链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数;

所述第二预设公式为:

conflict(ei,ej)表示链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数。

可选地,所述装置还包括:

链路排序模块,用于按照链路权重由大到小的顺序,对各链路排序,得到链路序列;

所述目标信道确定模块,包括:

网络冲突函数确定子模块,用于依次选取所述链路序列的各链路,针对选取的当前链路,利用包含所述当前链路的链路对的冲突系数、所述当前链路的链路权重及所述当前链路的可用信道集合,确定所述当前链路的网络冲突函数:所述网络冲突函数表示如下:

其中,conflict[e,l]表示链路e和链路l之间的冲突系数,link_chani表示分配到信道i上的链路集合,信道i为当前链路的可用信道集合中的第i个信道;

目标信道确定子模块,计算所述当前链路的网络冲突函数的最小值,得到所述当前链路的网络冲突函数最小时所述当前链路的目标信道。

可选地,所述装置还包括:

目标信道信息下发模块,用于利用信道分配报文cap,分别下发各链路的目标信道信息到对应的节点。

第三方面,本发明实施例公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;

所述存储器,用于存放计算机程序;

所述处理器,用于执行所述存储器上所存放的程序时,实现上述无线mesh网络信道分配方法中任一所述的方法步骤。

又一方面,本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现上述无线mesh网络信道分配方法中任一所述的方法步骤。

本发明实施例提供的一种无线mesh网络信道分配方法、装置及电子设备,通过判断当前节点是否为中心节点,当当前节点为中心节点时,收集无线mesh网络的网络状态信息,在信道分配的同时保存网络中的拓扑结构。通过综合考虑网络结构决定的链路重要性以及不同链路之间的干扰情况,分别计算网络中所有链路的权重。针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。本发明实施例通过上述方式,实现了网络拓扑的维持以及链路冲突的最小化的多射频多信道无线mesh网络的信道分配方式。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例的一种无线mesh网络信道分配方法流程图;

图2为本发明实施例的一种无线mesh网络信道分配方法的多射频多信道无线mesh网络拓扑图;

图3为本发明实施例的一种无线mesh网络信道分配方法流程图;

图4为本发明实施例的一种无线mesh网络信道分配装置结构示意图;

图5为本发明实施例的一种电子设备结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

第一方面,本发明实施例公开了一种无线mesh网络信道分配方法,如图1所示。图1为本发明实施例的一种无线mesh网络信道分配方法流程图,应用于无线mesh网络中的节点,方法包括:

s101,判断当前节点是否为无线mesh网络的拓扑结构的中心节点。

在判断当前节点是否为无线mesh网络的拓扑结构的中心节点之前,可先对无线mesh网络进行初始化,得到无线mesh网络的拓扑结构。

假设在一个50*50m2的区域中有9个节点(a、b、c、d、e、f、g、h及i)的无线mesh网络,设置该无线mesh网络的网关节点,每个节点配置的射频数目、射频接口、可供分配正交信道。设置所有节点使用指定信道1作为初始信道,交换邻居信息,建立初始路由,得到该无线mesh网络的拓扑结构,例如图2所示的本发明实施例的一种无线mesh网络信道分配方法的多射频多信道无线mesh网络拓扑图。其中,节点可为实际通信中的客户端或网关。

本步骤,可手动选择计算能力较强的节点作为中心节点,也可以由网络中节点自动选举。

可选地,s101中判断当前节点是否为无线mesh网络的拓扑结构的中心节点,可包括:

在当前节点为无线mesh网络中唯一的网关节点时,判定当前节点是否为无线mesh网络的拓扑结构的中心节点;

当无线mesh网络中有多个网关节点时,通过预设公式计算当前节点的中心权重,在当前节点的中心权重最大时,判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

其中,预设公式为:

node_nums表示无线mesh网络中节点数量;hops(n,m)表示无线mesh网络中节点m到达网关节点n的最短路径的跳数;∑m∈v,m≠nhops(n,m)表示无线mesh网络中所有其他节点到达网关节点n的跳数总和。

例如,判定当前节点a为该无线mesh网络的拓扑结构的中心节点。

s102,在当前节点为中心节点时,通过收集无线mesh网络中各剩余节点的数据包信息,获得无线mesh网络的网络状态信息。

可选地,s102中通过收集无线mesh网络中各剩余节点的数据包信息,获得无线mesh网络的网络状态信息,可包括:

步骤一,通过广播信道,发送信道分配通知包cafp(channelassignmentfirstpacket)通知包至无线mesh网络中各剩余节点;

本步骤中中心节点a通过广播信道,发送cafp通知包,告知该无线mesh网络中各剩余节点需要发送自身节点包含的无线mesh网络的网络状态信息。

步骤二,接收各剩余节点返回的各信道分配消息数据包camp(channelassignmentmessagepacket),通过各camp数据包获得无线mesh网络的网络状态信息;其中,任一剩余节点的camp数据包包含该剩余节点的邻居节点身份信息、该剩余节点可用信道标识以及该剩余节点射频数目信息。

各剩余节点在接收到中心节点a发送的cafp后,将自身节点的邻居节点身份信息、可用信道标识以及节点射频数目信息以camp数据包的形式,发送给中心节点a,中心节点a收到那个剩余节点的camp数据包后,向该节点发送返回一个ack(acknowledgement)确认报文。若节点经过一段时间timeout后仍未收到中心节点返回的ack确认报文后,则重新向中心节点发送camp报文。中心节点通过获得该无线mesh网络中剩余节点的camp数据包,获得该无线mesh网络的网络状态信息。

s103,利用无线mesh网络的网络状态信息以及第一预设公式,确定无线mesh网络中每条链路的链路权重;

本发明实施例中,为经过网关节点的链路和网内对等链路设置两种不同类型的链路权重计算方式,一条链路的链路权重是两者的加权平均。

可选地,s103中第一预设公式为:

weight(e)=α·weightp(e)+β·weightr(e)

weight(e)表示链路e的链路权重;weightp(e)表示链路e的对等模式链路权重,weightr(e)表示链路e的网关模式链路权重;α表示对等模式链路权重的比例因子,β表示网关模式链路权重的比例因子;α+β=1,0≤α,β≤1;

其中,当α=0时,该无线mesh网络为树状网络,表示仅存在经过网关节点的链路的链路权重;当β=0时,该无线mesh网络为为ad-hoc网络,表示网络中所有节点均为对等节点,数据只在局域网之间传递。

链路e的对等模式链路权重weightp(e)表示为:

weightp(e)=c(u)+c(v)

c(u)表示链路e的端节点u的中心权重;c(v)表示链路e的端节点v的中心权重。对等模式链路权重表示考虑网内对等通信时的对等模式链路权重,根据社交网络中的节点中心性概念来衡量节点在网络之中的重要性。

本发明实施例中,定义节点v的中心权重为c(v),公式如下所示:

σ(s,t)表示节点s、t之间的最短路径数目;σ(s,t|v)表示节点s、t的最短路径中经过节点v的数目,v为无线mesh网络中的所有节点的集合,节点v的中心权重为c(v)则是对无线mesh网络中所有其他节点之间的最短路径中经过节点v的路径所占比例的累加。对于通信网络而言,在各个节点产生的流量均等时,节点的中心权重可以代表网络中节点的可能负载情况。

当无线mesh网络中有一个网关节点时,链路e的网关模式链路权重weightr(e)表示为:

rall(root,u)表示从网关节点root到节点u的所有最短路径数目,r(root,u|e)表示经过链路e的网关节点root到节点u的最短路径数目。

链路e的网关模式链路权重weightr(e)是对网络中所有其他节点到达网关节点root的最短路径中经过链路e的路径所占比例的累加。

当无线mesh网络中有多个网关节点时,链路e的网关模式链路权重weightr(e)表示为:

r1,r2,...rn表示无线mesh网络中的多个网关节点。

s104,利用无线mesh网络的网络状态信息以及第二预设公式,确定无线mesh网络中每两条链路组成的链路对的冲突系数。

本发明实施例考虑到隐藏/暴露终端问题,提出了基于节点跳数的冲突系数计算模型。具体通过第二预设公式确定该无线mesh网络中每两条链路组成的链路对的冲突系数。

可选地,s104中利用无线mesh网络的网络状态信息以及第二预设公式,确定无线mesh网络中每两条链路组成的链路对的冲突系数,包括:

步骤a,针对任意两条链路ei(a1,b1)、ej(a2,b2)组成的链路对,计算该链路对中链路端节点a1与a2、a1与b2、b1与a2、b1与b2之间的最短路径跳数;

步骤b,确定最短路径跳数的最小值dmin以及最短路径跳数的最大值dmax;

步骤c,通过第二预设公式,确定链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数;

第二预设公式为:

其中,conflict(ei,ej)表示链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数。

本发明实施例中,假设链路数量为link_num,可以建立link_num*link_num维度的冲突系数矩阵。

s105,针对每一条链路,对该链路的两个端节点的可用信道集合取交集,得到该链路的可用信道集合。

本步骤中,通过网络状态信息,可确定每条链路的可用信道集合。具体为,针对每一条链路,检查链路e的两个端节点u、v已经分配的信道,计算端节点u、v的可用信道集合r(u)、r(v),对该链路的两个端节点的可用信道集合r(u)、r(v)取交集,得到该链路的可用信道集合chan_available(e)。

chan_available(e)=r(u)∩r(v)

s106,针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。

本发明实施例中针对每条链路,可通过计算该链路的网络冲突函数的最小值确定该链路的目标信道。

可选地,在s106针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及最小化冲突算法,确定使得当前网络冲突函数最小时该链路的目标信道之前,方法还包括:

按照链路权重由大到小的顺序,对各链路排序,得到链路序列。

本步骤中按照链路权重由大到小的顺序对链路进行排序,可便于以下按照为链路权重打的链路优先分配目标信道。

s106中针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道,包括:

步骤a,依次选取链路序列的各链路,针对选取的当前链路,利用包含当前链路的链路对的冲突系数、当前链路的链路权重及当前链路的可用信道集合,确定当前链路的网络冲突函数:网络冲突函数表示如下:

其中,conflict[e,l]表示链路e和链路l之间的冲突系数,link_chani表示分配到信道i上的链路集合,信道i为当前链路的可用信道集合中的第i个信道。

本步骤中,利用包含当前链路的链路对的冲突系数、当前链路的链路权重及该当前链路的可用信道集合,建立该当前链路的网络冲突函数。

步骤b,计算当前链路的网络冲突函数的最小值,得到当前链路的网络冲突函数最小时当前链路的目标信道。

本步骤中,可将该当前链路的可用信道集合中各可用信道带入当前链路的网络冲突函数中,求取该当前链路的网络冲突函数的最小值,将该当前链路的网络冲突函数最小值对应的信道,确定为该当前链路的目标信道。

可选地,在s106针对各链路,在针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道之后,方法还包括:

利用信道分配报文cap(channelassignmentpacket),分别下发各链路的目标信道信息到对应的节点。

在中心节点得到每个节点的目标信道后,可通过cap报文的形式,将每条链路的目标信道下发到对应的节点,使得节点获得每个经过自身节点的链路的目标信道。节点在收到cap报文后向中心节点返回ack确认报文,并按照该目标信道进行进行信道分配。若中心节点经过一段时间timeout后仍未收到ack确认报文,则重新向节点发送cap报文。

在本发明实施例提供的一种无线mesh网络信道分配方法中,通过判断当前节点是否为中心节点,当当前节点为中心节点时,收集无线mesh网络的网络状态信息,在信道分配的同时保存网络中的拓扑结构。通过综合考虑网络结构决定的链路重要性以及不同链路之间的干扰情况,分别计算网络中所有链路的权重。针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。本发明实施例通过上述方式,实现了网络拓扑的维持以及链路冲突的最小化的多射频多信道无线mesh网络的信道分配方式。

为了更好地说明本发明实施例的一种无线mesh网络信道分配方法,可有图3所示的本发明实施例的一种无线mesh网络信道分配方法流程图,包括:

步骤1,对无线mesh网络进行初始化,建立初始路由;

步骤2,判断网关节点数量,确定中心节点;当网关节点数量为1时,执行步骤3;当网关节点数量>1时,执行步骤4;

步骤3,选择该网关节点作为中心节点,执行步骤5;

步骤4,选择中心权重最大的网关节点作为中心节点,执行步骤5;

步骤5,中心节点收集其他节点的camp,得到该无线mesh网络的网络状态信息;任一节点的camp数据包包含该节点的邻居节点身份信息、该节点可用信道标识以及该节点射频数目信息;

步骤6,中心节点确定网络冲突函数最小时各链路的目标信道,得到信道分配方案;中心节点向各链路对应的节点发送信道分配命令;

步骤7,节点收到信道分配命令后向中心节点返回确认信息,并进行信道分配;

步骤8,判断中心节点是否收到确认信息;是,结束;否,中心节点重新向未确认节点发送信道分配命令;并执行步骤7。

第二方面,本发明实施例公开了一种无线mesh网络信道分配装置,应用于无线mesh网络中的节点,如图4所示。图4为本发明实施例的一种无线mesh网络信道分配装置结构示意图,装置包括:

中心节点判断模块401,用于判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

网络状态信息获取模块402,用于在当前节点为中心节点时,通过收集无线mesh网络中各剩余节点的数据包信息,获得无线mesh网络的网络状态信息;

链路权重确定模块403,用于利用无线mesh网络的网络状态信息以及第一预设公式,确定无线mesh网络中每条链路的链路权重;

冲突系数确定模块404,用于利用无线mesh网络的网络状态信息以及第二预设公式,确定无线mesh网络中每两条链路组成的链路对的冲突系数;

可用信道集合确定模块405,用于针对每一条链路,对该链路的两个端节点的可用信道集合取交集,得到该链路的可用信道集合;

目标信道确定模块406,用于针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。

在本发明实施例提供的一种无线mesh网络信道分配装置中,通过判断当前节点是否为中心节点,当当前节点为中心节点时,收集无线mesh网络的网络状态信息,在信道分配的同时保存网络中的拓扑结构。通过综合考虑网络结构决定的链路重要性以及不同链路之间的干扰情况,分别计算网络中所有链路的权重。针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。本发明实施例通过上述方式,实现了网络拓扑的维持以及链路冲突的最小化的多射频多信道无线mesh网络的信道分配方式。

可选地,在本发明无线mesh网络信道分配装置的一种实施例中,中心节点判断模块401,包括:

第一中心节点判断子模块,用于在当前节点为无线mesh网络中唯一的网关节点时,判定当前节点是否为无线mesh网络的拓扑结构的中心节点;

第二中心节点判断子模块,用于当无线mesh网络中有多个网关节点时,通过预设公式计算当前节点的中心权重,在当前节点的中心权重最大时,判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

其中,预设公式为:

node_nums表示无线mesh网络中节点数量;hops(n,m)表示无线mesh网络中节点m到达网关节点n的最短路径的跳数;∑m∈v,m≠nhops(n,m)表示无线mesh网络中所有其他节点到达网关节点n的跳数总和。

可选地,在本发明无线mesh网络信道分配装置的一种实施例中,网络状态信息获取模块402,包括:

cafp发送子模块,用于通过广播信道,发送cafp通知包至无线mesh网络中各剩余节点;

网络状态信息获取子模块,用于接收各剩余节点返回的各信道分配消息数据包camp,通过各camp数据包获得无线mesh网络的网络状态信息;其中,任一剩余节点的camp数据包包含该剩余节点的邻居节点身份信息、该剩余节点可用信道标识以及该剩余节点射频数目信息。

可选地,在本发明无线mesh网络信道分配装置的一种实施例中,第一预设公式为:

weight(e)=α·weightp(e)+β·weightr(e)

weight(e)表示链路e的链路权重;weightp(e)表示链路e的对等模式链路权重,weightr(e)表示链路e的网关模式链路权重;α表示对等模式链路权重的比例因子,p表示网关模式链路权重的比例因子;α+β=1,0≤α,β≤1;

链路e的对等模式链路权重weightp(e)表示为:

weightp(e)=c(u)+c(v)

c(u)表示链路e的端节点u的中心权重;c(v)表示链路e的端节点v的中心权重;

当无线mesh网络中有一个网关节点时,链路e的网关模式链路权重weightr(e)表示为:

rall(root,u)表示从网关节点root到节点u的所有最短路径数目r(root,u|e)表示经过链路e的网关节点root到节点u的最短路径数目;

当无线mesh网络中有多个网关节点时,链路e的网关模式链路权重weightr(e)表示为:

r1,r2,...rn表示无线mesh网络中的多个网关节点。

可选地,在本发明无线mesh网络信道分配装置的一种实施例中,冲突系数确定模块404,包括:

最短路径跳数计算子模块,用于针对任意两条链路ei(a1,b1)、ej(a2,b2)组成的链路对,计算该链路对中链路端节点a1与a2、a1与b2、b1与a2、b1与b2之间的最短路径跳数;

最小值、最大值确定子模块,用于确定最短路径跳数的最小值dmin以及最短路径跳数的最大值dmax;

冲突系数确定子模块,用于通过第二预设公式,确定链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数;

第二预设公式为:

conflict(ei,ej)表示链路ei(a1,b1)、ej(a2,b2)组成的链路对的冲突系数。

可选地,在本发明无线mesh网络信道分配装置的一种实施例中,装置还包括:

链路排序模块,用于按照链路权重由大到小的顺序,对各链路排序,得到链路序列;

目标信道确定模块406,包括:

网络冲突函数确定子模块,用于依次选取链路序列的各链路,针对选取的当前链路,利用包含当前链路的链路对的冲突系数、当前链路的链路权重及当前链路的可用信道集合,确定当前链路的网络冲突函数:网络冲突函数表示如下:

conflict[e,l]表示链路e和链路l之间的冲突系数,link_chani表示分配到信道i上的链路集合,信道i为当前链路的可用信道集合中的第i个信道;

目标信道确定子模块,计算当前链路的网络冲突函数的最小值,得到当前链路的网络冲突函数最小时当前链路的目标信道。

可选地,在本发明无线mesh网络信道分配装置的一种实施例中,装置还包括:

目标信道信息下发模块,用于利用信道分配报文cap,分别下发各链路的目标信道信息到对应的节点。

第三方面,本发明实施例公开了一种电子设备,如图5所示。图5为本发明实施例的一种电子设备结构示意图,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501、通信接口502、存储器503通过通信总线504完成相互间的通信;

存储器503,用于存放计算机程序;

处理器501,用于执行存储器503上所存放的程序时,实现以下方法步骤:

判断当前节点是否为无线mesh网络的拓扑结构的中心节点;

在当前节点为中心节点时,通过收集无线mesh网络中各剩余节点的数据包信息,获得无线mesh网络的网络状态信息;

利用无线mesh网络的网络状态信息以及第一预设公式,确定无线mesh网络中每条链路的链路权重;

利用无线mesh网络的网络状态信息以及第二预设公式,确定无线mesh网络中每两条链路组成的链路对的冲突系数;

针对每一条链路,对该链路的两个端节点的可用信道集合取交集,得到该链路的可用信道集合;

针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。

上述电子设备提到的通信总线504可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线504可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口502用于上述电子设备与其他设备之间的通信。

存储器503可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器503还可以是至少一个位于远离前述处理器501的存储装置。

上述的处理器501可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明实施例提供的一种电子设备中,通过判断当前节点是否为中心节点,当当前节点为中心节点时,收集无线mesh网络的网络状态信息,在信道分配的同时保存网络中的拓扑结构。通过综合考虑网络结构决定的链路重要性以及不同链路之间的干扰情况,分别计算网络中所有链路的权重。针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。本发明实施例通过上述方式,实现了网络拓扑的维持以及链路冲突的最小化的多射频多信道无线mesh网络的信道分配方式。

又一方面,本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现上述无线mesh网络信道分配方法中任一所述的方法步骤。

在本发明实施例提供的一种计算机可读存储介质中,通过判断当前节点是否为中心节点,当当前节点为中心节点时,收集无线mesh网络的网络状态信息,在信道分配的同时保存网络中的拓扑结构。通过综合考虑网络结构决定的链路重要性以及不同链路之间的干扰情况,分别计算网络中所有链路的权重。针对每一条链路,利用包含该链路的链路对的冲突系数、该链路的链路权重以及该链路的可用信道集合,确定使得当前网络冲突函数最小时该链路的目标信道。本发明实施例通过上述方式,实现了网络拓扑的维持以及链路冲突的最小化的多射频多信道无线mesh网络的信道分配方式。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1