摘 要:針對(duì)不同運(yùn)營(yíng)商各自部署邊緣設(shè)備,投入巨大且緩存內(nèi)容相互隔離,無(wú)法共享的問(wèn)題,改進(jìn)了一種基于聯(lián)盟鏈的邊緣緩存系統(tǒng)架構(gòu),使運(yùn)營(yíng)商部署的邊緣設(shè)備間能夠打破內(nèi)容隔離,實(shí)現(xiàn)更大范圍的共享。為了提高運(yùn)營(yíng)商緩存收益,同時(shí)保證用戶傳輸質(zhì)量,降低用戶傳輸時(shí)延,首先針對(duì)緩存內(nèi)容流行度、內(nèi)容大小以及邊緣設(shè)備的協(xié)作能力,分析不同內(nèi)容交付方式對(duì)于用戶傳輸時(shí)延和運(yùn)營(yíng)商緩存收益的影響;然后,以最大化緩存收益和最小化傳輸時(shí)延為目標(biāo)建立優(yōu)化問(wèn)題;最后,為解決構(gòu)建的高維度大規(guī)模的緩存決策問(wèn)題,采用基于異步優(yōu)勢(shì)動(dòng)作評(píng)價(jià)的內(nèi)容緩存算法確定內(nèi)容的最佳放置位置。仿真結(jié)果表明,所提緩存策略能夠有效地提高邊緣緩存收益,降低內(nèi)容傳輸時(shí)延,提升用戶體驗(yàn)。
關(guān)鍵詞:邊緣緩存; 區(qū)塊鏈; 智能合約; 協(xié)作緩存; 深度強(qiáng)化學(xué)習(xí)
中圖分類號(hào):TP929 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1001-3695(2024)07-035-2173-06
doi:10.19734/j.issn.1001-3695.2023.12.0593
Design of optimal caching strategy in edge caching system
based on consortium chain
Abstract:To solve the problem that the edge devices deployed by different operators have huge investment and the cached contents are isolated and have difficulty in sharing information, this paper improved the architecture of an edge cache system based on consortium chain, so that the edge devices deployed by different operators could break the content isolation and achieve a wider range of content sharing. In order to improve the operator cache revenue while ensuring the user transmission quality and reducing the user transmission delay, this paper firstly analyzed the impact of different content delivery methods on user transmission delay and operator caching benefits in terms of cache popularity, content size, and edge device collaboration capabilities. Then,it established an optimization problem with the goal of maximizing the cache benefit and minimizing the transmission delay. Finally, to solve the proposed high-dimensional large-scale caching decision problem,it used asynchronous advantage actor-critic(A3C) based content caching algorithm to determine optimal placement of content. Simulation results show that the proposed cache strategy can effectively enhance the revenue of edge caching, reduce the delay of content delivery and improve the user experience.
Key words:edge cache; block chain; smart contract; cooperative caching; deep reinforcement learning
0 引言
隨著萬(wàn)物互聯(lián)的移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)發(fā)展,全球移動(dòng)流量將呈指數(shù)級(jí)增長(zhǎng),2020年移動(dòng)數(shù)據(jù)量為每月約62 EB,而在2023年達(dá)到每月約5 016 EB[1]。移動(dòng)邊緣計(jì)算將存儲(chǔ)資源部署在微基站(small-cell base station,SBS)、宏基站(macro base station,MBS)等網(wǎng)絡(luò)邊緣節(jié)點(diǎn),用戶可以從邊緣節(jié)點(diǎn)直接獲取數(shù)據(jù),而無(wú)須經(jīng)過(guò)云計(jì)算中心傳輸,極大降低了子數(shù)據(jù)傳輸延遲,有效減輕了網(wǎng)絡(luò)的流量負(fù)載[2]。然而面對(duì)數(shù)量巨大且請(qǐng)求頻率高的熱點(diǎn)內(nèi)容,SBS的存儲(chǔ)容量十分受限,并且不同的運(yùn)營(yíng)商緩存內(nèi)容相互隔離,互不共享,導(dǎo)致熱點(diǎn)內(nèi)容在不同運(yùn)營(yíng)商的SBS上重復(fù)緩存,緩存空間利用率不高,網(wǎng)絡(luò)建設(shè)運(yùn)營(yíng)成本居高不下[3]。為解決上述問(wèn)題,基于區(qū)塊鏈的邊緣緩存技術(shù)得到了廣泛的關(guān)注與研究[4]。區(qū)塊鏈技術(shù)是一種高級(jí)的數(shù)據(jù)庫(kù)機(jī)制,存儲(chǔ)的數(shù)據(jù)或信息具有不可偽造、公開(kāi)透明、集體維護(hù)等特點(diǎn)。基于區(qū)塊鏈的邊緣緩存技術(shù)將邊緣緩存技術(shù)與區(qū)塊鏈技術(shù)相結(jié)合,使熱點(diǎn)內(nèi)容分布式地存儲(chǔ)在距離用戶較近的SBS上,利用區(qū)塊鏈去中心化、防竄改、公開(kāi)透明等特點(diǎn)保證數(shù)據(jù)傳輸和訪問(wèn)安全,能夠?qū)崿F(xiàn)更大范圍的內(nèi)容共享,提高了SBS的緩存利用率,成為6G邊緣緩存工作的新范式[5]。
由于公有鏈的運(yùn)行機(jī)制會(huì)導(dǎo)致區(qū)塊鏈賬本難以長(zhǎng)期維護(hù),而且任意節(jié)點(diǎn)均可接入系統(tǒng)導(dǎo)致惡意攻擊的概率增加[6];而私有鏈僅供單個(gè)組織或機(jī)構(gòu)使用,無(wú)法完全去中心化且不適用于SBS數(shù)量巨大的邊緣緩存系統(tǒng)[7]。聯(lián)盟鏈作為公有鏈和私有鏈的折中方案,只針對(duì)某個(gè)特定組織或群體,由若干成員共同參與管理,已成為區(qū)塊鏈技術(shù)發(fā)展的主要方向之一[8]。因此,本文將研究基于聯(lián)盟鏈的邊緣緩存策略來(lái)鼓勵(lì)運(yùn)營(yíng)商之間進(jìn)行數(shù)據(jù)安全共享傳輸。
在基于區(qū)塊鏈和邊緣緩存的研究中,文獻(xiàn)[9]考慮不同物聯(lián)網(wǎng)系統(tǒng)的異構(gòu)性以及集中化數(shù)據(jù)處理平臺(tái)單點(diǎn)故障等問(wèn)題,提出一種基于區(qū)塊鏈技術(shù)的去中心化物聯(lián)網(wǎng)數(shù)據(jù)共享和存儲(chǔ)方案。針對(duì)基于區(qū)塊鏈的邊緣緩存資源分配問(wèn)題,文獻(xiàn)[10]提出邊緣緩存節(jié)點(diǎn)內(nèi)容選擇算法,將馬爾可夫鏈融合至緩存替換策略中,減少了帶寬資源浪費(fèi),提高了緩存命中率和空間利用率。針對(duì)區(qū)塊鏈的緩存資源交易機(jī)制問(wèn)題,文獻(xiàn)[11]設(shè)計(jì)了一種基于內(nèi)容提供商和邊緣節(jié)點(diǎn)之間的緩存資源交易機(jī)制,在訂單匹配過(guò)程中分解緩存資源請(qǐng)求,提高了邊緣緩存資源的使用效率。以上研究主要針對(duì)于求解運(yùn)營(yíng)商單個(gè)性能需求的最佳緩存位置。在實(shí)際的通信網(wǎng)絡(luò)中,往往不僅要考慮運(yùn)營(yíng)商性能需求,還需要考慮對(duì)用戶服務(wù)質(zhì)量的影響。兩者差異化需求常常會(huì)帶來(lái)不同的系統(tǒng)設(shè)計(jì)側(cè)重,因此往往需要綜合考慮這些性能指標(biāo)。
深度強(qiáng)化學(xué)習(xí)(deep reinforcement learning,DRL)算法因?yàn)槟軌驊?yīng)對(duì)時(shí)變環(huán)境,產(chǎn)生最優(yōu)策略來(lái)最大化長(zhǎng)期獎(jiǎng)勵(lì),為內(nèi)容緩存優(yōu)化提供了新的解決方案。文獻(xiàn)[12]采用雙深度Q網(wǎng)絡(luò)(deep Q network,DQN)框架用于協(xié)作緩存和請(qǐng)求路由,最大限度減少用戶長(zhǎng)期獲取內(nèi)容的平均延遲。文獻(xiàn)[13]研究了區(qū)塊鏈網(wǎng)絡(luò)中的內(nèi)容緩存問(wèn)題,采用分布式近端策略優(yōu)化方案解決了最優(yōu)的緩存部署策略。文獻(xiàn)[14]針對(duì)區(qū)塊鏈系統(tǒng)中礦工平均效用最大化問(wèn)題,采用異步優(yōu)勢(shì)動(dòng)作評(píng)價(jià)(asynchronous advantage actor-critic,A3C)算法解決了聯(lián)合資源定價(jià)和分配問(wèn)題。面對(duì)高維度大規(guī)模緩存決策問(wèn)題的動(dòng)態(tài)特性,A3C算法能夠優(yōu)化深度神經(jīng)網(wǎng)絡(luò)采用異步梯度下降以獲得最優(yōu)策略,被證明在動(dòng)態(tài)環(huán)境中具有更快的收斂性能[15]。
文獻(xiàn)[16]提出了一種基于聯(lián)盟鏈的邊緣緩存系統(tǒng)架構(gòu),通過(guò)考慮邊緣節(jié)點(diǎn)的開(kāi)銷,設(shè)計(jì)了一種基于內(nèi)容緩存的部分實(shí)用拜占庭容錯(cuò)(partial practical Byzantine fault tolerance,pPBFT)共識(shí)機(jī)制來(lái)研究運(yùn)營(yíng)商緩存收益;文獻(xiàn)[17]利用貪婪算法僅針對(duì)靜態(tài)內(nèi)容流行度求解出運(yùn)營(yíng)商緩存收益最大值。兩者均沒(méi)有考慮到內(nèi)容的時(shí)變性給運(yùn)營(yíng)商和用戶帶來(lái)的影響。針對(duì)上述問(wèn)題,本文對(duì)文獻(xiàn)[16]的網(wǎng)絡(luò)架構(gòu)進(jìn)行改進(jìn),并針對(duì)基于聯(lián)盟鏈的邊緣緩存系統(tǒng)的運(yùn)營(yíng)商緩存收益和用戶傳輸時(shí)延進(jìn)行優(yōu)化,利用隨機(jī)參數(shù)的Zipf分布來(lái)模擬動(dòng)態(tài)內(nèi)容流行度分布,提出一種基于A3C的內(nèi)容緩存算法對(duì)最大化運(yùn)營(yíng)商緩存收益和最小化用戶傳輸時(shí)延等緩存策略進(jìn)行求解,以滿足實(shí)際通信網(wǎng)絡(luò)中的差異化需求。本文主要貢獻(xiàn)如下:
a)改進(jìn)了基于聯(lián)盟鏈的內(nèi)容共享交易流程,并結(jié)合動(dòng)態(tài)內(nèi)容流行度、內(nèi)容大小以及SBS的協(xié)作能力,分析不同內(nèi)容交付方式對(duì)于用戶傳輸時(shí)延和運(yùn)營(yíng)商緩存收益的影響。
b)以最大化運(yùn)營(yíng)商緩存收益和最小化用戶傳輸時(shí)延為優(yōu)化目標(biāo),為解決所構(gòu)建的高維度大規(guī)模的緩存決策問(wèn)題,將SBS的緩存決策過(guò)程建模為馬爾可夫決策過(guò)程(Markov decision processes,MDP),并利用A3C算法學(xué)習(xí)流行度時(shí)變的最優(yōu)緩存策略,通過(guò)在多個(gè)環(huán)境上異步并行執(zhí)行多個(gè)線程來(lái)確定內(nèi)容放置位置。通過(guò)仿真評(píng)估本文算法與現(xiàn)有緩存策略的性能,驗(yàn)證了所提緩存策略的有效性。
1 系統(tǒng)模型
本章介紹基于聯(lián)盟鏈的邊緣緩存系統(tǒng)架構(gòu),對(duì)基于智能合約的內(nèi)容共享協(xié)作交易流程進(jìn)行設(shè)計(jì)以及對(duì)動(dòng)態(tài)內(nèi)容流行度進(jìn)行建模。
1.1 網(wǎng)絡(luò)架構(gòu)
本文建立了聯(lián)盟鏈和邊緣緩存的三層架構(gòu)來(lái)實(shí)現(xiàn)內(nèi)容傳輸共享。如圖1所示,它由設(shè)備層、邊緣層和聯(lián)盟鏈網(wǎng)絡(luò)層組成。各層功能描述如下:
a)設(shè)備層。用戶的智能設(shè)備通過(guò)無(wú)線通信鏈路連接到附近的SBS,并向邊緣層發(fā)送或接收數(shù)據(jù)。
b)邊緣層。邊緣層由不同運(yùn)營(yíng)商管理的SBS組成,其主要包含緩存節(jié)點(diǎn)和智能合約節(jié)點(diǎn)。緩存節(jié)點(diǎn)負(fù)責(zé)SBS信息的注冊(cè)與認(rèn)證、查找內(nèi)容以及不同運(yùn)營(yíng)商之間的內(nèi)容轉(zhuǎn)發(fā);智能合約節(jié)點(diǎn)負(fù)責(zé)驗(yàn)證交易、上傳區(qū)塊以及通過(guò)數(shù)字合同的形式保證參與交易各方按照智能合約自動(dòng)執(zhí)行內(nèi)容的交付。
c)聯(lián)盟鏈網(wǎng)絡(luò)層。聯(lián)盟鏈網(wǎng)絡(luò)提供記錄SBS請(qǐng)求信息和創(chuàng)建智能合約的去中心化服務(wù),可以有序地存儲(chǔ)交易記錄。區(qū)塊中的交易列表記錄了有關(guān)內(nèi)容共享交易的詳細(xì)信息,并生成Merkle root哈希記錄在區(qū)塊頭中,加密的合約條款記錄了內(nèi)容單價(jià),以預(yù)定義的方式執(zhí)行可靠的交易。
1.2 基于聯(lián)盟鏈的內(nèi)容共享交易流程
為保證不同運(yùn)營(yíng)商SBS之間的內(nèi)容共享交易的安全性,本文對(duì)基于智能合約的內(nèi)容共享協(xié)作交易流程進(jìn)行設(shè)計(jì),主要通過(guò)以下幾個(gè)階段實(shí)現(xiàn)[18]:
a)身份建立和初始化。要實(shí)現(xiàn)不同運(yùn)營(yíng)商之間的內(nèi)容協(xié)作共享,邊緣節(jié)點(diǎn)首先通過(guò)聯(lián)盟鏈網(wǎng)絡(luò)認(rèn)證后,注冊(cè)合法身份。假設(shè)SBS和內(nèi)容庫(kù)分別表示為Euclid Math OneBAp={b1,b2,…,bI}和Euclid Math OneFAp={f1,f2,…,fJ},則SBS bi的身份信息可描述為
IDi:={idnp,kpubi,kprii,Ci,wi}(1)
其中:每個(gè)字段分別為SBS連接的網(wǎng)絡(luò)運(yùn)營(yíng)商的身份號(hào)idnp,bi的公鑰kpubi和私鑰kprii,bi的協(xié)作域向量Ci以及錢包地址wi,錢包地址由其唯一的公鑰kpubi根據(jù)哈希創(chuàng)建[19]。由于地理位置等影響,并非系統(tǒng)中任意兩個(gè)SBS都適合進(jìn)行內(nèi)容共享,所以定義bi的協(xié)作域矩陣Ci,矩陣中每一項(xiàng)表示bi和其他SBS之間的協(xié)作優(yōu)先度,表示為
其中:dim表示bi和bm之間的距離;dmax表示協(xié)作域中最遠(yuǎn)的兩個(gè)SBS的距離,距離越大說(shuō)明其協(xié)作能力越低,不適合進(jìn)行內(nèi)容傳輸共享。
b)合約創(chuàng)建。邊緣節(jié)點(diǎn)就合約達(dá)成一致后,就可在聯(lián)盟鏈上部署智能合約。合約地址對(duì)所有邊緣節(jié)點(diǎn)公開(kāi),以便每個(gè)節(jié)點(diǎn)可以選擇與合約進(jìn)行交互,SBS可以通過(guò)聯(lián)盟鏈發(fā)起內(nèi)容共享請(qǐng)求。具體內(nèi)容共享交易過(guò)程如圖2所示。
(a)用戶發(fā)起內(nèi)容請(qǐng)求,本地SBS的緩存節(jié)點(diǎn)為用戶提供內(nèi)容服務(wù)。如果內(nèi)容在本地緩存命中,則直接進(jìn)行內(nèi)容傳輸;若未命中,則通過(guò)聯(lián)盟鏈向協(xié)作域內(nèi)其他SBS的緩存節(jié)點(diǎn)廣播內(nèi)容請(qǐng)求。
(b)其他SBS的緩存節(jié)點(diǎn)收到內(nèi)容請(qǐng)求后,先檢查有無(wú)緩存。若已緩存,則協(xié)作域內(nèi)的SBS反饋合作意向,待雙方協(xié)作意向達(dá)成后,發(fā)送內(nèi)容的SBS的智能合約節(jié)點(diǎn)部署智能合約,對(duì)此次內(nèi)容交易進(jìn)行處理;若未緩存,則記錄內(nèi)容的同時(shí)更新區(qū)塊,請(qǐng)求內(nèi)容的SBS采取回程鏈路傳輸方式獲取內(nèi)容。
(c)發(fā)送內(nèi)容的SBS將合約地址傳送給請(qǐng)求內(nèi)容的SBS,智能合約中記錄了發(fā)送內(nèi)容的SBS的錢包地址以及費(fèi)用;請(qǐng)求內(nèi)容的SBS審核合約內(nèi)容無(wú)誤后,向其支付所需費(fèi)用。
(d)發(fā)送內(nèi)容的SBS收到內(nèi)容費(fèi)用后進(jìn)行內(nèi)容傳輸。
(e)內(nèi)容傳輸完成后,發(fā)送內(nèi)容的SBS會(huì)生成交易收據(jù),之后使用哈希算法生成此次交易對(duì)應(yīng)哈希值并上傳至區(qū)塊體中的交易列表中。內(nèi)容共享交易過(guò)程執(zhí)行完畢。
c)交易記錄。在內(nèi)容交易完成后,請(qǐng)求內(nèi)容的SBS bi將生成的交易記錄發(fā)送到聯(lián)盟鏈網(wǎng)絡(luò)進(jìn)行驗(yàn)證,驗(yàn)證成功后廣播到所有聯(lián)盟鏈節(jié)點(diǎn)。該交易記錄包括內(nèi)容fj的數(shù)據(jù)量Qj,請(qǐng)求內(nèi)容費(fèi)用cost,提供內(nèi)容的SBS bm的錢包地址wm和數(shù)字簽名Sigm以及當(dāng)前消息的時(shí)間戳ts。交易記錄描述如下:
Transi=Epubi(Qj,cost,wm,Sigm,ts)(3)
其中:Epubi表示bi的公鑰kpubi對(duì)交易Transi進(jìn)行加密;Sigm=Signprim(Qj,cost)表示bm的私鑰kprim對(duì)內(nèi)容數(shù)據(jù)量Qj和費(fèi)用cost簽署的數(shù)字簽名。
d)區(qū)塊創(chuàng)建。每個(gè)區(qū)塊由聯(lián)盟鏈節(jié)點(diǎn)協(xié)商創(chuàng)建,新區(qū)塊創(chuàng)建后,智能合約節(jié)點(diǎn)廣播帶有時(shí)間戳的區(qū)塊,其他節(jié)點(diǎn)驗(yàn)證新區(qū)塊中交易記錄的正確性,通過(guò)實(shí)用拜占庭容錯(cuò)共識(shí)機(jī)制[20]使系統(tǒng)達(dá)成共識(shí)。
1.3 內(nèi)容流行度模型
內(nèi)容流行度通常情況下建模為齊夫(Zipf)分布,表示用戶對(duì)內(nèi)容的請(qǐng)求概率[21]。考慮到實(shí)際中不同時(shí)隙的用戶對(duì)內(nèi)容的偏好可能不同,所以每個(gè)SBS在不同時(shí)隙具有不同的內(nèi)容流行度分布。定義在時(shí)隙t內(nèi)容流行度表示為pi,j(t),可以用Zipf分布近似描述,即
其中:αi,t是反映在時(shí)隙t內(nèi)SBS bi內(nèi)容請(qǐng)求概率偏斜參數(shù)。由于內(nèi)容請(qǐng)求的可變性,每個(gè)SBS的Zipf參數(shù)在每個(gè)時(shí)隙內(nèi)可能不同,所以動(dòng)態(tài)內(nèi)容流行度分布集合表示為p(t)={pi,j(t),i∈I,j∈J}。
2 系統(tǒng)性能分析
2.1 傳輸時(shí)延分析
假設(shè)SBS和MBS的信道帶寬分別為w和w0,發(fā)射功率分別為q和q0,MBS到bi的距離為d0i。則bm到bi的信道增益和MBS到bi的信道增益分別為
其中:常數(shù)K為固定傳輸損耗;β為路徑損耗因子。由香農(nóng)公式可得bm到bi的傳輸速率以及MBS到bi的傳輸速率,分別為
因此,bm向bi傳輸內(nèi)容fj與MBS向bi傳輸內(nèi)容fj所產(chǎn)生的傳輸時(shí)延分別為
a)當(dāng)用戶向bi請(qǐng)求內(nèi)容fj時(shí),bi會(huì)先在本地進(jìn)行查找,若本地緩存命中,則直接進(jìn)行內(nèi)容交付。由于本地基站到用戶的傳輸時(shí)延總是存在且很小,記傳輸時(shí)延Dloc(t)=0。
b)當(dāng)bi沒(méi)有緩存內(nèi)容fj,但是其協(xié)作域Ci內(nèi)有SBS bm緩存了該內(nèi)容,此時(shí)采取協(xié)作內(nèi)容交付。由于協(xié)作的SBS相較于MBS在地理位置上離用戶更近,能夠有效降低傳輸時(shí)延,所以將SBS bm緩存內(nèi)容fj對(duì)bi的傳輸時(shí)延表示為
c)如果本地及協(xié)作域內(nèi)均沒(méi)有SBS緩存內(nèi)容fj時(shí),此時(shí)采取MBS進(jìn)行內(nèi)容交付,此時(shí)傳輸時(shí)延表示為
綜上所述,考慮到不同運(yùn)營(yíng)商管理的SBS以及不同內(nèi)容大小,用戶平均傳輸時(shí)延的表達(dá)式為
2.2 緩存收益分析
a)當(dāng)SBS bi收到本地用戶對(duì)內(nèi)容fj的請(qǐng)求,如果本地緩存命中,將直接通過(guò)無(wú)線鏈路為用戶提供服務(wù);否則,bi需要從MBS處通過(guò)回程鏈路獲取內(nèi)容。本文將本地緩存所節(jié)省的回程傳輸成本作為本地緩存收益,表示為
其中:cbh表示從MBS處獲取內(nèi)容所產(chǎn)生的回程鏈路成本。
b)當(dāng)SBS bi沒(méi)有緩存內(nèi)容fj,但其協(xié)作域Ci內(nèi)有SBS bm緩存了該內(nèi)容,此時(shí)采用協(xié)作內(nèi)容交付。盡管必須承擔(dān)內(nèi)容費(fèi)用,但合作的SBS相較于MBS在地理位置上距離用戶更近,也能有效降低從回程資源有限的MBS中獲取內(nèi)容所帶來(lái)的開(kāi)銷,故采取協(xié)作內(nèi)容傳輸?shù)氖找姹硎緸?/p>
其中:μ為單位內(nèi)容請(qǐng)求所需支付的費(fèi)用。
c)當(dāng)bi及其協(xié)作域中均沒(méi)有SBS緩存內(nèi)容fj,采用MBS進(jìn)行內(nèi)容傳輸,會(huì)消耗額外的回程開(kāi)銷,此時(shí)收益Enc(t)=0。
因此,運(yùn)營(yíng)商平均緩存收益的表達(dá)式為
3 基于A3C的內(nèi)容緩存算法
3.1 優(yōu)化問(wèn)題建模
由于差異化的需求常常導(dǎo)致不同的性能指標(biāo),如運(yùn)營(yíng)商緩存收益最大化、用戶傳輸時(shí)延最小化等。這些性能指標(biāo)相互沖突,一個(gè)指標(biāo)的提升往往會(huì)導(dǎo)致另一個(gè)指標(biāo)性能的下降。為了滿足實(shí)際通信場(chǎng)景中差異化的通信需求,需要綜合考慮這些性能指標(biāo)。因此,在滿足不同內(nèi)容大小、SBS的容量限制的條件下,基于第2章的分析,本文提出了緩存收益最大化與傳輸時(shí)延最小化的優(yōu)化問(wèn)題,并通過(guò)線性加權(quán)法進(jìn)行整合,表示為
其中:β1和β2分別為目標(biāo)函數(shù)的加權(quán)系數(shù),且β1+β2=1;約束條件C1表明緩存決策變量是具有離散特性的0-1變量;約束條件C2確保SBS緩存內(nèi)容大小不超過(guò)容量限制。由于式(14)優(yōu)化問(wèn)題屬于NP-hard[22],利用傳統(tǒng)算法可能很難解決問(wèn)題。為解決高維度大規(guī)模動(dòng)作空間中的MDP問(wèn)題,本文利用基于A3C的內(nèi)容緩存算法來(lái)獲得收益最大且時(shí)延最小的最優(yōu)緩存策略。
3.2 A3C算法概述
在actor-critic(AC)框架中,智能體由單個(gè)actor-critic組成,代理通過(guò)狀態(tài)、動(dòng)作與環(huán)境進(jìn)行交互,以最大化折扣獎(jiǎng)勵(lì)。在每一時(shí)隙中,actor網(wǎng)絡(luò)使用當(dāng)前策略在當(dāng)前狀態(tài)下執(zhí)行動(dòng)作,并將獎(jiǎng)勵(lì)返回給critic網(wǎng)絡(luò)。
A3C算法是在AC算法的基礎(chǔ)上提出的,采用了異步訓(xùn)練的思想[23],通過(guò)將actor-critic放在多線程中進(jìn)行同步訓(xùn)練,能夠顯著提高訓(xùn)練效率和收斂速度。如圖3所示,具體地,A3C算法通過(guò)一個(gè)全局網(wǎng)絡(luò)創(chuàng)建多個(gè)線程和環(huán)境,每個(gè)線程充當(dāng)隨機(jī)探索的代理。全局網(wǎng)絡(luò)和線程網(wǎng)絡(luò)具有相同的結(jié)構(gòu),都是actor-critic網(wǎng)絡(luò)。actor-critic網(wǎng)絡(luò)使用兩個(gè)深度神經(jīng)網(wǎng)絡(luò),分別用于改進(jìn)策略函數(shù)和估計(jì)價(jià)值函數(shù)。全局網(wǎng)絡(luò)無(wú)須訓(xùn)練,僅用于存儲(chǔ)參數(shù),多個(gè)代理與其環(huán)境交互以并行學(xué)習(xí)和計(jì)算策略梯度。然后,每個(gè)線程將運(yùn)行結(jié)果反饋給全局網(wǎng)絡(luò),并從全局網(wǎng)絡(luò)獲取最新的參數(shù)更新,以指導(dǎo)自己與系統(tǒng)環(huán)境之間的下一次學(xué)習(xí)交互。通過(guò)在多個(gè)環(huán)境中并行運(yùn)算多個(gè)線程,其生成的數(shù)據(jù)具有多樣性,打破了數(shù)據(jù)之間的相關(guān)性,提升了網(wǎng)絡(luò)在訓(xùn)練過(guò)程中的穩(wěn)定性。由于多個(gè)線程的工作原理相同,所以以一個(gè)線程內(nèi)的網(wǎng)絡(luò)訓(xùn)練過(guò)程為例來(lái)說(shuō)明所提出的緩存策略。
3.3 使用A3C算法求解緩存策略
本文將每個(gè)線程的狀態(tài)空間、動(dòng)作空間和獎(jiǎng)勵(lì)函數(shù)定義如下:
a)狀態(tài)空間。狀態(tài)空間定義為集合s(t)={x(t),p(t)},其中:x(t)表示在時(shí)隙t內(nèi)不同運(yùn)營(yíng)商的SBS對(duì)不同內(nèi)容的緩存狀態(tài),p(t)表示時(shí)隙t內(nèi)容流行度分布。
b)動(dòng)作空間。動(dòng)作空間定義為集合a(t)={ai,j(t),i∈I,j∈J},其中a(t)是時(shí)隙t處的二進(jìn)制緩存動(dòng)作向量,即表示時(shí)隙t處緩存刷新階段執(zhí)行的動(dòng)作,ai,j(t)=1表示在時(shí)隙t+1處內(nèi)容fj應(yīng)存儲(chǔ)在bi上。
c)獎(jiǎng)勵(lì)函數(shù)。因?yàn)槟繕?biāo)是通過(guò)為流行內(nèi)容選擇最佳緩存位置來(lái)最大化緩存收益,同時(shí)最小化傳輸時(shí)延,所以即時(shí)獎(jiǎng)勵(lì)函數(shù)定義為組合后的單目標(biāo)優(yōu)化函數(shù),表示為r(t)=(t)。
基于A3C的聯(lián)盟鏈邊緣緩存的訓(xùn)練過(guò)程描述如下:
a)actor進(jìn)程:actor網(wǎng)絡(luò)的任務(wù)是引導(dǎo)SBS選擇并執(zhí)行相應(yīng)的緩存動(dòng)作。在每個(gè)時(shí)隙t,通過(guò)輸入當(dāng)前狀態(tài)s(t),在不超過(guò)SBS容量限制的情況下輸出當(dāng)前策略函數(shù)π(a(t)|s(t);θ′),并根據(jù)該函數(shù)選擇合適的緩存內(nèi)容的位置。在SBS執(zhí)行當(dāng)前動(dòng)作a(t)后,狀態(tài)將從s(t)轉(zhuǎn)移到s(t+1),SBS獲得即時(shí)獎(jiǎng)勵(lì)r(t)。最后,SBS將(s(t),a(t),r(t),s(t+1))存入緩沖區(qū),重復(fù)執(zhí)行上述過(guò)程,直到動(dòng)作執(zhí)行完tmax步。
b)critic進(jìn)程:critic網(wǎng)絡(luò)的任務(wù)是提供更準(zhǔn)確的價(jià)值函數(shù)估計(jì)。通過(guò)輸入當(dāng)前狀態(tài)s(t),輸出當(dāng)前價(jià)值函數(shù)V(s(t);ω′),并評(píng)估從actor網(wǎng)絡(luò)中獲得的策略,以便SBS學(xué)習(xí)到最優(yōu)的緩存策略。
在actor-critic網(wǎng)絡(luò)的每個(gè)線程執(zhí)行完所有步驟后,開(kāi)始使用梯度算法計(jì)算網(wǎng)絡(luò)參數(shù),并將其梯度信息發(fā)送到全局網(wǎng)絡(luò)。在所有異步線程完成后,全局網(wǎng)絡(luò)根據(jù)累積的梯度信息更新網(wǎng)絡(luò)參數(shù)。此外,更新的參數(shù)將被發(fā)送到每個(gè)SBS以加速學(xué)習(xí)進(jìn)度。該過(guò)程以迭代方式重復(fù),在全局網(wǎng)絡(luò)執(zhí)行Tmax后結(jié)束。最后,全局網(wǎng)絡(luò)將選擇長(zhǎng)期獎(jiǎng)勵(lì)最大的緩存方案。
c)梯度更新:A3C算法使用tmax步獎(jiǎng)勵(lì)來(lái)同時(shí)更新策略和價(jià)值網(wǎng)絡(luò),使函數(shù)變化更快,加快學(xué)習(xí)速度。定義優(yōu)勢(shì)函數(shù)At以減少估計(jì)的方差,作為所選行動(dòng)的評(píng)價(jià)標(biāo)準(zhǔn)。通過(guò)式(15)計(jì)算。
A(s(t),a(t))=Q(s(t),a(t))-V(s(t))(15)
其中:V(s(t))是從critic網(wǎng)絡(luò)的輸出中獲得的價(jià)值函數(shù);Q(s(t),a(t))表示在時(shí)隙t內(nèi)采取行動(dòng)的長(zhǎng)期折扣累積獎(jiǎng)勵(lì),可以計(jì)算為
其中:n是tmax的上界,在采取tmax動(dòng)作之后或達(dá)到最終狀態(tài)時(shí)更新策略和價(jià)值函數(shù);γ是提供當(dāng)前獎(jiǎng)勵(lì)和未來(lái)獎(jiǎng)勵(lì)之間權(quán)衡的折扣率。
actor網(wǎng)絡(luò)定義了帶參數(shù)θ′的策略函數(shù)π(a(t)|s(t);θ′),損失函數(shù)定義為
LA=log π(a(t)|s(t);θ′)A(s(t),a(t))(17)
采用梯度上升算法更新actor網(wǎng)絡(luò)的參數(shù),表示為
同理,critic網(wǎng)絡(luò)定義了帶參數(shù)ω′的價(jià)值函數(shù)V(s(t);ω′),其損失函數(shù)為
LC=(A(s(t),a(t)))2(19)
利用梯度下降算法更新critic網(wǎng)絡(luò)的參數(shù),表示為
最后,算法1總結(jié)了所提基于A3C的內(nèi)容緩存算法的詳細(xì)過(guò)程,將算法1得到的最終緩存方案與式(10)(13)結(jié)合可得平均緩存收益和平均傳輸時(shí)延。
算法1 基于A3C的內(nèi)容緩存算法
4 仿真分析
為了驗(yàn)證所提策略的性能,與現(xiàn)有的緩存策略進(jìn)行分析對(duì)比[24],其中包括基于貪婪算法的緩存策略[25]、基于流行度的緩存策略和隨機(jī)緩存策略。其中,文獻(xiàn)[25]提出的基于貪婪算法的緩存策略在SBS的有限緩存空間下根據(jù)目標(biāo)函數(shù)盡可能多地緩存流行內(nèi)容;基于流行度的緩存策略中,SBS根據(jù)內(nèi)容流行度的排序依次緩存,最終用盡緩存空間;在隨機(jī)緩存策略中,SBS在緩存空間的約束下隨機(jī)緩存內(nèi)容。
為簡(jiǎn)化計(jì)算量,將內(nèi)容數(shù)據(jù)量進(jìn)行歸一化處理,從{1Q0,2Q0,3Q0,4Q0,5Q0}中隨機(jī)選擇,Zipf分布指數(shù)αi,t在每個(gè)時(shí)隙[0.6,1.2]隨機(jī)變化。將actor和critic網(wǎng)絡(luò)的學(xué)習(xí)率分別設(shè)置為0.000 1和0.01[26],為了協(xié)調(diào)運(yùn)營(yíng)商收益和用戶傳輸時(shí)延的重要程度,利用熵權(quán)法按指標(biāo)提供信息量大小設(shè)置即時(shí)獎(jiǎng)勵(lì)權(quán)重β1=0.7和β2=0.3,其余仿真參數(shù)如表1所示[17,27~29]。
圖4表示本文算法和其他兩種基準(zhǔn)算法之間平均累計(jì)獎(jiǎng)勵(lì)的性能比較。可以看出,DQN和AC的累計(jì)獎(jiǎng)勵(lì)均低于A3C,并且A3C的性能更穩(wěn)定,收斂速度更快。這是因?yàn)锳3C采用異步機(jī)制,即采用多線程并行探索,有助于快速發(fā)現(xiàn)未知的動(dòng)作和狀態(tài),從而極大提高了學(xué)習(xí)效率。
圖5描述了不同容量下SBS平均緩存收益比較,從圖上可以看出,隨著緩存容量的增加,緩存收益呈現(xiàn)增長(zhǎng)的趨勢(shì),但增長(zhǎng)的速度會(huì)逐漸下降。這是因?yàn)殡S著SBS緩存容量的增加,更多的內(nèi)容能夠緩存在SBS上,使得收益增加,隨著本地緩存的內(nèi)容越來(lái)越多,其需要通過(guò)聯(lián)盟鏈進(jìn)行內(nèi)容共享的概率也會(huì)隨之降低,進(jìn)而緩存收益中通過(guò)內(nèi)容共享獲取到的收益會(huì)減少,導(dǎo)致收益增長(zhǎng)的速度會(huì)逐漸下降。對(duì)比文獻(xiàn)[16]提出的pPBFT算法,隨著系統(tǒng)容量的增加,pPBFT緩存策略的收益逐漸升高,這是因?yàn)閜PBFT會(huì)重復(fù)緩存某些內(nèi)容,而本文緩存策略考慮內(nèi)容的時(shí)變性不會(huì)對(duì)內(nèi)容進(jìn)行重復(fù)緩存,避免了節(jié)點(diǎn)間的惡意競(jìng)爭(zhēng)。因此,本文基于聯(lián)盟鏈的A3C算法緩存策略帶來(lái)的收益明顯優(yōu)于其他四種方案,能夠顯著提高運(yùn)營(yíng)商邊緣緩存系統(tǒng)帶來(lái)的收益。
圖6描述了SBS不同緩存容量下的用戶平均傳輸時(shí)延的比較。由于隨機(jī)緩存策略的性能不穩(wěn)定,所以與SBS緩存容量大小不成正比。其中,不同緩存策略的用戶平均傳輸時(shí)延均呈下降趨勢(shì),這是因?yàn)殡S著緩存容量的增加,SBS可以緩存更多的內(nèi)容,用戶請(qǐng)求的更多內(nèi)容可以緩存在本地SBS或協(xié)作域SBS中,并且從SBS處獲取內(nèi)容的延遲比從MBS獲取內(nèi)容的延遲要小得多,通過(guò)MBS傳輸?shù)母怕蕰?huì)減少,所以縮短了用戶從MBS處獲取內(nèi)容的傳輸時(shí)延。其次,由于本文算法考慮了SBS之間的協(xié)作,所以基于聯(lián)盟鏈的A3C算法緩存策略的用戶平均時(shí)延低于其他四種緩存方案,證明了聯(lián)盟鏈和協(xié)作緩存對(duì)于用戶傳輸時(shí)延的重要性。可以看出在SBS容量大小受到限制的情況下,本文緩存方案優(yōu)于其他緩存方案,可以降低用戶平均傳輸時(shí)延。
5 結(jié)束語(yǔ)
本文在基于聯(lián)盟鏈的邊緣緩存系統(tǒng)的緩存策略優(yōu)化方案中同時(shí)考慮運(yùn)營(yíng)商緩存收益和用戶傳輸時(shí)延的影響,改進(jìn)了基于聯(lián)盟鏈的內(nèi)容共享交易流程,并綜合考慮動(dòng)態(tài)內(nèi)容流行度以及SBS的協(xié)作程度,以最大化運(yùn)營(yíng)商緩存收益和最小化用戶傳輸時(shí)延為目標(biāo)建立優(yōu)化問(wèn)題。考慮到優(yōu)化問(wèn)題是NP-hard,提出基于A3C求解出最優(yōu)內(nèi)容緩存策略。仿真結(jié)果表明,與其他緩存策略相比,該策略可以提高運(yùn)營(yíng)商緩存內(nèi)容的收益,同時(shí)降低用戶傳輸時(shí)延。在未來(lái)研究中,本文將對(duì)聯(lián)盟鏈真實(shí)場(chǎng)景進(jìn)行測(cè)試,改進(jìn)現(xiàn)存的共識(shí)算法從而降低系統(tǒng)共識(shí)開(kāi)銷。
參考文獻(xiàn):
[1]Jiang Wei, Han Bin, Habibi M A, et al. The road towards 6G: a comprehensive survey[J]. IEEE Open Journal of the Communications Society, 2021,2: 334-366.
[2]Sheraz M, Ahmed M, Hou X, et al. Artificial intelligence for wireless caching: schemes, performance, and challenges[J]. IEEE Communications Surveys & Tutorials, 2020, 23(1): 631-661.
[3]Guo Shaoyong, Hu Xing, Guo Song, et al. Blockchain meets edge computing: a distributed and trusted authentication system[J]. IEEE Trans on Industrial Informatics, 2020,16(3): 1972-1983.
[4]You Xiaohu, Wang Chengxiang, Huang Jie, et al. Towards 6G wireless communication networks: vision, enabling technologies, and new paradigm shifts[J]. Science China: Information Sciences, 2021, 64(1): 5-78.
[5]Sun Wen, Li Sheng, Zhang Yan. Edge caching in blockchain empo-wered 6G[J]. China Communications, 2021, 18(1): 1-17.
[6]牛淑芬, 楊平平, 謝亞亞, 等. 區(qū)塊鏈上基于云輔助的密文策略屬性基數(shù)據(jù)共享加密方案[J]. 電子與信息學(xué)報(bào), 2021, 43(7): 1864-1871. (Niu Shufen, Yang Pingping, Xie Yaya, et al. Cloud-assisted ciphertext policy attribute base data sharing encryption scheme on blockchain[J]. Journal of Electronics & Information Technology, 2021, 43(7): 1864-1871.)
[7]Davenport A, Shetty S. Air gapped wallet schemes and private key leakage in permissioned blockchain platforms[C]//Proc of IEEE International Conference on Blockchain. Piscataway, NJ: IEEE Press, 2019: 541-545.
[8]Zheng Peilin, Xu Quanqing, Zheng Zibin, et al. Meepo: sharded consortium blockchain[C]//Proc of the 37th International Conference on Data Engineering. Piscataway, NJ: IEEE Press, 2021: 1847-1852.
[9]蔣宇娜, 葛曉虎, 楊旸, 等. 面向 6G 的區(qū)塊鏈物聯(lián)網(wǎng)數(shù)據(jù)共享和存儲(chǔ)機(jī)制[J]. 通信學(xué)報(bào), 2020,41(10): 48-58. (Jiang Yu’na, Ge Xiaohu, Yang Yang, et al. 6G oriented blockchain based Internet of Things data sharing and storage mechanism[J]. Journal on Communications, 2020, 41(10): 48-58.)
[10]Wang Hongman, Li Yingxue, Zhao Xiaoqi, et al. An algorithm based on Markov chain to improve edge cache hit ratio for blockchain-enabled IoT[J]. China Communications, 2020, 17(9): 66-76.
[11]Liu Jiadi, Guo Songtao, Shi Yawei, et al. Decentralized caching framework toward edge network based on blockchain[J]. IEEE Internet of Things Journal, 2020, 7(9): 9158-9174.
[12]Li Ding, Han Yiwen, Wang Chenyang, et al. Deep reinforcement learning for cooperative edge caching in future mobile networks[C]//Proc of IEEE Wireless Communications and Networking Conference. Piscataway, NJ: IEEE Press, 2019: 1-6.
[13]Chen Mengqi, Wu Guangming, Zhang Yuhuang, et al. Distributed deep reinforcement learning-based content caching in edge computing-enabled blockchain networks[C]//Proc of the 13th International Conference on Wireless Communications and Signal Processing. Pisca-taway, NJ: IEEE Press, 2021: 1-5.
[14]Du Jiangbo, Cheng Wenjie, Lu Guangyue, et al. Resource pricing and allocation in MEC enabled blockchain systems: an A3C deep reinforcement learning approach[J]. IEEE Trans on Network Science and Engineering, 2021, 9(1): 33-44.
[15]Ye Xinyu, Li Meng, Yu F R, et al. MEC and blockchain-enabled energy-efficient Internet of Vehicles based on A3C approach[C]//Proc of IEEE Global Communications Conference. Piscataway, NJ: IEEE Press, 2021: 1-6.
[16]姜靜, 王凱, 許曰強(qiáng), 等. 基于聯(lián)盟鏈的運(yùn)營(yíng)商最佳緩存策略[J]. 電子與信息學(xué)報(bào), 2022, 44(9): 3043-3050. (Jiang Jing, Wang Kai, Xu Yueqiang, et al. Optimal caching strategy of operators based on consortium blockchain[J]. Journal of Electronics & Information Technology, 2022, 44(9): 3043-3050.)
[17]楊帆, 姜靜, 杜劍波, 等. 基于聯(lián)盟鏈的邊緣緩存系統(tǒng)收益最大化的緩存策略[J]. 計(jì)算機(jī)應(yīng)用研究, 2023, 40(8): 2447-2451,2466. (Yang Fan, Jiang Jing, Du Jianbo, et al. Benefit maximization caching strategy in edge cache system based on consortium blockchain[J]. Application Research of Computers, 2023, 40(8): 2447-2451,2466.)
[18]Xu Qichao, Su Zhou, Yang Qing. Blockchain-based trustworthy edge caching scheme for mobile cyber-physical system[J]. IEEE Internet of Things Journal, 2019, 7(2): 1098-1110.
[19]Preneel B. Cryptographic hash functions[J]. European Trans on Telecommunications, 1994, 5(4): 431-448.
[20]Zhang Ran, Yu F R, Liu Jiang, et al. Deep reinforcement learning(DRL)-based device-to-device(D2D) caching with blockchain and mobile edge computing[J]. IEEE Trans on Wireless Communications, 2020, 19(10): 6469-6485.
[21]Li Qiang, Shi Wennian, Xiao Yong, et al. Content size-aware edge caching: a size-weighted popularity-based approach[C]//Proc of IEEE Global Communications Conference. Piscataway, NJ: IEEE Press, 2018: 206-212.
[22]王蕊, 申敏, 何云, 等. Cell-Free大規(guī)模 MIMO系統(tǒng)中基于傳輸時(shí)延的緩存策略研究[J]. 通信學(xué)報(bào), 2021, 42(12): 134-143. (Wang Rui, Shen Min, He Yun, et al. Research on caching strategy based on transmission delay in Cell-Free massive MIMO systems[J]. Journal on Communication, 2021, 42(12): 134-143.)
[23]Mnih V, Badia A P, Mirza M, et al. Asynchronous methods for deep reinforcement learning[C]//Proc of the 33rd International Conference on Machine Learning. [S.l.]: PMLR, 2016: 1928-1937.
[24]蔡艷, 吳凡, 朱洪波. D2D 協(xié)作邊緣緩存系統(tǒng)中基于傳輸時(shí)延的緩存策略[J]. 通信學(xué)報(bào), 2021, 42(3): 183-189. (Cai Yan, Wu Fan, Zhu Hongbo. Caching strategy based on transmission delay for D2D cooperative edge caching system[J]. Journal on Communication, 2021, 42(3): 183-189.)
[25]Banerjee B, Seetharam A, Tellambura C. Greedy caching: a latency-aware caching strategy for information-centric networks[C]//Proc of IFIP Networking Conference and Workshops. Piscataway, NJ: IEEE Press, 2017: 1-9.
[26]Feng Jie, Yu F R, Pei Qingqi, et al. Cooperative computation offloading and resource allocation for blockchain-enabled mobile-edge computing: a deep reinforcement learning approach[J]. IEEE Internet of Things Journal, 2019, 7(7): 6214-6228.
[27]王亞麗, 陳家超, 張俊娜. 移動(dòng)邊緣計(jì)算中收益最大化的緩存協(xié)作策略[J]. 計(jì)算機(jī)應(yīng)用, 2022, 42(11): 3479-3485. (Wang Yali, Chen Jiachao, Zhang Junna. Cache cooperation strategy for maximizing revenue in mobile edge computing[J]. Journal of Computer Applications, 2022, 42(11): 3479-3485.)
[28]黃永明, 鄭沖, 張征明, 等. 大規(guī)模無(wú)線通信網(wǎng)絡(luò)移動(dòng)邊緣計(jì)算和緩存研究[J]. 通信學(xué)報(bào), 2021, 42(4): 44-61. (Huang Yongming, Zheng Chong, Zhang Zhengming, et al. Research on mobile edge computing and caching in massive wireless communication network[J]. Journal on Communications, 2021, 42(4): 44-61.)
[29]左亞兵, 王凱, 楊帆, 等. 基于用戶偏好的協(xié)作內(nèi)容緩存策略[J]. 計(jì)算機(jī)應(yīng)用研究, 2022, 39(1): 123-127. (Zuo Yabing, Wang Kai, Yang Fan, et al. Collaborative content caching strategy based on user preferences[J]. Application Research of Compu-ters, 2022, 39(1): 123-127.)