关键词:
多云环境
区块链
联邦学习
智能合约
共识算法
摘要:
早期的云计算环境存在供应商锁定和对单一云的依赖问题,随着云服务提供商不断增加,用户对多云环境需求越发显著。但由于商业竞争关系,多云之间往往很难达成协作。区块链技术的诞生与发展为协作问题研究提供了强有力的技术支撑。早期的区块链技术一般作为支撑加密货币的底层技术存在,而智能合约技术使其能够承载复杂的运行逻辑,扩展了其使用场景。如今的区块链技术更多的被当做一个提供“信任”基础的底层网络,被大量使用于需要多方协作的场景当中。其去中心化特性使得不依赖第三方协作成为可能,链上数据不可篡改性保证了对协作行为的可靠记录,而对智能合约的支持使得协作过程可编程和自动化。这种基于区块链的去中心化协作模型为多云环境下的协作场景注入了新的活力,但相应的挑战也伴随而来。从协作内容上,可以将其归纳为三个层级:资源层、数据层和业务层。不同层级的协作所面临的挑战重点各不相同,资源层协作最关心的是效率问题,例如多云协作资源共享或交易,如何使云资源在协作参与者间高效分配;数据层协作的核心挑战是隐私问题,例如协作数据共享如何避免隐私数据泄露,尤其区块链上数据透明的特点加重了这一问题;业务层协作的典型挑战则是协作安全与性能问题,例如基于区块链的协作联邦学习业务,由于没有中心节点对协作进行监管,设备可以很容易发起攻击,同时,区块链的引入也会给协作业务带来额外的时延和存储等性能开销。本论文基于早期研究者提出的一种多云环境下的通用协作模型:“云联盟”,深入基于区块链的协作场景,以协作联邦学习业务贯穿始终,展开了对多云环境下,基于区块链协作的关键技术研究,包括了上述三个层面、四个挑战:1.基于区块链协作的高效性研究(资源层):针对资源利用率不足以及协作设备资源匮乏的问题,在云联盟内部,多云需协作交换资源优化配置,协作业务如联邦学习业务的部分参与设备需要购买资源弥补不足。本文将该场景建模为多单元双边组合拍卖问题,设计了基于区块链的高效拍卖机制,以实现资源的高效利用。首先提出了一种基于贪心的匹配算法,该算法能够达成近似最优的经济效率。其次提出了一种基于第二价格和用户反馈的定价算法,在激励参与者提供高质量服务的同时,限制其通过调整报价获取高额利润的行为,此行为会导致报价不稳定,影响经济效率。最后提出了基于交易权重的评分算法,通过区块链上不可篡改的交易记录,保障了用户评分的公平性和安全性。2.基于区块链协作的隐私性研究(数据层):在云联盟中,多云可对协作参与者的行为进行记录和评分,通过共享评分为后续业务开展提供参考。由于云服务提供商与其连接的设备或用户的关系属于隐私信息,因此在共享评分时还需考虑到隐私保护问题。本文以协作联邦学习为典型业务,设计了一种可保护隐私的区块链用于共享对业务参与设备的评分。首先提出了基于受限主观逻辑模型的评分算法,该算法通过分析联邦学习参与节点的行为历史,评估节点可信度。其次设计了一种混合配对隐私共享算法,在共享评分的同时,隐藏评分与被评分节点间的商业联系。最后设计了双重验证机制,避免节点评分在上链之前被篡改。3.基于区块链协作的安全性研究(业务层):云联盟所提供的服务与用户业务、数据紧密相关,因此对协作安全性提出了更高要求。本文以联邦学习这一典型业务为切入点,设计了基于区块链的安全协作联邦学习机制。首先通过解决联邦学习中的设备挑选问题来保障协作安全性,利用夏普利值评估设备贡献度,设计了基于贡献度的探索和利用算法逐步排除可能的攻击者。然后考虑到贡献度计算的高复杂度,设计了基于区块链分片的可靠夏普利值并行计算算法,减少计算所带来的时间开销。4.基于区块链协作的性能优化研究(业务层):实现大规模业务层协作还面临两个重要难题:时延和存储。以本文的协作联邦学习业务为例,相比于中心化联邦学习系统,区块链的引入带来了额外时延开销,随着区块链持续增长,存储开销也不断增加。本文提出了一种针对协作联邦学习的轻量级区块链。首先设计了基于纠删码的周期性刷新存储机制,充分利用大量协作参与设备有限的存储空间,保障存储可靠性的同时,减少存储开销。其次提出了基于可靠性证明的共识算法以及最大权益节点聚合算法,能够减少不可靠设备的影响,降低系统时延。