CN101710866A - 一种选择和设置网络超级节点的方法 - Google Patents
一种选择和设置网络超级节点的方法 Download PDFInfo
- Publication number
- CN101710866A CN101710866A CN200910250017A CN200910250017A CN101710866A CN 101710866 A CN101710866 A CN 101710866A CN 200910250017 A CN200910250017 A CN 200910250017A CN 200910250017 A CN200910250017 A CN 200910250017A CN 101710866 A CN101710866 A CN 101710866A
- Authority
- CN
- China
- Prior art keywords
- node
- group
- node cluster
- bunch
- dynamic bunch
- 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.)
- Granted
Links
Images
Classifications
-
- 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/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1051—Group master selection mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1087—Peer-to-peer [P2P] networks using cross-functional networking aspects
- H04L67/1093—Some peer nodes performing special functions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种选择和设置网络超级节点的方法,操作步骤是:先按照设定周期T1,除控制节点以外的网络中的各节点定期向控制节点发送其与其他节点之间的交互信息;再按照设定周期T2,控制节点根据接收到的各节点的交互信息,把这些节点进行最优划分为多个节点簇,其中每个节点都唯一地归属于一个节点簇,并在每个节点簇中分别选取超级节点。本发明选择超级节点时,既考虑节点的自身性能和资源状况,又考虑节点与其他节点的相互交互关系。因此,所选择的超级节点对其归属的节点簇中其他节点实施控制时,能快速搜索到对应节点,缩短查找时间和通信路径、提高工效。同时,节点交互信息的采集周期、节点簇的划分和调整周期等参数,都能随网络实际交互情况而动态调整。
Description
技术领域
本发明涉及一种选择和设置网络超级节点的方法,属于网络通信技术领域。
背景技术
随着因特网技术的发展,因特网上的应用越来越多。为了满足多样化应用的需要,基于对等网络P2P(Peer to Peer)原理的网络分布技术得到了很大的应用。目前,在p2p技术的计算机网络中,除了作为用户节点的普通的网络用户计算机以外,通常还要设置控制节点和超级节点。控制节点的功能是制定和实施控制策略,并通过超级节点对网络执行控制和管理。超级节点的功能是在控制节点的管理下,对用户节点具体实施管理和控制。
超级节点一般是由资源比较丰富的用户计算机来承担的。因此,如何在众多的用户计算机中选择和设置超级节点就成为影响计算机网络功能的一项关键任务。在无线通信网络中,同样也存在着如何选择和设置超级节点的问题。
目前,针对上述问题,已经提出了一些相应的解决方案:
华为技术有限公司的专利申请:《选举超级节点、搜索网络节点或资源的方法、装置及系统》(申请号:CN200710003320.2)公开的方法是:网络中的普通节点根据普通节点成为超级节点的条件(例如:CPU的频率和内存容量、节点的网络带宽、节点的网络延迟、与本节点交互的其他节点总数目、节点在线时间、每分钟与其他节点的通信总量、预定时间内CPU平均使用率、内存平均使用率),将本节点的性能参数值与所述条件规定的阈值进行比较,并在确定本节点的性能满足成为超级节点的条件时,向与该节点通信的其他节点发送该节点为超级节点的消息。该方案主要考虑节点的性能参数,没有考虑节点与其他节点的交互关系,如果超级节点要对其他用户节点实施管理时,有可能需要较长的时间和路径才能找到对应的用户节点,使得超级节点的工作效率太低。
北京航空航天大学的专利申请:《引入节点重要性的对等网络超级节点选择和资源搜索方法》(申请号:CN200710176639.5)公开的方法是:根据节点的邻居节点数目及各自重要性分别计算网络中各节点的重要性,并根据重要性来选择超级节点。由于实际中的各个网络节点的交互关系在不断变化,对于动态网络,该方案只能按照相同的时间间隔调整节点的重要性值,并根据调整后的节点重要性值选择超级节点,如果网络变化较快(或较慢),该方案不能根据实际的网络情况缩短(或延长)节点重要性值的调整周期,从而使系统对网络变化的反应能力较低、或者大量增加了网络中的通信数据量。
北京邮电大学的专利申请:《采用小区动态划分技术的对等网络系统实现方法》(申请号:CN200610081402.4)公开了一种基于P2P网络的信息交互、共享系统的方法:对所有用户执行动态分区管理,小区由普通节点组成、由高级节点进行管理,再由超级节点管理一定数量的高级节点。小区规模(即小区中的普通节点数)是在系统初始化时设定的,并根据小区节点总数进行动态调整。该方案没有考虑网络中所有节点的交互关系,当节点之间的交互关系发生变化时,用户的分区和超级节点的选择都不能随着网络实际情况的变化而动态调整,从而限制了超级节点的工作效率,致使超级节点有可能需要经过较长的查找时间和路径,然后才能对用户节点实施管理和控制。
以上技术方案都存在的共同缺点是:没有根据网络中所有节点的实际交互情况,将网络节点划分成若干个节点簇,并从每个节点簇中选取资源较多、并且与其他节点交互较多的节点为超级节点后,再由该超级节点在控制节点的统一管理下,对其所归属的用户节点群或节点簇内的其他节点实施具体控制和管理。所谓节点簇是由交互关系紧密的多个网络节点所构成。
上述各项现有技术在超级节点对其他节点实施具体控制和管理时,通信数据量就会显著增加。而且,各个网络节点进行交互的采集周期、节点簇的划分和调整周期、超级节点的选择都不能随着网络实际情况的变化而进行动态调整。因此,如何对现有的在网络中选择和设置超级节点的技术方案进行改进,就成为业内科技人员关注的一个新课题。
发明内容
有鉴于此,本发明的目的是提供一种选择和设置超级节点的方法,该方法是由控制节点根据网络节点之间的交互情况,将网络节点划分成若干个节点簇,其中每个节点簇都是由相互交互关系紧密的网络节点所构成,控制节点再从每个节点簇中,选取资源较多并与其他节点交互较多的节点为超级节点,再由该超级节点对所属节点簇中的其他网络节点实施控制和管理。
为了达到上述目的,本发明提供了一种选择和设置超级节点的方法,其特征在于,所述方法包括下列操作步骤:
步骤1、按照设定的周期T1,除控制节点以外的网络中的每个节点定期向控制节点发送该节点与其他节点之间在设定周期内的交互信息;
步骤2、按照设定的周期T2,控制节点根据接收到的各个节点的交互信息,把这些节点进行最优划分成多个节点簇,其中每个节点都唯一地归属于一个节点簇,再在每个节点簇中选取超级节点;所述周期T2是周期T1的整数倍。
与现有技术相比,本发明的有益效果是:本发明的控制节点定期采集网络中所有网络节点的交互信息,并根据各个节点相互交互关系的紧密程度,将所有网络节点划分成若干个节点簇,并从每个节点簇中选取资源较多并与其他节点交互较多的节点作为超级节点。因此,本发明方法所选择的超级节点不仅考虑该节点的自身性能和资源状况,还考虑该节点与其他节点的相互交互关系。这样,当该超级节点需要对其归属的节点簇中的其他网络节点实施控制和管理时,就能够快速搜索到对应网络节点,从而缩短查找时间和通信路径、提高工作效率。同时,本发明方法在选择超级节点时,所牵涉到的网络节点交互信息的采集周期、节点簇的划分和调整周期等多种参数,都可以随着网络中的各个节点交互的实际情况而进行动态调整。因此,本发明方法具有很好的实时性,具有对网络变化的快速反应能力和灵活的可扩展性。
附图说明
图1是本发明方法应用的一个实施例-计算机网络结构示意图。
图2是本发明选择和设置网络超级节点的方法操作流程图。
图3是图2所示方法中,控制节点按照设定周期将节点划分为节点簇,并选取超级节点的操作流程图。
图4是本发明方法中的控制节点根据网络节点的实际交互信息,动态调整周期T2和T1的流程图。
图5是本发明方法中的控制节点根据节点簇群S01和S02在相邻时刻的节点重合情况,划分动态簇的流程图。
图6是本发明方法中的控制节点计算动态簇群D0的平均更新周期L和更新设定周期T2和T1的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图好实施例对本发明作进一步的详细描述。
参见图1,介绍应用本发明方法的一种实施例的网络结构-计算机网络结构组成示意图。该网络中的每台用户计算机都作为该网络中的一个节点,分别拥有其相应的唯一标识(ID),例如图中的U1、U2、U3、...、U16。每个节点分别通过网络连接至作为控制节点的服务器(例如Z1、Z2、Z3)上,互相连接的三个控制节点Z1、Z2、Z3根据各节点之间的交互情况,将这些节点划分成若干个节点簇,每个节点簇都是由相互交互关系紧密的节点所构成。控制节点从每个节点簇中,选取资源较多并与其他节点交互较多的节点作为超级节点,并由该超级节点对所属节点簇中的其他节点实施控制和管理。
参见图2,介绍本发明选择和设置超级节点的方法的具体操作步骤如下:
步骤1、按照设定的周期T1,除控制节点以外的网络中的每个节点定期向控制节点发送该节点与其他节点之间在设定周期内的交互信息;
例如,上述图1中的网络节点U1向控制节点定期报告在周期T1内与其他网络节点U2、U3、U4、U5发生交互关系的相关信息。
步骤2、按照设定的周期T2,控制节点根据接收到的各个节点的交互信息,把这些节点进行最优划分成多个节点簇,其中每个节点都唯一地归属于一个节点簇,再在每个节点簇中选取超级节点;所述周期T2是周期T1的整数倍。
划分节点簇的实质是把设定时间内相互交互关系紧密的网络节点划分为一个节点簇。若两个网络节点之间有交互关系,则可以认为该两个节点之间存在交互边,同一节点簇内的各个节点之间的交互边密度大于不同节点簇之间的节点之间的交互边密度。本发明的控制节点采用基于最短描述的原则来划分节点簇,即采用无损压缩方式对网络中可能产生的各种不同节点簇的划分结果分别进行编码,并选取其中编码长度最短的划分结果为最优结果。
参见图3,详细介绍本发明方法的关键-步骤2的具体操作内容:
(21)控制节点把网络中的各节点都分别独立构成各自的节点簇,形成初始的节点簇群S0。
例如,对于多个非控制节点:U1、U2、U3、U4、U5...,将U1、U2、U3、U4、U5...分别单独构成各自的节点簇,即初始的节点簇群S0可记为:{{U1},{U2},{U3},{U4},{U5}...),其中{U1},{U2}、{U3}、{U4},{U5}...分别是节点簇群S0的一个节点簇。
(22)按照下述代价值的计算公式,计算该节点簇群S0的代价值CS:式中,n是网络中的节点总数,k是节点簇群S0中的节点簇个数,log*n和log*k分别是n和k的二进制编码长度,计算公式为:X(1)=log2x,;X(j+1)=log2X(j),且X(j)>0;其中,nH(p)是每个节点所属节点簇的二进制编码长度, ni是节点簇群S0中的第i个节点簇gi内的节点数,pi是某个节点归属第i个节点簇gi的概率,|Ei|是节点簇群S0中的第i个节点簇gi中有交互关系的节点对数,其数值大小取决于实测值,log*|Ei|是|Ei|的二进制编码长度;|gi|H(gi)是第i个节点簇gi的最短描述,H(gi)=-(ρilog2ρi+(1-ρi)log2(1-ρi)),如果ni=1,则log*|Ei|+|gi|H(gi)为0。
(23)将节点簇群S0及其对应的代价值CS都存储于节点簇的划分记录中。
(24)从节点簇群S0中选择节点之间有跨簇交互的两个节点簇进行合并,形成新的节点簇群Si,再按照上述公式计算该节点簇群Si的代价值CSi。
例如,如果节点U1和U2在周期T2内有相互交互关系,则控制节点可以将节点U1和U2分别所属的节点簇{U1}和{U2}进行合并,即形成新的节点簇群Si:{{U1,U2},{U3},{U4},{U5}...)。
(25)按照把节点之间有跨簇交互的两个节点簇进行合并的挑选原则,依序遴选该节点簇群S0可能产生的所有不同的节点簇群,并分别计算其代价值,然后从中选择最小代价值所对应的节点簇群来替代节点簇群S0;如果存在有多个相同的最小代价值,则随机选取其中一个最小代价值所对应的节点簇群来替代节点簇群S0。
例如,除了可以将节点簇群S0的节点簇:{U1}和{U2}合并而产生新的节点簇群S1:{{U1,U2},{U3},{U4},{U5}...},也可以将节点簇群S0的节点簇:{U1}和{U3}合并,产生另一个新的节点簇群S2:{{U1,U3},{U2},{U4},{U5}...},然后通过代价值计算公式分别计算所有合并后所产生的各个新的节点簇群Si(如S1、S2)的代价值CSi,并对所有代价值CSi进行比较,从中选择代价值最小的CSi所对应的节点簇群Si来代替节点簇群S0。
(26)判断被该最小代价值所对应的节点簇群所代替后的节点簇群S0是否能够采用上述挑选原则,合并节点簇而生成新的节点簇群?如果是,则返回执行步骤(23),即由控制节点通过合并节点簇的方式,继续生成新的节点簇群,并从中选择代价值最小的节点簇群Si来替代步骤(25)中选定的节点簇群S0;否则,执行后续步骤(27)。
该步骤所选择的代价值最小的节点簇群Si的实质是该节点簇群Si中的同一个节点簇内的节点之间交互关系紧密,不同节点簇的节点之间交互关系很少或没有交互。
(27)将节点簇群S0及其对应的代价值CS存储于节点簇的划分记录中。
(28)控制节点从节点簇的划分记录中,找出其中最小代价值所对应的节点簇群作为最终选定的最优节点簇群,然后从该最优节点簇群的每个节点簇内分别选取各自的超级节点。超级节点的选择条件是根据每个节点簇中各节点与其他节点的交互关系和该节点的各种自身性能参数(包括:CPU的频率和内存容量、节点的传输带宽、节点的网络时延、在线时间、每分钟与其他节点的通信总量、预定时间内CPU平均使用率和内存平均使用率等),选取与其他节点交互较多(在计算某个节点与其他节点的交互次数时,要事先减去该节点与原来的超级节点的控制交互次数)、性能较好的节点为各自节点簇中的超级节点。当控制节点从节点簇的划分记录中,寻找到最小代价值所对应的最优节点簇群时,也就是标明:根据各个节点间的交互情况,对所有非控制节点进行了最优化划分。
下面再对上述步骤(22)中的代价值的计算加以举例说明如下:
例如,按照把节点之间有跨簇交互的两个节点簇进行合并的挑选原则,假设在经过多次合并后所产生的节点簇群Si为:{{U1,U2,U3,U4,U5},{U6,U7,U8}}时,n=8,k=2,n1=5,n2=3;对于该节点簇群Si中的第一个节点簇:{U1,U2,U3,U4,U5},|E1|=6,|g1|=10, 对于节点簇群Si中的第二个节点簇:{U6,U7,U8},|E2|=3,|g2|=3,ρ2=1,H(g2)=-(ρ2 log2 ρ2+(1-ρ2)log2(1-ρ2))=-log2 1=0。因此,该节点簇群Si的代价值CSi:
每个节点簇内的超级节点的个数取决于网络实际需要,通常为一个,也可以是两个或更多个。例如,对于最终选定的最优节点簇群{{U1,U2,U3,U4,U5},{U6,U7,U8},...},分别在{U1,U2,U3,U4,U5}和{U6,U7,U8}中选取U5和U6为超级节点,由超级节点U5、U6负责对所属节点簇中的其他网络节点具体实施管理和控制。
本发明方法中的两个设定周期T2和T1要根据网络中的各个节点的实际交互情况而分别进行动态调整,因为,如果周期时间设置过短,将增加网络的通信数据量;周期设置时间过长,又不能及时反映各节点的交互变化情况。因此,本发明采用与节点簇的划分方法类似,也是基于最短描述原则,将相邻时刻两个节点簇群内的节点簇进行划分而形成动态簇,再以其中二进制编码长度最短的划分结果作为最优结果,然后判断该最优划分结果中动态簇中的各个节点簇在相邻时刻的变化趋势是否呈保持状态,如果是,则说明变化较小,适当延长周期T2和T1;否则,适当缩短周期T2和T1;
参见图4,具体说明动态调整两个设定周期T2和T1的下列操作步骤:
步骤A、在两个时间相邻、即只相差一个周期T2的时刻,控制节点分别选取两个节点簇群S01和S02,其中S01是前一时刻的节点簇群,S02是后一时刻的节点簇群。
例如,在t时刻的节点簇群S01:{c11,c12...},其中c11、c12...是节点簇群S01的各节点簇,且c11为:{U1,U2,U3,U4,U5},c12为:{U6,U7,U8}。在t+T2时刻的节点簇群S02:{c21,c22,c23...},其中c21、c22、c23...是节点簇群S02的各节点簇,且c21为:{U1,U2,U5},c22为:{U3,U4},c23:{U6,U7,U8}。
步骤B、控制节点根据该两个节点簇群S01和S02在相邻时刻的节点重合情况,根据二进制编码长度最短原则,把节点簇群S01和S02中所包含的节点簇进行最优划分,从而组成多个动态簇,其中每个节点簇都唯一地归属于一个动态簇,并由上述所有动态簇构成最优动态簇群D0。
参见图5,具体介绍该步骤B所包括的下列操作内容:
(B1)控制节点把节点簇群S01和S02中的各节点簇都分别独立构成各自的动态簇,形成初始的动态簇群D0。
例如,初始的动态簇群D0可以记为:{{c11},{c12},{c21},{c22},{c23}...},其中{c11},{c12},{c21},{c22},{c23}...分别为动态簇群D0的一个动态簇。
(B2)按照下述代价值的计算公式,计算该动态簇群D0的代价值CD:式中,r和m分别是节点簇群S01和S02中所包含的节点簇个数,q是动态簇群D0中的动态簇个数,log*r、log*m与log*q分别是r、m与q的二进制编码长度,其计算公式为:X(1)=log2x,X(j+1)=log2X(j),且X(j)>0;(m+r)H(s)是每个节点簇所归属的动态簇的二进制编码长度,其中, ri是动态簇群D0中第i个动态簇bi所包含的节点簇群S01和S02的节点簇总数,si是某个节点簇归属于第i个动态簇bi的概率,E(bi)是动态簇群D0中的第i个动态簇bi在相邻时刻有节点重合的节点簇对数,log*E(bi)是E(bi)的二进制编码长度,|Vi 1|×|Vi 2|H(bi)是第i个动态簇bi的最短描述,其中,|Vi 1|是在动态簇群D0的第i个动态簇bi中,属于节点簇群S01的节点簇个数,|Vi 2|是在动态簇群D0的第i个动态簇bi中,属于节点簇群S02的节点簇个数;H(bi)=-(αi log2αi+(1-αi)log2(1-αi)),如果ri=1,则log*E(bi)+|Vi 1|×|Vi 2|H(bi)为0。
(B3)将动态簇群D0及其对应的代价值CD都存储于动态簇的划分记录中。
(B4)从动态簇群D0中任意选择彼此有相同节点的两个动态簇进行合并,形成新的动态簇群Di,再按照上述公式计算该动态簇群Di的代价值CDi。
例如,节点簇群S01的节点簇c11和节点簇群S02的节点簇c21有相同节点(如U1、U2、U5),则合并c11和c21所属的动态簇{c11}和{c21}后,所形成的新的动态簇群Di为:{{c11,c21},{c12},{c22},{c23}...}。
(B5)按照把彼此有相同节点的两个动态簇进行合并的挑选原则,依序遴选该动态簇群D0可能产生的所有新的动态簇群,并分别计算其代价值,然后从中选择最小代价值所对应的动态簇群来替代动态簇群D0,如果存在有多个相同的最小代价值,则随机选取其中一个最小代价值所对应的动态簇群替代动态簇群D0。
例如,除了可以将动态簇:{c11}和{c21}合并,产生新的动态簇群D1:{{c11,c21},{c12},{c22},{c23}...},也可以将{c12}和{c23}合并,产生新的动态簇群D2:{{c11},{c21},{c12,c23},{c22}...}。通过步骤(B2)中的代价值公式计算所有通过合并后所产生的新的动态簇群Di(D1、D2...)的代价值CDi,并比较所有这些代价值,从中选择出最小的代价值所对应的动态簇群Di代替动态簇群D0。
(B6)判断最小代价值所对应的动态簇群是否能够采用上述挑选原则,合并动态簇而生成新的动态簇群?如果是,则返回执行步骤(B3),即由控制节点通过合并动态簇的方式,继续生成新的动态簇群,并从中选择代价值最小的动态簇群Di来替代步骤(B5)中选定的动态簇群D0;如果不是,执行后续步骤(B7)。
(B7)将动态簇群D0及其对应的代价值CD都存储于动态簇的划分记录中。
(B8)控制节点从动态簇的划分记录中,找到最小代价值所对应的动态簇群作为最终选定的最优动态簇群D0,然后根据该最优动态簇群D0对所有节点在相邻时刻进行交互的动态变化趋势,判断是否对两个周期T2和T1进行更新。
下面,对上述步骤(B2)中的代价值的计算,举例说明如下:
例如,按照把彼此有相同节点的两个动态簇进行合并的挑选原则,假设在经过多次合并后所产生的动态簇群Di为:{{c11,c21,c22},{c12,c23}}时,r=2,m=3,q=2,r1=3,r2=2,
对于第一个动态簇:{c11,c21,c22},E(b1)=2,|V1 1|=1,|V1 2|=2,α1=1时,H(b1)=-log2 1=0;对于第二个动态簇:{c12,c23},E(b2)=1, α2=1时,H(b2)=-log2 1=0;则该动态簇群Di的代价值CDi为:
步骤C、控制节点计算最优动态簇群D0的平均更新周期,并更新周期T2和T1。
参见图6,介绍步骤C的具体操作内容如下:
(C10)在最终选定的最优动态簇群D0中,任意选取一个动态簇di。
例如,在最优动态簇群D0:{{c11,c21,c22},{c12,c23}...}里,其中动态簇d1为:{c11,c21,c22},动态簇d2为:{c12,c23}...。
(C20)根据该动态簇di中所包含的各个节点簇在相邻时刻的节点重叠情况,判断该动态簇di是否处于保持状态?如果是,则该动态簇di的更新周期为2×T2;如果不是,则该动态簇di的更新周期为T2。
这里判断该动态簇di是否处于保持状态的操作的具体内容如下:
(C21)计算该动态簇di中,前一时刻的节点簇与后一时刻的节点簇之间的最大重叠节点数。
例如,对于动态簇d1:{c11,c21,c22}来说,前一时刻的节点簇c11与后一时刻的节点簇c21的相同节点数为3,c11与c22的相同节点数为2,则动态簇d1中前一时刻的节点簇与后一时刻的节点簇的最大重叠节点数为3。而对于动态簇d2:{c12,c23},动态簇d2中前一时刻的节点簇与后一时刻的节点簇的最大重叠节点数为3。
(C22)计算该动态簇di中前一时刻的节点簇的最大重叠节点比B1:即最大重叠节点数除以该动态簇di中前一时刻的节点簇的节点总数所得到的商。
例如,动态簇d1中前一时刻的节点簇的节点总数为5,则B1为0.6;动态簇d2中前一时刻的节点簇的节点总数为3,则B2为1。
(C23)计算该动态簇di中后一时刻的节点簇的最大重叠节点比B2:即最大重叠节点数除以该动态簇di中后一时刻的节点簇的节点总数所得到的商;
例如,动态簇d1中后一时刻的节点簇的节点总数为5,则B2为0.6;动态簇d2中后一时刻的节点簇的节点总数为3,则B2为1。
(C24)判断B1和B2是否都大于阀值?如果是,则该动态簇di处于保持状态,其更新周期为2×T2;否则,该动态簇di不处于保持状态,即处于变化状态,其更新周期为T2。
所述阀值是根据系统需要在区间[0,1]范围内选择的某一个实数。例如当阀值为0.8时,如果动态簇d1:{c11,c21,c22}对应的B1、B2均为0.6,小于阀值,则其更新周期为T2;又如动态簇d2:{c12,c23}对应的B1、B2均为1,大于阀值,则其更新周期为2×T2。
(C30)判断是否在最优动态簇群D0中已经选择了所有动态簇di,并分别完成上述步骤操作?如果是,则执行后续步骤(C40);否则,继续在最优动态簇群D0中选择还未被选择的动态簇di,返回执行步骤(C20);
(C40)根据所有动态簇的更新周期计算该最优动态簇群D0的平均更新周期;也就是通过求解该最优动态簇群D0中的每个动态簇的更新周期,进而获取该最优动态簇群D0的平均更新周期。
例如,对于动态簇群D0:{{c11,c21,c22},{c12,c23}}来说,所述动态簇的更新周期分别为T2和2×T2,则动态簇群D0的平均更新周期为(T2+2×T2)/2=1.5×T2。
(C50)根据该最优动态簇群D0的平均更新周期L,对两个周期T1和T2的值进行调整:如果L≤2×T2,则将周期T2更新为如果L≥n×T2,其中,n≥3时,则将周期T2更新为然后,根据T2和T1之间的T2是T1的整数倍的关系,相应更新周期T1的时间。
申请人已经对本发明方法进行了多次实施仿真实验,以论证其可行性。从实验结果的数据分析来看,实施试验是成功的,本发明能够解决现有技术的不足,实现了发明目的和较好的技术效果。
Claims (10)
1.一种选择和设置网络超级节点的方法,其特征在于,所述方法包括下列操作步骤:
步骤1、按照设定的周期T1,除控制节点以外的网络中的每个节点定期向控制节点发送该节点与其他节点之间在设定周期内的交互信息;
步骤2、按照设定的周期T2,控制节点根据接收到的各个节点的交互信息,把这些节点进行最优划分为多个节点簇,其中每个节点都唯一地归属于一个节点簇,再在每个节点簇中选取超级节点;所述周期T2是周期T1的整数倍。
2.根据权利要求1所述的方法,其特征在于:所述步骤2中,控制节点是采用基于最短描述原则来划分多个节点簇,即采用无损压缩方式对网络中可能产生的各种不同节点簇的划分结果分别进行编码,并选取其中编码长度最短的划分结果为最优结果。
3.根据权利要求1所述的方法,其特征在于:所述步骤2进一步包括下列操作内容:
(21)控制节点把网络中的各节点都分别独立构成各自的节点簇,形成初始的节点簇群S0;
(22)按照下述代价值的计算公式,计算该节点簇群S0的代价值CS:式中,n是网络中的节点总数,k是节点簇群S0中的节点簇个数,log*n和log*k分别是n和k的二进制编码长度,计算公式为:X(j+1)=log2X(j),且X(j)>0;其中,nH(p)是每个节点所属节点簇的二进制编码长度, ni是节点簇群S0中的第i个节点簇gi内的节点数,pi是某个节点归属第i个节点簇gi的概率,|Ei|是节点簇群S0中的第i个节点簇gi中有交互关系的节点对数,其数值大小取决于实测值,log*|Ei|是|Ei|的二进制编码长度;|gi|H(gi)是第i个节点簇gi的最短描述,H(gi)=-(ρilog2ρi+(1-ρi)log2(1-ρi)),如果ni=1,则log*|Ei|+|gi|H(gi)为0;
(23)将节点簇群S0及其对应的代价值CS都存储于节点簇的划分记录中;
(24)从节点簇群S0中选择节点之间有跨簇交互的两个节点簇进行合并,形成新的节点簇群Si,再按照上述公式计算该节点簇群Si的代价值CSi;
(25)按照把节点之间有跨簇交互的两个节点簇进行合并的挑选原则,依序遴选该节点簇群S0可能产生的所有不同的节点簇群,并分别计算其代价值,然后从中选择最小代价值所对应的节点簇群来替代节点簇群S0;如果存在有多个相同的最小代价值,则随机选取其中一个最小代价值所对应的节点簇群来替代节点簇群S0;
(26)判断被该最小代价值所对应的节点簇群所代替后的节点簇群S0是否能够采用上述挑选原则,合并节点簇而生成新的节点簇群?如果是,则返回执行步骤(23),即由控制节点通过合并节点簇的方式,继续生成新的节点簇群,并从中选择代价值最小的节点簇群Si来替代步骤(25)中选定的节点簇群S0;否则,执行后续步骤(27);
(27)将节点簇群S0及其对应的代价值CS存储于节点簇的划分记录中;
(28)控制节点从节点簇的划分记录中,找出其中最小代价值所对应的节点簇群作为最终选定的最优节点簇群,然后从该最优节点簇群的每个节点簇内分别选取各自的超级节点;选择条件是根据每个节点簇中各节点与其他节点的交互关系和该节点的自身性能参数,选取与其他节点交互较多、性能较好的节点为各自节点簇中的超级节点。
4.根据权利要求3所述的方法,其特征在于:所述步骤(26)中,所选择的代价值最小的节点簇群Si的实质是该节点簇群Si中的同一个节点簇内的节点之间交互关系紧密,不同节点簇的节点之间交互关系很少或没有交互;所述步骤(28)中,当控制节点从节点簇的划分记录中,寻找到最小代价值所对应的最优节点簇群时,也就是标明:根据各个节点间的交互情况,对所有非控制节点进行了最优化划分。
5.根据权利要求3所述的方法,其特征在于:所述步骤(28)中,所述节点的自身性能参数包括:CPU的频率和内存容量、传输带宽、时延、在线时间、每分钟与其他节点的通信数据总量、设定时间内的CPU平均使用率和内存平均使用率;在计算某个节点与其他节点的交互次数时,要减去该节点与原来的超级节点的控制交互次数。
6.根据权利要求1所述的方法,其特征在于:所述两个设定周期T2和T1的时长是根据网络中的各节点的实际交互情况而分别进行动态调整,以防止周期时间设置过短,增加网络的通信数据量;周期时间设置过长,不能及时反映各节点的交互变化情况。
7.根据权利要求6所述的方法,其特征在于:所述两个设定周期T2和T1的动态调整方法是:基于最短描述原则,将相邻时刻两个节点簇群内的节点簇进行划分而形成动态簇,再以其中二进制编码长度最短的划分结果作为最优结果,然后判断该最优划分结果中动态簇中的各个节点簇在相邻时刻的变化趋势是否呈保持状态,如果是,则说明变化较小,适当延长周期T2和T1;否则,适当缩短周期T2和T1;
所述两个设定周期T2和T1的动态调整包括下列具体操作步骤:
步骤A、在两个时间相邻、即只相差一个周期T2的时刻,控制节点分别选取两个节点簇群S01和S02,其中S01是前一时刻的节点簇群,S02是后一时刻的节点簇群;
步骤B、控制节点根据该两个节点簇群S01和S02在相邻时刻的节点重合情况,根据二进制编码长度最短原则,把节点簇群S01和S02中所包含的节点簇进行最优划分,从而组成多个动态簇,其中每个节点簇都唯一地归属于一个动态簇,并由上述所有动态簇构成最优动态簇群D0;
步骤C、控制节点计算最优动态簇群D0的平均更新周期,并更新周期T2和T1。
8.根据权利要求7所述的方法,其特征在于:所述步骤B进一步包括下列操作内容:
(B1)控制节点把节点簇群S01和S02中的各节点簇都分别独立构成各自的动态簇,形成初始的动态簇群D0;
(B2)按照下述代价值的计算公式,计算该动态簇群D0的代价值CD:式中,r和m分别是节点簇群S01和S02中所包含的节点簇个数,q是动态簇群D0中的动态簇个数,log*r、log*m与log*q分别是r、m与q的二进制编码长度,其计算公式为:X(1)=log2x,X(j+1)=log2X(j),且X(j)>0;(m+r)H(s)是每个节点簇所归属的动态簇的二进制编码长度,其中, ri是动态簇群D0中第i个动态簇bi所包含的节点簇群S01和S02的节点簇总数,si是某个节点簇归属于第i个动态簇bi的概率,E(bi)是动态簇群D0中的第i个动态簇bi在相邻时刻有节点重合的节点簇对数,log*E(bi)是E(bi)的二进制编码长度,|Vi 1|×|Vi 2|H(bi)是第i个动态簇bi的最短描述,其中,|Vi 1|是在动态簇群D0的第i个动态簇bi中,属于节点簇群S01的节点簇个数,|Vi 2|是在动态簇群D0的第i个动态簇bi中,属于节点簇群S02的节点簇个数;H(bi)=-(αi log2αi+(1-αi)log2(1-αi)),如果ri=1,则log*E(bi)+|Vi 1|×|Vi 2|H(bi)为0;
(B3)将动态簇群D0及其对应的代价值CD都存储于动态簇的划分记录中;
(B4)从动态簇群D0中任意选择彼此有相同节点的两个动态簇进行合并,形成新的动态簇群Di,再按照上述公式计算该动态簇群Di的代价值CDi;
(B5)按照把彼此有相同节点的两个动态簇进行合并的挑选原则,依序遴选该动态簇群D0可能产生的所有新的动态簇群,并分别计算其代价值,然后从中选择最小代价值所对应的动态簇群来替代动态簇群D0;如果存在有多个相同的最小代价值,则随机选取其中一个最小代价值所对应的动态簇群替代动态簇群D0;
(B6)判断最小代价值所对应的动态簇群是否能够采用上述挑选原则,合并动态簇而生成新的动态簇群?如果是,则返回执行步骤(B3),即由控制节点通过合并动态簇的方式,继续生成新的动态簇群,并从中选择代价值最小的动态簇群Di来替代步骤(B5)中选定的动态簇群D0;如果不是,执行后续步骤(B7);
(B7)将动态簇群D0及其对应的代价值CD都存储于动态簇的划分记录中;
(B8)控制节点从动态簇的划分记录中,找到最小代价值所对应的动态簇群作为最终选定的最优动态簇群D0,然后根据该最优动态簇群D0对所有节点在相邻时刻进行交互的动态变化趋势,判断是否对两个周期T2和T1进行更新。
9.根据权利要求7所述的方法,其特征在于:所述步骤C进一步包括下列操作内容:
(C1)在最终选定的最优动态簇群D0中,任意选取一个动态簇di;
(C2)根据该动态簇di中所包含的各个节点簇在相邻时刻的节点重叠情况,判断该动态簇di是否处于保持状态?如果是,则该动态簇di的更新周期为2×T2;如果不是,则该动态簇di的更新周期为T2;
(C3)判断是否在最优动态簇群D0中已经选择了所有动态簇di,并分别完成上述步骤操作?如果是,则执行后续步骤(C4);否则,继续在最优动态簇群D0中选择还未被选择的动态簇di,返回执行步骤(C2);
(C4)根据所有动态簇的更新周期计算该最优动态簇群D0的平均更新周期;也就是通过求解该最优动态簇群D0中的每个动态簇的更新周期,进而获取该最优动态簇群D0的平均更新周期;
10.根据权利要求9所述的方法,其特征在于:所述步骤(C2)中,判断动态簇di是否处于保持状态的操作包括下列具体内容:
(C21)计算该动态簇di中,前一时刻的节点簇与后一时刻的节点簇之间的最大重叠节点数;
(C22)计算该动态簇di中前一时刻的节点簇的最大重叠节点比B1:即最大重叠节点数除以该动态簇di中前一时刻的节点簇的节点总数所得到的商;
(C23)计算该动态簇di中后一时刻的节点簇的最大重叠节点比B2:即最大重叠节点数除以该动态簇di中后一时刻的节点簇的节点总数所得到的商;
(C24)判断B1和B2是否都大于阀值?如果是,则该动态簇di处于保持状态,其更新周期为2×T2;否则,该动态簇di不处于保持状态,即处于变化状态,其更新周期为T2;所述阀值是根据系统需要在区间[0,1]范围内选择的一个实数。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102500171A CN101710866B (zh) | 2009-12-01 | 2009-12-01 | 一种选择和设置网络超级节点的方法 |
US12/730,866 US8301736B2 (en) | 2009-12-01 | 2010-03-24 | Method for selecting and configuring network supernodes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102500171A CN101710866B (zh) | 2009-12-01 | 2009-12-01 | 一种选择和设置网络超级节点的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101710866A true CN101710866A (zh) | 2010-05-19 |
CN101710866B CN101710866B (zh) | 2011-11-02 |
Family
ID=42403627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102500171A Expired - Fee Related CN101710866B (zh) | 2009-12-01 | 2009-12-01 | 一种选择和设置网络超级节点的方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8301736B2 (zh) |
CN (1) | CN101710866B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102307238A (zh) * | 2011-09-15 | 2012-01-04 | 西安电子科技大学 | Hp2p网络中群的分裂与合并方法 |
CN103544191A (zh) * | 2012-07-17 | 2014-01-29 | 人人游戏网络科技发展(上海)有限公司 | 一种用于读取缓存数据的方法和设备 |
CN103905544A (zh) * | 2014-03-25 | 2014-07-02 | 华为技术有限公司 | 一种集群存储系统及集群存储系统中的节点分配方法 |
CN104541247A (zh) * | 2012-08-07 | 2015-04-22 | 超威半导体公司 | 用于调整云计算系统的系统和方法 |
CN106951185A (zh) * | 2017-03-01 | 2017-07-14 | 武汉爱宁智慧科技有限公司 | 一种基于区块链技术的健康检测数据管理系统及方法 |
CN109450800A (zh) * | 2018-12-17 | 2019-03-08 | 西安空间无线电技术研究所 | 一种动态调整星簇自组网路由交互周期的方法及系统 |
CN114338341A (zh) * | 2022-03-14 | 2022-04-12 | 北京天维信通科技有限公司 | 一种分配管理节点的方法及系统 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110261692A1 (en) * | 2010-04-21 | 2011-10-27 | Josep Maria Pujol Serra | Method for balancing loads in mobile wireless ad-hoc networks |
US8892632B2 (en) * | 2010-06-04 | 2014-11-18 | Microsoft Corporation | Client-server interaction frequency control |
US9432452B2 (en) * | 2012-09-10 | 2016-08-30 | Joosy, Inc. | Systems and methods for dynamic networked peer-to-peer content distribution |
CN104932659B (zh) * | 2015-07-15 | 2020-01-07 | 京东方科技集团股份有限公司 | 图像显示方法及显示系统 |
JP6581529B2 (ja) * | 2016-03-11 | 2019-09-25 | 株式会社Nttドコモ | 管理装置 |
CN107222539B (zh) * | 2017-06-05 | 2020-03-13 | 西安交通大学 | 一种基于节点竞争时延代价模型的缓存部署方法 |
US11159614B2 (en) * | 2019-01-23 | 2021-10-26 | Samsung Electronics Co., Ltd. | Method and apparatus for managing data in a network based on swarm intelligence |
CN112087328B (zh) * | 2020-08-27 | 2022-07-29 | 西安理工大学 | 基于最优节点选择策略的复杂时滞网络同步与辨识方法 |
CN116016199B (zh) * | 2023-02-21 | 2023-06-09 | 山东海量信息技术研究院 | 一种信息控制方法、系统、电子设备及可读存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5983224A (en) * | 1997-10-31 | 1999-11-09 | Hitachi America, Ltd. | Method and apparatus for reducing the computational requirements of K-means data clustering |
US6980537B1 (en) * | 1999-11-12 | 2005-12-27 | Itt Manufacturing Enterprises, Inc. | Method and apparatus for communication network cluster formation and transmission of node link status messages with reduced protocol overhead traffic |
US7370101B1 (en) * | 2003-12-19 | 2008-05-06 | Sun Microsystems, Inc. | Automated testing of cluster data services |
WO2006069067A2 (en) * | 2004-12-20 | 2006-06-29 | Sensicast Systems | Method for reporting and accumulating data in a wireless communication network |
CN1845524A (zh) * | 2006-05-18 | 2006-10-11 | 北京邮电大学 | 采用小区动态划分技术的对等网络系统实现方法 |
KR100785794B1 (ko) * | 2006-09-18 | 2007-12-13 | 한국전자통신연구원 | 위치 인식을 위한 노드, 이를 이용한 클러스터 형성 방법및 위치 인식 방법 |
CN100496006C (zh) * | 2007-02-02 | 2009-06-03 | 华为技术有限公司 | 选举超级节点、搜索网络节点或资源的方法、装置及系统 |
CN100574219C (zh) * | 2007-10-31 | 2009-12-23 | 北京航空航天大学 | 引入节点重要性的对等网络超级节点选择和资源搜索方法 |
US8983365B2 (en) * | 2007-12-21 | 2015-03-17 | Ibiquity Digital Corporation | Systems and methods for communicating and rendering electronic program guide information via digital radio broadcast transmission |
JP5216347B2 (ja) * | 2008-02-04 | 2013-06-19 | 株式会社ニューフレアテクノロジー | 描画装置及び描画データの変換方法 |
-
2009
- 2009-12-01 CN CN2009102500171A patent/CN101710866B/zh not_active Expired - Fee Related
-
2010
- 2010-03-24 US US12/730,866 patent/US8301736B2/en not_active Expired - Fee Related
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102307238A (zh) * | 2011-09-15 | 2012-01-04 | 西安电子科技大学 | Hp2p网络中群的分裂与合并方法 |
CN102307238B (zh) * | 2011-09-15 | 2014-09-17 | 西安电子科技大学 | Hp2p网络中群的分裂与合并方法 |
CN103544191A (zh) * | 2012-07-17 | 2014-01-29 | 人人游戏网络科技发展(上海)有限公司 | 一种用于读取缓存数据的方法和设备 |
CN104541247A (zh) * | 2012-08-07 | 2015-04-22 | 超威半导体公司 | 用于调整云计算系统的系统和方法 |
CN103905544A (zh) * | 2014-03-25 | 2014-07-02 | 华为技术有限公司 | 一种集群存储系统及集群存储系统中的节点分配方法 |
CN106951185A (zh) * | 2017-03-01 | 2017-07-14 | 武汉爱宁智慧科技有限公司 | 一种基于区块链技术的健康检测数据管理系统及方法 |
CN106951185B (zh) * | 2017-03-01 | 2019-12-06 | 武汉爱宁智慧科技有限公司 | 一种基于区块链技术的健康检测数据管理系统及方法 |
CN109450800A (zh) * | 2018-12-17 | 2019-03-08 | 西安空间无线电技术研究所 | 一种动态调整星簇自组网路由交互周期的方法及系统 |
CN109450800B (zh) * | 2018-12-17 | 2021-12-07 | 西安空间无线电技术研究所 | 一种动态调整星簇自组网路由交互周期的方法及系统 |
CN114338341A (zh) * | 2022-03-14 | 2022-04-12 | 北京天维信通科技有限公司 | 一种分配管理节点的方法及系统 |
CN114338341B (zh) * | 2022-03-14 | 2022-05-31 | 北京天维信通科技有限公司 | 一种分配管理节点的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20110128889A1 (en) | 2011-06-02 |
US8301736B2 (en) | 2012-10-30 |
CN101710866B (zh) | 2011-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101710866B (zh) | 一种选择和设置网络超级节点的方法 | |
CN108173698B (zh) | 网络服务管理方法、装置、服务器及存储介质 | |
Ying et al. | Distributed operator placement and data caching in large-scale sensor networks | |
CN102594902A (zh) | 一种基于节点性能的BitTorrent节点选择方法 | |
Pääkkönen et al. | Device-to-device data storage with regenerating codes | |
CN113328953B (zh) | 网络拥塞调整的方法、装置和存储介质 | |
CN117390854A (zh) | 一种车辆数字孪生实例模拟运行系统及方法 | |
CN115801896A (zh) | 算力网络节点分配方法、装置、电子设备及存储介质 | |
CN103179045B (zh) | 支持p2p流量优化的资源节点选择方法 | |
CN102946443B (zh) | 一种实现大规模数据传输的多任务调度方法 | |
CN116663639B (zh) | 一种梯度数据同步方法、系统、装置及介质 | |
CN105430538A (zh) | 一种基于光网络子拓扑图的域间路由方法 | |
CN110069565A (zh) | 一种分布式数据库数据批量处理的方法及装置 | |
WO2024092992A1 (zh) | Qkd光网络中时隙感知的共享路径保护方法及系统 | |
CN109474696B (zh) | 一种网络服务方法、装置、电子设备及可读存储介质 | |
CN109038543B (zh) | 一种基于cpu+gpu混合异构的状态估计计算方法 | |
CN109391684B (zh) | 一种关联相关链的区块链记账节点选择方法及系统 | |
CN111680996B (zh) | 基于区块链的生活缴费数据处理方法、装置及系统 | |
CN116132380A (zh) | 资源分配方法、非易失性存储介质及电子设备 | |
CN110601897A (zh) | 一种网络资源配置方法及装置 | |
Cui et al. | Resource-Efficient DNN Training and Inference for Heterogeneous Edge Intelligence in 6G | |
CN106293883B (zh) | 基于混合扩展方式的云端虚拟机的优化配置方法及其系统 | |
CN115225989A (zh) | 弹性光网络中路由与资源分配方法及装置 | |
CN111404936B (zh) | 文件转发系统及方法 | |
Li et al. | Joint resource allocation for software-defined serverless service-centric networking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111102 Termination date: 20141201 |
|
EXPY | Termination of patent right or utility model |