區塊鏈的架構是什麼樣的,你知道嗎?(上)

買賣虛擬貨幣


大家好啊,又到了貝爾同學的科普時間啦!之前給大家講述了區塊鏈的基本概念,今天呢,我們就來講講區塊鏈的具體架構。


區塊鏈的架構可以分為三層:協議層、擴充套件層、應用層。各個層級之間相互獨立,同時又相互聯絡,不能被分割開運作。

由於協議層對於整個區塊鏈的架構是非常重要的,因此今天我們要詳細的介紹協議層級的構造。

1.協議層的地位

區塊鏈最基本的架構層就是協議層。這個層級又分為兩個部分——儲存層、網路層。協議層的主要功能就是維護網路節點,只為提供Api供排程使用。

如果把整個區塊鏈看作一個大樓的話,那麼通常協議層就可以說是這棟大樓的地基,因為它為這棟大樓提供了建立的根本需要。搭建網路環境、駕立交易渠道,規定節點獎勵制度等這些大方向的區塊鏈執行要素。

至於其他的個體執行活動,例如你要買什麼,要做什麼,協議層是不會干預的,也干預不了。

因此,在區塊鏈中,協議層也可以看作是我們的電腦作業系統。

2.協議層的內部構造


在上面的架構設計圖裡,這個層面又從內部分成了儲存層和網路層。

我們可以看到,在網路層中,各個計算機節點相互連線相互作用,這些伺服器透過挖礦、投票等共識演算法保障節點安全。在得出相應的資料之後,網路層會在確保安全可靠的情況下將這些最快最好的資料傳輸到儲存層,進而儲存層將其儲存初始化。

資料儲存可以相對獨立,選擇自由度大一些,可以單獨來討論,選擇的原則無非是效能和易用性。我們知道,系統的整體效能,主要取決於網路或資料儲存的I/O效能,網路I/O最佳化空間不大,但是本地資料儲存的I/O是可以最佳化的。

3.協議層的應用技術

在協議層所用到的技術主要包括網路程式設計,分散式演算法、資料儲存技術以及加密簽名等四個方面。

網路程式設計是透過使用套接字來達到程序間通訊目的的程式設計。它的最主要的工作就是在傳送端把資訊透過規定好的協議進行組裝包,在接收端按照規定好的協議把包進行解析,從而提取出對應的資訊,達到通訊的目的。

網路程式設計能力是選擇程式語言的主要考慮因素,因為分散式演算法基本上屬於業務邏輯上的實現,其他任何語言都可以做到。

比如加密簽名技術是直接簡單的使用,資料庫技術也主要在使用層面,只有點對點網路的實現和併發處理才是開發的疑難之處。所以對於程式設計能力強,對併發處理簡單的語言,人們就特別的偏愛。

分散式演算法、加密簽名等都要在實現點對點網路的過程中加以使用,所以自然是網路層的事情,也是編碼的重點和難點。

當然,也有把點對點網路的實現單獨分開的,把節點查詢、資料傳輸和驗證等邏輯獨立出來,而把共識演算法、加密簽名、資料儲存等操作放在一起組成核心層。

無論怎麼組合,這兩個部分都是最核心、最基層的部分,都是協議層的內容。

好啦,這就是區塊鏈協議層結構的詳細介紹了,剩下的內容,我們下期再說!

以上就是我們今天的內容啦,有疑問長按下方二維碼諮詢貝爾同學哦!


貝爾同學公眾號

新生聚集地公眾號 關注一下吧~

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;