当前位置: 首页 > 专利查询>山东大学专利>正文

一种基于抽样的动态分布式系统的共识方法技术方案

技术编号:22333808 阅读:45 留言:0更新日期:2019-10-19 12:58
本发明专利技术属于分布式网络技术领域,具体涉及一种基于抽样的动态分布式系统的共识方法。所述方法用于分布式动态网络,在存在拜占庭节点的情况下,通过随机游走抽样,使整个网络中的任意一个节点能够均匀收集其他节点的信息,实现节点之间的通信,进而使整个网络中所有正确的节点统一任务,加快通信。

A consensus method of dynamic distributed system based on sampling

【技术实现步骤摘要】
一种基于抽样的动态分布式系统的共识方法
本专利技术属于分布式网络
,具体涉及一种基于抽样的动态分布式系统的共识方法,该方法是分布式中最基础的一个研究方向。
技术介绍
随着移动通信设备的普及以及物联网的快速发展,动态网络已经渗透到人们日常生活的方方面面。由于集中式系统是需要中央处理器来控制整个网络,但是当中央处理器发生故障时,会导致整个网络的瘫痪。于是现在的技术很多都考虑分布式系统,分布式系统是由分布在不同地点的处理器互连而成,整个网络中没有中央处理器。每个处理器在进行自己的任务,网络通过各个处理器之间的连线来通信。对于分布式系统,处理器只需要通过局部协调和局部通信的方式来为分布式网络计算提供解决方案。与传统网络相比,在动态网络中进行高效计算面临着前所未有的挑战。首先,网络处于不停的变动过程中,无法期待网络停止变动的一刻。网络动态性对于网络运行造成的影响成为常态,此前有容错功能的自适应性机制不适用于动态网络地运行。其次,随着网络规模的增大,节点之间的信息交换变得更加频繁。网络中资源,如带宽等,成为稀缺资源。在有限的资源下,对于时间和通信成本的控制变得更为严格,这从根本上否定了在每次网络变动后运行静态算法的可能性,而应该设计能自我调适、适应动态变化的低复杂度算法。最后,在动态网络中,节点往往只能获取到局部范围内的信息,在不断变动的网络拓扑中很难获取到全局性信息,使得依赖于全网信息进行协调和计算的集中式算法设计变得极为困难。依赖于局部协调和局部通信的分布式算法可以为动态网络计算提供完美的解决方案。首先,分布式算法具有天然地与生俱来的容错性。在分布式算法中,节点通过与邻居节点的实时通信来决定自己的操作并实现彼此之间的协调,而局部网络的错误只会影响局部范围内的节点运行,网络的其他部分受到的影响可以忽略,避免了网络错误影响扩散的范围。其次,分布式算法中,节点之间并行通信,最大程度利用了网络通信频谱的空间复用,实现网络运行的并行化,从而极大降低时间和通信成本。最后,分布式算法的运行往往只需要节点了解周围邻域内的网络信息,其无需全局性网络信息的特点适合于快速变化的动态网络运行。因此,随着动态网络的常态化,亟待研究和建立适合于动态网络运行的鲁棒性、高效性、安全性兼具的分布式算法理论体系。共识问题是分布式中的一个基础问题,旨在解决分布式一致性问题,即一个分布式系统中的各个进程如何就某个值(决议)达成一致。现有技术主要是在静态无线网络中实现拜占庭共识。也有在动态网络中考虑拜占庭共识的,但是现有技术考虑的是d-正则图,即无线网络中每个处理器连接其他处理器的个数是一样的,譬如经过对现有技术的文献检索发现,JohnAugustine等人对动态网络的共识问题进行了研究,提出了基于正则的动态网络的共识策略,但是该策略仅能应用于网络中节点度一致的情况下。
技术实现思路
针对上述技术问题,本专利技术提供一种基于抽样的动态分布式系统的共识方法,所述方法在分布式动态网络的基础上考虑拜占庭共识,并且以容错的均匀抽样为基础算法,考虑了无线网络中每个节点连接的其他节点的个数不等情况下的拜占庭共识。本专利技术所述方法通过变形的随机游走抽样方法,使得一个节点可以均匀的收集到别的节点的信息,可以考虑当网络中节点连接其他节点个数不同情况下的共识,实现了通过局部信息的交流来实现动态的共识方法,加快了通信的进程,通过O(log2n)轮即可均匀收集到网络中的信息。本专利技术是通过以下技术方案实现的:一种基于抽样的动态分布式系统的共识方法,所述方法用于分布式动态网络,在存在拜占庭节点的情况下,通过随机游走抽样,使整个网络中的任意一个节点能够均匀收集其他节点的信息,实现节点之间的通信,进而使整个网络中所有正确的节点统一任务,加快通信。进一步地,通过随机游走来收集其他节点的信息,具体采用Metropolis–Hastings随机游走抽样方法,包括:(1)初始化整个网络:给网络中每个节点u发送hlogn个起始令牌,将所述起始令牌放在先进先出FIFO缓冲器中;每个所述起始令牌包括节点的id,length和value;id指的是节点的id地址,length指的是节点随机游走的长度,value指的是节点所拥有的任务值;所述任务值为1或0;任务值为1表示节点进行编码,任务值为0表示节点不进行编码;(2)对所述先进先出FIFO缓冲器中的每个起始令牌随机的选择一个邻居节点v,随机生成一个概率p∈[0,1];若d(u)表示节点u的度,即节点u连接的邻居节点的个数;d(v)表示的节点v的度,即节点v连接的邻居节点的个数;则将对应的起始令牌由节点u发送给节点v,且对应的初始令牌中length减小1;否则执行步骤(3);(3)起始令牌继续留在节点u,并将该初始令牌加入到所述先进先出FIFO缓冲器的底部;(4)继续执行算法(2)-(3),直到起始令牌中length为0。进一步地,网络中节点通过随机游走收集到其他节点的信息之后,每个节点统计收集到的任务值value,将收集到的最多的任务值更新为这个节点新的任务值;重复Metropolis–Hastings随机游走抽样的过程,不断更新节点收到的新的任务值,直到网络中节点任务值为0和任务值为1的节点个数相差达到某个阈值,此阈值一般为接近1的一个值,表明网络中很大一部分节点已经认可0或1为其任务值;时,认为网络中所有正确节点都同意一个相同的任务值,即执行相同任务,实现共识。进一步地,网络节点实现共识的过程具体为:(1)对于网络中的每一个节点u,初始化节点状态列表buffer[u]:节点状态列表buffer[u]的初始化状态包含hlogn个令牌token;每个令牌token包括节点的id地址、节点执行随机游走的长度length和节点所拥有的任务值value;其中,length=O(logn),且每个节点初始的任务值value为节点的当前任务值;节点v是节点u的邻居节点,d(v)表示的节点v的度,即节点v连接的邻居节点的个数;(2)发送信息阶段(2.1)定义令牌数tokencount=hlogn;(2.2)判断tokencount>0&buffer是否为空;若tokencount>0且buffer不空,执行(2.3);否则执行(3.1);(2.3)均匀随机的选择一个邻居节点v;(2.4)确定邻居节点v的度d(v);(2.5)随机生成一个属于[0,1]的数值p;(2.6)若则将节点u的buffer中最上面的token发送给节点v,并执行(2.8),否则执行(2.7);(2.7)将节点u的buffer中最上面的token放在buffer底部;(2.8)tokencount数目减少1,并回到(2.2);(3)接收信息阶段(3.1)更新buffer;(3.2)计算每一个节点新的任务值val=max{|0|,|1|};max{|0|,|1|}表示value取0和1中出现次数多的那个值;(3.3)计算diff=|val(0)-val(1)|;val(0)表示支持0的节点个数,val(1)表示支持1的节点个数;(3.4)判断diff>1-1/n;若成立;结束,否则继续执行步骤(2.1)。进一步地,在网络节点实现共识的过程中,认为产生错误行为本文档来自技高网
...

【技术保护点】
1.一种基于抽样的动态分布式系统的共识方法,其特征在于,所述方法用于分布式动态网络,在存在拜占庭节点的情况下,通过随机游走抽样,使整个网络中的任意一个节点能够均匀收集其他节点的信息,实现节点之间的通信,进而使整个网络中所有正确的节点统一任务,加快通信。

【技术特征摘要】
1.一种基于抽样的动态分布式系统的共识方法,其特征在于,所述方法用于分布式动态网络,在存在拜占庭节点的情况下,通过随机游走抽样,使整个网络中的任意一个节点能够均匀收集其他节点的信息,实现节点之间的通信,进而使整个网络中所有正确的节点统一任务,加快通信。2.根据权利要求1所述一种基于抽样的动态分布式系统的共识方法,其特征在于,通过随机游走来收集其他节点的信息,具体采用Metropolis–Hastings随机游走抽样方法,包括:(1)初始化整个网络:给网络中每个节点u发送hlogn个起始令牌,将所述起始令牌放在先进先出FIFO缓冲器中;每个所述起始令牌包括节点的id,length和value;id指的是节点的id地址,length指的是节点随机游走的长度,value指的是节点所拥有的任务值;所述任务值为1或0;任务值为1表示节点进行编码,任务值为0表示节点不进行编码;(2)对所述先进先出FIFO缓冲器中的每个起始令牌随机的选择一个邻居节点v,随机生成一个概率p∈[0,1];若d(u)表示节点u的度,即节点u连接的邻居节点的个数;d(v)表示的节点v的度,即节点v连接的邻居节点的个数;则将对应的起始令牌由节点u发送给节点v,且对应的初始令牌中length减小1;否则执行步骤(3);(3)起始令牌继续留在节点u,并将该初始令牌加入到所述先进先出FIFO缓冲器的底部;(4)继续执行算法(2)-(3),直到起始令牌中length为0。3.根据权利要求2所述一种基于抽样的动态分布式系统的共识方法,其特征在于,网络中节点通过随机游走收集到其他节点的信息之后,每个节点统计收集到的任务值value,将收集到的最多的任务值更新为这个节点新的任务值;重复Metropolis–Hastings随机游走抽样的过程,不断更新节点收到的新的任务值,直到网络中节点任务值为0和任务值为1的节点个数相差达到某个阈值时,认为网络中所有正确节点都同意一个相同的任务值,即执行相同任务,实现共识。4.根据权利要求3所述一种基于抽样的动态分布式系统的共识方法,其特征在于,网络节点实现共识的过程具体为:(1)对于网络中的每...

【专利技术属性】
技术研发人员:于东晓李峰袁媛
申请(专利权)人:山东大学
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1