CREDITS區(qū)塊鏈網(wǎng)絡軟件的邏輯層

區(qū)塊鏈是一個分布式系統(tǒng),它將獨立用戶聚集到一個網(wǎng)絡中。與任何分布式軟件系統(tǒng)一樣,區(qū)塊鏈是圍繞多層體系架構構建的?,F(xiàn)在我們來更詳細地討論構成CREDITS體系的邏輯層,指出其功能和組件交互作用背后的基本原則。

? ? ? ? ? 分布式網(wǎng)絡軟件中通常有三個邏輯層。根據(jù)網(wǎng)絡實現(xiàn)方法,包括抽象層和獨特層:?

? ? ? ? ? 1.表示層;

? ? ? ? ? 2.應用邏輯層;?

? ? ? ? ? 3.數(shù)據(jù)層。?

各邏輯層的特征

? ? ? ? ? 表示層。確保將信息轉換并提供給用戶的軟件系統(tǒng)組件構成表示層??蛻舳丝梢允峭獠康?、獨立于系統(tǒng)的,也可以完全是系統(tǒng)中固有的。在后一種情況下,客戶端形成表示層,這是客戶端-服務器系統(tǒng)的典型特征。在網(wǎng)絡交互通過客戶端程序的區(qū)塊鏈網(wǎng)絡中,經(jīng)常采用相同的原理。?

? ? ? ? ?應用邏輯層。本層通過表示層傳遞由客戶端請求的交易。程序和業(yè)務流程由網(wǎng)絡決定。根據(jù)功能需求,一個層可以進一步分成多個組件,每個組件采用一套流程、單獨程序和種類的形式。

? ? ? ? ?數(shù)據(jù)層。該部分用于管理數(shù)據(jù)庫連接和處理數(shù)據(jù)使用。

? ? ? ? ?在一個層次的進程不需要在另一個層次的直接數(shù)據(jù)訪問,因此可以為每個進程分配單獨的程序。?

網(wǎng)絡層和多層系統(tǒng)

? ? ? ? 從概念上講,有多種可能的層組合,所以現(xiàn)在是討論層級的時候了。?

? ? ? ? 例如,形成相當繁瑣的系統(tǒng)的一層網(wǎng)絡建議將所有組件布置在一個層級中。通常,這種類型的系統(tǒng)是用最簡單的語言編寫的,由于其整體性設計,相對難以進行維護,但從數(shù)據(jù)轉換成本的角度來看,其成本很低。?

? ? ? ? 反過來,兩層體系架構在客戶端-服務器系統(tǒng)中相當普遍,在這種系統(tǒng)中,表示層擁有單獨的層級。

? ? ? ? 與一層和兩層網(wǎng)絡相比,三層和多層網(wǎng)絡更適合于復雜的集成模型。其體系架構需要在客戶端-服務器交互中引入第二層(基于軟件)。用于集成邏輯的專用空間是這種體系架構的核心優(yōu)勢。中間件層程序提供了引入附加功能屬性的機會,例如事件記錄、數(shù)據(jù)完整性保證等。?

? ? ? ? ?區(qū)塊鏈是一個多層級系統(tǒng),適應性強,但實施成本較高。?

支持CREDITS網(wǎng)絡設計的原則

? ? ? ? ?我們來更具體地了解一下多層級體系架構在CREDITS分散式網(wǎng)絡中是如何準確地傳送的,以及其邏輯組件是如何相互作用的。

表示層

? ? ? ? ? 第一層由確保用戶與區(qū)塊鏈平臺交互的組件構成,這些組件是網(wǎng)頁界面、桌面應用程序和監(jiān)控器(網(wǎng)絡監(jiān)控系統(tǒng))或由外部用戶開發(fā)的任何其他應用程序??蛻舳藨贸绦虮仨氃诰哂谢顒踊ヂ?lián)網(wǎng)連接的計算機上安裝和啟動,才能與信用網(wǎng)絡交互。所有請求都是通過這個客戶端應用程序發(fā)送到區(qū)塊鏈網(wǎng)絡的,也正是在這里,用戶能夠看到中間件和交易的最終結果。任何區(qū)塊鏈系統(tǒng)在其體系架構中都具有覆蓋網(wǎng)絡;為建立與網(wǎng)絡的連接,計算機必須能夠處理針對該網(wǎng)絡的消息并影響其狀態(tài)。實際上,這是安裝客戶端的真正目的。在一些區(qū)塊鏈網(wǎng)絡中,該層次的特征在于對公共系統(tǒng)的有限訪問,例如,銀行鏈僅允許銀行建立到分布式網(wǎng)絡的連接。CREDITS不會施加這種約束,任何希望成為區(qū)塊鏈系統(tǒng)一部分的用戶都可以訪問應用程序。

? ? ? ? ?此外,還可以通過網(wǎng)頁版?zhèn)魉秃喕木W(wǎng)絡交互選項,這不需要安裝完整節(jié)點或客戶端應用程序。事實上,所有交易都只能使用網(wǎng)頁界面來執(zhí)行。對于不習慣操作軟件控制臺的用戶來說,這樣處理起來更簡單快捷。?

? ? ? ?“最輕”交互選項是使用查看版或監(jiān)控器。它顯示整個網(wǎng)絡狀態(tài)、最近交易及其他信息。但是,無法通過此服務執(zhí)行操作。?

應用邏輯層?

? ? ? ? ?傳送應用機制的第二層分為網(wǎng)絡節(jié)點、傳輸協(xié)議和平臺內(nèi)核。節(jié)點是已安裝客戶端和總賬儲存并連接到公共網(wǎng)絡的計算機。形成區(qū)塊鏈系統(tǒng)的是節(jié)點,其最簡單的形式如下:將節(jié)點合并以形成統(tǒng)一的網(wǎng)絡,相互通訊,信息按照一致性算法分布在節(jié)點之間。節(jié)點的排列也有其背后的邏輯,它們根據(jù)驗證數(shù)據(jù)和投票回合被分解成規(guī)則的、可信的首節(jié)點。節(jié)點的類型也影響其預期目的,從參與選擇受信任節(jié)點和首節(jié)點到?jīng)Q定將信息添加到塊中。

? ? ? ? ?CREDITS網(wǎng)絡依賴于點對點基礎數(shù)據(jù)從一個節(jié)點傳輸?shù)搅硪粋€節(jié)點的原理。為了確保更快地數(shù)據(jù)傳輸,該網(wǎng)絡采用了UDP (用戶數(shù)據(jù)報協(xié)議),這是一種用于從大量用戶處盡可能快地傳送消息的最佳協(xié)議。許多區(qū)塊鏈項目開發(fā)者一直在努力解決這種網(wǎng)絡的低吞吐量問題。CREDITS系統(tǒng)為這個問題提供了一個根本解決方案:許多技術發(fā)現(xiàn)使開發(fā)者能夠實現(xiàn)每秒48萬次以上交易的平均網(wǎng)絡吞吐量。

數(shù)據(jù)層

? ? ? ? 區(qū)塊鏈系統(tǒng)的數(shù)據(jù)層包括兩大組件,即分布式總賬和共識算法。

? ? ? ? ? 分布式總賬。該邏輯組件是通過使用節(jié)點應用程序控制的數(shù)據(jù)結構??蛻舳藨贸绦蛞坏﹩?,用戶就可以訪問和查看區(qū)塊鏈系統(tǒng)總賬的內(nèi)容。例如,當操作以太幣(Ethereum)時,用戶能夠按照應用軟件代碼中規(guī)定的網(wǎng)絡規(guī)則訪問太幣總賬并與之交互,即應用智能合同、執(zhí)行其他類型的交易等。在CREDITS網(wǎng)絡中采用了類似的原理。網(wǎng)絡節(jié)點將數(shù)據(jù)存儲在分布式散列表中,允許用戶訪問分布式總賬(第三層),并通過使用在該應用程序(第二層)中傳送的軟件方法的應用程序(第一層)發(fā)送命令,來對該總賬執(zhí)行操作。

? ? ? ? ? 共識算法。作為客戶端應用程序的一部分傳送,提供“游戲規(guī)則”,即規(guī)定如何在區(qū)塊鏈上構建塊的條款。參與協(xié)商一致意見形成進程可得到若干不同框架的支持:工作量證明、利息證明、證明時間;無論使用哪種方法,在添加到一致性接受流程之前,節(jié)點都必須經(jīng)過確認。在CREDITS邏輯體系架構中嵌入了相同的框架。

中間件層

? ? ? ? ?除此之外,系統(tǒng)還有數(shù)字簽名、散列和生成等中間件層。智能合同提供的機會還意味著其功能在整個系統(tǒng)中得到利用。?

? ? ? ? ?我們從邏輯組件的角度討論了區(qū)塊鏈網(wǎng)絡體系架構。從這一設計原則來看,可以認為CREDITS是一個非常有前景的區(qū)塊鏈網(wǎng)絡,具有高吞吐量指標和內(nèi)部多層邏輯。該項目在不斷發(fā)展壯大的同時,也在不斷完善現(xiàn)有技術和增加新技術。我們看到網(wǎng)絡用戶群體每天都在不斷擴大。希望不久之后,網(wǎng)絡成員會協(xié)助把平臺提升到下一個甚至更高的層次。

官網(wǎng):https://credits.com/?

Telegram(英文):https://t.me/creditscom??

Telegram(中文):https://t.me/creditschina??

QQ群:569100510?

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容