压缩报文恢复方法及装置的制作方法

文档序号:7964078阅读:144来源:国知局
专利名称:压缩报文恢复方法及装置的制作方法
技术领域
本发明涉及通信领域,并且更特别地,涉及一种压缩报文恢复
方法和压缩纟艮文恢复装置,其可以完全兼容RFC2508协议。
背景技术
随着实时传输协议(RTP)的广泛使用,人们对于利用RTP来 实现不同的网络音视频应用程序间互操作的兴趣也日益增长。然 而,已经注意到,IPV4/UDP/RTP 40字节的头部^"于负栽而言开销 太大。因而压缩:汰术应运而生,其可以通过CRTP (压缩的RTP, 即,压缩的实时传输协议)压缩来使IP/UDP/RTP包头变小,在不 发送UDP校验和的情况下,可将大多数包的IP/UDP/RTP包头压缩 到2个字节,而在带4交—验和的情况下,可将其压缩到4个字节,从 而可以有效的提高带宽利用率。
在一个报文流的生命期中,报文头的很多字段都保持不变或者 增量变化。对于RTP报文流而言,几乎报文头中所有字段都是不变 的,或者是增量变化的。CRTP压缩依赖于同一报文流中连续报文 的恒定不变部分或者增量变化部分。
其中,净艮文间相同的字段不用发送,并且经常变化但变化很小 和/或是可预见的值,比如RTP序号、RTP时戳可以^敗增量编码(这 样就大大减少了这些字段占用的比特),而只有经常改变并且是随 机改变的字段(比如UDP校验和)每次都需要发送。CRTP压缩的
基本原理就是在需要时发送一个有完整报文头(FULL_HEADER) 的报文;接下来发送压缩报文头,这些压缩报文头是根据前面接收 到的完整报文头(FULL—HEADER)建立起来的关联来压缩的,其 中可以包含对关联的增量值改变。
RFC 2508 Compressing IP/UDP/RTP Headers for Low-Speed Serial Links的CRTP方案建立在才艮文无<壬<可《1>序和可靠链路4及少 丢包的基础上。当报文IP头ID、 RTP顺序号、RTP时戳增量发生 变化时,压缩端在COMPRESSED—RTP才艮文中分别置I、 T、 S标志 并传输新的增量值,当RTP头中的NOCHANGE域发生变化时,可 以发送COMPRESSED—UDP报文(也可以是FULL—HEADER ),而 当IP头中的NOCHANGE域发生变化时,必须传输FULL_HEADER 报文。对于任何链路顺序号不连续的情况,解压端都认为是发生丟 包,如果报文中带UDP校验并且可以使用TWICE算法进行压缩报 文恢复,则恢复失败后丟弃报文并向压缩端发送CONTEXT—STATE 4艮文,并且使解压关联无效,丢弃所有后续到达的 COMPRESSED—RTP报文,直到收到压缩端发送来的 FULL一HEADER。
从上述技术方案中可以看出,其中存在以下问题首先,链路 顺序号不连续都认为是丢包,而无法处理包乱序和少量丢包的情 况;其次,使用TWICE算法进行压缩报文恢复效率低,必须保证 才艮文中带有UDP校验和并且增量值没有发生变化才能正确恢复, 对于报文流量大时严重影响系统性能;再次,关联无效后重新建立 关联期间丢弃大量压缩报文,因此严重影响语音质量。
于是,提出了 RFC 3545 Enhanced Compressed RTP (CRTP) for Links with High Delay 、 Packet Loss and Reordering是增强型CRTP 协议,它是对RFC 2508健壮性的一种增强,其通过重复更新关联
并且在压缩净艮文的同时携带绝对值和增量值来防止丢包和乱序对 解压关联的影响。
但是,上述的增强型CRTP协议自身仍然存在许多缺陷,例如, 其增加了大量冗余机制和头部开销,致使降低了压缩效率;此外, 若应用于少量乱序及丢包的情况,则低时延可靠链路增加了实现复 杂度和开销;再次,需对端支持RFC3545,而无法^艮〗义支持RFC2508 的i殳备互通。
因此需要一种压缩报文恢复方法和压缩报文恢复装置,其能够 适用于包乱序和丢包情况的压缩才艮文恢复,而无需丟弃大量压缩 包,并且与RFC2508兼容。

发明内容
考虑到上述问题而作出本发明。本发明提供了 一种压缩报文恢 复方法和压缩报文恢复装置,其能够适用于包乱序和丟包情况的压 缩才艮文恢复,无需丟弃大量压缩包,并且可以完全兼容RFC2508 协议。
在MP (RFC1990)链路中传输语音时有可能出现两个包先后 到达的乱序现象,对于此种情况,RFC2508基本上无法处理,而本 发明提供的压缩报文恢复方法能够始终保证关联中保存的信息有效。
根据本发明的一个方面,提供了一种压缩报文恢复方法,用于 在多链路协议链路中出现乱序或丟包现象时进行恢复。
根据本发明的压缩报文恢复方法包括以下步骤
第一步骤在当前4妻收到的压缩才艮文序号为n,之前4妄收到的 压缩才艮文序号为m,并且n〈m或n-m〉1,即,存在乱序的情况下, 确定当前报文的时戳;以及第二步骤根据确定出的时间戳恢复接 收到的压缩报文。
特别地,在上述第一步骤中,在当前压缩报文携带了时戳增量 时,将关联时戳值、当前压缩报文的时戳增量值、以及当前时戳增 量值与(n-m-l)的乘积相加,其结果作为当前压缩报文的时戳; 在当前压缩报文未携带时戳增量时,将关联时戳值和当前时戳增量 值与(n-m)的乘积相加,其结果作为当前压缩报文的时戳。
此外,根据本发明的压缩报文恢复方法在第一步骤之前,还可 以包括以下步骤步骤A, *接收端在接收到完整头^艮文后,确定完 整报文的时戳,并将时戳值作为关联时戳值用于恢复随后接收到的 压缩报文。
另夕卜,根据本发明的压缩报文恢复方法在第二步骤之后,还可 以包括以下步骤第三步骤,在当前接收到的压缩报文序号n大于 之前接收到的压缩报文序号m的情况下,使用在第一步骤中恢复的 当前压缩报文的时戳来更新关联时戳,即,关联时戳等于当前压缩 报文的时戳。
在上述技术方案中,在接收到新的完整头报文后,根据新的完 整头报文来确定后续压缩报文的时戳。
此外,在当前接收到的压缩报文序号为n,之前接收到的压缩 报文序号为m,且n-m〉2的情况下,接收端同时将解压关联状态报 文发送至发送端指示解压关联无效。200610098469.9
说明书第5/ll页
特别地,上述的压缩才艮文恢复方法可以应用于少量乱序或丟包
的传输系统、语音传输系统,并且与CRTP协议兼容。
根据本发明的另一方面,提供了一种压缩报文恢复装置,用于 在多链路协议链路中出现乱序或丢包现象时进行恢复。
根据本发明的压缩报文恢复装置包括时戳确定模块,用于确 定当前压缩报文的时戳,其中,当前接收到的压缩报文序号为n, 之前接收到的压缩才艮文序号为m,并且n〈m或n-m〉1,即,存在乱 序;以及压缩报文恢复模块,用于根据确定出的时戳恢复接收到的 压缩报文。
以下将详细描述时戳确定模块。在当前压缩报文携带了时戳增 量时,时戳确定模块将关联时戳值、当前压缩报文的时戳增量值、 以及当前时戳增量值与(n-m-l)的乘积相加,其结果作为当前压 缩报文的时戳;在当前压缩报文未携带时戳增量时,时戳确定模块 将关联时戳值和当前时戳增量值与(n-m)的乘积相加,其结果作 为当前压缩报文的时戳。
根据本发明的压缩报文恢复方法优选地进一步包括关联时戳 确定才莫块,在当前接收到的压缩才艮文序号n大于之前^^妾收到的压缩 4艮文序号m的情况下,使用由时戳确定才莫块确定的当前压缩才艮文的 时戳来更新关联时戳,即,关联时戳等于当前压缩报文的时戳;
特别地,对于关联时戳值确定模块,其还可以用于在接收到完 整头报文之后将时戳值确定为关联时戳值,以恢复随后接收到的压 缩报文。
在上述技术方案中,在接收到新的完整头报文后,根据新的完 整头报文来确定后续压缩报文的时戳。
此外,在当前接收到的压缩报文序号为n,之前接收到的压缩 报文序号为m,且n-m〉2的情况下,接收端同时将解压关联状态报 文发送至发送端指示解压关联无效。
特别;也,上述的压缩净艮文恢复装置可以应用于少量乱序或丟包 的传输系统、语音传输系统,并且与CRTP协议兼容。
通过以上4支术方案,本发明实现了以下有益效果提高了压缩 报文恢复的速度,从而降低了压缩报文恢复的成本,极大地提高了 语音应用下的语音质量。


此处所il明的附图用来提供对本发明的进一步理解,构成本申 请的一部分,本发明的示例性实施例及其说明用于解释本发明,并 不构成对本发明的不当限定。在附图中
图1是示出存在报文乱序的RTP时戳的图表;
图2是另 一示出存在报文乱序的RTP时戳的图表;
图3是示出根据本发明第 一实施例的压缩报文恢复方法的流程
图4是示出根据本发明第二实施例的压缩报文恢复方法的流程 图;以及
图5是示出根据本发明第三实施例的压缩报文恢复装置的框图。
具体实施例方式
以下一夸参照附图来详细4苗述本发明的优选实施例。
其中,图1是示出存在报文乱序的RTP时戳的图表。如图1所 示,才艮文2、才艮文3、才艮文5、才艮文6、以及才艮文10为压缩的RTP 报文,报文9为完整报文头报文,并且,报文3在报文2之前到达, 报文6在报文5之前到达,报文10在才艮文9之前到达,即,存在 才艮文乱序。
图2是示出存在报文乱序及报文丢失的RTP时戳的图表。如图 2所示,保文1与报文4之间丢失了报文(即,丟失了报文2和报 文3),才艮文4在净艮文6之前到达,净艮文6在才艮文5之前到达,报文 15在报文12之前到达,并且报文7和报文15之间以及报文15和 报文12之间均存在丢失报文的现象。
第一实施例
在本发明的第一实施例中,4是供了一种压缩净艮文恢复方法。以 下将参照图1、图2和图3来描述本发明的第一实施例,其中,图 3是示出根据本发明第 一 实施例的压缩报文恢复方法的流程图。
以图2中的报文6和报文4为例,其中,当前接收到的压缩报 文序号为n(即,6),之前接收到的压缩报文序号为m (即,4), 并且报文6携带了时戳增量ATS (其T位为1 )。
如图3所示,才艮据本发明第一实施例的压缩净艮文恢复方法包括 以下步骤
步骤S302:接收端在接收到完整头报文后,恢复报文的时戳,
并将时戳值作为关联时戳值用于恢复随后接收到的压缩报文;如图 l和2所示,在本实施例中,关联时戳值为500;
步骤S304:将关联时戳值(关联TS值)、当前压缩报文的时 戳增量值(ATS)、以及当前时戳增量值(CurATS)与(n-m-l)的 乘积相加,其结果作为当前压缩报文的时戳,即,恢复后TS-关联 TS+ (n-m-l ) *CurATS+ATS;即,恢复后TS-关联TS+ (n陽m-l ) *CurATS+ATS=580+ ( 6-4-1 ) "0+60=660;
步骤S306:根据在步骤S304中确定出的时戳来恢复接收到的 压缩才艮文;以及
步骤S308:使用在步骤S304中计算的当前压缩报文(即,报 文6)的时戳来更新关联时戳,即,关联时戳=当前压缩报文的时戳 =660。
第二实施例
在本发明的第二实施例中,提供了一种压缩报文恢复方法。以 下将参照图1、图2和图4来描述本发明的第一实施例,其中,图 4是示出4艮据本发明第二实施例的压缩报文恢复方法的流程图。
以图2中的报文6和报文5为例,其中,当前接收到的压缩报 文序号为n(即,5),之前接收到的压缩报文序号为m (即,6), 并且报文5未携带时戳增量ATS (其T位为0 )。
如图4所示,根据本发明实施例的压缩报文恢复方法包括以下 步骤
步骤S402:接收端在接收到完整头报文后,恢复报文的时戳, 并将时戳值作为关联时戳值用于恢复随后接收到的压缩报文;如图 1和2所示,在本实施例中,关联时戳值为500;
步骤S404:将关联时戳值(关联TS值)和当前时戳增量值 (CurATS )与(n-m )的乘积相加,其结果作为当前压缩才艮文的时 戳;即,恢复后TS-关联TS十(n-m+l ) *CurATS;即,恢复后TS= 关联TS+ ( n-m ) *CurATS=660+ ( 5-6 ) *60=660-60=600;
以及步骤S406:根据确定出的时戳来恢复接收到的压缩报文。
在上述4支术方案中,在接收到新的完整头冲艮文后,4艮据新的完 整头报文来确定后续压缩报文的时戳。
此外,在当前接收到的压缩报文序号为n,之前接收到的压缩 报文序号为m,且n-m》的情况下,接收端同时将解压关联状态报 文发送至发送端指示解压关联无效。
特别地,上述的压缩才艮文恢复方法可以应用于少量乱序或丢包 的传输系统、语音传输系统,并且与CRTP十办i义兼容。
第三实施例
在根据本发明的第三实施例中,提供了一种压缩报文恢复装 置。以下将参照图5来描述本发明的第五实施例,其中,图5是示 出根据本发明第三实施例的压缩报文恢复装置的框图。如图5所示,根据本发明的压缩报文恢复装置500包括时戳 确定模块502,用于确定当前压缩报文的时戳,其中,当前接收到 的压缩报文序号为n,之前接收到的压缩报文序号为m,并且iKm 或n-m〉1,即,存在乱序;以及压缩报文恢复模块504,用于根据 确定出的时戳恢复接收到的压缩报文。
以下将详细描述时戳确定模块502。在当前压缩报文携带了时 戳增量时,时戳确定模块将关联时戳值、当前压缩报文的时戳增量 值、以及当前时戳增量值与(n-m-l)的乘积相加,其结果作为当 前压缩报文的时戳;在当前压缩报文未携带时戳增量时,时戳确定 模块将关联时戳值和当前时戳增量值与(n-m)的乘积相加,其结 果作为当前压缩报文的时戳。
此外,根据本发明的压缩报文恢复装置500进一步包括关联 时戳确定模块506,在当前接收到的压缩报文序号n大于之前接收 到的压缩报文序号m的情况下,使用由时戳确定模块确定的当前压 缩报文的时戳来更新关联时戳,即,关联时戳等于当前压缩报文的 时戳;特别地,对于关联时戳值确定才莫块506,其还可以用于在接 收到完整头报文之后将时戳值确定为关联时戳值,以恢复随后接收 到的压缩报文。
在上述技术方案中,在接收到新的完整头报文后,根据新的完 整头报文来确定后续压缩报文的时戳。
此外,在当前接收到的压缩报文序号为n,之前接收到的压缩 报文序号为m,且n-m〉2的情况下,接收端同时将解压关联状态报 文发送至发送端指示解压关联无效。
特别地,上述的压缩才艮文恢复装置500可以应用于少量乱序或 丢包的传输系统、语音传输系统,并且与CRTP协议兼容。
以上所述^f又为本发明的优选实施例而已,并不用于限制本发 明,对于本领域的技术人员来说,本发明可以有各种更改和变化。 凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进 等,均应包括在本发明的保护范围之内。
权利要求
1.一种压缩报文恢复方法,其特征在于,包括以下步骤第一步骤,在当前接收到的压缩报文序号为n,之前接收到的压缩报文序号为m,并且n<m或n-m>1,即,存在乱序的情况下,恢复所述当前报文的时戳;以及第二步骤,根据确定出的时间戳恢复接收到的压缩报文。
2. 根据权利要求1所述的压缩报文恢复方法,其特征在于,在所 述第一步骤中,在所述当前压缩报文携带了时戳增量时,将所述关联时 戳值、所述当前压缩报文的时戳增量值、以及当前时戳增量值 与(n-m-l)的乘积相加,其结果作为所述当前压缩才艮文的时 戳;在所述当前压缩报文未携带时戳增量时,将所述关联时戳 值和当前时戳增量值与(n-m)的乘积相加,其结果作为所述 当前压缩报文的时戳。
3. 根据权利要求1或2所述的压缩报文恢复方法,其特征在于, 在所述第一步骤之前,进一步包4舌以下步骤步骤A,接收端在接收到完整头报文后,确定所述完整 报文的时戳,并将所述时戳值作为关联时戳值用于恢复随后接 收到的压缩4艮文。
4. 根据权利要求3所述的压缩报文恢复方法,其特征在于,在所 述第二步骤之后,进一步包^"以下步骤第三步骤,在当前接收到的压缩报文序号n大于之前接 收到的压缩报文序号m的情况下,使用在所述第一步骤中恢复的所述当前压缩才艮文的时戳来更新关联时戳,即,所述关联时戳等于所述当前压缩报文的时戳o
5. 根据权利要求1所述的压缩报文恢复方法,其特征在于,在接 收到新的完整头报文后,根据所述新的完整头报文确定后续压 缩报文的时戳。
6. 根据权利要求5所述的压缩报文恢复方法,其特征在于,在当 前接收到的压缩报文序号为n,之前接收到的压缩报文序号为 m,且n-m〉2的情况下,所述接收端同时将解压关联状态报文 发送至所述发送端指示解压关联无效。
7. 根据权利要求6所述的压缩报文恢复方法,其特征在于,所述 压缩才艮文恢复方法应用于少量乱序或丢包的传输系统。
8. 根据权利要求6所述的压缩报文恢复方法,其特征在于,所述 压缩4艮文'恢复方法用于i吾音传车叙系统。
9. 4艮据权利要求6所述的压缩才艮文恢复方法,其特征在于,所述 压缩才艮文恢复方法与CRTP协议兼容。
10. —种压缩4艮文恢复装置,其特征在于,包括时戳确定才莫块,用于确定当前压缩净艮文的时戳,其中,所 述当前接收到的压缩报文序号为n,之前接收到的压缩报文序 号为m,并且n〈m或n-m〉1, 即,存在舌L序;以及压缩报文恢复模块,用于根据确定出的时戳恢复接收到的 压缩报文。
11. 根据权利要求IO所述的压缩报文恢复装置,其特征在于,在所述当前压缩报文携带了时戳增量时,所述时戳确定模块将所 述关联时戳值、所述当前压缩报文的时戳增量值、以及当前时戳增量值与(n-m-l)的乘积相加,其结果作为所述当前压缩 报文的时戳;在所述当前压缩报文未携带时戳增量时,所述时 戳确定模块将所述关联时戳值和当前时戳增量值与(n-m)的 乘积相加,其结果作为所述当前压缩才艮文的时戳。
12. 根据权利要求IO所述的压缩报文恢复装置,其特征在于,进 一步包括关联时戳确定模块,用于在当前接收到的压缩报文序 号n大于之前接收到的压缩报文序号m的情况下,使用由所 述时戳确定模块确定的所述当前压缩报文的时戳来更新关联 时戳,即,所述关联时戳等于所述当前压缩报文的时戳O
13. 根据权利要求12所述的压缩报文恢复装置,其特征在于,所 述关联时戳值确定模块还可以用于在接收到完整头报文之后 将所述时戳值确定为关联时戳值,以恢复随后接收到的压缩报文。
14. 根据权利要求12所述的压缩报文恢复方法,其特征在于,在 接收到新的完整头报文后,根据所述新的完整头报文确定后续 压缩报文的时戳。
15. 根据权利要求14所述的压缩报文恢复方法,其特征在于,在 当前接收到的压缩报文序号为n,之前接收到的压缩报文序号 为m,且n-m》的情况下,所述^r收端同时将解压关联状态 报文发送至所述发送端指示解压关联无效。
16. 才艮才居斗又利要求14所述的压缩才艮文恢复方法,其特4正在于,所 述压缩报文恢复方法应用于少量乱序和丢包的传输系统。
17. 根据权利要求14所述的压缩报文恢复方法,其特征在于,所 述压缩报文恢复方法用于语音传输系统。
18. 根据权利要求14所述的压缩报文恢复方法,其特征在于,所 述压缩才艮文恢复方法与CRTP协议兼容。
全文摘要
本发明公开了一种压缩报文恢复方法,包括以下步骤第一步骤在当前接收到的压缩报文序号为n,之前接收到的压缩报文序号为m,并且n<m或n-m>1,即,存在乱序的情况下,确定当前报文的时戳;以及第二步骤,根据确定出的时间戳恢复接收到的压缩报文。此外,本发明还提供了一种压缩报文恢复装置。通过以上技术方案,本发明实现了以下有益效果提高了压缩报文恢复的速度,从而降低了压缩报文恢复的成本,极大地提高了语音应用下的语音质量。
文档编号H04L29/06GK101102263SQ200610098469
公开日2008年1月9日 申请日期2006年7月7日 优先权日2006年7月7日
发明者李金锋 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1