鲁棒性头压缩中一种上下文重用的方法及装置制造方法及图纸

技术编号:5152537 阅读:285 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了鲁棒性头压缩中一种上下文重用的方法及装置,包括压缩方重用上下文的方法及装置、解压缩方重用上下文的方法及装置,其中,所述压缩器重用上下文的方法包括:压缩器在接收到一个待压缩包后,如果没有找到对应的压缩上下文,且没有足够的上下文标识CID空间创建新的压缩上下文,则找出当前存在的压缩上下文中最久未被使用的压缩上下文,重用所述最久未被使用的压缩上下文生成所述待压缩包的压缩上下文,将所述待压缩包封装为携带重用标识的初始化和刷新IR包后发送至解压缩器。解压缩器一侧通过重用标识来确定接收到的IR包为重用下文的IR包,重用上下文不再受到上下文模式制约,能够充分利用了有限的上下文资源,提高压缩效率。

【技术实现步骤摘要】

本专利技术涉及在移动通信领域中的一种鲁棒性头压缩算法,主要是提出一种上下文 重用的方法及装置。
技术介绍
由于物理条件的限制,移动通信系统中的无线链路与有线链路相比传输速率较 低,误码率较高。为了能有效利用有限的无线信道带宽资源,引入了鲁棒性头压缩技术 (RObust Header Compress,以下简称R0HC)。ROHC的核心是利用业务流的分组之间的信息 冗余来透明的压缩和解压缩直接相连节点间的分组头中的信息。ROHC技术由IETF(互联网 工程任务组)的RFC3095文档进行描述,并且在2007年2月份IETF对其进行了修订,修订 文档是RFC4815。上下文(Context)是鲁棒性头压缩(ROHC)中一个非常重要的概念,包括压缩上下 文和解压上下文。压缩器用于进行压缩的当前状态信息集合称为压缩上下文;解压缩器用 于进行解压缩的当前状态信息集合称为解压上下文。上下文包含了同一包流中前面若干分 组头的相关信息,如静态字段、压缩解压缩用到的引用参考值等。除此之外,上下文中还包 含描述包流的其他信息,如IPID字段的变化方式、时间戳字段的变化步长、当前状态和模 式、时钟精度等。在有反馈通道存在的情况下,ROHC中的解压缩器可以给压缩器发送积极反馈 (ACK Acknowledge)和消极反馈(NACK :Not acknowledge, STATIC-NACK=Static-Not ackownledge)。积极反馈是解压缩器在成功解压压缩包以后,可以发送确认消息给压缩器, 使得压缩器可以更快的做状态迁移,提高压缩效率;消极反馈是解压缩器用来通知压缩器 进行上下文的更新,提高ROHC整个算法的健壮性。目前 ROHC 支持对于未压缩(UNCOMPRESSED)、IP/UDP/RTP、IP/UDP、IP/ESP 类型分 组数据包的压缩和解压,分别对应的框架(Profile)类型为ProfileO、Profilel、Profile2 和Profile3。对于Prof ileO只存在一个上下文,对于其他Prof ile类型则存在一个或者多 个上下文,每个上下文通过一个上下文ID (Context Identifier,以下简称CID)来进行标 识。ROHC ProfileO类型的上下文对应所有不压缩的分组数据包,其他Profile类型 中的每个上下文则与一个分组包流相对应。一个分组包流是由该包流中所有的关键字段 (STATIC-DEF字段)所确定。比如对于IPv4/UDP/RTP的包流,是由其IPv4部分的源地址和 目的地址、UDP部分的源端口号和目的端口号以及RTP部分的SSRC字段共同确定。ROHC压缩器在接收到一个原始分组数据包以后,需要首先判断该分组包所属的 Profile类型,然后在其所对应Profile类型的上下文链表中查找其所属的上下文,如果没 有找到则创建一个新的上下文并将其添加进入链表中。如果找到了对应的上下文,将当前 包中的各字段与上下文中对应的字段进行比较和编码,决策出需要发送的压缩包类型后, 按照期望的包格式封装压缩包进行发送。目前RFC3095协议中仅规定了上下文的作用、内容和使用方法,并没有对上下文 的销毁机制进行阐述。但在RFC 4815协议中描述上下文的重用,相同profile的上下文 可以直接重用,并且不用更改模式,只需发送初始化和刷新(Initiation and Refresh,简 称IR)包对上下文进行初始化即可;profile不同的且不属于R(Bidirectional Reliable mode,双向可靠模式)模式的上下文则可以进行初始化,并从U (Unidirectional mode, 单向模式)模式开始,已经处于R模式的,不应该进行重用(这一点是基于R模式与U/ 0(Bidirectional Optimistic mode,双向优化模式)模式的0类型/I类型包格式不同,如 果IR包丢弃,U/0模式的0/1类型包中携带了 CRC校验,解压缩器可以感知到解压出错,而R 模式的0/1类型包中除R-0-CRC外均未携带CRC,因此解压缩器并不能感知当前解压失败, 进而采取相应的补救措施)。而在实际的应用环境中,由于协商配置可以使用的CID空间是有限的,而长期不 再使用的上下文也没有进行销毁,从而导致在CID空间用完的情况下无法创建新的上下 文。此时可以按照RFC 4815协议规定的方法进行上下文重用,协议中并没有描述如何去选 择待重用上下文,目前公布的实现方法是选择最久没有使用过的上下文进行重用,但是,如 果选中的待重用上下文为R模式则只能重新进行选择,这样的选择方法可能导致两种不良 后果1,所有的上下文都不符合要求,则直接使用未压缩处理待压缩包,后续该包流所有数 据包也是这样处理,大大降低了该包流及新增包流的压缩效率;2,经过这种方式选择的待 重用上下文有可能就是正在使用的上下文(该上下文对应的包流并没有结束,后续还是有 该包流的待压缩包收到),导致后续针对该待重用上下文的数据包到达后必须按照上下文 重用的流程对其他上下文进行重用,从而形成恶性循环,严重影响压缩效率。
技术实现思路
本专利技术要解决的技术问题是,提供鲁棒性头压缩中一种上下文重用的方法及装 置,提高压缩效率。为了解决上述技术问题,本专利技术提供了一种压缩器重用上下文的方法,包括压缩器在接收到一个待压缩包后,如果没有找到对应的压缩上下文,且没有足够 的上下文标识CID空间创建新的压缩上下文,则找出当前存在的压缩上下文中最久未被使 用的压缩上下文,重用所述最久未被使用的压缩上下文生成所述待压缩包的压缩上下文, 将所述待压缩包封装为携带重用标识的初始化和刷新IR包后发送至解压缩器。进一步地,上述方法还可具有以下特点所述最久未被使用的压缩上下文属于单向模式、双向优化模式或者双向可靠模 式;所述最久未被使用的压缩上下文与所述待压缩包的框架类型相同或者不同。进一步地,上述方法还可具有以下特点所述压缩器是在所述IR包中增加一字段作为所述重用标识,或者是使用IR包中 的已有字段作为所述重用标识。进一步地,上述方法还可具有以下特点所述压缩器在找出最久未被使用的压缩上下文后,还判断所述最久未被使用的压 缩上下文是否超过一预设时间未被使用,如果是,才重用所述最久未被使用的压缩上下文,如果否,则使用框架0类型的压缩上下文压缩所述待压缩包。进一步地,上述方法还可具有以下特点所述压缩器重用所述最久未被使用的压缩上下文生成所述待压缩包的压缩上下 文包括所述压缩器使用所述待压缩包的动态信息和静态信息初始化该压缩上下文中的 动态信息和静态信息,以及判断所述最久未被使用的压缩上下文与所述待压缩包所属的框 架类型是否相同,如果相同,则保持所述最久未被使用的压缩上下文中的模式信息,如果不 相同,则将所述最久未被使用的压缩上下文中的模式信息初始化为单向模式。进一步地,上述方法还可具有以下特点所述压缩器在发送携带重用标识的IR包之后,在接收到用以指示解压上下文重 用成功的积极反馈之前,如果接收到消极反馈则重新向所述解压缩器发送所述携带重用标 识的IR包;如果接收到对应的压缩上下文为所述重用的压缩上下文的待压缩包,且所述压 缩器的状态为I本文档来自技高网
...

【技术保护点】

【技术特征摘要】
一种压缩器重用上下文的方法,其特征在于,包括压缩器在接收到一个待压缩包后,如果没有找到对应的压缩上下文,且没有足够的上下文标识CID空间创建新的压缩上下文,则找出当前存在的压缩上下文中最久未被使用的压缩上下文,重用所述最久未被使用的压缩上下文生成所述待压缩包的压缩上下文,将所述待压缩包封装为携带重用标识的初始化和刷新IR包后发送至解压缩器。2.如权利要求1所述的方法,其特征在于所述最久未被使用的压缩上下文属于单向模式、双向优化模式或者双向可靠模式;所述最久未被使用的压缩上下文与所述待压缩包的框架类型相同或者不同。3.如权利要求1所述的方法,其特征在于所述压缩器是在所述IR包中增加一字段作为所述重用标识,或者是使用IR包中的已 有字段作为所述重用标识。4.如权利要求1所述的方法,其特征在于所述压缩器在找出最久未被使用的压缩上下文后,还判断所述最久未被使用的压缩上 下文是否超过一预设时间未被使用,如果是,才重用所述最久未被使用的压缩上下文,如果 否,则使用框架0类型的压缩上下文压缩所述待压缩包。5.如权利要求1所述的方法,其特征在于,所述压缩器重用所述最久未被使用的压缩 上下文生成所述待压缩包的压缩上下文包括所述压缩器使用所述待压缩包的动态信息和静态信息初始化该压缩上下文中的动态 信息和静态信息,以及判断所述最久未被使用的压缩上下文与所述待压缩包所属的框架类 型是否相同,如果相同,则保持所述最久未被使用的压缩上下文中的模式信息,如果不相 同,则将所述最久未被使用的压缩上下文中的模式信息初始化为单向模式。6.如权利要求1所述的方法,其特征在于,还包括所述压缩器在发送携带重用标识的IR包之后,在接收到用以指示解压上下文重用成 功的积极反馈之前,如果接收到消极反馈则重新向所述解压缩器发送所述携带重用标识的 IR包;如果接收到对应的压缩上下文为所述重用的压缩上下文的待压缩包,且所述压缩器 的状态为IR状态,则将所述对应的压缩上下文为所述重用的压缩上下文的待压缩包封装 为携带重用标识的IR包后发送至解压缩器;如果接收到对应的压缩上下文为所述重用的 压缩上下文的待压缩包,且所述压缩器的状态为非IR状态,则将所述对应的压缩上下文为 所述重用的压缩上下文的待压缩包封装为动态部分初始刷新IR-DYN包,或者封装为单向 模式、双向优化模式和双向可靠模式通用的2类型压缩包,然后将封装好的数据包发送至 解压缩器。7.如权利要求6所述的方法,其特征在于所述压缩器在本地维护当前存在的各压缩上下文对应的重用标识;所述压缩器在重用压缩上下文生成所述待压缩包的压缩上下文时,将所述重用的压缩 上下文对应的重用标识置为一第一取值;以及在发送携带重用标识的IR包之后,如果接收 到用以指示解压上下文重用成功的积极反馈时,则将所述重用的压缩上下文对应的重用标 识置为一第二取值;所述压缩器在接收到消极反馈,或者接收到对应的压缩上下文为所述重用的压缩上下 文的待压缩包时,根据本地维护的所述重用的压缩上下文对应的重用标识判断当前是否已接收到用以指示解压上下文重用成功的积极反馈。8.如权利要求6所述的方法,其特征在于,还包括所述积极反馈中携带循环冗余校验码CRC ;所述压缩器在发送携带重用标识的IR包之后,如果接收到积极反馈,且对所述积极反 馈中的CRC校验成功,才认为接收到用以指示解压上下文重用成功的积极反馈。9.一种解压缩器重用上下文的方法,其特征在于,包括解压缩器在接收到一携带有重用标识的初始化和刷新IR包时,获取所述IR包中的上 下文标识CID,根据所述CID查找到对应的解压缩上下文,然后根据所述IR包初始化所述解 压缩上下文。10.如权利要求9所述的方法,其特征在于,所述解压缩器根据所述IR包初始化所述解 压缩上下文包括所述解压缩器使用所述IR包的动态信息和静态信息初始化所述解压缩上下文中的动 态信息和静态信息,以及判断所述IR包与所述解压缩上下文所属的框架类型是否相同,如 果相同,则保持所述解压缩上下文中的模式信息,如果不相同,则将所述解压缩上下文中的 模式信息初始化为单向模式。11.如权利要求9所述的方法,其特征在于所述解压缩器根据所述IR包成功完成对所述解压缩上下文初始化,且根据更新后的 解压缩上下文成功解压缩出所述IR包之后,向所述压缩器发送携带循环冗余校验码CRC的 积极反馈。12.—种压缩器,其特征在于,包括接收模块、处理模块和发送模块,其中所述接收模块,用以在接收到一个待压缩包后,将其发送给所述处理模块;所述处理模块,用以在从所述接收...

【专利技术属性】
技术研发人员:史学红张健
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1