孫儼,熊翱,蔣承伶,王威,于東曉,郭少勇
(1.北京郵電大學(xué)網(wǎng)絡(luò)與交換技術(shù)國家重點(diǎn)實(shí)驗(yàn)室,北京 100876;2.國網(wǎng)江蘇省電力有限公司,江蘇 南京 210000;3.南京航空航天大學(xué)電子信息工程學(xué)院,江蘇 南京 211100;4.山東大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,山東 青島 266237)
隨著5G/6G 網(wǎng)絡(luò)的發(fā)展,由Wi-Fi、運(yùn)營商網(wǎng)絡(luò)、無線專網(wǎng)等組成的邊緣網(wǎng)絡(luò)支撐著各類時延敏感型業(yè)務(wù)的低時延、高速率運(yùn)行[1-3]。但在邊緣網(wǎng)絡(luò)環(huán)境中,計(jì)算與無線通信資源受限,傳統(tǒng)分散、獨(dú)占式資源分配模式限制了邊緣網(wǎng)絡(luò)資源的復(fù)用能力[4],考慮如何通過多種資源聯(lián)合管理實(shí)現(xiàn)分散邊緣網(wǎng)絡(luò)資源的共享共用,全面提升網(wǎng)絡(luò)資源利用率成為移動邊緣計(jì)算(MEC,mobile edge computing)的新發(fā)展趨勢。
由于傳統(tǒng)的集中式資源調(diào)度流程不透明,網(wǎng)絡(luò)主體間缺乏信任,在資源分配過程中易出現(xiàn)收益分配不均等問題。除此之外,網(wǎng)絡(luò)中可能存在惡意節(jié)點(diǎn)發(fā)出虛假資源請求或向系統(tǒng)謊報自身資源擁有量,影響資源分配流程,降低系統(tǒng)整體性能。區(qū)塊鏈的應(yīng)用將成為有效解決節(jié)點(diǎn)間信任問題、降低惡意節(jié)點(diǎn)影響的有效手段[5-7]。
在邊緣網(wǎng)絡(luò)領(lǐng)域,學(xué)術(shù)界提出了大量資源調(diào)度方案。文獻(xiàn)[8]提出了一種單個無線通信資源無預(yù)算市場,文獻(xiàn)[9]在此基礎(chǔ)上提出了一種新的聯(lián)合資源和收入優(yōu)化模型,使更多網(wǎng)絡(luò)切片能得到滿足的同時提高了網(wǎng)絡(luò)的收入。文獻(xiàn)[10]提出了一種基于雙向拍賣法的市場化資源分配模型,使系統(tǒng)達(dá)到一個所有代理都受益的競爭平衡,解決了移動數(shù)據(jù)卸載市場中頻譜資源分配問題。為解決資源分配過程中的信任與安全問題,區(qū)塊鏈技術(shù)逐漸被研究者采用。文獻(xiàn)[11]提出了一種基于區(qū)塊鏈的邊緣計(jì)算場景下的計(jì)算資源分配框架,該框架利用區(qū)塊鏈解決了計(jì)算資源分配過程中的安全和隱私問題。文獻(xiàn)[12]提出了一種適應(yīng)邊緣設(shè)備局限性的區(qū)塊鏈系統(tǒng),可以公平、高效地分配邊緣設(shè)備上的存儲資源。文獻(xiàn)[13]提出了一種基于區(qū)塊鏈的移動虛擬網(wǎng)絡(luò)運(yùn)營商之間的資源交易框架,解決了無線網(wǎng)絡(luò)中的安全和隱私問題對運(yùn)營商之間資源交易的影響。文獻(xiàn)[8-13]雖然都提出了有效的資源分配方式,但都僅考慮單種資源的有效利用,未考慮多種資源的聯(lián)合管理分配。文獻(xiàn)[14]提出了一種綜合考慮價格策略和計(jì)算資源分配策略的激勵機(jī)制,使用基于Stackelberg 博弈的方法實(shí)現(xiàn)了價格與資源的均衡。文獻(xiàn)[15]提出了一種邊緣云任務(wù)卸載能耗最小化模型,通過綜合考慮數(shù)據(jù)的傳輸功率與邊緣側(cè)計(jì)算能力,最小化任務(wù)卸載的能量消耗。文獻(xiàn)[14-15]都對多種資源進(jìn)行了聯(lián)合優(yōu)化,實(shí)現(xiàn)了資源的有效利用,但其集中式的任務(wù)卸載與資源分配決策易出現(xiàn)公平性問題,且易受到惡意攻擊。文獻(xiàn)[16]提出了一種預(yù)算有限的市場模式,并擴(kuò)展到文獻(xiàn)[17]的入場控制,提出一種融合準(zhǔn)入控制與資源分配技術(shù)的網(wǎng)絡(luò)切片架構(gòu),并證明了該系統(tǒng)可保持納什均衡。文獻(xiàn)[18]提出了一種計(jì)算與無線通信資源聯(lián)合優(yōu)化方法,然而該方法將計(jì)算任務(wù)卸載到云端降低了移動邊緣側(cè)的壓力,在無線通信資源受限場景下難以滿足業(yè)務(wù)的時延要求。文獻(xiàn)[19-20]都使用游戲理論工具處理計(jì)算資源分配問題,提出了基于費(fèi)舍爾市場的移動邊緣計(jì)算資源管理模型。文獻(xiàn)[16-20]雖然對多種資源的聯(lián)合管理問題進(jìn)行了研究,且多采用市場化分配方式,但并未考慮市場中節(jié)點(diǎn)間的信任問題。
為解決以上問題,本文提出了基于區(qū)塊鏈的計(jì)算與無線通信資源聯(lián)合管理雙向拍賣模型,主要研究工作如下。
1) 提出一種多資源聯(lián)合管理模型,并基于該模型提出了多資源聯(lián)合管理的拍賣算法,利用雙向拍賣機(jī)制實(shí)現(xiàn)計(jì)算與無線通信資源分配,在資源分配過程中進(jìn)行多種資源聯(lián)合管理,有效降低資源瓶頸問題對系統(tǒng)性能帶來的影響。
2) 將節(jié)點(diǎn)資源、資源分配結(jié)果等信息存儲于區(qū)塊鏈中,即使在跨域資源分配的場景下,這些信息也無法被篡改,同時在資源拍賣前基于這些信息進(jìn)行可信檢查,解決資源共享過程中各方信任缺失問題。
3) 通過性能分析驗(yàn)證了網(wǎng)絡(luò)中資源瓶頸對系統(tǒng)性能與資源分配結(jié)果的影響,將本文所提算法與傳統(tǒng)資源分配算法進(jìn)行比較,驗(yàn)證本文模型有效提高了系統(tǒng)性能以及資源利用率。
本文提出的基于區(qū)塊鏈的計(jì)算與無線通信資源聯(lián)合管理雙向拍賣模型如圖1 所示。模型主要包括用戶、服務(wù)提供者(SP,service provider)、邊緣計(jì)算節(jié)點(diǎn)、無線通信基站、區(qū)塊鏈平臺(由區(qū)塊鏈節(jié)點(diǎn)組成)。其中,服務(wù)提供者是參與拍賣的買方主體,收到用戶服務(wù)請求后購買所需資源,邊緣計(jì)算節(jié)點(diǎn)與無線通信基站作為資源擁有者即賣方,向區(qū)塊鏈提交收集到的信息并參與拍賣。拍賣基于區(qū)塊鏈進(jìn)行,并可隨時查詢存儲于區(qū)塊鏈賬本中的各節(jié)點(diǎn)信息,確保買賣雙方可信。區(qū)塊鏈接收到買方資源請求和賣方資源信息與報價后,自動觸發(fā)雙向拍賣智能合約,進(jìn)行資源分配。同時,資源分配結(jié)果將向全網(wǎng)廣播,保證資源分配結(jié)果的透明性及可靠性。
圖1 基于區(qū)塊鏈的計(jì)算與無線通信資源聯(lián)合管理雙向拍賣模型
考慮一個移動邊緣計(jì)算場景,其中多個邊緣計(jì)算節(jié)點(diǎn)構(gòu)成MEC 聚類,令M為此聚類中的邊緣計(jì)算節(jié)點(diǎn)集合,R為不同計(jì)算資源類型集合(如CPU資源、存儲資源),為邊緣計(jì)算節(jié)點(diǎn)m∈M中類型為r∈R的資源可用容量,由于本文模擬一個異構(gòu)的MEC 集群,因此原則上各不相同??紤]一個無線接入網(wǎng)絡(luò),邊緣計(jì)算系統(tǒng)中的用戶可以通過無線接入網(wǎng)絡(luò)將工作上傳到邊緣計(jì)算節(jié)點(diǎn)中。令W為可用于訪問MEC 聚類的無線通信基站集合,為基站w∈W可用的無線通信資源容量。服務(wù)提供者以網(wǎng)絡(luò)切片的形式擁有計(jì)算和無線通信資源的虛擬捆綁包,并使用這些資源為用戶提供特定的MEC 服務(wù)。獨(dú)立于網(wǎng)絡(luò)中不同的域,向同一服務(wù)提供者請求的服務(wù)因其工作內(nèi)容相同,往往也會表現(xiàn)出相同的資源需求。令S為服務(wù)提供者集合,對于特定服務(wù)提供者s∈S,本文將定義為完成s的一項(xiàng)工作所需的r型計(jì)算資源量,同樣,表示通過基站w上傳s的工作所需的無線通信資源量,這2 個參數(shù)表示最少為特定工作分配多少資源量即可使其正常運(yùn)行。本文將這些參數(shù)用于描述特定服務(wù)類型。值得注意的是,鑒于MEC 應(yīng)用種類繁多,服務(wù)可以呈現(xiàn)不同的需求描述,可能有CPU 密集型服務(wù),其CPU 需求可能相對高于其內(nèi)存需求,或者工作有效載荷大于其他有效載荷的網(wǎng)絡(luò)密集型服務(wù),因此需要更高的頻譜資源分配,即頻譜密集型服務(wù)。在第3 節(jié)的實(shí)驗(yàn)中,本文將配置不同的資源需求數(shù)量來模擬現(xiàn)實(shí)中的多種服務(wù)類型。系統(tǒng)參數(shù)及其相關(guān)含義如表1 所示。
表1 系統(tǒng)參數(shù)及其相關(guān)含義
令us,m,r為邊緣計(jì)算節(jié)點(diǎn)m中保留給服務(wù)提供者s的r型計(jì)算資源的數(shù)量,對于任何資源r,表示s的并發(fā)作業(yè)的最大數(shù)量。由于并發(fā)執(zhí)行工作的實(shí)際數(shù)量受瓶頸資源的限制,因此本文必須考慮所有計(jì)算資源中最稀缺的類型。通過對系統(tǒng)中的節(jié)點(diǎn)求和,本文獲得了服務(wù)提供者s在MEC 域中以可接受的性能同時執(zhí)行的最大作業(yè)數(shù),即
其中,Us表示特定計(jì)算資源分配方案。
同樣,通過將vs,w設(shè)為無線通信基站w中分配給服務(wù)提供者s的網(wǎng)絡(luò)資源,可以將vs,w與之間的比率確定為可以通過基站w同時發(fā)送到的服務(wù)提供者s的最大工作負(fù)載數(shù)。綜合系統(tǒng)中的所有基站,本文可以得出在給定的網(wǎng)絡(luò)資源分配方案Vs下通過RAN 域上傳到服務(wù)提供者s的最大作業(yè)數(shù),即
最后,由于并發(fā)執(zhí)行的作業(yè)數(shù)受性能最低的資源域的限制,不能超過在性能最低域內(nèi)所能執(zhí)行的任務(wù)數(shù),因此本文可以將服務(wù)提供者的效用,即服務(wù)提供者所能并發(fā)執(zhí)行的最大作業(yè)數(shù)表示為
因此,系統(tǒng)性能可由各服務(wù)提供者效用得出,本文定義單個服務(wù)提供者的效用為其預(yù)算與所執(zhí)行作業(yè)數(shù)相乘,則系統(tǒng)整體效益的優(yōu)化目標(biāo)函數(shù)可表示為
其中,Bs為服務(wù)提供者s參與資源交易的預(yù)算,由所收到的服務(wù)請求的預(yù)算綜合確定,特定服務(wù)的預(yù)算與其重要性相關(guān)并事先確定,即服務(wù)重要性越高預(yù)算也就越高,所能購買的資源越多。
該模型優(yōu)化目標(biāo)函數(shù)旨在考慮系統(tǒng)性能瓶頸的前提下最大化系統(tǒng)效益,以服務(wù)提供者的預(yù)算為其所執(zhí)行的作業(yè)數(shù)加權(quán),預(yù)算越高則優(yōu)先級越高,能為系統(tǒng)帶來的效益越高。
在此模型中,本文希望服務(wù)提供者成為理性的代理,所有這些服務(wù)提供者的目標(biāo)都是在預(yù)算約束下購買資源,同時可實(shí)現(xiàn)最大化系統(tǒng)效用(即最大化同時可執(zhí)行的工作數(shù)量)的資源組合來追求其利益。每個提供者的預(yù)算額都具有執(zhí)行服務(wù)優(yōu)先級的附加功能。例如,假設(shè)2 個服務(wù)提供者具有相同的需求特征,但預(yù)算不同,則預(yù)算較高的服務(wù)提供者將受到市場模型的青睞,因?yàn)樗心芰徺I更大的資源包,即能為系統(tǒng)總體效用提供更大貢獻(xiàn)。
為保證fs為整數(shù),避免理論效益與實(shí)際效益產(chǎn)生偏差,令hs,m為在邊緣計(jì)算節(jié)點(diǎn)m中執(zhí)行的服務(wù)提供者s所執(zhí)行的并發(fā)任務(wù)數(shù)(整數(shù)),hs,w為服務(wù)提供者s通過無線通信基站w同時上傳的任務(wù)數(shù)量(整數(shù)),該優(yōu)化模型的約束為
其中,約束C1代表服務(wù)提供者s在邊緣計(jì)算節(jié)點(diǎn)m中所執(zhí)行的任務(wù)數(shù)量不能超過m分配給其的計(jì)算資源限制;約束C2代表服務(wù)提供者s通過基站w上傳的任務(wù)數(shù)不能超過w分配給其的通信資源限制;約束C3代表服務(wù)提供者s的效用,即完成的任務(wù)總量不能超過在邊緣計(jì)算節(jié)點(diǎn)m中執(zhí)行的任務(wù)總量;約束C4代表服務(wù)提供者s完成的任務(wù)總量不能超過分配給其的無線通信資源的限制;約束C5和C6分別代表分配給所有服務(wù)提供者的計(jì)算資源與無線通信資源總量不能超過網(wǎng)絡(luò)中計(jì)算資源與無線通信資源存量的限制;約束C7代表分配給各服務(wù)提供者的資源數(shù)量與邊緣計(jì)算節(jié)點(diǎn)m執(zhí)行的任務(wù)數(shù)量為正數(shù)。
在雙向拍賣中,買方希望為獲得所需資源而付出的價格盡量低,賣方則希望售出的資源能獲得更高的利潤,即成交價盡量高,因此雙向拍賣追求更高的買方價格與更低的賣方價格達(dá)成交易。假設(shè)在某輪拍賣中共有n筆交易達(dá)成,在第i筆拍賣交易中某買方s以ps,i的出價與出價為qm,i的賣方m達(dá)成交易,則拍賣模型可表示為
該拍賣模型服從以下約束
其中,約束C8代表買方所有出價的總和不能超過其預(yù)算限制;約束C9保證買賣雙方出價為正數(shù)。
式(4)為系統(tǒng)性能的優(yōu)化函數(shù),式(6)為拍賣過程中的買賣雙方收益優(yōu)化函數(shù),本文系統(tǒng)希望同時優(yōu)化這2 個指標(biāo),并保證系統(tǒng)性能與買賣雙方收益的最大化。
由于邊緣環(huán)境中各類資源分布零散,因此本文在系統(tǒng)中設(shè)置了網(wǎng)絡(luò)管理員,統(tǒng)一管理一定范圍內(nèi)的資源,并根據(jù)管理范圍內(nèi)的資源存量進(jìn)行資源定價,作為資源擁有者的代理,以賣方身份參與資源拍賣。
另一方面,服務(wù)提供者購買資源為用戶提供特定服務(wù),即作為用戶的代理以買方的身份參與資源拍賣。
基于該模型的雙向拍賣資源分配流程主要包括拍賣準(zhǔn)備階段、報價提交階段、拍賣合約執(zhí)行階段和資源分配階段。
1) 拍賣準(zhǔn)備階段。用戶根據(jù)所需服務(wù)向特定服務(wù)提供者請求服務(wù),服務(wù)提供者根據(jù)收到的服務(wù)請求確定參與拍賣的預(yù)算。邊緣計(jì)算節(jié)點(diǎn)與無線通信基站確定參與此次拍賣的資源量后將其提交給網(wǎng)絡(luò)管理員,網(wǎng)絡(luò)管理員根據(jù)資源存量確定資源定價。同時,用戶將所需服務(wù)及對應(yīng)資源需求提交到區(qū)塊鏈節(jié)點(diǎn),邊緣計(jì)算節(jié)點(diǎn)與無線通信基站將參與拍賣的資源信息存儲于區(qū)塊鏈中,方便智能合約對買賣雙方提交的信息進(jìn)行檢查。區(qū)塊鏈借助其信息不可篡改的性質(zhì)可有效保護(hù)這些信息,防止惡意節(jié)點(diǎn)篡改相關(guān)信息,影響拍賣階段的可信檢查流程。
2) 報價提交階段。拍賣開始之前買賣雙方向區(qū)塊鏈節(jié)點(diǎn)提交資源與報價信息,這些信息將被記錄于區(qū)塊鏈中留待拍賣合約的調(diào)用。服務(wù)提供者(買方)提交此次拍賣所需購買的資源以及對各類資源的報價,網(wǎng)絡(luò)管理員(賣方)提交參與此次拍賣的資源數(shù)量以及對其的出價。
3) 拍賣合約執(zhí)行階段。每隔一段時間拍賣合約自動觸發(fā)并獲得買賣雙方提交的資源與報價信息。合約從區(qū)塊鏈中查詢用戶所需服務(wù)信息、邊緣計(jì)算節(jié)點(diǎn)與無線通信基站資源存量,并與買賣雙方所提交的數(shù)據(jù)進(jìn)行核對,核對一致后合約確定當(dāng)前參與拍賣的節(jié)點(diǎn)可信,根據(jù)各方報價,按照資源分配算法確定最優(yōu)分配方案,得出拍賣結(jié)果。智能合約借助其自動執(zhí)行且不可逆的優(yōu)勢,保證交易過程不受外界干擾,可保障交易的公平性、有效性。
4) 資源分配階段。拍賣結(jié)束之后買賣雙方得和資源分配方案,網(wǎng)絡(luò)管理員進(jìn)行網(wǎng)絡(luò)資源的具體分配,資源提供者向?qū)?yīng)買家即服務(wù)提供者提供對應(yīng)資源,服務(wù)提供者獲得對應(yīng)資源后向用戶提供所需服務(wù)。資源分配方案將被存儲于區(qū)塊鏈中,所有流程信息公開透明,受所有節(jié)點(diǎn)共同監(jiān)督,且不會被篡改,可有效解決參與資源交易的節(jié)點(diǎn)間的信任問題。
考慮到資源分配方案的時效性,網(wǎng)絡(luò)中的資源需求和資源擁有者對資源的定價會隨著時間變化。網(wǎng)絡(luò)中的用戶會隨時提出新的服務(wù)請求,服務(wù)提供者也就會產(chǎn)生資源需求的變化;同時,隨著網(wǎng)絡(luò)中分配出去的資源被利用完畢,空閑資源存量發(fā)生變化,網(wǎng)絡(luò)管理員也會根據(jù)資源存量變化動態(tài)調(diào)整資源定價以獲得更高收益[21]。最優(yōu)資源分配方案也將隨之變化,因此本文模型將在每輪拍賣中對資源進(jìn)行重新分配。每輪拍賣結(jié)束后的一段時間內(nèi),網(wǎng)絡(luò)中的用戶將會提出新的服務(wù)請求,產(chǎn)生新的資源需求,對于預(yù)算更高(即優(yōu)先級更高)的任務(wù),本文拍賣模型將采用搶占式資源分配方式,將已分配給較低優(yōu)先級任務(wù)的資源重新分配給較高優(yōu)先級任務(wù),待高優(yōu)先級任務(wù)執(zhí)行完成后再將資源返還給低優(yōu)先級任務(wù)。同時,每輪拍賣后資源擁有者將根據(jù)網(wǎng)絡(luò)中資源需求與存量情況調(diào)整資源定價,同樣影響下一輪的資源分配結(jié)果。
公有區(qū)塊鏈和聯(lián)盟(或私有)區(qū)塊鏈?zhǔn)菂^(qū)塊鏈現(xiàn)有的2 種形式。邊緣計(jì)算環(huán)境下一些設(shè)備無法滿足公有區(qū)塊鏈資源需求,如工作量證明(PoW,proof of work)共識的高資源需求。此外,對于公有區(qū)塊鏈,大量的邊緣計(jì)算設(shè)備使交易驗(yàn)證效率較低。與公有區(qū)塊鏈相比,聯(lián)盟區(qū)塊鏈中的交易驗(yàn)證只需要預(yù)先選擇高功率節(jié)點(diǎn),其成本更小,效率更高[22],因此,本文利用聯(lián)盟區(qū)塊鏈構(gòu)建資源交易平臺。
除此之外,傳統(tǒng)的PoW 共識將會消耗大量的能量,共識效率低;而權(quán)益證明(PoS,proof of stake)共識雖然提高了共識效率、降低了計(jì)算成本,同時也面臨著無利害攻擊、長程攻擊等安全威脅,因此本文所設(shè)計(jì)的區(qū)塊鏈系統(tǒng)采用文獻(xiàn)[23]提出的交易量證明(PoT,proof of trading)共識。PoT 共識結(jié)合2 種傳統(tǒng)共識機(jī)制,在保證安全性的前提下提高了共識的效率。
在本文的資源交易系統(tǒng)中,區(qū)塊鏈節(jié)點(diǎn)作為連接服務(wù)提供者與資源擁有者的橋梁,應(yīng)當(dāng)證明區(qū)塊鏈節(jié)點(diǎn)促進(jìn)了成功的資源交易而不是在PoW 共識中單純地解決了一個哈希謎題,對于某區(qū)塊鏈節(jié)點(diǎn),PoT 共識以一段時間內(nèi)成功完成的交易量為其股權(quán),根據(jù)股權(quán)動態(tài)調(diào)整求解哈希謎題的難度,交易量越多求解難度越低,該節(jié)點(diǎn)也就越容易獲得記賬權(quán)。通過這一方式,PoT 共識大大提高了共識效率,降低了共識的能量消耗,更適用于邊緣計(jì)算場景與時延敏感型業(yè)務(wù)。
基于以上系統(tǒng)模型,本文利用智能合約設(shè)計(jì)了計(jì)算與無線通信資源聯(lián)合管理分配算法,算法流程如圖2 所示,主要包括拍賣前的可信檢查和資源拍賣2 個部分。
圖2 基于智能合約的計(jì)算與無線通信資源聯(lián)合管理分配算法流程
拍賣合約確認(rèn)拍賣雙方可信主要包括2 個流程,1) 服務(wù)請求方(用戶)和資源擁有者(邊緣計(jì)算節(jié)點(diǎn)與無線通信基站)向區(qū)塊鏈上傳自身服務(wù)需求或資源存量信息,2) 智能合約從區(qū)塊鏈中獲取這些數(shù)據(jù)并與拍賣雙方代理(各服務(wù)提供者與網(wǎng)絡(luò)管理員)所提交的報價、資源量進(jìn)行對比,保證買方所提交的預(yù)算、資源需求量符合用戶的實(shí)際服務(wù)需求,賣方所提交的參與拍賣的資源量符合實(shí)際情況,隨后開始拍賣流程。
用戶需同時向區(qū)塊鏈發(fā)送自身所需服務(wù)信息,由于同種服務(wù)類型具有相同的資源需求量與預(yù)算,因此拍賣合約可根據(jù)用戶所需的服務(wù)信息確定買方所需資源總量與預(yù)算,保證買方未偽造自身資源需求與預(yù)算來獲得更多資源分配量。資源擁有者同時向網(wǎng)絡(luò)管理員和區(qū)塊鏈提供自身所能提供的資源信息,拍賣合約通過查詢區(qū)塊鏈獲取資源擁有者的實(shí)際資源存量,與賣方所提交的資源存量進(jìn)行對比,保證賣方未偽造資源存量以獲得額外收益或影響實(shí)際資源分配。
作為一個分布式賬本,區(qū)塊鏈中的數(shù)據(jù)由鏈上所有節(jié)點(diǎn)共同擁有和維護(hù),同時區(qū)塊鏈的共識機(jī)制使網(wǎng)絡(luò)中節(jié)點(diǎn)對信息的修改需獲得其他節(jié)點(diǎn)的同意,保證了數(shù)據(jù)的真實(shí)可靠與不可篡改性。因此采用區(qū)塊鏈可有效保證拍賣合約準(zhǔn)確判斷參與拍賣節(jié)點(diǎn)的可信性,排除不可信節(jié)點(diǎn),保證資源分配有效進(jìn)行。
在傳統(tǒng)雙向拍賣中,買賣雙方提交報價后,拍賣算法將買方報價降序排序,賣方報價升序排序,即買方出價越高優(yōu)先級越高,賣方出價越低優(yōu)先級越高,按照此規(guī)則確定拍賣最終結(jié)果。但如第1 節(jié)中所述,不同域的資源與同域不同類資源分配場景中,資源瓶頸的問題影響著系統(tǒng)整體性能,因此不能僅考慮單種資源拍賣結(jié)果,也需考慮該分配方式下資源瓶頸帶來的影響。因此本文提出了多資源聯(lián)合管理雙向拍賣(JMDA,joint management double auction)算法。
通過分析可知,并發(fā)執(zhí)行的作業(yè)數(shù)受到性能最低域的限制,因此本文分配算法首先找到性能最低的資源域,以服務(wù)提供者對該資源的需求量進(jìn)行加權(quán),得到新的優(yōu)先級,并以此得到拍賣的最終結(jié)果。因?qū)δ撤N資源需求越高或是系統(tǒng)資源量越少,則在某項(xiàng)資源上等候時間越長,該資源域性能也就越低,因此可用某種資源的需求指數(shù)來找到性能最低的資源域。
按照系統(tǒng)內(nèi)各類資源排序后得出最易產(chǎn)生資源瓶頸的資源類型,按照各個服務(wù)提供者對該資源的需求數(shù)進(jìn)行加權(quán)得到加權(quán)預(yù)算,即新的優(yōu)先級,并以此確定拍賣的勝者。當(dāng)r型計(jì)算資源或w型無線通信資源成為資源瓶頸時,加權(quán)預(yù)算Bs′可分別由式(10)和式(11)得出。
得出新的買方預(yù)算后將買方預(yù)算按降序排列形成買方優(yōu)先級隊(duì)列Pb,同時將不同種類資源賣方的報價按照升序分別排列形成多個賣方優(yōu)先級隊(duì)列Ps,r與Ps,w。拍賣流程開始后,買方選擇資源量符合自身需求且優(yōu)先級最高的賣方,賣方將在選擇自身的買家中挑選優(yōu)先級最高,即預(yù)算最高的買方。為避免資源死鎖,只有在某輪拍賣中所有資源需求都得到滿足的買方才可與各賣方達(dá)成交易,未能滿足所有資源需求的買方即使被某賣方選擇,也無法與其達(dá)成交易。未達(dá)成交易的買賣雙方將形成新的優(yōu)先級隊(duì)列,達(dá)成交易的賣方若還有資源存量,則更新本輪拍賣后自身剩余資源,并加入優(yōu)先級隊(duì)列中開始下一輪拍賣,若在某輪中沒有達(dá)成任何交易或產(chǎn)生的優(yōu)先級隊(duì)列有一個為空,則結(jié)束此次雙向拍賣流程。因此最終的資源聯(lián)合管理雙向拍賣算法如算法1 所示。
算法1資源聯(lián)合管理雙向拍賣算法
2) 將需求指數(shù)排序,找出成為性能瓶頸的資源類型;
3) 根據(jù)式(10)和式(11)對買方預(yù)算進(jìn)行加權(quán),更新參與拍賣的實(shí)際預(yù)算;
4) 按照買賣雙方報價排序生成優(yōu)先級隊(duì)列Pb、Ps,r與Ps,w;
5) 循環(huán)
6) 根據(jù)Bs確定買方購買各項(xiàng)資源的預(yù)算ps,i,根據(jù)式(6)確定雙向拍賣初步匹配結(jié)果;
7) 檢查初步匹配后各買家資源需求,如果某買方所有資源需求均達(dá)成匹配,則確定與對應(yīng)資源買方達(dá)成交易,更新資源量
8) 否則該買方本輪交易失??;
10) 直到本輪未達(dá)成交易或優(yōu)先級隊(duì)列有一個為空,循環(huán)結(jié)束。
本文仿真所構(gòu)建的網(wǎng)絡(luò)采用CPU 資源與存儲資源代表2 種不同的計(jì)算資源。為表現(xiàn)網(wǎng)絡(luò)中不同服務(wù)需求的資源異質(zhì)性,本文定義了4 種不同的服務(wù)模板,這4 種模板分別代表了邊緣計(jì)算中可能出現(xiàn)的4 種不同服務(wù)配置,其中,3 種按照對某種資源的大量需求,分為CPU 密集型服務(wù)、存儲密集型服務(wù)和頻譜密集型服務(wù),另外一種為各類資源均有較高需求的均衡型服務(wù)。表2 列出了這些服務(wù)模板的具體數(shù)值配置。
表2 服務(wù)模板的具體數(shù)值配置
對于賣方,即各類資源擁有者,本文構(gòu)建了異構(gòu)網(wǎng)絡(luò)基站與計(jì)算資源節(jié)點(diǎn)組成的MEC/RAN 系統(tǒng)。對于MEC 域,本文確定了兩類邊緣計(jì)算節(jié)點(diǎn),一類是具有更多CPU 資源的CPU 節(jié)點(diǎn),另一類是具有更多存儲資源的存儲節(jié)點(diǎn);對于RAN 域,本文確定了可提供40 MHz 的大無線通信基站與可提供20 MHz 的小無線通信基站。邊緣計(jì)算節(jié)點(diǎn)與無線通信基站的具體配置如表3 所示。
表3 邊緣計(jì)算節(jié)點(diǎn)與無線通信基站的具體配置
本文所構(gòu)建的網(wǎng)絡(luò)包括5 個CPU 節(jié)點(diǎn)與5 個存儲節(jié)點(diǎn),同時配置大小無線通信基站各2 個。
在實(shí)驗(yàn)的每次流程中,若干上述服務(wù)模板中包含的服務(wù)將被隨機(jī)分配給15 個不同的服務(wù)提供者,模仿不同用戶向服務(wù)提供者發(fā)出服務(wù)請求。同一服務(wù)提供者可能收到多個服務(wù)請求,模仿網(wǎng)絡(luò)中多個用戶向同一服務(wù)提供者發(fā)出請求的情況。
本文使用系統(tǒng)整體效率觀察系統(tǒng)整體性能,定義系統(tǒng)整體效率為一次資源分配后成功執(zhí)行的任務(wù)收益總量與網(wǎng)絡(luò)中所被請求的任務(wù)收益總量之比,在系統(tǒng)整體可提供資源數(shù)量固定的情況下,采取不同資源分配策略,執(zhí)行相同系列任務(wù)的效率越高,則采用該算法的系統(tǒng)性能越高。
本文將所提出的JMDA 算法與已有研究中的單輪雙向拍賣(SRDA,single round double auction)算法與動態(tài)價格雙向拍賣(DPDA,dynamic price double auction)算法[24]進(jìn)行對比。SRDA 算法只進(jìn)行一輪拍賣就結(jié)束拍賣流程,能在短時間內(nèi)達(dá)成交易匹配,同時采用VCG 機(jī)制抑制買方偽造資源需求的行為;DPDA 算法在拍賣過程中動態(tài)調(diào)整各方的出價進(jìn)行多輪拍賣,以達(dá)成更多的交易匹配數(shù)量。以上2 種算法均將不同資源的交易當(dāng)作獨(dú)立的過程,而JMDA算法考慮了稀缺資源對任務(wù)執(zhí)行的影響,將不同類型資源進(jìn)行聯(lián)合管理,減少了資源的浪費(fèi);同時,JMDA算法通常連續(xù)進(jìn)行多輪拍賣,提升了資源交易達(dá)成數(shù)量。系統(tǒng)整體效率對比如圖3 所示。
圖3 系統(tǒng)整體效率對比
對3 種算法對比分析可知,隨著服務(wù)請求數(shù)不斷提升,采用SRDA 算法和DPDA 算法的系統(tǒng)因未考慮資源瓶頸的影響,整體效率迅速降低,而JMDA算法則可有效避免資源瓶頸并保持高效率,之后效率則會受系統(tǒng)資源總量限制而下降。其中,SRDA 算法因僅進(jìn)行一輪拍賣,大量買賣雙方在單輪交易中難以達(dá)成交易,造成其系統(tǒng)整體效率長期處于較低狀態(tài)。
在本節(jié)仿真環(huán)境中,由于系統(tǒng)中資源存量相同,系統(tǒng)效率越高也就意味著系統(tǒng)中的資源得到了更好的利用,當(dāng)系統(tǒng)整體效率無法達(dá)到100%時,意味著使用這種算法的系統(tǒng)性能達(dá)到極限,無法利用系統(tǒng)資源完成當(dāng)前所有任務(wù)。由圖3 可知,使用其他2 種算法的系統(tǒng)均比使用本文算法的系統(tǒng)更快達(dá)到性能極限;在服務(wù)請求數(shù)達(dá)到30 之后,3 種算法的系統(tǒng)效率都不足100%,而使用本文算法的系統(tǒng)性能始終高于其他2 種系統(tǒng)。以上兩點(diǎn)說明本文算法提高了系統(tǒng)的資源利用率。
為了驗(yàn)證系統(tǒng)中買方預(yù)算對資源分配的影響,本文使用JMDA 算法分別從系統(tǒng)角度和單個服務(wù)的角度進(jìn)行對比分析。在實(shí)驗(yàn)中,本文固定總服務(wù)請求數(shù)為60,保持其他類型服務(wù)的預(yù)算不變,逐漸增加前述CPU 密集型服務(wù)的預(yù)算,得到的系統(tǒng)整體效率隨預(yù)算變化如圖4所示,隨著CPU密集型服務(wù)的預(yù)算不斷提升,系統(tǒng)更傾向于將資源分配給該服務(wù),而該服務(wù)僅需少量資源即可創(chuàng)造較高的收益,相較于高資源需求型服務(wù)可有效提高系統(tǒng)整體效率。存儲密集型與頻譜密集型服務(wù)因?yàn)榕cCPU 密集型服務(wù)類似也僅需相對少的資源即可創(chuàng)造較高收益,因此保持其他服務(wù)的預(yù)算不變,這2 種服務(wù)中的某種服務(wù)預(yù)算升高時,同樣將使系統(tǒng)整體效率提高,但若均衡型服務(wù)獲得更高的預(yù)算,系統(tǒng)整體效率將因其大量的資源需求而降低。
圖4 系統(tǒng)整體效率隨CPU 密集型服務(wù)預(yù)算變化
單個服務(wù)完成數(shù)隨CPU 密集型服務(wù)預(yù)算變化如圖5 所示。隨著CPU 密集型服務(wù)預(yù)算的增加,該服務(wù)被分配越來越多的資源,證明了JMDA 算法的預(yù)算優(yōu)先級效應(yīng),均衡型服務(wù)因在相同資源分配情況下所能提供的效益遠(yuǎn)小于CPU 密集型,被分配的資源越來越少。
圖5 單個服務(wù)完成數(shù)隨CPU 密集型服務(wù)預(yù)算變化
圖6 和圖7 給出了使用JMDA 算法的系統(tǒng)中,頻譜密集型服務(wù)和均衡型服務(wù)的服務(wù)完成數(shù)隨系統(tǒng)中計(jì)算資源和無線通信資源節(jié)點(diǎn)數(shù)目的變化。保持系統(tǒng)中無線通信資源節(jié)點(diǎn)數(shù)目不變,計(jì)算資源的逐步減少使其成為系統(tǒng)性能瓶頸,由于均衡型服務(wù)需要大量計(jì)算資源而頻譜密集型服務(wù)僅需少量計(jì)算資源,因此算法初始時更多地將資源分配給頻譜密集型服務(wù)。當(dāng)計(jì)算資源數(shù)量下降到一定程度時,頻譜密集型服務(wù)的完成數(shù)也開始受到影響。保持計(jì)算資源數(shù)量不變,無線通信資源逐漸成為性能瓶頸,由于2 種服務(wù)均有較高的無線通信服務(wù)需求,因此其完成數(shù)均有所降低。
圖6 服務(wù)完成數(shù)隨計(jì)算資源節(jié)點(diǎn)數(shù)目變化
圖7 服務(wù)完成數(shù)隨無線通信資源節(jié)點(diǎn)數(shù)目變化
本節(jié)以頻譜密集型與均衡型服務(wù)為例證明了系統(tǒng)存在性能瓶頸并且JMDA 算法能根據(jù)系統(tǒng)資源數(shù)量的變化捕捉性能瓶頸的變化情況,靈活變化資源分配方案。
除此之外,CPU 密集型與存儲密集型服務(wù)同樣對計(jì)算資源有較高需求,因此在計(jì)算資源減少的情況下其與圖6 中的均衡型服務(wù)類似,完成數(shù)有所降低,而這2 種服務(wù)對無線通信資源需求較少,因此當(dāng)無線通信資源節(jié)點(diǎn)減少時,它們的完成數(shù)變化趨勢將與圖6 中的頻譜密集型服務(wù)類似,先獲得更高的完成數(shù),當(dāng)無線通信資源降低到一定程度影響任務(wù)正常完成時其完成數(shù)開始降低。
為驗(yàn)證本文所提基于區(qū)塊鏈的資源聯(lián)合管理系統(tǒng)可有效避免惡意節(jié)點(diǎn)的影響,本文在3.2 節(jié)的網(wǎng)絡(luò)環(huán)境基礎(chǔ)上引入惡意節(jié)點(diǎn),在15 個服務(wù)提供者節(jié)點(diǎn)中將會有5 個惡意節(jié)點(diǎn),虛報自身的預(yù)算與資源需求,其數(shù)值為實(shí)際預(yù)算與資源需求的2 倍,以獲得更高的資源分配,提升自身性能。本文實(shí)現(xiàn)了基于區(qū)塊鏈的資源聯(lián)合管理系統(tǒng),并在該網(wǎng)絡(luò)環(huán)境中與包含區(qū)塊鏈的資源聯(lián)合管理系統(tǒng)進(jìn)行對比,2 種系統(tǒng)執(zhí)行任務(wù)情況如圖8 所示。
圖8 2 種系統(tǒng)執(zhí)行任務(wù)情況
對比2 種系統(tǒng)的任務(wù)執(zhí)行情況可知,早期服務(wù)請求數(shù)較少,系統(tǒng)中資源富余,即使惡意節(jié)點(diǎn)多占據(jù)了一些資源,其他正常節(jié)點(diǎn)依舊能正常完成任務(wù),而基于區(qū)塊鏈的資源聯(lián)合管理系統(tǒng)由于排除掉惡意節(jié)點(diǎn),惡意節(jié)點(diǎn)所被分配的任務(wù)無法正常完成,因此其任務(wù)完成數(shù)略低于不含區(qū)塊鏈的系統(tǒng)。隨著服務(wù)請求數(shù)增長,系統(tǒng)中資源存量緊張,不含區(qū)塊鏈的系統(tǒng)中大量資源被惡意節(jié)點(diǎn)占據(jù),無法被有效利用,系統(tǒng)任務(wù)執(zhí)行能力迅速達(dá)到瓶頸,而基于區(qū)塊鏈的系統(tǒng)可檢查出惡意節(jié)點(diǎn)并將其排除,任務(wù)執(zhí)行能力保持較高水準(zhǔn)。
為了驗(yàn)證惡意節(jié)點(diǎn)數(shù)對系統(tǒng)的影響,本文保持服務(wù)請求數(shù)為60 不變,改變惡意節(jié)點(diǎn)數(shù),得出的系統(tǒng)執(zhí)行任務(wù)情況對比如圖9 所示。
圖9 惡意節(jié)點(diǎn)數(shù)對系統(tǒng)執(zhí)行任務(wù)情況的影響
由圖9 可知,隨著惡意節(jié)點(diǎn)數(shù)的增加,基于區(qū)塊鏈的系統(tǒng)并不受其影響,可保持較強(qiáng)任務(wù)執(zhí)行能力,而不含區(qū)塊鏈的系統(tǒng)受惡意節(jié)點(diǎn)影響逐漸增大??梢灶A(yù)見的是,當(dāng)惡意節(jié)點(diǎn)更大幅度地虛報自身預(yù)算與資源需求時,更多的資源被惡意節(jié)點(diǎn)占據(jù),系統(tǒng)的任務(wù)執(zhí)行能力將進(jìn)一步降低。
本文所提出的資源聯(lián)合管理模型通過引入?yún)^(qū)塊鏈,保證了資源分配過程的安全性與各分配主體間的信任,主要有以下結(jié)論與分析證明。
1) 資源分配流程透明,不存在分配不均情況
證明在本文所提出的資源聯(lián)合管理模型中,資源分配的全流程將被記錄于區(qū)塊鏈中,作為一種分布式賬本技術(shù),區(qū)塊鏈中存儲的資源分配信息公開可查閱,受各方監(jiān)督,其內(nèi)容由分布式的區(qū)塊鏈節(jié)點(diǎn)共同維護(hù),無法被篡改,避免了傳統(tǒng)集中式資源分配方式中分配流程不透明帶來的信任與資源分配公平性問題。證畢。
2) 資源分配過程可避免惡意買賣雙方影響正常資源交易
證明通過2.1 節(jié)所述的可信檢查環(huán)節(jié)及其分析可知,拍賣合約可對服務(wù)提供者(買方)與網(wǎng)絡(luò)管理員(賣方)所發(fā)出的交易請求信息進(jìn)行檢查,與底層用戶、資源擁有者所提供的服務(wù)請求與資源存量信息進(jìn)行核對,這些信息被存儲于區(qū)塊鏈中,即使是惡意節(jié)點(diǎn)也無法篡改。若有惡意買賣雙方偽造自身交易信息,企圖獲得更高收益或影響正常網(wǎng)絡(luò)資源分配,合約可檢查出這些惡意節(jié)點(diǎn)并取消其交易資格。因此本文所提出的資源聯(lián)合管理模型可避免惡意節(jié)點(diǎn)影響,保證網(wǎng)絡(luò)資源分配的安全性與買賣雙方的可信性。證畢。
在各類場景中,隨著時延敏感型應(yīng)用需求的不斷增長,邊緣計(jì)算愈發(fā)得到廣泛應(yīng)用。而在移動邊緣計(jì)算中,資源瓶頸的存在導(dǎo)致資源分配方案不能僅考慮單種資源分配情況,更需對計(jì)算與無線通信資源進(jìn)行綜合管理。同時,隨著邊緣計(jì)算的廣泛應(yīng)用,惡意節(jié)點(diǎn)的出現(xiàn)也對資源合理分配提出了挑戰(zhàn)。為解決這個問題,本文提出了基于區(qū)塊鏈的計(jì)算與無線通信資源聯(lián)合管理雙向拍賣模型,并基于此模型提出了多資源聯(lián)合管理的拍賣算法,同時,區(qū)塊鏈有效遏制了惡意節(jié)點(diǎn)對資源分配的影響。性能分析部分驗(yàn)證了本文算法有效提高了系統(tǒng)整體性能并降低了惡意節(jié)點(diǎn)的影響。下一步工作中,筆者將進(jìn)一步優(yōu)化資源分配算法,提高系統(tǒng)性能。