CN111371572B - 一种网络节点的选举方法及节点设备 - Google Patents
一种网络节点的选举方法及节点设备 Download PDFInfo
- Publication number
- CN111371572B CN111371572B CN201811592107.4A CN201811592107A CN111371572B CN 111371572 B CN111371572 B CN 111371572B CN 201811592107 A CN201811592107 A CN 201811592107A CN 111371572 B CN111371572 B CN 111371572B
- Authority
- CN
- China
- Prior art keywords
- node
- network
- election
- nodes
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/32—Connectivity information management, e.g. connectivity discovery or connectivity update for defining a routing cluster membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/30—Decision processes by autonomous network management units using voting and bidding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/46—Cluster building
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/28—Connectivity information management, e.g. connectivity discovery or connectivity update for reactive routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种网络节点的选举方法及节点设备,解决采用现有的分布式分簇或者连通支配集算法进行选举时,会产生较多的冗余节点及大量的冗余***消息开销的问题。本发明的方法包括:接收网络节点的目标邻居节点发送的第一选举信息,目标邻居节点的概率因子小于网络概率因子;根据第一选举信息,确定网络节点是否为除预设节点之外的节点,预设节点包括DS节点及与DS节点直接通信的节点;在网络节点为除预设节点之外的节点的情况下,发送第二选举信息,第二选举信息包括网络节点选举出的DS节点。本发明实施例中,将选举过程分步执行,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量以及DS选举产生的***开销。
Description
技术领域
本发明涉及通信应用的技术领域,尤其涉及一种网络节点的选举方法及节点设备。
背景技术
移动自组网的层次化是解决可扩展问题的重要途径,而分簇是实现移动自组网层次化的重要手段之一,分簇算法的效率直接影响移动自组网应用***的性能。此外,分簇形成的簇结构还能提供网络管理的多种服务。
平面结构中,所有节点的地位平等,所以又可称为对等结构;而层次结构中,网络被划分为簇,每个簇由一个簇首和多个簇成员组成,这些簇首形成了高一级的网络,在高一级的网络中,又可以分簇。常用的分布式分簇算法包括最大连通度法、最小ID法、加权法以及基于能量的最小ID算法等。
但现有的分布式分簇或者连通支配集算法利用节点的局域信息独立的进行簇首或者支配集的选举,选举产生了较多的冗余节点,且当网络中各个节点的连通度很大时,所有节点参与簇首或者支配集的选举,将产生大量的冗余的***消息开销,造成网络资源的浪费。
发明内容
本发明的目的在于提供一种网络节点的选举方法及节点设备,用以解决采用现有的分布式分簇或者连通支配集算法进行选举时,会产生较多的冗余节点以及大量的冗余***消息开销的问题。
为了实现上述目的,本发明提供了网络节点的选举方法,应用于网络节点,包括:
接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子;
根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
其中,所述根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点之前,还包括:
获取网络节点自身的概率因子;
在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
其中,所述发送第三选举信息,包括:
在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
其中,根据所述第一节点,确定DS节点,包括:
在所述第一节点包括一个节点的情况下,将所述第一节点确定为DS节点;
在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为DS节点。
其中,所述发送第二选举信息,包括:
在第一节点集合中,选取具有最高支配因子的第二节点;
根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
其中,在第一节点集合中,选取具有最高支配因子的第二节点,包括:
在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
其中,根据所述第二节点,确定第二DS节点,包括:
在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
其中,接收网络节点的目标邻居节点发送的第一选举信息之后,还包括:
根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
其中,发送第二选举信息之后,还包括:
根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
其中,更新所述网络节点和所述网络节点的邻居节点的状态信息,包括:
在所述网络节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第一状态,并将与所述网络节点直接通信的邻居节点的状态信息更新为第二状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第二状态,并将与所述网络节点直接通信的被选举为DS节点的邻居节点的状态信息更新为第一状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点未被选举为DS节点的情况下,将所述网络节点的状态信息更新为第三状态。
为了实现上述目的,本发明实施例还提供了一种节点设备,包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现以下步骤:
通过收发机接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子;
根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
通过收发机在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
其中,所述处理器执行所述程序时还实现以下步骤:
获取网络节点自身的概率因子;
在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
其中,所述处理器执行所述程序时还实现以下步骤:
在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
其中,所述处理器执行所述程序时还实现以下步骤:
在所述第一节点包括一个节点的情况下,将所述第一节点确定为DS节点;
在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为DS节点。
其中,所述处理器执行所述程序时还实现以下步骤:
在第一节点集合中,选取具有最高支配因子的第二节点;
根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
其中,所述处理器执行所述程序时还实现以下步骤:
在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
其中,所述处理器执行所述程序时还实现以下步骤:
在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
其中,所述处理器执行所述程序时还实现以下步骤:
根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
其中,所述处理器执行所述程序时还实现以下步骤:
根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
其中,所述处理器执行所述程序时还实现以下步骤:
在所述网络节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第一状态,并将与所述网络节点直接通信的邻居节点的状态信息更新为第二状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第二状态,并将与所述网络节点直接通信的被选举为DS节点的邻居节点的状态信息更新为第一状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点未被选举为DS节点的情况下,将所述网络节点的状态信息更新为第三状态。
为了实现上述目的,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上所述网络节点的选举方法的步骤。
为了实现上述目的,本发明实施例还提供了一种节点设备,包括:
接收模块,用于接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子;
确定模块,用于根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
第一发送模块,用于在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
其中,上述节点设备还包括:
获取模块,用于获取网络节点自身的概率因子;
第二发送模块,用于在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
其中,所述第二发送模块包括:
第一选取子模块,用于在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
第一发送子模块,用于根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
其中,所述第一发送子模块包括:
第一确定单元,用于在所述第一节点包括一个节点的情况下,将所述第一节点确定为DS节点;
第一选取单元,用于在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为DS节点。
其中,所述第一发送模块包括:
第二选取子模块,用于在第一节点集合中,选取具有最高支配因子的第二节点;
第二发送子模块,用于根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
其中,所述第二选取子模块用于在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
其中,所述第二发送子模块包括:
第二确定单元,用于在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
第二选取单元,用于在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
其中,上述节点设备,还包括:
第一更新模块,用于根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
其中,上述节点设备,还包括:
第二更新模块,用于根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
本发明实施例具有以下有益效果:
本发明实施例的上述技术方案,网络节点先接收自身概率因子小于网络概率因子的目标邻居节点发送的第一选举信息,即本发明实施例中先由自身概率因子小于网络概率因子的节点发送第一选举信息;网络节点根据第一选举信息确定出该网络节点为除预设节点之外的节点的情况下,发送第二选举信息,即参与第二阶段的选举。本发明实施例中,将选举过程分步执行,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量,且减少了参与选举的节点数量以及DS选举产生的***开销。
附图说明
图1为本发明实施例的网络节点的选举方法的流程示意图;
图2为采用UCDS算法选出的支配集的第一示意图;
图3为采用UCDS算法选出的支配集的第二示意图;
图4为本发明实施例中采用P-DS算法选出的支配集的第一示意图;
图5为本发明实施例中采用P-DS算法选出的支配集的第二示意图;
图6为本发明实施例的节点设备的结构框图;
图7为本发明实施例的节点设备的模块示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合具体实施例及附图进行详细描述。
为使本领域人技术人员能够更好地理解本发明的方案,先进行如下说明。
1.移动自组网的概念和定义。
移动自组网的层次化是解决可扩展问题的重要途径,而分簇是实现移动自组网层次化的重要手段之一,分簇算法的效率直接影响移动自组网应用***的性能。此外,分簇形成的簇结构还能提供网络管理的多种服务。目前,通常借助图论的相关理论研究分簇技术,改进分簇算法,优化移动自组网的层次化结构。为了方便描述和分析,本发明实施例采用一个广泛使用的无线移动自组网的通用模型,将网络中的节点抽象为图论中的点,将节点与节点之间的通信链路抽象为图论中的边,并使用如下定义。
定义1(无向图):设图G=(E,V),V表示节点的集合,E表示边的集合。节点x和y之间存在边(x,y),则x和y是可以互相通信的一跳邻居节点。如果G为无自环的连通无向图且G中任意两个节点之间至多有一条边,则G称为简单无向图。
定义2(支配集和支配数):D是图G的一个节点子集,对于G的任一节点v,要么v属于D,要么与D中的一个节点相邻,则D称为图G的一个支配集。若在D集中去掉任何元素后,D不再是支配集,则称D是极小支配集。称图G的所有支配集中节点个数最少的支配集为最小支配集,最小支配集中的节点个数称为图G的支配数。
定义3(连通支配集):D为图G的一个支配集,C为图中节点E的一个子集,如果CD=D∪C构成的节点子集在图G中是相互连通的,则称子集CD为连通支配集(CDS,ConnectedDominating Set)。
定义4(连通度):一个节点的一跳邻居节点的数目称为该节点的连通度。
定义6(网关):分簇网络中实现簇间数据传输的节点称为网关。
定义7(网络支配集):网络支配集定义为网络中所有簇首和网关组成的集合,虚拟骨干网即为一个网络支配集。
2.常用的分布式分簇算法。
平面结构中,所有节点的地位平等,所以又可称为对等结构;而层次结构中,网络被划分为簇,每个簇由一个簇首和多个簇成员组成,这些簇首形成了高一级的网络,在高一级的网络中,又可以分簇。常用的分布式分簇算法包括最大连通度法、最小ID法、加权法、基于能量的最小ID算法、加权分簇(Weighted Clustering Algorithm,WCA)算法等。
(1)最大连通度法。
该算法也称为基于连通度的分簇算法,其中节点的连通度由它与周围节点的距离来确定。一个节点的邻居节点的个数称为它的连通度,具有最大连通度的节点被选择为簇首,其周围邻居节点作为该簇内的一般节点,它们只能与簇首进行通信。
(2)最小ID法。
该算法也称为基于识别器的分簇算法。这是一种简单的分簇算法,算法中每个节点都具有唯一的序列号,序列号最小的节点被选择为簇首,而每个簇内一般节点的序列号必定大于簇首的序列号。位于两个或者多个簇内的节点称为网关,对于不互相覆盖的两个簇,可以定义两个分别位于不同簇内的节点作为分布式网关,节点与网关之间联合构成了一个支配集,即整个骨干网。
(3)加权法。
即分布式分簇算法(Distributed Clustering Algorithm,DCA)以及分布式移动自适应分簇算法(Distributed Mobility-Adaptive Clustering Algorithm,DMAC)。其中每个节点根据其成为簇首的适合程度分配一个权值(大于零的实数),该节点和邻居节点中权值最高的节点被选择作为簇首,而其相邻节点作为簇内一般节点。如果权值相同,则选择ID较小的节点作为簇首。
(4)基于能量的最小ID算法。
簇首的选举对于网络的性能至关重要,基于以上考虑,可以采用一种基于能量的最小ID分簇算法。在这种算法中,每个节点分配一个权值来表示该节点作为簇首的合适程度。该权值和节点剩余能量有关,当权值较大时就可以选其作为簇首。它可以看作一种考虑了节点寿命后的改进加权算法。
(5)WCA算法。
该算法综合考虑了节点的连通度、移动速度以及与周围邻居节点的距离等多方面的因素,使得簇首的选择更加合理。然而,该算法只选择邻居小于某一固定上限的节点作为簇首,这对于网络较密集的情况该算法将不适用。
3.移动自组织网络的连通支配集。
图论中连通支配集的概念和理论经常被用于研究移动自组织网络中的广播传输、路由选择、网络分簇等问题。在广播传输中,将连通支配集作为广播数据的多点中继(MPR,Multi-Point Relay)节点,在保证数据全网广播的同时减少广播数据的数量,减轻网络负载;在路由选择中,通过连通支配集构建数据路由的虚拟骨干网,采取相应的路由选择机制,完成单播数据的多跳传输;在网络分簇中,连通支配集等效于1跳分簇(即簇中所有节点与簇首之间的距离为1跳)网络中簇首和网关的集合,即网络支配集。
现有技术中已对移动自组织网络中MPR机制和算法的发展和研究进行了描述。最初的MPR是一种信源依赖(广播依赖)的策略,即在广播过程中,转发节点的集合是由广播的源节点和通信延时决定的,并使用贪婪算法(算法1)给出节点i的转发节点集合MPR(i)。在此基础上,基于MPR算法提出了一种新的、局部的、非信源依赖的算法,并定义了规则一和规则二。然后,在此基础上定义了改进规则一,提出了EMPR算法(算法2),减少了CDS中的冗余节点,提高了算法的效率。进而,提出了改进规则二,提出了EEMPR算法(算法3),通过使用节点的3跳邻域信息,选择能够覆盖节点2跳邻居集的转发节点,进一步减少了CDS中的冗余节点,提高了算法效率。
如果一个节点属于连通支配集,则其需要满足以下任意一条规则:
规则一:节点的ID小于其任意邻居节点的ID。
规则二:节点被其ID最小的邻居节点选举为转发节点。
在以上两条规则的基础上,改进规则如下:
改进规则一:点的ID小于其任意邻居节点的ID,同时节点具有不相连的邻居节点。
改进规则二:节点被其ID最小的邻居节点直接选举为转发节点,或者节点被其2跳邻居节点中ID小于其所有1跳邻居节点的节点间接选举为转发节点。
目前基于无线传感器网络的高能效的分布式连通支配集算法,首先通过发起节点使用一种染色算法构建一个最大独立集合(MIS,Maximum Independent Set),然后使用一种近似贪婪算法从非最大独立集合的节点中获得连接节点,最后由连接节点和最大独立集合构成最小连通支配集。
但现有的分布式分簇或者连通支配集算法利用节点的局域信息独立的进行簇首或者支配集的选举,选举产生了较多的冗余节点,且当网络中各个节点的连通度很大时,所有节点参与簇首或者支配集的选举,将产生大量的冗余的***消息开销,造成网络资源的浪费。
由上述移动自组织网络的分簇或者连通支配集的描述可知,在选举簇首或者支配集的时候,节点需要一个比较标准进行比较,进而确定哪个节点更适合作为簇首或者支配集。这个标准可以是节点的特性,如ID号(最小ID法)、节点剩余能量(基于能量的最小ID法)、移动速度(WCA算法);可以基于节点间通信链路的状态,如链路带宽、传输距离、传输时延等;可以基于网络的特性,如节点的连通度(最大连通度法)、节点的覆盖范围、节点的种类等;还可以综合考虑各种因素以适应不同的网络状态和需求,如综合各种因素的加权法。因此,该标准的选择很大程度上决定了分簇或者支配集算法的环境适应性和性能上限,本发明实施例中称这个标准为支配因子。
如何选取支配因子是分簇和支配集研究中的一个方向,不同的环境和需求决定了不同的最优支配因子;而本发明实施例针对如何利用已知的支配因子简单、快速、稳定的选举簇首或者支配集。本发明实施例的选举方法适合所有类型的支配因子。
下面对结合表1对本发明实施例中可能会用到的符号所代表的含义进行说明。
表1
如图1所示,本发明实施例提供了一种网络节点的选举方法,应用于网络节点,包括:
步骤101:接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子。
这里,目标邻居节点是指所述网络节点的邻居节点中自身概率因子小于网络概率因子的邻居节点。即本发明实施例中,只有自身概率因子小于网络概率因子的网络节点才会主动发送第一选举信息。也就是说,本发明实施例中,先由自身概率因子小于网络概率因子的节点参与第一阶段的选举,发送第一选举信息。
步骤102:根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点。
这里,与DS节点直接通信的节点是指该DS节点的1跳邻居节点。网络节点的2跳邻居节点是指与网络节点间隔一个节点的节点。
步骤103:在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
在上述网络节点不是DS节点以及与DS节点直接通信的节点时,参与第二阶段的选举,发送第二选举信息。
本发明实施例的网络节点的选举方法,网络节点先接收自身概率因子小于网络概率因子的目标邻居节点发送的第一选举信息,即本发明实施例中先由自身概率因子小于网络概率因子的节点发送第一选举信息;网络节点根据第一选举信息确定出该网络节点为除预设节点之外的节点的情况下,发送第二选举信息,即参与第二阶段的选举。本发明实施例中,将选举过程分步执行,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量,且减少了参与选举的节点数量以及DS选举产生的***开销。
进一步地,所述根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点之前,还包括:
获取网络节点自身的概率因子;
在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
这里,网络节点获取自身的概率因子,并将自身的概率因子与网络概率因子进行比较,在自身的概率因子小于网络概率因子的情况下,主动发送第三选举信息,参与第一阶段的DS选举,否则,不参与第一阶段的DS选举。
本发明实施例的选举方法可以基于P-DS算法来实现,其核心思想是将DS节点的选举过程分成两个步,第一步,网络中的部分节点根据自己获取的2跳邻居信息选举DS节点,并根据选举结果更新节点和邻居节点的状态;第二步,非DS节点和DS邻居节点的节点根据自己获得的2跳邻居信息选举DS节点,并根据选举结果更新节点和邻居节点的状态。通过这样一个分步产生DS节点的过程,第二步利用了第一步的结果,减少了整个过程中参与选举的节点的数量,同时可以减少最终选举产生的DS节点的数量。
该P-DS算法分步的依据是自身概率因子pi和网络概率因子p的大小。如果pi小于p,则节点i参与第一阶段的DS选举;如果pi大于或者等于p,则不参与第一阶段的DS选举。网络概率因子p由整个网络的特点确定,是一个相对固定的值,在整个网络生存周期内也可根据需要调整。节点的概率因子pi反映节点的相对状态,表征节点不参加第一阶段DS选举的意愿的大小,遵循如下概率因子确定原则。
概率因子确定原则:节点的概率因子与节点状态的变化成反比,即节点i的相对状态越稳定,概率因子pi越小。
这里节点状态的变化可以用多种指标来表征,例如节点功能、节点类型、移动速度、邻居数量、链路状态、电池剩余能量等,而综合各种因素确定的节点概率因子本质上将网络中的节点分为了不同的几类节点进行处理。
进一步地,所述发送第三选举信息,包括:
在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
具体的,在所述第一节点包括一个节点的情况下,将所述第一节点确定为DS节点;在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为DS节点。
进一步地,所述发送第二选举信息,包括:
在第一节点集合中,选取具有最高支配因子的第二节点;
根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
更进一步地,在第一节点集合中,选取具有最高支配因子的第二节点,包括:
在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
具体的,根据所述第二节点,确定第二DS节点,包括:
在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
本发明实施例的网络节点的选举方法,在确定网络概率因子和节点概率因子的情况下,P-DS算法主要由P-DS规则确定,P-DS规则体现了该算法的核心思想,具体分为规则1和规则2:
DS规则1:
拓扑图G中任意节点i判断不等式pi<p是否成立。如果成立,则在其自身和1跳邻居节点的集合N(1)[i]中查找具有最高支配因子dj的节点j,并指定该节点为DS成员。如果多个节点具备相同的最高支配因子dn,则选举节点ID最大的节点为DS成员。
DS规则2:
既不是DS节点也不是DS节点的1跳邻居节点N(1)(DS)的节点i,在其自身和1跳邻居节点的集合N(1)[i]中查找不属于N(1)(DS)且具有最高支配因子dk的节点k,并指定该节点为DS成员。如果多个节点具备相同的最高支配因子dn,则选举节点ID号最小的节点为DS成员。
进一步地,本发明实施例中,接收网络节点的目标邻居节点发送的第一选举信息之后,还包括:
根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
进一步地,发送第二选举信息之后,还包括:
根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
其中,更新所述网络节点和所述网络节点的邻居节点的状态信息,包括:
在所述网络节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第一状态,并将与所述网络节点直接通信的邻居节点的状态信息更新为第二状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第二状态,并将与所述网络节点直接通信的被选举为DS节点的邻居节点的状态信息更新为第一状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点未被选举为DS节点的情况下,将所述网络节点的状态信息更新为第三状态。
本发明实施例中,每个网络节点可先进行节点初始化,将自身状态标记为W(White),如果节点被选为DS节点,则将自身状态标记为B(Black),即上述第一状态;如果节点未被选为DS节点,但是其1跳邻居节点被选为DS节点,则将其自身状态标记为G(Gray),即上述第二状态。
下面结合具体实施例来对本发明实施例进行说明。
步骤1:首先,节点i将自身状态标记为W,并通过发送和接收广播消息获得局域邻居信息、支配因子信息,并根据自身和网络状态计算概率因子pi。
该局域邻居信息可以具体是2跳邻居信息。
步骤2:节点i比较概率因子pi与网络概率因子p的大小:
2.1),如果pi<p,则节点i参与本周期的DS节点选举过程,根据自身支配因子和邻居节点的支配因子,选举支配因子最大的节点为DS节点,如果多个节点的支配因子相同则选举节点ID最大的节点。同时接收邻居节点的选举信息。在此周期末,节点更新自身状态,标记为DS节点或者普通节点。
2.2),如果pi≥p,则不参与选举,但是接收邻居节点的选举信息,并在此周期末更新自身状态,标记为DS节点或者普通节点。同时,不管是参与选举的节点还是未参与选举的节点,在此周期的末期都需要根据已有的信息判断自身是否为DS节点、DS节点的1跳邻居节点或者DS的1跳邻居节点的邻居节点。
步骤3:DS节点、DS节点的1跳邻居节点不参与选举,其他节点参与选举,但是,DS邻居的邻居节点不选举DS的1跳邻居节点作为DS节点。本周期末期,所有节点更新自身状态和邻居节点状态,网络完成DS的选举。
本发明实施例的网络节点的选举方法,通过适当的节点概率因子计算策略,可以使得状态相对变化较快的节点尽量不参与第一阶段的DS选举,能够提高此阶段选举信息的稳定性,为后续阶段的DS选举提供更多更可靠的信息,且通过分步执行选举,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量。
下面结合密集网络的应用场景来说明网络节点的选举方法。
假设在一个30km×30km的二维平面内随机选择32个移动自组网节点,所有节点的能力相同且传输的有效覆盖范围为半径12km的圆,即两个节点之间的欧几里德距离小于12km时节点间存在双向通信链路。
在密集网络中,一个节点的邻居节点数量非常多,如果采用传统的局域信息的分布式选举策略,所有节点均参与选举,一方面选举所需要的信息量比较大,另一方面会产生非常多的冗余DS节点。在某些场景下,冗余节点会带来很多坏处。而P-DS的出发点就是减少参与选举的节点数量、选举的***开销和产生的冗余DS节点,通过分步执行让一部分节点在获得更多信息的基础上参与DS节点的选举。同时,状态相对变化较快的节点尽量不参与第一阶段的DS选举,能够提高此阶段选举信息的稳定性,为第二阶段的DS选举提供更多更可靠的信息。
以两种不同节点分布情况的网络场景为例,比较相同网络拓扑情况下,使用UCDS算法选出的支配集(图2中的节点1、节点10、节点11、节点16、节点17、节点23、节点30,以及图3中的节点4、节点30、节点17、节点21、节点15、节点31、节点22),与P-DS算法选出的支配集(图4中的节点1、节点11和节点16,以及图5中的节点4、节点30、节点16、节点21以及节点24)的对比情况,其中,采用P-DS算法的图4中,节点1为第一阶段选出的DS节点,采用P-DS算法的图5中,节点4、节点30和节点21为第一阶段选出的DS节点。可见,P-DS算法给出的DS节点数量更少、更分散,更适合作为分群网络中的簇首。
在整个选举过程中,网络中的节点根据参与的方式可以分为三类:
第一类节点:自身的pi<p,它们根据选举规则参与第一阶段的DS选举,主动发送选举消息,并根据选举结果确定自己的身份。
第二类节点:不主动发送选举消息,但是能够收到第一类节点发送的选举消息,并根据选举消息判断自己是DS节点(选举消息选举自己为DS节点)或者DS节点的1跳邻居节点(选举消息选举的DS节点是自己的1跳邻居),这类节点不参与第二阶段的DS选举过程,直接根据第一阶段的信息确定自己的身份。
第三类节点:参与第二阶段的选举,包括未参与第一阶段的DS选举同时也未收到第一阶段DS选举消息的节点,以及收到第一阶段DS选举消息,但是确定为DS邻居的邻居节点(选举消息选举的DS节点不是自己的1跳邻居)。
根据以上节点种类的划分可知,P-DS算法中第二类节点只需要接收信息,然后判断自己的身份即可,不需要主动参与选举过程;而第三类节点划分则充分利用了第一阶段DS选举的结果,以及节点与节点之间的邻居关系,使得分布式算法更好地获得和利用了局域信息。
本发明实施例在现有局域分布式DS算法的基础上,采用一种分步执行的方式,充分利用1跳邻居和2跳邻居在选举过程中提供的额外信息进行网络DS节点的选举,提出一种改进的基于概率p的DS算法,即P-DS算法,将分布式DS选举过程分为两步或者多步执行,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量,且减少了参与选举的节点数量,减少了DS选举产生的***开销。
此外,上述分布式DS算法是指利用局域信息(2跳或者3跳邻居的支配因子)的分布式簇首或者支配集的选举算法,该算法的复杂度、收敛速度、稳定性、对拓扑变化的反应速度等方面的优劣直接影响广播传输、路由选择、网络分簇的性能。
本发明实施例的网络节点的选举方法,网络节点先接收自身概率因子小于网络概率因子的目标邻居节点发送的第一选举信息,即本发明实施例中先由自身概率因子小于网络概率因子的节点发送第一选举信息;网络节点根据第一选举信息确定出该网络节点为除预设节点之外的节点的情况下,发送第二选举信息,即参与第二阶段的选举。本发明实施例中,将选举过程分步执行,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量,且减少了参与选举的节点数量以及DS选举产生的***开销。
如图6所示,本发明的实施例还提供了一种节点设备,包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子;
根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
其中,在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器600代表的一个或多个处理器和存储器620代表的存储器的各种电路链接在一起。总线架构还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机610可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接口630还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。
处理器600负责管理总线架构和通常的处理,存储器620可以存储处理器600在执行操作时所使用的数据。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
获取网络节点自身的概率因子;
在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
在所述第一节点包括一个节点的情况下,将所述第一节点确定为DS节点;
在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为DS节点。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
在第一节点集合中,选取具有最高支配因子的第二节点;
根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
可选的,处理器600还用于读取存储器620中的程序,执行如下步骤:
在所述网络节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第一状态,并将与所述网络节点直接通信的邻居节点的状态信息更新为第二状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第二状态,并将与所述网络节点直接通信的被选举为DS节点的邻居节点的状态信息更新为第一状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点未被选举为DS节点的情况下,将所述网络节点的状态信息更新为第三状态。
本发明实施例的节点设备,先接收自身概率因子小于网络概率因子的目标邻居节点发送的第一选举信息,即本发明实施例中先由自身概率因子小于网络概率因子的节点发送第一选举信息;节点设备根据第一选举信息确定出该网络节点为除预设节点之外的节点的情况下,发送第二选举信息,即参与第二阶段的选举。本发明实施例中,将选举过程分步执行,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量,且减少了参与选举的节点数量以及DS选举产生的***开销。
在本发明的一些实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子;
根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
该程序被处理器执行时能实现上述方法实施例中的所有实现方式,为避免重复,此处不再赘述。
如图7所示,本发明实施例还提供了一种节点设备,包括:
接收模块701,用于接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子;
确定模块702,用于根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
第一发送模块703,用于在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
本发明实施例的节点设备,还包括:
获取模块,用于获取网络节点自身的概率因子;
第二发送模块,用于在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
本发明实施例的节点设备,所述第二发送模块包括:
第一选取子模块,用于在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
第一发送子模块,用于根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
本发明实施例的节点设备,所述第一发送子模块包括:
第一确定单元,用于在所述第一节点包括一个节点的情况下,将所述第一节点确定为DS节点;
第一选取单元,用于在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为DS节点。
本发明实施例的节点设备,所述第一发送模块包括:
第二选取子模块,用于在第一节点集合中,选取具有最高支配因子的第二节点;
第二发送子模块,用于根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
本发明实施例的节点设备,所述第二选取子模块用于在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
本发明实施例的节点设备,所述第二发送子模块包括:
第二确定单元,用于在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
第二选取单元,用于在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
本发明实施例的节点设备,还包括:
第一更新模块,用于根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
本发明实施例的节点设备,还包括:
第二更新模块,用于根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
本发明实施例的节点设备,所述第一更新模块或所述第二更新模块用于在所述网络节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第一状态,并将与所述网络节点直接通信的邻居节点的状态信息更新为第二状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第二状态,并将与所述网络节点直接通信的被选举为DS节点的邻居节点的状态信息更新为第一状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点未被选举为DS节点的情况下,将所述网络节点的状态信息更新为第三状态。
本发明实施例的节点设备,先接收自身概率因子小于网络概率因子的目标邻居节点发送的第一选举信息,即本发明实施例中先由自身概率因子小于网络概率因子的节点发送第一选举信息;节点设备根据第一选举信息确定出该网络节点为除预设节点之外的节点的情况下,发送第二选举信息,即参与第二阶段的选举。本发明实施例中,将选举过程分步执行,充分利用和传递了选举过程中产生的信息,减少了选举产生的冗余DS节点的数量,且减少了参与选举的节点数量以及DS选举产生的***开销。
在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (25)
1.一种网络节点的选举方法,应用于网络节点,其特征在于,包括:
接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子,所述网络概率因子是根据网络的特点确定的一个数值,所述目标邻居节点的概率因子表征所述目标邻居节点不参加DS选举的意愿的大小;
根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
2.根据权利要求1所述的网络节点的选举方法,其特征在于,所述根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点之前,还包括:
获取网络节点自身的概率因子;
在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
3.根据权利要求2所述的网络节点的选举方法,其特征在于,所述发送第三选举信息,包括:
在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
4.根据权利要求3所述的网络节点的选举方法,其特征在于,根据所述第一节点,确定第一DS节点,包括:
在所述第一节点包括一个节点的情况下,将所述第一节点确定为第一DS节点;
在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为第一DS节点。
5.根据权利要求1所述的网络节点的选举方法,其特征在于,所述发送第二选举信息,包括:
在第一节点集合中,选取具有最高支配因子的第二节点;
根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
6.根据权利要求5所述的网络节点的选举方法,其特征在于,在第一节点集合中,选取具有最高支配因子的第二节点,包括:
在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
7.根据权利要求5所述的网络节点的选举方法,其特征在于,根据所述第二节点,确定第二DS节点,包括:
在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
8.根据权利要求2所述的网络节点的选举方法,其特征在于,接收网络节点的目标邻居节点发送的第一选举信息之后,还包括:
根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
9.根据权利要求2所述的网络节点的选举方法,其特征在于,发送第二选举信息之后,还包括:
根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
10.根据权利要求8或9所述的网络节点的选举方法,其特征在于,更新所述网络节点和所述网络节点的邻居节点的状态信息,包括:
在所述网络节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第一状态,并将与所述网络节点直接通信的邻居节点的状态信息更新为第二状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第二状态,并将与所述网络节点直接通信的被选举为DS节点的邻居节点的状态信息更新为第一状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点未被选举为DS节点的情况下,将所述网络节点的状态信息更新为第三状态。
11.一种节点设备,应用于网络节点,该节点设备包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现以下步骤:
通过收发机接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子,所述网络概率因子是根据网络的特点确定的一个数值,所述目标邻居节点的概率因子表征所述目标邻居节点不参加DS选举的意愿的大小;
根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
通过收发机在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
12.根据权利要求11所述的节点设备,其特征在于,所述处理器在实现根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点之前,执行所述程序时还实现以下步骤:
获取网络节点自身的概率因子;
在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
13.根据权利要求12所述的节点设备,其特征在于,所述处理器执行发送第三选举信息的程序时实现以下步骤:
在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
14.根据权利要求13所述的节点设备,其特征在于,所述处理器执行所述程序时还实现以下步骤:
在所述第一节点包括一个节点的情况下,将所述第一节点确定为第一DS节点;
在所述第一节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最大的节点作为第一DS节点。
15.根据权利要求11所述的节点设备,其特征在于,所述处理器执行所述发送第二选举信息的程序时实现以下步骤:
在第一节点集合中,选取具有最高支配因子的第二节点;
根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
16.根据权利要求15所述的节点设备,其特征在于,所述处理器执行所述程序时还实现以下步骤:
在第一节点集合中,选取不属于第二节点集合,且具有最高支配因子的第二节点,所述第二节点集合包括与DS节点直接通信的节点。
17.根据权利要求15所述的节点设备,其特征在于,所述处理器执行所述程序时还实现以下步骤:
在所述第二节点包括一个节点的情况下,将所述第二节点确定为第二DS节点;
在所述第二节点包括至少两个节点的情况下,在所述至少两个节点中选取节点ID最小的节点作为第二DS节点。
18.根据权利要求12所述的节点设备,其特征在于,所述处理器执行所述程序时还实现以下步骤:
根据所述第一选举信息和所述第三选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
19.根据权利要求12所述的节点设备,其特征在于,所述处理器执行所述程序时还实现以下步骤:
根据所述第二选举信息,更新所述网络节点和所述网络节点的邻居节点的状态信息。
20.根据权利要求18或19所述的节点设备,其特征在于,所述处理器执行所述程序时还实现以下步骤:
在所述网络节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第一状态,并将与所述网络节点直接通信的邻居节点的状态信息更新为第二状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点被选举为DS节点的情况下,将所述网络节点的状态信息更新为第二状态,并将与所述网络节点直接通信的被选举为DS节点的邻居节点的状态信息更新为第一状态;
在所述网络节点未被选举为DS节点,且与所述网络节点直接通信的邻居节点未被选举为DS节点的情况下,将所述网络节点的状态信息更新为第三状态。
21.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至10中任一项所述网络节点的选举方法的步骤。
22.一种节点设备,应用于网络节点,其特征在于,包括:
接收模块,用于接收网络节点的目标邻居节点发送的第一选举信息,所述第一选举信息包括所述目标邻居节点选举出的支配集DS节点,所述目标邻居节点的概率因子小于网络概率因子,所述网络概率因子是根据网络的特点确定的一个数值,所述目标邻居节点的概率因子表征所述目标邻居节点不参加DS选举的意愿的大小;
确定模块,用于根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点,所述预设节点包括DS节点以及与DS节点直接通信的节点;
第一发送模块,用于在所述网络节点为除预设节点之外的节点的情况下,发送第二选举信息,所述第二选举信息包括所述网络节点选举出的DS节点。
23.根据权利要求22所述的节点设备,其特征在于,还包括:
获取模块,用于在确定模块根据所述第一选举信息,确定所述网络节点是否为除预设节点之外的节点之前,获取网络节点自身的概率因子;
第二发送模块,用于在所述网络节点自身的概率因子小于网络概率因子的情况下,发送第三选举信息,所述第三选举信息包括网络节点选举出的DS节点。
24.根据权利要求23所述的节点设备,其特征在于,所述第二发送模块包括:
第一选取子模块,用于在第一节点集合中,选取具有最高支配因子的第一节点,所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点;
第一发送子模块,用于根据所述第一节点,确定第一DS节点,并发送所述第一DS节点。
25.根据权利要求22所述的节点设备,其特征在于,所述第一发送模块包括:
第二选取子模块,用于在第一节点集合中,选取具有最高支配因子的第二节点;
第二发送子模块,用于根据所述第二节点,确定第二DS节点,并发送所述第二DS节点;
所述第一节点集合包括网络节点以及与所述网络节点直接通信的节点。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811592107.4A CN111371572B (zh) | 2018-12-25 | 2018-12-25 | 一种网络节点的选举方法及节点设备 |
PCT/CN2019/119350 WO2020134713A1 (zh) | 2018-12-25 | 2019-11-19 | 网络节点的选举方法及节点设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811592107.4A CN111371572B (zh) | 2018-12-25 | 2018-12-25 | 一种网络节点的选举方法及节点设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111371572A CN111371572A (zh) | 2020-07-03 |
CN111371572B true CN111371572B (zh) | 2021-09-10 |
Family
ID=71129666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811592107.4A Active CN111371572B (zh) | 2018-12-25 | 2018-12-25 | 一种网络节点的选举方法及节点设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111371572B (zh) |
WO (1) | WO2020134713A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112566210B (zh) * | 2020-12-08 | 2022-12-27 | 三维通信股份有限公司 | 数据传输方法和装置、存储介质及电子装置 |
CN115412419B (zh) * | 2022-08-29 | 2024-05-14 | 福建乐摩物联科技有限公司 | 一种自组网主节点选举及数据同步方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080110000A (ko) * | 2007-06-14 | 2008-12-18 | 연세대학교 산학협력단 | 무선 네트워크에서의 클러스터 헤드 선출방법 |
CN102497679A (zh) * | 2011-12-20 | 2012-06-13 | 山东大学 | 一种无线传感器网络静态分簇算法 |
CN104918294A (zh) * | 2014-03-12 | 2015-09-16 | 国家电网公司 | 一种无线传感网络功耗智能分配方法及无线传感网络 |
CN106488393A (zh) * | 2016-09-30 | 2017-03-08 | 天津大学 | 基于演化博弈机制的分簇无线传感器网络簇头选举模型 |
CN106686681A (zh) * | 2017-01-05 | 2017-05-17 | 清华大学 | 簇头卫星的选择方法及装置 |
CN106878083A (zh) * | 2017-02-28 | 2017-06-20 | 新华三技术有限公司 | 一种节点选举方法及装置 |
CN108092826A (zh) * | 2018-01-17 | 2018-05-29 | 重庆邮电大学 | 基于骨干节点安全角色层级化的无线传感网安全模型 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070299950A1 (en) * | 2006-06-21 | 2007-12-27 | General Electric Company | System for creating optimally-sized clusters |
CN102625403B (zh) * | 2012-05-04 | 2014-06-18 | 北京邮电大学 | 移动自组网中虚拟骨干网的生成和维护方法 |
CN109032854B (zh) * | 2018-07-13 | 2021-10-12 | 新华三技术有限公司成都分公司 | 选举请求处理方法、装置、管理节点及存储介质 |
-
2018
- 2018-12-25 CN CN201811592107.4A patent/CN111371572B/zh active Active
-
2019
- 2019-11-19 WO PCT/CN2019/119350 patent/WO2020134713A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080110000A (ko) * | 2007-06-14 | 2008-12-18 | 연세대학교 산학협력단 | 무선 네트워크에서의 클러스터 헤드 선출방법 |
CN102497679A (zh) * | 2011-12-20 | 2012-06-13 | 山东大学 | 一种无线传感器网络静态分簇算法 |
CN104918294A (zh) * | 2014-03-12 | 2015-09-16 | 国家电网公司 | 一种无线传感网络功耗智能分配方法及无线传感网络 |
CN106488393A (zh) * | 2016-09-30 | 2017-03-08 | 天津大学 | 基于演化博弈机制的分簇无线传感器网络簇头选举模型 |
CN106686681A (zh) * | 2017-01-05 | 2017-05-17 | 清华大学 | 簇头卫星的选择方法及装置 |
CN106878083A (zh) * | 2017-02-28 | 2017-06-20 | 新华三技术有限公司 | 一种节点选举方法及装置 |
CN108092826A (zh) * | 2018-01-17 | 2018-05-29 | 重庆邮电大学 | 基于骨干节点安全角色层级化的无线传感网安全模型 |
Also Published As
Publication number | Publication date |
---|---|
CN111371572A (zh) | 2020-07-03 |
WO2020134713A1 (zh) | 2020-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111342984B (zh) | 一种信息处理方法、***及装置 | |
Wang et al. | Learning decentralized wireless resource allocations with graph neural networks | |
Al-Karaki et al. | Data aggregation in wireless sensor networks-exact and approximate algorithms | |
Jahanshahi et al. | Multicast routing protocols in wireless mesh networks: a survey | |
CN105916183B (zh) | 基于链路质量和剩余能量的无线传感器网络路由选择方法 | |
Komali et al. | The price of ignorance: distributed topology control in cognitive networks | |
Sharafeddine et al. | A scatternet formation algorithm for Bluetooth networks with a non-uniform distribution of devices | |
Osman et al. | A survey of clustering algorithms for cognitive radio ad hoc networks | |
CN111371572B (zh) | 一种网络节点的选举方法及节点设备 | |
Mishra et al. | Survey on recent clustering algorithms in wireless sensor networks | |
WO2012171362A1 (zh) | 一种构建多点协作传输小区协作集的方法及装置 | |
Banerjee et al. | A modified mathematical model for life-time enhancement in wireless sensor network | |
CN116634500A (zh) | 基于超图匹配计算与通信容量增强的d2d计算卸载方法 | |
CN115190559B (zh) | 面向多场景的物联网设备的组网和控制方法 | |
Manisekaran et al. | Energy efficient hierarchical clustering for sensor networks | |
CN111601351B (zh) | 一种网关节点选择方法、节点及装置、介质 | |
Schleich et al. | Optimising small-world properties in VANETs: centralised and distributed overlay approaches | |
WO2016072838A1 (en) | A system and method for next hop selection in a wireless sensor network | |
Torres et al. | Improving lifetime and availability for ad hoc networks to emergency and rescue scenarios | |
CN109618387B (zh) | 一种无线传感器网集中式连通支配集构造方法 | |
CN106131887B (zh) | 基于串行干扰消除的分布式拓扑控制方法 | |
Lafta et al. | Efficient routing protocol in the mobile ad-hoc network (MANET) by using genetic algorithm (GA) | |
Bednarczyk et al. | Performance of distributed clustering with weighted optimization algorithm for MANET cognitive radio | |
Yang et al. | Fair Gain Based Dynamic Channel Allocation for Cognitive Radios in Wireless Mesh Networks. | |
CN116033520B (zh) | 无线组网方法及无线自组网络*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210607 Address after: 100085 1st floor, building 1, yard 5, Shangdi East Road, Haidian District, Beijing Applicant after: DATANG MOBILE COMMUNICATIONS EQUIPMENT Co.,Ltd. Address before: 100191 No. 40, Haidian District, Beijing, Xueyuan Road Applicant before: Telecommunications Science and Technology Research Institute Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |