物聯網共識機制 – 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