通过基于资源权重的节点选择提升区块链验证效率 Vedika Jorika 和 Nagaratna Medishetty

《Informatics》:Enhancing the Efficiency of Blockchain Verification Through Resource-Weighted Node Selection Vedika Jorika and Nagaratna Medishetty

【字体: 时间:2026年05月10日 来源:Informatics 2.8

编辑推荐:

  摘要:区块链技术作为一种基础范式,已经出现,用于构建去中心化、透明且安全的系统,特别是在没有集中权威的环境中。这些系统的核心是共识机制,它确保交易的有效性并维护分布式参与者之间的信任。然而,区块链网络的效率在很大程度上受到验证器(或验证者)节点选择方式的影响,特别是在事务处理分布

  摘要:区块链技术作为一种基础范式,已经出现,用于构建去中心化、透明且安全的系统,特别是在没有集中权威的环境中。这些系统的核心是共识机制,它确保交易的有效性并维护分布式参与者之间的信任。然而,区块链网络的效率在很大程度上受到验证器(或验证者)节点选择方式的影响,特别是在事务处理分布在多个分片上的分片架构中。区块链设计中的一个关键挑战是以高效、公平且能够抵抗恶意行为的方式选择合适的节点进行交易验证,同时最小化通信开销。现有方法通常主要依赖于资源可用性或创建区块的能力,尤其是在分片区块链架构中。基于这些想法,本文提出了一种资源加权-区块得分(Resource Weighted–Block Score)选择算法,该算法将节点的区块得分与其计算资源可用性结合起来,以指导验证器节点的选择。基于仿真的评估表明,所提出的方法显著降低了交易验证延迟,并提高了整体节点利用率,从而增强了分片区块链系统的网络性能和可扩展性。

1. 引言
区块链凭借其显著特点,被不同应用领域广泛接受用于数据的安全存储,而在此之前数据一直是集中控制的。它提供了一种安全可靠的数据存储手段,解决了传统系统长期以来集中管理信息的局限性。作为分布式账本,区块链确保网络中所有参与节点都保持数据副本的一致性,从而在没有集中权威的情况下实现全局同步和信任。

1.1. 区块链网络类别
区块链技术分为两类:许可型(Permissioned)和非许可型(Permissionless)。在许可型区块链中,任何节点都可以尝试参与区块创建;而在非许可型区块链中,只有受信任的节点才能参与。然而,成功与否取决于是否满足共识协议的标准。由于非许可型区块链中的节点数量众多,网络内部存在恶意活动的风险很高。这带来了一个重大挑战,因为很难识别恶意节点并确保数据的一致性。

公共区块链允许任何人无需任何权限即可访问并在网络上进行交易,它是完全去中心化、透明的,即所谓的非许可型区块链,例如比特币[1]和以太坊[2]。私有区块链只能由受信任的节点访问并在网络上进行交易,它是部分去中心化的且不透明的,称为许可型区块链,例如Hyperledger[3]和Corda[4]。联盟区块链由多个组织管理,是部分去中心化的,只有选定的节点子集参与共识过程以验证交易。

1.2. 共识
在区块链系统中,共识是独立节点网络在没有依赖中央权威的情况下就账本的单一权威版本达成一致的机制。在分布式环境中达成共识是一个重大挑战,因为节点维护着各自不可变的账本,必须开发技术来确保所有节点之间的一致性。共识模型对于试图添加区块的节点来说至关重要。随着比特币及其特性的发展,其基础架构的重要性得到了强调。出现了许多区块链系统,每个系统都有自己的设计和程序(例如比特币和以太坊)。这些区块链系统根据其设计目标采用不同的共识机制。例如,比特币使用工作量证明(Proof of Work, PoW),矿工竞争解决计算密集型难题来验证交易并添加新区块。相比之下,以太坊最初使用PoW,但后来转向了权益证明(Proof of Stake, PoS),其中验证者的选择基于他们在网络中投入的加密货币数量。此外,像Hyperledger Fabric这样的许可型区块链平台利用如实用拜占庭容错(Practical Byzantine Fault Tolerance, PBFT)或其变体的共识协议,依靠一组受信任的节点来高效达成一致。

分布式共识的主要目标是让网络中的一组节点就某个节点提出的共同值达成一致。这确保了分布式网络内的可靠性、容错性和安全性。共识算法决定了哪个节点有权将下一个区块添加到区块链中,所有有效交易都被存储为区块链。然而,可扩展性仍然是区块链系统的根本限制,因为所有经过验证的交易都被附加到一个不断增长的区块链上。随着交易量的增加,这种架构会导致更高的延迟、降低的吞吐量和增加的验证开销。为了解决这些问题,出现了分片技术,将所有节点分成多个组,称为分片(shards)。每个分片负责并行处理区块链的特定子集事务。为了确保每个分片的安全正确运行,每个分片内的节点之间必须达成一种称为共识的协议。虽然分片提高了可扩展性,但也引入了在每个分片内高效验证交易和达成共识的挑战。

为了确保每个分片的安全正确运行,每个分片内的节点之间必须达成一种称为共识的协议。对于分片区块链,目前还没有广泛接受的共识模型能够有效平衡强大的安全性和低计算及通信开销。性能通过考虑延迟、交易验证和验证时间、吞吐量和可扩展性等参数来衡量[5,6,7]。一些作者专注于安全问题以提高区块链的性能[8,9,10]。本工作关注在假定的安全框架内的效率,而不是重新设计底层安全机制。本文提出了一种基于资源加权的节点选择机制,用于共识过程中的交易验证。在这种方法中,验证交易、创建和验证区块的责任被分配给拥有最高计算和网络资源可用性的节点。

本文的主要贡献总结如下:
- 提出了资源加权-区块得分选择算法(Resource Weighted–Block Score Selection Algorithm, RW-BSSA)作为选择交易验证器节点的理论共识模型。在该模型中,每个节点根据多个资源维度获得一个综合权重,权重最高的节点被选为执行交易验证、区块验证和创建。
- 使用不同的区块大小,对所提出和现有算法的性能进行了验证、验证时间和总体延迟的测量。

本文的其余部分结构如下:第2节回顾了区块链网络和分片区块链网络中的各种共识算法。第3节概述了所提出的算法——资源加权区块得分共识算法及其方法论。第4节讨论了性能分析,第5节总结了这项工作。

2. 相关和背景工作
共识算法是区块链的核心,在提高网络性能方面起着重要作用。许多研究人员提出了各种共识算法,这些算法基于初步实现,如工作量证明、权益证明和拜占庭容错证明。区块链的性能取决于所选的共识模型。因此,共识模型在降低平台吸引力方面起着重要作用。本节讨论了区块链网络和分片区块链网络中的各种共识机制。

2.1. 区块链网络中的各种共识机制
在文献中,出现了几种基于证明的共识算法,每种算法都有不同的理念。最初在比特币中广泛使用的方法是工作量证明(Proof of Work, PoW),由Nakamoto提出,在这种公共区块链中,矿工必须解决一个难题,并在将区块添加到区块链之前得到其他矿工的验证。该机制使用Merkle树高效存储数据,但需要较高的计算能力且性能较差。Peercoin加密货币King和Nadal[11]使用了权益证明(Proof of Stake, PoS)共识机制,其中所有参与节点在钱包中持有加密货币,拥有最多加密货币的节点在持有期间有机会将区块添加到现有区块链中。如果节点持有硬币的时间较长,它将获得激励。与PoW相比,PoS关注的是硬币数量而不是解决问题所需的计算能力。Zhuang等人[12]引入了基于声誉的共识(Proof of Reputation, PoR),它在每轮中使用三步共识机制:基于声誉的共识、声誉更新和领导者选择及区块创建。声誉评分最高的节点被选为领导者,领导者负责创建区块。

在PBFT共识过程中,主节点收到客户端请求后立即启动共识。当请求数量超过服务器的容量时,交易会排队等待共识处理。Castro和Liskov[13]引入了一种批量请求处理的优化方法。该方案为请求批次分配一个序列号,简化了批次启动协议并在高负载期间减少共识协议开销。采用滑动窗口机制限制了并行交易处理。随着共识的进行,窗口向前推进,从而允许排队请求的处理。然而,这种解决方案预定义了交易大小,限制了基于系统负载的灵活性,也称为批量交易数量。此外,它为批次分配了一个序列号,但没有指定处理批次内验证失败的过程。Sanober和Anwar[14]引入了一种名为轮询权益证明(Round Robin Proof of Stake, RRPoS)的共识机制,通过仅允许有效节点参与区块创建并在轮询模式下为每个有效节点提供创建区块的机会来提高安全性。然而,这种方法关注的是最小权益和轮询方法,而不是节点的资源可用性。

2.2. 分片区块链网络中的各种共识机制
过去几年,所有的关注点都集中在区块链网络的共识上,但现在通过分片概念实现了扩展。如今,研究重点是在区块链的一个部分——即分片内达成共识,即将整个区块链分成不同的分片。这一概念提高了区块链在吞吐量和资源利用方面的效率。基于投票或长链的共识在分片区块链中并不提供效率。

Xu等人[15]提出了一个基于多重获胜者工作量证明(Multiple Winners Proof of Work, MWPoW)协议和基于投票的框架,解决了阻碍进展的攻击,并且可以容忍多达f < n/2个恶意节点。分片的概念缓解了可扩展性问题,但仍需解决一些挑战,例如处理分片缩小和分片间双向交易的问题。为了在可扩展性方面提高区块链的效率,需要有大量的小分片来实现并行处理。作者Li等人[16]解决了分片中的一个挑战,即分片中存在恶意节点的问题。Li等人[17]提出了一种称为Cochain的分片区块链系统,它安全地配置了小分片以提高并发性。该系统考虑了网络中恶意分片的存在,并提出了与其他分片监控每个分片的概念。通过跨分片共识实现了区块链的效率。在过程中,如果发现任何有问题的分片,就会将其从网络中移除。Tao等人[10]提出了一种称为CGSTD的方法,解决了分片内的安全问题,因为节点数量较少时安全性风险较高。因此,如果增加节点数量,共识延迟会增加,从而直接降低区块链的效率。最优组是基于每个分片的传输延迟形成的。协调成本增加,这不适合大规模交易。Lu等人[18]提出了一种基于信用的共识IShard,用于处理分片内的大量交易,并关注联盟区块链的可扩展性。库马尔等人[19]提出了一种创新的共识算法Shardcon,用于公共区块链,该算法根据矿机的性能将它们划分为多个子块(shards)。在分片过程之后,每个子块中性能最好的矿机被选中形成一个超级子块(Super Shard)。然后从超级子块中随机选择一个矿机来挖掘区块链网络中的下一个区块。每个矿机都维护自己的性能历史记录以支持分片过程,并且定期进行重新分片以确保公平性。这种基于性能的分片共识算法解决了公共区块链所面临的可扩展性挑战。此外,它还提高了公平性,防止了矿机资源匮乏的问题,增强了矿机之间的信任,并提升了区块链网络的整体效率。张和黄[20]提出了一种名为FPoR的共识机制,适用于无需许可的区块链,该机制结合了多种参数来提高区块链效率。该协议包括使用抵押品来选择候选节点,从候选节点池中根据声誉随机选择一个节点来提议新的区块,然后使用PBFT来验证和批准新区块的添加,并在网络中传播该区块。刘等人[21]提出了Kronos,这是一种为分片区块链系统设计的灵活且安全的共识模型,专注于实现安全性、原子事务执行和最小化开销,特别是在处理跨子块事务时。这种机制适用于各种网络环境,如异步、部分同步和同步网络,并通过Dumbo和Hotstuff等技术来加速kad化过程。吴等人[22]为Hyperledger中的节点提出了动态资源分配方案,他们使用CRITIC算法来计算分配给验证节点的资源权重,并使用PROMETHEE算法来优先选择用于验证事务的节点。通过将这些算法应用到区块链中,提高了系统的性能。张等人[23]提出了一种基于节点信任值的共识机制,这些信任值被划分为三个主要组别,用于打包和验证事务。从会计节点组中选择一个会计节点作为活动节点来打包事务到区块中。然而,这种方法引入了额外的计算和通信开销,对于资源有限的节点来说,在计算信任值时可能会特别具有挑战性。

因此,为了解决上述研究的局限性,本研究采用了一种混合选择方法,该方法同时考虑了节点资源可用性和历史区块性能,从而实现了更高效的验证节点选择。然而,完整的正式安全证明、全面的拜占庭容错分析和实际部署评估超出了基于仿真的本研究的范围,留待未来的工作来完成。

3. 资源加权-区块得分选择算法(RW-BSSA)
本研究的主要目标是开发一种完全基于子块内节点资源可用性的共识机制。本节讨论了高可用性节点如何创建区块,而共识是提高区块链性能的核心概念之一。在这种提出的共识机制中,考虑了一个分片区块链和一组节点。为了完成共识过程,选择资源最丰富的节点来创建区块。由于每个节点都拥有一些资源(如CPU、RAM和网络带宽),当前资源可用性A(n)是通过计算总资源数T(n)与当前消耗资源C(n)之差来确定的。在根据资源可用性计算后,资源最丰富的节点将获得创建区块的机会。如果有多个节点的资源可用性相同,则会计算它们的区块得分。区块得分指的是该节点过去创建的成功区块数量。如果多个节点的区块得分相同,则它们将轮流创建区块。完整的节点选择过程在算法1中有所描述。为了确保最佳性能,我们对所有可能的资源权重值组合进行了模拟。结果表明,选定的配置产生出了比其他组合更好的结果。这些权重是系统可配置的参数,可以根据目标部署环境的资源特性进行调整。根据这些值,为每个节点计算节点得分。得分最高的节点被选为创建区块的节点。在分配之前,算法会检查其他参数,如创建区块的有限时间L和完成区块形成的处理时间范围t。如果某个节点同时满足这两个条件,那么它就会被选为创建区块;否则,下一个得分最高的节点将被选中。算法1:用于选择创建区块的节点的区块链共识算法。

4. 性能分析
本节详细介绍了模拟环境,分析了两种共识方法(提出的方法和RRPOS)在不同区块大小场景下的验证时间、验证时间和整体延迟分布。箱形图直观地比较了每个指标的统计行为,显示了多次模拟运行中的中位数、四分位数和异常值。

4.1. 模拟环境
为了评估所提出的共识机制的有效性和性能,我们使用Python中的离散事件模拟框架(SimPy)模块对区块链系统进行了模拟。所提出的技术评估了不同区块大小范围下提出的共识机制(RW-BSSA)和现有方法(RRPOS)的验证时间、验证时间和延迟分析。由于RRPOS具有确定性的、无偏的验证节点调度和最低的复杂性,因此被选为基准。其轮询方式确保了公平的参与度,使其成为评估公平性的最佳基准。这允许将性能差异直接归因于资源加权区块得分(RWBS)算法,而不受其他混淆因素的影响。实验中使用的模拟参数和环境配置在表1中进行了总结。

4.2. 验证时间分析
图1和图2显示了每个子块中有10个和20个节点时的验证时间,随着区块大小的增加,现有方法和提出方法的验证时间也随之增加。由于基于资源选择节点,提出的方法显示出的中位数略低,且分布更紧凑。随着区块大小的增加,由于某些模拟中的资源限制,异常值变得更加显著。

4.3. 验证时间分析
如图3和图4所示,每个子块中有10个和20个节点时的验证时间随着区块大小的增加而增加,反映了处理更大数据量所需的额外计算工作量。提出的方法保持了较低的中位数和较小的方差,表明选择资源更丰富的节点可以确保稳定的、可预测的性能。RRPOS方法偶尔会产生较高的异常值,这可能是由于其轮询调度策略中的资源不平衡所导致的。

4.4. 延迟分析
图5和图6分别展示了每个子块中有10个和20个节点时的延迟情况,以及总体延迟,后者包括了验证、验证、处理和传输的持续时间。观察到的延迟分布随着区块大小的增加而一致性地增加。然而,提出的方法在所有区块大小上都保持了更紧凑的分布,表明其在利用计算能力更强的节点方面更为有效。现有方法则显示出更大的离散度和更频繁的极端值,尤其是在系统扩展时,这表明使用资源不太理想的节点进行验证会对系统响应性产生不利影响。

5. 结论
区块链使得开发去中心化、透明且安全的系统成为可能,这些系统不依赖于中央权威机构。共识机制确保了事务的有效性,并促进了网络中的信任。本文研究了验证节点选择对网络性能和安全性的影响。提出了一种新的共识算法RW-BSSA,该算法根据节点的可用资源来选择创建区块的节点。将创建区块的任务分配给资源最丰富的节点可以减少各种区块大小下的平均处理时间。模拟结果表明,RW-BSSA在验证时间、验证时间和整体延迟方面优于RRPOS。具体来说,与RRPOS相比,所提出的方法在所有测试的区块大小上都减少了大约5-13%的验证时间。这些性能提升在区块大小增加时仍然保持一致,证明了该方法的可扩展性。在未来的工作中,我们将通过正式的安全分析和全面的拜占庭故障场景评估来扩展当前框架,包括对抗性适应环境和在动态攻击模型下的可证明弹性。此外,该模型还将扩展到支持并行链和多网络环境,重点关注并发执行之间的一致性和协调性,以提高可扩展性和适用性。
相关新闻
生物通微信公众号
微信
新浪微博
  • 搜索
  • 国际
  • 国内
  • 人物
  • 产业
  • 热点
  • 科普

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号