區塊鏈的眾多優勢使其可以很好地解決現有一些技術所面臨的瓶頸問題,利用這些優勢和傳統云計算技術相結合,將促進基于區塊鏈的分布式云計算領域的一些突破和應用,為大規模的應用打下基礎。
最近幾年,區塊鏈作為新興的技術引起了廣泛的關注。區塊鏈可以應用的領域非常廣,包含支付、身份識別、云計算、物品溯源、游戲、投票、醫療等。眾多傳統的技術也可以和區塊鏈技術相結合發揮更大的作用,比如在傳統的云計算領域,將云計算和區塊鏈結合起來可以實現更高效、更經濟、更安全可信的分布式云計算。
云計算及所面臨的問題
云計算是一種基于互聯網的計算方式。通過這種方式,共享軟硬件資源和信息,可以按需求提供給計算機各種終端和其他設備。云計算是繼上世紀80年代大型計算機到客戶端—服務器的大轉變之后的又一巨變。用戶不再需要了解“云”中基礎設施的細節,不必具有相應的專業知識,也無需直接進行控制。云計算描述了一種基于互聯網的新IT服務增加、使用和交付模式,通常涉及通過互聯網來提高動態易拓展且經常虛擬化的資源。
然而,云計算技術的發展也存在不少痛點。
現有云計算市場極度中心化,市場份額由少數幾家科技巨頭依靠自身高度集中化的服務器資源壟斷了整個云計算市場,借助市場力量享受高額利潤,進而導致算力服務價格居高不下。BOINC(伯克利開放式網絡計算平臺)是目前最為主流的分布式計算平臺,為眾多的數學、物理等學科類別的項目所使用,但是由于這是基于分布在世界各地的志愿者的計算資源而形成的分布式計算平臺,缺乏足夠的志愿者來貢獻算力。
分布式云計算的良好平臺
桌面網格的思想是收集互聯網上未充分利用的計算機資源,在一個分布式虛擬的超級計算機上,以極小成本執行大規模并行及分布式應用程序。
桌面網格計算技術有三個功能使其成為完全分布式云計算的良好平臺:第一是韌性,如果某些節點出現故障,計算仍能繼續在其他工作節點上運行;第二是效率,即使計算節點多種多樣,應用程序仍可以獲得最佳性能;第三是易于部署,無需特定配置即可使用任意節點,甚至包括那些位于網絡邊緣的節點。這使得包括傳統的高性能計算集群、云基礎設施及個人電腦等計算資源的桌面網格成為組合混合基礎設施的完美解決方案。
然而,桌面網格仍然存在一些重要的問題,比如難以計算各個節點對網絡作出的貢獻,從而缺少激勵機制,難以撮合需求與計算資源的匹配等。
區塊鏈技術的出現,可以很好地解決這些問題,比如通過貢獻證明協議提供可證明的共識、可追溯性和信用機制。
基于區塊鏈的分布式云計算
基于區塊鏈的分布式云計算基礎設施將允許按需、安全和低成本地訪問最具競爭力的計算基礎設施。而分布式應用程序DApps則可以通過分布式云計算平臺自動檢索、查找、提供、使用、釋放所需的所有計算資源,如應用程序、數據和服務器。通過簡化訪問服務器的方式,分布式云計算大大降低了數據中心的熱能損耗,同時使得數據供應商和消費者更容易獲得所需計算資源。
傳統區塊鏈,如比特幣和以太坊依賴于工作量證明機制(PoW),以確保區塊鏈上參與者之間發生的代幣交易被大量節點采用的加密挑戰所驗證。而基于區塊鏈的分布式云計算則可以采用貢獻證明協議,即通過鏈外行為,如實時提供數據集、傳輸文件、執行計算、提供專業服務等活動引發參與者之間的代幣交易。
因此,需要一個新的協議來證明貢獻已經準確無誤地發生,且相應的代幣交易可以在區塊鏈上進行。我們稱這種共識機制為貢獻證明機制。有幾個采用相似協議的平臺如GridCoin、FatCom、FileCoin,它們允許在區塊鏈和鏈外資源之間建立共識。例如,GridCoin提出了研究證明來獎勵那些捐贈了部分計算機時間給生物醫學研究,以及探索宇宙等偉大科學計算的志愿者。相比較而言,貢獻證明將更加通用,允許驗證更多的行為。
在分布式系統中可以使用一種匹配算法,通過相關描述將一個資源請求和一個資源供應進行匹配。在設計分布式云平臺時,匹配算法是資源配置中的一個基本構建塊。它基本上解決了“我可以在這臺機器上運行這個任務嗎”的問題。我們通過iEx.ec區塊鏈存儲智能合約來描述計算資源的特征,如內存容量、CPU類型、磁盤空間等。有些合約描述的是運行一個任務或部署一個虛擬機實例的要求(如最小磁盤空間、內存、GPU運行的要求、預計管理程序等)。匹配描述語言已經在一些學術論文中得到詳述,并在軟件中得到了應用。
在分布式系統中,調度算法會分配一些任務在相關計算資源上執行。調度程序是分布式計算系統的一個重要組成部分,應用程序執行的性能主要取決于它的有效性。調度程序面臨的一個特別挑戰是設計多標準調度,即一個算法中有多個策略來選擇計算資源和調度任務。
基于區塊鏈的分布式云計算的技術不僅僅存在于理論中,眾多采用這些技術的應用項目如Golem、iExe、cSONM等已取得一些進展。Golem希望建立在以太坊上的去中心化的GPU計算資源租賃平臺;cSONM正在打造通用的去中心超級計算機;法國區塊鏈技術公司iExec為所有計算資源相關的供應商(計算服務商、數據供應商、應用程序供應商)提供了一個資源共享交易的可信平臺。融入了獨有的貢獻證明共識協議和英特爾最新的安全可信技術(Intel SGX)來確保平臺的可信度和平臺上數據的安全性,支持從高性能計算到物聯網在內的多個領域的應用程序。
區塊鏈的眾多優勢使其可以很好地解決現有一些技術所面臨的瓶頸問題,利用這些優勢和傳統云計算技術相結合,將促進基于區塊鏈的分布式云計算領域的一些突破和應用,為大規模的應用打下基礎。