DC相当于一个插排,在一个插排上我们同时可以插上不同的电器等,虽然不同电器的结构不同,但它们都可以通过插槽来接电,从而开始正常工作。
在上面插排的类比中,DC就是那个插排,而连接在DC上的不同区块链网络,例如比特币、太坊、EOS、波场等,就相当于连接在插排上的冰箱、空调等不同电器。在这个互联的网络中,DC就是中继链,而连接在DC网络中的不同区块链就叫平行链。
当然了,平行链也是有分类的。基于不同的区块生成逻辑,平行链可分为同构平行链和异构平行链。同构平行链与DC有着相同的区块生成逻辑;异构平行链和DC之间是不同的区块生成逻辑。
同构平行链和DC一样,基于 Substrate 创建,和DC有相同的区块生成逻辑,所以可以直接插入插槽进行交互,但异构并行链由于和DC的区块生成逻辑不同,所以并不能直接进行交互,需要通过转接桥再插入DC插槽的,然后再借路中继链实现与其他平行链间的交互。
如果每两条需要跨链通信的平行链都要两两建立通信通道,那么随着平行链数目的增加通道数量会成指数级增长,并且每个通道还需要自行建立互信机制。DC采用的方式是由中继链作为集中的处理点来处理所有的跨链通信,网络的安全和共识也由中继链来维护。
DC中继链和平行链之间的交互,是通过 XCMP 协议来完成的,它是DC的核心组件之一,有了 XCMP 协议,连接到DC上的平行链之间就可以实现交互了,XCMP 协议类似于互联网常用的 TCP/IP 协议,它能够让消息在DC的各个平行链之间进行传递,并支持这些平行链上的组件进行交互。