一种5G系统鲁棒性报头压缩优化算法
2022-05-10刘光敬程立杰
刘光敬,程立杰,施 涛
(重庆市信息通信咨询设计院有限公司,重庆 400041)
0 引言
随着移动通信技术的发展,5G时代已经到来,5G系统具有比以往无线系统更高的数据速率和带宽,以应对5G中三大主要的应用场景[1]。IP是一种常用的数据传输方式,未来所有的蜂窝链路都朝着全IP网络发展[2],而IPv4,IPv6等报头过长,IP协议的报头开销过大,为了在无线链路中更有效地利用有限带宽,需要对无线分组进行压缩处理。现有的报头压缩机制有CRTP,IPHC,VJHC和鲁棒性报头压缩(Robust Header Compression,ROHC)等,前3类压缩机制的丢包容易影响压缩效率,若链路误码率较高,传输效率就不够理想[3]。因此IETF提出了ROHC机制,它对无线链路具有很强的容错能力。PDCP层位于5G系统协议栈中,在控制平面和用户平面都有相应的协议处理功能,是5G协议栈中至关重要的一环[4-5]。PDCP执行基于ROHC技术的IP报头压缩。ROHC有3种模式,仿真结果表明,ROHC双向乐观(O)模式的压缩效率和对丢包的鲁棒性最好[6]。文献[6]通过考察影响ROHC O模式性能的乐观参数,证实了乐观参数在压缩效率和对丢包的鲁棒性之间起到了均衡作用。本文对ROHC中的O模式进行了改进,提出了一种动态调整乐观参数的方法,该方法会同时影响压缩效率和鲁棒性,提高ROHC O模式的性能。经过仿真测试证明,本文提出的方法具有较高的压缩效率,且降低了无线链路各种丢包率下的解压失败率,提高了ROHC O模式对丢包的鲁棒性,进一步提高了ROHC在5G通信系统环境下的性能,具有较低的算法复杂度,适用于任何丢包率或误码率较高的无线链路。
1 ROHC协议
1.1 ROHC基本压缩原理
无线通信中,数据流经过RTP/UDP/IP协议栈处理后,增加了多个不同含义的域,主要可划分为静态域、动态域及推测域。在数据传输过程中,静态域携带的信息变化小或者保持不变,动态域信息按照一定规则变化,推测域的字段可由其他字段进行计算得到[7]。对数据进行分组传输时,每一个分组会携带部分不变化或者按照一定规律变化的冗余信息化域,特别地,当分组流所携带的数据信息较小时,将增加报头开销,降低了信道利用率。因此,ROHC协议利用IP报头的冗余特性,仅在必要时刻传输全部信息,后续发送分组流时只传送报头中发生变化的有效信息域,以减少传输的报头长度,从而提高无线信道带宽资源利用率[8]。
当发送第一个分组流时,压缩方按照相应的字段信息将完整的信息存储在上下文中,并对不同的数据流配置上下文标识符(Context Identification,CID),以唯一标识此数据流,最后发送包含全部必要信息的分组流,实现压缩初始化流程[9-10]。解压缩方收到第一个分组流后,建立上下文,实现解压缩的初始化流程。在后续分组发送的过程中,压缩方以上下文作为参考,只发送报头中产生变化的部分信息,解压缩方根据接收到的数据包标识(Packet Identification,PID)和CID等字段,以上下文为参考,恢复出原始数据。
1.2 ROHC状态
压缩方有3种压缩状态。初始时,压缩方工作在初始化和重置(Initialization and Refresh,IR)状态,根据不同模式下的相应规则,进行状态间的相互跃迁,如图1所示。
图1 压缩方状态Fig.1 State diagram of compression side
IR状态下,压缩方持续发送完整的报头信息包,其中包含所有未压缩格式的动态字段和静态字段,以及一些附加信息[11],以便初始化或者更新上下文信息,保证解压缩方在后续的解压过程中能够正确解压数据包,或者在解压失败时,能够进行上下文修复。当压缩方发送一定数量的IR包,或者收到来自解压缩方的ACK反馈信息时,按照不同的工作模式,向更高级的状态转移[12]。
相比于IR状态传输报头的完整信息,在一级压缩(First Order,FO)[13]状态,传递到解压缩器的信息通常是部分压缩的,压缩方将静态信息域进行压缩,传递IP报头中的动态信息域部分。FO状态作为IR和二级压缩(Second Order,SO)状态的过渡状态,能够有效地传输动态域信息,避免了静态域信息的重复发送。
在SO状态时,解压缩方已获得足够的静态信息并掌握动态信息变化规律,IP报头中的静态字段和动态字段都被压缩,压缩方只需要发送动态域中发生变化的部分[14-15],解压缩方就能够根据上下文完成解压工作。在此状态下,压缩方发送的压缩包最小,压缩效率达到最大。
解压缩方共有3种解压状态,与压缩端相同,3种解压状态之间可以进行相互跃迁,如图2所示。
图2 解压缩方状态Fig.2 State diagram of decompression side
在无上下文(No Context,NC)状态时,解压缩方没有报头信息,接收IR数据包,当IR数据包成功解压时,解压缩方建立上下文,并向更高级状态跃迁。静态上下文(Static Context,SC)状态时,解压缩方根据包含完整动态信头分组流,以上下文作为参考,进行解压操作。全上下文(Full Context,FC)状态是最高级的压缩状态,此时完整的上下文已经被建立,可以接收SO包并恢复原始信息。
1.3 ROHC工作模式
ROHC协议定义了3种压缩模式,分别适用于不同的信道状态[16]。
单向模式(Unidirectional Mode,U-Mode)中,分组流只能从压缩方单向发送。由于压缩方和解压缩方之间没有反馈信道,压缩方无法了解解压缩方的具体情况,3种状态的转移采用可以保证压缩传输的鲁棒性和压缩率的乐观逼近原则[17-18]。
双向可靠模式(Reliable Mode,R-Mode)通过保证鲁棒性来降低丢包率和错误率,只有收到解压缩方的反馈时,才进行状态转移。压缩状态转移严格遵循正/负反馈原则,当收到正反馈时,压缩端向高级状态进行跃迁;当收到负反馈时,向低级状态进行跃迁。
双向乐观模式(Optimistic Mode,O-Mode)与R模式的状态转移条件相同,根据不同反馈信息,决定状态转移方向。O模式采用乐观逼近原则,压缩方发送N个数据包,如果没有收到负反馈信息,则压缩方认为解压缩方已建立了正确的上下文,压缩状态将向更高级解压状态跃迁,当接收到解压缩方的负反馈时,表示解压错误,需要发送信息量更多的压缩包更新上下文,此时压缩方向低级状态跃迁。相比于U模式的无反馈,O模式可以接收反馈信息,极大地提高了传输的可靠性,且相比于R模式,O模式只在收到解压缩方反馈时才进行状态转移,有着更高的传输速率。
2 一种乐观参数的自适应调整方法
ROHC工作在O模式时,压缩方发送连续N个更新包后,假设解压缩方至少收到其中一个更新包,并且获得转换到更高压缩状态的置信度。无线信道并非一直都是稳定的,有时会经历传播损耗或衰落,所以可能会出现一段时间的连续丢包。包丢失可能包括无线链路上的丢失和由误码引起的丢失。在这种情况下,如果压缩方为保证接收端上下文更新而发送的更新包个数N过小,可能会增加由丢包导致的报头解压缩失败。另一方面,如果更新包个数N过大,就会导致压缩效率降低,因此,选择一个合适的N值,在确定压缩效率和鲁棒性方面起到重要作用。
本文提出了自适应的ROHC优化算法(AOPT),根据无线信道状态动态调整乐观参数N值的方法,原理如图3所示。
图3 5G系统自适应ROHC原理Fig.3 Schematic of adaptive ROHC of 5G system
在提出的方法中,假设无线链路是稳定的,为了改善O模式的性能,设乐观参数N的初始值是2。用压缩端分类器对IP包进行分类后,结合当前的调制方式,通过建立信噪比(Signal Noise Ratio,SNR)评价函数来衡量当前信道状态质量的好坏,从而自适应地调整乐观参数N的大小,在压缩率和鲁棒性之间达到一种平衡。
(1) SNR评价函数
本文采用了文献[13]提到的3种状态来描述无线信道质量,分别是差状态、一般状态和好状态。通过SNR评价函数对其进行衡量,SNR评价函数C为:
式中,SNR为当前信道的信噪比;SNRmax为历史信噪比最大值;SNRmin为历史信噪比最小值。
当C=1时,即信道处于好状态,逐渐减小乐观参数N的值,以提高信道的压缩效率;当0 (2) 自适应乐观参数调整 根据文献[14]提出的,在乐观参数N=8时,无线链路的所有丢包率几乎不会发生报头解压缩失败,因此,在提出的方法中,设置N的最大值Nmax=8。 在压缩方与解压缩方之间的无线信道上,压缩方根据SNR评价函数对信道状态质量进行判决,从而动态调整O模式乐观参数的取值,以实现压缩率与鲁棒性之间的平衡,具体操作流程如下: ① 将乐观参数的初始值Ninit设置为2。 ② 根据SNR计算C的值。 ③ 若C=1,无线信道处于好状态,则减小乐观参数N到N/2,且不低于初始值Ninit。 ④ 若0 N=Ninit+(Nmax-Ninit)×C。 ⑤ 若C=0,则无线信道处于差状态,增大乐观参数N到最大值Nmax。 通过建立SNR评价函数对乐观参数的动态调整,能够有效地提高算法的压缩性能。当信道状态质量处于差状态时,增加乐观参数的取值,保证接收方能够接收到足够的上下文,从而减少丢包造成的解压缩失败率,提高算法的鲁棒性;当信道状态质量处于好状态时,相应减少乐观参数的取值,加快向高级状态转移,减少冗余报头的发送,从而提高算法的压缩效率。由此,不仅可以提高ROHC对丢包的鲁棒性,还减少了不必要更新包的发送,以减少对压缩效率的影响。 本文利用SNR反映无线信道状态质量,作为乐观参数确定的依据,提出AOPT算法。为了验证AOPT算法的性能,使用OAI开源平台对该方法进行了仿真评估,并将其性能与IETF提出的静态乐观(Static Optimistic,SOPT)参数的ROHC算法进行了比较。具体参数配置如表1所示。 表1 ROHC参数配置Tab.1 ROHC parameter configuration 数据包由包头和净荷部分组成,包头静态部分直接赋值,动态部分根据变化规律赋值,净荷部分由随机生成的数据组成。将接收方解压缩失败率以及平均压缩报头长度作为衡量算法性能的指标,给出仿真结果。 考虑丢包率在10%~50%的情况下,进行多次仿真实验,计算AOPT算法和SOPT算法在不同乐观参数时的解压缩失败率,取解压缩失败率的平均值作为最后的结果,以保证其准确性。仿真结果如图4所示,2种算法的解压缩失败率随着无线链路丢包率的增加均有着不同程度的增加,在丢包率小于30%时,AOPT算法解压缩性能略低于SOPTN=4/8;在丢包率大于30%时,AOPT算法性能与SOPTN=4算法性能相近,远优于SOPTN=2,甚至在丢包率大于40%时,AOPT算法比SOPTN=4具有更低的解压失败率。在SOPTN=8时,解压缩失败率趋近于零,但是,图5的仿真结果表明,乐观参数N的值越高,平均压缩报头长度越大,压缩效率越低。SOPTN=8时的平均压缩报头长度最大,压缩效率远低于AOPT算法。SOPTN=4时,平均压缩报头长度大于AOPT算法的平均压缩报头长度,而SOPTN=2时,平均压缩报头长度略低于AOPT算法的平均压缩报头长度。 图4 不同丢包率下的解压缩失败率Fig.4 Decompression failure rate under different packet loss rates 图5 不同丢包率下的平均压缩报头长度Fig.5 Average compressed header length under different packet loss rates 将图4和图5进行对比分析表明,AOPT算法在较高丢包率的情况下,不仅能够获得较低的解压失败率,也能极大程度上保证系统的压缩效率。这是因为,在信道状态差的情况下,为保证接收端获得足够的上下文,AOPT算法将增加乐观参数N的取值,导致平均压缩报头长度增加,但是当无线信道状态好时,AOPT算法将降低乐观参数N,更快地向高级状态转移,相对增加了更高压缩状态数据包的发送,从而减少了报头压缩长度。综上所述,AOPT算法根据信道状态质量动态调整乐观参数,能够保证系统在低解压缩失败率的同时具有较高的压缩效率。 为了有效提高5G通信系统无线信道带宽资源的利用率,在5G系统ROHC协议O模式的基础上,提出了一种根据信道状态质量动态改变乐观参数值的优化算法。在无线链路上,本文比较了优化算法与固定乐观参数值算法在不同丢包率下的解压缩失败率与平均压缩报头长度,仿真结果表明,提出的优化算法在降低无线链路各种丢包率下的解压缩失败率的同时,具有较高的压缩效率,从而提高了ROHC O模式对丢包的鲁棒性,进而提高5G通信系统的无线信道带宽资源的利用率。后续将研究压缩机制的重建,以进一步降低报头长度,提高压缩率。3 仿真结果分析
4 结束语