鄭竣杰,岑伯維,蔡澤祥,武志剛
(華南理工大學(xué)電力學(xué)院,廣東省廣州市 510641)
隨著電力市場改革的深入,越來越多具備調(diào)控潛力的設(shè)備接入配電網(wǎng)[1-3]。傳統(tǒng)的配電業(yè)務(wù)處理以智能電力裝置為核心,采用軟硬件耦合封閉的業(yè)務(wù)體系,無法滿足海量設(shè)備接入的資源配置需要[4-5]。基于邊緣計(jì)算的配電物聯(lián)網(wǎng)[6-7]是實(shí)現(xiàn)軟硬件解耦,提供高效、低耗服務(wù)的重要技術(shù)平臺,也是配電網(wǎng)的重要發(fā)展方向之一。
邊緣計(jì)算終端是部署在配電網(wǎng)終端的計(jì)算中心,以軟件定義終端實(shí)現(xiàn)“一機(jī)多功能”的配電業(yè)務(wù)處理[8-9],是配電網(wǎng)適應(yīng)海量設(shè)備接入和復(fù)雜業(yè)務(wù)處理的關(guān)鍵設(shè)備。邊緣計(jì)算終端建模及其性能分析是探索配電業(yè)務(wù)處理的“一體兩面”。前者研究終端設(shè)備能否高效獲取業(yè)務(wù)輸出,是定性研究業(yè)務(wù)可行性的理論前提;后者通過狀態(tài)表征計(jì)算出所需的性能指標(biāo),是定量分析終端性能的數(shù)值依據(jù)。因此,研究邊緣計(jì)算終端建模及其性能分析具有重要意義。
現(xiàn)有大量研究是針對邊緣計(jì)算終端進(jìn)行建模。文獻(xiàn)[10]基于軟硬件架構(gòu)完成配電終端邊緣化和容器化的建模。文獻(xiàn)[11]從業(yè)務(wù)管理、資源管理和應(yīng)用管理構(gòu)筑邊緣計(jì)算終端的容器系統(tǒng)。文獻(xiàn)[12]基于能耗單元、計(jì)算單元和通信單元對邊緣計(jì)算終端進(jìn)行建模,并在業(yè)務(wù)處理時(shí)設(shè)定充電時(shí)序、計(jì)算時(shí)序和通信時(shí)序。然而,以上研究缺少對邊緣計(jì)算終端內(nèi)部架構(gòu)的建模內(nèi)容。針對邊緣計(jì)算終端構(gòu)建定量的性能分析方法,不僅需要從外部特性上考慮配電業(yè)務(wù)輸入輸出,還需要完成邊緣計(jì)算終端內(nèi)部架構(gòu)的建模。
EdgeCloudSim[13]是本文選用的仿真軟件,不僅能對配電業(yè)務(wù)處理進(jìn)行建模,還能輸出對應(yīng)的性能參數(shù)。然而,EdgeCloudSim 的仿真模型都以移動邊緣計(jì)算為應(yīng)用場景[14-15],缺乏以配電物聯(lián)網(wǎng)作為仿真場景的先例。主要表現(xiàn)在:1)服務(wù)器資源配置的靈活性是移動邊緣計(jì)算的研究重點(diǎn)[16-17],但該內(nèi)容無法對邊緣計(jì)算終端內(nèi)部容器和傳輸信道進(jìn)行動態(tài)刻畫;2)移動業(yè)務(wù)之間獨(dú)立性強(qiáng)[18],缺乏對單獨(dú)的微服務(wù)生命周期的研究,無法模擬出配電業(yè)務(wù)根據(jù)業(yè)務(wù)時(shí)序邏輯化整為零的研究思路[19-20];3)移動邊緣計(jì)算對邊緣計(jì)算終端的性能測試基于極端場景[21-22],力求在短時(shí)間內(nèi)處理大量業(yè)務(wù),無法獲取邊緣計(jì)算終端的性能參數(shù)。
本文以邊緣計(jì)算終端架構(gòu)和配電業(yè)務(wù)處理作為建模對象,基于仿真軟件EdgeCloudSim 提出配電邊緣計(jì)算終端的建模方法和資源時(shí)序曲線的生成方法。然后,以微服務(wù)生命周期作為性能分析的基本單位,提出針對配電邊緣計(jì)算終端的性能分析方法。最后,根據(jù)價(jià)格型需求響應(yīng)案例,結(jié)合資源時(shí)序曲線,利用本文的性能分析方法對配電邊緣計(jì)算終端實(shí)現(xiàn)性能分析。
本文的建模內(nèi)容需要考慮2 個(gè)需求。一是邊緣計(jì)算終端基于業(yè)務(wù)時(shí)序邏輯實(shí)現(xiàn)資源動態(tài)配置;二是通過仿真實(shí)驗(yàn)得到性能表征,并基于性能表征對邊緣計(jì)算終端做出性能分析。
為了實(shí)現(xiàn)以上2 個(gè)需求,需要實(shí)現(xiàn)以下內(nèi)容的建模。
1)配電業(yè)務(wù)建模。在本文的應(yīng)用場景中,單個(gè)邊緣計(jì)算終端需要完成配電臺區(qū)下海量接入設(shè)備的業(yè)務(wù)處理。因此,數(shù)據(jù)采集、數(shù)據(jù)分析和控制指令下發(fā)均屬于業(yè)務(wù)建模需求[23-24]?;诖诵枨?,邊緣計(jì)算終端需要根據(jù)業(yè)務(wù)時(shí)序邏輯依次執(zhí)行采集類微服務(wù)、分析類微服務(wù)和控制類微服務(wù)。因此,配電業(yè)務(wù)建模包括3 類微服務(wù)的生命周期和業(yè)務(wù)時(shí)序邏輯。
2)邊緣計(jì)算終端架構(gòu)的建模。在接收業(yè)務(wù)上傳請求后,邊緣計(jì)算終端根據(jù)業(yè)務(wù)時(shí)序邏輯分別調(diào)用計(jì)算資源、網(wǎng)絡(luò)資源和存儲資源完成業(yè)務(wù)處理。因此,邊緣計(jì)算終端架構(gòu)的建模需要考慮計(jì)算資源、網(wǎng)絡(luò)資源和存儲資源的載體[25-28]。這些載體元件包括虛擬機(jī)和虛擬交換機(jī)。
為了針對3 類微服務(wù)實(shí)現(xiàn)資源配置,邊緣計(jì)算終端的虛擬機(jī)也分為3 類,即采集類虛擬機(jī)、分析類虛擬機(jī)和控制類虛擬機(jī),分別用于實(shí)現(xiàn)數(shù)據(jù)采集、數(shù)據(jù)分析和控制指令下發(fā)。
3)資源時(shí)序曲線。作為性能表征,資源時(shí)序曲線能夠反映邊緣計(jì)算終端內(nèi)部資源變化的動態(tài)過程,是實(shí)現(xiàn)性能分析的數(shù)值依據(jù)。
EdgeCloudSim 是一個(gè)模塊化架構(gòu)的仿真工具,為研究者提供了不同的函數(shù)模塊,以滿足研究者構(gòu)筑邊緣計(jì)算終端的需要。利用EdgeCloudSim 能夠?qū)崿F(xiàn)邊緣計(jì)算終端架構(gòu)、配電業(yè)務(wù)和資源時(shí)序曲線的建模。
EdgeCloudSim 的模塊化特性使得邊緣計(jì)算終端建模架構(gòu)、配電業(yè)務(wù)建模和資源時(shí)序曲線能夠化整為零,分別在不同模塊完成,即圖1 所示的資源配置模塊、業(yè)務(wù)模塊和圖像函數(shù)。
由于EdgeCloudSim 的歷史應(yīng)用場景是移動邊緣計(jì)算,如果要利用EdgeCloudSim 進(jìn)行配電物聯(lián)網(wǎng)仿真,一方面,需要在EdgeCloudSim 原有的函數(shù)模塊上進(jìn)行參數(shù)整定;另一方面,需要對函數(shù)模塊進(jìn)行自定義建模。具體內(nèi)容如表1 所示。
表1 基于EdgeCloudSim 的邊緣計(jì)算終端建模對象Table 1 EdgeCloudSim-based modeling objects for edge computing terminal
由圖1 可知,配電業(yè)務(wù)的建模內(nèi)容包括業(yè)務(wù)時(shí)序邏輯和3 類微服務(wù)的生命周期。
業(yè)務(wù)時(shí)序邏輯是構(gòu)筑配電業(yè)務(wù)的邏輯基礎(chǔ)。邊緣計(jì)算終端內(nèi)部容器的微服務(wù)處理相互獨(dú)立,因此需要設(shè)置業(yè)務(wù)時(shí)序邏輯,以此來編排微服務(wù)處理序列和時(shí)序邏輯約束,進(jìn)而統(tǒng)籌邊緣計(jì)算終端內(nèi)部的數(shù)據(jù)傳輸和資源配置。只要符合時(shí)序邏輯約束,同一個(gè)配電業(yè)務(wù)能夠通過不同業(yè)務(wù)時(shí)序邏輯實(shí)現(xiàn)。
圖1 中的業(yè)務(wù)時(shí)序邏輯是最基礎(chǔ)的配電業(yè)務(wù)時(shí)序邏輯,分為3 個(gè)時(shí)序,先后處理采集類微服務(wù)、分析類微服務(wù)和控制類微服務(wù)。在表1 中,業(yè)務(wù)時(shí)序邏輯需要設(shè)置2 個(gè)建模內(nèi)容,分別為微服務(wù)處理序列和時(shí)序邏輯約束。
微服務(wù)的生命周期是影響性能分析的基本單元。如圖1 所示,對于采集類微服務(wù),其生命周期由業(yè)務(wù)請求上傳、微服務(wù)處理和業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)移構(gòu)成。在表1 中,采集類微服務(wù)需要設(shè)置3 個(gè)參數(shù),分別為上傳量、轉(zhuǎn)移量和指令長度。
對于分析類微服務(wù),其生命周期由微服務(wù)處理和業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)移構(gòu)成。在表1 中,分析類微服務(wù)需要設(shè)置2 個(gè)參數(shù),分別為轉(zhuǎn)移量和指令長度。
對于控制類微服務(wù),其生命周期由微服務(wù)處理和業(yè)務(wù)數(shù)據(jù)下載構(gòu)成。基于以上分析,在表1 中,控制類微服務(wù)需要設(shè)置2 個(gè)參數(shù),分別為下載量和指令長度。
本文以價(jià)格型需求響應(yīng)作為仿真案例。構(gòu)成價(jià)格型需求響應(yīng)的7 個(gè)微服務(wù)如附錄A 表A1 所示,微服務(wù)參數(shù)和時(shí)序邏輯約束如表A2 所示。該案例的業(yè)務(wù)時(shí)序邏輯如圖A1 所示。圖A1(a)中,時(shí)序邏輯A 的編排思路為先采集后分析,僅第1 個(gè)時(shí)序就完成所有采集類微服務(wù)的業(yè)務(wù)處理。而圖A1(b)中,時(shí)序邏輯B 的編排思路為邊采集邊分析,并將微服務(wù)3 處理編排在第2 個(gè)時(shí)序。
如圖1 所示,邊緣計(jì)算終端架構(gòu)由虛擬機(jī)和虛擬交換機(jī)組成。其中,虛擬機(jī)是調(diào)用計(jì)算資源和存儲資源的實(shí)體設(shè)備,而虛擬交換機(jī)是調(diào)用網(wǎng)絡(luò)資源的實(shí)體設(shè)備。
虛擬機(jī)分為采集類虛擬機(jī)、分析類虛擬機(jī)和控制類虛擬機(jī),分別用于處理對應(yīng)的微服務(wù)。虛擬機(jī)接收業(yè)務(wù)請求或業(yè)務(wù)數(shù)據(jù)后,形成容器并基于容器完成微服務(wù)處理。而完成處理后,容器暫停,并釋放占用的資源。在表1 中,虛擬機(jī)需要設(shè)置2 個(gè)建模內(nèi)容,分別為計(jì)算資源配置和存儲資源配置。
虛擬交換機(jī)能夠按需調(diào)用網(wǎng)絡(luò)資源并形成上傳信道、轉(zhuǎn)移信道和下載信道。在數(shù)據(jù)傳輸完成后,信道暫停,并釋放占用的資源。其中,上傳信道的兩端是采集類虛擬機(jī)和虛擬交換機(jī),轉(zhuǎn)移信道的兩端是2 個(gè)虛擬機(jī),而下載信道的兩端是控制類虛擬機(jī)和虛擬交換機(jī)。在表1 中,虛擬交換機(jī)需要完成網(wǎng)絡(luò)資源配置的建模。
針對本文的價(jià)格型需求響應(yīng)案例,邊緣計(jì)算終端架構(gòu)的參數(shù)如附錄A 表A3 所示。虛擬機(jī)配置計(jì)算資源的多寡會影響微服務(wù)處理的業(yè)務(wù)延時(shí),其計(jì)算方式如附錄A 式(A1)所示。虛擬交換機(jī)配置網(wǎng)絡(luò)資源的多寡會影響業(yè)務(wù)請求上傳、數(shù)據(jù)下載/轉(zhuǎn)移的業(yè)務(wù)延時(shí),其計(jì)算方式如附錄A 式(A2)所示。
性能分析的目的是通過性能表征對邊緣計(jì)算終端性能進(jìn)行定量分析。在本文的仿真實(shí)驗(yàn)中,微服務(wù)參數(shù)、業(yè)務(wù)時(shí)序邏輯和資源時(shí)序曲線是邊緣計(jì)算終端的性能表征,能夠?qū)崿F(xiàn)對邊緣計(jì)算終端的性能分析。
根據(jù)圖1 生成資源時(shí)序曲線需要先進(jìn)行邊緣計(jì)算終端建模以及配電業(yè)務(wù)建模,利用EdgeCloudSim的圖像函數(shù),輸出資源時(shí)序曲線。具體步驟如下:
步驟1:根據(jù)圖1 模塊化建模方法,在EdgeCloudSim 完成邊緣計(jì)算終端架構(gòu)和配電業(yè)務(wù)建模。
步 驟2:輸 入 附 錄A 表A2 和 表A3 的 參 數(shù),在EdgeCloudSim 上完成仿真,并將仿真結(jié)果代入式(1)。
式中:Lcpu(t)、Lbd(t)和Lram(t)分別為計(jì)算、網(wǎng)絡(luò)和存 儲 資 源 時(shí) 序 曲 線;ε(t)為 階 梯 函 數(shù);ti,inicpu、ti,inibds、ti,inibde和ti.iniram分 別 為 第i個(gè) 微 服 務(wù) 的 微 服 務(wù) 處 理、上傳信道、下載/轉(zhuǎn)移信道和容器啟用的初始時(shí)刻,i∈{1,2,…,7};si,cpu、si,bd和si,ram分 別 為 虛 擬 機(jī) 在第i個(gè)微服務(wù)配置的計(jì)算、網(wǎng)絡(luò)和存儲資源;ti,cpu、ti,ram、ti,bds和ti,bde分 別 為 第i個(gè) 微 服 務(wù) 的 計(jì) 算 資 源 占用時(shí)間、微服務(wù)處理用時(shí)、業(yè)務(wù)請求上傳用時(shí)和業(yè)務(wù)數(shù)據(jù)下載/轉(zhuǎn)移用時(shí)。
步驟3:利用圖像函數(shù)輸出Lcpu(t)、Lbd(t)和Lram(t)。
本文的性能分析方法以微服務(wù)作為性能分析的基本單位,最終輸出如附錄A 圖A1 所示7 個(gè)微服務(wù)的生命周期以及性能指標(biāo)。邊緣計(jì)算終端的性能指標(biāo)用業(yè)務(wù)延時(shí)和資源負(fù)荷率來衡量。具體步驟如下。
步驟1:輸入邊緣計(jì)算終端的3 類資源時(shí)序曲線Lcpu(t)、Lbd(t)和Lram(t)、微服務(wù)參數(shù)(見附錄A 表A2)和業(yè)務(wù)時(shí)序邏輯(見附錄A 圖A1)。
步 驟2:對 資 源 時(shí) 序 曲 線Lcpu(t)、Lbd(t) 和Lram(t)劃分時(shí)點(diǎn)與峰值。
步驟3:對資源時(shí)序曲線進(jìn)行微服務(wù)處理檢索,定位微服務(wù)處理所在的時(shí)間段。其原理為微服務(wù)參數(shù)的存儲量與邊緣計(jì)算終端配置的存儲資源一致,而對應(yīng)表達(dá)式如式(2)所示。
式 中:xi,ram為 第i個(gè) 微 服 務(wù) 的 存 儲 量。
如附錄A 圖A2(a)所示,由于微服務(wù)1 所需存儲量為k1,微服務(wù)2 所需存儲量為k2,可以直接從峰值所占時(shí)段判斷出微服務(wù)1 處理占用的時(shí)段為t1,微服務(wù)2 處理占用的時(shí)段為t2。
步驟4:對資源時(shí)序曲線進(jìn)行業(yè)務(wù)傳輸檢索,定位業(yè)務(wù)請求上傳信道、業(yè)務(wù)數(shù)據(jù)下載/轉(zhuǎn)移信道。其原理為:在微服務(wù)處理前后,配電邊緣計(jì)算終端根據(jù)業(yè)務(wù)時(shí)序邏輯調(diào)用網(wǎng)絡(luò)資源配置出傳輸信道,對應(yīng)表達(dá)式如式(3)所示。
式中:ti,ms為整個(gè)微服務(wù)的生命周期。
如附錄A 圖A2(b)所示,整個(gè)微服務(wù)的生命周期分為3 個(gè)階段,即業(yè)務(wù)請求上傳、微服務(wù)處理和業(yè)務(wù)數(shù)據(jù)下載/轉(zhuǎn)移。
步驟5:對資源時(shí)序曲線進(jìn)行容器啟停檢索,定位微服務(wù)的容器初始化時(shí)間和暫停時(shí)間。其原理為:邊緣計(jì)算終端在調(diào)用計(jì)算資源的前后,需要分別進(jìn)行容器初始化和容器暫停,對應(yīng)的表達(dá)式如式(4)所示。
式中:tbe和ted分別為容器初始化時(shí)間和容器暫停時(shí)間。
如附錄A 圖A2(c)所示,由于容器是計(jì)算資源的載體,在調(diào)用計(jì)算資源之前需要考慮容器初始化時(shí)間tbe,而在調(diào)用計(jì)算資源之后需要考慮容器暫停時(shí)間ted。
步驟6:根據(jù)圖1 微服務(wù)生命周期,結(jié)合步驟3至5 中獲取的微服務(wù)業(yè)務(wù)請求上傳時(shí)間、微服務(wù)處理時(shí)段和業(yè)務(wù)數(shù)據(jù)下載/轉(zhuǎn)移時(shí)間,輸出7 個(gè)微服務(wù)的生命周期所在時(shí)段。同時(shí),通過附錄A 式(A1)和式(A2)得到7 個(gè)微服務(wù)的計(jì)算和網(wǎng)絡(luò)資源配置。結(jié)合業(yè)務(wù)時(shí)序邏輯,計(jì)算得到3 類虛擬機(jī)資源峰值。
步驟7:以業(yè)務(wù)延時(shí)作為邊緣計(jì)算終端的實(shí)時(shí)性指標(biāo),輸出最后一個(gè)微服務(wù)的業(yè)務(wù)數(shù)據(jù)下載結(jié)束時(shí)刻作為業(yè)務(wù)延時(shí)。
步驟8:以資源負(fù)荷率作為表征資源利用程度的指標(biāo),當(dāng)資源負(fù)荷率越高時(shí)表明邊緣計(jì)算終端計(jì)算工作越繁忙且應(yīng)對突發(fā)事件處理需求的資源越少。根據(jù)式(5)得到計(jì)算、網(wǎng)絡(luò)和存儲資源負(fù)荷率。
式中:ycpu、ybd和yram分別為計(jì)算、網(wǎng)絡(luò)和存儲資源負(fù)荷 率;h1,cpu、h1,bd、h1,ram、h2,cpu、h2,bd、h2,ram、h3,cpu、h3,bd和h3,ram分別為采集類、分析類和控制類虛擬機(jī)的計(jì)算、網(wǎng)絡(luò)和存儲資源峰值;Qcpu、Qbd和Qram分別為整個(gè)邊緣計(jì)算終端的計(jì)算、網(wǎng)絡(luò)和存儲資源配置。
性能分析能夠獲取邊緣計(jì)算終端的性能指標(biāo)。本文以價(jià)格型需求響應(yīng)為仿真案例,以EdgeCloudSim 為仿真軟件,輸入如附錄A 表A2 和表A3 所示的仿真參數(shù),以圖A1 的業(yè)務(wù)時(shí)序邏輯進(jìn)行業(yè)務(wù)處理。然后,根據(jù)2.1 節(jié)得到邊緣計(jì)算終端的資源時(shí)序曲線,如圖A3 和圖A4 所示。根據(jù)2.2節(jié)的性能分析方法解析出7 個(gè)微服務(wù)的生命周期,并通過計(jì)算得到對應(yīng)的性能指標(biāo)。最后,從微服務(wù)角度出發(fā),將圖A3 和圖A4 的性能分析結(jié)果進(jìn)行對比,分析2 種業(yè)務(wù)時(shí)序邏輯造成的性能差異及其差異成因。
本節(jié)為2 個(gè)業(yè)務(wù)時(shí)序邏輯的資源時(shí)序曲線解析過程。具體計(jì)算方法參考2.2 節(jié)性能分析方法的步驟1 至6。對于業(yè)務(wù)時(shí)序邏輯A,觀察附錄A 圖A3,并按照2.2 節(jié)的性能分析方法劃分時(shí)點(diǎn)與峰值,得到表A4 和表A5,最終解析結(jié)果如表2 所示。表中,計(jì)算資源的單位用每秒處理的百萬級的機(jī)器語言指令數(shù)(million instructions per second,MIPS)表示。同理,對于業(yè)務(wù)時(shí)序邏輯B,根據(jù)圖A4,并按照2.2 節(jié)的性能分析方法劃分時(shí)點(diǎn)與峰值,得到表A4 和表A5,最終解析結(jié)果如表A6 所示。以下僅展示圖A3的解析過程。
表2 資源時(shí)序曲線解析結(jié)果Table 2 Result of resource timing curve analysis
1)觀察由k1、k2和k3組成的存儲資源時(shí)序曲線,由 式(2)可 得,k1=30 Mbit,x1,ram=s1,ram=30 Mbit為微服務(wù)1 的存儲量,即微服務(wù)1 的微服務(wù)處理時(shí)段為t2至t7,記 為t1,ram=t7-t2???知,業(yè) 務(wù) 請 求 上 傳結(jié)束于t2,業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)移開始于t7,而在附錄A 圖A3網(wǎng)絡(luò)資源時(shí)序曲線中,峰值u1結(jié)束于t2,峰值u6開始于t7,結(jié)合式(3)可得,業(yè)務(wù)請求上傳的時(shí)段為t1,bds=t2-t1,業(yè) 務(wù) 數(shù) 據(jù) 轉(zhuǎn) 移 的 時(shí) 段 為t1,bde=t8-t7,而 微 服 務(wù)1 的 生 命 周 期 為t1,ms=t1,bds+t1,ram+t1,bde=t8-t1。微服務(wù)1、2 和3 處在同一 時(shí) 序,同 樣 的 計(jì) 算 可 得 到t2,ms=t6-t1和t3,ms=t9-t1,即微服務(wù)2 生命 周期為t1至t6,而微 服務(wù)3 則為t1至t9。
結(jié)合微服務(wù)1 生命周期和附錄A 圖A2(c)的容器啟停檢索,由式(4)可得,容器初始化時(shí)間為tbe=t1-t2=0.01 s,容器暫停時(shí)間為ted=t7-t2=0.01 s。
2)觀察由k5和k6組成的存儲資源時(shí)序曲線,由式(2)可 得 ,k5-k6=20 Mbit,x5,ram=s5,ram=20 Mbit 為微服務(wù)5 的存儲量,即微服務(wù)5 的處理時(shí)段 為t9至t10,記 為t5,ram=t10-t9。附 錄A 表A2 中,微 服 務(wù)5 無 上 傳 和 轉(zhuǎn) 移,因 此t5,bds=t5,bde=0,最 終由 式(3)得 到t5,ms=t5,bds+t5,ram+t5,bde=t10-t9,即微服務(wù)5 的生命周期為t9至t10。
由 式(2)可 得,k6=40 Mbit,x4,ram=x6,ram=40 Mbit 為微服務(wù)4 和6 的存儲量,僅觀察存儲資源時(shí)序曲線無法得到微服務(wù)4 和6 的生命周期。
本節(jié)從附錄A 圖A3 的計(jì)算資源時(shí)序曲線額外劃分t11和t12,由式(4)可得,tbe=t12-t11=0.01 s。其中,t12為微服務(wù)占用計(jì)算資源的起點(diǎn),t11為容器初始化起點(diǎn)。結(jié)合業(yè)務(wù)時(shí)序邏輯圖A1(a)可以判斷,t11為微服務(wù)6 的容器初始化起點(diǎn),由式(2)可得,k6=40 Mbit,x6,ram=s6,ram=40 Mbit,即 微 服 務(wù)6 的微服務(wù)處理時(shí)段為t11至t13,記為t6,ram=t13-t11。表A2 中,微服務(wù)6 無上傳,即t6,bds=0。從t6,ram=t13-t11可知,業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)移開始于t13,而圖A3 中,峰值u7開始于t13,結(jié)合式(3)可得業(yè)務(wù)數(shù)據(jù)轉(zhuǎn)移的時(shí)段為t6,bde=t14-t13,而 整 個(gè) 生 命 周 期 為t6,ms=t6,bds+t6,ram+t6,bde=t14-t11,即t11至t14。同理計(jì)算得到微服務(wù)4 的生命周期為t9至t11。
3)觀察由k6組成的存儲資源時(shí)序曲線,由式(2)可 得,k7=20 Mbit,x7,ram=s7,ram=20 Mbit 為微服務(wù)7 的存儲量,即微服務(wù)7 的處理時(shí)段為t14至t15,記 為t7,ram=t15-t14。附 錄A 表A2 中,微 服 務(wù)7無上傳,即t7,bds=0。從t7,ram=t15-t14可知,微服務(wù)7 轉(zhuǎn)移開始于t15;圖A3 中,業(yè)務(wù)數(shù)據(jù)開始于t15,結(jié)合式(3)可 得,業(yè) 務(wù) 數(shù) 據(jù) 轉(zhuǎn) 移 的 時(shí) 段 為t7,bde=t16-t15。 整 個(gè) 生 命 周 期 為t7,ms=t7,bds+t7,ram+t7,bde=t16-t14,即t14至t16。
4)將1)至3)的結(jié)果進(jìn)行整合后,可以得到表2。表2 展示了7 個(gè)微服務(wù)生命周期和資源配置,其中,計(jì)算資源和網(wǎng)絡(luò)資源通過附錄A 式(A1)和式(A2)計(jì)算得到。
考慮到附錄A 表A3 中7 個(gè)容器并發(fā)運(yùn)行的極限場景,本節(jié)以一個(gè)計(jì)算、網(wǎng)絡(luò)和存儲配置分別為Qcpu=65 MIPS、Qbd=44 Mbit/s 和Qram=195 Mbit的邊緣計(jì)算終端作為業(yè)務(wù)處理的載體。然后,從微服務(wù)出發(fā),結(jié)合圖A1 的2 個(gè)業(yè)務(wù)時(shí)序邏輯,參考2.2節(jié)性能分析方法的步驟6 至8 得到性能指標(biāo),并分析它們對終端造成的性能差異及其成因。
1)性能分析:對于業(yè)務(wù)時(shí)序邏輯A,由表2 可知,采集類虛擬機(jī)在時(shí)段t1至t9完成微服務(wù)處理。因此,附錄A 圖A3 中,時(shí)段t1至t9的資源峰值為采集類虛擬機(jī)的資源配置。
根據(jù)2.2 節(jié)的步驟8,采集類虛擬機(jī)的資源配置分 別 為h1,cpu=20 MIPS、h1,bd=30 Mbit/s 和h1,ram=30 Mbit;分析類虛擬機(jī)的資源配置分別為h2,cpu=25 MIPS、h2,bd=4 Mbit/s 和h2,ram=60 Mbit;控制類虛 擬 機(jī) 的 資 源 配 置 分 別 為h3,cpu=5 MIPS、h3,bd=10 Mbit/s 和h3,ram=20 Mbit。根據(jù)式(5)可得:
根據(jù)2.2 節(jié)的步驟7,結(jié)合表2 微服務(wù)7 的生命周期結(jié)束于t16=0.880 s,可得業(yè)務(wù)延時(shí)為0.880 s。
同理,根據(jù)2.2 節(jié)的步驟6 至8,對附錄A 圖A4和表A6 進(jìn)行同樣的計(jì)算,可以得到業(yè)務(wù)時(shí)序邏輯B下邊緣計(jì)算終端的計(jì)算、網(wǎng)絡(luò)和存儲資源負(fù)荷率分別 為69.23%、88.63% 和66.67%。 業(yè) 務(wù) 延 時(shí) 為0.987 s。具體計(jì)算結(jié)果如附錄A 表A7 和表A8所示。
2)性能差異分析:由附錄A 表A8 可知,采集類微服務(wù)處理是引起性能差異的原因。根據(jù)表A7 引起峰值的微服務(wù)一欄可知,業(yè)務(wù)時(shí)序邏輯B 通過將微服務(wù)3 編排在第2 個(gè)時(shí)序,使得整個(gè)邊緣計(jì)算終端的資源配置只需要考慮6 個(gè)微服務(wù)。由于業(yè)務(wù)時(shí)序邏輯A 需要為微服務(wù)3 額外配置資源,根據(jù)業(yè)務(wù)時(shí)序邏輯A 執(zhí)行的價(jià)格型需求響應(yīng)將會占用邊緣計(jì)算終端76.92%的計(jì)算資源、100%的網(wǎng)絡(luò)資源和79.49%的存儲資源,而根據(jù)業(yè)務(wù)時(shí)序邏輯B 執(zhí)行的價(jià)格型需求響應(yīng)僅占用了69.23% 的計(jì)算資源、88.63%的網(wǎng)絡(luò)資源和66.67%的存儲資源,資源負(fù)荷率更低。這表示業(yè)務(wù)時(shí)序邏輯A 配置下的邊緣計(jì)算終端工作更為繁忙,且應(yīng)對突發(fā)業(yè)務(wù)處理的能力更低。
然而,根據(jù)業(yè)務(wù)時(shí)序邏輯B 配置的邊緣計(jì)算終端的業(yè)務(wù)延時(shí)為0.987 s,比業(yè)務(wù)時(shí)序邏輯A 對應(yīng)的業(yè)務(wù)延時(shí)慢了約10.80%。這說明在配電業(yè)務(wù)體量有限的情況下,業(yè)務(wù)時(shí)序邏輯B 通過在第1 個(gè)時(shí)序上減少并發(fā)的微服務(wù)數(shù)量來減少邊緣計(jì)算終端的資源負(fù)荷,但這種業(yè)務(wù)編排犧牲了實(shí)時(shí)性。
3)最后,仿真結(jié)果和分析結(jié)果表明,由于配電邊緣計(jì)算將微服務(wù)分為3 類執(zhí)行,業(yè)務(wù)時(shí)序邏輯的不同將會影響邊緣計(jì)算終端的性能指標(biāo)。只要符合時(shí)序邏輯約束,同一個(gè)配電業(yè)務(wù)能夠通過不同業(yè)務(wù)時(shí)序邏輯實(shí)現(xiàn),但只有特殊的業(yè)務(wù)時(shí)序邏輯才能減少業(yè)務(wù)延時(shí),提高邊緣計(jì)算終端的實(shí)時(shí)性,或者減少資源負(fù)荷率。
本文以邊緣計(jì)算終端架構(gòu)和配電業(yè)務(wù)處理作為建模內(nèi)容,通過對仿真軟件EdgeCloudSim 的函數(shù)模塊進(jìn)行自定義建模與參數(shù)整定,建立配電邊緣計(jì)算終端模型。然后,提出了資源時(shí)序曲線的生成方法以及針對配電邊緣計(jì)算終端的性能分析方法。該性能分析方法充分考慮了配電業(yè)務(wù)根據(jù)業(yè)務(wù)時(shí)序邏輯將業(yè)務(wù)整體分解為3 類微服務(wù)執(zhí)行的研究思路,以微服務(wù)生命周期作為性能分析的基本單位,將邊緣計(jì)算終端的資源時(shí)序曲線、微服務(wù)參數(shù)和業(yè)務(wù)時(shí)序邏輯作為輸入,計(jì)算得到所有微服務(wù)的生命周期以及性能指標(biāo)。
為了驗(yàn)證性能分析方法的有效性,本文僅以價(jià)格型需求響應(yīng)作為仿真案例。然而,配電邊緣計(jì)算在現(xiàn)實(shí)場景中需要面臨業(yè)務(wù)處理多元化的挑戰(zhàn)。因此,在未來的研究中,有必要研究任務(wù)調(diào)度算法,實(shí)現(xiàn)資源優(yōu)化調(diào)度,以滿足更復(fù)雜的配電業(yè)務(wù)處理需求。
附錄見本刊網(wǎng)絡(luò)版(http://www.aeps-info.com/aeps/ch/index.aspx),掃英文摘要后二維碼可以閱讀網(wǎng)絡(luò)全文。