Page 234 - 《软件学报》2026年第1期
P. 234

彭泽顺 等: 面向跨地理区域联盟链的事务处理技术综述                                                       231


                    区块链作为去中心化的复制账本系统, 提供一种不可篡改、可溯源、可验证的安全执行方案, 已经在跨国金
                 融  [1−4] 、商务  [5,6] 、物联网  [5,7−9] 、医疗  [10−12] 、交通  [13−15] 等重要领域得到越来越多的应用. 区块链分为公有链、联盟
                 链和私有链这     3  种类型. 其中, 联盟链是一种具有准入机制的区块链技术架构, 具有高性能、安全隐私性高、监管
                 友好等特点, 实际应用最为广泛. 在经济全球化发展大潮中, 国内外联盟链应用对于跨地理区域的需求呈现上升趋
                 势. 2022  年发布的 “全球区块链产业图谱报告”         [16] 中指出, 联盟链应具备高可扩展性, 满足跨区域、跨城市、跨国
                 家的组网要求. 实际应用中, 供应链管理           [17] 、跨境电子商务  [18] 、跨境支付  [19] 、边缘计算  [20,21] 等大规模应用都需要
                 跨域联盟链系统提供安全可信的执行平台.
                    在全球经济场景下, 用户之间的地理距离可能非常遥远, 他们遍布在各大洲的不同国家和地区. 为了保证系统
                 的性能、扩展性和容忍副本失效, 并应对地区监管政策, 全球应用需要将副本分布在多个数据中心                                [22] , 并控制数
                 据的存放位置. 用户可以访问较近的副本使用服务, 避免跨国或跨洲导致的高延迟. 例如, 华为在全球                             30  个区域建
                 立了  88  个可用区, 覆盖全球    180  个国家和地区, 全球任何地点的用户可在           100 ms 内接入最近的数据中心       [23] .
                    跨域联盟链通常部署在多个数据中心, 其基础设施有如下特点. 一是网络异构, 数据中心内的节点由高速网络
                 相连, 而不同数据中心的节点通过公网连接. 域内带宽比跨域高几个数量级, 同时延迟低几个数量级. 例如, 阿里云
                 数据中心内带宽和延迟可达          40 Gb/s 与  0.2 ms, 而跨域带宽和延迟仅为    100 Mb/s 与几十至数百毫秒     [24] . 二是计算
                 资源异构, 不同数据中心处理效率和存储效率不同. 例如, 企业在不同大洲的用户体量不同, 为节省开销, 不同数据
                 中心部署的节点配置也不同. 三是工作负载异构, 不同区域面向的用户和访问的服务会产生不同工作负载, 不同负
                 载的性质会影响性能       [22] . 例如, 金融应用负载需要可串行化隔离级别, 副本间必须保证线性一致性或顺序一致性.
                 供应链、边缘计算等应用仅需要读已提交或可重复读等较弱的隔离级别, 副本间满足最终一致性即可                                 [25] .
                    当前的联盟区块链适用于特定组织或者企业, 部署规模和应用不如公有链. 这些企业通常会在其全球数据中
                 心和云基础设施中部署节点, 以支持跨区域的业务运营. 在跨地理区域范围上, 已有研究                           [26] 将联盟链节点部署在
                 不同的大洲. 在大规模跨域网络上, FISCO-BCOS         [27] 部署了  100  余个节点来评估真实的企业应用场景, 并且其还测
                 试了跨境协作等复杂场景, 在实际应用上提供了良好的扩展性. 除此之外, IBM、微软、阿里云等云服务提供商推
                 出了  BaaS (blockchain as a service), 将区块链系统作为服务嵌入到云计算平台上, 利用云服务基础设施的部署和管
                 理来扩大区块链的地域范围, 满足企业的大范围大规模业务需求.
                    因此, 与节点数量多 (如以太坊包含数万全节点), 节点间网络环境复杂 (任何人都可以加入) 的公有链不同, 跨
                 域联盟链的参与者通常为企业, 组织和政府机构, 节点数量较少 (几十至数百), 且节点间的数据中心内和跨数据中
                 心的网络较稳定, 因此其性能远高于公有链系统. 但要支持大规模跨域分布式应用, 联盟链必须克服在性能、扩展
                 性以及容忍副本失效方面面临的难题. 考虑到不同场合下表述习惯, 本文也将区块链系统中的交易称为事务, 这两
                 种说法会同时使用, 其含义相同. 本文通过对相关研究文献进行深入分析, 对这                       3  点指标进行归纳总结, 指出传统
                 联盟链跨域部署时会遇到的问题.
                    1) 性能方面: 大规模分布式应用需要高吞吐率和低延迟. 例如, Visa、支付宝等金融应用需要在同时保证几万
                 到几十万的吞吐量和几十毫秒的延迟             [28] . 然而, 由于缺少或不合适的分片策略, 数次跨域协调显著增加交易提交
                 延迟  [29] ; 由于共识协议并未专门为基础设施做针对性设计, 跨域高通信开销降低了吞吐率                       [30] ; 由于系统并未采用
                 并发控制来执行交易或并发控制跨域场景下性能较差, 吞吐量较低.
                    2) 扩展性方面: 为了满足在全球范围内大规模部署, 系统需要确保可扩展到数百数千个节点. 然而, 主流共识
                 算法采用一主多备架构, 只有主节点支持写操作, 其他节点只支持读操作, 写操作的可扩展性差                             [31] . 除此之外, 不
                 合适的分片策略在影响性能的同时也会降低扩展能力.
                    3) 可用性方面: 可用性指跨域联盟链能容忍节点和数据中心宕机的能力. 区块链系统通过将数据在多个数据
                 中心复制保证可用性. 这样在部分节点宕机或网络分区时, 系统仍可对外提供服务. 但高可用性带来了高跨域复制
                 开销, 影响系统的性能      [20] . 并且共识协议要求副本间保持实时同步, 同样影响系统的性能.
                    由此可见, 跨域部署时性能、扩展性和可用性带来的挑战集中在区块链系统的共识算法、并发控制和分片策
                 略上. 为了更好地理解这些挑战, 本文首先介绍联盟链的工作流程: 首先, 共识协议的主节点将交易打包生成区块,
   229   230   231   232   233   234   235   236   237   238   239