機(jī)器類(lèi)通信(MTC)是指利用自動(dòng)控制及網(wǎng)絡(luò)通信等技術(shù),在沒(méi)有人為干預(yù)的情況下實(shí)現(xiàn)機(jī)器與機(jī)器之間自主數(shù)據(jù)通信與信息交互的一系列技術(shù)或技術(shù)組合的總稱(chēng)[1]。它為不同類(lèi)型的終端設(shè)備建立實(shí)時(shí)通信連接并進(jìn)行數(shù)據(jù)傳輸提供了一種有效的途徑。據(jù)預(yù)測(cè),截至2020年,MTC連接設(shè)備數(shù)將超過(guò)50億個(gè),且應(yīng)用場(chǎng)景和業(yè)務(wù)類(lèi)型更加多元化和差異化[2]。這都給移動(dòng)網(wǎng)絡(luò)在計(jì)算和處理方面帶來(lái)了較大的挑戰(zhàn)。另一方面,未來(lái)5G網(wǎng)絡(luò)將是一張多制式多場(chǎng)景共存的異構(gòu)通信網(wǎng)絡(luò),基于高性能通用處理器的軟基站(GPP-SBS)[3]擁有更強(qiáng)的可編程性、更小巧、更廉價(jià),成為一種典型的基站類(lèi)型,將廣泛部署于5G網(wǎng)絡(luò)中。GPP-SBS中所有的數(shù)字信號(hào)計(jì)算與處理均通過(guò)多核CPU(GPP)來(lái)實(shí)現(xiàn),但其處理能力是有限的,尤其在面向大量MTC廣泛存在的移動(dòng)網(wǎng)絡(luò)中,計(jì)算逐漸成為制約移動(dòng)網(wǎng)絡(luò)性能的“瓶頸”。
在傳統(tǒng)的移動(dòng)通信系統(tǒng)中,無(wú)線(xiàn)資源的管理主要指對(duì)時(shí)間、頻率、功率等的分配和調(diào)度[4-6],并將計(jì)算資源納入資源管理的維度。因而通過(guò)對(duì)通信系統(tǒng)中的計(jì)算資源進(jìn)行有效的分配和管理以降低計(jì)算資源對(duì)系統(tǒng)性能的約束變得愈發(fā)重要和迫切。目前,對(duì)于計(jì)算資源的管理在計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域已有大量的研究,例如文獻(xiàn)[7-10]提出了虛擬資源在云計(jì)算中的分配。在文獻(xiàn)[7]中用混合整數(shù)規(guī)劃問(wèn)題來(lái)描述最優(yōu)云網(wǎng)絡(luò)映射問(wèn)題并采用一種啟發(fā)式的方法來(lái)解決該問(wèn)題。文獻(xiàn)[8]中列出了云計(jì)算中的多種資源分配算法,例如優(yōu)化資源調(diào)度算法、基于市場(chǎng)的資源分配策略(RAS-M)、控制擁塞的公平資源分配等等。但在無(wú)線(xiàn)通信中對(duì)于計(jì)算資源管理的研究目前卻十分有限。文獻(xiàn)[11-13]提出了軟件定義無(wú)線(xiàn)電(SDR)平臺(tái)中的計(jì)算資源管理方案:文獻(xiàn)[11]中提出了一種基于處理能力和設(shè)備間互通能力的資源模型,并給出了信號(hào)處理過(guò)程與處理設(shè)備間的映射算法;文獻(xiàn)[12]中提出了一種根據(jù)成本函數(shù)和無(wú)線(xiàn)場(chǎng)景調(diào)整的動(dòng)態(tài)映射算法。在文獻(xiàn)[11-13]中,計(jì)算資源的管理與分配都是基于不同通信標(biāo)準(zhǔn)的信號(hào)處理功能模塊進(jìn)行的。然而隨著現(xiàn)代通信的發(fā)展,用戶(hù)業(yè)務(wù)種類(lèi)越來(lái)越多,不同業(yè)務(wù)對(duì)于處理資源的需求也有很大的差別,面向業(yè)務(wù)導(dǎo)向的無(wú)線(xiàn)資源管理愈發(fā)重要。
本文提出了一種基于不同MTC業(yè)務(wù)特性的計(jì)算資源分配方案:通過(guò)對(duì)GPP-SBS中的計(jì)算資源與業(yè)務(wù)速率做出映射,并根據(jù)不同業(yè)務(wù)的速率對(duì)計(jì)算資源進(jìn)行分配,以達(dá)到最大化計(jì)算資源利用率的目的。本文組織如下,第1部分給出了計(jì)算資源與數(shù)據(jù)速率的映射關(guān)系,建立了計(jì)算資源分配模型。第2部分給出了計(jì)算資源分配的數(shù)學(xué)表達(dá)并給出了基于組合數(shù)學(xué)的具體算法。第3部分給出了該算法的性能仿真分析,最后進(jìn)行了總結(jié)。
1 計(jì)算資源建模
在本文所述的軟基站中,所有無(wú)線(xiàn)通信的數(shù)據(jù)處理均由高性能通用處理器(即多核CPU)完成。要對(duì)高性能通用處理器的計(jì)算資源(處理能力)進(jìn)行合理的分配,首先需要找到計(jì)算能力與傳統(tǒng)通信的傳輸能力的映射關(guān)系。通常高性能通用處理器的計(jì)算資源或者計(jì)算能力用單位MIPS來(lái)衡量,而傳統(tǒng)通信的傳輸能力由單位Mb/s來(lái)度量。在本節(jié)中給出MIPS和Mb/s的映射關(guān)系,以便于我們根據(jù)不同的業(yè)務(wù)速率需求來(lái)分配計(jì)算資源。
在GPP-SBS中,對(duì)于不同的處理器,不同的通信系統(tǒng)原型及不同的處理算法與代碼,實(shí)際中MIPS與Mb/s的對(duì)應(yīng)關(guān)系都是有所不同的。但是對(duì)于一個(gè)確定的軟基站系統(tǒng),MIPS與Mb/s的映射是確定的。
MIPS與Mb/s的映射模型如圖1所示。假設(shè)軟基站(SBS)在[t1]時(shí)間內(nèi)接收到[α]比特?cái)?shù)據(jù),并且完全處理這些數(shù)據(jù)用了[t2]時(shí)間并花費(fèi)了[β]條指令。
這里,我們給出該模型所示映射的數(shù)學(xué)表達(dá)式:
[Mbps=αt1βt2×MIPS] (1)
計(jì)算資源塊(CRB)通過(guò)上式來(lái)定義。SBS總的計(jì)算處理能力是I MIPS,由式(1)可得總的計(jì)算資源時(shí)C Mb/s。若在SBS中有N條可調(diào)度分配的線(xiàn)程,每條線(xiàn)程定義為一個(gè)計(jì)算資源塊(CRB),則有N個(gè)CRB對(duì)應(yīng)N條線(xiàn)程。
在本文中,計(jì)算資源的分配是基于不同業(yè)務(wù)的業(yè)務(wù)速率需求的。通過(guò)上文中的定義,GPP基于SBS中的計(jì)算資源分配可以描述為將N個(gè)CRB分配給M個(gè)業(yè)務(wù)。計(jì)算資源分配模型如圖2所示,其中,[ai](Mb/s)是CRB的處理能力,[Rk]業(yè)務(wù)k的數(shù)據(jù)速率要求。
2 計(jì)算資源分配算法
計(jì)算資源分配的目的是滿(mǎn)足業(yè)務(wù)速率需求條件下最大化計(jì)算資源利用率。我們首先為單個(gè)業(yè)務(wù)分配計(jì)算資源的算法,進(jìn)而給出了多業(yè)務(wù)的計(jì)算資源分配算法。
2.1 單業(yè)務(wù)的分配算法
首先,我們定義業(yè)務(wù)k的計(jì)算資源利用率為:
[ηk=Rkj=1Nkaj] (2)
其中:
[aj∈Ωk]([j=1,2...,Nk])
[j=1Nkaj≥Rk]
這里[Rk](Mb/s)是業(yè)務(wù)k的數(shù)據(jù)速率,[ai](Mb/s)是CRB j的處理能力,[Ωk]是分配給業(yè)務(wù)k的CRB集合,[Nk]是分配給業(yè)務(wù)k的CRB數(shù)目。
設(shè)Ω是所有可分配CRB的集合,Ωk是分配給業(yè)務(wù)k的CRB集合,使得[ηk]最大。為單個(gè)業(yè)務(wù)分配計(jì)算資源的問(wèn)題可以用組合優(yōu)化問(wèn)題Q描述:
[Q=] (3)
其中:
[I={a1,a2,...,aN;Rk}]
[Ωk={ai|i=1,2,...,N}]
[Y={y=aj|j=1,2,...Nk;j=1Nkaj≥Rk}]
[F=ηk]
[opt=max]
這里I是問(wèn)題Q的輸入數(shù)據(jù)集合;Ωk是可行解元素的集合;Y是可行解集合;F是所有可行解的目標(biāo)函數(shù);而opt表示問(wèn)題Q是一個(gè)最大化問(wèn)題。
上面的問(wèn)題并不復(fù)雜,包含的離散數(shù)據(jù)并不多,通過(guò)組合優(yōu)化中的全搜索方法可以獲得最優(yōu)解[14-15]。算法描述如下:
算法一:為單個(gè)業(yè)務(wù)k分配CRB算法
2.2 多業(yè)務(wù)的次優(yōu)化分配
上述算法描述了為單個(gè)業(yè)務(wù)分配計(jì)算資源。
當(dāng)有M個(gè)業(yè)務(wù)同時(shí)到達(dá)時(shí),我們需要全面的考慮M個(gè)業(yè)務(wù)來(lái)分配計(jì)算資源。首先我們定義為M個(gè)業(yè)務(wù)分配CRB的計(jì)算資源利用率。為M個(gè)業(yè)務(wù)分配CRB的計(jì)算資源利用率如下:
[η=k=1KRkk=1Ki=1Nkai] (4)
其中:
[ai∈Ωk]([i=1,2,...,N])
[i=1Nkai≥Rk]
這里[Rk],k從1到K,是已獲得計(jì)算資源分配的業(yè)務(wù)。其次優(yōu)化算法是最優(yōu)化的算法的一種情況。由于CRB間的處理能力差別不大,所以次優(yōu)解可以通過(guò)為M個(gè)業(yè)務(wù)的一種排列做分配來(lái)得到。與此同時(shí),考慮到M個(gè)業(yè)務(wù)的優(yōu)先級(jí),我們只需要按照業(yè)務(wù)優(yōu)先級(jí)的降序?yàn)闃I(yè)務(wù)分配CRB即可。
這里,集合[R={R1,R2,...,RM}]是M個(gè)業(yè)務(wù)按優(yōu)先級(jí)排列的數(shù)據(jù)速率;[Ansk]是業(yè)務(wù)k的解集合。算法可描述如下:
算法二:M個(gè)業(yè)務(wù)的次優(yōu)化算法
分配結(jié)束之后,未分配業(yè)務(wù)進(jìn)入排隊(duì)序列并提升下一次分配的優(yōu)先級(jí)別。
2.3 多業(yè)務(wù)的最優(yōu)化分配
由于次優(yōu)化算法是最優(yōu)化算法的一種情況,所以我們可以在上文的次優(yōu)化算法的基礎(chǔ)上用全搜索比較容易的得到最優(yōu)解。
為了得到最優(yōu)解,我們隊(duì)M個(gè)業(yè)務(wù)做全搜索。M個(gè)業(yè)務(wù)的所有排列數(shù)是M!。
我們需要順序的對(duì)M!種排列做M!次上文的次優(yōu)化算法,然后比較所得到的M!個(gè)計(jì)算資源利用率,最大的利用率就對(duì)應(yīng)最優(yōu)解,其流程如圖3所示:
但是最優(yōu)化算法的復(fù)雜度較高。當(dāng)對(duì)M個(gè)業(yè)務(wù)做分配時(shí),其算法復(fù)雜度是次優(yōu)化算分的M!倍。例如,當(dāng)僅對(duì)10個(gè)業(yè)務(wù)同時(shí)分配時(shí),最優(yōu)化算法的復(fù)雜度就是次優(yōu)化算分的3 628 800倍了??梢钥吹皆诜峙涠鄻I(yè)務(wù)時(shí)最優(yōu)化算法的復(fù)雜度是十分高的。而且從第3章節(jié)的仿真可以看出次優(yōu)化算法和最優(yōu)化算法的性能差別并不大。
3 仿真結(jié)果
在本章節(jié),我們對(duì)上文提出的算法做了數(shù)值仿真分析,重點(diǎn)是對(duì)次優(yōu)化算法的仿真分析。接著我們通過(guò)仿真比較了次優(yōu)化算法和無(wú)算法的CRB順序分配之間的計(jì)算資源利用率。我們仿真了M個(gè)業(yè)務(wù)同時(shí)到達(dá)而CRB數(shù)目不同情況下的計(jì)算資源利用率。具體參數(shù)如表1所示:
仿真結(jié)果如圖4和圖5所示。
圖4所示為基于最優(yōu)化算法和次優(yōu)化算法的計(jì)算資源利用率。當(dāng)可用CRB數(shù)目為16到20時(shí),最優(yōu)化算法和次優(yōu)化算法均由一個(gè)業(yè)務(wù)無(wú)可行解??梢钥吹疆?dāng)計(jì)算資源不足時(shí)計(jì)算資源的利用率是不穩(wěn)定的。當(dāng)CRB數(shù)目超過(guò)21后,所有的業(yè)務(wù)均由可行解。這種情況下,次優(yōu)化算法的利用率穩(wěn)定增加且越來(lái)越接近最優(yōu)化算法,而且在計(jì)算資源充足的情況下分配算法的計(jì)算資源利用率接近100%??偟膩?lái)說(shuō),最優(yōu)化算法和次優(yōu)化算法的計(jì)算資源利用率都達(dá)到比較高的值,并且二者之間的差別不大。
圖5所示為基于次優(yōu)化算法和CRB順序分配的計(jì)算資源利用率比較。當(dāng)CRB數(shù)目為16到20時(shí)次優(yōu)化算法和CRB順序分配均由一個(gè)業(yè)務(wù)無(wú)可行解,但是CRB數(shù)目為21到22時(shí),CRB順序分配任然有一個(gè)業(yè)務(wù)無(wú)可行解。且CRB順序分配的計(jì)算資源利用率在有新的業(yè)務(wù)被分配之前都是不變的。從圖5我們可見(jiàn)次優(yōu)化算法對(duì)計(jì)算資源利用率的提升十分明顯。
4 結(jié)束語(yǔ)
本文提出了GPP-SBS下面向不同MTC業(yè)務(wù)需求的計(jì)算資源分配模型,給出了分配模型的數(shù)學(xué)表達(dá)式并提出了基于組合優(yōu)化的計(jì)算資源分配算法,其中主要描述了具有較低復(fù)雜度的次優(yōu)化算法。通過(guò)仿真和對(duì)比分析,次優(yōu)化分配算法可以在較低的計(jì)算復(fù)雜度下達(dá)到高的計(jì)算資源利用率。