CN111597168A - 一种基于诚信值的区块链容量回收方案 - Google Patents

一种基于诚信值的区块链容量回收方案 Download PDF

Info

Publication number
CN111597168A
CN111597168A CN202010432533.2A CN202010432533A CN111597168A CN 111597168 A CN111597168 A CN 111597168A CN 202010432533 A CN202010432533 A CN 202010432533A CN 111597168 A CN111597168 A CN 111597168A
Authority
CN
China
Prior art keywords
node
block
information
data
integrity
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.)
Pending
Application number
CN202010432533.2A
Other languages
English (en)
Inventor
陈莉萍
崔毅东
杨谈
雷友珣
漆涛
朱燕宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202010432533.2A priority Critical patent/CN111597168A/zh
Publication of CN111597168A publication Critical patent/CN111597168A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于诚信值的区块链容量回收方案,该方案有三个要点:为区块添加最大信息有效周期属性,以此作为判断区块信息是否可删除、计算区块信息副本数量的依据;统计节点在生成区块过程中的投票行为,以此为依据预测诚信节点,并通过算法决策可删除区块信息的存储地址;以及节点在回收区块链占用的磁盘空间后,对用户透明的查询区块信息操作。本发明可以作为目前区块链系统对计算机容量要求高、可扩展性低的解决方案。本发明能够在保证区块链存储的区块信息可追溯、可验证的前提下科学有效地减少区块链占用的节点磁盘空间。

Description

一种基于诚信值的区块链容量回收方案
技术领域
本发明涉及一种区块链系统回收占用节点磁盘空间的工作方法,属于一种涉及区块链技术、分布式技术、一致性哈希算法、遗传算法、蚁群算法等技术领域领域的区块链容量方案。
背景技术
区块链技术起初因其去中心化和信息难以篡改的特性引起了金融行业的关注,但仅被应用于数字货币领域。直到Ethereum和Hyberledger的出现为区块链技术与各领域的结合提供了可行的解决方案,供应链、智能医疗、物联网等各领域研究人员均对与区块链技术的结合展开探索性研究与尝试,但区块链的性能问题始终是各领域Dapp(DecentralizedApplication,去中心化应用)落地的阻碍之一。区块链技术对计算机存储容量的高要求限制了其应用范围:截至2019年6月,比特币核心网已生成579276块,占存储空间超过216GB,并以每年52GB的规模线性增长。区块链对计算机存储空间的需求与吞吐量成正比,本文以Visa网络每秒最高处理量计算区块链吞吐量增加对存储空间的要求:比特币的平均交易处理量为每秒7个事务,而Visa网络平均处理量为每秒2.4万个事务,若Visa的交易信息存储在区块链中,则预计每年将增长174.1T存储量,在可预见的未来,它的存储空间需求将超出用户的承受能力。
目前,国内外关于区块链的容量优化的研究较少。首先说明区块的结构。区块分为区块头和区块体两部分,区块头用于标识区块和维持区块链的链式结构;区块体包含交易的详细信息。为了解决区块链对计算机容量的压力,比特币为此提出“轻节点“的概念,即部分用户仅保存区块头部以节省自身存储空间,需要数据时向“全节点”请求查询,此方案的缺点是并未解决全节点处对区块链容量的高要求。有些文献中提出利用本地存储交易详细信息,将交易详细信息的哈希值存入区块链以减少区块链的存储空间。当查询交易详情信息时向对应存储节点发起查询请求,并根据区块链中存储的哈希值进行信息验证,但此方案交易信息由单节点存储,降低了信息存储的安全性。
为了更加科学合理地解决区块链对计算机的高容量要求,本方案的设计思想是,完整地设计一套区块链容量回收策略,即区块链系统在用户发起容量回收请求时能分析信息的有效性,自主决策存储信息的副本数量和存储地址并清理过期数据,从而降低系统整体的磁盘占用率,并要求节点本地删除过期数据后仍能从存储信息副本的节点处获取并验证信息。可能使用到的技术包括但不限于:分布式存储、一致性哈希算法、遗传算法、蚁群算法等。
发明内容
有鉴于此,本发明的目的是设计一种能够提供一种科学有效地减少区块链系统占用节点磁盘空间的容量回收方案。本方案为区块和交易添加了信息有效周期属性,能够与时间戳属性结合,科学地选择可以清除的区块信息。本方案能够统计节点投票行为,计算节点诚信值作为预测诚信节点的依据,收集节点磁盘占用率、网络带宽使用率、计算机计算能力,结合诚信节点预测结果作为区块信息副本存储地址决策算法的输入参数,该算法可为待清除区块选择存储副本的节点群,未被选择的节点即可删除区块。本发明实现了在维持区块链信息可追溯、可验证的前提下有效减少区块链系统占用的节点磁盘空间。
为了达到上述目的,本发明提供了一种基于诚信值的区块链容量回收方案,其特征在于:所述方案包括下列功能模块:回收区块链占用节点磁盘空间功能模块和查询区块信息功能模块;其中:
回收区块链占用节点磁盘空间功能模块涉及到的执行模块有:数据收集模块、数据存取模块、数据分析模块、系统执行模块和数据库。首先由数据收集模块收集区块链网络中各节点的诚信值和性能数据,并将数据存储在数据库中;系统执行模块响应用户发起的回收磁盘空间请求后,经数据存取模块获取存储在数据库中的节点诚信值和性能数据,由数据分析模块判断可清除的区块信息并为区块决策区块信息副本数量和存储地址,最后由系统执行模块根据决策执行删除区块信息的命令;
查询区块信息功能模块设计到的执行模块有:数据存取模块、系统执行模块和数据库。首先由系统执行模块响应用户的查询区块信息请求,经数据存取模块查询数据库中的区块信息或区块存储地址信息。
针对现有区块链平台中对区块链容量优化/回收方案的缺陷与不足,本发明基于诚信值的区块链容量回收方案进行了有针对性的改进。本发明基于诚信值的区块链容量回收方案结合现有方案中的优点,为区块添加了最大信息有效周期属性,科学地选择能够清除的区块和计算区块信息的副本数量;本方案能够统计在一定周期内节点在生成区块过程中的投票行为,以此为依据预测节点是否为诚信节点,结合节点性能数据为区块信息决策存储地址。
本发明基于诚信值的区块链容量回收方案的创新优点和功效是:
(一)科学判断:本发明基于诚信值的区块链容量回收方案为交易和区块添加了信息有效周期属性,结合时间戳属性和数学计算,可在遍历区块时科学地判断每个区块信息是否仍有存储价值。
(二)准确预测:本发明基于诚信值的区块链容量回收方案在一定周期内统计节点在生成区块过程中的投票行为信息,作为预测算法或数据计算的输入参数,预测节点是否为诚信节点,为区块信息副本存储地址的选择提供依据。
(三)智能决策:本发明基于诚信值的区块链容量回收方案收集节点诚信值、节点磁盘占用率、计算机CPU使用率、网络带宽占用率等数据作为区块信息副本存储地址决策算法的输入参数,兼顾了节点性能和节点的可信性;并以区块的信息有效周期为依据计算可清除区块信息的副本数量,科学、智能地为可清除的区块信息决策副本数量和存储地址。
(四)对用户透明:本发明基于诚信值的区块链容量回收方案用户查询区块信息操作对用户透明,即用户所使用的的节点在回收了区块链占用的磁盘空间后,发起查询区块信息时仍能从存储区块副本的节点处通过远过程调用命令获取本地删除的区块信息并验证,且查询时延在用户可接受范围内。
总之,本发明基于诚信值的区块链容量回收方案具有很好的推广应用前景。
附图说明
图1是本发明方案所依附区块链系统部署的整体组成结构。
图2是本发明基于诚信值的区块链容量回收方案各执行模块的结构组成示意图。
图3是本发明基于诚信值的区块链容量回收方案的工作方法操作步骤活动图。
图4是本发明查询区块信息的工作方法操作步骤活动图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
为了更加科学、合理地实现在保证区块链信息可追溯、可验证的前提下有效减少区块链占用的节点磁盘空间,本发明的设计思想是:实现一个有效、科学合理的区块链容量回收方案,能够在用户发起容量回收请求时科学地为用户选择可清除的区块信息并合理地为区块决策存储地址,以保证用户能够在清除区块信息后仍能获取和验证。因此,本发明方案中使用算法和预测技术,对节点是否为诚信节点进行预测、为区块选择存储地址。其中可能使用到的算法包括但不限于一致性哈希算法、遗传算法、蚁群算法等等。
为了实现上述技术方案,本发明方案需要解决三个问题。第一,设计一个判断区块体信息是否有存储价值的方法;第二,设计一个决策区块体信息副本数量、存储地址的算法;第三,设计一种节点执行容量回收策略后仍能获取删除的区块体信息并能够验证信息的方法。
为了解决第一个问题,可以在区块体信息中的每条交易信息中增加信息存储周期属性,并在区块头信息中增加最大信息存储周期属性,记录一个区块中存储的所有交易信息的信息存储周期的最大值,增加是否本地存储属性标识本地是否存储该区块体信息。以区块时间戳、区块最大信息存储周期为依据对区块是否有存储价值进行判断。
为了解决第二个问题,可以以区块时间戳、区块最大信息存储周期为依据计算区块信息副本数量,并为节点信息添加磁盘容量属性、节点计算能力属性、网络带宽利用率属性、节点诚信值属性作为选择区块存储地址的影响因素。在决策区块体信息副本存储地址的过程中,可能使用到的技术包括但不限于:一致性哈希算法、遗传算法、蚁群算法等。
为了解决第三个问题,执行过区块容量回收策略的节点在删除区块体详细信息后,可以记录区块容量回收日志,包括回收的区块号以及存储该区块的节点地址。在节点查询区块体详细信息时,首先判断区块体详细信息是否在本地存储,若未存储则查询区块容量回收日志,向区块存储节点发起远过程调用请求,即可获取本地未存储的区块体详细信息,再根据本地存储的区块头部信息中的区块哈希值验证区块体详细信息的正确性。
参见图2,下面介绍本发明区块链容量回收方案的五个执行模块:数据收集模块、数据存取模块、数据分析模块、数据库和系统执行模块。
数据收集模块,用于收集区块链网络中区块信息,节点信息,节点的CPU利用率、磁盘空闲率、网络带宽利用率等节点性能信息,并在每个固定周期内统计节点在生成区块过程中的投票行为。该数据收集模块收集的数据将发送到数据存取模块的存储数据单元处理。
数据存取模块,用于与数据库交互数据:向数据库中存储数据和读取数据库中的数据信息,为该平台的其他模块提供数据存取服务:设有分别用于实现数据存储的存储数据单元和实现数据读取的读取数据单元两个单元:存储数据单元负责将来自数据收集模块的区块信息、节点信息等数据保存于数据库;数据分析模块通过读取数据单元读取区块数据、节点数据,以及通过存储数据单元将预测的节点诚信值数据、区块信息副本存储地址数据等保存在数据库中;
数据分析模块,设有两个功能单元:诚信节点预测单元和存储地址决策单元。该数据分析模块负责通过数据收集模块收集的节点投票行为信息预测诚信节点,并根据预测的节点诚信值和数据收集模块收集的节点性能数据决策区块信息副本存储地址。数据分析模块与数据存取模块通信交互节点诚信值、节点性能数据和区块信息副本存储地址数据,并将这些数据发送给系统执行模块处理。
数据库,用于存储区块链系统中所有的数据信息,并通过数据存储模块提供数据读取服务;所述数据种类包括:区块头部信息、区块体详细信息、区块链节点信息、所有链码,以及系统工作日志。
系统执行模块,用于接收用户在Web客户端发起的请求,设有区块信息查询单元和回收区块链占用节点磁盘空间单元。区块信息查询单元解析来自Web客户端的用户请求,解析请求并生成区块信息查询指令,与数据存取模块交互获取区块信息数据;回收区块链占用节点磁盘空间单元解析来自Web客户端的用户请求,解析请求后与数据分析模块交互获取区块信息副本的存储地址,按照数据分析模块传回的决策清除区块信息。
参见图3,介绍本发明基于诚信值的区块链容量回收方案的工作方法操作步骤活动图:
步骤1,数据收集模块收集节点诚信值数据、节点性能数据。
步骤2,数据收集模块将收集到的数据经数据存取模块将节点诚信值数据、节点性能数据存储在数据库中。
步骤3,判断区块是否可清除并计算区块信息有效率:为步骤4计算区块信息副本数量提供计算依据。步骤3包括下列操作内容:
(31)获取当前区块链中最后一个区块的区块号以及区块哈希值。
(32)从第一个区块开始遍历至(31)中获取的区块链中最后一个区块,计算每个区块的信息有效率,判断区块是否可清除。区块i的信息有效率
Figure BDA0002501082630000051
与区块生成时间
Figure BDA0002501082630000052
和设置的区块信息有效周期
Figure BDA0002501082630000053
有关:
Figure BDA0002501082630000054
Figure BDA0002501082630000055
(33)计算区块信息副本数量:信息副本数量由区块链管理节点计算,副本数量仅与步骤(32)中计算的信息有效率有关,随信息有效率的减小逐渐减少过期信息的副本数量,注意区块链在信息验证时不断向前追溯验证信息的正确性,所以为了保证区块体详情信息的可获取,副本数量至少为1。
区块i的区块体信息所对应的副本数量为
Figure BDA0002501082630000056
其中N为区块链网络中所有节点的数量。Numi为奇数,目的是提高在数据验证投票过程能够得到可信数据的概率。
(34)数据分析模块预测诚信节点:首先介绍诚信节点和恶意节点在区块链生成区块过程中的投票行为:诚实节点总是作出正确投票,恶意节点会作出错误投票,即正确的预备区块投票为否,错误的区块投票为是。
预测诚信节点由区块链管理节点负责,区块链管理节点会在一个周期e内执行统计操作,统计信息为各节点发送的PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错算法)网络消息包中预备区块hash值和区块投票信息。blocki表示周期e内第i个区块经过投票后的结果,
Figure BDA0002501082630000061
表示周期e内节点n给第i个区块的投票结果,Sume表示周期e内共生成的区块总数,则节点n在周期e的诚信值
Figure BDA0002501082630000062
计算方法为:
Figure BDA0002501082630000063
诚信节点的预测方法如下:
当e<=2,若则判断为诚实节点,否则判断为恶意节点,并将诚信值
Figure BDA0002501082630000065
和周期号e加入列表。
当e>2,即可根据往期判断划分阵营,依次经历以下判断:
若往期节点诚信值统计中,均被划分到诚实节点列表中,则在下一周期将节点预测为诚实节点,honestn=1,并按本期的诚信值
Figure BDA0002501082630000066
将诚信值
Figure BDA0002501082630000067
和周期号加入对应列表;
类似地,若均被划分到恶意节点列表中,则节点预测为恶意,honestn=0;
若两个统计列表中均有值存在:
首先按照公式
Figure BDA0002501082630000068
分别计算当前周期诚信值与两列表中往期诚信值的均方差;
比较两个均方差数值大小;
将本周期的诚信值
Figure BDA0002501082630000069
和周期号e加入到均方差较小的列表中。最后比较两列表的数量,若往期预测为诚信节点的次数较多则设置honestn=1,否则设置honestn=0。
其中,n代表节点号,DXn表示当前周期内节点n的诚信值与量列表中往期诚信值的均方差,listMax表示诚信列表或恶意列表的投票总数,j表示遍历列表中诚信值的索引,
Figure BDA00025010826300000610
表示节点n在诚信列表或恶意列表中遍历到索引为i的诚信值,
Figure BDA00025010826300000611
表示节点n在当前周期e内统计的诚信值。
(35)数据分析模块计算节点性能指标:
在每个周期的开始,各节点服务器将自动获取节点性能指标的数据值,并将性能指标数据发送至管理节点。影响节点性能的因素主要有:节点存储能力
Figure BDA00025010826300000612
节点计算能力Caln,和节点网络性能Netn
Figure BDA00025010826300000613
Figure BDA00025010826300000614
分别表示节点n的未使用磁盘容量,和磁盘总容量,Netn表示节点n的带宽利用率。
节点性能
Figure BDA0002501082630000071
Figure BDA0002501082630000072
其中,wx表示节点n中x(x={cap,cal,net})因素对应的权重。在本文中,区块链系统需要占用较多的节点磁盘空间存储信息,所以我们更关注节点的存储能力;其次是节点计算能力,选择计算能力较强的节点能够减小执行远过程调用查询请求的响应时间;最后是网络带宽利用率,由于影响节点间网络时延的因素较不稳定,且网络时延的数值差别较小,可以适当减小网络带宽利用率的权重。综上所述,本文将节点存储能力、节点计算能力、网络带宽利用率的权重设为(0.4,0.35,0.25)。
(36)选择存储区块副本的节点群:考虑到到因素有:
a.节点性能Pn
b.节点的诚信值honestn
进而计算节点排名分数Score=0.3×Pn+0.7×honestn
(37)由区块链管理节点计算Score并取排名前Numi的节点存储副本后广播<区块号,存储区块副本的节点群>网络消息包。
(38)全网节点经系统执行模块执行管理节点决策的容量回收策略:全网节点收到区块链管理节点发送的容量回收策略网络消息包后,依次检查“存储区块副本的节点群”列表中的存储节点信息判断当前节点是否存储对应区块的区块体信息,若不存储则删除对应区块以回收区块空间,并保存区块号和存储节点信息至操作日志数据库表。否则继续存储对应区块体信息。
参见图4,介绍本发明查询区块信息的工作方法操作步骤活动图:
用户可以根据区块号、区块哈希值查询通过共识的区块信息,查看区块体详情信息时,首先由系统执行模块响应用户请求,经数据存取模块检查区块是否本地存储,如果执行检索任务的主机本地存储了对应查询区块的详细信息,将从本地直接查询详细信息;若本地未存储对应区块的详细信息,将首先在容量回收日志记录中查询存储区块的节点地址列表,然后向存储该区块的节点群发起查询详细信息的请求,获取区块体详情信息后展示,请求过程对用户透明。

Claims (10)

1.一种基于诚信值的区块链容量回收方案,其特征在于:所述区块链容量回收方案包括两个功能模块:回收区块链占用的磁盘空间功能模块和查询区块详情信息功能模块;其中:
回收区块链占用的磁盘空间功能模块,是区块链容量回收算法的代码实现,当用户本地服务器收到用户在Web客户端发起的回收空间请求时,首先遍历本地存储的区块信息,计算区块的“信息有效率”属性值,以此为依据筛选出可以清除的区块;本地服务器与管理节点通信,将可清除区块的区块号告知管理节点,由管理节点决策存储区块信息副本的节点地址;管理节点与区块链网络中的全部节点通信,将决策信息在全网广播;区块链网络中的节点按照管理节点的决策清除指定的区块信息,达成回收区块链占用的节点磁盘空间的目标。回收区块链占用的磁盘空间代码块存储在区块链平台管理节点的链码数据库中,由用户发起容量回收请求时触发,由区块链平台执行。
查询区块详情信息功能模块,用于保证节点在执行回收区块链占用的节点磁盘空间后,仍然能够获取并验证本地删除的区块详情信息,并保证查询区块详情信息操作对用户透明,且查询时延在用户可接受范围内。同样地,查询区块详情信息代码块存储在区块链平台所有节点的链码数据库中,由用户发起查询区块详情信息时触发,由区块链平台执行。
2.根据权利要求1所述的方案,其特征在于所述区块链容量回收方案能够在保证区块链信息可追溯、可验证的前提下科学有效地减少区块链系统占用的节点磁盘空间。
3.根据权利要求1所述的方案,其特征在于所述区块链平台的说明如下:
区块链平台是本方案的基础,执行与区块链网络中的各节点建立P2P通信关系、执行区块共识算法、与数据库进行数据交互、进行数据验证等基础功能,附图1说明本方案系统部署的整体组成结构。
4.根据权利要求1所述的方案,其特征在于所述链码的说明如下:
链码全称为链上代码,是由开发人员编写的应用程序代码,被部署在区块链网络节点中,能够独立运行在具有安全特性的受保护的Docker容器(Docker是一个开源的应用容器引擎,开发者可将应用以及依赖包打包到一个轻量级、可移植的容器中,发布至任何流行的Linux机器上)中,当满足设定好的条件时由区块链平台执行链码。
5.根据权利要求1所述的方案,其特征在于所述方案应包括五个执行模块:数据收集模块、数据存取模块、数据分析模块、数据库和系统执行模块。
数据收集模块,用于收集区块链网络中区块信息,节点信息,节点的CPU利用率、磁盘空闲率、网络带宽利用率等节点性能信息,并在每个固定周期内统计节点在生成区块过程中的投票行为。该数据收集模块收集的数据将发送到数据存取模块的存储数据单元处理。
数据存取模块,用于与数据库交互数据,即向数据库中存储数据和读取数据库中的数据信息,为该平台的其他模块提供数据存取服务。包括分别用于实现数据存储的存储数据单元,和实现数据读取的读取数据单元:存储数据单元负责将来自数据收集模块的区块信息、节点信息等数据保存于数据库;数据分析模块通过读取数据单元读取区块数据、节点数据,以及通过存储数据单元将预测的节点诚信值数据、区块信息副本存储地址数据等保存在数据库中;
数据分析模块,包括诚信节点预测单元,和存储地址决策单元:数据分析模块负责通过数据收集模块收集的节点投票行为信息,预测诚信节点,并根据预测的节点诚信值,和数据收集模块收集的节点性能数据,决策区块信息副本存储地址。数据分析模块与数据存取模块通信,交互节点诚信值、节点性能数据和区块信息副本存储地址数据,并将这些数据发送给系统执行模块处理。
数据库,用于存储区块链系统中所有的数据信息,并通过数据存储模块提供数据读取服务;所述数据种类包括:区块头部信息、区块体详细信息、区块链节点信息、所有链码,以及系统工作日志。
系统执行模块,用于接收用户在Web客户端发起的请求,包括区块信息查询单元,和回收磁盘空间单元。区块信息查询单元解析来自Web客户端的用户请求,并生成区块信息查询指令,与数据存取模块交互,获取区块信息数据;回收区块链占用节点磁盘空间单元解析来自Web客户端的用户请求,解析请求后与数据分析模块交互获取区块信息副本的存储地址,按照数据分析模块传回的决策清除区块信息。
6.根据权利要求1所述的方案,特征在于所述的节点包括诚信节点和恶意节点,所述的节点在生成区块过程中的投票行为是:
诚实节点总是作出正确投票,恶意节点会作出错误投票,即正确的预备区块投票为否,错误的区块投票为是。
7.根据权利要求5所述的方案,特征在于所述数据收集模块统计节点在生成区块过程中的投票行为操作如下:
预测诚信节点由区块链管理节点负责,区块链管理节点会在一个周期e内执行统计操作,统计信息为各节点发送的PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错算法)网络消息包中预备区块hash值和区块投票信息。blocki表示周期e内第i个区块经过投票后的结果,
Figure FDA0002501082620000021
表示周期e内节点n给第i个区块的投票结果,Sume表示周期e内共生成的区块总数,则节点n在周期e的诚信值
Figure FDA0002501082620000022
计算方法为:
Figure FDA0002501082620000023
8.根据权利要求5所述的方案,特征在于所述数据收集模块收集节点性能属性信息后,计算节点性能指标的操作如下:
在每个周期的开始,各节点服务器将自动获取节点性能指标的数据值,并将性能指标数据发送至管理节点。影响节点性能的因素主要有:节点存储能力
Figure FDA0002501082620000031
节点计算能力Caln,和节点网络性能Netn
Figure FDA0002501082620000032
Figure FDA0002501082620000033
分别表示节点n的未使用磁盘容量,和磁盘总容量,Netn表示节点n的带宽利用率。
节点性能
Figure FDA0002501082620000034
Figure FDA0002501082620000035
其中,wx表示节点n中x(x={cap,cal,net})因素对应的权重。在本文中,区块链系统需要占用较多的节点磁盘空间存储信息,所以我们更关注节点的存储能力;其次是节点计算能力,选择计算能力较强的节点能够减小执行远过程调用查询请求的响应时间;最后是网络带宽利用率,由于影响节点间网络时延的因素较不稳定,且网络时延的数值差别较小,可以适当减小网络带宽利用率的权重。综上所述,本文将节点存储能力、节点计算能力、网络带宽利用率的权重设为(0.4,0.35,0.25)。
9.根据权利要求5所述的方案,特征在于所述数据分析模块中诚信节点预测单元的功能和执行过程为:
诚信节点预测单元,由管理节点负责根据数据收集模块统计的信息(统计信息为节点在生成区块过程中的投票行为)预测全部节点的诚信值,并通过数据存取模块的存储数据单元将节点诚信值存储在管理节点的数据库中,为本模块的区块信息副本地址决策单元提供决策依据。诚信节点的预测方法如下:
当e<=2,若
Figure FDA0002501082620000036
则判断为诚实节点,否则判断为恶意节点,并将诚信值
Figure FDA0002501082620000037
和周期号e加入列表。
当e>2,即可根据往期判断划分阵营,依次经历以下判断:
若往期节点诚信值统计中,均被划分到诚实节点列表中,则在下一周期将节点预测为诚实节点,honestn=1,并按本期的诚信值
Figure FDA0002501082620000038
将诚信值
Figure FDA0002501082620000039
和周期号加入对应列表;
类似地,若均被划分到恶意节点列表中,则节点预测为恶意,honestn=0;
若两个统计列表中均有值存在:
(91)首先按照公式
Figure FDA00025010826200000310
分别计算当前周期诚信值与两列表中往期诚信值的均方差;
(92)比较两个均方差数值大小;
(93)将本周期的诚信值
Figure FDA0002501082620000041
和周期号e加入到均方差较小的列表中。最后比较两列表的数量,若往期预测为诚信节点的次数较多则设置honestn=1,否则设置honestn=0。
其中,n代表节点号,DXn表示当前周期内节点n的诚信值与量列表中往期诚信值的均方差,listMax表示诚信列表或恶意列表的投票总数,j表示遍历列表中诚信值的索引,
Figure FDA0002501082620000042
表示节点n在诚信列表或恶意列表中遍历到索引为j的诚信值,
Figure FDA0002501082620000043
表示节点n在当前周期e内统计的诚信值。
10.根据权利要求5所述的方案,特征在于所述数据分析模块中存储地址决策单元的功能和执行过程为:
存储地址决策单元,由管理节点为可清除区块决策区块信息副本数量和存储地址。决策过程如下:
步骤1,计算区块信息有效率:
区块i的信息有效率
Figure FDA0002501082620000044
与区块生成时间
Figure FDA0002501082620000045
和设置的区块信息有效周期
Figure FDA0002501082620000046
有关:
Figure FDA0002501082620000047
Figure FDA0002501082620000048
步骤2,计算区块信息副本数量,区块信息副本数量由区块链管理节点计算,副本数量仅与步骤1中计算的信息有效率有关,随信息有效率的减小逐渐减少过期信息的副本数量,注意区块链在信息验证时不断向前追溯验证信息的正确性,所以为了保证区块体详情信息的可获取,副本数量至少为1。区块i的区块体信息所对应的副本数量为
Figure FDA0002501082620000049
其中N为区块链网络中所有节点的数量。Numi为奇数,目的是提高在数据验证投票过程能够得到可信数据的概率。
步骤3,选择存储区块副本的节点群,管理节点为区块选择存储区块副本的节点群时考虑到到因素有:
a.节点性能Pn
b.节点的诚信值honestn
(31)计算节点排名分数Score=0.3×Pn+0.7×honestn
(32)区块链管理节点计算Score并取排名前Numi的节点存储副本后广播<区块号,存储区块副本的节点群>网络消息包。
CN202010432533.2A 2020-05-20 2020-05-20 一种基于诚信值的区块链容量回收方案 Pending CN111597168A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010432533.2A CN111597168A (zh) 2020-05-20 2020-05-20 一种基于诚信值的区块链容量回收方案

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010432533.2A CN111597168A (zh) 2020-05-20 2020-05-20 一种基于诚信值的区块链容量回收方案

Publications (1)

Publication Number Publication Date
CN111597168A true CN111597168A (zh) 2020-08-28

Family

ID=72190432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010432533.2A Pending CN111597168A (zh) 2020-05-20 2020-05-20 一种基于诚信值的区块链容量回收方案

Country Status (1)

Country Link
CN (1) CN111597168A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112765137A (zh) * 2021-04-07 2021-05-07 暗链科技(深圳)有限公司 基于区块分布式区块链的区块同步方法及电子设备
CN112765683A (zh) * 2021-04-07 2021-05-07 暗链科技(深圳)有限公司 区块链的区块数据结构、存储介质及电子设备
CN112765681A (zh) * 2021-04-07 2021-05-07 暗链科技(深圳)有限公司 区块分布式区块链的生成方法、存储介质及电子设备
CN112835935A (zh) * 2021-02-02 2021-05-25 赵加庆 基于区块链和移动互联网的信息流分析方法及云计算平台
CN112838953A (zh) * 2021-01-11 2021-05-25 绵阳沸尔特科技有限公司 一种区块链打包节点共识推举方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108615153A (zh) * 2018-04-28 2018-10-02 百度在线网络技术(北京)有限公司 区块链数据的处理方法、装置、系统、设备和存储介质
CN109471598A (zh) * 2018-11-16 2019-03-15 深圳市得微电子有限责任公司 存储设备的数据删除方法、装置及计算机可读存储介质
CN109508146A (zh) * 2018-10-11 2019-03-22 广西师范大学 一种区块链的周期性存储空间回收方法
WO2020062211A1 (zh) * 2018-09-30 2020-04-02 北京大学深圳研究生院 一种融合区块链技术拟态存储防篡改日志的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108615153A (zh) * 2018-04-28 2018-10-02 百度在线网络技术(北京)有限公司 区块链数据的处理方法、装置、系统、设备和存储介质
WO2020062211A1 (zh) * 2018-09-30 2020-04-02 北京大学深圳研究生院 一种融合区块链技术拟态存储防篡改日志的方法及系统
CN109508146A (zh) * 2018-10-11 2019-03-22 广西师范大学 一种区块链的周期性存储空间回收方法
CN109471598A (zh) * 2018-11-16 2019-03-15 深圳市得微电子有限责任公司 存储设备的数据删除方法、装置及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周杰等: "基于云计算的物流区块链共识算法研究" *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112838953A (zh) * 2021-01-11 2021-05-25 绵阳沸尔特科技有限公司 一种区块链打包节点共识推举方法
CN112835935A (zh) * 2021-02-02 2021-05-25 赵加庆 基于区块链和移动互联网的信息流分析方法及云计算平台
CN112835935B (zh) * 2021-02-02 2021-12-07 农夫铺子发展集团有限公司 基于区块链和移动互联网的信息流分析方法及云服务平台
CN112765137A (zh) * 2021-04-07 2021-05-07 暗链科技(深圳)有限公司 基于区块分布式区块链的区块同步方法及电子设备
CN112765683A (zh) * 2021-04-07 2021-05-07 暗链科技(深圳)有限公司 区块链的区块数据结构、存储介质及电子设备
CN112765681A (zh) * 2021-04-07 2021-05-07 暗链科技(深圳)有限公司 区块分布式区块链的生成方法、存储介质及电子设备
WO2022213697A1 (zh) * 2021-04-07 2022-10-13 暗链科技(深圳)有限公司 区块分布式区块链的生成方法、存储介质及电子设备
WO2022213706A1 (zh) * 2021-04-07 2022-10-13 暗链科技(深圳)有限公司 区块链的区块数据结构、存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN111597168A (zh) 一种基于诚信值的区块链容量回收方案
CN104969213B (zh) 用于低延迟数据存取的数据流分割
CN114065283B (zh) 一种轻量级可循环再生的区块链存储方法及装置
CN110166282B (zh) 资源分配方法、装置、计算机设备和存储介质
CN102016842B (zh) 与海量处理指令的实时处置和处理相关的改进
CN103425756B (zh) 一种hdfs中数据块的副本管理策略
US8418183B2 (en) Resource information collection and delivery method and system
US20080065588A1 (en) Selectively Logging Query Data Based On Cost
CN103593376A (zh) 一种采集用户行为数据的方法及装置
CN102081622A (zh) 评估系统健康度的方法及系统健康度评估装置
CN106383830B (zh) 一种数据检索方法及设备
CN113612749A (zh) 一种面向入侵行为的溯源数据聚类方法及装置
CN111586091A (zh) 一种实现算力组配的边缘计算网关系统
CN106502875A (zh) 一种基于云计算的日志生成方法及系统
CN114328133A (zh) 单机构分布式冲突检测方法、系统和存算分离架构
Wang et al. Efficient concurrent execution of smart contracts in blockchain sharding
CN111368166A (zh) 资源搜索方法、资源搜索装置和计算机可读存储介质
CN114328535A (zh) 一种索引查询优化的仓储区块链系统
Liu et al. Modeling the sojourn time of items for in-network cache based on LRU policy
CN115456223B (zh) 基于全生命周期的锂电池梯次回收管理方法及系统
CN115883238A (zh) 基于sdn的分布式负载均衡数据加密保存方法
CN113138838B (zh) 一种基于人工蜂群算法的虚拟机放置方法
CN110399095A (zh) 一种存储空间的统计方法和装置
CN1588405A (zh) 用于风险控制系统的数据处理装置及方法
WO2024119793A1 (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200828