区分多业务的跨层优化无线网络协议头压缩算法

2023-05-05 03:01张明鑫夏世超
关键词:马尔可夫实时性数据包

张明鑫,李 云,夏世超

(重庆邮电大学 通信与信息工程学院,重庆 400065)

0 引 言

目前,IP已成为使用最为广泛的网际互连协议[1],当IP承载段分组时,IP协议头的开销会很大,甚至高于有效负载的占比,这大大降低了通信系统的带宽利用率。同有线通信相比,无线通信的带宽有限,更需要减小通信协议的协议头开销,以增加无线带宽资源的利用率。协议头压缩是减小通信协议开销的主要技术手段。为此,3GPP从第4版开始引入鲁棒协议头压缩(robust header compression, ROHC)方法,以减少无线基站和移动客户端之间的协议封装开销,增加带宽利用率。ROHC是一种适合于无线分组交换链路的协议头压缩算法,通常在发送方/接收方的数据链路层和网络层之间加入压缩器/解压缩器模块。ROHCv2[2]扩展了ROHC的功能,可以支持各种协议的压缩如IP、IP/TCP、IP/UDP等,并拥有良好的压缩比。目前,ROHC用来提高4G、5G、卫星、ad-hoc和广域网(wide area network, WAN)等网络的协议封装效率。ROHC中有3种工作模式,其中R、O模式是需要在压缩端和解压端建立一个单独的ROHC反馈信道来维持两端的状态同步;U模式则没有这部分的反馈开销,压缩端采用乐观逼近原则和周期性原则来控制状态转换,实现双端状态同步。本文主要针对U模式下的ROHC进行改进。

1 相关研究分析

目前,有关ROHC的相关研究主要集中在参数优化和模型优化上。文献[3]提出一种基于动态贝叶斯网络的健壮协议头压缩算法(dynamic Bayesiannetwork robust header compression, DB-ROHC),通过引入时间变量,在解压端获取离散时间丢包率等级并反馈给压缩端,根据动态贝叶斯算法动态调节ROHC的关键参数滑动窗口(sliding window control,SWC),实现压缩率与健壮性的平衡;文献[4]提出一种基于时间参数的优化传输块的方法,从编码等方向入手增加系统的传输效率,但是整个系统的复杂度很高,具体应用难度大;文献[5]提出一种自适应报头压缩算法ROHC-M,该算法将信道质量指数(channel quality index, CQI)和混合自动重传(hybrid automatic repeat request, HARQ)按照0.5的权重求和作为信道状态,以估计传输成功率,并将压缩端、解压端的状态和信道状态变化建模成马尔可夫预测模型,然后根据历史观测获得的转移概率来预测压缩端状态和解压端状态,实现双端同步;文献[6]采用机器学习方法预测ROHC中的压缩效用,通过对压缩机选型配置的分析,选择最大化效用的压缩机,该算法在动态信道条件下具有较好的性能;文献[7]根据无线信道状态的变化动态调整ROHC算法的参数,但它需要引入ROHC反馈,增加了时延,且当信道状态恶劣时增益不明显;文献[8]在ROHC参数优化过程中加入了慢启动策略,提出了一种跨层优化的框架,该框架根据底层信息的反馈,将信道状态、传输状态、压缩状态和解压状态模拟成一个部分可观测的马尔可夫预测过程(partially observable Markov processes,POMDP),并使用SARSOP[9]算法对POMDP模型进行近似求解,得到了很好的效果;文献[10]在一个ad-hoc网络中使用RoHCv1,通过上下文标识符(connection identifier,CID)转发实现端到端的压缩,该方案在单向U模式ROHC上进行实现并采用RTP/UDP/IPv4协议传输,仿真结果表示,总体丢包率比传统U-ROHC降低了约5%;文献[11]在多跳场景下,提出一种类似于U模式的ROHC算法,牺牲一些压缩效率,获取更高的鲁棒性;文献[12]针对双向可靠模型的ROHC提出了一种跨层POMDP模型,该模型基于轮询(按需)的解压器反馈机制,仅当压缩器在获取底层反馈信息不足以确定下一个数据包的压缩状态时,解压器才发送反馈,该研究很好地平衡了ROHC反馈开销和传输效率之间的关系;文献[13]使用跨层优化建立了组播网络模型,以传输块(transport block,TB)作为传输单元,并使用POMDP优化该跨层网络模型,以求最大化多媒体广播多播服务(multimedia broadcast/multicast service,MBMS)中所有用户成功接收的有效负载比特的总数,文献为了解决多用户下的POMDP的高复杂度问题,进一步开发了一种高效可计算的瞬时边际置信(instantaneous marginal confidence,IMB)策略算法,POMDP可以近似求解出多用户吞吐量的最优解,解决了ROHC广播优化问题;文献[14]在POMDP模型上进一步完善,提出一种利用鲁棒头压缩为每个移动用户优化MBMS分配方案,该方案具体做法是为每个用户分配一个具有最优的ROHC参数来优化MBMS,进一步开发了一种基于用户分配和ROHC参数优化的动态规划算法,使ROHC可以高效地支持MBMS。

以上方法通过优化ROHC压缩参数和底层信息反馈,提高了ROHC的效率,但仍存在如下不足:①在对ROHC建模时,较少考虑压缩端降级到初始化 (initialization and refresh state, IR)状态,这不适合具有突发误码的无线通信场景,无线通信的突发误码会导致上下文静态字段失去同步,使得ROHC模型无法正常工作;②没有考虑到不同业务对服务质量(quality of service,QoS)的不同要求。随着新一代移动通信网络,如长期演进(long term evolution,LTE)、5G移动通信的广泛应用,无线通信网络需要支持越来越广泛的业务类型。为此,4G/5G移动通信通过质量检验 (QoS class identifier,QCI)属性值来区别不同业务类型,3GPP发布的第8版本的标准一共有9种不同优先级的业务,到第14版本就增加到15种不同优先级的业务。通常,不同业务对实时性、鲁棒性和压缩比应有不同的要求,其中,鲁棒性和压缩比是协议头压缩关注的2个重要指标,需要针对不同业务的QoS需求来动态调整ROHC的两端状态,平衡不同业务的实时性、鲁棒性和压缩比。

针对上述2个问题,本文提出了一种新的ROHC模型,并提出了一种新的U模式下区分多业务的跨层ROHC优化算法,不仅引入了底层信息反馈来实现自适应协议头压缩,也对不同业务进行区分,使高优先级业务(实时性高)具有更快的恢复能力,低优先级业务具有更高的压缩比,该算法可以使ROHC在无线网络突发误码时也能正常工作。

2 ROHC建模

ROHC协议栈如图1所示,ROHC处于网络层和媒体介质访问控制(medium access control, MAC)之间,有3种模式可以选择,分别为单向U模式、双向乐观O模式、双向可靠R模式。其中,R、 O模式需要引入反馈机制,需要单独的反馈信道;单向U模式不采用反馈信道,此时解压方不能向压缩方发送反馈信息,为保证压缩健壮性和压缩率,压缩方采用乐观逼近原则和周期性原则进行状态转移。

图1 ROHC协议栈Fig.1 ROHC protocol stack

ROHC模块初始化时,解压端状态总是从无上下文(no context state,NC)状态启动,压缩端总是从IR状态启动。压缩器的状态转换图如图2所示,压缩端的状态表示为SC={0,1,2},分别代表IR,SO,FO数据包。U-ROHC的建模原理如下:在压缩端,协议头字段可以大致分类为静态的和动态两类。静态字段在整个包会话期间不改变,而动态字段以特定模式改变。压缩器总是在初始化和IR状态下启动,通过传输IR包(其报头未压缩)来建立上下文同步。一阶(first order state, FO)包通常被部分压缩,其中包含动态域的差分信息,但很少包含静态域的差分信息,以便有效地传输数据包中的不规则信息;二阶(second order state, SO)包的报头被完全压缩。传统U模式根据计时器和计数器来控制压缩状态的转换,压缩器状态通过在每个较低状态(IR和FO)发送多个分组,向上转换到较高阶状态(FO和SO)。在不接收解压缩器反馈的情况下,为了使双端上下文同步拥有足够的置信度,压缩端状态还需要根据超时和更新向下转换,以防止压缩器和解压缩器的上下文因数据包丢失而失去同步。但是不存在从SO状态直接转换至IR状态的过程。

图2 压缩器的状态转换图Fig.2 State transition diagram of the compressor

相应地,解压器也有3种状态。刚开始时解压缩程序需要初始化,处在NC状态,该状态只能解压IR数据包。一旦成功地接收到至少一个IR分组,默认成功建立静态和动态字段的上下文,解压缩器向上转换到全上下文(full context state, FC)状态,其中,所有3种类型的(IR、FO、SO)分组都可以被成功解压。在连续k1个数据包解压失败时,解压缩器转换为静态上下文(static context state, SC)状态,该状态只能解压IR、FO的数据包,其中一个FO或IR分组解压成功,就足以重新建立上下文同步以将解压缩器状态再次向上移动到FC状态;在连续k2个数据包解压失败时,默认解压端静态字段失去同步,则向下转化为NC状态。

总之,ROHC模型在分组会话期间的工作流程依赖于传输状态、压缩器的报头类型和解压缩器状态。ROHC协议有最低有效位(least significant bit, LSB)和基于窗口的最低有效位(window-based least significant bits, WLSB)这2种编码,其中WLSB是在LSB算法基础上维持一个可滑动的窗口,通过维护压缩窗口内的参考值,保证了在一定误码率的链路上,也能有较好的效率。窗口大小W是评价压缩算法压缩率和健壮性的关键参数。当滑动窗口较小时,压缩效率相对较高,但是对于丢包率高的无线链路,当出现连续分组丢失时,会出现正常分组无法正确解压的情况;当滑动窗口增大时,可变最低有效位算法计算的数值位数变大,可以增强解压过程的健壮性,但是增大报文的编码长度,导致压缩效率降低。

解压器的状态转换图如图3所示,ROHC解压端模拟成k1+k2+3种状态,表示为SD={0,1,…,k1,k1+1…,k1+k2+1,k1+k2+2},其中,[0,k1]代表FC0-FCk1状态;[k1+1,k1+k2+1]代表SC0-SCk2状态;k1+k2+2代表NC状态;sT=1和sT=0分别代表分组的传输成功和失败。

图3 解压器的状态转换图Fig.3 State transition diagram of the decompressor

在现有的研究中,对ROHC信道都使用Gilbert-Elliot模型[15]。然而在实践中,信道质量不可能如此明确地分为2种状态,好的状态总是传输成功,不好的状态总是传输失败。所以本文考虑有限状态的马尔可夫信道(finite state Markov channel, FSMC)[16-17],FSMC状态转换如图4所示。

图4 马尔可夫信道状态转换图Fig.4 Markov channel state transition diagram

信道被建模为有K种状态的马尔可夫信道,信道状态可以等效为SH=m,m∈{1,…,K},其中,t表时间变量。则状态k转化为状态m的转移概率为

Pkm≜Pr(SHt=m|SHt-1=k)

(1)

因此,信道转移概率矩阵P可以表示为一个K×K矩阵

(2)

对于信道状态转移概率可以使用统计方法、信噪比、CSI信道状态信息估计[18]。对于压缩端而言,信道状态并不是完全知道的,但可以通过观测值来模拟。在满足马尔可夫性质的条件下,将信道状态间隔离散化,得到有限状态马尔可夫信道模型[19]。

3 ROHC跨层优化

3.1 POMDP建模

前面提出一种新的U-ROHC建模方法,本节在该建模方法上构建一种跨层优化框架,它根据QCI标识划分业务等级和较低层的部分信息反馈来自适应决策ROHC的压缩端状态,从而在不需要引入ROHC反馈信道就能实现较高的效率和可靠性,也能考虑不同业务的鲁棒性、压缩比之间的平衡。

4G/5G协议栈如图5所示,在4G/5G协议栈中,ROHC模块大多是集成在PDCP层,在UE端和eNB端分别维护一对ROHC压缩器和ROHC解压器,用来完成UE端和eNB端的ROHC数据包的压缩和解压。

图5 4G/5G协议栈Fig.5 4G/5G protocol stack

为解决U模式下的ROHC在无线信道恶劣的场景下性能不佳的问题,本文引入MAC层的HARQ反馈和物理层(physical layer,PHY)的CQI报告来自适应调整压缩状态。HARQ是一种提高数据传输可靠性和效率的技术,主要思想是重新传输信道条件较差的消息,从而降低中断概率[20-21]。而CQI独立于单次传输,为了限制反馈开销的大小,每个CQI报告在一段时间内都是有效的[22],基于此,HARQ可以评估数据包的传输成功率,CQI可以评估当前的信道状态。

ROHC跨层优化的基本思想是ROHC考虑不同业务对QoS要求不同,对实时性要求高的业务考虑到尽快使其压缩成功,减少时延,增加鲁棒性。对实时性要求不高的业务更多考虑其压缩比,以提高带宽资源的利用率。

健壮性协议头压缩跨层优化的功能框图如图6所示,先根据数据包ROHC压缩模块中定义的压缩协议类型和CID信息做匹配,然后根据底层的反馈函数获得HARQ和CQI参数,再通过引入的POMDP跨层优化模型[8]进行解压端状态预测,自适应选择压缩端状态,最后根据SRT分类再次调整ROHC压缩端状态。

图6 健壮性协议头压缩跨层优化功能框图Fig.6 ROHC cross-layer optimization function block diagram

ROHC的成功解压,需要压缩端压缩的协议头部可以被解压端识别,并可以正确恢复,这需要双端建立完整的上下文并且状态同步。在U型ROHC模型中,压缩器不知道解压器的明确状态信息无法确知双端状态是否同步,采用POMDP的目的就是想让压缩器在没有解压器的反馈条件下,凭借可以得到的低层信息来评估解压器的状态。其基本原理是,基于解压器的初始状态、传输状态和信道状态估计可以不断更新对ROHC系统状态的信念,并且可以就下一个要传输的包报头的类型作出最优决策。该问题可以归结为一个部分可观测的马尔可夫决策过程,具体模型如图7所示。

图7 POMDP模型Fig.7 Mode of POMDP

POMDP就是智能体在环境不确定的情况下采取一系列行动使回报最大化。POMDP可以用一个七元组来表示:(S,A,T,R,Ω,O,γ),其中,S为系统状态集合;A是智能体动作的集合;T是状态之间的条件转移概率;R是奖励函数;Ω是观测值;O是条件观测概率;γ∈[0,1]是折扣因子。图7中的策略为信念状态空间到动作的映射,用函数P(a|b) 表示,与图3有关。

在任意时间段内,环境都处于某种状态s∈S。 本文将解压器状态和信道状态的笛卡尔积作为系统状态,表示为

s=(sD,sH)∈S=SD×SH

(3)

智能体采取的行动为压缩端状态,其中,A为a∈A=SC={0,1,2},这导致环境转换到状态s′的概率为给定动作a时从s到s′的状态转移矩阵。

T(s,a,s′)=p(s′H|sH)p(s′D|sD,a,s′H)

(4)

(4)式中:p(s′H|sH)表示下一时刻信道从当前sH态转移到s′H态的概率,由信道状态转移矩阵决定;p(s′D|sD,a,s′H)定义为在下一时刻信道为s′H态时,给定动作a,解压端状态的转移概率,表示为

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)

同时,智能体观测为传输成功率和信道状态的集合o=(oT,oH)∈Ω=ΩT×ΩH,其中传输成功率oT∈ΩT={0,1},和ST一样都代表着传输状态,ΩH=SH={0,…,K-1}代表着信道状态。观测值会影响环境的状态转移以及智能体采取的动作a。系统的观测函数定义为在执行动作a之后,在下一时刻状态s′时观测到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)是一致的,由信道状态转移矩阵决定,表示下一时刻信道状态为s′H观测到信道状态为oH的概率;p(oT|a,s′D,s′H)可以由HARQ反馈的虚警和误检概率定义,该参数跟信道误码率有关。

智能体收到的奖励函数为

(7)

(7)式中:LP代表未压缩前的数据包总长度;Li,i=1,2,3分别代表sc处于IR、FO、SO状态时ROHC数据包的负载;LP/Li代表当前数据包的压缩比;l(s′D=0)为二分判断函数,当s′D=0时,该函数值为1,否则为0。

由于智能体必须在环境不确定的情况下作出决策,智能体可以更新当前环境的概率分布来更新其对真实环境的信念。当前POMDP模型已知时,智能体可以在与环境交互时更新信念b′(s′),代表在当前置信为b的情况下智能体做了动作a,得到观测o的条件下,下个状态为s′的概率为

b′(s′)=P(s′|o,a,b)=

(8)

(8)式中:P(o|a,b) 代表当前置信为b,智能体执行动作a,观测到o的概率,具体表示为

(9)

通过信念状态空间的引入,POMDP问题就可以转化为连续信念状态空间的MDP问题。POMDP的优化目标就是找到一系列动作{a0,…,at}来求得最大化期望回报,表示为

(10)

而求取最大化期望回报的函数可以用最优价值函数表示为

(11)

(11)式中,ρ(b,a)为期望奖励。

3.2 POMDP近似求解

目前各种在线POMDP求解优化算法[23-24]拥有较快的求解速度,而本文建模的ROHC模型状态空间较小,其算法在求解速度上优势不大。由于网络传输中,在线算法对端到端时延的影响难以估计,因此,本文采用非常经典的离线规划算法—基于点的值迭代 (point-based value iteration,PBVI)[25]算法来近似精确值迭代求解POMDP,该算法的核心思想为在一组有限的信念点集合上进行求解,减少了算法复杂度。PBVI为每个信念点初始化一个α-vector,经过(11)式不断迭代n次之后就可以表示为α-vector:Vn={α0,α1,…,αm},其中,每一个α都与一个动作对应。每一个α-vector都定义了某个区间里的值函数,值函数描述成分段线性凸函数之后,可以表示为

(12)

在POMDP值迭代中,第n个值函数可以通过回溯算子H从第n-1个的值函数构造出V=HV′,表示为

(13)

为了实现以上步骤,对每个动作观测集合都生成中间体,表示为

Γa,*←αa,*(s)=R(s,a)

(14)

由于只考虑有限个信念点,仅需要在一组有限的点上进行运算,复杂度大大简化,公式为

(15)

最后,得到每一个信念点上的最优动作为

(16)

3.3 多业务动态平衡

考虑到在ROHC模块中引入业务分级,本文在ROHC模块对服务流的 QCI进行划分,一个QCI值是一种业务,用于指定访问节点内定义的控制承载级分组转发方式(如调度权重、接纳门限、队列管理门限、链路层协议配置等)[26]。虽然QCI有多种业务,但是所有业务可以大致分为保证比特速率(guaranteed bit rate, GBE)和不保证比特速率(not guaranteed bit rate, Non-GBR)这2种承载方式。GBR是指承载要求的比特速率被网络“永久”恒定地分配,即使在网络资源紧张的情况下,相应的比特速率也能够保持,多用于对实时性比较高的业务;Non-GBR指的是在网络拥挤的情况下,业务(或者承载)需要降低比特速率,多用于对实时性要求不高的业务。本文根据这2种承载方式将所有的QCI分成2类,即SRT={0,1},0代表GBR资源类型;1代表Non-GBR资源类型。以下进一步提出一种区分多业务的动态调节压缩端状态的机制。

图3中,解压端建模成k1+k2+3种状态,解压缩器处于FC状态时,连续k1个包解压失败,向下转换为SC状态,再有连续k2个数据包解压失败,则默认解压端静态字段失去同步,向下转化为NC状态。其中,k1和k2的取值决定双端上下文恢复同步的速度和ROHC模块的压缩比,k1和k2越小,代表系统在无线链路质量越差的时候,越早地进行状态转移,确保双端不会失去同步,以提高解压成功率;k1和k2越大,ROHC模块向下状态转移的次数就会减少,则系统会拥有更高的带宽利用率。

连续解压失败时,非实时性业务压缩状态转换图如图8所示。当SRT=1时,采用的参数为k1和k2,经过POMDP预测之后,如判断sD∈{FC0,…,FCk1}或sD∈{SC0,…,SCk2},则不调整压缩端状态,使该业务在保证一定健壮性的同时,压缩比更大。

图8 连续解压失败时非实时性业务压缩状态转换图Fig.8 Non-real-time service compression state transition diagram when continuous decompression fails

连续解压失败时,实时性业务压缩状态转换图如图9所示,对SRT=0的实时性要求比较高的业务,则更多考虑到数据包的实时性而不是压缩比,更早地进行向下状态转移。将k1和k2参数模拟为k1>>1和k2>>1。即判断sD∈{FC0,…,FCk1/2}或sD∈{SC0,…,SCk2/2},则不调整压缩端状态,如sD∈{FCk1/2+1,…,FCk1}或sD∈{SCk2/2+1,…,SCk2},则将sC从SO、FO状态向下调整为FO、IR状态,使其双端更快地恢复同步,保证了业务的实时性。

图9 连续解压失败时实时性业务压缩状态转换图Fig.9 Real-time service compression state transition diagram when continuous decompression fails

4 仿真分析

4.1 仿真环境和仿真参数

为了验证算法的有效性,本文与不区分业务的传统U-ROHC和文献[5]提出的马尔可夫预测模型进行对比,验证算法的有效性。本文PC端(Intel Core i5-7500 CPU、16 GByte DDR3)使用 VMare Workstation 15的Ubuntu20系统,并将ROHC模块集成到NS-3.35开源网络模拟器。

集成过程如下。在PC上安装ROHC库[27],编译生成动态链接库,将ROHC代码进行封装。在开源的网络模拟器(network simulator, NS-3)中使用create-moudule.py脚本添加ROHC模块,将封装好ROHC库的.h和.c文件添加到新模块中,再在NS-3的编译配置文件wscript中添加编译好的ROHC动态链接库,重新编译NS-3即可完成集成。添加新模块和添加动态链接库的具体做法参照NS-3官方文档。集成完成后,在NS-3的LTE模块修改代码,添加ROHC功能,最后在NS-3上对本文提出的算法进行仿真分析。

仿真参数的配置如下。首先,将信道状态划分为常见的三状马尔可夫模型,而压缩端信道质量可以由CQI反馈来描述[8]。在标准里,CQI与信道的信噪比相对应,代表着信道质量的好坏,取值为0~31,其中,0代表信道质量最差,31代表信道质量最好。本节按照CQI的指数将信道划分为3种状态SH∈{0,1,2},其中,0和1代表信道较好的状态,2代表信道差的状态,然后通过历史数据来确定信道状态和CQI指数的映射关系。具体地,首先将传统的U-ROHC在参数配置好的NS-3上运行,将ROHC日志输出到指定的trace文件;再利用脚本统计POMDP实例中所需要的概率,包括信道状态的划分、转移函数、观测函数等;最后用获取的概率在ROHC上求解POMDP一次,完成离线规划,具体的参数设置如表1所示。表1中WLSB参数的选取是为了保证ROHC拥有一定的鲁棒性;k1和k2的选取是为了保证业务的实时性要求,并减少POMDP的状态空间,降低算法复杂度;其余ROHC参数的选取采用ROHC库[27]的默认值;对于POMDP模型参数,折扣因子γ∈[0,1],γ越趋近于0,说明决策者越重视瞬时收益,γ越趋近于1,说明决策者越重视长期收益,根据(7)式可得,本文的POMDP模型更加重视瞬时收益,因此,本文将γ设置为0.1。

表1 仿真参数设置

4.2 仿真结果分析

仿真使用平均标头压缩长度(average compression header length, ACL)进行效率的评估,平均协议头长度越小代表压缩比越高,表示为

(17)

(17)式中:T代表分组字节总数;P代表有效负载的字节数;C代表发送数据包的总数。

仿真在信道误码率分别为10-3、10-4、10-5时,发送10 000个数据包,每一个数据包的长度为40 Byte,并且第1个采样点在发送100个数据包的点上,后面对每发送1 000个包的点进行采样分析,仿真结果如下。

信道误码率为10-3时,测试的ACL如图10所示,此时误码率较高,传统U-ROHC在传输第10 000包时的平均压缩长度为10.85 Byte。马尔可夫预测[5]算法,在实时性业务趋于平稳时的ACL为9.82 Byte,非实时性业务趋于平稳时的ACL为9.47 Byte,差值为0.35 Byte。本文算法POMDP模型对业务进行了区分:一方面,对于实时性业务,考虑更快地向下状态转换以获取更快恢复双端上下文置信的速度,确保业务实时性的要求,但牺牲了部分压缩率,导致趋于平稳时的ACL比非实时性业务的POMDP模型高0.62 Byte,相比马尔可夫预测算法的差值更大;另一方面,对于实时性业务,本文算法POMDP模型的ACL比马尔可夫预测模型的ACL减少了约0.1 Byte,而对于非实时性业务,本文算法POMDP模型更多考虑到压缩比,趋于平稳时的ACL比非实时性业务的马尔可夫预测模型的ACL减少了约0.40 Byte,体现了本文算法模型的优势。

信道误码率为10-4时,测试的ACL如图11所示,由仿真结果可得,传统U-ROHC在传输第10 000包时平均压缩长度趋于平稳,约为7.10 Byte。根据马尔可夫预测[5]算法的结果看,实时性业务趋于平稳时的ACL约为6.25 Byte,非实时性业务趋于平稳时的ACL约为6.10 Byte,差值为0.15。而本文算法POMDP模型对业务进行了区分:一方面,对于实时性业务,趋于平稳时的ACL比非实时性业务的POMDP模型高0.32 Byte,相比马尔可夫预测算法的差值更大;另一方面,对于实时性业务,本文算法POMDP模型的ACL比马尔可夫预测模型的ACL减少了约0.17 Byte,而对于非实时性业务,本文算法POMDP模型更多地考虑到压缩比,趋于平稳时的ACL比非实时性业务的马尔可夫预测模型的ACL减少了约0.34 Byte,体现了本文算法模型的优势。

图11 信道误码率为10-4时测试的ACLFig.11 ACL is tested when the channel error code is 10-4

信道误码率为10-5时,测试的ACL如图12所示,由仿真结果可得,传统U-ROHC在传输第10 000包时平均压缩长度约为6.19 Byte,根据马尔可夫预测[5]算法的结果来看,非实时性业务趋于平稳时的ACL约为5.48 Byte,实时性业务趋于平稳时的ACL约为5.60 Byte,差值为0.12。而本文算法POMDP模型对业务进行了区分:一方面,对于实时性业务,趋于平稳时的ACL比非实时性业务的POMDP模型高0.22 Byte,相比马尔可夫预测算法的差值更大;另一方面,对于实时性业务,本文算法POMDP模型的ACL比马尔可夫预测模型的ACL减少了约0.2 Byte,而对于非实时性业务,本文算法POMDP模型更多考虑到压缩比,趋于平稳时的ACL比非实时性业务的马尔可夫预测模型的ACL减少了约0.3 Byte。综上所述可以得出,在信道误码率为10-5时,本文算法POMDP模型拥有较大压缩率提升,并可以较好地区分多业务。对比了不同算法在不同误码率下的ACL指标,得知在信道越恶劣的时候,本文算法的性能越优,同时也保证了实时性业务可以拥有良好的压缩率,算法性能上达到预期。

ACL测试并不能全面地描述算法的性能,还需对本文算法进行吞吐量测试,来验证区分多业务下的实时性的要求是否达到预期。采用发送固定字节,每一个数据包都依赖重传来保证发送成功,通过获取仿真完成时间计算吞吐量。设置信道误码率为10-5,在发送端发送300条数据流,每条数据流分组成10 000个数据包,每个数据包的有效负载为40 Byte,计算发送时间,其中发送总量为

40 Byte×1 000×300=12 MByte

(18)

吞吐量为

(19)

图12 信道误码率为10-5时测试的ACLFig.12 ACL is tested when the channel error code is 10-5

算法在不同误码率上进行吞吐量的测试结果如图13所示。一方面,在误码率较低时,即信道质量好的时候,发生连续分组丢失的概率小,较少发生双端上下文失步,实时性业务的POMDP较非实时性业务的吞吐量增加较少,但比实时性马尔可夫预测[5]算法略有提升;另一方面,由上述ACL测试可知,POMDP拥有比马尔科夫预测模型更低的ACL,即更高的压缩比。从模型上看,POMDP模型拥有比马尔科夫预测模型更高的复杂度,理论上将影响时延和吞吐量,但从图13可以看出,在实时性业务上,POMDP模型却具有更低的传输时延和吞吐量,证明本文对实时性业务优化的有效性。在误码率较高时,即信道质量较差时,发生连续分组丢失的概率较大,双端偶尔会发生上下文失步。由于实时性业务的POMDP模型向下状态转移的速度更快,恢复置信的速度也更快,解压正确率也会更高,因此,POMDP模型在实时性业务上较非实时性业务的吞吐量增加较为明显。但是POMDP模型在非实时业务上因为算法复杂度和重传次数增加的关系,在吞吐量上出现不如非实时性业务的马尔可夫预测模型高的问题。

综上所述,本文提出的在新ROHC模型下使用POMDP的跨层优化框架,在无线信道条件越恶劣的情况下,该模型拥有比其他算法更高的性能。进行业务区分后,对实时性业务,以牺牲一定压缩比来换取更快地恢复上下文置信,满足业务的实时性要求,也在吞吐量方面更具优势;对非实时性业务,不需要更早地进行向下状态转移,更多考虑到其压缩比。仿真结果显示,算法性能达到预期。

图13 吞吐量图示Fig.13 Throughput diagram

5 结束语

本文从提高网络带宽利用率和吞吐量的角度出发,研究了ROHC的模型和算法优化。针对U-ROHC在恶劣无线信道条件下的压缩率和性能不理想的问题,提出了一种新型的ROHC建模,将底层的HARQ重传次数和CQI信道质量指数反馈回ROHC压缩器,将信道状态、传输状态、压缩状态和解压状态模拟成一个POMDP过程,其目的是使U模型下的压缩器在没有解压器反馈的条件下,基于解压器的初始状态、传输状态和信道状态估计,可以不断更新对ROHC系统状态的信念,对下一个要传输的压缩包的状态做出最优决策,提升算法性能。考虑到不同业务对QoS的要求,算法对业务优先级进行区分,使实时性高的业务具有更快的恢复能力,非实时性业务具有更高的压缩比。使用NS-3网络开源模拟器对算法进行了仿真分析,仿真结果符合预期。

猜你喜欢
马尔可夫实时性数据包
基于规则实时性的端云动态分配方法研究
SmartSniff
基于虚拟局域网的智能变电站通信网络实时性仿真
航空电子AFDX与AVB传输实时性抗干扰对比
保费随机且带有红利支付的复合马尔可夫二项模型
基于SOP的核电厂操纵员监视过程马尔可夫模型
应用马尔可夫链对品牌手机市场占有率进行预测
认知无线网络中基于隐马尔可夫预测的P-CSMA协议
一种车载Profibus总线系统的实时性分析
视觉注意的数据包优先级排序策略研究