G06/F950 G06/F1730
1.一种基于多路芯片扩展的区块链处理架构,其特征在于,该架构与区块链服务器相连接,用于处理区块链服务器分配的交易申请;所述架构设置多个扩展芯片,其中,至少一个扩展芯片与区块链服务器主机设备接口相连接,其余扩展芯片相互级联,每个扩展芯片内置处理引擎,用于处理分配给该扩展芯片的交易申请。
2.根据权利要求1所述的基于多路芯片扩展的区块链处理架构,其特征在于,每个扩展芯片内还设置主设备接口和从设备接口以基于主从接口协议实现芯片级联扩展;所述主设备接口用于级联下一层的扩展芯片,所述从设备接口用于接入上一层的扩展芯片。
3.根据权利要求1或2所述的基于多路芯片扩展的区块链处理架构,其特征在于,每个扩展芯片内置唯一标识的芯片ID,服务器主机生成该架构的负载能力映射表用于记录芯片ID及其引擎状态,直接以芯片ID为每个扩展芯片分配交易申请并更新所述负载能力映射表;所述扩展芯片接收交易申请时先验证芯片ID,如果芯片ID相匹配,处理该交易申请;否则,将该交易申请发送给与其级联的下一层扩展芯片。
4.根据权利要求3所述的基于多路芯片扩展的区块链处理架构,其特征在于,每个扩展芯片内置M个处理引擎,其中,M为大于1的自然数;每个处理引擎均可作为扩展子节点。
5.根据权利要求1或2所述的基于多路芯片扩展的区块链处理架构,其特征在于,该架构为T层树形结构,每个扩展芯片级联N路扩展芯片,其中,T、N为大于1的自然数。
6.根据权利要求1或2所述的基于多路芯片扩展的区块链处理架构,其特征在于,所述扩展芯片采用SD接口、USB接口、SATA接口实现多路级联扩展。
7.一种基于多路芯片扩展的区块链处理方法,其特征在于,包括以下步骤:
步骤S1:在区块链服务器主机设备接口按照树形拓扑架构相互级联多个扩展芯片;
步骤S2:区块链服务器主机接入区块链网络中;
步骤S3:该主机接收区块链网络中的交易申请并将其分配到树形拓扑架构中的各个扩展芯片;
步骤S4:每个扩展芯片处理分配给该扩展芯片的交易申请同时将非该扩展芯片的交易申请发送给与其级联的下一层扩展芯片;
步骤S5:各个扩展芯片处理完成之后向主机反馈结果信息。
8.根据权利要求7所述的基于多路芯片扩展的区块链处理方法,其特征在于,每个扩展芯片内置唯一标识的芯片ID,服务器主机生成该架构的负载能力映射表用于记录芯片ID及其引擎状态,直接以芯片ID为每个扩展芯片分配交易申请并更新所述负载能力映射表;所述扩展芯片接收交易申请时先验证芯片ID,如果芯片ID相匹配,处理该交易申请;否则,将该交易申请发送给与其级联的下一层扩展芯片。
10.根据权利要求8所述的基于多路芯片扩展的区块链处理方法,其特征在于,主机定时监控各扩展芯片的可负载能力并更新负载能力映射表,通过维护负载能力映射表来保证每个扩展芯片的信息处理频率基本持平。
9.根据权利要求7或8所述的基于多路芯片扩展的区块链处理方法,其特征在于,还包括以下步骤:
区块链服务器主机访问其他服务器获取区块链信息并同步区块链最新状态。
本发明涉及区块链技术领域,尤其涉及一种基于多路芯片扩展的区块链处理架构及其方法。
近年来区块链技术火爆发展,并逐渐走进各个行业领域。区块链技术通过去中心化、去信任的方式,由密码学原理来保证已有数据不被更改,然后通过共识算法对新增数据达成共识。整个运行过程完全透明,而所有的数据信息也是公开的。这种结构保证了数据的完整性和安全性,但是数据却一直不停地增长,所以对数据的吞吐量和处理效率的要求也不断在提高。
中本聪设计比特币系统(区块链应用之一)时预留了一个解决方案:默克尔树(Merkle Tree)算法,用它来解决区块链数据吞吐量过大的问题。在每台机器上构造一棵Merkle Tree,这样,在两台机器间进行数据比对时,从Merkle根开始进行比对,如果根节点一样,则表示两个副本目前是一致的,不再需要任何处理;如果不一样,则沿着hash值不同的节点路径查询,很快就能定位到数据不一致的叶节点,只用把不一致的数据同步即可,这样大大节省了比对时间以及数据的传输量。
随着区块链技术的火爆,交易申请的数目和频率也都在提升,默克尔树算法在一定程度上降低了区块链数据吞吐量,但是由于服务器的处理器和内存能力限制,现有区块链技术处理效率仍然是技术难点。例如比特币每秒只能进行大约7笔交易,以太坊稍微好一些,也就10-20笔。当交易数量膨胀后,由于服务器的处理器和内存能力限制,无法避免区块链处理效率低、功耗高等问题。
故,针对现有技术的缺陷,实有必要提出一种技术方案以解决现有技术存在的技术问题。
有鉴于此,确有必要提供一种基于多路芯片扩展的区块链处理架构及其方法。通过多路芯片的级联,扩展处理引擎,提升区块链并发处理能力,在提升处理效率的同时降低硬件成本。
为了解决现有技术存在的技术问题,本发明的技术方案如下:
一种基于多路芯片扩展的区块链处理架构,该架构与区块链服务器相连接,用于处理区块链服务器分配的交易申请;所述架构设置多个扩展芯片,其中,至少一个扩展芯片与区块链服务器主机设备接口相连接,其余扩展芯片按照树形拓扑结构相互级联,每个扩展芯片内置处理引擎,用于处理分配给该扩展芯片的交易申请。
作为优选的技术方案,每个扩展芯片内还设置主设备接口和从设备接口以基于主从接口协议实现芯片级联扩展;所述主设备接口用于级联下一层的扩展芯片,所述从设备接口用于接入上一层的扩展芯片。
作为优选的技术方案,每个扩展芯片内置唯一标识的芯片ID,服务器主机生成该架构的负载能力映射表用于记录芯片ID及其引擎状态,直接以芯片ID为每个扩展芯片分配交易申请并更新所述负载能力映射表;所述扩展芯片接收交易申请时先验证芯片ID,如果芯片ID相匹配,处理该交易申请;否则,将该交易申请发送给与其级联的下一层扩展芯片。
作为优选的技术方案,每个扩展芯片内置M个处理引擎,其中,M为大于1的自然数;每个处理引擎均可作为扩展子节点。
作为优选的技术方案,该架构为T层树形结构,每个扩展芯片级联N路扩展芯片,其中,T、N为大于1的自然数。
作为优选的技术方案,所述扩展芯片采用SD接口、USB接口、SATA接口等实现多路级联扩展。
为了克服现有技术存在的缺陷,本发明还公开了一种基于多路芯片扩展的区块链处理方法,包括以下步骤:
步骤S1:在区块链服务器主机设备接口按照树形拓扑架构相互级联多个扩展芯片;
步骤S2:区块链服务器主机接入区块链网络中;
步骤S3:该主机接收区块链网络中的交易申请并将其分配到树形拓扑架构中的各个扩展芯片;
步骤S4:每个扩展芯片处理分配给该扩展芯片的交易申请同时将非该扩展芯片的交易申请发送给与其级联的下一层扩展芯片;
步骤S5:各个扩展芯片处理完成之后向主机反馈结果信息。
作为优选的技术方案,每个扩展芯片内置唯一标识的芯片ID,服务器主机生成该架构的负载能力映射表用于记录芯片ID及其引擎状态,直接以芯片ID为每个扩展芯片分配交易申请并更新所述负载能力映射表;所述扩展芯片接收交易申请时先验证芯片ID,如果芯片ID相匹配,处理该交易申请;否则,将该交易申请发送给与其级联的下一层扩展芯片。
作为优选的技术方案,还包括以下步骤:
区块链服务器主机访问其他服务器获取区块链信息并同步区块链最新状态。
作为优选的技术方案,主机定时监控各扩展芯片的可负载能力并更新负载能力映射表,通过维护负载能力映射表来保证每个扩展芯片的信息处理频率基本持平。
作为优选的技术方案,每个扩展芯片设置多个处理引擎以并行处理多个交易申请,其中,每个处理引擎均可作为扩展子节点,并能够将所述扩展子节点进行分组;
当同一芯片组收到多条交易申请时,先通过共识算法,确定有哪些交易要被写到区块里面并进行签名记录。
与现有技术相比较,本发明具有如下技术效果:
1、通过多路芯片的级联扩展处理引擎,提升区块链并发处理能力,在提升处理效率的同时降低硬件成本;
2、采用低功耗的扩展芯片承担区块的交易运算处理任务,分担主机CPU资源压力,从而降低功耗,减少区块链运行维护成本;
3、通过ID分配和管理算法来平衡每个芯片的信息处理频率,从而避免某些上层节点的芯片因为高频率计算而损坏的现象,提升整体架构的稳定性;
4、通过绑定特殊的身份ID,实现数据直送,省去每一次交易时遍历各芯片的可负载能力的时间,从而提升处理能力。
图1为本发明基于多路芯片扩展的区块链处理架构的结构框图。
图2为本发明中扩展芯片的原理框图。
图3为本发明基于多路芯片扩展的区块链处理方法的流程框图。
如下具体实施例将结合上述附图进一步说明本发明。
以下将结合附图对本发明提供的技术方案作进一步说明。
本发明涉及如下专业技术术语:
1、Merkle根:是由区块主体中所有交易的哈希值再逐级进行哈希计算而得到的,用于检验每一笔交易是否在这个区块中存在。
2、Merkle Tree:一种哈希二叉树,使用它可以快速校验大规模数据的完整性。在比特币网络中,Merkle树被用来归纳一个区块中的所有交易信息,最终生成这个区块所有交易信息的一个统一的哈希值,区块中任何一笔交易信息的改变都会使得使得Merkle树改变。
3、Hash值:将任何一串数据输入到SHA256将得到一个256位的Hash值(散列值)。其特点:相同的数据输入将得到相同的结果。输入数据只要稍有变化(比如一个1变成了0)则将得到一个千差万别的结果,且结果无法事先预知。正向计算(由数据计算其对应的Hash值)十分容易。逆向计算(俗称“破解”,即由Hash值计算出其对应的数据)极其困难,在当前科技条件下被视作不可能。
4、工作量证明:将上一个区块的哈希值、节点的IP地址和公钥一起进行哈希计算。最终你要满足哈希值的阈值。对应的难度是相匹配的,例如哈希值的前100位都是0,如果你算出来的哈希值满足这个条件,就说明你完成了工作量证明。
在现有技术中,为了解决区块链处理效率低、功耗高等问题,目前比较主流的提升处理能力的方法是分片技术。它主要是通过将数据库分割成多个碎片并将这些碎片放置在不同的服务器上,在底层公有链的系统内,网络上的交易将被分成不同的碎片,其由网络上的不同节点组成。因此,只需要处理一小部分输入的交易,并且通过与网络上的其他节点并行处理就能完成大量的验证工作。目前的分片技术主要是通过多个联网机器的并行处理能力来运行,但相应的硬件成本、运行维护成本也提高了。
参见图1,所示为本发明基于多路芯片扩展的区块链处理架构的结构框图,该架构与区块链服务器相连接,用于处理区块链服务器分配的交易申请;所述架构设置多个扩展芯片,其中,至少一个扩展芯片与区块链服务器主机设备接口相连接,其余扩展芯片按照树形拓扑结构相互级联,每个扩展芯片内置处理引擎,用于处理分配给该扩展芯片的交易申请。其中,该架构为T层树形结构,每个扩展芯片级联N路扩展芯片,每个扩展芯片内置M个处理引擎,M、T、N为大于1的自然数;每个处理引擎均均作为扩展子节点。
影响区块链性能的是吞吐量(传输速度)和处理效率(处理器运算能力),采用上述技术方案,采用低功耗的扩展芯片承担区块的交易运算处理任务,分担主机CPU资源压力,从而提高主机的处理效率,提升吞吐量。同时通过多路芯片的级联扩展处理引擎,提升区块链并发处理能力,在提升处理效率的同时降低硬件成本;能够降低功耗,减少区块链运行维护成本。
参见图2,所示为本发明中扩展芯片的原理框图,每个扩展芯片内还设置主设备接口和从设备接口以基于主从接口协议实现芯片级联扩展;主设备接口用于级联下一层的扩展芯片,所述从设备接口用于接入上一层的扩展芯片。其中,处理引擎为加密处理引擎,比如执行哈希计算。在一种优选的实施方式中,扩展芯片中设置多个主设备接口,从而能够实现多路芯片并行级联扩展。
该扩展芯片可以支持将从设备的接口协议扩展为N路(N≥2)主设备接口协议,同时主从接口协议相容。该芯片类型包含但不限于多路SD接口扩展芯片、多路USB接口扩展芯片、多路SATA接口扩展芯片。该芯片可以支持哈希加密运算、数据校验等功能。本发明基于该扩展芯片,在原有的区块链服务器主机设备接口上,级联多颗多路芯片,按照树形拓扑结构模型扩展为多引擎的处理架构。服务器主机接口可以是SD接口、USB接口、SATA接口等等。以T层(T>3)的N路芯片为例,搭建区块链的处理器架构如图1,其中单芯片的处理引擎数量为M,即该芯片拥有M个Hash加密引擎,可并行处理M条交易信息。由于N路芯片的主从接口协议相容,因此,理论上可以无限地进行级联。
由于该扩展架构中各个处理引擎的运算互不影响,所以基于T层N路芯片扩展实现的区块链处理架构,可以并行处理的交易申请=M*(1+N+N+…+N+N)。以5层4路芯片的处理架构为例,每个芯片可并行处理100个交易信息,那么该架构最多同时可以并行处理的交易申请为34100个。
关于级联层数、扩展芯片总数量以及可扩展引擎数量的关系如下表。
表1可扩展引擎表
在一种优选实施方式中,每个扩展芯片内置唯一标识的芯片ID,服务器主机生成该架构的负载能力映射表用于记录芯片ID及其引擎状态,直接以芯片ID为每个扩展芯片分配交易申请并更新所述负载能力映射表;所述扩展芯片接收交易申请时先验证芯片ID,如果芯片ID相匹配,处理该交易申请;否则,将该交易申请发送给与其级联的下一层扩展芯片。
进一步的,本发明通过管理工具对架构中的芯片分配并标记芯片ID,例如按照树形拓扑结构从上到下依次标记为1、1|1、1|2、……1|N|N|2……,同时在服务器主机生成该扩展模块的可负载能力映射表。这些芯片的扩展引擎均可作为扩展子节点,访问并操作区块链数据库的对应片段。将这些扩展子节点进行分组,也可以由各芯片单独成组,交易时可以由组内各子节点先达成共识进行验证。不同分组可以并行化的分而治之,从而提升区块链的交易验证速度。
当节点收到大量交易申请时,服务器主机给交易信息分配身份ID,然后将交易信息传送给多路芯片扩展模块进行计算。该身份ID即各扩展芯片的ID号码,可以赋予多个交易信息使用一个ID号码,但同时被标记待处理的总数最好不超过多路芯片的处理引擎负载最大值,本例中以M来表示。每次对交易信息赋予ID后,更新映射表中的该ID对应芯片的可负载能力。由于交易信息与芯片ID绑定,所以可以实现数据直送,省去每一次交易时遍历各芯片的可负载能力的时间,从而提升处理能力。
当扩展芯片收到交易信息后,校验身份ID与芯片ID,由对应的扩展芯片进行交易Hash值验证。当同一芯片组收到多条交易信息时,先通过共识算法,确定有哪些交易要被写到区块里面并进行签名记录。对应芯片完成交易的Hash值验证后,将交易信息打包到对应区块,然后申请某个芯片继续执行工作量证明的计算,也可以申请多个芯片来一起执行该区块的工作量证明计算,提高算力。同时可以释放其余空闲芯片的可负载能力标志。身份校验与交易处理可以同时执行,互不影响。一个多路芯片可以同步处理多条交易信息和区块工作量证明计算,但不能超过该芯片的处理引擎负载最大值。
当该区块的工作量证明完成后,将该区块提交给主机服务器,向全网节点广播,并由其他节点核对后,确认有效后正式接入区块链。
主机定时获取各芯片的可负载能力来更新映射表。通过维护映射表来保证每个芯片的信息处理频率基本持平,从而避免某些上层节点的芯片因为高频率计算而损坏的现象。
为了解决现有技术存在的技术问题,参见图3,本发明还公开一种基于多路芯片扩展的区块链处理方法,包括以下步骤:
步骤S1:在区块链服务器主机设备接口按照树形拓扑架构相互级联多个扩展芯片;
步骤S2:区块链服务器主机接入区块链网络中;
步骤S3:该主机接收区块链网络中的交易申请并将其分配到树形拓扑架构中的各个扩展芯片;
步骤S4:每个扩展芯片处理分配给该扩展芯片的交易申请同时将非该扩展芯片的交易申请发送给与其级联的下一层扩展芯片;
步骤S5:各个扩展芯片处理完成之后向主机反馈结果信息。
进一步的,主机接收各个扩展芯片反馈的处理结果信息后,将交易信息打包到对应区块,然后申请某个芯片继续执行工作量证明的计算,也可以申请多个芯片来一起执行该区块的工作量证明计算,提高算力。同时释放其余空闲芯片的可负载能力标志。当该区块的工作量证明完成后,将该区块提交给主机服务器,向全网节点广播,并由其他节点核对后,确认有效后正式接入区块链。
在一种优选实施方式中,每个扩展芯片内置唯一标识的芯片ID,服务器主机生成该架构的负载能力映射表用于记录芯片ID及其引擎状态,直接以芯片ID为每个扩展芯片分配交易申请并更新所述负载能力映射表;所述扩展芯片接收交易申请时先验证芯片ID,如果芯片ID相匹配,处理该交易申请;否则,将该交易申请发送给与其级联的下一层扩展芯片。
在一种优选实施方式中,还包括以下步骤:
区块链服务器主机访问其他服务器获取区块链信息并同步区块链最新状态。
在一种优选实施方式中,主机定时监控各扩展芯片的可负载能力并更新负载能力映射表,通过维护负载能力映射表来保证每个扩展芯片的信息处理频率基本持平。
以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
本文发布于:2023-04-14 17:34:16,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/3/86751.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |