999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

SDN多控制器共識機制研究綜述

2021-04-30 06:14:30關建峰牛曉彤高先明延志偉
數據與計算發展前沿 2021年1期
關鍵詞:機制服務

關建峰,牛曉彤,高先明,延志偉

1.北京郵電大學計算機學院(國家示范性軟件學院),北京 100876

2.軍事科學院系統工程研究院,北京 100142

3.中國互聯網絡信息中心,北京 100190

引 言

區塊鏈技術作為“十三五”國家信息化規劃中明確需要加強的前沿技術以及“新基建”信息基礎設施的代表技術[1],對于我國搶占新一代信息技術的主導權具有重要的戰略意義和廣闊的應用前景。從本質上講,區塊鏈是一種分布式共享數據庫,其使用散列以鏈式結構將區塊組合起來,使得其數據存儲具有去中心化、去信任化、不可篡改、可追溯、公開透明、集體維護等特征[2]。當前區塊鏈作為一種應用層技術也在逐漸向網絡基礎設施方向發展[3],在域間路由、域名系統、公鑰基礎設施等領域嶄露頭角[4]。伴隨著網絡技術逐漸向軟件化、虛擬化、可編程化等方向發展,網絡安全也面臨著新挑戰,而區塊鏈技術為解決這些安全問題提供了新方向。從技術層面而言,區塊鏈是由多個參與方之間基于密碼學、點對點通信、共識算法、智能合約、跨鏈通信等進行數據存儲處理的技術組合。其中,共識算法是區塊鏈乃至整個分布式系統領域的關鍵技術,決定了區塊鏈系統(分布式系統)中各節點對需要進行處理的數據以何種機制達成一致,是近年來分布式系統領域研究的熱點[5-6]。

作為當前網絡技術發展的一個重要方向,軟件定義網絡SDN (Software Def ined Network)解耦了控制平面和數據平面,提出集中網絡管控模式,將傳統網絡架構分拆為應用、控制、轉發分離的架構,強調通過軟件方式來定義網絡行為,提升網絡控制調度能力,其不但適用于專用網絡提升網絡部署維護的靈活性,還為廣域網網絡優化改進提供了新思路和新手段,其架構具有普適性。然而,當前SDN部署經驗表明,將控制平面物理集中在可編程軟件組件中,存在可擴展性、可用性、可靠性等限制[7],容易導致單點失效問題,給網絡安全帶來極大挑戰[8],尤其是當控制器被劫持而惡意操縱網絡或交換機被劫持而發送錯誤狀態信息時,網絡的安全運行將會受到嚴重威脅[9]。為此,出現一系列控制器集群方案通過狀態或功能復制來解決這些問題[10]。這些方案往往利用共識算法,將相關數據復制給參與邏輯控制器集群的其它成員以達成一致。當某個控制器出現故障時,集群中另一個副本能夠接管并繼續為未來應用程序請求提供服務。然而,引入控制器集群實現邏輯集中的網絡視圖則面臨著如何在多控制器間實現共識的問題。

1 共識算法研究現狀

共識算法可分為經典分布式共識機制和區塊鏈共識機制兩大類:經典分布式共識機制面向整個分布式領域的共識問題,其在區塊鏈應用場景中可適用于聯盟鏈和私有鏈;而區塊鏈共識機制主要為應用于公有鏈系統而設計。

近年來,已有眾多針對共識機制的綜述類論文,文獻[11]圍繞拜占庭容錯技術,對實用拜占庭容錯(Practical Byzantine Fault Tolerance,PBFT)[12]以及其改進協議進行分類介紹。文獻[13]側重于研究經典分布式共識算法,并介紹了基于經典分布式共識算法實現的區塊鏈應用。文獻[14]針對區塊鏈的可擴展性,分析了多種共識機制的交易處理能力以及可擴展性。文獻[15]對Bitcoin、Ouroboros、ByzCoin 和Omniledger 等這四種典型區塊鏈共識機制進行了分析。文獻[5]給出了區塊鏈共識機制的主流模型,并根據選主策略對共識機制進行分類,按時間順序梳理和討論了區塊鏈共識機制的發展過程。文獻[16]側重于研究區塊鏈共識機制,對共識機制進行了分類并介紹了各類經典共識機制的流程。文獻[17]研究了區塊鏈共識機制的分類問題,對網絡模型、敵手模型等協議假設進行了介紹。本文則主要針對SDN 網絡的分布式控制器集群中的共識機制進行研究,本節對共識算法研究現狀進行介紹,為后續多控制器共識機制研究進展奠定基礎。

1.1 經典分布式共識算法

經典分布式共識算法可以根據故障模型、網絡模型、部署方式等進行分類。根據 假設條件中的故障模型的不同,可以分為崩潰容錯(Crush Fault Tolerance,CFT)類共識算法和拜占庭容錯類(Byzantine Fault Tolerance, BFT)共識算法;根據網絡模型的不同,可以分為同步網絡共識算法、異步網絡共識算法、部分同步網絡共識算法;根據敵手模型的不同,可以分為敵手模型為n=2f+1、n=3f+1、n=5f+1 等的共識算法;根據算法一致性的強弱,可以分為強一致性共識、弱(最終)一致性共識。

對經典分布式共識算法的研究可追溯到1975年Akkoyunlu 等提出了計算機領域的兩軍問題[18]。1982年,Lamport 等提出了拜占庭將軍問題[19],開啟了對拜占庭容錯技術的研究。1998年,Lamport提出了Paxos 算法[20],該算法作為CFT 類共識算法,對宕機節點具有容錯能 力,在不超過1/2 的節點發生崩潰的情況下,保證誠實節點能夠對數據達成共識。Raft 算法[21]基于Paxos 算法進行了改進,通過將共識問題分解為領導者選舉、日志復制和安全三個子問題,提供了與Paxos 算法相同的功能和性能,但更容易理解和應用。1999年,Castro 和Liskov 提出了PBFT 協議,首次將拜占庭協議的復雜度從指數級降低到多項式級別,使拜占庭協議在分布式系統中被應用成為可能。同時,針對PBFT 算法的主節點正常共識流程的通信復雜度高、計算開銷大等問題,涌現了一系列PBFT 改進優化算法,主要包括Query/Update[22]、Hybrid/Quorum[23]、Zyzzava[24]、Zeno[25]、Zzyzx[26]等。針對PBFT 算法在主節點發生拜占庭故障情況下,系統性能降低甚至喪失活性(活性是指在有限的時間內,分布式系統會對請求做出回復)的問題,出現了Aardvark[27]、Spinning[28]、Prime[29]、RBFT(Redundant Byzantine Fault Tolerance)[30]等共識算法,對拜占庭錯誤場景進行優化,減輕拜占庭主節點對系統的安全性和活性的影響。2018年,Abraham、Gueta 和Malkhi 提出了Hot-Stuff 算法[31],利用門限簽名、并行流水線處理和線性視圖轉換等技術改進PBFT,極大提高了分布式共識算法的效率。此外,Golan-Gueta 等提出的可擴展拜占庭容錯協議(Scalable Byzantine Fault Tolerance, SBFT)[32]主要解決拜占庭容錯協議在應用到區塊鏈中的去中心化和擴容問題,SBFT 也使用門限簽名技術降低通信復雜度以及其它節點驗證消息時的計算開銷。

上述經典分布式算法均假設網絡模型為同步或者部分同步網絡,2016年MILLER 等提出了HoneyBadger BFT[33],該算法是首個實用的異步BFT類非確定性共識算法,可以在沒有任何時間假設的前提下保證系統活性,能夠在分布于廣域網的上百個節點中每秒對上萬筆交易達成共識。2018年,Abraham等提出了驗證的異步拜占庭一致算法(Validated Asynchronous Byzantine Agreement, VABA)[34],VABA 基于隨機預言模型,在每次共識過程中采用多個并行的領導者提議,并從中隨機選取一個作為最終結果,從而有效抵御適應性敵手的攻擊。

隨著區塊鏈技術的興起,共識機制也進入了區塊鏈時代,已有的經典分布式共識算法被應用于區塊鏈中,針對區塊鏈系統對共識算法的需求,一系列用于區塊鏈的共識算法陸續出現。

1.2 區塊鏈共識算法

區塊鏈共識算法主要包括證明類共識算法POX和POX+BFT 混合共識。其中,證明類共識算法即POX 類共識算法,利用自身具有的某種資源對區塊鏈記賬權進行競爭。例如,在基于工作量證明機制(Proof of Work,PoW)的共識算法中,節點利用自身算力資源競爭記賬權,典型算法包括經典算法包括比特幣[35]、以太坊[36]、Bitcoin-NG[37]等。這類算法存在算力浪費、交易吞吐量低、交易延遲高等缺陷,并可能面臨雙花攻擊和自私挖礦等安全問題;而在基于股權證明機制(Proof of Stake,PoS)的共識算法中,節點利用自身股權(代幣)競爭記賬權,主要運行于匿名的點對點(P2P)網絡中,一般具有加密貨幣的激勵機制且去中心化程度較高,典型算法包括Peercoin[38]、DPOS[39]、Nextcoin[40]、Casper TFG[41]、Ouroboros[42]等。

POX+BFT 混合類共識將PoX 與經典BFT 類算法組合起來取長補短,吸取前者高擴展性、低消息復雜度的優點以及后者低交易時延、高交易吞吐量的優點,從而提高區塊鏈性能。經典方案包 括Tendermint[43]、peerCensus[44]、ByzCoin[45]、Algorand[46]、Casper FFG[47]、Thunderella[48]。

共識算法種類繁多、性能各異,在應用于SDN多控制器共識中如何選擇、如何部署是亟待研究的一個問題。

表 1 對共識算法進行了匯總,對各種共識算法的容錯能力、去中心化程度等特性進行了展示,在選擇共識算法時應根據應用場景需求,結合共識算法的多項特性進行權衡。例如,在為SDN 網絡的分布式控制器集群選擇共識算法時,應該考慮到SDN網絡對于安全、性能、可擴展性等的要求,選擇或重新設計出最適應需求的共識算法。

2 SDN 多控制器共識研究現狀

軟件定義網絡SDN 是由美國斯坦福大學CLean State 課題研究組提出的一種新型網絡創新架構,是網絡虛擬化(Network Functions Virtualization,NFV)的一種實現方式。SDN 概念是由兩種互相補充的方案來驅動:一是IETF 提出轉發和控制元素分離(ForCES)[49],其側重于用靈活的硬件組件構建轉發模塊;二是McKeown 等提出的OpenFlow[50],側重于在現有網絡上構建用于試驗新協議的網絡基礎平臺。這兩者在數據路徑構造、協議靈活性以及協議粒度等方面存在差異,但是其核心都是將控制平面與數據平分離,將控制功能移至邏輯集中的控制平面,從而數據平面設備只需要簡單的可編程網元。SDN 將傳統網絡中的控制和轉發功能分離,其控制平面通常由多個控制器組成,每個控制器控制不同的可編程網元。不同控制器之間,利用分布式系統的共識算法實現網絡狀態信息復制,從而保證各控制器中存儲的網絡狀態信息的一致性,抵御潛在的控制器崩潰故障或拜占庭故障。

表1 共識算法匯總表Table 1 Summary of consensus mechanisms

2.1 SDN 多控制器CFT 類共識機制

現有SDN 多控制器共識設計多采用控制器崩潰故障容錯類共識算法,可分為強一致性算法或最終一致性算法。其中,強一致性共識算法可以獲得最新的網絡狀態信息,但同步延遲高,而最終一致性共識算法雖然具有較低的同步延遲,但可能難以得到最新更新的網絡狀態信息。當前以ODL(OpenDayLight)[51]、ONOS(Open Network Operating System)[52]為代表的控制器集群架構主要是基于Paxos 變形算法(如Raft 等),通過選取Leader 節點和Follower 節點,由Leader 節點向Follower 節點通告信息而達到全網狀態的一致,屬于強一致。

強一致性協議使控制器雖然同步延遲大,但相比于最終一致性協議,更有利于獲取最新的網絡狀態信息。例如Onix[53]和GRACE[54]利用Paxos 實現多個控制器之間的網絡狀態復制,ODL Clustering 多控制器架構和ONOS 利用Raft 共識協議實現多控制器之間的網絡狀態復制,而Ravana 則采用更強的一致性保證[55]。最終一致性協議使控制器具有較低的同步延遲,但相對于強一致性而言,可能無法獲取最新的網絡狀態信息。DISCO[56]基于面向消息的通信總線,為廣域網和受限網絡提供了分布式控制平面。控制器管理自己的網域,并基于AMQP(Advanced Message Queuing Protocol)與其它控制器進行通信。HyperFlow[57]利用發布-訂閱消息傳遞實現多個控制器之間的網絡狀態復制。另外,LegoSDN[58]側重于解決由于軟件錯誤導致的控制器宕機故障。Akella等人[59]解決了帶內網絡的可用性問題并集合了泛洪、全局快照等分布式系統概念。Muqaddas 等[60]對運行Raft 共識協議的多個控制器之間的流量進行了量化,并總結出控制器間的流量規模隨著網絡規模的增長而增長的關系。

圖1 SDN 多控制器CFT 類共識機制研究進展Fig.1 Research progress of CFT consensus mechanism in SDN multi-controller layer

Yang Zhang[61]等針對多控制器間的Raft 共識協議,提出控制器之間的共識執行依賴于數據平面進行通訊,而數據平面又依賴控制平面建立規則來實現可編程網元之間的數據包轉發,這樣的循環依賴將無法保證控制器之間的全連接,并提出了由此產生的兩種錯誤場景,即主節點頻繁更換、無法選出主節點以及相應的解決辦法。Ermin Sakic[62]等則對集群的性能(響應時間和可用性)進行了研究,提出集群規模越大,則集群的最壞響應時間越低、系統可用性越高。此外,其還提出了一種watchdog機制,用于控制器集群發生軟件故障時的快速恢復。

Venancio 等[63]針對單一集中控制器在可用性和可擴展性方面存在的問題,以及多控制器維護一致性易增加網絡負載的問題,提出了一種基于虛擬網絡功能VNF(Virtual Network Function)的共識機制,該機制在控制器間利用Paxos 實現強一致性。圖 1 展示了近年來SDN 多控制器CFT 類共識機制的研究進展,早期較為知名的控制層面設計主要采用CFT 類共識,后續的眾多研究針對控制層面共識問題的安全以及性能問題進行探討。

2.2 SDN 多控制器BFT 類共識機制

多控制器之間的不一致性嚴重影響著SDN 應用的性能,一致性越差則應用性能越差[64],并且還會導致嚴重問題如轉發環路、黑洞(black holes)、網絡孤立與不可達等問題[65],因此分布式控制平面的共識機制是關乎SDN 網絡安全性以及性能的關鍵技術,已經受到了越來越多的關注。前面所分析的多控制器共識算法僅能抵御CFT 類故障,而無法應對控制器或交換機的惡意行為即BFT 類故障,并且當攻擊者劫持Leader 后很容易操縱網絡[66]。為此,近年來研究重點轉移到在SDN 控制平面中引入BFT類共識機制[68-77],這類機制多是在多控制器間引入BFT 類共識算法,但直接應用BFT 共識會加重控制器間流量負載、擴展交換機功能、增加SDN 控制平面壓力等。為此,當前研究逐漸向自適應一致性機制(Adaptive Consistency)轉變[67]。

2014年,Li 等[68]針對集中控制面存在的安全挑戰,提出了一種基于BFT 的安全SDN 架構,其每個交換設備由多個基于云的控制器實例進行管理,并基于該架構設計了一種有效的控制器分配算法。2016年,ElDefrawy 等[69]開發了一個能夠抵御控制平面和數據平面發生拜占庭故障的彈性SDN 控制器層原型,其在開源SDN 模擬軟件上的實驗結果表明:BFT 機制降低了控制器處理流表的性能,在有4 個控制器節點的情況下可以容忍1 個節點發生BFT 類故障。2017年,Mohan 等[70]針對直接采用BFT 類機制容易導致交換機過載的問題(每個交換機需要映射到3f+1 個控制器來抵御f個控制器故障),提出了一種主備控制器映射方案,在該方案中每個交換機只需要映射到f+1 個主控制器和f個備份控制器即可抵御f個控制器的拜占庭攻擊。2018年,Sridharan等[71]針對過載問題則提出了一種基于博弈論的高效惡意控制器檢測方法,該方法隨機選擇交換機來檢查轉發規則的一致性,并將其建模為Stackelberg 博弈問題,通過解決對應優化問題來獲取有效的隨機策略。此外,Yuan 等[72]針對惡意交換機通過給控制器發送錯誤信息而誤導控制器的問題,設計并實現了一個可以支持BFT 共識機制的控制原型系統,該系統可以容忍交換機故障,確保控制器輸入的正確性。2018年,Sakic 等[73]提出了一種能夠容忍不可用性和拜占庭式故障的自適應SDN 控制平面框架MORPH,通過將分布式SDN 控制平面的控制器實例建模為一組復制狀態機(Replicated State Machine,RSM)來處理拜占庭式故障,能夠區分和定位故障控制器實例,并在檢測到故障后適當地重新配置控制平面來重構控制器與交換機之間的連接。此外,Sakic 等[74]認為基于RSM 的BFT 機制易引入額外開銷,導致其可擴展性較差,為此提出了一種“基于組的一致執行”方法來提升BFT 類分布式SDN 控制面的全局吞吐量。同時,Sakic 等[75]針對BFT 類共識中控制器間信息傳輸及消息識別匹配消耗過多CPU 負載、引發額外延遲、增加重配置時間等問題,提出了一種基于P4 的P4BFT 機制,引入處理節點執行匹配功能,并通過優化處理節點的選擇來減少控制平面負載和重配置時間。

Zhi 等[76]提出了BQSV(Byzantine Quorum System with Verif ication function)方法,結合SDN 控制層集群和Byzantine Quorum 系統,確保集群在存在惡意控制器的情況下也能提供正確的網絡拓撲視圖。最近,Moazzeni 等[77]提出了一種可靠容錯的分布式SDN 方法即BIRDSDN(Byzantine-Resilient Improved Reliable Distributed Software-Defined Networ ks),該方法在控制器集群直接采用組通信方式來檢測CFT 和BFT 類故障,并引入快速修復機制選擇新的控制器來接管受影響的交換機。圖 2 展示了近年來SDN 多控制器BFT 類共識機制的研究進展,研究者們將BFT 類共識機制引入控制層面,并針對采用BFT 類共識的控制層的安全或者性能問題進行討論,并提出了眾多具有自適應性的解決方案,2.3 節對該類自適應性多控制器共識機制進行了更加深入的介紹。

2.3 SDN 自適應多控制器共識機制

圖2 SDN 多控制器BFT 類共識機制研究進展Fig.2 Research progress of BFT consensus mechanism in SDN multi-controller layer

當前多控制器的共識機制在實際部署中仍以RAFT 為代表的CFT 類共識機制為主,無法應對控制器與交換機的BFT 類故障。改進型的BFT 類共識機制則存在可擴展性問題,增加了控制平臺的負載和控制器的處理時延,嚴重影響了上層應用的性能(依據文獻[60]的研究,相關性能約降低2 倍)。自適應性多控制器共識機制旨在基于SDN 網絡具體需求,結合實時狀態適應性地對相關網絡配置進行調整,從而改善控制層引入BFT 類共識機制后存在的系統可擴展性差以及吞吐量低等問題。

表2對具有自適應性的SDN 控制器層BFT 類共識機制設計方案進行了匯總,針對分析了其研究動機和主要思想。

表2 自適應SDN 多控制器BFT 類共識機制對比Table 2 Comparison of adaptive BFT consensus mechanisms in multi-controller layer

3 多控制器共識機制的問題與解決方案

3.1 多控制器共識機制存在的問題

控制器之間需要對控制器本地網絡事件、控制器向數據平面下發的流表、網絡拓撲等數據進行共享,使得各控制器能夠了解全網視圖,并基于此完成正常的網絡控制功能。

在當前的眾多控制器集群設計中,由控制器運行共識協議對網絡狀態數據達成共識,使得各節點按照相同順序接收(執行)其所接收到的消息中包含的網絡狀態更改動作,即保證各控制器了解到的全網視圖的相同性,并對參與共識的部分宕機節點或拜占庭節點實現具有容錯性,從而實現具有高安全性和活性的數據共享(同步)。共識機制種類眾多、特性各異,但并不存在一個適用于任何場景的最佳共識機制,因此在為控制器層的數據共享選擇共識機制時,應根據待共享數據的需求,在安全性、可擴展性、吞吐量、時延等性能指標之間進行權衡。

然而,若要沿用當前的“控制器節點即共識節點”的設計,不論采用何種共識協議,都存在著如下問題:

(1)共識網絡的部署靈活性受限:共識機制能夠保障在各節點的數據共享過程,系統對參與共識的部分節點具有宕機容錯或者拜占庭容錯能力,共識節點數量的增加有利于增強共識的安全性,能夠容忍更多數量的節點發生拜占庭故障,但也會導致系統性能的降低,因此可以考慮為安全性要求更高的共享數據部署更多的共識節點。然而,由于控制器層控制節點的數量固定且數量較少,如果由控制節點運行共識協議,難以靈活控制共識網絡的節點數量。

(2)控制器運行共識機制的額外開銷:控制器作為SDN 網絡的樞紐,需要承擔路由決策、網絡管理等眾多任務,當采用安全性較高但占用計算資源較大的多階段共識機制來完成控制器之間的數據共享時,將會大大增加控制器負載,甚至影響控制器的路由決策等固有功能的順利執行。

3.2 基于區塊鏈的控制器層數據共享第三方服務

針對3.1 節中提到的問題,可考慮利用第三方系統來完成待共享網絡數據的收集和同步工作,從而為SDN 網絡控制層提供數據同步服務。該服務作為保障SDN 網絡控制層正常運行的關鍵服務,要求第三方系統能夠保證其所提供的數據共享服務的安全、可信性,即不僅能夠保障單點故障、部分節點故障下服務的正常提供,保障各控制器能夠及時掌握正確且相同的網絡視圖,還能為服務建立去中心化的信任基礎。

區塊鏈技術的出現為解決SDN 網絡控制層數據共享的安全可信問題提供了一種新的思路,由于區塊鏈具有去中心化、去信任化、不可篡改、可追溯、公開透明、集體維護等特性,因此其能夠作為第三方完成待共享網絡數據的收集、共識(包括序號分配、交互、序號確認等階段)、響應工作,解決上述控制層數據共享存在的問題。

SDN 控制器利用區塊鏈系統作為第三方提供數據共享服務的流程圖如圖3所示,各控制器將網絡數據打包成數據共享請求,并發送至區塊鏈系統中,由區塊鏈主節點將一定數量的請求打包成區塊,再依據所采用的共識機制的交互流程,在各區塊鏈節點之間達成對區塊的共識,最終由區塊鏈節點將達成共識的區塊發送至各個控制器,各控制器學習區塊中包含的網絡信息,了解其余控制器的網絡事件以及下發的流表命令等信息。

圖3 SDN 控制器數據共享流程圖Fig.3 Flow chart of SDN controller data sharing

上述區塊鏈系統能夠為SDN 網絡控制層提供安全、可信、部署靈活的數據共享服務,該設計的具體優勢表現在如下幾點:

(1)安全可靠:對于運行區塊鏈共識算法的區塊鏈系統,安全性主要體現在可以抵御短距離攻擊、長距離攻擊、幣齡累積、女巫攻擊等安全攻擊;對于運行經典分布式共識算法的區塊鏈系統,安全性主要體現在系統對節點故障的容錯能力,即當部分節點自身發生故障或受到外界惡意劫持時,區塊鏈系統仍然能夠作為可靠的第三方向SDN 控制器層提供可靠的數據共享服務。

(2)可信:在區塊鏈系統中,多個參與方共同構建與維護區塊鏈賬本,區塊是否能達成共識由參與共識的節點共同決定,而不是集中在少數幾個節點上。區塊鏈作為數據共享服務的第三方,能夠保障自身系統的(部分)去中心化、(部分)去信任化。

(3)部署靈活性、高可伸縮性:控制器層中不同類型的待共享數據對于數據共享服務提供者的安全性、可擴展性、吞吐量、時延等性能指標的要求可能不同。利用當今區塊鏈的多鏈技術,可方便地部署節點數量不同、運行共識機制不同的子鏈,從而為需求不同的網絡數據提供定制化的數據共享服務。區塊鏈作為數據共享服務的第三方,能夠保障自身系統部署和運維的靈活性、高可伸縮性。

(4)便于監督控制器異常行為:區塊鏈的分布式存儲和獨特的鏈式數據存儲結構也能夠保障所存儲數據的不可篡改性、可追溯性,當控制器在數據共享過程中表現出惡意行為時,便于通過區塊鏈賬本進行可信的責任追究。另外,利用當前的智能合約技術,也方便對賬本數據進行實時監控,針對可能威脅SDN 網絡安全的控制器數據共享行為,觸發一系列的安全防御和及時恢復操作。

4 基于區塊鏈的SDN 網絡可信基礎設施

4.1 可信SDN 網絡架構

SDN 網絡作為一種重要的網絡架構,其應用層、控制層、數據層均受到眾多安全挑戰[78],對控制器、交換機、網絡管理員等實體的行為也缺乏監管機制,即當網絡實體出現異常行為時難以做到及時檢測和恢復,SDN 網絡架構難以對其所提供的網絡服務的安全可信提供保障。區塊鏈技術的出現不僅為控制器層的數據共享提供了解決方案,也為解決整個SDN 網絡架構中的安全可信問題提供了一種新的思路。

利用區塊鏈的去中心化、去信任化、不可篡改、可追溯、公開透明、集體維護等特性,可以用其為分布式控制器層構建起信任基礎。如圖4所示,可將區塊鏈作為SDN 網絡的可信基礎設施,為SDN網絡提供各種可信任的安全服務,4.3 節對可信區塊鏈基礎設施適合采取的部署結構進行了介紹。

圖4 可信SDN 網絡架構Fig.4 Architecture of trusted SDN network

第一層是區塊鏈設施層,包括共識機制、區塊鏈數據結構、P2P 通信、智能合約、激勵機制、密碼學、區塊索引存儲等,由不同節點共同維護區塊鏈賬本。

第二層是區塊鏈服務層,將不同區塊鏈服務進行打包,向上層提供簡單易用的接口,包括的服務有數據共享服務、身份認證服務、網絡管理員行為記錄和追溯服務、控制器行為記錄和追溯服務、BaaS 等,可根據SDN 網絡可信需求的發展提供更多的服務。3.2 節對這些可信安全服務進行了更加詳細的介紹。

第三層是SDN 網絡層,控制器在加入網絡時,通過區塊鏈進行身份認證與注冊,不同控制器之間通過區塊鏈對網絡拓撲等數據進行共享。通過區塊鏈的控制器行為記錄和追溯服務,對于控制器集群中部分節點的惡意行為能夠快速找到錯誤源,并進行矯正。通過網絡管理員行為記錄和追溯服務,方便進行網絡管理員行為監管以及責任追究。

最上層是SDN 應用層,由于是建立在安全可信SDN 網絡上的,用戶、應用服務提供商,以及控制器和交換機等網絡實體的身份都能夠被驗證,從而保障服務的安全可信任性。

4.2 可信SDN 安全服務

利用區塊鏈技術可為SDN 網絡構建信任基礎設施,4.1 節對該信任設施的架構進行了總體介紹,該節對架構中區塊鏈服務層能夠為SDN 網絡提供的可信安全服務進行更加詳細的描述,并對各類服務的相關研究進行了介紹,3.2 節中已對數據共享服務進行了詳細介紹,這里不再贅述。

(1)身份認證服務

當SDN 網絡管理員需要對區塊鏈系統或者控制器層進行相關操作,如對區塊鏈系統進行數據訪問以及合約部署,對控制器層進行狀態查詢或系統參數配置等,該類操作涉及數據保密性以及系統安全,因此需要對管理員身份進行認證,從而實現數據保護和行為審計。另外,控制器以及交換機作為SDN網絡中的重要設施,其安全接入關乎SDN 網絡的正常運行和安全問題,因此需要對其身份進行認證,從而實現對SDN 網絡的安全保護。

傳統的PKI 能夠為身份認證提供服務,但近年來,針對PKI 的攻擊頻繁發生,例如被劫持的CA頒發惡意證書,吊銷的證書仍然受到用戶信任。區塊鏈系統能夠為身份認證提供去中心化的PKI 服務,從而杜絕眾多針對傳統PKI 的網絡攻擊,利用區塊鏈的公開透明性也能夠保障公開證書的可驗證性。

(2)BaaS

智能合約為用戶提供編程接口,使用戶能夠將實現各類復雜業務的邏輯以智能合約代碼的形式方便地部署在區塊鏈系統上,而無需重新修改區塊鏈系統底層代碼,從而提供即時的區塊鏈服務,即BaaS(Blockchain as a Service)。

SDN 控制器層的網絡管理員可以根據新的業務需求編寫智能合約并部署,由合約對區塊鏈中記錄的數據進行監控,并觸發一系列針對區塊鏈或SDN控制器層的操作和服務。已有研究已經討論過如何將即時區塊鏈服務用于應對針對SDN 網絡的安全攻擊問題,例如,ZA El Houda[79]等提出了一個名為Cochain-SC 的基于區塊鏈的架構,該架構針對典型DDoS 攻擊,設計了兩層DDoS 攻擊抵御方案(域內和域間DDoS 抵御),利用以太坊的智能合約,促進SDN 不同域的控制器之間進行協作,減少跨域轉發數據包的成本,避免放大攻擊流量,實現就近阻止攻擊。

(3)行為記錄和追溯服務

在SDN 網絡中,控制器、交換機以及網絡管理員等實體的行為影響著SDN 網絡的整體運行和安全問題,利用區塊鏈技術能夠為SDN 網絡提供對這些實體的行為記錄和追溯服務,網絡管理員行為記錄和追溯能夠提供對網絡管理員的行為監督和責任追查服務;控制器行為記錄和追溯服務能夠保證控制器發布的流表規則的有效性、可追溯性、不可篡改性,從而保障SDN 網絡的安全可信。已有研究[80]針對分布式SDN 中的流表驗證問題,提出了一種基于區塊鏈技術的新架構DistBlockNet,該架構利用區塊鏈技術更新流表,從而可對流規則表的版本進行安全驗證,以增強物聯網的安全性、靈活性和可擴展性。

另外,未來投入使用的SDN 架構應由各運營商共同維護,因此涉及運營商之間的相互信任和費用審計問題,基于區塊鏈提供的行為記錄和追溯服務,能夠方便快捷地解決SDN 網絡在多運營商參與不可信環境下的信任問題和審計問題。已有的一些研究已經討論過將區塊鏈技術用于解決該問題,研究[81]討論了SDN 體系結構中存在的安全挑戰,并建議在SDN 中部署區塊鏈用于構建多運營商之間的相互信任,并提高數據標準化和抗故障能力;研究[82]在區塊鏈機制的基礎上,通過在數據平面(交換機層)添加監控元,并采用ECDSA 簽名算法和分布式密鑰生成協議,設計了一個基于區塊鏈的SDN 控制器分布式審計系統,為多運營商參與的控制器集群提供無第三方參與的費用記錄。

在上述分析中提到的研究都致力于將區塊鏈技術應用于SDN 網絡中的不同部分,但都并沒有考慮到將區塊鏈系統作為基礎設施,為SDN 網絡提供全方位的安全可信服務。綜上分析,可以看到利用區塊鏈作為安全可信基礎設施,能夠有效提升SDN 應對各種網絡問題的抵御能力,提升控制器在節點管理、狀態監控、設備配置、用戶管理、網絡業務等方面的安全能力,從而為上層應用提供一個安全可信的環境。

4.3 可信區塊鏈基礎設施部署

區塊鏈能夠作為基礎設施為SDN 網絡提供全方位的服務,但在實際部署中,需要考慮區塊鏈的性能瓶頸和可擴展性問題,另外,不同服務對于安全性、可擴展性、交易處理能力等的要求也不同。為此,如圖5所示,可選擇多鏈結構作為安全可信區塊鏈基礎設施的部署結構,每條子鏈負責一種服務,不同子鏈之間的交易處理、數據存儲、區塊共識相互隔離,由主鏈負責子鏈之間的跨鏈通信,從而實現服務之間的互相隔離且可交互。不同的子鏈可以部署在完全互不相交的節點集合上,也可以部署在相交的節點集合上,即同一節點可以負責維護不同的子鏈,第二種部署方式實際為金鏈盟開源工作組協作打造的聯盟鏈平臺FISCO BCOS[83]的多群組設計思想,在保障不同子鏈之間隔離性的同時,降低了系統的運維復雜度。可為負責不同服務的子鏈選擇不同的共識機制,并根據需求設計不同的機制以提高區塊鏈性能;當SDN 網絡的安全需求增加時,只需擴展新的子鏈即可提供新的服務,使該架構具有高可擴展性。

圖5 區塊鏈部署結構——多鏈Fig.5 Deployment architecture of blockchain system—MultiChain

5 結論與展望

本文對SDN 網絡中的用于實現控制器之間數據共享的共識機制設計進行了綜述,本文提出的基于SDN 可信基礎設施能夠為SDN 網絡提供控制器間數據共享等多種安全可信服務,但將該設施進行落地應用時,仍然存在一些挑戰。例如,由于當前的共識算法種類眾多、特性各異,且并不存在一個適用于任何場景的共識算法,因此需要針對SDN 網絡對于不同服務的需求,在安全性、可擴展性、吞吐量、時延等指標之間進行權衡,對區塊鏈節點間運行的共識算法、區塊鏈節點數量等系統部署細節進行實驗分析和具體決策。另外,由于當前的用于SDN 網絡控制器之間溝通聯系的東西向協議并沒有定義統一標準,因此在上鏈數據的數據結構設計、區塊鏈相關操作設計等方面需要考慮適用性。

利益沖突聲明

所有作者聲明不存在利益沖突關系。

猜你喜歡
機制服務
構建“不敢腐、不能腐、不想腐”機制的思考
服務在身邊 健康每一天
今日農業(2019年14期)2019-09-18 01:21:54
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年15期)2019-01-03 12:11:33
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
自制力是一種很好的篩選機制
文苑(2018年21期)2018-11-09 01:23:06
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
定向培養 還需完善安置機制
中國衛生(2016年9期)2016-11-12 13:28:08
破除舊機制要分步推進
中國衛生(2015年9期)2015-11-10 03:11:12
主站蜘蛛池模板: 91九色国产porny| 99在线国产| 亚洲免费黄色网| 久久视精品| 日韩色图区| 亚洲αv毛片| 成人免费视频一区二区三区 | 精品91视频| 免费国产在线精品一区| 精品1区2区3区| 黄色国产在线| 91美女视频在线| 欧美在线一级片| 欧美色香蕉| 亚洲男人的天堂久久香蕉网| 2021国产在线视频| 五月天丁香婷婷综合久久| 日日拍夜夜操| 国产精品不卡永久免费| 国产色伊人| 婷婷午夜影院| 欧美 国产 人人视频| 蜜臀AVWWW国产天堂| 人妻丝袜无码视频| 国产激情第一页| 国产一在线观看| 久久久久久久97| 99无码熟妇丰满人妻啪啪| 国产不卡网| 亚洲AⅤ综合在线欧美一区| 亚洲国产成人无码AV在线影院L| 最新国产麻豆aⅴ精品无| 又黄又爽视频好爽视频| 女人18毛片水真多国产| 亚洲国产欧洲精品路线久久| 手机在线看片不卡中文字幕| 久久综合成人| 日日拍夜夜嗷嗷叫国产| 国产96在线 | 99视频在线精品免费观看6| 91精品免费久久久| 原味小视频在线www国产| 国产性精品| 亚洲欧美日本国产综合在线| 欧美成人亚洲综合精品欧美激情| 色婷婷丁香| 久久婷婷国产综合尤物精品| 日本一区二区三区精品视频| 久久综合五月| 67194亚洲无码| 国产人人干| 欧日韩在线不卡视频| 色偷偷av男人的天堂不卡| 国产精品3p视频| 丁香婷婷在线视频| 国产91av在线| 久久青草视频| 成人免费一级片| 伊人久久大香线蕉影院| 草逼视频国产| 国产传媒一区二区三区四区五区| 国产成人高精品免费视频| 国产精品久久自在自2021| 欧美日韩国产精品综合| 久久香蕉国产线看观看精品蕉| 免费高清毛片| 欧美亚洲国产一区| 久久综合九色综合97网| 欧美成人在线免费| 亚洲精品麻豆| 女人18毛片一级毛片在线| 亚洲高清在线天堂精品| 国产精品网址你懂的| 日韩高清在线观看不卡一区二区| 久久久波多野结衣av一区二区| 免费无码AV片在线观看国产| 日韩欧美高清视频| 国产激爽大片高清在线观看| 亚洲免费毛片| 手机精品福利在线观看| 全免费a级毛片免费看不卡| 精品国产成人高清在线|