区块链技术原理与实践(微课版)
上QQ阅读APP看书,第一时间看更新

1.1.2 去中心化系统

去中心化系统这个概念是相对于中心化系统提出的。目前,市面上绝大多数的互联网应用都是通过中心化系统实现的,此类系统基本上包括一个中心节点和众多与中心节点相连接的客户端节点。基于以上特点,当客户端节点间需要发送数据(文档、视频等)时,都需要通过作为中转站的中心节点实现,图1-1所示为中心化系统网络的实现方式。

图1-1 中心化系统网络的实现方式

如图1-1所示,假设客户端节点A需要向客户端节点B发送消息,按照中心化系统的实现方式,客户端节点A需要将消息发送至中心节点,再由中心节点将信息转发至客户端节点 B。在以上环节中,中心节点起到了数据中转的作用,其在中心化系统中具有至关重要的作用。虽然中心化系统采用的拓扑网络具有性能高、拓扑简单、便于维护等特点,但与此相对的,若中心节点出现宕机等数据通信异常情况,势必会导致中心化系统出现整体性的瘫痪。另外,由于中心节点在网络中起到了数据中转的作用,中心节点将获取所有客户端节点间相互通信的数据,数据隐私也得不到保障。

针对中心化系统中存在的短板,区块链采用去中心化系统实现数据的存储与传递。在去中心化系统中,所有节点的地位与功能相同,不存在中心与非中心之分。在此前提之下,节点间的通信将以点对点的形式实现,最终形成网状的拓扑网络,图1-2所示为中心化系统向去中心化系统的转变示例。

图1-2 中心化系统向去中心化系统转变的示例

通过以上向去中心化系统的转变,数据通信从借助中心节点实现转变为以点对点的方式实现。一方面,节点间通信将实现数据直传,从而在不借助第三方中心节点中转的前提下保护数据的隐私。另一方面,在去中心化系统的拓扑网络中,任意节点既充当了数据的发送方,又充当了数据的接收方,当有节点出现宕机等数据通信异常情况时,其他节点将主动寻找拓扑网络中的相邻节点,维护网络,从而保证拓扑网络的健壮性。但是,由于去中心化系统的网状拓扑网络在数据通信方面构造复杂,尤其是当网络中存在海量节点时,节点与节点间的通信往往需要跨越超过2个中间节点,势必导致通信效率低以及通信数据丢包的情况出现,导致通信成本的提高。

综合以上中心化系统与去中心化系统的特点,可以总结出如表1-1所示的对比示例。

表1-1 中心化系统与去中心化系统的对比