移动通信中ip数据压缩的方法

文档序号:7615223阅读:180来源:国知局
专利名称:移动通信中ip数据压缩的方法
技术领域
本发明属于移动通信技术领域,更具体地说是对移动终端中语音流或视频流的IP数据头部压缩的实现方法。
背景技术
目前的VoIP(voice over IP)技术,在使用无线链路进行传输数据业务的语音流或视频流时,由于无线链路带宽有限,尤其出于对切换、多用户使用的情况的考虑,只能使用基本信道(FCH),这样带宽才为9.6kbps,因此,带宽资源显得非常紧张,语音的时延比较长,无线终端上的VoIP的实时性效果比较差。
对于数据业务来讲,每个IP数据包中包含的语音帧数和头部字符个数与网络时延的需求和带宽资源的利用有着直接的联系。
IP数据包中包含的语音帧数越多,则协议头部相对占用的带宽越少,带宽的利用率越高,但是语音的时延也越大。当IP数据包中所包含的语音帧数越少,则协议头部占用的带宽越多,带宽的利用率越低,但是语音的时延会变小。
IP数据包中包含的头部数据越多,则协议头部相对占用的带宽越多,带宽的利用率越低,同时造成数据的时延也越大;当IP数据包中包含的头部数据越少,则协议头部相对占用的带宽越少,带宽的利用率越高,同时语音的时延会越小。
CDMA系统的语音帧采样频率为20ms,即每20ms产生一个语音帧。每个编码格式为EVRC(Enhanced Variable-Rate Coder)的全速率语音帧为22个字节,而半速率语音帧为10个字节。因此,如果我们每两个语音帧通过VoIP网络协议传送一次,则需要添加RTP(12字节)+UDP(8字节)+IP(20字节)=40个字节的头部,其中RTP(Real Time TransportProtocol)是实时传输协议,UDP(User Datagram Protocol)是用户数据报协议,IP(Internet Protocol)是网际协议。目前的这种数据传输的方法对于20个字节即两个半速率帧的语音数据来讲,头部字符数据占用的带宽太大,从而造成无线资源的浪费。不但加大了网络的负载,并且增加了语音流和视频流传输的时延。

发明内容
本发明的目的,就在于克服上述缺点和不足,提供一种对移动通信中IP数据压缩的方法,具体是对RTP/UDP/IP协议的头部信息进行压缩,不需要增加硬件芯片设备,只需要嵌入该发明的软件包,就可以利用现有移动终端和分组数据服务节点PDSN的软硬件资源实现协议头部的压缩。本发明能够把原来RTP/UDP/IP包的头部长度由原来的40个字节压缩到2个字节。本发明的应用提高了带宽的利用率,节省了空中接口的无线资源,减小了语音流和视频流的传输时延,大大提高了语音和视频播放的流畅性。
本发明是一种对RTP/UDP/IP协议头部进行压缩的方法,其方法是移动通信终端和PDSN配合共同完成。移动通信终端与分组数据服务节点PDSN进行点对点协议PPP(Point to Point Protocol)协商,在PPP协商成功后,对于要发送的IP包,在终端侧对协议头部进行压缩,到达PDSN后,根据压缩协议约定,再将协议头部恢复;对于接收到的IP包,在PDSN侧对协议头部进行压缩,到达终端后,再根据协议约定将协议头部恢复。这样就节省了空中接口的资源,提高了数据的实时性。
一种移动通信中IP数据压缩的方法,包括移动通信终端和分组数据服务节点PDSN,还包括下述步骤移动通信终端与分组数据服务节点PDSN进行PPP协商,在PPP协商过程中,通过标识来识别移动终端和分组数据服务节点之间传输的IP数据包使用压缩协议;PPP协商成功后,移动通信终端把语音流和视频流的数据封装成实时传输协议RTP/用户数据报协议UDP/IP数据包,并对数据包的协议头部信息进行压缩;分组数据服务节点PDSN侧接收数据,并把压缩的RTP/UDP/IP数据包的头部信息进行解压恢复,然后提交给上层应用。
分组数据服务节点PDSN接收数据并把压缩的数据进行解压,然后以不压缩的数据方式发送给服务器。
在移动通信终端与分组数据服务节点PDSN之间的PPP协商中,把PPP option选项中的IP_COMPRESSION_PROTOCAL域填充为0x0061,标识双方所传输的IP数据包使用了压缩协议。
一种移动通信中IP数据压缩发送的方法,包括移动通信终端和分组数据服务节点PDSN,发送包括下述步骤移动终端和PDSN对生成的IP数据包,检查该数据包RTP、UDP和IP协议的头部信息,判断是否记录过该协议的头部信息;当移动终端判断头部信息没有被记录过,则记录该协议的头部信息,并且不对IP数据包进行压缩,发送带有全头部信息的IP包;同时通知对方PDSN记录该RTP/UDP/IP头部数据。
当移动终端判断头部信息已经被记录过,则对该IP数据包进行协议RTP/UDP/IP头部压缩,然后发送头部信息压缩的IP数据包,同时通知对方PDSN根据记录过的头部信息将头部信息恢复。
其具体的方法可以采取,当移动终端判断头部信息没有被记录过,则把PPP协议中的协议域设置成IP_FULL_HEADER_PROTOCOL=0x0061,当移动终端判断头部信息已经被记录过,则把PPP协议中的协议域设置成IP_COMPRESSED_RTP_8_PROTOCOL=0x0069。
一种移动通信中IP压缩数据接收的方法,包括移动通信终端和分组数据服务节点PDSN,接收还包括下述步骤移动通信终端和PDSN对于接收到的IP数据包,检查判断其是压缩帧、全头部帧还是上下文帧。
如果是压缩帧,根据其ID(identification)判断是否曾经记录该ID的头部,如果没有记录该ID的头部,则发送给对方一个上下文帧,告诉对方下一次应该发送全头部帧。如果有记录该ID的头部,则根据所记录的头部信息,把压缩帧的头部数据进行恢复,然后提交给上层应用。
如果是全头部帧,说明该IP数据包没有被对方压缩过,不需要恢复头部信息,但是需要记录该ID的头部,然后将该数据包传送给上层应用。
如果是上下文帧,说明收到的IP包是一个无法识别的数据包,或者不是自己需要的数据包,发送给对方一个上下文信息包,要求对方在发送下一个PPP数据包的时候,首先发送一个全头部帧。
如果接收方收到无法识别的IP数据包,在要求对方发送全头部帧之前,接收方所接收到的所有帧均认为有效并上交给上层应用。
如果接收方连续丢掉了三帧语音数据,则发送上下文信息包给对方,请求对方发送一个全头部帧。
发送方可以设置一个30秒的计时器用来控制发送全头部帧,当超过30秒没有数据发送时,发送方自动发送一个全头部帧。
接收方对于所接收到的PPP数据包,判断其是压缩帧、全头部帧的具体方法可以根据对方发送过来的PPP分组中协议域中的具体值,如果该域的值是IP_FULL_HEADER_PROTOCOL=0x0069,则认为是压缩帧,如果该域的值是IP_FULL_HEADER_PROTOCOL=0x0061,则认为是全头部帧。


下面结合附图和实施例对本发明作进一步的描述。
图1为本发明中一个实施例的移动通信IP数据压缩的方框图;图2为本发明中一个实施例的压缩数据发送流程图;图3为本发明中一个实施例的压缩数据的接收处理流程图;图4为本发明中一个实施例的IPCP协议域结构示意图;图5为本发明中一个实施例的数据压缩后UDP/IP头部结构示意图;图6为本发明中一个实施例的上下文信息包的结构示意图。
具体实施例方式
如图1所示,对于需要发送的IP数据包,移动通信终端MS和分组数据服务节点PDSN之间进行PPP协商,在PPP协商过程中,通过标识来进行识别移动终端和分组数据服务节点之间传输的IP数据包是否使用压缩协议。把PPP option选项中的IP_COMPRESSION_PROTOCAL域填充为0x0061,标识双方所传输的IP数据包使用了压缩协议。
双方的PPP协商成功后,移动通信终端MS把语音流和视频流的数据封装成RTP/UDP/IP数据包,并对需要传送的RTP/UDP/IP数据进行头部压缩。在分组数据服务节点PDSN侧,接收数据并把压缩的数据进行解压,然后以不压缩的数据方式发送给服务器。同样,对于从PoC服务器接收的数据,在分组数据服务节点PDSN侧也进行RTP/UDP/IP数据头部压缩,以压缩数据的方式传送给目的地移动终端。这样,在空中接口传输的数据均是经过压缩的数据,节省了无线带宽的资源,减小了数据传输的时延。
对无线通信中IP数据包的RTP/UDP/IP协议头部进行压缩的具体规定是以RFC2507/RFC2508/RFC2509协议规范(基于PPP协议之上的IP头部压缩规范)为基础的。
如图2所示,当移动通信终端和分组数据服务节点PDSN之间的PPP压缩协商成功后,移动终端和PDSN对生成的IP数据包,首先检查该数据包RTP、UDP和IP协议的头部信息,判断一下是否曾经记录过该协议的头部信息。
如果移动终端判断该协议的头部信息没有被记录过,则记录该协议的头部信息,并且不对IP数据包进行压缩,这种情况下需要发送带有全头部信息的IP包。同时移动通信终端把PPP协议中的协议域设置成IP_FULL_HEADER_PROTOCOL=0x0061,告诉PDSN,这次发送的IP数据包是没有经过头部信息压缩的数据包,通知对方PDSN记录该RTP/UDP/IP头部数据。
如果移动终端判断头部信息已经被记录过,则对该IP数据包进行协议RTP/UDP/IP头部压缩,然后发送头部信息压缩的IP数据包,同时把PPP协议中的协议域设置成IP_COMPRESSED_RTP_8_PROTOCOL=0x0069,告诉PDSN,这次发送的IP数据包是经过头部信息压缩的数据包,通知对方PDSN根据记录过的头部信息将头部信息恢复。
如图3所示,当移动通信终端和PDSN之间的PPP压缩协商成功后,对于接收到的IP数据包,首先检查判断其是压缩帧、全头部帧还是上下文帧。
如果是压缩帧,说明该IP数据包已经被对方压缩过了,可以根据其ID(identification)判断是否曾经记录该ID的头部,如果没有记录该ID的头部,则发送给对方一个上下文帧,告诉对方下一次应该发送全头部帧。如果有记录该ID的头部,则根据所记录的头部信息,把压缩帧的头部数据进行恢复,然后提交给上层应用。
如果是全头部帧,说明该IP数据包没有被对方压缩过,不需要恢复头部信息,但是需要首先记录该ID的头部,然后将该数据包传送给上层应用。
如果是上下文帧,说明收到的IP包是一个无法识别的数据包,或者不是自己需要的数据包,但对于接收到的该帧仍然认为是有效的,并传输给上层应用。而且发送给对方一个上下文信息包,告诉对方自己的需求,要求对方在发送下一个PPP数据包的时候,首先发送一个全头部帧。在接收到对方发送的全头部帧以前,接收到的所有帧均认为有效并上交给上层应用。如果接收方连续丢掉了三帧语音数据,则发送上下文信息包给对方,请求对方发送一个全头部帧。
可以设置一个30秒的计时器用来控制发送全头部帧,当超过30秒没有数据发送时,发送方自动发送一个全头部帧。
对于接收到的PPP数据包,判断其是压缩帧、全头部帧的具体方法可以根据对方发送过来的PPP分组中协议域中的具体值,如果该域的值是IP_FULL_HEADER_PROTOCOL=0x0069,则是压缩帧,如果该域的值是IP_FULL_HEADER_PROTOCOL=0x0061,则是全头部帧。
如图4所示,对于需要发送的IP数据包,移动通信终端和分组数据服务节点PDSN之间进行PPP协商,本示意图是PPP协商过程中IPCP(The PPP Internet Protocol Control Protocol)子过程需要添加的与压缩有关的域。移动终端和PDSN就是根据这些域知道对方要使用何种压缩协议。图中IP_compress_protocol=0x0061,标识双方在传输的IP数据包中使用压缩协议。
其中Type域表示该IPCP数据帧类型;Length域表示该IPCP帧长度;IP_compress_protocol表示使用压缩协议的类型;TCP_SPACE表示允许最多同时进行的TCP会话数;TCP_SPACE表示允许最多同时进行的UDP会话数;F_MAX_PERIOD表示两个全头部帧之间的最大帧数间隔;F_MAX_TIME表示两个全头部帧之间的最大时间间隔;MAX_HEADER表示允许被压缩的最大的头部长度;Suboptions表示后边是否还有参数。
如图5所示,是压缩后的UDP和IP的头部结构。没有压缩的UDP和IP头部共是28个字节,经过压缩后,头部仅剩下2个字节,大大的减小了头部负载。
其中,session context ID表示IP/UDP会话(即上下文)的序号;I表示IP分组标识;Link sequence表示该帧的序列号。
如图6所示,是上下文信息帧。这是为了压缩协议而新增加的一种帧结构。该帧的目的是告诉对方,自己收到了一个无法识别的数据帧或是错误的帧,需要对方发送一个全头部帧来纠正错误。该数据帧在整个连接过程中出现的几率很小。其占用的带宽可以忽略不计。
其中,IP/UDP/RTP with 8-bit CID表示上下文ID占8比特;Context count用来进行对上下文统计;session context ID表示IP/UDP会话(即上下文)的序号;I表示该帧要求发送全头部帧还是查看上下文状态;Sequence表示该帧序号;Generation为以后IPv6协议使用。
实施例1,移动终端同服务器之间进行IP语音数据通信,首先移动终端与PDSN进行压缩协议协商,即通过PPP点对点协议的IPCP子协议进行压缩协商,协商成功后,移动终端发送一个全头部IP数据帧,此时移动终端和PDSN根据该全头部帧记住RTP/UDP/IP头部信息,然后移动终端就可以连续发送压缩数据帧。数据经过压缩后,对于两帧半速率语音帧,负载为语音数据(20字节)+语音头部(1字节)+RTP头部(1字节)+UDP/IP压缩头部(2字节/不带校验和)+PPP头部(5字节)=29压缩率为(66-29)/66=56%实施例1实现的功能目标为两帧语音帧能够在一个基本信道(FCH)上正常传输,不会引起网络阻塞或拥塞。
权利要求
1.一种移动通信中IP数据压缩的方法,包括移动通信终端和分组数据服务节点PDSN,其特征在于包括下述步骤移动通信终端与分组数据服务节点PDSN进行PPP协商,在PPP协商过程中,通过标识来识别移动终端和分组数据服务节点之间传输的IP数据包使用压缩协议;PPP协商成功后,移动通信终端把语音流和视频流的数据封装成实时传输协议RTP/用户数据报协议UDP/IP数据包,并对数据包的协议头部信息进行压缩;分组数据服务节点PDSN侧接收数据,并把压缩的RTP/UDP/IP数据包的头部信息进行解压恢复,然后提交给上层应用。
2.根据权利要求1所述的移动通信中IP数据压缩的方法,其特征在于分组数据服务节点PDSN接收数据并把压缩的数据进行解压,然后以不压缩的数据方式发送给服务器。
3.根据权利要求1所述的移动通信中IP数据压缩的方法,其特征在于PPP协商中,把PPP option选项中的IP_COMPRESSION_PROTOCAL域填充为0x0061,标识双方所传输的IP数据包使用了压缩协议。
4.一种移动通信中IP数据压缩发送的方法,包括移动通信终端和分组数据服务节点PDSN,其特征在于包括下述步骤移动终端和PDSN对生成的IP数据包,检查该数据包RTP、UDP和IP协议的头部信息,判断是否记录过该协议的头部信息;当移动终端判断头部信息没有被记录过,则记录该协议的头部信息,并且不对IP数据包进行压缩,发送带有全头部信息的IP包;同时通知对方PDSN记录该RTP/UDP/IP头部数据。当移动终端判断头部信息已经被记录过,则对该IP数据包进行协议RTP/UDP/IP头部压缩,然后发送头部信息压缩的IP数据包,同时通知对方PDSN根据记录过的头部信息将头部信息恢复。
5.根据权利要求4所述的移动通信中IP数据压缩发送的方法,其特征在于当移动终端判断头部信息没有被记录过,把PPP协议中协议域置成IP_FULL_HEADER_PROTOCOL=0x0061。
6.根据权利要求4所述的移动通信中IP数据压缩发送的方法,其特征在于当移动终端判断头部信息已经被记录,把PPP协议中的协议域置成IP_COMPRESSED_RTP_8_PROTOCOL=0x0069。
7.一种移动通信中IP压缩数据接收的方法,包括移动通信终端和分组数据服务节点PDSN,其特征在于包括下述步骤移动通信终端和PDSN对于接收到的IP数据包,检查判断其是压缩帧、全头部帧还是上下文帧。如果是压缩帧,根据其ID(identification)判断是否曾经记录该ID的头部,如果没有记录该ID的头部,则发送给对方一个上下文帧,告诉对方下一次应该发送全头部帧。如果有记录该ID的头部,则根据所记录的头部信息,把压缩帧的头部数据进行恢复,然后提交给上层应用。如果是全头部帧,说明该IP数据包没有被对方压缩过,不需要恢复头部信息,需要记录该ID的头部,然后将该数据包传送给上层应用。如果是上下文帧,说明收到的IP包是一个无法识别的数据包,或者不是自己需要的数据包,发送给对方一个上下文信息包,要求对方在发送下一个PPP数据包的时候,首先发送一个全头部帧。
8.根据权利要求7所述的移动通信中IP压缩数据接收的方法,其特征在于接收方收到无法识别的IP数据包,要求对方发送全头部帧之前,接收方所接收到的所有帧均认为有效并上交给上层应用。
9.根据权利要求7所述的移动通信中IP压缩数据接收的方法,其特征在于当接收方连续丢掉了三帧语音数据,则发送上下文信息包给对方,请求对方发送一个全头部帧。
10.根据权利要求7所述的移动通信中IP压缩数据接收的方法,其特征在于发送方设置一个30秒的计时器用来控制发送全头部帧,当超过30秒没有数据发送时,发送方自动发送一个全头部帧。
11.根据权利要求7所述的移动通信中IP压缩数据接收的方法,其特征在于接收方对所接收到的PPP数据包,判断其是压缩帧、全头部帧的具体方法可以根据对方发送过来的PPP分组中协议域中的值,如果该域的值是IP_FULL_HEADER_PROTOCOL=0x0069,则是压缩帧,如果该域的值是IP_FULL_HEADER_PROTOCOL=0x0061,则是全头部帧。
全文摘要
本发明提供了一种移动通信中IP数据压缩的方法,包括移动通信终端和分组数据服务节点PDSN,移动通信终端与PDSN进行PPP协商,移动通信终端把语音流和视频流的数据封装成RTP/UDP/IP数据包,并对数据包的协议头部信息进行压缩,PDSN侧接收数据,并把数据包的头部信息解压,然后提交给上层应用,本发明提高了带宽的利用率,节省了空中接口的无线资源,减小了语音流和视频流的传输时延,提高了语音和视频播放的流畅性。
文档编号H04L12/56GK1777175SQ20051004441
公开日2006年5月24日 申请日期2005年8月20日 优先权日2005年8月20日
发明者万初旭, 朱平洋, 周春松 申请人:海信集团有限公司, 青岛海信移动通信技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1