張明鑫,李 云,夏世超
(重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065)
目前,IP已成為使用最為廣泛的網(wǎng)際互連協(xié)議[1],當(dāng)IP承載段分組時(shí),IP協(xié)議頭的開銷會(huì)很大,甚至高于有效負(fù)載的占比,這大大降低了通信系統(tǒng)的帶寬利用率。同有線通信相比,無線通信的帶寬有限,更需要減小通信協(xié)議的協(xié)議頭開銷,以增加無線帶寬資源的利用率。協(xié)議頭壓縮是減小通信協(xié)議開銷的主要技術(shù)手段。為此,3GPP從第4版開始引入魯棒協(xié)議頭壓縮(robust header compression, ROHC)方法,以減少無線基站和移動(dòng)客戶端之間的協(xié)議封裝開銷,增加帶寬利用率。ROHC是一種適合于無線分組交換鏈路的協(xié)議頭壓縮算法,通常在發(fā)送方/接收方的數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層之間加入壓縮器/解壓縮器模塊。ROHCv2[2]擴(kuò)展了ROHC的功能,可以支持各種協(xié)議的壓縮如IP、IP/TCP、IP/UDP等,并擁有良好的壓縮比。目前,ROHC用來提高4G、5G、衛(wèi)星、ad-hoc和廣域網(wǎng)(wide area network, WAN)等網(wǎng)絡(luò)的協(xié)議封裝效率。ROHC中有3種工作模式,其中R、O模式是需要在壓縮端和解壓端建立一個(gè)單獨(dú)的ROHC反饋信道來維持兩端的狀態(tài)同步;U模式則沒有這部分的反饋開銷,壓縮端采用樂觀逼近原則和周期性原則來控制狀態(tài)轉(zhuǎn)換,實(shí)現(xiàn)雙端狀態(tài)同步。本文主要針對(duì)U模式下的ROHC進(jìn)行改進(jìn)。
目前,有關(guān)ROHC的相關(guān)研究主要集中在參數(shù)優(yōu)化和模型優(yōu)化上。文獻(xiàn)[3]提出一種基于動(dòng)態(tài)貝葉斯網(wǎng)絡(luò)的健壯協(xié)議頭壓縮算法(dynamic Bayesiannetwork robust header compression, DB-ROHC),通過引入時(shí)間變量,在解壓端獲取離散時(shí)間丟包率等級(jí)并反饋給壓縮端,根據(jù)動(dòng)態(tài)貝葉斯算法動(dòng)態(tài)調(diào)節(jié)ROHC的關(guān)鍵參數(shù)滑動(dòng)窗口(sliding window control,SWC),實(shí)現(xiàn)壓縮率與健壯性的平衡;文獻(xiàn)[4]提出一種基于時(shí)間參數(shù)的優(yōu)化傳輸塊的方法,從編碼等方向入手增加系統(tǒng)的傳輸效率,但是整個(gè)系統(tǒng)的復(fù)雜度很高,具體應(yīng)用難度大;文獻(xiàn)[5]提出一種自適應(yīng)報(bào)頭壓縮算法ROHC-M,該算法將信道質(zhì)量指數(shù)(channel quality index, CQI)和混合自動(dòng)重傳(hybrid automatic repeat request, HARQ)按照0.5的權(quán)重求和作為信道狀態(tài),以估計(jì)傳輸成功率,并將壓縮端、解壓端的狀態(tài)和信道狀態(tài)變化建模成馬爾可夫預(yù)測(cè)模型,然后根據(jù)歷史觀測(cè)獲得的轉(zhuǎn)移概率來預(yù)測(cè)壓縮端狀態(tài)和解壓端狀態(tài),實(shí)現(xiàn)雙端同步;文獻(xiàn)[6]采用機(jī)器學(xué)習(xí)方法預(yù)測(cè)ROHC中的壓縮效用,通過對(duì)壓縮機(jī)選型配置的分析,選擇最大化效用的壓縮機(jī),該算法在動(dòng)態(tài)信道條件下具有較好的性能;文獻(xiàn)[7]根據(jù)無線信道狀態(tài)的變化動(dòng)態(tài)調(diào)整ROHC算法的參數(shù),但它需要引入ROHC反饋,增加了時(shí)延,且當(dāng)信道狀態(tài)惡劣時(shí)增益不明顯;文獻(xiàn)[8]在ROHC參數(shù)優(yōu)化過程中加入了慢啟動(dòng)策略,提出了一種跨層優(yōu)化的框架,該框架根據(jù)底層信息的反饋,將信道狀態(tài)、傳輸狀態(tài)、壓縮狀態(tài)和解壓狀態(tài)模擬成一個(gè)部分可觀測(cè)的馬爾可夫預(yù)測(cè)過程(partially observable Markov processes,POMDP),并使用SARSOP[9]算法對(duì)POMDP模型進(jìn)行近似求解,得到了很好的效果;文獻(xiàn)[10]在一個(gè)ad-hoc網(wǎng)絡(luò)中使用RoHCv1,通過上下文標(biāo)識(shí)符(connection identifier,CID)轉(zhuǎn)發(fā)實(shí)現(xiàn)端到端的壓縮,該方案在單向U模式ROHC上進(jìn)行實(shí)現(xiàn)并采用RTP/UDP/IPv4協(xié)議傳輸,仿真結(jié)果表示,總體丟包率比傳統(tǒng)U-ROHC降低了約5%;文獻(xiàn)[11]在多跳場(chǎng)景下,提出一種類似于U模式的ROHC算法,犧牲一些壓縮效率,獲取更高的魯棒性;文獻(xiàn)[12]針對(duì)雙向可靠模型的ROHC提出了一種跨層POMDP模型,該模型基于輪詢(按需)的解壓器反饋機(jī)制,僅當(dāng)壓縮器在獲取底層反饋信息不足以確定下一個(gè)數(shù)據(jù)包的壓縮狀態(tài)時(shí),解壓器才發(fā)送反饋,該研究很好地平衡了ROHC反饋開銷和傳輸效率之間的關(guān)系;文獻(xiàn)[13]使用跨層優(yōu)化建立了組播網(wǎng)絡(luò)模型,以傳輸塊(transport block,TB)作為傳輸單元,并使用POMDP優(yōu)化該跨層網(wǎng)絡(luò)模型,以求最大化多媒體廣播多播服務(wù)(multimedia broadcast/multicast service,MBMS)中所有用戶成功接收的有效負(fù)載比特的總數(shù),文獻(xiàn)為了解決多用戶下的POMDP的高復(fù)雜度問題,進(jìn)一步開發(fā)了一種高效可計(jì)算的瞬時(shí)邊際置信(instantaneous marginal confidence,IMB)策略算法,POMDP可以近似求解出多用戶吞吐量的最優(yōu)解,解決了ROHC廣播優(yōu)化問題;文獻(xiàn)[14]在POMDP模型上進(jìn)一步完善,提出一種利用魯棒頭壓縮為每個(gè)移動(dòng)用戶優(yōu)化MBMS分配方案,該方案具體做法是為每個(gè)用戶分配一個(gè)具有最優(yōu)的ROHC參數(shù)來優(yōu)化MBMS,進(jìn)一步開發(fā)了一種基于用戶分配和ROHC參數(shù)優(yōu)化的動(dòng)態(tài)規(guī)劃算法,使ROHC可以高效地支持MBMS。
以上方法通過優(yōu)化ROHC壓縮參數(shù)和底層信息反饋,提高了ROHC的效率,但仍存在如下不足:①在對(duì)ROHC建模時(shí),較少考慮壓縮端降級(jí)到初始化 (initialization and refresh state, IR)狀態(tài),這不適合具有突發(fā)誤碼的無線通信場(chǎng)景,無線通信的突發(fā)誤碼會(huì)導(dǎo)致上下文靜態(tài)字段失去同步,使得ROHC模型無法正常工作;②沒有考慮到不同業(yè)務(wù)對(duì)服務(wù)質(zhì)量(quality of service,QoS)的不同要求。隨著新一代移動(dòng)通信網(wǎng)絡(luò),如長(zhǎng)期演進(jìn)(long term evolution,LTE)、5G移動(dòng)通信的廣泛應(yīng)用,無線通信網(wǎng)絡(luò)需要支持越來越廣泛的業(yè)務(wù)類型。為此,4G/5G移動(dòng)通信通過質(zhì)量檢驗(yàn) (QoS class identifier,QCI)屬性值來區(qū)別不同業(yè)務(wù)類型,3GPP發(fā)布的第8版本的標(biāo)準(zhǔn)一共有9種不同優(yōu)先級(jí)的業(yè)務(wù),到第14版本就增加到15種不同優(yōu)先級(jí)的業(yè)務(wù)。通常,不同業(yè)務(wù)對(duì)實(shí)時(shí)性、魯棒性和壓縮比應(yīng)有不同的要求,其中,魯棒性和壓縮比是協(xié)議頭壓縮關(guān)注的2個(gè)重要指標(biāo),需要針對(duì)不同業(yè)務(wù)的QoS需求來動(dòng)態(tài)調(diào)整ROHC的兩端狀態(tài),平衡不同業(yè)務(wù)的實(shí)時(shí)性、魯棒性和壓縮比。
針對(duì)上述2個(gè)問題,本文提出了一種新的ROHC模型,并提出了一種新的U模式下區(qū)分多業(yè)務(wù)的跨層ROHC優(yōu)化算法,不僅引入了底層信息反饋來實(shí)現(xiàn)自適應(yīng)協(xié)議頭壓縮,也對(duì)不同業(yè)務(wù)進(jìn)行區(qū)分,使高優(yōu)先級(jí)業(yè)務(wù)(實(shí)時(shí)性高)具有更快的恢復(fù)能力,低優(yōu)先級(jí)業(yè)務(wù)具有更高的壓縮比,該算法可以使ROHC在無線網(wǎng)絡(luò)突發(fā)誤碼時(shí)也能正常工作。
ROHC協(xié)議棧如圖1所示,ROHC處于網(wǎng)絡(luò)層和媒體介質(zhì)訪問控制(medium access control, MAC)之間,有3種模式可以選擇,分別為單向U模式、雙向樂觀O模式、雙向可靠R模式。其中,R、 O模式需要引入反饋機(jī)制,需要單獨(dú)的反饋信道;單向U模式不采用反饋信道,此時(shí)解壓方不能向壓縮方發(fā)送反饋信息,為保證壓縮健壯性和壓縮率,壓縮方采用樂觀逼近原則和周期性原則進(jìn)行狀態(tài)轉(zhuǎn)移。
圖1 ROHC協(xié)議棧Fig.1 ROHC protocol stack
ROHC模塊初始化時(shí),解壓端狀態(tài)總是從無上下文(no context state,NC)狀態(tài)啟動(dòng),壓縮端總是從IR狀態(tài)啟動(dòng)。壓縮器的狀態(tài)轉(zhuǎn)換圖如圖2所示,壓縮端的狀態(tài)表示為SC={0,1,2},分別代表IR,SO,FO數(shù)據(jù)包。U-ROHC的建模原理如下:在壓縮端,協(xié)議頭字段可以大致分類為靜態(tài)的和動(dòng)態(tài)兩類。靜態(tài)字段在整個(gè)包會(huì)話期間不改變,而動(dòng)態(tài)字段以特定模式改變。壓縮器總是在初始化和IR狀態(tài)下啟動(dòng),通過傳輸IR包(其報(bào)頭未壓縮)來建立上下文同步。一階(first order state, FO)包通常被部分壓縮,其中包含動(dòng)態(tài)域的差分信息,但很少包含靜態(tài)域的差分信息,以便有效地傳輸數(shù)據(jù)包中的不規(guī)則信息;二階(second order state, SO)包的報(bào)頭被完全壓縮。傳統(tǒng)U模式根據(jù)計(jì)時(shí)器和計(jì)數(shù)器來控制壓縮狀態(tài)的轉(zhuǎn)換,壓縮器狀態(tài)通過在每個(gè)較低狀態(tài)(IR和FO)發(fā)送多個(gè)分組,向上轉(zhuǎn)換到較高階狀態(tài)(FO和SO)。在不接收解壓縮器反饋的情況下,為了使雙端上下文同步擁有足夠的置信度,壓縮端狀態(tài)還需要根據(jù)超時(shí)和更新向下轉(zhuǎn)換,以防止壓縮器和解壓縮器的上下文因數(shù)據(jù)包丟失而失去同步。但是不存在從SO狀態(tài)直接轉(zhuǎn)換至IR狀態(tài)的過程。
圖2 壓縮器的狀態(tài)轉(zhuǎn)換圖Fig.2 State transition diagram of the compressor
相應(yīng)地,解壓器也有3種狀態(tài)。剛開始時(shí)解壓縮程序需要初始化,處在NC狀態(tài),該狀態(tài)只能解壓IR數(shù)據(jù)包。一旦成功地接收到至少一個(gè)IR分組,默認(rèn)成功建立靜態(tài)和動(dòng)態(tài)字段的上下文,解壓縮器向上轉(zhuǎn)換到全上下文(full context state, FC)狀態(tài),其中,所有3種類型的(IR、FO、SO)分組都可以被成功解壓。在連續(xù)k1個(gè)數(shù)據(jù)包解壓失敗時(shí),解壓縮器轉(zhuǎn)換為靜態(tài)上下文(static context state, SC)狀態(tài),該狀態(tài)只能解壓IR、FO的數(shù)據(jù)包,其中一個(gè)FO或IR分組解壓成功,就足以重新建立上下文同步以將解壓縮器狀態(tài)再次向上移動(dòng)到FC狀態(tài);在連續(xù)k2個(gè)數(shù)據(jù)包解壓失敗時(shí),默認(rèn)解壓端靜態(tài)字段失去同步,則向下轉(zhuǎn)化為NC狀態(tài)。
總之,ROHC模型在分組會(huì)話期間的工作流程依賴于傳輸狀態(tài)、壓縮器的報(bào)頭類型和解壓縮器狀態(tài)。ROHC協(xié)議有最低有效位(least significant bit, LSB)和基于窗口的最低有效位(window-based least significant bits, WLSB)這2種編碼,其中WLSB是在LSB算法基礎(chǔ)上維持一個(gè)可滑動(dòng)的窗口,通過維護(hù)壓縮窗口內(nèi)的參考值,保證了在一定誤碼率的鏈路上,也能有較好的效率。窗口大小W是評(píng)價(jià)壓縮算法壓縮率和健壯性的關(guān)鍵參數(shù)。當(dāng)滑動(dòng)窗口較小時(shí),壓縮效率相對(duì)較高,但是對(duì)于丟包率高的無線鏈路,當(dāng)出現(xiàn)連續(xù)分組丟失時(shí),會(huì)出現(xiàn)正常分組無法正確解壓的情況;當(dāng)滑動(dòng)窗口增大時(shí),可變最低有效位算法計(jì)算的數(shù)值位數(shù)變大,可以增強(qiáng)解壓過程的健壯性,但是增大報(bào)文的編碼長(zhǎng)度,導(dǎo)致壓縮效率降低。
解壓器的狀態(tài)轉(zhuǎn)換圖如圖3所示,ROHC解壓端模擬成k1+k2+3種狀態(tài),表示為SD={0,1,…,k1,k1+1…,k1+k2+1,k1+k2+2},其中,[0,k1]代表FC0-FCk1狀態(tài);[k1+1,k1+k2+1]代表SC0-SCk2狀態(tài);k1+k2+2代表NC狀態(tài);sT=1和sT=0分別代表分組的傳輸成功和失敗。
圖3 解壓器的狀態(tài)轉(zhuǎn)換圖Fig.3 State transition diagram of the decompressor
在現(xiàn)有的研究中,對(duì)ROHC信道都使用Gilbert-Elliot模型[15]。然而在實(shí)踐中,信道質(zhì)量不可能如此明確地分為2種狀態(tài),好的狀態(tài)總是傳輸成功,不好的狀態(tài)總是傳輸失敗。所以本文考慮有限狀態(tài)的馬爾可夫信道(finite state Markov channel, FSMC)[16-17],FSMC狀態(tài)轉(zhuǎn)換如圖4所示。
圖4 馬爾可夫信道狀態(tài)轉(zhuǎn)換圖Fig.4 Markov channel state transition diagram
信道被建模為有K種狀態(tài)的馬爾可夫信道,信道狀態(tài)可以等效為SH=m,m∈{1,…,K},其中,t表時(shí)間變量。則狀態(tài)k轉(zhuǎn)化為狀態(tài)m的轉(zhuǎn)移概率為
Pkm?Pr(SHt=m|SHt-1=k)
(1)
因此,信道轉(zhuǎn)移概率矩陣P可以表示為一個(gè)K×K矩陣
(2)
對(duì)于信道狀態(tài)轉(zhuǎn)移概率可以使用統(tǒng)計(jì)方法、信噪比、CSI信道狀態(tài)信息估計(jì)[18]。對(duì)于壓縮端而言,信道狀態(tài)并不是完全知道的,但可以通過觀測(cè)值來模擬。在滿足馬爾可夫性質(zhì)的條件下,將信道狀態(tài)間隔離散化,得到有限狀態(tài)馬爾可夫信道模型[19]。
前面提出一種新的U-ROHC建模方法,本節(jié)在該建模方法上構(gòu)建一種跨層優(yōu)化框架,它根據(jù)QCI標(biāo)識(shí)劃分業(yè)務(wù)等級(jí)和較低層的部分信息反饋來自適應(yīng)決策ROHC的壓縮端狀態(tài),從而在不需要引入ROHC反饋信道就能實(shí)現(xiàn)較高的效率和可靠性,也能考慮不同業(yè)務(wù)的魯棒性、壓縮比之間的平衡。
4G/5G協(xié)議棧如圖5所示,在4G/5G協(xié)議棧中,ROHC模塊大多是集成在PDCP層,在UE端和eNB端分別維護(hù)一對(duì)ROHC壓縮器和ROHC解壓器,用來完成UE端和eNB端的ROHC數(shù)據(jù)包的壓縮和解壓。
圖5 4G/5G協(xié)議棧Fig.5 4G/5G protocol stack
為解決U模式下的ROHC在無線信道惡劣的場(chǎng)景下性能不佳的問題,本文引入MAC層的HARQ反饋和物理層(physical layer,PHY)的CQI報(bào)告來自適應(yīng)調(diào)整壓縮狀態(tài)。HARQ是一種提高數(shù)據(jù)傳輸可靠性和效率的技術(shù),主要思想是重新傳輸信道條件較差的消息,從而降低中斷概率[20-21]。而CQI獨(dú)立于單次傳輸,為了限制反饋開銷的大小,每個(gè)CQI報(bào)告在一段時(shí)間內(nèi)都是有效的[22],基于此,HARQ可以評(píng)估數(shù)據(jù)包的傳輸成功率,CQI可以評(píng)估當(dāng)前的信道狀態(tài)。
ROHC跨層優(yōu)化的基本思想是ROHC考慮不同業(yè)務(wù)對(duì)QoS要求不同,對(duì)實(shí)時(shí)性要求高的業(yè)務(wù)考慮到盡快使其壓縮成功,減少時(shí)延,增加魯棒性。對(duì)實(shí)時(shí)性要求不高的業(yè)務(wù)更多考慮其壓縮比,以提高帶寬資源的利用率。
健壯性協(xié)議頭壓縮跨層優(yōu)化的功能框圖如圖6所示,先根據(jù)數(shù)據(jù)包ROHC壓縮模塊中定義的壓縮協(xié)議類型和CID信息做匹配,然后根據(jù)底層的反饋函數(shù)獲得HARQ和CQI參數(shù),再通過引入的POMDP跨層優(yōu)化模型[8]進(jìn)行解壓端狀態(tài)預(yù)測(cè),自適應(yīng)選擇壓縮端狀態(tài),最后根據(jù)SRT分類再次調(diào)整ROHC壓縮端狀態(tài)。
圖6 健壯性協(xié)議頭壓縮跨層優(yōu)化功能框圖Fig.6 ROHC cross-layer optimization function block diagram
ROHC的成功解壓,需要壓縮端壓縮的協(xié)議頭部可以被解壓端識(shí)別,并可以正確恢復(fù),這需要雙端建立完整的上下文并且狀態(tài)同步。在U型ROHC模型中,壓縮器不知道解壓器的明確狀態(tài)信息無法確知雙端狀態(tài)是否同步,采用POMDP的目的就是想讓壓縮器在沒有解壓器的反饋條件下,憑借可以得到的低層信息來評(píng)估解壓器的狀態(tài)。其基本原理是,基于解壓器的初始狀態(tài)、傳輸狀態(tài)和信道狀態(tài)估計(jì)可以不斷更新對(duì)ROHC系統(tǒng)狀態(tài)的信念,并且可以就下一個(gè)要傳輸?shù)陌鼒?bào)頭的類型作出最優(yōu)決策。該問題可以歸結(jié)為一個(gè)部分可觀測(cè)的馬爾可夫決策過程,具體模型如圖7所示。
圖7 POMDP模型Fig.7 Mode of POMDP
POMDP就是智能體在環(huán)境不確定的情況下采取一系列行動(dòng)使回報(bào)最大化。POMDP可以用一個(gè)七元組來表示:(S,A,T,R,Ω,O,γ),其中,S為系統(tǒng)狀態(tài)集合;A是智能體動(dòng)作的集合;T是狀態(tài)之間的條件轉(zhuǎn)移概率;R是獎(jiǎng)勵(lì)函數(shù);Ω是觀測(cè)值;O是條件觀測(cè)概率;γ∈[0,1]是折扣因子。圖7中的策略為信念狀態(tài)空間到動(dòng)作的映射,用函數(shù)P(a|b) 表示,與圖3有關(guān)。
在任意時(shí)間段內(nèi),環(huán)境都處于某種狀態(tài)s∈S。 本文將解壓器狀態(tài)和信道狀態(tài)的笛卡爾積作為系統(tǒng)狀態(tài),表示為
s=(sD,sH)∈S=SD×SH
(3)
智能體采取的行動(dòng)為壓縮端狀態(tài),其中,A為a∈A=SC={0,1,2},這導(dǎo)致環(huán)境轉(zhuǎn)換到狀態(tài)s′的概率為給定動(dòng)作a時(shí)從s到s′的狀態(tài)轉(zhuǎn)移矩陣。
T(s,a,s′)=p(s′H|sH)p(s′D|sD,a,s′H)
(4)
(4)式中:p(s′H|sH)表示下一時(shí)刻信道從當(dāng)前sH態(tài)轉(zhuǎn)移到s′H態(tài)的概率,由信道狀態(tài)轉(zhuǎn)移矩陣決定;p(s′D|sD,a,s′H)定義為在下一時(shí)刻信道為s′H態(tài)時(shí),給定動(dòng)作a,解壓端狀態(tài)的轉(zhuǎn)移概率,表示為
p(s′D|sD,sC,s′H)=
p(s′D|sD,sT=1,sC)p(sT=1|sC,s′H)+
p(s′D|sD,sT=0,sC)p(sT=0|sC,s′H)
(5)
同時(shí),智能體觀測(cè)為傳輸成功率和信道狀態(tài)的集合o=(oT,oH)∈Ω=ΩT×ΩH,其中傳輸成功率oT∈ΩT={0,1},和ST一樣都代表著傳輸狀態(tài),ΩH=SH={0,…,K-1}代表著信道狀態(tài)。觀測(cè)值會(huì)影響環(huán)境的狀態(tài)轉(zhuǎn)移以及智能體采取的動(dòng)作a。系統(tǒng)的觀測(cè)函數(shù)定義為在執(zhí)行動(dòng)作a之后,在下一時(shí)刻狀態(tài)s′時(shí)觀測(cè)到o的概率,表示為
O(s′,a,o)=p(oH|s′H)p(oT|a,s′D,s′H)
(6)
(6)式中,p(oH|s′H)概率和p(sH|s′H)是一致的,由信道狀態(tài)轉(zhuǎn)移矩陣決定,表示下一時(shí)刻信道狀態(tài)為s′H觀測(cè)到信道狀態(tài)為oH的概率;p(oT|a,s′D,s′H)可以由HARQ反饋的虛警和誤檢概率定義,該參數(shù)跟信道誤碼率有關(guān)。
智能體收到的獎(jiǎng)勵(lì)函數(shù)為
(7)
(7)式中:LP代表未壓縮前的數(shù)據(jù)包總長(zhǎng)度;Li,i=1,2,3分別代表sc處于IR、FO、SO狀態(tài)時(shí)ROHC數(shù)據(jù)包的負(fù)載;LP/Li代表當(dāng)前數(shù)據(jù)包的壓縮比;l(s′D=0)為二分判斷函數(shù),當(dāng)s′D=0時(shí),該函數(shù)值為1,否則為0。
由于智能體必須在環(huán)境不確定的情況下作出決策,智能體可以更新當(dāng)前環(huán)境的概率分布來更新其對(duì)真實(shí)環(huán)境的信念。當(dāng)前POMDP模型已知時(shí),智能體可以在與環(huán)境交互時(shí)更新信念b′(s′),代表在當(dāng)前置信為b的情況下智能體做了動(dòng)作a,得到觀測(cè)o的條件下,下個(gè)狀態(tài)為s′的概率為
b′(s′)=P(s′|o,a,b)=
(8)
(8)式中:P(o|a,b) 代表當(dāng)前置信為b,智能體執(zhí)行動(dòng)作a,觀測(cè)到o的概率,具體表示為
(9)
通過信念狀態(tài)空間的引入,POMDP問題就可以轉(zhuǎn)化為連續(xù)信念狀態(tài)空間的MDP問題。POMDP的優(yōu)化目標(biāo)就是找到一系列動(dòng)作{a0,…,at}來求得最大化期望回報(bào),表示為
(10)
而求取最大化期望回報(bào)的函數(shù)可以用最優(yōu)價(jià)值函數(shù)表示為
(11)
(11)式中,ρ(b,a)為期望獎(jiǎng)勵(lì)。
目前各種在線POMDP求解優(yōu)化算法[23-24]擁有較快的求解速度,而本文建模的ROHC模型狀態(tài)空間較小,其算法在求解速度上優(yōu)勢(shì)不大。由于網(wǎng)絡(luò)傳輸中,在線算法對(duì)端到端時(shí)延的影響難以估計(jì),因此,本文采用非常經(jīng)典的離線規(guī)劃算法—基于點(diǎn)的值迭代 (point-based value iteration,PBVI)[25]算法來近似精確值迭代求解POMDP,該算法的核心思想為在一組有限的信念點(diǎn)集合上進(jìn)行求解,減少了算法復(fù)雜度。PBVI為每個(gè)信念點(diǎn)初始化一個(gè)α-vector,經(jīng)過(11)式不斷迭代n次之后就可以表示為α-vector:Vn={α0,α1,…,αm},其中,每一個(gè)α都與一個(gè)動(dòng)作對(duì)應(yīng)。每一個(gè)α-vector都定義了某個(gè)區(qū)間里的值函數(shù),值函數(shù)描述成分段線性凸函數(shù)之后,可以表示為
(12)
在POMDP值迭代中,第n個(gè)值函數(shù)可以通過回溯算子H從第n-1個(gè)的值函數(shù)構(gòu)造出V=HV′,表示為
(13)
為了實(shí)現(xiàn)以上步驟,對(duì)每個(gè)動(dòng)作觀測(cè)集合都生成中間體,表示為
Γa,*←αa,*(s)=R(s,a)
(14)
由于只考慮有限個(gè)信念點(diǎn),僅需要在一組有限的點(diǎn)上進(jìn)行運(yùn)算,復(fù)雜度大大簡(jiǎn)化,公式為
(15)
最后,得到每一個(gè)信念點(diǎn)上的最優(yōu)動(dòng)作為
(16)
考慮到在ROHC模塊中引入業(yè)務(wù)分級(jí),本文在ROHC模塊對(duì)服務(wù)流的 QCI進(jìn)行劃分,一個(gè)QCI值是一種業(yè)務(wù),用于指定訪問節(jié)點(diǎn)內(nèi)定義的控制承載級(jí)分組轉(zhuǎn)發(fā)方式(如調(diào)度權(quán)重、接納門限、隊(duì)列管理門限、鏈路層協(xié)議配置等)[26]。雖然QCI有多種業(yè)務(wù),但是所有業(yè)務(wù)可以大致分為保證比特速率(guaranteed bit rate, GBE)和不保證比特速率(not guaranteed bit rate, Non-GBR)這2種承載方式。GBR是指承載要求的比特速率被網(wǎng)絡(luò)“永久”恒定地分配,即使在網(wǎng)絡(luò)資源緊張的情況下,相應(yīng)的比特速率也能夠保持,多用于對(duì)實(shí)時(shí)性比較高的業(yè)務(wù);Non-GBR指的是在網(wǎng)絡(luò)擁擠的情況下,業(yè)務(wù)(或者承載)需要降低比特速率,多用于對(duì)實(shí)時(shí)性要求不高的業(yè)務(wù)。本文根據(jù)這2種承載方式將所有的QCI分成2類,即SRT={0,1},0代表GBR資源類型;1代表Non-GBR資源類型。以下進(jìn)一步提出一種區(qū)分多業(yè)務(wù)的動(dòng)態(tài)調(diào)節(jié)壓縮端狀態(tài)的機(jī)制。
圖3中,解壓端建模成k1+k2+3種狀態(tài),解壓縮器處于FC狀態(tài)時(shí),連續(xù)k1個(gè)包解壓失敗,向下轉(zhuǎn)換為SC狀態(tài),再有連續(xù)k2個(gè)數(shù)據(jù)包解壓失敗,則默認(rèn)解壓端靜態(tài)字段失去同步,向下轉(zhuǎn)化為NC狀態(tài)。其中,k1和k2的取值決定雙端上下文恢復(fù)同步的速度和ROHC模塊的壓縮比,k1和k2越小,代表系統(tǒng)在無線鏈路質(zhì)量越差的時(shí)候,越早地進(jìn)行狀態(tài)轉(zhuǎn)移,確保雙端不會(huì)失去同步,以提高解壓成功率;k1和k2越大,ROHC模塊向下狀態(tài)轉(zhuǎn)移的次數(shù)就會(huì)減少,則系統(tǒng)會(huì)擁有更高的帶寬利用率。
連續(xù)解壓失敗時(shí),非實(shí)時(shí)性業(yè)務(wù)壓縮狀態(tài)轉(zhuǎn)換圖如圖8所示。當(dāng)SRT=1時(shí),采用的參數(shù)為k1和k2,經(jīng)過POMDP預(yù)測(cè)之后,如判斷sD∈{FC0,…,FCk1}或sD∈{SC0,…,SCk2},則不調(diào)整壓縮端狀態(tài),使該業(yè)務(wù)在保證一定健壯性的同時(shí),壓縮比更大。
圖8 連續(xù)解壓失敗時(shí)非實(shí)時(shí)性業(yè)務(wù)壓縮狀態(tài)轉(zhuǎn)換圖Fig.8 Non-real-time service compression state transition diagram when continuous decompression fails
連續(xù)解壓失敗時(shí),實(shí)時(shí)性業(yè)務(wù)壓縮狀態(tài)轉(zhuǎn)換圖如圖9所示,對(duì)SRT=0的實(shí)時(shí)性要求比較高的業(yè)務(wù),則更多考慮到數(shù)據(jù)包的實(shí)時(shí)性而不是壓縮比,更早地進(jìn)行向下狀態(tài)轉(zhuǎn)移。將k1和k2參數(shù)模擬為k1>>1和k2>>1。即判斷sD∈{FC0,…,FCk1/2}或sD∈{SC0,…,SCk2/2},則不調(diào)整壓縮端狀態(tài),如sD∈{FCk1/2+1,…,FCk1}或sD∈{SCk2/2+1,…,SCk2},則將sC從SO、FO狀態(tài)向下調(diào)整為FO、IR狀態(tài),使其雙端更快地恢復(fù)同步,保證了業(yè)務(wù)的實(shí)時(shí)性。
圖9 連續(xù)解壓失敗時(shí)實(shí)時(shí)性業(yè)務(wù)壓縮狀態(tài)轉(zhuǎn)換圖Fig.9 Real-time service compression state transition diagram when continuous decompression fails
為了驗(yàn)證算法的有效性,本文與不區(qū)分業(yè)務(wù)的傳統(tǒng)U-ROHC和文獻(xiàn)[5]提出的馬爾可夫預(yù)測(cè)模型進(jìn)行對(duì)比,驗(yàn)證算法的有效性。本文PC端(Intel Core i5-7500 CPU、16 GByte DDR3)使用 VMare Workstation 15的Ubuntu20系統(tǒng),并將ROHC模塊集成到NS-3.35開源網(wǎng)絡(luò)模擬器。
集成過程如下。在PC上安裝ROHC庫[27],編譯生成動(dòng)態(tài)鏈接庫,將ROHC代碼進(jìn)行封裝。在開源的網(wǎng)絡(luò)模擬器(network simulator, NS-3)中使用create-moudule.py腳本添加ROHC模塊,將封裝好ROHC庫的.h和.c文件添加到新模塊中,再在NS-3的編譯配置文件wscript中添加編譯好的ROHC動(dòng)態(tài)鏈接庫,重新編譯NS-3即可完成集成。添加新模塊和添加動(dòng)態(tài)鏈接庫的具體做法參照NS-3官方文檔。集成完成后,在NS-3的LTE模塊修改代碼,添加ROHC功能,最后在NS-3上對(duì)本文提出的算法進(jìn)行仿真分析。
仿真參數(shù)的配置如下。首先,將信道狀態(tài)劃分為常見的三狀馬爾可夫模型,而壓縮端信道質(zhì)量可以由CQI反饋來描述[8]。在標(biāo)準(zhǔn)里,CQI與信道的信噪比相對(duì)應(yīng),代表著信道質(zhì)量的好壞,取值為0~31,其中,0代表信道質(zhì)量最差,31代表信道質(zhì)量最好。本節(jié)按照CQI的指數(shù)將信道劃分為3種狀態(tài)SH∈{0,1,2},其中,0和1代表信道較好的狀態(tài),2代表信道差的狀態(tài),然后通過歷史數(shù)據(jù)來確定信道狀態(tài)和CQI指數(shù)的映射關(guān)系。具體地,首先將傳統(tǒng)的U-ROHC在參數(shù)配置好的NS-3上運(yùn)行,將ROHC日志輸出到指定的trace文件;再利用腳本統(tǒng)計(jì)POMDP實(shí)例中所需要的概率,包括信道狀態(tài)的劃分、轉(zhuǎn)移函數(shù)、觀測(cè)函數(shù)等;最后用獲取的概率在ROHC上求解POMDP一次,完成離線規(guī)劃,具體的參數(shù)設(shè)置如表1所示。表1中WLSB參數(shù)的選取是為了保證ROHC擁有一定的魯棒性;k1和k2的選取是為了保證業(yè)務(wù)的實(shí)時(shí)性要求,并減少POMDP的狀態(tài)空間,降低算法復(fù)雜度;其余ROHC參數(shù)的選取采用ROHC庫[27]的默認(rèn)值;對(duì)于POMDP模型參數(shù),折扣因子γ∈[0,1],γ越趨近于0,說明決策者越重視瞬時(shí)收益,γ越趨近于1,說明決策者越重視長(zhǎng)期收益,根據(jù)(7)式可得,本文的POMDP模型更加重視瞬時(shí)收益,因此,本文將γ設(shè)置為0.1。
表1 仿真參數(shù)設(shè)置
仿真使用平均標(biāo)頭壓縮長(zhǎng)度(average compression header length, ACL)進(jìn)行效率的評(píng)估,平均協(xié)議頭長(zhǎng)度越小代表壓縮比越高,表示為
(17)
(17)式中:T代表分組字節(jié)總數(shù);P代表有效負(fù)載的字節(jié)數(shù);C代表發(fā)送數(shù)據(jù)包的總數(shù)。
仿真在信道誤碼率分別為10-3、10-4、10-5時(shí),發(fā)送10 000個(gè)數(shù)據(jù)包,每一個(gè)數(shù)據(jù)包的長(zhǎng)度為40 Byte,并且第1個(gè)采樣點(diǎn)在發(fā)送100個(gè)數(shù)據(jù)包的點(diǎn)上,后面對(duì)每發(fā)送1 000個(gè)包的點(diǎn)進(jìn)行采樣分析,仿真結(jié)果如下。
信道誤碼率為10-3時(shí),測(cè)試的ACL如圖10所示,此時(shí)誤碼率較高,傳統(tǒng)U-ROHC在傳輸?shù)?0 000包時(shí)的平均壓縮長(zhǎng)度為10.85 Byte。馬爾可夫預(yù)測(cè)[5]算法,在實(shí)時(shí)性業(yè)務(wù)趨于平穩(wěn)時(shí)的ACL為9.82 Byte,非實(shí)時(shí)性業(yè)務(wù)趨于平穩(wěn)時(shí)的ACL為9.47 Byte,差值為0.35 Byte。本文算法POMDP模型對(duì)業(yè)務(wù)進(jìn)行了區(qū)分:一方面,對(duì)于實(shí)時(shí)性業(yè)務(wù),考慮更快地向下狀態(tài)轉(zhuǎn)換以獲取更快恢復(fù)雙端上下文置信的速度,確保業(yè)務(wù)實(shí)時(shí)性的要求,但犧牲了部分壓縮率,導(dǎo)致趨于平穩(wěn)時(shí)的ACL比非實(shí)時(shí)性業(yè)務(wù)的POMDP模型高0.62 Byte,相比馬爾可夫預(yù)測(cè)算法的差值更大;另一方面,對(duì)于實(shí)時(shí)性業(yè)務(wù),本文算法POMDP模型的ACL比馬爾可夫預(yù)測(cè)模型的ACL減少了約0.1 Byte,而對(duì)于非實(shí)時(shí)性業(yè)務(wù),本文算法POMDP模型更多考慮到壓縮比,趨于平穩(wěn)時(shí)的ACL比非實(shí)時(shí)性業(yè)務(wù)的馬爾可夫預(yù)測(cè)模型的ACL減少了約0.40 Byte,體現(xiàn)了本文算法模型的優(yōu)勢(shì)。
信道誤碼率為10-4時(shí),測(cè)試的ACL如圖11所示,由仿真結(jié)果可得,傳統(tǒng)U-ROHC在傳輸?shù)?0 000包時(shí)平均壓縮長(zhǎng)度趨于平穩(wěn),約為7.10 Byte。根據(jù)馬爾可夫預(yù)測(cè)[5]算法的結(jié)果看,實(shí)時(shí)性業(yè)務(wù)趨于平穩(wěn)時(shí)的ACL約為6.25 Byte,非實(shí)時(shí)性業(yè)務(wù)趨于平穩(wěn)時(shí)的ACL約為6.10 Byte,差值為0.15。而本文算法POMDP模型對(duì)業(yè)務(wù)進(jìn)行了區(qū)分:一方面,對(duì)于實(shí)時(shí)性業(yè)務(wù),趨于平穩(wěn)時(shí)的ACL比非實(shí)時(shí)性業(yè)務(wù)的POMDP模型高0.32 Byte,相比馬爾可夫預(yù)測(cè)算法的差值更大;另一方面,對(duì)于實(shí)時(shí)性業(yè)務(wù),本文算法POMDP模型的ACL比馬爾可夫預(yù)測(cè)模型的ACL減少了約0.17 Byte,而對(duì)于非實(shí)時(shí)性業(yè)務(wù),本文算法POMDP模型更多地考慮到壓縮比,趨于平穩(wěn)時(shí)的ACL比非實(shí)時(shí)性業(yè)務(wù)的馬爾可夫預(yù)測(cè)模型的ACL減少了約0.34 Byte,體現(xiàn)了本文算法模型的優(yōu)勢(shì)。
圖11 信道誤碼率為10-4時(shí)測(cè)試的ACLFig.11 ACL is tested when the channel error code is 10-4
信道誤碼率為10-5時(shí),測(cè)試的ACL如圖12所示,由仿真結(jié)果可得,傳統(tǒng)U-ROHC在傳輸?shù)?0 000包時(shí)平均壓縮長(zhǎng)度約為6.19 Byte,根據(jù)馬爾可夫預(yù)測(cè)[5]算法的結(jié)果來看,非實(shí)時(shí)性業(yè)務(wù)趨于平穩(wěn)時(shí)的ACL約為5.48 Byte,實(shí)時(shí)性業(yè)務(wù)趨于平穩(wěn)時(shí)的ACL約為5.60 Byte,差值為0.12。而本文算法POMDP模型對(duì)業(yè)務(wù)進(jìn)行了區(qū)分:一方面,對(duì)于實(shí)時(shí)性業(yè)務(wù),趨于平穩(wěn)時(shí)的ACL比非實(shí)時(shí)性業(yè)務(wù)的POMDP模型高0.22 Byte,相比馬爾可夫預(yù)測(cè)算法的差值更大;另一方面,對(duì)于實(shí)時(shí)性業(yè)務(wù),本文算法POMDP模型的ACL比馬爾可夫預(yù)測(cè)模型的ACL減少了約0.2 Byte,而對(duì)于非實(shí)時(shí)性業(yè)務(wù),本文算法POMDP模型更多考慮到壓縮比,趨于平穩(wěn)時(shí)的ACL比非實(shí)時(shí)性業(yè)務(wù)的馬爾可夫預(yù)測(cè)模型的ACL減少了約0.3 Byte。綜上所述可以得出,在信道誤碼率為10-5時(shí),本文算法POMDP模型擁有較大壓縮率提升,并可以較好地區(qū)分多業(yè)務(wù)。對(duì)比了不同算法在不同誤碼率下的ACL指標(biāo),得知在信道越惡劣的時(shí)候,本文算法的性能越優(yōu),同時(shí)也保證了實(shí)時(shí)性業(yè)務(wù)可以擁有良好的壓縮率,算法性能上達(dá)到預(yù)期。
ACL測(cè)試并不能全面地描述算法的性能,還需對(duì)本文算法進(jìn)行吞吐量測(cè)試,來驗(yàn)證區(qū)分多業(yè)務(wù)下的實(shí)時(shí)性的要求是否達(dá)到預(yù)期。采用發(fā)送固定字節(jié),每一個(gè)數(shù)據(jù)包都依賴重傳來保證發(fā)送成功,通過獲取仿真完成時(shí)間計(jì)算吞吐量。設(shè)置信道誤碼率為10-5,在發(fā)送端發(fā)送300條數(shù)據(jù)流,每條數(shù)據(jù)流分組成10 000個(gè)數(shù)據(jù)包,每個(gè)數(shù)據(jù)包的有效負(fù)載為40 Byte,計(jì)算發(fā)送時(shí)間,其中發(fā)送總量為
40 Byte×1 000×300=12 MByte
(18)
吞吐量為
(19)
圖12 信道誤碼率為10-5時(shí)測(cè)試的ACLFig.12 ACL is tested when the channel error code is 10-5
算法在不同誤碼率上進(jìn)行吞吐量的測(cè)試結(jié)果如圖13所示。一方面,在誤碼率較低時(shí),即信道質(zhì)量好的時(shí)候,發(fā)生連續(xù)分組丟失的概率小,較少發(fā)生雙端上下文失步,實(shí)時(shí)性業(yè)務(wù)的POMDP較非實(shí)時(shí)性業(yè)務(wù)的吞吐量增加較少,但比實(shí)時(shí)性馬爾可夫預(yù)測(cè)[5]算法略有提升;另一方面,由上述ACL測(cè)試可知,POMDP擁有比馬爾科夫預(yù)測(cè)模型更低的ACL,即更高的壓縮比。從模型上看,POMDP模型擁有比馬爾科夫預(yù)測(cè)模型更高的復(fù)雜度,理論上將影響時(shí)延和吞吐量,但從圖13可以看出,在實(shí)時(shí)性業(yè)務(wù)上,POMDP模型卻具有更低的傳輸時(shí)延和吞吐量,證明本文對(duì)實(shí)時(shí)性業(yè)務(wù)優(yōu)化的有效性。在誤碼率較高時(shí),即信道質(zhì)量較差時(shí),發(fā)生連續(xù)分組丟失的概率較大,雙端偶爾會(huì)發(fā)生上下文失步。由于實(shí)時(shí)性業(yè)務(wù)的POMDP模型向下狀態(tài)轉(zhuǎn)移的速度更快,恢復(fù)置信的速度也更快,解壓正確率也會(huì)更高,因此,POMDP模型在實(shí)時(shí)性業(yè)務(wù)上較非實(shí)時(shí)性業(yè)務(wù)的吞吐量增加較為明顯。但是POMDP模型在非實(shí)時(shí)業(yè)務(wù)上因?yàn)樗惴◤?fù)雜度和重傳次數(shù)增加的關(guān)系,在吞吐量上出現(xiàn)不如非實(shí)時(shí)性業(yè)務(wù)的馬爾可夫預(yù)測(cè)模型高的問題。
綜上所述,本文提出的在新ROHC模型下使用POMDP的跨層優(yōu)化框架,在無線信道條件越惡劣的情況下,該模型擁有比其他算法更高的性能。進(jìn)行業(yè)務(wù)區(qū)分后,對(duì)實(shí)時(shí)性業(yè)務(wù),以犧牲一定壓縮比來換取更快地恢復(fù)上下文置信,滿足業(yè)務(wù)的實(shí)時(shí)性要求,也在吞吐量方面更具優(yōu)勢(shì);對(duì)非實(shí)時(shí)性業(yè)務(wù),不需要更早地進(jìn)行向下狀態(tài)轉(zhuǎn)移,更多考慮到其壓縮比。仿真結(jié)果顯示,算法性能達(dá)到預(yù)期。
圖13 吞吐量圖示Fig.13 Throughput diagram
本文從提高網(wǎng)絡(luò)帶寬利用率和吞吐量的角度出發(fā),研究了ROHC的模型和算法優(yōu)化。針對(duì)U-ROHC在惡劣無線信道條件下的壓縮率和性能不理想的問題,提出了一種新型的ROHC建模,將底層的HARQ重傳次數(shù)和CQI信道質(zhì)量指數(shù)反饋回ROHC壓縮器,將信道狀態(tài)、傳輸狀態(tài)、壓縮狀態(tài)和解壓狀態(tài)模擬成一個(gè)POMDP過程,其目的是使U模型下的壓縮器在沒有解壓器反饋的條件下,基于解壓器的初始狀態(tài)、傳輸狀態(tài)和信道狀態(tài)估計(jì),可以不斷更新對(duì)ROHC系統(tǒng)狀態(tài)的信念,對(duì)下一個(gè)要傳輸?shù)膲嚎s包的狀態(tài)做出最優(yōu)決策,提升算法性能??紤]到不同業(yè)務(wù)對(duì)QoS的要求,算法對(duì)業(yè)務(wù)優(yōu)先級(jí)進(jìn)行區(qū)分,使實(shí)時(shí)性高的業(yè)務(wù)具有更快的恢復(fù)能力,非實(shí)時(shí)性業(yè)務(wù)具有更高的壓縮比。使用NS-3網(wǎng)絡(luò)開源模擬器對(duì)算法進(jìn)行了仿真分析,仿真結(jié)果符合預(yù)期。