区块链是一个分布式系统,它将独立用户聚集到一个网络中。与任何分布式软件系统一样,区块链是围绕多层体系架构构建的。现在我们来更详细地讨论构成CREDITS体系的逻辑层,指出其功能和组件交互作用背后的基本原则。
分布式网络软件中通常有三个逻辑层。根据网络实现方法,包括抽象层和独特层:
1.表示层;
2.应用逻辑层;
3.数据层。
各逻辑层的特征
表示层。确保将信息转换并提供给用户的软件系统组件构成表示层。客户端可以是外部的、独立于系统的,也可以完全是系统中固有的。在后一种情况下,客户端形成表示层,这是客户端-服务器系统的典型特征。在网络交互通过客户端程序的区块链网络中,经常采用相同的原理。
应用逻辑层。本层通过表示层传递由客户端请求的交易。程序和业务流程由网络决定。根据功能需求,一个层可以进一步分成多个组件,每个组件采用一套流程、单独程序和种类的形式。
数据层。该部分用于管理数据库连接和处理数据使用。
在一个层次的进程不需要在另一个层次的直接数据访问,因此可以为每个进程分配单独的程序。
网络层和多层系统
从概念上讲,有多种可能的层组合,所以现在是讨论层级的时候了。
例如,形成相当繁琐的系统的一层网络建议将所有组件布置在一个层级中。通常,这种类型的系统是用最简单的语言编写的,由于其整体性设计,相对难以进行维护,但从数据转换成本的角度来看,其成本很低。
反过来,两层体系架构在客户端-服务器系统中相当普遍,在这种系统中,表示层拥有单独的层级。
与一层和两层网络相比,三层和多层网络更适合于复杂的集成模型。其体系架构需要在客户端-服务器交互中引入第二层(基于软件)。用于集成逻辑的专用空间是这种体系架构的核心优势。中间件层程序提供了引入附加功能属性的机会,例如事件记录、数据完整性保证等。
区块链是一个多层级系统,适应性强,但实施成本较高。
支持CREDITS网络设计的原则
我们来更具体地了解一下多层级体系架构在CREDITS分散式网络中是如何准确地传送的,以及其逻辑组件是如何相互作用的。
表示层
第一层由确保用户与区块链平台交互的组件构成,这些组件是网页界面、桌面应用程序和监控器(网络监控系统)或由外部用户开发的任何其他应用程序。客户端应用程序必须在具有活动互联网连接的计算机上安装和启动,才能与信用网络交互。所有请求都是通过这个客户端应用程序发送到区块链网络的,也正是在这里,用户能够看到中间件和交易的最终结果。任何区块链系统在其体系架构中都具有覆盖网络;为建立与网络的连接,计算机必须能够处理针对该网络的消息并影响其状态。实际上,这是安装客户端的真正目的。在一些区块链网络中,该层次的特征在于对公共系统的有限访问,例如,银行链仅允许银行建立到分布式网络的连接。CREDITS不会施加这种约束,任何希望成为区块链系统一部分的用户都可以访问应用程序。
此外,还可以通过网页版传送简化的网络交互选项,这不需要安装完整节点或客户端应用程序。事实上,所有交易都只能使用网页界面来执行。对于不习惯操作软件控制台的用户来说,这样处理起来更简单快捷。
“最轻”交互选项是使用查看版或监控器。它显示整个网络状态、最近交易及其他信息。但是,无法通过此服务执行操作。
应用逻辑层
传送应用机制的第二层分为网络节点、传输协议和平台内核。节点是已安装客户端和总账储存并连接到公共网络的计算机。形成区块链系统的是节点,其最简单的形式如下:将节点合并以形成统一的网络,相互通讯,信息按照一致性算法分布在节点之间。节点的排列也有其背后的逻辑,它们根据验证数据和投票回合被分解成规则的、可信的首节点。节点的类型也影响其预期目的,从参与选择受信任节点和首节点到决定将信息添加到块中。
CREDITS网络依赖于点对点基础数据从一个节点传输到另一个节点的原理。为了确保更快地数据传输,该网络采用了UDP (用户数据报协议),这是一种用于从大量用户处尽可能快地传送消息的最佳协议。许多区块链项目开发者一直在努力解决这种网络的低吞吐量问题。CREDITS系统为这个问题提供了一个根本解决方案:许多技术发现使开发者能够实现每秒48万次以上交易的平均网络吞吐量。
数据层
区块链系统的数据层包括两大组件,即分布式总账和共识算法。
分布式总账。该逻辑组件是通过使用节点应用程序控制的数据结构。客户端应用程序一旦启动,用户就可以访问和查看区块链系统总账的内容。例如,当操作以太币(Ethereum)时,用户能够按照应用软件代码中规定的网络规则访问太币总账并与之交互,即应用智能合同、执行其他类型的交易等。在CREDITS网络中采用了类似的原理。网络节点将数据存储在分布式散列表中,允许用户访问分布式总账(第三层),并通过使用在该应用程序(第二层)中传送的软件方法的应用程序(第一层)发送命令,来对该总账执行操作。
共识算法。作为客户端应用程序的一部分传送,提供“游戏规则”,即规定如何在区块链上构建块的条款。参与协商一致意见形成进程可得到若干不同框架的支持:工作量证明、利息证明、证明时间;无论使用哪种方法,在添加到一致性接受流程之前,节点都必须经过确认。在CREDITS逻辑体系架构中嵌入了相同的框架。
中间件层
除此之外,系统还有数字签名、散列和生成等中间件层。智能合同提供的机会还意味着其功能在整个系统中得到利用。
我们从逻辑组件的角度讨论了区块链网络体系架构。从这一设计原则来看,可以认为CREDITS是一个非常有前景的区块链网络,具有高吞吐量指标和内部多层逻辑。该项目在不断发展壮大的同时,也在不断完善现有技术和增加新技术。我们看到网络用户群体每天都在不断扩大。希望不久之后,网络成员会协助把平台提升到下一个甚至更高的层次。
官网:https://credits.com/
Telegram(英文):https://t.me/creditscom
Telegram(中文):https://t.me/creditschina
QQ群:569100510