吳昕怡,沈 航,白光偉,張貝寧
(南京工業(yè)大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,南京 211816)
隨著5G網(wǎng)絡(luò)技術(shù)和人工智能的進步,車聯(lián)網(wǎng)逐漸向?qū)崿F(xiàn)人、車、路之間信息的高效感知、智能分析和安全共享的方向發(fā)展[1,2].在自動駕駛和互聯(lián)駕駛時代,車輛排隊、擴展感知、自動駕駛和遠程駕駛等車輛服務(wù)[3]漸漸變得流行.這些服務(wù)具有差異化的服務(wù)質(zhì)量(Quality of Service,QoS)需求[4].例如,高清地圖服務(wù)需要足夠的存儲資源,實時定位技術(shù)需要較低的延時,影音娛樂服務(wù)除了需要通信資源,還需要一定的緩存資源.這對網(wǎng)絡(luò)資源編排和QoS保證提出了更高的要求.
網(wǎng)絡(luò)切片[5]的關(guān)鍵技術(shù)是網(wǎng)絡(luò)功能虛擬化(Network Functions Virtualization,NFV)[6]和軟件定義網(wǎng)絡(luò)(Software Defined Network,SDN)[7].通過網(wǎng)絡(luò)切片,單個物理網(wǎng)絡(luò)可以被劃分為多個根據(jù)特定服務(wù)和業(yè)務(wù)目標優(yōu)化的虛擬網(wǎng)絡(luò).網(wǎng)絡(luò)切片可以根據(jù)應(yīng)用或客戶的需求進行定制,每個網(wǎng)絡(luò)切片需要能夠適配不同的業(yè)務(wù)和通信場景,以提供合理的網(wǎng)絡(luò)控制和高效的資源利用.特別是要實現(xiàn)高頻周期性車輛連接,超可靠、低延遲的通信必不可少,而對于高精度地圖下載,穩(wěn)定和高吞吐量更為重要.此外,網(wǎng)絡(luò)切片相互隔離,每個切片的服務(wù)質(zhì)量不受其他切片的影響.因此,將網(wǎng)絡(luò)切片技術(shù)與車聯(lián)網(wǎng)服務(wù)相結(jié)合[8,9],可以優(yōu)化網(wǎng)絡(luò)資源分配,實現(xiàn)最大成本效率,滿足多元5G車聯(lián)網(wǎng)服務(wù)的需求.
基于網(wǎng)絡(luò)切片的車聯(lián)網(wǎng)架構(gòu)依賴于高效的多維資源編排和實時調(diào)度,現(xiàn)有的運營商很難獨立地提供充足和多樣化的資源來滿足多樣化的車聯(lián)網(wǎng)服務(wù)需求.提供隨時隨地和全域的車聯(lián)網(wǎng)服務(wù)往往需要多運營商參與.一方面,交易環(huán)境是不可信和不透明的,在這種環(huán)境下進行實時資源交易存在許多安全風險.例如,傳統(tǒng)集中式資源交易中,運營商之間的交易由中介機構(gòu)管理,存在單點故障[10]、隱私泄露[11]等問題.更棘手的是,一些惡意運營商為其自身利益考慮,可能在沒有足夠可用資源的情況下宣傳欺詐性資源租賃服務(wù),這就打擊了誠實可信資源提供者參與的積極性.由此可知,實現(xiàn)可信的資源交易,滿足動態(tài)變化的服務(wù)需求面臨嚴峻的挑戰(zhàn).
區(qū)塊鏈技術(shù)[12]的出現(xiàn)為多方參與下的車聯(lián)網(wǎng)資源交易提供了一種很有前景的管理模式.與傳統(tǒng)的集中式架構(gòu)相比,區(qū)塊鏈的不變性、可審計性和透明性有助于確保分布式網(wǎng)絡(luò)中的數(shù)據(jù)安全[13].將區(qū)塊鏈技術(shù)應(yīng)用到多方參與下的網(wǎng)絡(luò)切片交易、編排和管理中,有助于解決隱私泄露等問題.然而,去中心化的網(wǎng)絡(luò)會引發(fā)網(wǎng)絡(luò)節(jié)點之間的不信任問題.為了保證網(wǎng)絡(luò)的可靠性,網(wǎng)絡(luò)系統(tǒng)會通過相關(guān)協(xié)議協(xié)商達成共識,從而達到一致性.
本文考慮一個多運營商協(xié)作為車聯(lián)網(wǎng)提供服務(wù)的場景.由一個可信的第三方機構(gòu)充當車聯(lián)網(wǎng)服務(wù)提供者的角色,租用現(xiàn)有的運營商基礎(chǔ)設(shè)施資源,包括通信、緩存、計算資源等,通過虛擬化方法對資源進行池化(Pooling)和編排(Orchestra),為大規(guī)模車聯(lián)網(wǎng)應(yīng)用的部署提供滿意的服務(wù)質(zhì)量.對此,本文提出一種基于區(qū)塊鏈的5G車聯(lián)網(wǎng)切片資源交易方法,目標是構(gòu)建一種安全、可信、公平的資源交易生態(tài).主要貢獻歸納如下:
1)提出一種基于區(qū)塊鏈的車聯(lián)網(wǎng)切片資源交易管理架構(gòu),利用區(qū)塊鏈的不可篡改、可追溯以及公開審計等特性,構(gòu)建安全可信、可追溯的的車聯(lián)網(wǎng)資源交易生態(tài).
2)一種面向網(wǎng)絡(luò)切片的分布式資源交易智能合約被設(shè)計和部署在區(qū)塊鏈上,保證交易的公平性和隱私安全.同時提出一種信用評估機制,為資源提供者的選擇提供支持.
3)設(shè)計一種基于信用的拜占庭容錯共識機制,與信譽評估機制協(xié)同工作,該機制可以根據(jù)節(jié)點的信用評估結(jié)果,投票競選出記賬節(jié)點.增強可信節(jié)點的主動性,減少異常節(jié)點的參與.
區(qū)塊鏈[14]是一種通過共識形成的點對點分布式賬本.區(qū)塊鏈上的所有活動都是可信的、負責任的、透明的,并且可以簡化業(yè)務(wù)流程和法律約束.非對稱密碼學(xué)和分布式共識算法被用于實現(xiàn)用戶安全和賬本一致性.分布式系統(tǒng)的高效運行依賴于有效的共識機制,共識機制是區(qū)塊鏈技術(shù)的核心.高效的共識機制使區(qū)塊鏈通過有效協(xié)商形成一致的區(qū)塊鏈結(jié)構(gòu).區(qū)塊鏈系統(tǒng)的產(chǎn)生促進了共識機制的高效發(fā)展.從工作量證明(Proof of Work,PoW)到權(quán)益證明(Proof of Stake,PoS)[15],再到委托權(quán)益證明(Delegated Proof of Stake,DPoS)[16]和實用拜占庭式容錯(Practical Byzantine Fault Tolerance,PBFT)共識機制[17],共識機制正在逐步完善.
智能合約(Smart Contract)[18]是一種由事件驅(qū)動的、具有狀態(tài)的代碼合約和算法合同,隨著區(qū)塊鏈技術(shù)的深入發(fā)展而受到廣泛關(guān)注和研究.智能合約是能夠自動執(zhí)行合約條款的計算機程序,并由代碼強制執(zhí)行,一旦啟動就會自動運行,不需要它的發(fā)起者進行任何干預(yù).智能合約具有去中心化、自治化、可觀察、可驗證、可信息共享等特點.基于區(qū)塊鏈技術(shù)的智能合約[19]不僅可以發(fā)揮智能合約在成本效率方面的優(yōu)勢,而且可以避免惡意行為對合約正常執(zhí)行的干擾.
網(wǎng)絡(luò)切片是一種新型網(wǎng)絡(luò)架構(gòu),SDN和NFV是支撐5G網(wǎng)絡(luò)切片的重要技術(shù)[20].SDN旨在通過集中控制和管理功能來提供對網(wǎng)絡(luò)資源的更高級別的控制.SDN將核心網(wǎng)切片的控制層與用戶數(shù)據(jù)層分開,控制層由邏輯上集中的可編程控制器調(diào)度,用戶數(shù)據(jù)層則由SDN交換機組成.NFV通過將網(wǎng)絡(luò)功能和資源虛擬化,使核心網(wǎng)切片的虛擬網(wǎng)元與物理層硬件解耦,并配置虛擬網(wǎng)元.網(wǎng)絡(luò)切片技術(shù)以網(wǎng)絡(luò)SDN/NFV化為前提實現(xiàn)虛擬化管理和維護.通過SDN/NFV平臺把網(wǎng)絡(luò)資源進行虛擬匹配、映射,生成不同的邏輯功能,再通過編排器提供相應(yīng)的服務(wù)以滿足各個應(yīng)用場景對網(wǎng)絡(luò)能力的需求.
服務(wù)水平協(xié)議(Service Level Agreement,SLA)[21]作為切片服務(wù)提供商和切片用戶之間的業(yè)務(wù)保障協(xié)議,在5G行業(yè)應(yīng)用拓展和商業(yè)化中發(fā)揮關(guān)鍵作用.首先,運營商在參與SLA標準制定過程中可以更深入的了解行業(yè)對5G的應(yīng)用需求,制定出符合大部分行業(yè)需求的網(wǎng)絡(luò)切片服務(wù).其次,SLA標準有助于降低運營商的運營成本.運營商基于不同的SLA標準制定靈活的差別化定價服務(wù),提供可協(xié)商服務(wù)價格和保障等級的溝通平臺,有助于在滿足行業(yè)客戶多樣化定制網(wǎng)絡(luò)需求和降低5G運維成本之間達到有效的平衡.最后,SLA標準可提升網(wǎng)絡(luò)切片的服務(wù)質(zhì)量,使各個運營商能夠優(yōu)化服務(wù),增強競爭力.
本文考慮一個多運營商協(xié)作為車聯(lián)網(wǎng)提供服務(wù)的網(wǎng)絡(luò)場景,如圖1所示,主要包括以下幾個角色:
車聯(lián)網(wǎng)服務(wù)提供者:在該框架中為車聯(lián)網(wǎng)提供各種各樣的服務(wù),負責進行注冊,并整合運營商提供的資源,進行動態(tài)網(wǎng)絡(luò)切片,對車輛提供服務(wù),一般是可信的第三方機構(gòu).車聯(lián)網(wǎng)服務(wù)的提供者根據(jù)車輛服務(wù)請求,向運營商購買資源并對資源進行切片,打包成服務(wù)提供給車輛.
車輛:行駛在路上的實體,一般都配備了車載單元通過接入網(wǎng)與網(wǎng)絡(luò)切片進行交互,在該框架中充當服務(wù)請求者的角色.
資源提供者:包括接入網(wǎng)、核心網(wǎng)、蜂窩無線網(wǎng)絡(luò)、地面的數(shù)據(jù)與處理中心等.地面網(wǎng)絡(luò)服務(wù)運營商為車聯(lián)網(wǎng)服務(wù)的提供者租賃、提供各種資源服務(wù),包括通信資源、緩存資源、計算資源等.
本文基于區(qū)塊鏈設(shè)計了去中心化的網(wǎng)絡(luò)切片資源管理架構(gòu),如圖2所示.

圖2 基于區(qū)塊鏈的車聯(lián)網(wǎng)切片功能性架構(gòu)Fig.2 Blockchain-based functional architecture for sliced vehicular networks
SDN 控制器可以被部署在路邊單元或者地面基站,除了收集用戶的內(nèi)容請求,也可以臨時紀錄一些交易、服務(wù)信息.區(qū)塊鏈負責根據(jù)從本地控制器收集的信息,對用戶的歷史服務(wù)請求進行預(yù)測,進行切片藍圖定義和端到端切片.切片應(yīng)該聯(lián)合分配多種類型的網(wǎng)絡(luò)資源(包括:通信、計算和緩存)來優(yōu)化網(wǎng)絡(luò)效用,同時需要滿足定制車聯(lián)網(wǎng)服務(wù)的差異化QoS需求.車聯(lián)網(wǎng)服務(wù)的提供者通過分布式資源交易智能合約,自動執(zhí)行與運營商之間的交易.網(wǎng)絡(luò)切片編排器(network slice orchestrator)對已購買的各類資源(包括通信、緩存、計算資源)進行池化、切片化、編排,并且向車輛提供網(wǎng)絡(luò)切片服務(wù).本地控制器負責協(xié)助SDN控制器進行網(wǎng)絡(luò)切片.切片部署完成后,對應(yīng)的本地控制器負責在終端用戶之間編排切片資源.
SLA 監(jiān)控和違規(guī)預(yù)測組件被使用來監(jiān)控切片狀態(tài)的資源利用率和QoS滿意度.通過智能合約將SLA 違規(guī)預(yù)測收集和分析資源監(jiān)控數(shù)據(jù)上傳到區(qū)塊鏈,可以及時發(fā)現(xiàn)服務(wù)質(zhì)量下降、資源利用率更改或系統(tǒng)配置錯誤等問題.
面向車聯(lián)網(wǎng)切片的分布式資源交易被封裝在智能合約內(nèi)自動執(zhí)行.本節(jié)將詳細介紹資源交易的交易過程、信譽評估、基于拍賣的資源提供者選擇和基于信用的PBFT共識機制.使用的主要符號和變量列于表1.

表1 主要符號意義Table 1 Summary of major notations
如圖3所示,面向車聯(lián)網(wǎng)切片的資源交易流程包括:

圖3 面向車聯(lián)網(wǎng)切片的分布式資源交易過程Fig.3 Distributed resource transaction process for sliced vehicular networks

2)資源提供者Si提交的加密投標信息為Bi.
(1)
(2)
EncPK0(bi,ci)表示用車聯(lián)網(wǎng)服務(wù)提供者的公鑰PK0對數(shù)據(jù)(bi,ci)進行加密.本文使用非對稱加密算法對資源提供商的出價信息進行加密.這樣不僅保護了真實的投標信息,還保證了信息不會被泄漏給其他資源提供商.多個資源提供者提交的所有投標信息的集合被表示為B={B1,B2,…}.

(3)

若驗證未通過,關(guān)于該運營商的懲罰交易賬單Trani將會被廣播到區(qū)塊鏈中.
Trani=(puni,signSK0(puni))
(4)
puni=(cIDi,timestamp,PK0,PKi)
(5)
puni中包括了該資源提供者的假名、私鑰、時間戳,以及車聯(lián)網(wǎng)服務(wù)提供者的公鑰.
4)基于拍賣的資源提供者選擇:能夠通過驗證的資源提供者集合為S,車聯(lián)網(wǎng)服務(wù)提供者基于拍賣選擇最終參與交易的資源提供者集合W(W?S).具體算法設(shè)計將在4.3節(jié)中詳細介紹.
5)在被挑選成為獲勝者后,相關(guān)的資源提供者向車聯(lián)網(wǎng)服務(wù)提供者提交加密令牌信息,M={…,Mi,…}.
Mi=(ESIGi,signSKi(ESIGi))
(6)
ESIGi=EncPK0(SIGi)
(7)
令牌SIGi代表可以授權(quán)訪問Si擁有的相應(yīng)資源的控制器,Si用車聯(lián)網(wǎng)服務(wù)提供者的公鑰PK0對SIGi加密.
6)在獲得加密令牌信息后,車聯(lián)網(wǎng)服務(wù)提供者使用其私鑰SK0對ESIGi解密,以獲取資源對控制權(quán),并且向資源提供者支付費用,與文獻[22]類似,每個資源提供者都有一個錢包帳戶來存儲和管理個人財產(chǎn).在支付過程中,為了保護隱私,本文使用隨機的假名作為資源提供者錢包賬戶的錢包地址,來代替錢包賬戶的真實地址,以保護隱私.錢包帳戶和相應(yīng)的錢包地址之間的映射關(guān)系記錄在受信任的授權(quán)機構(gòu)中.最后生成資源交易事件的記錄:
(8)
Datai=(timestamp,pi,cIDi,PKi,PK0)
(9)
7)基于信用的PBFT共識機制:區(qū)塊鏈通過基于信用的PBFT共識機制,將該記錄Tran作為數(shù)據(jù)塊添加到區(qū)塊鏈中.共識過程的具體介紹在4.4節(jié)中.同時,為了使共識機制輕量化,參與交易驗證的節(jié)點均由參與交易的運營商提供.
智能合約會定期收集由SLA檢測模塊對網(wǎng)絡(luò)切片的檢測數(shù)據(jù),包括資源利用率、切片滿意度等,并將這些數(shù)據(jù)寫入?yún)^(qū)塊鏈,形成行為特征等記錄.同時區(qū)塊鏈記錄資源提供者參與交易的歷史行為.區(qū)塊鏈將這些歷史行為和檢測數(shù)據(jù)聚合成信用值(滿分為100),為后續(xù)共識過程中的動態(tài)排序選擇提供參考.
本文考慮的信用評估參數(shù)指標包括:
1)資源可靠性指數(shù)Ii1:通信可靠性是車聯(lián)網(wǎng)服務(wù)滿意度需要克服的另一個障礙,尤其是對于安全和在線車輛交通管理應(yīng)用.計算方法如下:
Ii1=ri·100
(10)
ri表示當前運營商的通信可靠性.
2)平均訪問成功率指數(shù)Ii2:Ti為用戶訪問切片資源的平均訪問成功率,計算方法如下:
Ii2=Ti·100
(11)
3)平均傳輸延遲指數(shù)Ii3:節(jié)點之間的數(shù)據(jù)傳輸會因為多種因素而造成傳輸延遲.當平均傳輸延遲Li小于閾值σ時,本文認為是可以容忍的,節(jié)點也是可信的.隨著傳輸延遲超過閾值,節(jié)點出現(xiàn)異常行為的可能性也在增加,這體現(xiàn)在傳輸延遲指數(shù)的快速下降上.計算方法如下:
(12)
4)參與共識的信用指數(shù)Ii4:每次交易的驗證過程都是由參與到該交易中的運營商節(jié)點完成的,參與共識的信用指數(shù)是所有節(jié)點的信譽值的平均值.計算方法如下:
(13)
其中,ni表示當前運營商中的節(jié)點個數(shù),cij是運營商i中第j個節(jié)點的信用值.
區(qū)塊鏈將上述證據(jù)數(shù)據(jù)指標進行標準化.Ii1,Ii2,Ii3,Ii4分別對應(yīng)評估權(quán)重系數(shù)r1,r2,r3,r4,(r1+r2+r3+r4=1).不同的車聯(lián)網(wǎng)服務(wù)對應(yīng)的網(wǎng)絡(luò)切片權(quán)重系數(shù)也不同.區(qū)塊鏈可以結(jié)合塊中記錄的歷史數(shù)據(jù)獲取某個資源提供者的信用值.算法1描述了信用評估的方法.
算法1通過輸入資源提供商的cIDi來查詢其歷史行為數(shù)據(jù).引入歷史權(quán)重系數(shù)wi,不同時間的歷史交易數(shù)據(jù)具有不同的歷史權(quán)重系數(shù).衰減因子m是一個大于0的常數(shù),因此較舊的數(shù)據(jù)具有較小的歷史權(quán)重系數(shù).隨著時間的推移,歷史數(shù)據(jù)對資源提供商的綜合信用值的影響會越來越小.該算法的工作量取決于循環(huán)的執(zhí)行次數(shù),因此算法1的計算復(fù)雜度為O(N),其中N表示區(qū)塊鏈中選定的最近歷史交易和服務(wù)提供的數(shù)量.
算法1.信譽評估
輸入:資源提供者假名cIDi,交易總次數(shù)N
輸出:信用值γi
當節(jié)氣門關(guān)小時,充量系數(shù)急劇下降,但留在汽缸內(nèi)的殘余廢氣量不變,使殘余廢氣系數(shù)及滯燃期增加,火焰?zhèn)鞑ニ俾氏陆担罡弑l(fā)壓力、最高燃燒溫度、壓力升高率均下降,冷卻液散熱損失相對增加,因而燃油消耗率增加。因此,隨著負荷的減小,最佳點火提前角要提早。反之,負荷增大,最佳點火提前角要推遲。當車輛處于急加速或爬坡時,節(jié)氣門處于全開狀態(tài),由于大量混合汽迅速進入汽缸,發(fā)動機負荷迅速增加,混合汽燃燒速率加快,此時,如果燃油品質(zhì)不良或者標號達不到要求,就會出現(xiàn)敲缸現(xiàn)象(圖4)。
1.Si←0;
2.Wi←0;
3.n←0;
4.初始化評估權(quán)重系數(shù)r1+r2+r3+r4=1;
5.whilen≤Ndo
6. (Ii1,Ii2,Ii3,Ii4)←獲取歷史數(shù)據(jù)(cID,i);
11.n←n+1;
12.endwhile
14.查詢區(qū)塊鏈中該運營商i的懲罰交易賬單個數(shù)mi;
15.Ci=Si/Wi-100·(mi/N);
16.returnγi;

本地控制器會定期收集由SLA檢測模塊對網(wǎng)絡(luò)切片的檢測數(shù)據(jù),包括資源利用率、QoS完成度等.區(qū)塊鏈會記錄Si的歷史交易行為和這些檢測數(shù)據(jù),通過算法1聚合成信譽值.車聯(lián)網(wǎng)服務(wù)提供者可以通過輸入資源提供商cIDi的和歷史交易次數(shù)N來查詢該運營商的信譽值.
車聯(lián)網(wǎng)服務(wù)提供者從購買資源到將網(wǎng)絡(luò)切片打包成服務(wù)分發(fā)給用戶,其收益φ可以表示為:
φ=ψ(W)-∑i∈Wbi
(14)
其中ψ(W)代表將網(wǎng)絡(luò)切片打包成服務(wù)分發(fā)給用戶預(yù)計可以獲得的報酬,W是最終參與資源交易的資源提供者集合.
ψ(W)=∑i∈Wvi
(15)
vi=λ·ci·∑j∈1,2,3μij
(16)

車聯(lián)網(wǎng)服務(wù)提供者的目的是利潤最大化.擁有不同類型資源的運營商是參與網(wǎng)絡(luò)切片部署的核心部分,他們往往自私但行為理性.文獻[23]提出了一種基于Vickrey-Clarke-Groves(VCG)的拍賣機制來確定投標價格bi.這種拍賣機制實現(xiàn)了高效性、真實性和理性.

(17)
(18)
算法2.資源提供者選擇

輸出:W
1.W+←?,W←?,S-←?,Θ′←0;
2.foriinSdo
4.S←S
5.endif
6. 通過算法1獲取cIDi的信譽值γi;
8.S-←S-∪{i};
9.endif
10.endfor
11.W+←SS-;
12.whileΘ′<Θdo

15.W←W∪{i};
16.W+←W+
17.ifW+=?then

20.W←W∪{i};
21.S-←S-
22.endif
23.endwhile
24.returnW;

本文基于信用將PBFT[24]進行改進,PBFT 主要由一致性協(xié)議、視圖更改協(xié)議和檢查點協(xié)議組成.本文定義了一個信用評估來描述節(jié)點的狀態(tài),提出一種基于信譽值和節(jié)點狀態(tài)的投票機制,獎勵正確的節(jié)點,懲罰錯誤的節(jié)點.這樣可以增強可信節(jié)點的主動性,減少異常節(jié)點的參與.同時,為了使共識機制輕量化,參與交易驗證的節(jié)點均由參與交易的運營商提供.
設(shè)置3個從小到大的閾值δ1,δ2,δ3,將信用值分為4個信用等級.3個閾值的具體取值可以根據(jù)車聯(lián)網(wǎng)切片的實際安全需求來劃分,見表2.
基于信用的PBFT共識過程如下:
1)根據(jù)投票結(jié)果選出主節(jié)點參與共識.所有符合條件的及格節(jié)點參與投票選出其組織的主節(jié)點,投票包括“支持”、“反對”和“棄權(quán)”選項.在每次選舉中,節(jié)點可以支持(反對)一個節(jié)點,也可以棄權(quán).合格節(jié)點的信用值需要高于閾值δ1.令Nij表示運營商i中的節(jié)點j.Nij的投票結(jié)果被表示為:
(19)
其中,Sij表示節(jié)點Nij的信用等級;cij是Nij的信用值;W是參與交易的運營商集合;nk是運營商k參與選舉的節(jié)點數(shù);Vij表示Nij的投票選項,包括“支持”、“棄權(quán)”和“反對”,對應(yīng)的值分別為 1、0 和 -1.
2)根據(jù)基于信用的一致性協(xié)議選擇主節(jié)點生成塊.“優(yōu)秀”節(jié)點在競選時具有優(yōu)先級 ,“良好”節(jié)點可以在所有“優(yōu)秀”節(jié)點被選舉后或沒有“優(yōu)秀”節(jié)點參與競選后被選舉為主節(jié)點.“及格”節(jié)點不能作為主節(jié)點,但可以作為副節(jié)點.“無效”節(jié)點根本無法參與共識和投票.權(quán)限分類有效地防止了“及格”和“無效”節(jié)點成為主節(jié)點,不僅降低了視圖更改協(xié)議的頻率和節(jié)點之間的通信開銷,還能減少出塊的消耗時間.

“視圖更改”階段:一個副本節(jié)點進入視圖“v+1”,并在確定主節(jié)點處于非活動狀態(tài)時向所有節(jié)點廣播“視圖更改”消息.
“視圖更改-反饋”階段:節(jié)點在收到 2f+1 “視圖更改”消息(包括來自本身).新的主節(jié)點收到“視圖更改”和“視圖更改-反饋” 消息后進入“新-視圖”階段.
“新-視圖”階段:新的主節(jié)點選擇一個檢查點作為“新-視圖”請求的起始狀態(tài),然后根據(jù)本地區(qū)塊鏈數(shù)據(jù)執(zhí)行一致性協(xié)議.
4)檢查點協(xié)議.區(qū)塊鏈按時間順序進行驗證.根據(jù)區(qū)塊鏈的特性,寫在區(qū)塊鏈上的內(nèi)容和順序在整個網(wǎng)絡(luò)中是一體的,不能被篡改和打亂.當一個塊被寫入?yún)^(qū)塊鏈時,之前的驗證消息已經(jīng)被執(zhí)行并記錄在區(qū)塊鏈上.因此,本地內(nèi)存中的先前消息記錄是多余的,可以安全地刪除.
與傳統(tǒng)的通信安全和隱私保護不同,本文提出的5G車聯(lián)網(wǎng)切片資源交易框架使用區(qū)塊鏈和智能合約技術(shù)來確保投標和交易過程中的安全和隱私保護.區(qū)塊鏈保證了數(shù)據(jù)的可追溯性,智能合約的自動執(zhí)行保障了交易的安全進行.在投標和交易過程中使用假名為車聯(lián)網(wǎng)服務(wù)提供者和資源提供者帶來了隱私保護.本文考慮的與區(qū)塊鏈相關(guān)安全性能的包括:
1)抵御外部節(jié)點攻擊:一些未參與到該框架中的惡意運營商可能會在每筆交易的交易和記賬過程中竊取他人的隱私偏好信息等,從而破壞整個交易的可用性.因此,簽名認證、非對稱加密算法和加密令牌可以防止外部節(jié)點在提議的框架中獲取到這些隱私信息.
2)數(shù)據(jù)不可偽造性:任何攻擊者都不能破壞區(qū)塊鏈中的數(shù)據(jù).因為攻擊者無法偽造任何車輛或運營商的數(shù)字簽名,也無法控制網(wǎng)絡(luò)的大部分資源[25].即使攻擊、劫持或者控制區(qū)塊鏈中的少量車輛或地面基站,也無法訪問到原始數(shù)據(jù),因為它們都是通過密鑰加密的.
3)安全自執(zhí)行:在區(qū)塊鏈上運行的分布式資源交易智能合約是自主、自執(zhí)行、自維護的計算機代碼.智能合約不需要相互信任,完全是自動的.因此智能合約一旦生效[26],不需要人為因素,也沒有人為因素可以控制.
為了驗證提出方案的性能,本文設(shè)計兩種仿真實驗環(huán)境.一方面,建立由車聯(lián)網(wǎng)服務(wù)提供者和運營商組成的仿真實驗環(huán)境,以驗證資源交易的可行性;另一方面,模擬區(qū)塊鏈系統(tǒng)以測量基于信用的PBFT共識機制的出塊效率和惡意節(jié)點參與共識機制的案例.前者對應(yīng)仿真環(huán)境1,后者對應(yīng)仿真環(huán)境2.
4.2.1 資源交易的可行性
在仿真環(huán)境1中,ns-3模擬器模擬了圖2的實驗場景,用于設(shè)置車聯(lián)網(wǎng)服務(wù)提供者和運營商節(jié)點之間的無線通信環(huán)境.車聯(lián)網(wǎng)服務(wù)提供者使用 IEEE 802.11p 和 TCP 協(xié)議與運營商節(jié)點進行通信[27].為了評估信譽閾值和最高接受價格對資源交易的影響,利用MATLAB實現(xiàn)了詳細的拍賣算法.
實驗1將信譽閾值分別設(shè)置為60,70,80進行切片滿意度的評估,其他參數(shù)不變,運營商數(shù)量從10變?yōu)?0,步長為5,如圖4所示.實驗2將最高接受價格分別設(shè)置為80,90,100進行切片滿意度的評估,其他參數(shù)不變,運營商數(shù)量從10變?yōu)?0,步長為5,如圖5所示.隨著信譽閾值或最高接受價格的提高,切片滿意度在增長.同時,參與資源交易的運營商數(shù)量越多,切片滿意度也會提升.在適度的約束條件下,車聯(lián)網(wǎng)服務(wù)提供者可以在花費較低價格的同時,提供切片滿意度較高的車聯(lián)網(wǎng)切片服務(wù).

圖4 信譽閾值對切片滿意度對影響Fig.4 Impact of reputation threshold on slice satisfaction

圖5 最高接受價格對切片滿意度的影響Fig.5 Impact of the highest acceptance price on slice satisfaction
4.2.2 共識機制的性能
為了分析基于信用的PBFT共識機制的性能,根據(jù) Hyperledger Fabric V1.1 的要求配置系統(tǒng)環(huán)境,建立區(qū)塊鏈基礎(chǔ)設(shè)施網(wǎng)絡(luò).Hyperledger Fabric 平臺同時支持 TCP 和 UDP 協(xié)議.在區(qū)塊鏈網(wǎng)絡(luò)中建立一個由15 臺計算機組成的仿真平臺,運行Linux操作系統(tǒng),8GB內(nèi)存,I7-6700 CPU和GTX960顯卡.一個運營商中有5~20個編號的節(jié)點.交易在模擬中由Node11連續(xù)發(fā)起,以測試交易達成共識的時間.
在實驗3中,本文將PBET共識機制和提出的基于信用的PBFT共識機制進行比較,將參與共識的節(jié)點數(shù)量設(shè)置為10到50(步長為2)進行了測試.如圖6所示,隨著網(wǎng)關(guān)節(jié)點數(shù)量的增加,基于 PBFT 的方案達成共識所需的時間迅速增加.PBFT 共識機制的系統(tǒng)性能受節(jié)點數(shù)的影響很大,當節(jié)點數(shù)超過閾值時會大大降低.而本文提出的方案隨著節(jié)點數(shù)量的增加,性能依舊保持穩(wěn)定.

圖6 共識速度Fig.6 Consensus speed
在PBFT中,所有節(jié)點都參與共識,異常節(jié)點成為主節(jié)點的概率非常高.本文提出的共識機制使用投票機制來大幅降低這種概率,每輪選出3個代理節(jié)點參與最終共識.“優(yōu)秀”、“良好”、“及格”或“無效”節(jié)點的狀態(tài)分別設(shè)置為1.1、1.0、0.8和0.0.在實驗4中,第1輪共識進入前三名的節(jié)點Node1、Node2、Node3投票結(jié)果分別為78、70和68.在生成區(qū)塊時Node1被發(fā)現(xiàn)存在惡意生成區(qū)塊的行為,因此其狀態(tài)被更改為“及格”.在本次模擬中,通過100次重復(fù)實驗進行投票選舉,分析了第2輪共識后的“及格”節(jié)點的選舉結(jié)果,如圖7所示.從模擬結(jié)果來看,在100次選舉中,該“及格”節(jié)點只有1次進入了前3名,概率不到2%,遠低于PBFT.因此,本文基于信譽值改進的PBFT共識機制有效降低了異常節(jié)點參與共識的概率,提高了系統(tǒng)的安全性.

圖7 異常節(jié)點參與共識Fig.7 Abnormal node participation in consensus
5G網(wǎng)絡(luò)切片技術(shù)和區(qū)塊鏈技術(shù)的深度結(jié)合,為面向車聯(lián)網(wǎng)的服務(wù)提供了新的方向.本文設(shè)計了一種區(qū)塊鏈輔助的車聯(lián)網(wǎng)切片資源交易方法.由一個獨立的面向車聯(lián)網(wǎng)服務(wù)的可信第三方機構(gòu)租用現(xiàn)有的運營商基礎(chǔ)設(shè)施資源,包括通信、緩存、計算資源等.通過虛擬化方法對資源進行池化和編排,為車輛提供各種差異化服務(wù).本文在區(qū)塊鏈上部署了分布式資源交易智能合約,在交易過程中采集行為,實現(xiàn)了交易過程的公平性,同時保證了數(shù)據(jù)的可追溯性和不可篡改性.此外,定義了一個信譽評估機制,利用記錄在區(qū)塊鏈中的切片監(jiān)控數(shù)據(jù)對運營商的歷史行為和記錄進行打分.最后,本文提出一種基于信用和節(jié)點狀態(tài)的投票機制,有效減少了異常節(jié)點的參與.與基于PBFT的方案相比,本文改進的共識機制隨著節(jié)點數(shù)量的增加,共識時間并沒有較大的增加.未來的研究方向可以考慮對區(qū)塊鏈的數(shù)據(jù)存儲結(jié)構(gòu)進行優(yōu)化,也可以進一步探索如何通過博弈論和拍賣機制設(shè)計來提高資源交易的效率.