会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 区块链 / 区块链路由器及区块链网络

区块链路由器及区块链网络

申请号 CN201910942912.3 申请日 2019-09-30 公开(公告)号 CN112583712A 公开(公告)日 2021-03-30
申请人 北京京东尚科信息技术有限公司; 北京京东世纪贸易有限公司; 发明人 者文明; 杨文锋; 刘瑞飞;
摘要 本申请提供一种区块链路由器及区块链网络,该区块链网络包括:区块链路由器、计算节点、存储节点和控制节点,区块链路由器通过网络层接收到服务路由请求;通过系统层基于内置的安全模块,采用预设共识算法确定响应所述服务路由请求的目标节点;所述目标节点为计算节点、存储节点、控制节点中的至少一种;通过路由层将所述服务路由请求通过所述网络层路由到所述目标节点,以使所述目标节点响应所述服务路由请求。本申请的区块链路由器可以基于安全模块进行共识选择目标节点进行路由,提高共识效率,并且通过设置计算节点、存储节点和控制节点,实现了数据计算、存储和流程控制的隔离,可以规范区块链网络数据处理、数据流转和数据存储。
权利要求

1.一种区块链路由器,其特征在于,包括:网络层,用于接收到服务路由请求;

系统层,用于基于内置的安全模块,采用预设共识算法确定响应所述服务路由请求的目标节点;所述目标节点为计算节点、存储节点、控制节点中的至少一种;

路由层,用于将所述服务路由请求通过所述网络层路由到所述目标节点,以使所述目标节点响应所述服务路由请求。

2.根据权利要求1所述的区块链路由器,其特征在于,所述路由层包括控制子路由层、计算子路由层和存储子路由层。

3.根据权利要求2所述的区块链路由器,其特征在于,所述网络层用于,接收服务注册中心广播的目标智能合约的控制节点的第一竞争请求;

所述控制子路由层用于,通过所述网络层广播所述第一竞争请求,并接收各控制节点返回的回复信息,所述控制节点的回复信息包括所述控制节点的地址信息;

所述系统层用于,根据各控制节点的回复信息,确定所述目标智能合约对应的目标控制节点;

所述控制子路由层还用于,通过所述网络层广播所述目标控制节点信息,以使所述服务注册中心对所述目标智能合约进行服务注册。

4.根据权利要求3所述的区块链路由器,其特征在于,包括:所述网络层用于,接收所述目标控制节点广播的所述目标智能合约的计算节点的第二竞争请求;

所述计算子路由层用于,通过所述网络层将所述第二竞争请求路由到各计算节点,并接收各计算节点返回的回复信息;

所述系统层用于,根据各计算节点的回复信息确定目标计算节点,所述计算子路由层还用于,通过所述网络层广播所述目标计算节点信息,以使所述目标控制节点向所述目标计算节点发送所述目标智能合约的数据处理部分安装包。

5.根据权利要求4所述的区块链路由器,其特征在于,包括:所述网络层用于,接收所述目标控制节点广播的所述目标智能合约的存储节点的第三竞争请求;

所述存储子路由层用于,通过所述网络层将所述第三竞争请求路由到各存储节点,并接收各存储节点返回的回复信息;

所述系统层用于,根据各存储节点的回复信息确定目标存储节点;

所述存储子路由层还用于,通过所述网络层广播所述目标存储节点信息,以使所述目标控制节点向所述目标存储节点发送所述目标智能合约的存储部分安装包。

6.根据权利要求2所述的区块链路由器,其特征在于,所述系统层用于,采用客户端指定的目标共识算法确定所述目标智能合约对应的目标控制节点,所述区块链路由器支持多种共识算法。

7.根据权利要求2所述的区块链路由器,其特征在于,包括:所述网络层用于,接收客户端发送的调用智能合约的服务请求,所述调用智能合约的服务请求包括请求的目标服务的标识信息;

所述控制子路由层用于,根据所述目标服务的标识信息获取对应的服务URL,并通过所述网络层将携带有所述目标服务的标识信息及对应的服务URL的调用请求发送给所述目标服务对应的目标控制节点,以使所述目标控制节点根据所述调用请求调用对应的智能合约;

所述网络层还用于,将所述目标控制节点发送的智能合约执行结果反馈给所述客户端。

8.根据权利要求7所述的区块链路由器,其特征在于,包括:所述控制子路由层用于,根据所述目标服务的标识信息从本地查找对应的服务URL;若所述区块链路由器本地不存在所述目标服务的标识信息对应的服务URL,则向所述服务注册中心发送查询请求,并接收所述服务注册中心根据所述查询请求返回的所述目标服务的标识信息对应的服务URL。

9.根据权利要求2所述的区块链路由器,其特征在于,包括:所述系统层用于,通过共识选举确定服务注册中心。

10.根据权利要求1-9任一项所述的区块链路由器,其特征在于,包括:所述系统层用于,基于内置的所述安全模块对所述网络层接收到的任意服务路由请求进行身份认证和鉴权。

11.根据权利要求1-9任一项所述的区块链路由器,其特征在于,所述预设共识算法为RAFT共识算法或POS共识算法。

12.一种区块链网络,其特征在于,包括如权利要求1-11任一项所述的区块链路由器、以及与所述区块链路由器通信连接的所述计算节点、存储节点和控制节点。

说明书全文

区块链路由器及区块链网络

技术领域

[0001] 本申请涉及互联网技术领域,尤其涉及一种区块链路由器及区块链网络。

背景技术

[0002] 随着互联网技术的飞速发展,通过服务器集群网络提供服务逐渐成为当前重要的服务方式。现有的提供服务的网络通常是中心化的网络,容易导致单点失效的问题。为了解
决这一问题,区块链网络应运而生,区块链网络是去中心化或部分去中心化的一个新方向。
[0003] 在区块链网络中,通常会在不同节点部署不同的智能合约,其中智能合约代表一种服务处理程序,而智能合约的安装、调用等功能需要交换数据、存储数据,实现区块链网
络的共识,均需要通过区块链网络中的路由器来实现。而现有的路由器通常都是针对传统
的网络的,用于将指定的数据包,从源IP地址发送到目的IP地址。因此现有的路由器无法满
足区块链网络的需求。

发明内容

[0004] 本申请提供一种区块链路由器及区块链网络,以适用于区块链网络中,并能够提高区块链网络的共识效率。
[0005] 本申请第一个方面提供一种区块链路由器,包括:
[0006] 网络层,用于接收到服务路由请求;
[0007] 系统层,用于基于内置的安全模块,采用预设共识算法确定响应所述服务路由请求的目标节点;所述目标节点为计算节点、存储节点、控制节点中的至少一种;
[0008] 路由层,用于将所述服务路由请求通过所述网络层路由到所述目标节点,以使所述目标节点响应所述服务路由请求。
[0009] 本申请第二个方面提供一种区块链网络,包括如第一方面所述的区块链路由器、以及与所述区块链路由器通信连接的所述计算节点、存储节点和控制节点。
[0010] 本申请提供的区块链路由器及区块链网络,区块链路由器通过网络层接收到服务路由请求;通过系统层基于内置的安全模块,采用预设共识算法确定响应所述服务路由请
求的目标节点;所述目标节点为计算节点、存储节点、控制节点中的至少一种;通过路由层
将所述服务路由请求通过所述网络层路由到所述目标节点,以使所述目标节点响应所述服
务路由请求。通过区块链路由器内置安全模块,可以基于安全模块,采用预设共识算法确定
目标节点,进行计算路由、存储路由及控制路由,提高共识效率,并且通过设置计算节点、存
储节点和控制节点,实现了数据计算、存储和流程控制的隔离,可以规范区块链网络数据处
理、数据流转和数据存储。

附图说明

[0011] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申
请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以
根据这些附图获得其他的附图。
[0012] 图1为本申请一实施例提供的区块链网络的结构示意图;
[0013] 图2为本申请一实施例提供的区块链路由器的结构示意图;
[0014] 图3为本申请另一实施例提供的区块链网络的结构示意图;
[0015] 图4为本申请再一实施例提供的智能合约的安装流程示意图;
[0016] 图5为本申请一实施例提供的智能合约的调用流程示意图;
[0017] 图6为本申请一实施例提供的控制路由报文的示意图;
[0018] 图7为本申请一实施例提供的数据路由报文的示意图;
[0019] 图8为本申请一实施例提供的存储报文的示意图;
[0020] 图9为本申请一实施例提供的区块链路由器的逻辑结构示意图;
[0021] 图10为本申请一实施例提供的服务的处理方法的流程示意图;
[0022] 图11为本申请一实施例提供的计算机设备的结构示意图。
[0023] 通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为
本领域技术人员说明本申请的概念。

具体实施方式

[0024] 为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员
在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0025] 首先对本申请所涉及的名词进行解释:
[0026] PKI:Public Key Infrastructure,公钥基础设施,在区块链路由器内置PKI安全模块,使得区块链路由器具备可信的计算的安全环境,对自身及外部实体通过PKI技术进行
认证和授权。使得区块链路由器可以采用高效的共识算法,比如RAFT共识算法、POS共识算
法等。
[0027] RAFT共识算法:是一种分布式一致性算法,Raft是能够实现分布式系统强一致性的算法,每个节点有三种状态Follower,Candidate,Leader。实现Raft共识算法两个最重要
的事是:选主和复制日志。
[0028] POS共识算法:是一种随机选择的共识算法。
[0029] 智能合约:是部署在区块链网络的节点的程序,至少包含控制部分,还可以包含数据处理部分,存储部分,此三部分可以在同一个节点,也可以安装在不同的节点,对于一个
智能合约,节点的选取通过区块链路由器共识算法来选择,共识算法可以在智能合约注册
时指定。可部署在物理机器,或者部署在虚拟机上,或者Docker容器中。
[0030] 此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。在以下各实施例的描述中,“多个”的含义是两
个以上,除非另有明确具体的限定。
[0031] 下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
[0032] 实施例一
[0033] 本实施例提供一种区块链网络,用于为客户端提供相应的服务。
[0034] 如图1所示,为本实施例提供的区块链网络的结构示意图,该区块链网络包括:区块链路由器、控制节点、计算节点和存储节点。
[0035] 其中,m、n、s均为正整数。区块链路由器内置有安全模块,具体可以是PKI安全模块,在安全模块存放有PKI密钥,用于认证路由报文是否来自于合法的区块链路由器。
[0036] 区块链网络中可以包括多个区块链路由器、多个计算节点、多个存储节点以及多个控制节点。
[0037] 区块链路由器用于接收服务路由请求,并基于安全模块,采用预设共识算法确定目标节点,并将服务路由请求路由到目标节点,目标节点为计算节点、存储节点、控制节点
中的至少一种。
[0038] 具体的,如图2所示,区块链路由器包括:网络层、系统层以及路由层,其中网络层用于接收到服务路由请求;系统层用于基于内置的安全模块,采用预设共识算法确定响应
所述服务路由请求的目标节点;所述目标节点为计算节点、存储节点、控制节点中的至少一
种;路由层用于将所述服务路由请求通过所述网络层路由到所述目标节点,以使所述目标
节点响应所述服务路由请求。
[0039] 计算节点用于在被确定为目标节点时,接收待处理数据,并对待处理数据进行相应的数据处理。
[0040] 存储节点,用于在被确定为目标节点时,接收数据请求,并根据数据请求,进行相应的数据存储或读取处理。
[0041] 控制节点,用于在被确定为目标节点时,接收控制消息,并根据控制消息进行相应的流程控制。
[0042] 具体的,区块链路由器的网络层可以接收客户端的服务路由请求,也可以接收控制节点的服务路由请求,服务路由请求可以是任何需要区块链路由器进行路由的请求,比
如区块链路由器可以接收客户端的服务请求,需要区块链路由器的路由层将服务请求路由
到相应的控制节点来响应客户端;比如区块链路由器可以接收控制节点发送的计算节点竞
争请求,需要将竞争请求路由到各计算节点,区块链路由器的网络层接收控制节点发送的
存储节点竞争请求,需要路由层将竞争请求路由到各存储节点,等等。
[0043] 计算节点可以接收控制节点发送的智能合约安装包,即待处理数据,进行智能合约安装部署处理。还可以接收区块链路由器发送的竞争请求,根据竞争请求响应区块链路
由器,等等。
[0044] 存储节点可以接收控制节点发送的数据请求,进行相应的数据存储或读取处理,也可以接收计算节点发送的数据请求,还可以接收区块链路由器发送的竞争请求,并响应
区块链路由器;等等。
[0045] 控制节点可以接收区块链路由器发送的竞争请求,并响应区块链路由器;还可以接收服务注册中心发送的智能合约的计算节点和存储节点部署请求,进行相应的流程控
制;等等。
[0046] 本实施例通过区块链路由器内置安全模块,可以基于安全模块,采用预设共识算法确定目标节点,进行计算路由、存储路由及控制路由,提高共识效率,并且通过设置计算
节点、存储节点和控制节点,实现了数据计算、存储和流程控制的隔离,可以规范区块链网
络数据处理、数据流转和数据存储。
[0047] 实施例二
[0048] 本实施例对实施例一提供的区块链网络做进一步补充说明。
[0049] 如图3所示,为本实施例提供的区块链网络的结构示意图。
[0050] 作为一种可实施的方式,在上述实施例一的基础上,可选地,该区块链网络还可以包括服务注册中心。可选地,路由层包括控制子路由层、计算子路由层和存储子路由层,以
分别实现相应的路由功能。
[0051] 其中,服务注册中心,用于接收服务注册请求,并根据服务注册请求进行服务注册。
[0052] 服务注册中心可以是区块链网络的分布式节点,通过区块链路由器的系统层进行共识选举而成。服务注册中心用于维护注册的服务表,可以包括服务名称和服务URL,还可
以包括其他相关信息,具体可以根据实际需求设置。当区块链路由器查找不到相应的服务
表时,可以向服务注册中心同步查询。服务注册中心也可以是一个具有安全计算环境的节
点,即可以在服务注册中心内置PKI安全模块,保证数据的安全性。
[0053] 可选地,服务注册中心,具体用于接收客户端发送的目标智能合约的服务注册请求,并广播目标智能合约的控制节点的第一竞争请求;目标智能合约的服务注册请求包括
待注册的目标智能合约的标识信息;
[0054] 区块链路由器的网络层接收第一竞争请求,进而由控制子路由层确定路由路径,并根据确定的路由路径通过网络层进行广播,并接收各控制节点返回的回复信息,区块链
路由器的系统层根据各控制节点的回复信息,确定目标智能合约对应的目标控制节点,并
由控制子路由层通过网络层进行广播;控制节点的回复信息包括控制节点的地址信息;
[0055] 服务注册中心接收区块链路由器广播的目标控制节点信息,对目标智能合约进行服务注册。
[0056] 具体的,用户可以通过客户端发起智能合约的服务注册请求,服务注册中心接收客户端发送的目标智能合约的服务注册请求,并广播对目标智能合约进行控制的控制节点
的竞争请求,为了区分称之为第一竞争请求。区块链路由器的网络层接收第一竞争请求,相
当于接收到一服务路由请求,各控制节点预先在服务注册中心注册有其所能提供的服务,
比如哪些控制节点可以提供智能合约的服务,区块链路由器的控制子路由层可以根据目标
智能合约的标识信息来确定哪些控制节点可以竞争对目标智能合约的控制,在确定路由路
径后可以向这些控制节点广播第一竞争请求,各控制节点接收到第一竞争请求后,可以返
回回复信息,返回的回复信息包括控制节点的地址信息,还可以包括要参与竞争的表示信
息。在接收到各控制节点返回的回复信息后,系统层可以采用预设共识算法从这些控制节
点中确定出控制目标智能合约的目标控制节点,并由控制子路由层通过网络层广播确定好
的目标控制节点相关信息,比如目标控制节点的地址信息及其他相关信息,服务注册中心
接收到目标控制节点相关信息后,对目标智能合约进行服务注册,比如记录服务名称(可以
是目标智能合约的标识信息)和对应的服务URL,服务URL可以是目标控制节点的地址,也可
以是目标控制节点提供的目标智能合约的URL。只要能使区块链路由器在进行路由时能够
找到相应的控制节点即可。
[0057] 可选地,服务注册中心还用于向目标控制节点发送部署目标智能合约的计算节点和/或存储节点的部署请求;
[0058] 目标控制节点根据部署请求,广播目标智能合约的计算节点的第二竞争请求以及目标智能合约的存储节点的第三竞争请求;
[0059] 区块链路由器的网络层接收第二竞争请求,由计算子路由层确定路由路径,通过网络层将第二竞争请求路由到各计算节点,并接收各计算节点返回的回复信息,由系统层
根据各计算节点的回复信息确定目标计算节点,并由计算子路由层通过网络层进行广播;
[0060] 区块链路由器的网络层接收第三竞争请求,由存储子路由层确定路由路径,通过网络层将第三竞争请求路由到各存储节点,并接收各存储节点返回的回复信息,由系统层
根据各存储节点的回复信息确定目标存储节点,并由存储子路由层通过网络层进行广播;
[0061] 目标控制节点向目标计算节点发送目标智能合约的数据处理部分安装包,并向目标存储节点发送目标智能合约的存储部分安装包;
[0062] 目标计算节点接收目标智能合约的数据处理部分安装包,并安装部署目标智能合约的数据处理部分;
[0063] 目标存储节点接收目标智能合约的存取部分安装包,并安装部署目标智能合约的存取部分。
[0064] 具体的,为了实现流程控制、数据计算和存储的隔离,还需要部署目标智能合约对应的目标计算节点和目标存储节点,在目标计算节点安装目标智能合约的数据处理部分,
在目标存储节点安装目标智能合约的存取部分。
[0065] 对于目标计算节点和目标存储节点,也需要由区块链路由器通过一定的共识算法进行共识来确定。比如RAFT共识算法、POS共识算法等。具体执行过程与目标控制节点的确
定过程相似,在此不再赘述。
[0066] 可选的,区块链路由器中可以存储并维护服务表,可以包括服务名称和服务URL,在路由时,若区块链路由器在本地查找不到,还可以去服务注册中心查找。区块链路由器与
服务注册中心可以通过PKI机制进行身份认证,还可以通过底层共识算法选举服务注册中。
[0067] 可选地,目标智能合约的服务注册请求还包括目标共识算法的标识信息;
[0068] 区块链路由器在接收到各控制节点返回的回复信息后,由系统层采用目标共识算法确定目标智能合约对应的目标控制节点,区块链路由器支持多种共识算法。
[0069] 具体的,区块链路由器可以支持多种共识算法,用户可以通过客户端指定本次服务要采用的目标共识算法,区块链路由器的系统层可根据用户指定的目标共识算法进行共
识来确定目标控制节点。
[0070] 对于目标计算节点、目标存储节点的共识同样支持多种共识算法。
[0071] 可选地,区块链路由器的网络层还可以接收客户端发送的调用智能合约的服务请求,调用智能合约的服务请求包括请求的目标服务的标识信息;
[0072] 区块链路由器的控制子路由层根据目标服务的标识信息获取对应的服务URL,并将携带有目标服务的标识信息及对应的服务URL的调用请求发送给目标服务对应的目标控
制节点;
[0073] 目标控制节点根据调用请求,向待调用的智能合约的数据处理部分所在的目标计算节点发送数据处理请求,以使目标计算节点执行待调用的智能合约的数据处理部分;
[0074] 目标控制节点接收目标计算节点返回的执行结果,并反馈给客户端。可选地,目标控制节点可将该执行结果发送给区块链路由器,由区块链路由器网络层将执行结果反馈给
客户端。
[0075] 可选地,目标控制节点还根据调用请求向待调用的智能合的存取部分所在的目标存储节点发送数据请求,以使目标存储节点执行待调用的智能合约的存取部分,进行相应
的数据存储或读取处理;
[0076] 目标控制节点还接收目标存储节点返回的执行结果,并反馈给客户端。可选地,目标控制节点可将该执行结果发送给区块链路由器,由区块链路由器网络层将执行结果反馈
给客户端。
[0077] 可选地,目标计算节点在有数据存取需求时,从目标控制节点获取待调用的智能合约的存取部分所在的目标存储节点的地址信息,并根据目标存储节点的地址信息调用待
调用的智能合约的存取部分。
[0078] 可选地,区块链路由器的控制子路由层可根据目标服务的标识信息从本地查找对应的服务URL;若区块链路由器本地不存在目标服务的标识信息对应的服务URL,则向服务
注册中心发送查询请求;
[0079] 服务注册中心接收查询请求,并向区块链路由器返回目标服务的标识信息对应的服务URL。
[0080] 作为另一种可实施的方式,在上述实施例一的基础上,可选地,预设共识算法为RAFT共识算法或POS共识算法。
[0081] 具体的,由于区块链路由器内置有安全模块,因此可以采用高效的共识算法,比如RAFT共识算法、POS共识算法及其他高效的共识算法。在保证数据安全的基础上,提高共识
效率。
[0082] 示例性地,如图4所示,为本实施例提供的智能合约的安装流程示意图。
[0083] 示例性地,如图5所示,为本实施例提供的智能合约的调用流程示意图。
[0084] 对于区块链网络中的各节点(包括服务注册中心、区块链路由器、控制节点、计算节点、存储节点),其具体的实现如下:
[0085] 1、控制节点
[0086] 控制节点能处理控制路由报文中的控制命令字、智能合约名、源服务名称、服务的URL、控制命令体、共识算法。如图6所示,为本实施例提供的控制路由报文的示意图。
[0087] 其中,路由类型:指明控制子路由层;版本:指定控制层协议名称,以及版本;长度:指定随后到保留字段长度;控制命令字,包含{安装,升级,卸载,扩容,负载调度,监控,缩
减,启动,停止,通知}等,控制命令字控制智能合约的生命周期;报文校验值:对版本到共识
算法等做相关可验证的指纹算法,例如Hash算法,再做签名,区块链路由器的系统层需要对
此信息做验证,判断是否为可信的路由器传来的信息;共识算法:指明对应路由希望采用的
共识算法,共识算法可以指明是路由器内置本身的算法,此时的可以选用性能高的算法,也
可以指定是源服务对应URL指定的机器参与共识,对应的共识算法。
[0088] 在智能合约安装阶段,基于上述的控制路由报文,区块链路由器的系统层可通过共识算法,根据智能合约的存储协议、数据协议,选择相关的数据处理和存储节点,最后将
智能合约部署安装到目标节点。
[0089] 2、计算节点
[0090] 计算节点,接收传入的数据,进行数据计算和数据处理后,输出数据。另外还需处理控制节点传入的控制报文。能处理数据路由报文中的源服务的名称、源URL地址、数据长
度、数据体、目的服务数据体名称、目的服务URL地址、目的服务2名称、目的服务2URL地址。
如图7所示,为本实施例提供的数据路由报文的示意图。
[0091] 其中,数据体:可以遵循不同的数据体协议标准。数据体协议标准,可以运行不同的数据处理程序,数据处理程序可以运行在不同的虚拟机上,数据处理程序,以及运行数据
处理程序的虚拟机,可以在数据体协议中指定。
[0092] 在智能合约的调用阶段,区块链路由器的计算子路由层可指明数据的来源:{源服务的名称,源URL地址,数据体},数据的目的:{目的服务名称,目的服务URL},路由器根据注
册的服务名称以及服务URL完成数据路由,其中数据的目的可以指定多个。
[0093] 3、存储节点
[0094] 存储节点接收传入的数据,进行数据的存储和读取。另外还需能处理控制节点传来的控制报文。存储节点能处理区块链路由器传来的存储报文中的源服务的名称、源URL地
址、数据长度、数据体、数据校验值、目的存储服务名称、目的存储服务URL地址、目的存储服
务2名称、目的存储服务2URL地址。如图8所示,为本实施例提供的存储报文的示意图。
[0095] 在智能合约的调用阶段,区块链路由器的存储子路由层可指明数据存储的协议以及数据的目的:{存储协议名称,源服务名称,存储目的URL,存储数据内容,内容Hash},其中
数据的目的可以有多个。此外,存储协议可以在版本字段中指定。
[0096] 本申请实施例的区块链网络,划分了控制节点、计算节点和存储节点,将数据计算、流程控制和数据存储分开,按照在计算节点的数据体报文中可以定义数据子协议,在存
储节点数据体报文中可以定义存储子协议,将不同区块链的数据和存储连接起来,解决跨
链访问问题。
[0097] 4、区块链路由器
[0098] 区块链路由器具备可信计算的安全环境,可内置PKI秘钥,对自身以及外部实体通过PKI技术进行认证和授权,在区块链路由器内主要实现了区块链共识功能、路由功能、身
份验证功能,区块链路由器可以包括系统层、网络层以及路由层。如图9所示,为本实施例提
供的区块链路由器的逻辑结构示意图。
[0099] 其中,系统层:底层为硬件驱动层,上层包含安全认证模块、共识模块、以及控制管理模块。
[0100] 具体的,安全认证模块:具备可信计算的环境,内置PKI的密钥,密钥存放在系统安全区,能认证路由报文来自于合法的路由器。
[0101] 共识模块:内置安全共识算法,以插件的方式可以实现,可以通过安全认证模块更新共识算法;因为为可信环境,可以使用高效的共识算法,如Raft,POS;在共识阶段为路由
层的三种路由请求实现共识算法,选取共识节点。
[0102] 控制管理模块:实现区块链路由器本身的逻辑,系统自举,处理路由请求,调用安全认证模块、共识模块,完成路由转发功能。
[0103] 网络层:可以通过TCP/IP协议,HTTP/或HTTPS协议,以及其它P2P网络协议,路由层的报文嵌套在网络层中传输。
[0104] 路由层:分为包括控制子路由层、计算子路由层和存储子路由层,分别进行存储层路由、控制层路由、数据层路由。
[0105] 存储层路由:在智能合约安装阶段,通过区块链路由器的共识算法,根据智能合约的存储协议,数据协议,选择相关的数据处理和存储节点,最后将智能合约部署安装到目标
节点,此阶段可以通过实现控制层协议完成。
[0106] 数据层路由:在智能合约的计算阶段,指明数据的From:{源服务的名称,源URL地址,数据体},数据的To:{目的服务名称,目的服务URL},路由器根据注册的服务名称以及服
务URL完成数据路由,To可以指定多个。
[0107] 版本:指定数据层协议的名称和版本。
[0108] 长度:指定随后到保留字段长度。
[0109] 报文校验值:对版本到共识算法等做相关可验证的指纹算法,例如Hash算法,再做签名,路由器需要对此信息做验证,判断是否为可信的路由器传来的信息。
[0110] 共识算法:指明对应路由希望采用的共识算法,共识算法可以指明是路由器内置本身的算法,此时的可以选用性能高的算法,也可以指定是源服务对应URL指定的机器参与
共识所对应的共识算法。
[0111] 存储层路由:在智能合约存储数据,实现数据的存储,指明数据存储的协议以及目的To:{存储协议名称,源服务名称,存储目的URL,存储数据内容,内容Hash},可以有多个
To。
[0112] 存储的协议:可以在版本字段中指定。
[0113] 路由器维护:路由器维护{服务名称,服务URL}表,先查找本地的缓存的{服务名称,服务URL表},如果查不到去区块链上的服务注册中心查找同步,路由器和服务注册中
心,通过PKI机制进行身份认证,通过底层共识算法选举服务注册中心。
[0114] 5、服务注册中心
[0115] 服务注册中心,可以是区块链网络的分布式的节点,通过区块链路由器选举而成,维护{服务名称,服务URL}表,当区块链路由器查找不到相应的{服务名称,服务URL}表时,
向服务注册中心同步查询,可以是可信计算节点。
[0116] 需要说明的是,本实施例中各可实施的方式可以单独实施,也可以在不冲突的情况下以任意组合方式结合实施本申请不做限定。
[0117] 本实施例通过区块链路由器内置安全模块,可以基于安全模块,采用预设共识算法确定目标节点,进行计算路由、存储路由及控制路由,提高共识效率,并且通过设置计算
节点、存储节点和控制节点,实现了数据计算、存储和流程控制的隔离,可以规范区块链网
络数据处理、数据流转和数据存储。并且可以实现智能合约的自动安装,提高用户操作的便
捷性,从而提高用户体验。
[0118] 实施例三
[0119] 本实施例提供一种服务的处理方法,用于上述实施例的区块链网络。本实施例的执行主体为服务的处理装置,该装置可以设置在计算机设备中。该计算机设备为上述的区
块链路由器。
[0120] 如图10所示,为本实施例提供的服务的处理方法的流程示意图,该方法包括:
[0121] 步骤301,区块链路由器接收服务路由请求。
[0122] 步骤302,区块链路由器基于内置的安全模块,采用预设共识算法确定响应服务路由请求的目标节点。
[0123] 其中,目标节点为计算节点、存储节点、控制节点中的至少一种。
[0124] 步骤303,区块链路由器将服务路由请求路由到目标节点,以使目标节点响应服务路由请求。
[0125] 需要说明的是,本实施例中,各步骤的具体操作与上述区块链网络实施例中的区块链路由器一致,在此不再赘述。
[0126] 本实施例提供的服务的处理方法,通过区块链路由器内置安全模块,可以基于安全模块,采用预设共识算法确定目标节点,进行计算路由、存储路由及控制路由,提高共识
效率,并且通过设置计算节点、存储节点和控制节点,实现了数据计算、存储和流程控制的
隔离,可以规范区块链网络数据处理、数据流转和数据存储。
[0127] 实施例四
[0128] 本实施例对实施例一提供的方法做进一步补充说明。
[0129] 作为一种可实施的方式,在上述实施例一的基础上,可选地,该方法还包括:
[0130] 步骤4011,区块链路由器接收服务注册中心广播的目标智能合约的控制节点的第一竞争请求。
[0131] 步骤4012,区块链路由器广播第一竞争请求。
[0132] 步骤4013,区块链路由器接收各控制节点返回的回复信息,控制节点的回复信息包括控制节点的地址信息。
[0133] 步骤4014,区块链路由器根据各控制节点的回复信息,确定目标智能合约对应的目标控制节点。
[0134] 步骤4015,区块链路由器广播目标控制节点信息,以使服务注册中心对目标智能合约进行服务注册。
[0135] 可选地,该方法还可以包括:
[0136] 区块链路由器接收目标控制节点广播的目标智能合约的计算节点的第二竞争请求以及目标智能合约的存储节点的第三竞争请求;
[0137] 区块链路由器将第二竞争请求路由到各计算节点,并接收各计算节点返回的回复信息,根据各计算节点的回复信息确定目标计算节点,并进行广播,以使目标控制节点向目
标计算节点发送目标智能合约的数据处理部分安装包;
[0138] 区块链路由器接收第三竞争请求,路由到各存储节点,并接收各存储节点返回的回复信息,根据各存储节点的回复信息确定目标存储节点,并进行广播,以使目标控制节点
向目标存储节点发送目标智能合约的存储部分安装包。
[0139] 可选地,区块链路由器根据各控制节点的回复信息,确定目标智能合约对应的目标控制节点,包括:
[0140] 区块链路由器采用客户端指定的目标共识算法确定目标智能合约对应的目标控制节点,区块链路由器支持多种共识算法。
[0141] 可选地,该方法还可以包括:
[0142] 区块链路由器接收客户端发送的调用智能合约的服务请求,调用智能合约的服务请求包括请求的目标服务的标识信息;
[0143] 区块链路由器根据目标服务的标识信息获取对应的服务URL,并将携带有目标服务的标识信息及对应的服务URL的调用请求发送给目标服务对应的目标控制节点,以使目
标控制节点根据调用请求调用对应的智能合约;
[0144] 区块链路由器将智能合约执行结果反馈给客户端。
[0145] 需要说明的是,该方法还可以包括上述区块链网络中区块链路由器可执行的所有步骤,具体操作与上述区块链网络实施例一致,在此不再一一赘述。
[0146] 需要说明的是,本实施例中,各步骤的具体操作与上述区块链网络实施例中的区块链路由器一致,在此不再赘述。
[0147] 需要说明的是,本实施例中各可实施的方式可以单独实施,也可以在不冲突的情况下以任意组合方式结合实施本申请不做限定。
[0148] 本实施例提供的服务的处理方法,通过区块链路由器内置安全模块,可以基于安全模块,采用预设共识算法确定目标节点,进行计算路由、存储路由及控制路由,提高共识
效率,并且通过设置计算节点、存储节点和控制节点,实现了数据计算、存储和流程控制的
隔离,可以规范区块链网络数据处理、数据流转和数据存储。
[0149] 在一些实施例中,还可以提供一种服务的处理方法,执行主体为上述区块链网络中的计算节点,具体操作步骤与上述实施例一致,在此不再赘述。
[0150] 在一些实施例中,还可以提供一种服务的处理方法,执行主体为上述区块链网络中的控制节点,具体操作步骤与上述实施例一致,在此不再赘述。
[0151] 在一些实施例中,还可以提供一种服务的处理方法,执行主体为上述区块链网络中的存储节点,具体操作步骤与上述实施例一致,在此不再赘述。
[0152] 在一些实施例中,还可以提供一种服务的处理方法,执行主体为上述区块链网络中的服务注册中心,具体操作步骤与上述实施例一致,在此不再赘述。
[0153] 实施例五
[0154] 本实施例提供一种计算机设备,用于执行上述实施例提供的方法,该计算设备为上述区块链路由器。
[0155] 如图11所示,为本实施例提供的计算机设备的结构示意图。该计算机设备50包括:至少一个处理器51和存储器52;
[0156] 存储器存储计算机程序;至少一个处理器执行存储器存储的计算机程序,以实现上述实施例提供的方法。
[0157] 根据本实施例的计算机设备,通过区块链路由器内置安全模块,可以基于安全模块,采用预设共识算法确定目标节点,进行计算路由、存储路由及控制路由,提高共识效率,
并且通过设置计算节点、存储节点和控制节点,实现了数据计算、存储和流程控制的隔离,
可以规范区块链网络数据处理、数据流转和数据存储。
[0158] 实施例六
[0159] 本实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,计算机程序被执行时实现上述任一实施例提供的区块链网络。
[0160] 根据本实施例的计算机可读存储介质,通过区块链路由器内置安全模块,可以基于安全模块,采用预设共识算法确定目标节点,进行计算路由、存储路由及控制路由,提高
共识效率,并且通过设置计算节点、存储节点和控制节点,实现了数据计算、存储和流程控
制的隔离,可以规范区块链网络数据处理、数据流转和数据存储。
[0161] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅
仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结
合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的
相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通
信连接,可以是电性,机械或其它的形式。
[0162] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个
网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目
的。
[0163] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单
元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0164] 上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机
设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个
实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-
Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种
可以存储程序代码的介质。
[0165] 本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完
成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上
述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0166] 最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依
然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进
行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术
方案的范围。