物联网共识机制 – DAG 有向无环图 Directed Acyclic Graph

 

优势:传输速度快,去中性化的安全性。
劣势:交易时间不可控,节点数目过多的网络传输压力会过大。

 

什麽是 DAG 有向无环图 Directed Acyclic Graph

DAG 有向无环图 Directed Acyclic Graph 是一种使用拓朴排序的有向图形数据结构。DAG 没有环,不走回头路、永远不回头、不断向前进。 DAG 可以重新绘製,让所有边朝着同一个方向延伸拓展、让所有点有着先后顺序。

 

区块链与 DAG 系统比较

  1. 数据传输吞吐量
    在区块链系统中,区块链的出块、同步、以及回放机制都是一种检查点同步的过程,而该过程不论从 POW、POS、甚至 DPOS 来看都是一种同步操作; 而在 DAG 系统中,每一笔交易就可以看作是一个区块,没有容量限制的问题,每一个区块有多个指向,拓展性强,因此能够实现异步的平行验证来达到高吞吐量的数据传输,其参与的节点越多,验证的时间会更多,DAG 系统也因此变得更快速。
  2. 数据传输安全性
    在区块链系统中,区块链中添加下一个区块需要多方进行竞争,并获取区块奖励或交易手续费。正因如此,共识和交易是分离的机制,不论是 POW、POS 还是 DPOS 共识系统,都会有不同程度的中心化 (算力、权益垄断); 在 DAG 系统中,由于交易者本身就是矿工,网路中的每个节点都能进行数据传输并积极参与共识,因此交易的同时也在同步做交易验证,网路能够完全保持去中心化与安全性,不需要矿工传递信任也不需要支付交易手续费给矿工。
  3. 数据传输应用性
    在 DAG 的共识演算中,主要採用的是谣言传播演算法 Gossip Algorithm,而在此系统下享有异步通讯带来的高传输速度外,也造就了此系统无法准确估算每个节点对节点的完整完成数据传输的时间,无法准确判断每笔交易时间侷限了 DAG 系统的应用性。
  4. 数据传输频宽
    假设在区块链与 DAG 系统中都存在 N 个节点,在区块链系统中,最高网路压力发生在所有的 N 个节点都同时对某个节点进行同步验证,网路传输数据次数为 N+1 次; 在 DAG 系统中,每一个数据消息都需要在全网路进行点对点通讯,因此对于任何消息的发送,网络中都会存在 N*N 次数据发送。即使进一步优化,每个节点有针对性地发送给相邻的 K 个节点,那麽其网路传播速度也为 N*K。由例子可知 DAG 系统下当全节点运转时,网路压力会极为夸张。

 

总结

由上的结论可得知 DAG 比起区块链系统拥有传输速度更快与安全性的优势,但也因为拥有交易时间不可控制与网路压力过大两个面向限缩了 DAG 的应用性。

交易时间不可控会造成在严格的金融支付结算应用不适用。DAG 应用以需要数据传输速度快的物联网为主,最知名的应用项目就是大家知道的 IOTA,但即便是物联网应用,担忧全网压力过大下仍然限缩简单设备之间的调用命令。

区块链与 DAG 的实务应用因各自系统结构本质的不同而有不同发展:区块链大量应用于金融交易,而 DAG 则在物联网中作发展。

 

延伸阅读

区块链共识机制 – POW 工作量证明 Proof Of Work
区块链共识机制 – POS 权益证明 Proof Of Stake
区块链共识机制 – DPOS 委託权益证明 Delegated Proof Of Stake
物联网共识机制 – DAG 有向无环图 Directed Acyclic Graph