CN101895548B - 鲁棒性头压缩中一种列表压缩方法及装置 - Google Patents
鲁棒性头压缩中一种列表压缩方法及装置 Download PDFInfo
- Publication number
- CN101895548B CN101895548B CN201010230917.2A CN201010230917A CN101895548B CN 101895548 B CN101895548 B CN 101895548B CN 201010230917 A CN201010230917 A CN 201010230917A CN 101895548 B CN101895548 B CN 101895548B
- Authority
- CN
- China
- Prior art keywords
- list
- reference listing
- current
- list items
- items index
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明提供了一种鲁棒性头压缩中的列表压缩方法及装置,该方法包括:在执行列表压缩时,根据当前列表和引用列表中列表项索引数量之间的关系、相互包含关系、列表项索引的排列顺序关系,以及一预设的所述三种关系与列表压缩包格式的对应关系,决策出列表压缩包格式,据以进行列表压缩。该方法能够有效地针对具体的列表压缩场景,决策出适宜的列表压缩包格式,从而据以进行列表压缩。
Description
技术领域
本发明涉及在移动通信领域中的一种鲁棒性头压缩算法,尤其涉及一种列表压缩方法及装置。
背景技术
由于物理条件的限制,移动通信系统中的无线链路与有线链路相比传输速率较低,误码率较高。为了能有效利用有限的无线信道带宽资源,引入了鲁棒性头压缩技术(Robust Header Compress,以下简称ROHC)。ROHC的核心是利用业务流的分组之间的信息冗余来透明的压缩和解压缩直接相连节点间的分组头中的信息。ROHC技术由IETF(互联网工程任务组)的RFC3095文档进行描述,并且在2007年2月份IETF对其进行了修订,修订文档是RFC4815。
ROHC中提到的列表主要包括两大类:RTP(Real-Time Protocol,实时传输协议)包中的作用源(Contributing Source,以下简称CSRC)列表和IP包中的扩展头链。其中IP包扩展头链具体包括认证头(Authentication Header,以下简称AH头)、空封装安全载荷(the null Encapsulation Security PayloadHeader,以下简称ESP头)、最小封装头(the minimal encapsulation header,以下简称MINE头)、通用路由封装头(Generic Routing Encapsulation Header,以下简称GRE头)和IPv6扩展头。
RFC3095协议中描述的列表压缩基本原理是由压缩器为每个列表项分配唯一的索引,同时维护一个具有所有列表项的翻译表,并使用列表项索引进行标识。列表项索引与对应的列表项在压缩列表中同时被发送,直到压缩器确保解压器已经获取到了索引和列表项之间的映射关系。后续压缩器可以在压缩包中单独发送列表索引用于代表对应的列表项。压缩器可以重新指派一个已存在索引到一个新的列表项,然后以相同的方式重新建立映射关系。
RFC3095协议定义的列表压缩采用基于引用列表的压缩方案,引用列表为同时出现在压缩上下文和解压上下文中的按照一定顺序排列的列表项索引的集合,当前列表为按照原始IP包中顺序排列的待压缩列表项索引的集合。
列表压缩的压缩包由对当前列表和引用列表之间进行差异编码得到。当解压器收到列表压缩包后,基于引用列表对差异进行处理恢复得到原始列表项。为了标识被使用的引用列表,每个压缩列表均携带一个ID。在R模式下某个已发送列表如果收到对端解压器的确认,或者在U/O模式下重复发送某列表到达一定次数则可以确保解压器已经收到此列表,可以被选作引用列表,此引用列表的ID称为引用ID(Ref_ID)。
RFC3095协议定义了四种列表压缩包格式,分别为编码类型0(EncodingType0)、编码类型1(Encoding Type1)、编码类型2(Encoding Type2)、编码类型3(Encoding Type3),适用于不同的列表压缩场景。其中:EncodingType0类型只能发送原始列表项(Generic scheme),适用于初始化阶段不存在引用列表的情形。Encoding Type1类型中含有插入比特掩码(insertion onlyscheme),适用于存在引用列表且当前的列表项比引用列表有若干增加项的情形。Encoding Type2类型中含有删除比特掩码(removal only scheme),适用于存在引用列表且当前的列表项比引用列表有若干删除项的情形。Encoding Type3类型中同时含有插入比特掩码和删除比特掩码(removal theninsert scheme),适用于存在引用列表且当前的列表项比引用列表既有若干增加项又有若干删除项的情形。但是协议中并未明确定义对于四种列表压缩包格式的决策方法。
发明内容
本发明要解决的技术问题是,提供鲁棒性头压缩中一种列表压缩方法及装置,能够有效地针对具体的列表压缩场景,决策出适宜的列表压缩包格式,从而据以进行列表压缩。
为了解决上述技术问题,本发明提出一种鲁棒性头压缩中的列表压缩方法,包括:
在执行列表压缩时,根据当前列表和引用列表中列表项索引数量之间的关系、相互包含关系、列表项索引的排列顺序关系,以及一预设的所述3种关系与列表压缩包格式的对应关系,决策出列表压缩包格式,据以进行列表压缩。
进一步地,上述方法还可具有以下特点:
所述3种关系与压缩包格式的对应关系包括:
当引用列表为空时,对应的压缩包格式为编码类型0(Encoding Type0)的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引数量比引用列表中的列表项索引数量多,引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同时,对应的压缩包格式为编码类型1(Encoding Type1)的列表压缩包格式;
当引用列表不为空,引用列表中的列表项索引数量比当前列表中的列表项索引数量多,当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同时,对应的压缩包格式为编码类型2(Encoding Type2)的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引与引用列表中的列表项索引数量相等、且当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同时,则不采用任何一种列表压缩包格式,不进行列表压缩;
如果非以上各种情况,则采用编码类型3(Encoding Type3)的列表压缩包格式。
进一步地,上述方法还可具有以下特点:
根据当前列表和引用列表中列表项索引的所述3种关系以及所述预设的所述3种关系与列表压缩包格式的对应关系决策列表压缩包格式包括步骤:
先判断引用列表是否为空,如果为空,则决策采用Encoding Type0的列表压缩包格式;如果不为空,则继续判断当前列表中的列表项索引数量与引用列表中的列表项索引数量的大小关系,并根据判断结果执行如下步骤:
如果判断出当前列表中的列表项索引数量比引用列表中的列表项索引数量多,则继续判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同,如果是,则决策采用Encoding Type1的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出引用列表中的列表项索引数量比当前列表中的列表项索引数量多,则继续判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同,如果是,则决策采用Encoding Type2的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出当前列表中的列表项索引数量与引用列表中的列表项索引数量相等,则继续判断是否当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同,如果是,则决策不采用任何一种列表压缩包格式,不进行列表压缩;如果否,则决策采用Encoding Type3的列表压缩包格式。
进一步地,上述方法还可具有以下特点:
采用如下方法判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同:
按照引用列表中各列表项索引的顺序,依次在当前列表中查找引用列表中的各列表项索引,在当前列表中查找到引用列表的某一列表项索引后,从当前列表中该列表项索引的后续列表项索引中继续查找引用列表中该列表项索引的下一列表项索引,如果从当前列表中无法查找到引用列表中的某个列表项索引,则认为判断结果为否;如果从当前列表中能够查找到引用列表中所有列表项索引,则认为判断结果为是;
采用如下方法判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同:
照当前列表中各列表项索引的顺序,依次在引用列表中查找当前列表中的各列表项索引,在引用列表中查找到当前列表的某一列表项索引后,从引用列表中该列表项索引的后续列表项索引中继续查找当前列表中该列表项索引的下一列表项索引,如果从引用列表中无法查找到当前列表中的某个列表项索引,则认为判断结果为否;如果从引用列表中能够查找到当前列表中所有列表项索引,则认为判断结果为是。
为了解决上述技术问题,本发明提出鲁棒性头压缩中一种列表压缩装置,包括配置模块和判断处理模块,其中:
所述配置模块,用以存储一预设的当前列表和引用列表中列表项索引数量之间的关系、相互包含关系和列表项索引的排列顺序关系这3种关系与列表压缩包格式的对应关系;
所述判断处理模块,用以在执行列表压缩时,根据当前列表和引用列表中列表项索引数量之间的关系、相互包含关系、列表项索引的排列顺序关系,以及所述配置模块中存储的所述3种关系与列表压缩包格式的对应关系,决策出列表压缩包格式,并据以进行列表压缩。
进一步地,上述装置还可具有以下特点:
所述配置模块存储的对应关系包括:
当引用列表为空时,对应的压缩包格式为编码类型0(Encoding Type0)的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引数量比引用列表中的列表项索引数量多,引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同时,对应的压缩包格式为编码类型1(Encoding Type1)的列表压缩包格式;
当引用列表不为空,引用列表中的列表项索引数量比当前列表中的列表项索引数量多,当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同时,对应的压缩包格式为编码类型2(Encoding Type2)的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引与引用列表中的列表项索引数量相等、且当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同时,则不采用任何一种列表压缩包格式,不进行列表压缩;
如果非以上各种情况,则采用编码类型3(Encoding Type3)的列表压缩包格式。
进一步地,上述装置还可具有以下特点:
所述判断处理模块,根据当前列表和引用列表中列表项索引的所述3种关系以及所述预设的所述3种关系与列表压缩包格式的对应关系决策列表压缩包格式包括:
先判断引用列表是否为空,如果为空,则决策采用Encoding Type0的列表压缩包格式;如果不为空,则继续判断当前列表中的列表项索引数量与引用列表中的列表项索引数量的大小关系:
如果判断出当前列表中的列表项索引数量比引用列表中的列表项索引数量多,则继续判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同,如果是,则决策采用Encoding Type1的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出引用列表中的列表项索引数量比当前列表中的列表项索引数量多,则继续判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同,如果是,则决策采用Encoding Type2的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出当前列表中的列表项索引数量与引用列表中的列表项索引数量相等,则继续判断是否当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同,如果是,则决策不采用任何一种列表压缩包格式,不进行列表压缩;如果否,则决策采用Encoding Type3的列表压缩包格式。
进一步地,上述装置还可具有以下特点:
所述判断处理模块,判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同包括:
按照引用列表中各列表项索引的顺序,依次在当前列表中查找引用列表中的各列表项索引,在当前列表中查找到引用列表的某一列表项索引后,从当前列表中该列表项索引的后续列表项索引中继续查找引用列表中该列表项索引的下一列表项索引,如果从当前列表中无法查找到引用列表中的某个列表项索引,则认为判断结果为否;如果从当前列表中能够查找到引用列表中所有列表项索引,则认为判断结果为是;
所述判断处理模块,判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同包括:
照当前列表中各列表项索引的顺序,依次在引用列表中查找当前列表中的各列表项索引,在引用列表中查找到当前列表的某一列表项索引后,从引用列表中该列表项索引的后续列表项索引中继续查找当前列表中该列表项索引的下一列表项索引,如果从引用列表中无法查找到当前列表中的某个列表项索引,则认为判断结果为否;如果从引用列表中能够查找到当前列表中所有列表项索引,则认为判断结果为是。
本发明提供了鲁棒性头压缩中一种列表压缩方法及装置,能够有效地针对具体的列表压缩场景,决策出适宜的列表压缩包格式,从而据以进行列表压缩。
附图说明
图1是本发明实施例一种列表压缩方法流程示意图;
图2是本发明实施例判断是否可以采用编码类型1(Encoding Type1)的列表压缩包格式的决策方法流程图;
图3是本发明实施例判断是否可以采用编码类型2(Encoding Type2)的列表压缩包格式的决策方法流程图;
图4是本发明实施例一种列表压缩装置方框图。
具体实施方式
本发明提供了鲁棒性头压缩中一种列表压缩方法及装置,在执行列表压缩时,根据当前列表和引用列表中列表项索引数量之间的关系、相互包含关系以及列表项索引的排列顺序关系的不同的组合来决策选择对应的列表压缩包格式,从而有效地针对具体的列表压缩场景,决策出适宜的压缩包格式,从而据以进行列表压缩。
本发明实施例巧妙地为具体的列表压缩场景设计对应的列表压缩包格式,从而可以在进行列表压缩时,快速地决策出适宜的压缩包格式,从而据以进行列表压缩。其中,上述3种关系与压缩包格式的对应关系可以设计为包括:
在满足当前列表和引用列表中列表项索引数量之间的关系为引用列表为空时,对应的列表压缩包格式为Encoding Type0的列表压缩包格式。
在满足当前列表和引用列表中列表项索引数量之间的关系为引用列表不为空,且当前列表中的列表项索引数量比引用列表中的列表项索引数量多;两者的相互包含关系为引用列表中的所有列表项索引都包含于当前列表中,即,引用列表中的所有列表项索引都在当前列表中出现;且两者列表项索引的排列顺序关系为引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同时,对应的列表压缩包格式为Encoding Type1的列表压缩包格式。
在满足当前列表和引用列表中列表项索引数量之间的关系为引用列表不为空,且引用列表中的列表项索引数量比当前列表中的列表项索引数量多;两者的相互包含关系为当前列表中的所有列表项索引都包含于引用列表中;且两者列表项索引的排列顺序关系为当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同时,对应的列表压缩包格式为Encoding Type2的列表压缩包格式。
在满足当前列表和引用列表中列表项索引数量之间的关系为引用列表不为空,且当前列表中的列表项索引与引用列表中的列表项索引数量相等;且两者列表项索引的排列顺序关系为当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同时,则不采用任何一种列表压缩包格式,不进行列表压缩;
如果非以上各种情况,则对应的列表压缩包格式为Encoding Type3的列表压缩包格式。
基于上述对应关系,相应地,根据当前列表和引用列表中列表项索引的所述3种关系以及所述预设的所述3种关系与列表压缩包格式的对应关系决策列表压缩包格式可以包括如下步骤:
先判断引用列表是否为空,如果为空,则决策采用Encoding Type0的列表压缩包格式;如果不为空,则继续判断当前列表中的列表项索引数量与引用列表中的列表项索引数量的大小关系,并根据判断结果执行如下步骤:
如果判断出当前列表中的列表项索引数量比引用列表中的列表项索引数量多,则继续判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同,如果是,则决策采用Encoding Type1的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出引用列表中的列表项索引数量比当前列表中的列表项索引数量多,则继续判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同,如果是,则决策采用Encoding Type2的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出当前列表中的列表项索引数量与引用列表中的列表项索引数量相等,则继续判断是否当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同,如果是,则决策不采用任何一种列表压缩包格式,不进行列表压缩;如果否,则决策采用Encoding Type3的列表压缩包格式。
下面结合图1对本发明实施例一种列表压缩方法做进一步的详细描述:
步骤S101:ROHC进行列表压缩,流程开始,进入步骤S102;
步骤S102:判断引用列表是否为空,是则进入步骤S103,否则进入步骤S104;
步骤S103:采用列表压缩包格式为Encoding Type0进行列表压缩,进入步骤S113;
步骤S104:比较当前列表中列表项索引数量和引用列表中列表项索引数量,如果判断出当前列表中列表项索引数量大于引用列表中列表项索引数量,进入步骤S105;如果当前列表中列表项索引数量小于引用列表中列表项索引数量,进入步骤S107;如果当前列表中列表项索引数量等于引用列表中列表项索引数量,进入步骤S110;
步骤S105:判断是否可以采用Encoding Type1的列表压缩包格式(具体决策方法参见图2),如果是,则进入步骤S106;否则进入步骤S109;
步骤S106:采用Encoding Type1的列表压缩包格式进行列表压缩,进入步骤S113;
步骤S107:判断是否可以采用Encoding Type2的列表压缩包格式(具体决策方法参见图3),如果是,则进入步骤S108;否则进入步骤S109;
步骤S108:采用Encoding Type2的列表压缩包格式进行列表压缩,进入步骤S113;
步骤S109:采用Encoding Type3的列表压缩包格式进行列表压缩,进入步骤S113;
步骤S110:判断当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序是否相同,如果是,则进入步骤S111;否则进入步骤S112;
步骤S111:不适用任何类型的列表压缩包格式,不进行列表压缩,进入步骤S113;
步骤S112:采用Encoding Type3的列表压缩包格式进行列表压缩,进入步骤S113;
步骤S113:流程结束。
在执行上述步骤S105时,即已判断出满足当引用列表不为空,且当前列表中的列表项索引数量比引用列表中的列表项索引数量多的条件时,可以采用下述方式决策是否可以采用Encoding Type1列表压缩包格式:
按照引用列表中各列表项索引的顺序,依次在当前列表中查找引用列表中的各列表项索引,在当前列表中查找到引用列表的某一列表项索引后,从当前列表中该列表项索引的后续列表项索引中继续查找引用列表中该列表项索引的下一列表项索引,如果从当前列表中无法查找到引用列表中的某个列表项索引,则决策采用Encoding Type3的列表压缩包格式,如果从当前列表中能够查找到引用列表中所有列表项索引,则决策采用Encoding Type1的列表压缩包格式。
本发明在此提供上述决策是否可以采用Encoding Type1列表压缩包格式的方法的一具体实现方式以进行进一步说明,如图2所示,包括步骤:
步骤S201:流程开始,进入步骤S202;
步骤S202:初始化位置变量CurPos为当前列表中首个列表项索引所在位置,进入步骤S203;
步骤S203:取引用列表中第一个列表项索引,进入步骤S204;
步骤S204:取当前列表中第一个列表项索引,进入步骤S205;
步骤S205:比较前面取到的两个列表项索引是否相等,如果是,则进入步骤S206;否则,进入步骤S210;
步骤S206:判断当前列表中当前列表项索引位置是否大于等于CurPos,如果是,则进入步骤S207;否则,进入步骤S212;
步骤S207:更新当前列表中当前列表项索引的位置到位置变量CurPos,进入步骤S208;
步骤S208:判断引用列表中是否还有未处理列表项索引,如果是,则进入步骤S209;否则,进入步骤S213;
步骤S209:取引用列表中下一个列表项索引,进入步骤S205;
步骤S210:判断当前列表中是否还有未处理列表项索引,如果是,则进入步骤S211;否则,进入步骤S212;
步骤S211:取当前列表中下一个列表项索引,进入步骤S205;
步骤S212:判断出不可以使用Encoding Type1的列表压缩包格式,进入步骤S214;
步骤S213:判断出可以采用Encoding Type1的列表压缩包格式,进入步骤S214;
步骤S214:流程结束。
在执行上述步骤S107时,即已判断出满足当引用列表不为空,且当前列表中的列表项索引数量比引用列表中的列表项索引数量少的条件时,可以采用下述方式决策是否可以采用Encoding Type2的列表压缩包格式:
按照当前列表中各列表项索引的顺序,依次在引用列表中查找当前列表中的各列表项索引,在引用列表中查找到当前列表的某一列表项索引后,从引用列表中该列表项索引的后续列表项索引中继续查找当前列表中该列表项索引的下一列表项索引,如果从引用列表中无法查找到当前列表中的某个列表项索引,则决策采用Encoding Type3的列表压缩包格式,如果从引用列表中能够查找到当前列表中所有列表项索引,则决策采用Encoding Type2的列表压缩包格式。
本发明在此提供上述决策是否可以采用Encoding Type2的列表压缩包格式的方法的一具体实现方式以进行进一步说明,如图3所示,包括步骤:
步骤S301:流程开始,进入步骤S302;
步骤S302:初始化位置变量CurPos为引用列表中首个列表项索引所在位置,进入步骤S303;
步骤S303:取当前列表中第一个列表项索引,进入步骤S304;
步骤S304:取引用列表中第一个列表项索引,进入步骤S305;
步骤S305:比较前面取到的两个列表项索引是否相等,如果是,则进入步骤S306;否则,进入步骤S310;
步骤S306:判断引用列表中当前列表项位置是否大于等于CurPos,如果是,则进入步骤S307;否则,进入步骤S312;
步骤S307:更新引用列表中当前列表项的位置到位置变量CurPos,进入步骤S308;
步骤S308:判断当前列表中是否还有未处理列表项索引,如果是,则进入步骤S309;否则,进入步骤S313;
步骤S309:取当前列表中下一个列表项索引,进入步骤S305;
步骤S310:判断引用列表中是否还有未处理列表项索引,如果是,则进入步骤S311;否则,进入步骤S312;
步骤S311:取引用列表中下一个列表项索引,进入步骤S305;
步骤S312:判断出不可以使用Encoding Type2的列表压缩包格式,进入步骤S314;
步骤S313:判断出可以采用Encoding Type2的列表压缩包格式,进入步骤S314;
步骤S314:流程结束。
为了实现上述方法,本发明实施例还提供了鲁棒性头压缩中一种列表压缩装置,如图4所示,包括配置模块和判断处理模块,其中:
所述配置模块,用以存储一预设的当前列表和引用列表中列表项索引数量之间的关系、相互包含关系和列表项索引的排列顺序关系这3种关系与列表压缩包格式的对应关系;
所述判断处理模块,用以在执行列表压缩时,根据当前列表和引用列表中列表项索引数量之间的关系、相互包含关系、列表项索引的排列顺序关系,以及所述配置模块中存储的所述3种关系与列表压缩包格式的对应关系,决策出列表压缩包格式,并据以进行列表压缩。
进一步地,上述装置还可具有以下特点:
所述配置模块存储的对应关系包括:
当引用列表为空时,对应的压缩包格式为编码类型0(Encoding Type0)的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引数量比引用列表中的列表项索引数量多,引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同时,对应的压缩包格式为编码类型1(Encoding Type1)的列表压缩包格式;
当引用列表不为空,引用列表中的列表项索引数量比当前列表中的列表项索引数量多,当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同时,对应的压缩包格式为编码类型2(Encoding Type2)的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引与引用列表中的列表项索引数量相等、且当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同时,则不采用任何一种列表压缩包格式,不进行列表压缩;
如果非以上各种情况,则采用编码类型3(Encoding Type3)的列表压缩包格式。
进一步地,上述装置还可具有以下特点:
所述判断处理模块,根据当前列表和引用列表中列表项索引的所述3种关系以及所述预设的所述3种关系与列表压缩包格式的对应关系决策列表压缩包格式包括:
先判断引用列表是否为空,如果为空,则决策采用Encoding Type0的列表压缩包格式;如果不为空,则继续判断当前列表中的列表项索引数量与引用列表中的列表项索引数量的大小关系:
如果判断出当前列表中的列表项索引数量比引用列表中的列表项索引数量多,则继续判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同,如果是,则决策采用Encoding Type1的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出引用列表中的列表项索引数量比当前列表中的列表项索引数量多,则继续判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同,如果是,则决策采用Encoding Type2的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出当前列表中的列表项索引数量与引用列表中的列表项索引数量相等,则继续判断是否当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同,如果是,则决策不采用任何一种列表压缩包格式,不进行列表压缩;如果否,则决策采用Encoding Type3的列表压缩包格式。
进一步地,上述装置还可具有以下特点:
所述判断处理模块,判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同包括:
按照引用列表中各列表项索引的顺序,依次在当前列表中查找引用列表中的各列表项索引,在当前列表中查找到引用列表的某一列表项索引后,从当前列表中该列表项索引的后续列表项索引中继续查找引用列表中该列表项索引的下一列表项索引,如果从当前列表中无法查找到引用列表中的某个列表项索引,则认为判断结果为否;如果从当前列表中能够查找到引用列表中所有列表项索引,则认为判断结果为是;
所述判断处理模块,判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同包括:
照当前列表中各列表项索引的顺序,依次在引用列表中查找当前列表中的各列表项索引,在引用列表中查找到当前列表的某一列表项索引后,从引用列表中该列表项索引的后续列表项索引中继续查找当前列表中该列表项索引的下一列表项索引,如果从引用列表中无法查找到当前列表中的某个列表项索引,则认为判断结果为否;如果从引用列表中能够查找到当前列表中所有列表项索引,则认为判断结果为是。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种鲁棒性头压缩中的列表压缩方法,包括:
在执行列表压缩时,根据当前列表和引用列表中列表项索引数量之间的关系、相互包含关系、列表项索引的排列顺序关系,以及一预设的所述3种关系与列表压缩包格式的对应关系,决策出列表压缩包格式,据以进行列表压缩;所述3种关系与压缩包格式的对应关系包括:
当引用列表为空时,对应的压缩包格式为编码类型0Encoding Type0的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引数量比引用列表中的列表项索引数量多,引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同时,对应的压缩包格式为编码类型1Encoding Type1的列表压缩包格式;
当引用列表不为空,引用列表中的列表项索引数量比当前列表中的列表项索引数量多,当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同时,对应的压缩包格式为编码类型2Encoding Type2的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引与引用列表中的列表项索引数量相等、且当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同时,则不采用任何一种列表压缩包格式,不进行列表压缩;
如果非以上各种情况,则采用编码类型3Encoding Type3的列表压缩包格式;根据当前列表和引用列表中列表项索引的所述3种关系以及所述预设的所述3种关系与列表压缩包格式的对应关系决策列表压缩包格式包括步骤:
先判断引用列表是否为空,如果为空,则决策采用Encoding Type0的列表压缩包格式;如果不为空,则继续判断当前列表中的列表项索引数量与引用列表中的列表项索引数量的大小关系,并根据判断结果执行如下步骤:
如果判断出当前列表中的列表项索引数量比引用列表中的列表项索引数量多,则继续判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同,如果是,则决策采用Encoding Type1的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出引用列表中的列表项索引数量比当前列表中的列表项索引数量多,则继续判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同,如果是,则决策采用Encoding Type2的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出当前列表中的列表项索引数量与引用列表中的列表项索引数量相等,则继续判断是否当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同,如果是,则决策不采用任何一种列表压缩包格式,不进行列表压缩;如果否,则决策采用Encoding Type3的列表压缩包格式。
2.如权利要求1所述的方法,其特征在于:
采用如下方法判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同:
按照引用列表中各列表项索引的顺序,依次在当前列表中查找引用列表中的各列表项索引,在当前列表中查找到引用列表的某一列表项索引后,从当前列表中该列表项索引的后续列表项索引中继续查找引用列表中该列表项索引的下一列表项索引,如果从当前列表中无法查找到引用列表中的某个列表项索引,则认为判断结果为否;如果从当前列表中能够查找到引用列表中所有列表项索引,则认为判断结果为是;
采用如下方法判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同:
照当前列表中各列表项索引的顺序,依次在引用列表中查找当前列表中的各列表项索引,在引用列表中查找到当前列表的某一列表项索引后,从引用列表中该列表项索引的后续列表项索引中继续查找当前列表中该列表项索引的下一列表项索引,如果从引用列表中无法查找到当前列表中的某个列表项索引,则认为判断结果为否;如果从引用列表中能够查找到当前列表中所有列表项索引,则认为判断结果为是。
3.鲁棒性头压缩中一种列表压缩装置,其特征在于,包括配置模块和判断处理模块,其中:
所述配置模块,用以存储一预设的当前列表和引用列表中列表项索引数量之间的关系、相互包含关系和列表项索引的排列顺序关系这3种关系与列表压缩包格式的对应关系;
所述判断处理模块,用以在执行列表压缩时,根据当前列表和引用列表中列表项索引数量之间的关系、相互包含关系、列表项索引的排列顺序关系,以及所述配置模块中存储的所述3种关系与列表压缩包格式的对应关系,决策出列表压缩包格式,并据以进行列表压缩;
所述配置模块存储的对应关系包括:
当引用列表为空时,对应的压缩包格式为编码类型0Encoding Type0的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引数量比引用列表中的列表项索引数量多,引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同时,对应的压缩包格式为编码类型1Encoding Type1的列表压缩包格式;
当引用列表不为空,引用列表中的列表项索引数量比当前列表中的列表项索引数量多,当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同时,对应的压缩包格式为编码类型2Encoding Type2的列表压缩包格式;
当引用列表不为空,当前列表中的列表项索引与引用列表中的列表项索引数量相等、且当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同时,则不采用任何一种列表压缩包格式,不进行列表压缩;
如果非以上各种情况,则采用编码类型3Encoding Type3的列表压缩包格式;
所述判断处理模块,根据当前列表和引用列表中列表项索引的所述3种关系以及所述预设的所述3种关系与列表压缩包格式的对应关系决策列表压缩包格式包括:
先判断引用列表是否为空,如果为空,则决策采用Encoding Type0的列表压缩包格式;如果不为空,则继续判断当前列表中的列表项索引数量与引用列表中的列表项索引数量的大小关系:
如果判断出当前列表中的列表项索引数量比引用列表中的列表项索引数量多,则继续判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同,如果是,则决策采用Encoding Type1的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出引用列表中的列表项索引数量比当前列表中的列表项索引数量多,则继续判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同,如果是,则决策采用Encoding Type2的列表压缩包格式;如果否,则决策采用Encoding Type3的列表压缩包格式;
如果判断出当前列表中的列表项索引数量与引用列表中的列表项索引数量相等,则继续判断是否当前列表中各列表项索引的顺序与引用列表中各列表项索引的顺序相同,如果是,则决策不采用任何一种列表压缩包格式,不进行列表压缩;如果否,则决策采用Encoding Type3的列表压缩包格式。
4.如权利要求3所述的装置,其特征在于:
所述判断处理模块,判断是否引用列表中的所有列表项索引都包含于当前列表中,且引用列表中各列表项索引在当前列表中出现的顺序与其在引用列表中的顺序相同包括:
按照引用列表中各列表项索引的顺序,依次在当前列表中查找引用列表中的各列表项索引,在当前列表中查找到引用列表的某一列表项索引后,从当前列表中该列表项索引的后续列表项索引中继续查找引用列表中该列表项索引的下一列表项索引,如果从当前列表中无法查找到引用列表中的某个列表项索引,则认为判断结果为否;如果从当前列表中能够查找到引用列表中所有列表项索引,则认为判断结果为是;
所述判断处理模块,判断是否当前列表中的所有列表项索引都包含于引用列表中,且当前列表中各列表项索引在引用列表中出现的顺序与其在当前列表中的顺序相同包括:
照当前列表中各列表项索引的顺序,依次在引用列表中查找当前列表中的各列表项索引,在引用列表中查找到当前列表的某一列表项索引后,从引用列表中该列表项索引的后续列表项索引中继续查找当前列表中该列表项索引的下一列表项索引,如果从引用列表中无法查找到当前列表中的某个列表项索引,则认为判断结果为否;如果从引用列表中能够查找到当前列表中所有列表项索引,则认为判断结果为是。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010230917.2A CN101895548B (zh) | 2010-07-15 | 2010-07-15 | 鲁棒性头压缩中一种列表压缩方法及装置 |
PCT/CN2011/074097 WO2012006904A1 (zh) | 2010-07-15 | 2011-05-16 | 一种鲁棒性头压缩中的列表压缩方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010230917.2A CN101895548B (zh) | 2010-07-15 | 2010-07-15 | 鲁棒性头压缩中一种列表压缩方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101895548A CN101895548A (zh) | 2010-11-24 |
CN101895548B true CN101895548B (zh) | 2014-08-13 |
Family
ID=43104615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010230917.2A Active CN101895548B (zh) | 2010-07-15 | 2010-07-15 | 鲁棒性头压缩中一种列表压缩方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101895548B (zh) |
WO (1) | WO2012006904A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895548B (zh) * | 2010-07-15 | 2014-08-13 | 中兴通讯股份有限公司 | 鲁棒性头压缩中一种列表压缩方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212404A (zh) * | 2006-12-27 | 2008-07-02 | 大唐移动通信设备有限公司 | 鲁棒头压缩分组数据传输的方法及系统 |
CN101686485A (zh) * | 2008-09-22 | 2010-03-31 | 中国移动通信集团设计院有限公司 | 获取高速下行分组接入传输吞吐量的方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7647421B2 (en) * | 2002-08-20 | 2010-01-12 | Nokia Corporation | Extension header compression |
CN100433841C (zh) * | 2002-12-09 | 2008-11-12 | 中国科学技术大学 | 用于因特网协议第6版移动子协议MIPv6的鲁棒性头标压缩/解压方法 |
US9031071B2 (en) * | 2005-08-26 | 2015-05-12 | Alcatel Lucent | Header elimination for real time internet applications |
CN101674315B (zh) * | 2009-10-20 | 2014-12-10 | 中兴通讯股份有限公司 | 一种时间戳压缩、解压缩的方法及装置 |
CN101895548B (zh) * | 2010-07-15 | 2014-08-13 | 中兴通讯股份有限公司 | 鲁棒性头压缩中一种列表压缩方法及装置 |
-
2010
- 2010-07-15 CN CN201010230917.2A patent/CN101895548B/zh active Active
-
2011
- 2011-05-16 WO PCT/CN2011/074097 patent/WO2012006904A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212404A (zh) * | 2006-12-27 | 2008-07-02 | 大唐移动通信设备有限公司 | 鲁棒头压缩分组数据传输的方法及系统 |
CN101686485A (zh) * | 2008-09-22 | 2010-03-31 | 中国移动通信集团设计院有限公司 | 获取高速下行分组接入传输吞吐量的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101895548A (zh) | 2010-11-24 |
WO2012006904A1 (zh) | 2012-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3751823B2 (ja) | 実時間サービスにおけるヘッダ圧縮 | |
CN101674315B (zh) | 一种时间戳压缩、解压缩的方法及装置 | |
CN102026398B (zh) | Lte中继系统中分组汇聚协议的实现方法和装置 | |
EP1601157B1 (en) | Data transmission and reception apparatus and method | |
CN100454920C (zh) | 扩展标题压缩 | |
CN101977402B (zh) | 鲁棒性头压缩中一种上下文重用的方法及装置 | |
US20060104278A1 (en) | Apparatus and method for compressing headers in a broadband wireless communication system | |
CN101707616B (zh) | 一种用户数据报协议数据包压缩、解压缩的方法及装置 | |
CN104917591B (zh) | 一种适用于单向有损链路的卫星网络数据包压缩方法 | |
CN102882879A (zh) | 一种适用于卫星信道的ip数据压缩传输方法 | |
CN104660308A (zh) | 基于蓝牙低功耗技术的文件传输方法和系统 | |
CN101237419A (zh) | 航空电信网空地通信中的报头压缩方法 | |
CN106416175A (zh) | 一种协议栈适配方法及装置 | |
CN102118792A (zh) | 一种传输数据包的方法及装置 | |
CN100563210C (zh) | 压缩报头的方法、压缩器及传输系统 | |
CN104967498B (zh) | 一种基于历史的卫星网络数据包压缩传输方法 | |
CN101895548B (zh) | 鲁棒性头压缩中一种列表压缩方法及装置 | |
CN104811265A (zh) | 基带帧的封装方法及解封装方法 | |
CN101984621B (zh) | 鲁棒性头压缩中一种提高列表压缩效率的方法及装置 | |
CN101005448A (zh) | 一种VoIP网关传输媒体流的方法 | |
CN102457901A (zh) | 鲁棒性头压缩版本适配方法和装置 | |
CN102652414A (zh) | 在传感器个人区域网络中进行分组转发 | |
CN101969362B (zh) | 掩码生成方法、列表压缩编码方式的选择方法及相应装置 | |
CN102215236A (zh) | 鲁棒性头压缩协议层的工作模式切换方法和装置 | |
CN101110638A (zh) | 一种链表编码方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20101124 Assignee: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD. Assignor: ZTE Corporation Contract record no.: 2015440020319 Denomination of invention: List compression method and device in robust header compress Granted publication date: 20140813 License type: Common License Record date: 20151123 |
|
LICC | Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model |