APP下载

LTE系统中自适应鲁棒性报头压缩算法

2013-02-13徐海鑫周祖望张利达

电视技术 2013年19期
关键词:报头压缩算法鲁棒性

徐海鑫,周祖望,张利达

(武汉虹信通信技术有限责任公司,湖北武汉430074)

责任编辑:许 盈

移动通信技术和互联网技术的不断融合,IP技术本身的灵活性和简单性使得全IP网络成为无线通信网络的发展趋势。LTE(Long Term Evolution)系统正是采用全IP承载的下一代无线通信系统。选用IP技术作为承载技术,首先会遇到的一个问题就是IP包的报头字节开销太大,极大地占用了无线信道带宽,降低了无线资源利用率。另一方面3GPP在LTE中提出了实现下行峰值速率达到100 Mbit/s的数据传输,LTE系统的高数据传输速率和系统容量,使得频谱资源和业务量之间的矛盾更加突出,所以在LTE系统中采用强大的报头压缩技术显得尤为重要。

ROHC正是IETF专门针对高误码率、长传输时延的无线通信链路而提出的鲁棒性报头压缩技术[1]。在保证鲁棒性的前提下,能够极大地提高系统无线带宽资源的利用率。在3GPP LTE TS36.323协议对PDCP子层的规范中,采用了ROHC协议来实现其头压缩功能。然而ROHC协议中压缩算法确实不能够很好地适应不断变化的无线信道环境,不能动态调整压缩算法中的关键参数。因此,对于动态变化的无线环境,ROHC压缩算法存在一定的不足。针对此种情况,本文结合LTE MAC层无线信道检测技术,实现了ROHC压缩算法关键参数的动态调整。通过仿真结果表明,相比ROHC协议标准压缩算法,本文提出的算法具有更好的压缩率和适用性。

1 ROHC压缩算法简介

1.1 ROHC基本压缩原理

数据流中报头部分包含静态部分和动态部分。静态部分就是指在整个数据流中保持不变或者通过一定信息可推知的部分,而动态部分则是在整个数据流中经常发生变化的部分。ROHC压缩就是消除报头中的静态部分,对于动态变化的部分,采取特定的编码方式对其编码,只传输编码后的少量信息到对端,从而达到报头压缩的目的。

在LTE系统中,ROHC协议位于PDCP子层,分为压缩模块和解压模块。其中压缩模块对IP头和传输头进行压缩,相应的在解压模块,就对ROHC压缩分组进行解压还原。当用户的数据流开始建立的时候,压缩模块就会将该数据流相关的完整报头信息保存在相应的上下文中,并且会分配上下文标识(Context Identifier,CID)来标识此数据流,该条数据流后续的数据报文会参照上下文,只传输变化的部分。相应的在解压模块,根据CID来查找收到压缩分组的上下文,以此回复出原始的数据报文,压缩解压就完成了。具体的原理图如图1所示。

图1 ROHC压缩原理图

当GPRS隧道协议用户面(GPRS Tunneling Protocol for User Plane,GTP-U)有新数据流到达Layer 2的PDCP子层时,PDCP子层的ROHC压缩器首先进入压缩初始化状态,将数据流的报头信息保存在相应的上下文(Context)中,同时将其发送到对端的解压器。确认解压器收到上下文信息后,压缩器就可以进入压缩状态,开始发送压缩报文。相应的在解压器会利用压缩器发来的完整上下文来对后续的压缩报文进行解压。在此过程中,ROHC中的CRC样验和反馈能够很好地保证双方上下文信息的完全同步以及准确无误的传输,确保压缩解压过程的顺利进行。

1.2 LSB/WLSB压缩编码算法

LSB/WLSB是ROHC协议中非常重要的两种压缩编码算法,在整个压缩解压过程中始终存在,其算法的好坏直接决定了ROHC性能。

LSB(Least Significant Bit)是最低有效位压缩编码算法,通常用来对变化较小的报头域进行压缩。在使用LSB压缩编码算法时,通常不会传输整个原始报头,而只会对其中的K个比特进行传输。当解压方收到这K个比特时,将参照之前保存的参考值Vref来恢复原始值。例如要传输的字段值为20,使用上一个传输成功的值18来作为参照,那么比较20和18的二进制值00010100和00010010,即可得出只有最低3位不同,那么K取3,此次只需要传输20的最后3个比特,即100。相应的在解压方,根据解压参考值18和100,即可成功恢复出原始值20。

在LSB压缩编码算法中,压缩器和解压器中只会保存一个压缩和解压参考值,一旦这个分组在无线链路上丢失或者发生错误,解压端就不能够对后续压缩分组正确地解压,并且会导致压缩和解压上下文信息不同步。

基于这种考虑,ROHC工作组提出了WLSB压缩编码算法,压缩端和解压端各自维护一个滑动窗口,包含很多已经正确传递的参考值,保证ROHC压缩算法的鲁棒性。但是,过大的滑动窗口又会降低WLSB算法的压缩效率。因此,滑动窗口的宽度SWW(Slide Window Width)是影响WLSB算法鲁棒性和压缩效率的关键参数[2]。

从图2中可以看到,当滑动窗口值很小时,无线链路上一旦SWW的压缩分组出错或者丢包,都会直接影响后续压缩分组的正确解压,并且解压端上下文也不能及时更新,压缩端和解压端的上下文无法保持同步,造成了后续无法正确解压的压缩分组大量丢弃的现象,严重影响了WLSB算法的鲁棒性。当滑动窗口值减小到1时,WLSB算法就变成了LSB算法。

图2 WLSB压缩算法原理图

当滑动窗口值很大时,虽然能够保证WLSB算法的鲁棒性,但是每一个压缩域相应的LSB编码位数将会增大,直接导致压缩端只能够选择较低压缩效率的压缩分组进行压缩,严重降低了WLSB算法的压缩性能。

2 适用LTE的自适应窗基压缩编码算法SA-WLSB

根据前文WLSB机制的描述易知,可变滑动窗口VSW的大小N决定了报头压缩的效率。当无线信道处于不同的状态时,动态调整N值的大小,不仅能够提高报头压缩率,而且能够获得更好的鲁棒性。

文献[3]中,提出了可利用短期暂时丢包率和平均长期丢包率的比值来定义无线信道状态。如果目前暂时丢包率大于平均长期丢包率,则可认定此时无线信道处于出错状态,否则即处于无错状态。在无错状态下,可以认为无线信道质量比较好,能够实现无差错传输;而在出错状态下,传送的数据报文出现错误,没有办法进行正确传输。无错状态和出错状态是能够相互转化的,另外,由于无线信道的多变性,仅用两个状态来描述无线信道将无法提供足够的信息。在文献中,提出了一种3状态的Markov模型(Three States Markov Modules)来描述无线信道,通过解压缩端反馈的信噪比,在压缩端根据接收比特误码率来划分信道状态,将信道状态分为差状态(Bad State,BS)、平均状态(Average State,AS)、好状态(Good State,GS)。

本文根据LTE系统传输的特点,结合当前丢包率和历史丢包率数据的比较,采用文献[4]中提出的3状态Markov模型来模拟实际的无线信道,如图3所示。

图3 3状态Markov无线信道模型

无线信道状态转移矩阵为

式中:Pga代表由GS态转移到AS态的概率;Pgb代表由GS态转移到BS态的概率;1-Pga-Pgb代表停留在GS态的概率;Pag,Pbg,Pab,Pba,1-Pag-Pab,1-Pbg-Pba的含义可类推出来。适当调整上述状态矩阵中各相应参数的值,即可表征各种不同状态的无线信道。

目前已有的报头压缩方案在设计中,并没有将无线信道状态考虑在内,而在无线通信中,由于各种因素的影响,无线环境是动态变化的,一成不变的压缩方案难以适用于各种状态的无线信道。无线信道突发差错的特性,也使得固定不变的压缩方案难以获得较好的性能。为此,本文提出一种基于LTE无线信道状态估计的自适应滑动窗压缩编码算法SA-WLSB(Self-adaption WLSB)。根据无线信道所处的状态,动态调整滑动窗窗口大小,以保证在获得较高压缩效率的同时,也能够拥有较好的鲁棒性。图4即为SA-WLSB压缩算法原理图。

结合3种信道状态,SA-WLSB中VSW窗口调整的具体流程如下:

1)首先,假设p为当前无线信道误码率,对历史数据进行统计,建立两张映射表:一张是3种无线信道状态(BS/AS/GS)与比特误码率(BER)的映射表(假设p1为GS/AS误码率门限值,p2为AS/BS误码率门限值),另一张是无线信道状态与SWW窗口大小值N之间的映射表(假设n1为GS/AS滑动窗门限值,n2为AS/BS滑动窗门限值)。

图4 SA-WLSB压缩算法原理图

2)其次,压缩端根据MAC底层无线信道检测技术提供的比特误码率值,判定当前无线信道所处的状态,从而动态调整SWW的窗口值N。

3)记录此时无线信道误码率为p,根据映射表1计算当前的无线信道状态,然后再结合映射表2计算当前SWW窗口值(以下计算N均取整):

(1)当p<p1时,此时信道状态很好,处于GS状态。窗口SWW可取值

当p≪p1时,此时可取SWW窗口为1,即LSB压缩编码算法,此时信道条件最好,压缩效率最高。

(2)当p1<p<p2时,此时信道状态处于平均状态AS。此时窗口SWW可取值

(3)当p>p2时,此时信道状态很差,处于BS态,此时窗口SWW可取值

(4)当p≫p2时,此时无线信道状态极差,为保证数据正常传输,不需要对报文压缩处理,只能完整地传输整个报文。此时压缩率为0,鲁棒性最好。

3 仿真及分析

仿真测试中,分别测试了UDP业务流的负载长度在0~100 byte变化时,采用Uncompress、ROHC(WLSB)和ROHC(SA-WLSB)时有效载荷和平均报头开销,仿真测试结果如图5所示。

图5 不同压缩算法下UDP数据包报头开销与载荷对比

Header Proportion为报头开销,Header Size为报头总大小,Payload Size为载荷大小,其计算公式为

由图4分析可得,采用本文所提出的SA-WLSB压缩算法压缩后的UDP报头大小为1~3 byte,相比之下,采用WLSB算法所提供的压缩率也能够获得比较接近的压缩率,但是SA-WLSB算法的压缩连接建立时间更短,并且只需要借助MAC底层无线信道检测技术,并不需要额外的反馈,可以进一步节省无线带宽资源。

在UDP业务流恒定的情况下,对RTP/UDP/IP报头进行压缩处理,统计不同压缩算法处理后的平均报头长度。在此需要采用平均压缩报头长度ACL(Average Compressed Length),即

式中:Total Bytes表示发送的总的字节数(包括各种类型的压缩分组以及反馈信息);Comp.num表示发送的总的压缩分组数;Payload Len表示发送分组携带的载荷长度。测试中取BER=10-3时,即无线信道质量较好的环境下,Comp.num分别取100,1 000,5 000,10 000个,Payload Len取64 kbyte。测试结果如表1所示。

表1 不同压缩算法下平均报头压缩长度统计表

原始RTP/TCP/IP数据包报头为40 byte,经过压缩处理后的平均压缩报头长度如表1所示,分别对未压缩、ROHC(WLSB)以及ROHC(SA-WLSB)3种压缩算法下的平均压缩报头长度进行了统计。统计结果显示,使用本文提出的SA-WLSB压缩算法,压缩端和解压端通信过程中,平均压缩报头长度大多在2 byte以下。在刚开始建立通信的过程中,由于压缩端在一开始时需要发送完整的报头信息及相应的上下文标识符,以便保持解压端上下文信息同步。因此,当测试报文个数较少时,报头压缩增益并没有发送大量分组报头时候明显,和理论分析的结果相符合。当进行大量数据报文测试时,由表1可以看出,经过SA-WLSB算法压缩后的平均报头长度为1.15 byte,而ROHC(WLSB)的压缩算法平均压缩长度为1.29 byte。综上所述,本文提出的SA-WLSB算法比现有的算法有着更低的报头开销,能够很有效地提高无线信道带宽利用率。

4 结语

为了提高无线链路的频谱资源利用率,在3GPP LTE中,采用了IETF提出的ROHC报头压缩方案。本文从提高ROHC压缩鲁棒性及适用性出发,提出了适用于LTE系统的自适应窗基压缩编码算法,该算法能够结合无线信道环境的变化来动态调整ROHC压缩的关键参数。下一步将在特定的无线环境场景下,根据无线需求的变化,针对一些典型的移动多媒体业务,采取特定的编码方式,同时对于ROHC压缩性能的实现参数进行实际的调试,设计更高效适用于LTE系统的实现方案,进一步提高数据压缩效率和鲁棒性,是一个值得以后深入研究的方向。

[1]JONSSON L E,SANDLUND K,PELLETIER G.RObust header compression(ROHC):corrections and clarifications to RFC 3095[EB/OL].[2012-10-20].http://www.hjp.at/doc/rfc/rfc4815.html.

[2]3GPP TS36.323 V9.9.0,Evolved universal terrestrial radio access(EUTRA)packet data convergence protocol(PDCP)specification[S].2009.

[3]张青波,何加铭.一种WiMAX系统PMP网络自适应ROHC压缩算法[J].小型微型计算机系统,2010,33(4):34-36.

[4]朱燕.WiMAX系统MAC层汇集子层协议研究[D].宁波:宁波大学,2009.

[5]吴君钦,赵雪.基于DFT降噪的LTE下行链路信道估计算法的改进[J].电视技术,2013,37(3):34-36.

猜你喜欢

报头压缩算法鲁棒性
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
基于参数识别的轨道电路监测数据压缩算法研究
城市党报报头:政治与艺术的平衡
基于确定性指标的弦支结构鲁棒性评价
一种基于嵌入式实时操作系统Vxworks下的数据压缩技术
基于非支配解集的多模式装备项目群调度鲁棒性优化
非接触移动供电系统不同补偿拓扑下的鲁棒性分析
淡妆浓抹总相宜
——对中国晚报报头变化的研究与欣赏
基于HBASE的大数据压缩算法的研究
IP语音报头压缩设计与实现