APP下载

一种基于区块链的云资源调度架构概论

2020-07-20赵月左成章杨坚

科学与信息化 2020年16期
关键词:完整性区块链云计算

赵月 左成章 杨坚

摘 要 云计算模型中,由于应用服务在调度、分配、部署等方面相对复杂,因此需要专门的云计算调度方法来确保云数据的安全性。本文介绍了一种针对云任务调度信息可信存储的分布式云任务调度架构。本架构结合了区块链和传统的云服务技术,来解决了云任务的正确性和安全性问题,也解决了系统故障造成的重大数据丢失问题。 本架构主要包括云集群、控制系统、区块链网络和云数据库4个部分。系统将云任务调度信息的哈希数据存储到区块链网络中,并将存储原始数据到云数据库中,这样保证云任务在云集群中执行。

关键词 云计算;任务调度;区块链;安全;完整性

Abstract In cloud computing model,as the application services have complex scheduling, composition, configuration and deployment conditions,we demand appropriate cloud computing scheduling strategy to ensure cloud data security.This paper introduces a trusted distributed audit method for cloud task scheduling, which is used for the trusted storage of cloud task scheduling information in the cloud cluster.This method mainly uses a distributed solution that combines block chain technology and traditional cloud server to solve the problem of integrity and security of cloud task scheduling, in order to prevent potential.The architecture of this paper is composed of four parts: cloud cluster, control system, block chain network,and cloud database.We store the hash data of cloud task scheduling information into blockchain network and store the original data to the cloud data base, which guarantees the cloud task within the cloud cluster.

Key Words cloud computing, scheduling strategy, block chain, security, integrity

引言

隨着互联网时代的发展,世界的数据量以指数级的速度迅速增加,我们已进入大数据时代。在大数据时代,数据不断被收集和分析。一些公司和组织正使用他们收集到的数据来为我们提供个性化服务。今天,数据已成为我们这个时代的宝贵财富。如何处理海量数据,如何为用户提供方便快捷的服务,是互联网发展过程中需要解决的难题[1]。

在这种背景下,云计算应运而生。云计算为终端用户提供计算机基础设施和应用程序服务。云计算模型中的应用程序服务具有复杂的调度、组合、配置和部署条件。即使在多条件的要求下,也可以根据时间的变化来平衡虚拟服务的调度。因此,优化云计算调度策略以保证云数据的安全和弹性能力的需求日益突出。

区块链作为一个不可变的分类账,允许以分散的方式进行交易,一定程度上解决了云计算技术在数据安全保护等方面的缺陷。基于区块链的应用如雨后春笋般涌现,涉及金融服务、声誉系统、物联网等众多领域[2]。早在2008年,中本聪提出了去中心化加密货币—比特币(bitcoin)的设计构想。2009 年,作为区块链技术最成功的应用场景之一比特币系统开始运行。

区块链在我国还处于起步阶段,区块链基于自身技术优势,可以广泛应用于金融服务、供应链管理、文化娱乐、智能制造、社会公益以及教育就业等多个领域。为了协调推进区块链技术和应用发展,国内先后成立各种类型的区块链产业联盟。国内大量企业及组织开始涉足区块链行业,着手研发或推出从基础设施平台到行业应用的产品、服务和解决方案[1]。国家互联网信息办公室2019年1月10日发布《区块链信息服务管理规定》,自2019年2月15日起施行。

区块链系统体系结构如图1所示。区块链系统由数据层、网络层、共识层、激励层、合约层、应用层7个部分组成[3]。数据层主要针对数据区块中的数据结构、存储形式、密钥机制等相关技术;网络层包括网络节点间的组网形式、数据的通信模式和验证等机制;共识层包括区块链采用的共识机制,是区块链架构的核心;激励层通过电子数字货币的制造和激励分配等机制,以维护区块链的安全性和稳定性;合约层是区块链可编程特性的基础,该层主要封装脚本代码和数据集;应用层为区块链技术应用的主要场景、应用软件、应用程序[4]。

数据中心是多系统集成的复杂系统。当前国内数据中心越来越重视标准化和模块化建设,采用结构化、层次化、模块化的规划设计方法,通过功能区数据中心设计,标准化的数据中心架构,达到数据中心的高可靠、易管理、可伸缩的目标。对于大多数中小企业,数据中心建设的投资巨大。因此,建立统一、开放、灵活的数据中心平台,以最大限度地整合资源、最广泛地整合,将有助于降低成本、提高质量[5]。云计算数据中心结构通常是分布式,通过网络设备将服务器、和存储设备进行连接,以此将计算机资源,管理和维护计算机设备进行整合。数据中心设备可以分布在不同的物理位置,也可以集中在同一个地方。将数据中心的物理资源和虚拟资源进行分布式动态管理面临着许多难题,首先如何将物理资源和虚拟资源进行有效结合,另外云计算应用的平台资源分布广泛、种类繁多,用户请求的实时动态变化等因素。

因此,建立一种满足各种性能和各方面利益的调度策略至关重要。本文介绍一种结合区块链和云任务调度的特点云任务调度方法,可以有效提高数据的保密性和可用性,在一定程度上降低了被攻击的风险[6]。

1系统描述

1.1 系统架构

本文介绍的云资源调度架构主要包括云集群、控制系统、云服务器(云数据库)和区块链网络等4部分组成,如图1所示。

云集群中对象间的通信行为称为事件,事件被认为是区块链网络的交易行为。区块链网络周期性存储对象间的交易行为。云集群直接(或者通过通信设备)与控制系统进行通信。

控制系统负责接收从云集群中收集到的数据,并向云集群发送任务调度命令。控制系统首先将收集到的数据通过哈希映射算法来保证数据完整性,然后周期性发送数据,并将原始数据和哈希数据分别发送到云服务器和区块链网络。

区块链网络主要有两个作用。将云集群中收集到的数据通过哈希算法转换后,以分布式存储在区块链网络中,保证数据的完整性和网络的稳定性。另外,区块链记录每次云服务器的反馈和数据库的访问信息,以供以后的信息回溯和验证。记录和验证信息都将以数据的方式被记录。

云数据库主要存储云集群收集的原始数据、控制系统发送的命令和云服务器的访问信息。云数据库和区块链网络协同工作保证所有的数据可追溯,一旦有入侵被检测到,恶意的节点就会被发现和确认。

云服务器负责处理来自云集群数据和数据访问记录数据,这与区块链网络具有相同的功能。云服务器通过请求区块链网络中的区块数据,来验证数据的完整性。另外,通过云集群和控制系统间的通信数据分析以及服务器分析能够检测早期的DDoS攻击。

在本系统中,主要包括5个实体间7个信息传输和处理过程。

实体ID登记:系统首先为加入到云集群中的每个实体登记一个ID号。实体收集在云集群中由云任务调度产生的记录文件,并将这些原始数据存储在云数据库中,同时将这些数据进行哈希运算后上传到区块链网络。

数据和命令传输:从云集群中收集到的数据以{时间,数据}格式发送到控制系统,控制系统将该数据发送到云数据库中,同时将该数据进行哈希运算后发送到区块链网络中。之后,控制系统将给云集群发送一些命令,这些命令也会被转化成{时间,数据}格式,记录在区块链中。

区块产生:从云集群中收集到的数据通过控制系统上传到区块链网络,这个过程被称为交易。交易具有鉴定、追踪、审计的功能。交易通过时间戳、前一区块的哈希值等信息来确认。当证实到一个区块生成时,整个区块链账本中将加入这个区块。

数据确认:为了保证在任何时间都能验证数据的一致性,云数据库和区块链网络需要周期性存储每条记录信息。然后是比较数据库中记录数据的哈希值和区块链中数据的哈希值是否相同。假如比较结果不一致,表明云集群中可能出现风险。区块链网络的交易顺序以Merkle树结构的形式进行保存。

数据检查:通过可信数据源收集到的数据,以时间的顺序存储在数据库和区块中。当控制系统检查到异常数据时,将根据具体的检查结果做出相应的处置。

1.2 数据结构

本文介绍的数据结构由{时间,信息}组成,其中信息主要包括以下几部分:

(1)事件标签:事件标签用于标记由实体发送或接受各类行为的静态命令信息。

(2)源地址ID:在云任务调度中,用于发送调度信息实体的ID。

(3)目的地址ID:在云任务调度中,用于接受调度信息实体的ID。

2分析总结

本文模拟仿真部署在Ethernet2.0环境。在本区块链平台中,部署了10个通信节点的区块链网络,使用Truffle框架并修改了其中的智能合约,采用了以太坊基金发布的JavaScript库-web3.js。Truffle是一个可进行智能合约开发的Ethernet开发框架,我们可以在该框架下进行编译和部署资源节点。具体操作如图2和图3所示。

试验起始阶段,系统将先创建一个区块链,之后平均每3秒创建一个区块。根据Merkle树结构和区块链的验证机制产生交易数据。

图4展示了不同大小数据包的平均响应时间。该图展示了不同大小数据包的生成时间的差异。

参考文献

[1] Barbara D.Mobile Computing and Database-A Survey[J]. IEEE Trans on Knowledge & Data Engineering,1999,11(1):108-117.

[2] Zheng Z,Xie S,Dai H,et al. An Overview of Blockchain Technology: Architecture, Consensus, and Future Trends[C].6th IEEE International Congress on Big Data. IEEE,2017:557-564.

[3] 袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016(3):481-494.

[4] 袁勇,倪晓春,曾帅,等.区块链共识算法的发展现状与展望[J].自动化学报,2018,44(11):2011-2022.

[5] Chen T,Gao X,Chen G. The features, hardware, and architectures of data center networks: A survey[J]. Journal of Parallel and Distributed Computing,2016(96):45-74.

[6] Zhu H,Wang Y,Hei X,et al.A Blockchain-Based Decentralized Cloud Resource Scheduling Architecture[C].2018 International Conference on Networking and Network Applications.IEEE Computer Society,2018:51.

作者簡介

赵月(1988-),男,河南民权人;学历:本科,职称:工程师,现就职单位:中国联合网络通信有限公司河南省分公司,研究方向:信息系统集成、电子与智能化、信息安全服务项目建设、维护等。

左成章(1986-),男,河南卫辉人;学历:硕士,职称:工程师,现就职单位:中国联合网络通信有限公司新乡市分公司,研究方向:政企客户网络规划、建设、维护等。

杨坚(1991-),男,河南开封人;学历:硕士,职称:工程师,现就职单位:中国联合网络通信有限公司河南省分公司,研究方向:系统集成、电子智能化、信息化项目建设、维护等。

程涛(1982-),男,河南新乡人;学历:学士,职称:工程师,现就职单位:中国联合网络通信有限公司新乡市分公司,研究方向:政企客户网络规划、建设、维护等。

路景刚(1978-),男,河南新乡人;职称:工程师,现就职单位:中国联合网络通信有限公司新乡市分公司,研究方向:集团客户网络组建、分析、优化等。

猜你喜欢

完整性区块链云计算
酶可提高家禽的胃肠道完整性和生产性能
防止调度自动化系统漏监视告警的一些措施
区块链技术的应用价值分析
“区块链”的苟且、诗和远方
基于区块链技术的数字货币与传统货币辨析
基于云计算的移动学习平台的设计
实验云:理论教学与实验教学深度融合的助推器
云计算中的存储虚拟化技术应用
用“区块链”助推中企走出去
谈书法作品的完整性与用字的准确性