【VOLTE】ROHC 健壮性包头压缩

一、什么是包头压缩?为什么要引入ROHC

ROHCRobust HeaderCompression健壮性包头压缩

详细可参考:http://www.docin.com/p-286361207.html

      

      随着网络IP化,语音业务也从早起的ATM/TDMIP上转变。承载语音数据的经典数据包格式如下:

 

典型的语音数据包结构:



【VOLTE】ROHC 健壮性包头压缩_第1张图片

【VOLTE】ROHC 健壮性包头压缩_第2张图片

从语音数据包可以看到,一个IP包的包头长度远远大于实际用户所传输的数据,如果这些包头每次都在网络上传输,那么势必会导致网络资源的极大浪费!

 

例如,使用IPV4报头长度有40字节,数据部分15~20字节,那么66%~73%资源用于承载报文的包头上;

如果使用IPV6,报头长度有60字节,那么75%~80%的资源用于承载报头!

 

无线网络资源是有限的,珍贵的,如何提高用户数据的传输效率-->>>对包头进行压缩

 

包头压缩技术有很多种,为何采用ROHC包头压缩,这是因为ROHC适用于

1.      ROHC适用于高误码率的传输环境

2.      ROHC适用于网络时延较大的传输环境

3.      ROHC压缩率高,还需要较强的稳健性,适用于较为恶劣的无线环境中。通过ROHC包头压缩,IPV660字节的包头,压缩到3字节。

 

4.      ROHC压缩方法简单,不需要增加额外的网元设备

二、ROHC压缩过程

2.1  ROHC压缩/解压流程

【VOLTE】ROHC <wbr>健壮性包头压缩【VOLTE】ROHC 健壮性包头压缩_第3张图片

由于无线环境丢包率较高,ROHC压缩引入了CRC校验,用于检测包在传输过程中的正确性


2.2ROHC对应协议栈的位置:


【VOLTE】ROHC 健壮性包头压缩_第4张图片

【VOLTE】ROHC 健壮性包头压缩_第5张图片

2.3 ROHC PROFILE

ROHC压缩协议有很多类型,例如对RTP+UDP+IP包的压缩,有对UDP+IP包的压缩,究竟是那种压缩方法,有一个相对应的IDPROFILE ID3GPP36.323中有明确定义

【VOLTE】ROHC <wbr>健壮性包头压缩
【VOLTE】ROHC 健壮性包头压缩_第6张图片

三、 LOG分析

ROHC不了解算法的情况下,主要需要分析一下几点

1)ROHC 终端是否支持

2)ROHC 网络是否支持?

3)ROHC协商过程

4)ROHC 压缩报头的传输

 

3.1 ROHC终端支持情况

通过信令查看UECapabilityInformation消息

value UE-EUTRA-Capability ::=

{

  accessStratumReleaserel9,

  ue-Category 3,

  pdcp-Parameters

  {

   supportedROHC-Profiles

   {

     profile0x0001TRUE,      //终端支持不压缩模式

     profile0x0002TRUE,      //终端支持RTP/UDP/IP报头压缩模式

     profile0x0003 FALSE,

     profile0x0004 FALSE,

     profile0x0006 FALSE,

     profile0x0101 FALSE,

     profile0x0102 FALSE,

     profile0x0103 FALSE,

     profile0x0104 FALSE

   }

  },

 

3.2 ROHC网络支持情况

可以通过查看建立DRB时的rrcConnectionReconfiguration消息

drb-ToAddModList 
                headerCompression rohc : 
                        {
                          maxCID 2,  //maxNumberROHC-ContextSessions
                          profiles 
                          {
                            profile0x0001 TRUE,
                            profile0x0002 TRUE,
                            profile0x0003 FALSE,
                            profile0x0004 FALSE,
                            profile0x0006 FALSE,
                            profile0x0101 FALSE,
                            profile0x0102 FALSE,
                            profile0x0103 FALSE,
                            profile0x0104 FALSE
                          }
                        }

3.3 ROHC协商过程

未找到,不过通过压缩数据包可以看到具体使用了哪一个profile

3.4 高通平台ROHC数据传输

高通平台对于PDPCROHC压缩信令的传输主要查看4条信令
0x1361  RoHC Compressor
0x1362  RoHC Decompressor
0x1363  RoHC Feedback Compressor

 

0x1364  RoHC Feedback Decompressor


四、参考文档

1.      3GPP36.323  LTE RLC层协议

2.      RFC3095 RObustHeader Compression (ROHC): Framework and four profiles: RTP, UDP,ESP, and uncompressed

3.      RFC4815RObust Header Compression (ROHC): Corrections andClarifications to RFC 3095

4.      RFC4995The RObust Header Compression (ROHC) Framework

5.      RFC5225RObust Header Compression Version 2 (ROHCv2): Profiles forRTP, UDP, IP, ESP and UDP-Lite

6.      http://www.docin.com/p-286361207.html强烈推荐

 

7.      80-ND484-1_B_LTE_AS_VoLTE_AS_Features_Log_Analysis

你可能感兴趣的:(VOLTE)