CN100428733C - Error recovery method and device for IP header compression in mobile communication network - Google Patents
Error recovery method and device for IP header compression in mobile communication network Download PDFInfo
- Publication number
- CN100428733C CN100428733C CNB2004100584292A CN200410058429A CN100428733C CN 100428733 C CN100428733 C CN 100428733C CN B2004100584292 A CNB2004100584292 A CN B2004100584292A CN 200410058429 A CN200410058429 A CN 200410058429A CN 100428733 C CN100428733 C CN 100428733C
- Authority
- CN
- China
- Prior art keywords
- header
- data packet
- error recovery
- packet
- decompressor
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种移动通信网络中IP报头压缩的错误恢复方法,用于提升发射单元和接收单元之间的数据传输效率,包括步骤:在接收单元设置数据包系列号增量门限值;当接收单元接收到语音数据包时,报头解压缩器判断其系列号相对前一语音数据包的系列号的增量是否小于前述门限值,如果是,则表示压缩通信过程正常;如果否,则报头解压缩器将会话环境置为无效。本发明还公开了一种应用该方法的错误恢复装置。
The invention discloses an error recovery method for IP header compression in a mobile communication network, which is used to improve the data transmission efficiency between a transmitting unit and a receiving unit. When the receiving unit received the voice data packet, the header decompressor judged whether the increment of its serial number relative to the serial number of the previous voice data packet was less than the aforementioned threshold value, if yes, then it represented that the compressed communication process was normal; if not, The header decompressor then invalidates the session context. The invention also discloses an error recovery device applying the method.
Description
技术领域 technical field
本发明涉及移动通信网络中的VoIP(Voice Over IP)语音业务,特别是涉及一种提高发射单元和接收单元之间传输的数据包的IP(Internet Protocol)报头压缩效率的方法。The invention relates to a VoIP (Voice Over IP) voice service in a mobile communication network, in particular to a method for improving the compression efficiency of an IP (Internet Protocol) header of a data packet transmitted between a transmitting unit and a receiving unit.
背景技术 Background technique
VoIP语音业务又称IP电话,是一种通过IP网络传输语音的通信技术,即基于IP网络的语音传输技术。目前,VoIP已经广泛应用于有线通信系统中,为用户提供了廉价而高质量的语音业务。VoIP voice service, also known as IP phone, is a communication technology that transmits voice through an IP network, that is, a voice transmission technology based on an IP network. At present, VoIP has been widely used in wired communication systems, providing users with cheap and high-quality voice services.
随着移动通信技术的高速发展,在世界范围引进建立了若干张成熟的GSM/CDMA/WCDMA网络,CDMA 1X移动分组交换网络已经可以为用户提供高速数据业务。通过移动分组交换网络为用户提供高质量的VoIP语音业务和其他增值业务是当前的热门话题。With the rapid development of mobile communication technology, several mature GSM/CDMA/WCDMA networks have been introduced and established around the world, and the CDMA 1X mobile packet switching network can already provide users with high-speed data services. It is a current hot topic to provide users with high-quality VoIP voice services and other value-added services through mobile packet switching networks.
而提供高质量的VoIP语音业务的关键技术之一是IP头压缩(IPHC,IPHeaders Compressing)技术,如RFC2507、RFC2508等压缩协议定义的压缩技术。采用IP头压缩技术RFC2508后,能够将40字节的IP/UDP/RTP头压缩成最小2字节,当使用CheckSum(校验和)时,最小压缩成4字节。One of the key technologies for providing high-quality VoIP voice services is IP header compression (IPHC, IPHeaders Compressing) technology, such as the compression technologies defined by compression protocols such as RFC2507 and RFC2508. After using the IP header compression technology RFC2508, the 40-byte IP/UDP/RTP header can be compressed to a minimum of 2 bytes, and when using CheckSum (checksum), the minimum compression is 4 bytes.
所述IP头压缩技术RFC2508可以参阅Casner,S.and V.Jacobson,″Compressing IP/UDP/RTP Headers for Low-Speed Serial Links″,RFC 2508,February 1999.The IP header compression technology RFC2508 can refer to Casner, S.and V.Jacobson, "Compressing IP/UDP/RTP Headers for Low-Speed Serial Links", RFC 2508, February 1999.
IP头压缩技术RFC2508可以应用于固定通信系统和移动通信系统中。在发射站,整个报头信息被报头压缩器进行压缩,并且这个被压缩的报头信息通过无线通信链路被传送;在接收站,一个报头解压缩器从接收的所述被压缩的报头信息中重建整个报头,从而减少为传送报头信息所必需的无线通信链路资源的数量。The IP header compression technology RFC2508 can be applied to fixed communication systems and mobile communication systems. At the transmitting station, the entire header information is compressed by a header compressor, and this compressed header information is transmitted over a wireless communication link; at the receiving station, a header decompressor reconstructs from the received compressed header information The entire header, thereby reducing the amount of wireless communication link resources necessary to transmit the header information.
在通信过程中,经常由于各种因素而导致出现错误。RFC2508协议中描述了其建议的错误恢复机制:In the communication process, errors often occur due to various factors. The RFC2508 protocol describes its proposed error recovery mechanism:
除FULL_HEADER包外,当出现会话环境的系列号增量不为1的情况时,报头解压缩器认为当前会话环境无效,并发送CONTEXT_STATE数据包给报头压缩器;并且,报头解压缩器认为当前接收到的压缩数据包无效而将其丢弃,直到收到FULL_HEADER包才重新建立会话环境。Except for the FULL_HEADER package, when the serial number increment of the session environment is not 1, the header decompressor considers the current session environment invalid, and sends a CONTEXT_STATE packet to the header compressor; and, the header decompressor considers that the currently received If the received compressed data packet is invalid, it will be discarded, and the session environment will not be re-established until the FULL_HEADER packet is received.
所述IP头压缩技术RFC2508虽然可以实现有效的错误恢复以保证通话质量。但是当其应用于移动分组交换网络时,具有一些不足之处。Although the IP header compression technology RFC2508 can realize effective error recovery to ensure call quality. But when it is applied to the mobile packet switching network, it has some disadvantages.
首先,基于移动分组交换网络实现VoIP语音业务时,由于移动终端(MS)与基站(BTS)之间的无线通信链路在语音数据包的传输中,发生丢失数据包的概率较大,并且无线资源较为有限,且少量数据包的丢失并不会影响VoIP语音质量。如果按照RFC2508协议的规定,当系列号增量不为1时,报头解压缩器将会话环境置为无效,并发送CONTEXT_STATE包给报头压缩器;报头压缩器收到CONTEXT_STATE数据包,发送一个FULL_HEADER帧以重新建立会话环境。这样会导致解压器频繁的发送CONTEXT_STATE数据包,会占有过多的压缩的反向信道带宽,影响无线链路的传输效率。First of all, when implementing VoIP voice services based on the mobile packet switching network, since the wireless communication link between the mobile terminal (MS) and the base station (BTS) is in the transmission of voice data packets, the probability of losing data packets is relatively high, and the wireless Resources are relatively limited, and the loss of a small amount of data packets will not affect the VoIP voice quality. According to the RFC2508 protocol, when the serial number increment is not 1, the header decompressor invalidates the session environment and sends a CONTEXT_STATE packet to the header compressor; the header compressor receives a CONTEXT_STATE packet and sends a FULL_HEADER frame to re-establish the session environment. This will cause the decompressor to frequently send CONTEXT_STATE data packets, which will occupy too much compressed reverse channel bandwidth and affect the transmission efficiency of the wireless link.
其次,VoIP语音业务为实时语音媒体流业务,通话过程中,虽然个别语音媒体数据包的丢失不会影响VoIP话音质量,允许丢弃个别语音媒体数据包。但是按照RFC2508协议的规定,当系列号发生跳变时,无论跳变多少,报头解压缩器认为已经不能完整的解压原始数据包,故建议丢弃该数据包。而由上述分析可知,无线通信链路在语音数据包的传输中,发生丢失数据包的概率较大,这样将导致报头解压缩器频繁丢弃数据包,从而增加由于压缩导致语音质量下降的可能。Secondly, the VoIP voice service is a real-time voice media streaming service. During a call, although the loss of individual voice media data packets will not affect the VoIP voice quality, individual voice media data packets are allowed to be discarded. However, according to the RFC2508 protocol, when the serial number jumps, no matter how much it jumps, the header decompressor thinks that the original data packet cannot be completely decompressed, so it is recommended to discard the data packet. From the above analysis, it can be seen that in the transmission of voice data packets in the wireless communication link, the probability of losing data packets is relatively high, which will cause the header decompressor to frequently discard data packets, thereby increasing the possibility of voice quality degradation due to compression.
发明内容 Contents of the invention
本发明解决的技术问题在于提供一种移动通信网络中IP报头压缩的错误恢复方法及装置,可以有效地提高无线链路的传输效率。The technical problem solved by the present invention is to provide an error recovery method and device for IP header compression in a mobile communication network, which can effectively improve the transmission efficiency of a wireless link.
为此,本发明解决技术问题的技术方案是:提供一种移动通信网络中IP报头压缩的错误恢复方法,用于提升发射单元和接收单元之间的数据传输效率,包括步骤:For this reason, the technical scheme that the present invention solves technical problem is: provide a kind of error recovery method of IP header compression in the mobile communication network, be used to promote the data transmission efficiency between transmitting unit and receiving unit, comprise steps:
1)在接收单元设置数据包系列号增量门限值;1) Set the incremental threshold value of the serial number of the data packet at the receiving unit;
2)当接收单元接收到语音数据包时,报头解压缩器判断其系列号相对前一语音数据包的系列号的增量是否小于前述门限值,如果是,则表示压缩通信过程正常;如果否,则进入步骤3);2) when the receiving unit received the voice data packet, the header decompressor judged whether the increment of its serial number relative to the serial number of the previous voice data packet was less than the aforementioned threshold value, if so, then it represented that the compressed communication process was normal; if If not, go to step 3);
3)报头解压缩器将会话环境置为无效。3) The header decompressor invalidates the session context.
优选的,所述步骤3)中还包括报头解压缩器发送CONTEXT_STATE包给发射单元的报头压缩器。Preferably, the step 3) further includes the header decompressor sending the CONTEXT_STATE packet to the header compressor of the transmitting unit.
优选的,所述步骤3)之后还包括报头压缩器接收到CONTEXT_STATE数据包,发送FULL_HEADER帧给报头解压缩器。Preferably, after the step 3), the header compressor further includes receiving the CONTEXT_STATE data packet, and sending the FULL_HEADER frame to the header decompressor.
优选的,所述步骤3)之后还包括报头压缩器重建会话环境。Preferably, after the step 3), the header compressor is further included to rebuild the session environment.
优选的,还包括步骤:当报头解压缩器检测到语音数据包的系列号发生跳变时,判断是否为相同会话环境,如果是,则报头解压缩器保存已经正确解压的语音数据包。Preferably, it also includes the step of: when the header decompressor detects that the serial number of the voice data packet jumps, it is judged whether it is the same session environment, if yes, the header decompressor saves the voice data packet that has been correctly decompressed.
优选的,还包括步骤:Preferably, also include steps:
4)在发射单元设置定时器;4) setting a timer in the transmitting unit;
5)当发射单元发送语音数据包时,报头压缩器判断其与前一语音数据包的时间间隔是否小于定时器的值,如果是,则压缩报头后发送;如果否,则在发送后续发送的第一个数据包时重建会话环境。5) When the transmitting unit sends the voice data packet, the header compressor judges whether the time interval between it and the previous voice data packet is less than the value of the timer, if yes, then send after compressing the header; if not, send the following message The first packet rebuilds the session context.
优选的,所述步骤5)中报头压缩器采用全头帧格式发送后续发送的第一个数据包。Preferably, in the step 5), the header compressor uses the full header frame format to send the first data packet to be sent subsequently.
本发明还提供了一种移动通信网络中IP报头压缩的错误恢复装置,用于提升发射单元和接收单元之间的数据传输效率,包括报头压缩器、报头解压缩器;还包括位于接收单元的数据包系列号增量门限值设置器,用于设置数据包系列号增量门限值;所述报头解压缩器在接收到语音数据包时,根据所述系列号增量门限值决定是否将会话环境设为无效。The present invention also provides an error recovery device for IP header compression in a mobile communication network, which is used to improve the data transmission efficiency between the transmitting unit and the receiving unit, including a header compressor and a header decompressor; A data packet serial number incremental threshold value setter is used to set a data packet serial number incremental threshold value; when the header decompressor receives a voice data packet, it determines according to the serial number incremental threshold value Whether to invalidate the session context.
优选的,:还包括位于发射单元的定时器;所述报头压缩器在发送语音数据包时,根据定时器的值决定是否重建会话环境。Preferably, a timer located in the transmitting unit is also included; when the header compressor sends the voice data packet, it decides whether to rebuild the session environment according to the value of the timer.
优选的,所述定时器集成在报头压缩器内或与报头压缩器分立。。Preferably, the timer is integrated in the header compressor or separated from the header compressor. .
相对于现有技术,本发明的有益效果是:首先,由于本发明设置系列号增量门限值,仅仅当系列号增量大于门限值,报头解压缩器才将会话环境置为无效并发送CONTEXT_STATE包给压缩器。能够有效的减小报头解压缩器发送CONTEXT_STATE数据包的频率,从而不至于占有过多的压缩的反向信道带宽,减少对无线链路的传输效率的影响。Compared with the prior art, the beneficial effects of the present invention are: first, because the present invention sets the serial number increment threshold value, only when the serial number increment is greater than the threshold value, the header decompressor just sets the session environment as invalid and Send a CONTEXT_STATE packet to the compressor. It can effectively reduce the frequency of sending the CONTEXT_STATE data packet by the header decompressor, so as not to occupy too much compressed reverse channel bandwidth, and reduce the impact on the transmission efficiency of the wireless link.
此外,由于在相同会话环境,当系列号发生跳变时,无论跳变多少,解压器均不丢弃已经解压的数据包,能够最大限度的保护语音的完整,减少由于压缩导致语音质量下降的可能。这是由于虽然部分头域解压错误,但数据包的内容正确,并不影响路由。In addition, because in the same session environment, when the serial number jumps, no matter how many jumps, the decompressor will not discard the decompressed data packets, which can protect the integrity of the voice to the greatest extent and reduce the possibility of voice quality degradation due to compression . This is because although some header fields are decompressed incorrectly, the content of the data packet is correct and does not affect routing.
另外,由于设置定时器,在长时间没有数据包发送后,,后续发送的第一个数据包使用全头帧FULL_HEADER格式发送。这样能够有效地避免会话环境的不同步。保证一定时间空闲之后不会出现错包,对报头压缩器与报头解压缩器之间的压缩环境的稳定提高了保证。In addition, due to the setting of the timer, after no data packet is sent for a long time, the first data packet to be sent subsequently will be sent using the FULL_HEADER format. This can effectively avoid the desynchronization of the session environment. It is guaranteed that no error packets will occur after a certain period of idle time, which improves the stability of the compression environment between the header compressor and the header decompressor.
附图说明 Description of drawings
图1是基于CDMA 1X分组交换网络的VoIP语音通信系统的总体架构图;Fig. 1 is the overall architecture diagram of the VoIP voice communication system based on CDMA 1X packet switching network;
图2是本发明错误恢复方法的流程图;Fig. 2 is the flowchart of error recovery method of the present invention;
图3是本发明错误恢复方法中进一步稳定会话环境的流程图;Fig. 3 is a flow chart of further stabilizing the conversation environment in the error recovery method of the present invention;
图4是本发明错误恢复装置的示意图。Fig. 4 is a schematic diagram of the error recovery device of the present invention.
具体实施方式 Detailed ways
在移动通信系统中,无线链路具有高误码率、有限带宽和环回时间长的特点,VoIP语音数据包在传输过程中偶尔丢失一个对语音质量几乎没有影响;并且具有静音期间终端不发送语音数据包的特点。结合无线链路的特点以及VoIP语音业务的特点,本发明对现有的IP头压缩协议进行有效的优化。通过优化以提高压缩效率,为VoIP语音质量提供有力的保障。In the mobile communication system, the wireless link has the characteristics of high bit error rate, limited bandwidth and long loopback time. The occasional loss of a VoIP voice data packet during transmission has little effect on the voice quality; Characteristics of voice packets. Combined with the characteristics of the wireless link and the characteristics of the VoIP voice service, the present invention effectively optimizes the existing IP header compression protocol. Through optimization to improve compression efficiency, it provides a strong guarantee for VoIP voice quality.
请参阅图1,是基于CDMA 1X分组交换网络的VoIP语音通信系统的总体架构图。其中,移动终端(MS)110与CDMA 1X分组交换节点(PDSN)120之间建立PPP连接,互为发射方与接收方,VOIP业务的会话控制由VOIP控制中心130负责。Please refer to Figure 1, which is an overall architecture diagram of a VoIP voice communication system based on a CDMA 1X packet switching network. Wherein, a PPP connection is established between the mobile terminal (MS) 110 and the CDMA 1X packet switching node (PDSN) 120, and they are transmitters and receivers each other, and the session control of the VOIP service is in charge of the
在移动通信网的VOIP业务过程中,移动终端110将模拟语音信号经过模/数转换、进行编码压缩后,按一定的打包规则将压缩帧转换成IP数据包,通过分组交换节点(PDSN)120传输到互联网(Internet),IP数据包在Internet上路由到被叫移动终端(图未示)所在的分组交换节点(图未示);在被叫移动终端进行数据解压、数/模转换复原成语音,从而达到语音通信的目的。In the VOIP service process of the mobile communication network, the
在移动终端110与固定电话140互通时,当固定电话140为主叫时,由媒体网关150负责将模拟信号转换为数字信号并压缩打包,成为可以在Internet上传输的分组语音信号,然后通过Internet传送到移动终端110。当固定电话140为被叫时,由媒体网关150进行分组数据的解包、解压和解码,还原为可被识别的模拟语音信号,再通过公共电话网络(PSTN)传到固定电话140。When the
为了节省无线链路资源,在VoIP业务过程中,在移动终端110与CDMA1X分组交换节点120之间实现IP头压缩技术。In order to save wireless link resources, the IP header compression technology is implemented between the
需要说明的是,本发明的实施例中,基于RFC2508(CompressingIP/UDP/RTPHeaders for Low-Speed Serial Links)协议实现IP报头压缩,并且实现了错误恢复过程的优化。It should be noted that, in the embodiment of the present invention, the IP header compression is realized based on the RFC2508 (CompressingIP/UDP/RTPHeaders for Low-Speed Serial Links) protocol, and the optimization of the error recovery process is realized.
IP报头压缩的压缩目标为在不发送UDP校验的情况下,将大部分数据包的IP/UDP/RTP头压缩到2个字节,在带UDP校验和时则压缩至4个字节。The compression goal of IP header compression is to compress the IP/UDP/RTP header of most data packets to 2 bytes without sending UDP checksum, and compress it to 4 bytes with UDP checksum .
压缩技术的基本思想是:在串行链路建立后,在链路保持期间,由于IP/UDP/RTP头域中大部分字段保持不变,根据这一特点,在发送一个未压缩的数据包后,可以将这些字段从后续压缩头中删除,并且对变化字段进行差分编码,以便减小字段长度。The basic idea of the compression technology is: After the serial link is established, during the link maintenance period, since most fields in the IP/UDP/RTP header field remain unchanged, according to this feature, when sending an uncompressed data packet After that, these fields can be deleted from subsequent compressed headers, and the changed fields can be differentially encoded in order to reduce the field length.
其中,对TCP头压缩的研究发现,IP和TCP头有一半的字节在整个连接期间保持不变,这正是降低数据率的两个要素中的首要因素。因此,在发送一次未压缩头之后,可以将这些字段从其后的压缩头中除去。其余的压缩来自对变化字段进行区分编码以减少长度,以及在通常情况下根据包长度计算变化而完全删除掉变化字段。这一长度由链路层协议指示。Among them, the research on TCP header compression found that half of the bytes of the IP and TCP headers remain unchanged during the entire connection, which is the primary factor among the two elements that reduce the data rate. Therefore, after sending an uncompressed header, these fields can be removed from subsequent compressed headers. The rest of the compression comes from differentially encoding the change field to reduce length, and in the usual case calculating the change based on the packet length to remove the change field entirely. This length is dictated by the link layer protocol.
对于RTP头的压缩也可以采用一些相同的技术。尽管每个包中总有几个字节要发生变化,但包与包之间的区别却是恒定的,因此二次差分为0。在会话期间,通过维护压缩与解压器共享的未压缩头与一次差分序列,所需通信的便只有二次差分为0的指示了。在这种情况下,如果不考虑任何信息丢失,则解压器在收到一个压缩包后可以通过将一次差分结果加到保存的未压缩头来重建原始包头。Some of the same techniques can also be used for the compression of the RTP header. Although there are always a few bytes to change in each packet, the difference from packet to packet is constant, so the quadratic difference is 0. During a session, by maintaining the uncompressed header and primary difference sequence shared by the compressor and decompressor, all that needs to be communicated is an indication that the second difference is zero. In this case, if no loss of information is considered, the decompressor after receiving a compressed packet can reconstruct the original packet header by adding the result of a difference to the saved uncompressed header.
在RTP头中,作为特定环境标识的一部分,给定的环境的SSRC标识符是恒定不变的。对大多数包而言,只有系列号和时间戳是因包而异的。如果没有包丢失或者乱序,系列号应按步进值1逐包改变。对音频包,时间戳应按采样周期增加。对于视频,时间戳在每帧的第一个包是发生改变,而在后面该帧的其它包中保持不变。如果每个视频帧只占据一个包,且视频帧按照恒定的速率产生,则帧与帧之间时间戳的变化也是恒定的。In the RTP header, the SSRC identifier for a given context is constant as part of the context-specific identification. For most packages, only the serial number and timestamp are package-specific. If no packets are lost or out of sequence, the sequence number shall be changed packet by packet by a step value of 1. For audio packets, the timestamp shall increase by the sample period. For video, the timestamp changes on the first packet of each frame and stays the same for the rest of the frame. If each video frame occupies only one packet, and video frames are generated at a constant rate, the change in timestamp from frame to frame is also constant.
注意到每当这种情况出现,系列号和时间戳字段的二次差分均为0,所以下一个包头的相应字段值可通过前一个未压缩包头的该字段加上存在会话环境一次差分值得到。当二次差分不为0时,变化量通常也要远小于字段中所有位的数目,所以可通过对新的一次差分进行编码并传输该编码来达到压缩的目的,不用传输绝对值。Note that whenever this happens, the second difference of the serial number and timestamp fields is 0, so the corresponding field value of the next packet header can be obtained by adding the first difference value of the existing session environment to the field of the previous uncompressed packet header . When the second difference is not 0, the amount of change is usually much smaller than the number of all bits in the field, so the purpose of compression can be achieved by encoding the new first difference and transmitting the code, without transmitting the absolute value.
在报头压缩器与报头解压缩器之间维持一个状态可靠的共享信息集。对于每个IP/UDP/RTP数据包流根据数据包的源IP地址、目的IP地址、UDP端口对、RTP的SSRC字段的组合建立一个会话环境,并使用会话环境ID标识。通常,每个会话环境通过一个8位或者16位的标识符来标识,具体范围要根据协商的环境数量决定,所以最大值为65536。会话环境中包含如下信息:A state-reliable set of shared information is maintained between the header compressor and header decompressor. For each IP/UDP/RTP data packet flow, a session environment is established according to the combination of the source IP address of the data packet, the destination IP address, the UDP port pair, and the SSRC field of RTP, and is identified by the session environment ID. Usually, each session context is identified by an 8-bit or 16-bit identifier, and the specific range depends on the number of negotiated contexts, so the maximum value is 65536. The session environment contains the following information:
1、完整的IP/UDP/RTP头1. Complete IP/UDP/RTP header
2、IPV4ID字段的一次差分结果2. The primary difference result of the IPV4ID field
3、RTP时间戳的一次差分结果3. One-time difference result of RTP timestamp
4、最后一个数据包中的系列号,检测通信过程中数据包的丢失情况。4. The serial number in the last data packet, to detect the loss of data packets during the communication process.
当然,会话环境中还可以包括一些其他信息。Certainly, some other information may also be included in the session environment.
在一个会话环境中,报头压缩器与报头解压缩器之间发送数据包的顺序使用系列号进行标识,通过所述系列号就可以检测在压缩通信过程中数据包是否丢失。In a session environment, the order in which data packets are sent between the header compressor and the header decompressor is identified by a serial number, and whether the data packet is lost during the compressed communication process can be detected through the serial number.
也就是说,未压缩和压缩的包都必须携带会话环境ID和一个4位的用来检测包通信中丢失的系列号。每个会话环境都有自己的系列号空间,所以单个包的丢失只会影响到一个会话环境。That is, both uncompressed and compressed packets must carry the session context ID and a 4-bit sequence number used to detect loss in packet communication. Each session context has its own sequence number space, so the loss of a single packet will only affect one session context.
报头解压缩器在实现时可以对这些字段使用哈希函数来检索存储的会话环境列表。压缩包携带一个称为会话环境标识符或者CID的小整数来指示该数据包应该解释到哪个会话环境中。解压缩方可以使用CID直接在存储的环境列表中来进行检索。A header decompressor can be implemented to use a hash function on these fields to retrieve a stored list of session contexts. Compressed packets carry a small integer called the Session Context Identifier, or CID, to indicate into which session context the packet should be interpreted. The decompressor can use the CID to retrieve it directly from the stored environment list.
为了顺利地实现压缩通信过程,RFC2508协议中定义了4种类型的数据包:In order to realize the compressed communication process smoothly, four types of data packets are defined in the RFC2508 protocol:
FULL_HEADER,未压缩IP头的数据包或称为全头帧,该数据包中携带有会话环境ID和系列号等信息用来建立双方的同步。报头解压缩器在接收到该数据包后建立会话环境。FULL_HEADER, uncompressed IP header data packet or full header frame, which carries information such as session environment ID and serial number to establish synchronization between the two parties. The header decompressor establishes the session context after receiving the packet.
COMPRESSED_UDP,压缩IP/UDP头的数据包,其中的RTP头未经过压缩。用于传送压缩到6字节或更少字节(如禁用UDP校验和则通常为2字节)的IP和UDP头,后面是任何未压缩形式的后续头(可能为RTP)和数据。当RTP头的常量字段有所不同时才使用该数据包类型。COMPRESSED_UDP, compressed IP/UDP header packets, the RTP header is not compressed. Used to deliver IP and UDP headers compressed to 6 bytes or less (typically 2 bytes if UDP checksums are disabled), followed by any subsequent headers (possibly RTP) and data in uncompressed form. This packet type is only used when the constant field of the RTP header is different.
COMPRESSED_RTP,压缩IP/UDP/RTP头的数据包。COMPRESSED_RTP, compress IP/UDP/RTP header packets.
CONTEXT_STATE,报头解压缩器发送给报头压缩器的特殊数据包,用于传输已经或可能已经失去同步的会话环境ID。该数据包仅通过点到点链路发送,所以它不需要IP头。CONTEXT_STATE, a special packet sent by the header decompressor to the header compressor to transport session context IDs that have or may have gotten out of sync. The packet is only sent over point-to-point links, so it doesn't need an IP header.
该压缩方案还可使用另一种包类型:Another package type is also available for this compression scheme:
COMPRESSED_NON_TCP,无须进行差分编码传输定义的压缩IP/UDP包。如果用于IPv4,为了能携带IPv4ID字段,它比前面所讲的COMPRESSED_UDP要多用1到2个字节。而IPv6没有ID字段,这种非差分压缩在包丢失时更有弹性。COMPRESSED_NON_TCP, the compressed IP/UDP packet defined by differential encoding transmission is not required. If it is used for IPv4, in order to carry the IPv4ID field, it uses 1 to 2 bytes more than the COMPRESSED_UDP mentioned above. While IPv6 does not have an ID field, this non-differential compression is more resilient to packet loss.
本发明认识到,基于移动分组交换网络的VoIP语音通信系统具有如下特点:The present invention recognizes that the VoIP voice communication system based on the mobile packet switching network has the following characteristics:
移动终端MS与基站BTS之间的无线链路数据包丢失率较高。并且无线资源非常有限。The packet loss rate of the wireless link between the mobile terminal MS and the base station BTS is relatively high. And wireless resources are very limited.
VoIP语音业务为实时语音媒体流业务,通话过程中,个别语音媒体数据包的丢失不会影响VoIP话音质量,故允许丢弃个别语音媒体数据包。The VoIP voice service is a real-time voice media streaming service. During a call, the loss of individual voice media data packets will not affect the VoIP voice quality, so it is allowed to discard individual voice media data packets.
在传输过程中,需要尽量减小VoIP语音媒体数据包的端到端的传输时延和时延抖动。During the transmission process, it is necessary to minimize the end-to-end transmission delay and delay jitter of the VoIP voice media data packets.
请参阅图2,针对基于移动分组交换网络的VoIP业务的特点,本发明提出的错误恢复方法包括:Please refer to Fig. 2, aiming at the characteristics of the VoIP service based on the mobile packet switching network, the error recovery method proposed by the present invention includes:
首先,设置数据包系列号增量门限值。所述系列号增量门限值存储于互为发射方与接收方的移动终端(MS)和CDMA 1X分组交换节点(PDSN),其设置可以通过软件升级或添加系列号增量门值设置器等方式实现。First, set the incremental threshold value of the serial number of the data packet. The serial number incremental threshold value is stored in the mobile terminal (MS) and the CDMA 1X packet switching node (PDSN) that are transmitters and receivers each other, and its settings can be upgraded by software or by adding a serial number incremental threshold setter etc. to achieve.
当然,所述系列号增量门限值还可以寄存于报头解压缩器内,其值可以根据业务需要设定。Of course, the serial number increment threshold value can also be stored in the header decompressor, and its value can be set according to service needs.
其次,当报头解压缩器接收到数据包时,计算系列号的增量,并进行相应处理。Second, when the header decompressor receives a packet, it calculates the increment of the sequence number and processes accordingly.
如果接收到一个FULL_HEADER,则将整个头存在由环境ID选择的会话环境中。4位系列号也存在环境中,从而可实现报头解压缩器和报头压缩器的同步。在使用COMPRESSED_NON_TCP包时,系列号插入到该包的“Data字段”中,在接收到COMPRESSED_NON_TCP包后,将Generation号和存在环境中的值进行比较。如果不同,则环境已经过期,需要用该FULL_HEADER包来进行刷新。如果一致,则将压缩的IP和UDP头信息、系列号、以及RTP头都存入已保存的环境中。If a FULL_HEADER is received, store the entire header in the session context selected by the context ID. A 4-bit serial number is also present in the environment, enabling synchronization of the header decompressor and header compressor. When using the COMPRESSED_NON_TCP package, the serial number is inserted into the "Data field" of the package. After receiving the COMPRESSED_NON_TCP package, compare the Generation number with the value stored in the environment. If it is different, the environment has expired and needs to be refreshed with the FULL_HEADER package. If they are consistent, the compressed IP and UDP header information, serial number, and RTP header are all stored in the saved environment.
除了由FULL_HEADER和COMPRESSED_NON_TCP包数据设置外,如果系列号的增量小于门限值,则表示压缩通信过程正常,报头解压缩器不将会话环境置为无效并且不发送CONTEXT_STATE包回报头压缩器;反之报头解压缩器则将会话环境置为无效并发送CONTEXT_STATE包给报头压缩器,表示会话环境已经无效。无效会话环境的所有当前包都必须丢弃,直到收到一个FULL_HEADER或COMPRESSED_NON_TCP重建稳定状态为止。In addition to being set by FULL_HEADER and COMPRESSED_NON_TCP packet data, if the increment of the serial number is less than the threshold value, it means that the compressed communication process is normal, the header decompressor does not invalidate the session environment and does not send the CONTEXT_STATE packet back to the header compressor; otherwise The header decompressor sets the session environment as invalid and sends a CONTEXT_STATE packet to the header compressor, indicating that the session environment has been invalidated. All current packets of an invalid session context MUST be discarded until a FULL_HEADER or COMPRESSED_NON_TCP is received to reestablish a stable state.
由于在基于移动分组交换网络的VoIP语音业务过程中,语音数据包的传输发生丢失数据包的概率较大,少量数据包的丢失并不会影响VoIP语音质量,如果使用RFC2508协议规定的系列号增量为1时,报头解压缩器将会话环境置为无效,并发送CONTEXT_STATE包给报头压缩器。报头压缩器收到CONTEXT_STATE数据包,发送一个FULL_HEADER帧。这样会导致报头解压缩器频繁的发送CONTEXT_STATE数据包,会占有过多的压缩的反向信道带宽,影响无线链路的传输效率。通过本优化,能够有效的减小报头解压缩器发送CONTEXT_STATE数据包的频率。In the process of VoIP voice service based on mobile packet switching network, the probability of loss of data packets during the transmission of voice data packets is relatively high, and the loss of a small amount of data packets will not affect the quality of VoIP voice. When the value is 1, the header decompressor invalidates the session context and sends a CONTEXT_STATE packet to the header compressor. The header compressor receives a CONTEXT_STATE packet and sends a FULL_HEADER frame. This will cause the header decompressor to frequently send CONTEXT_STATE data packets, which will occupy too much compressed reverse channel bandwidth and affect the transmission efficiency of the wireless link. Through this optimization, the frequency of sending CONTEXT_STATE data packets by the header decompressor can be effectively reduced.
此外,当报头解压缩器检测到语音数据包的系列号发生跳变时,判断是否为相同会话环境,如果是,则报头解压缩器保存已经正确解压的语音数据包。所谓正确解压是指虽然部分头域解压发生错误,但是数据包的内容是正确的。In addition, when the header decompressor detects that the serial number of the voice data packet jumps, it is judged whether it is the same session environment, and if yes, the header decompressor saves the correctly decompressed voice data packet. The so-called correct decompression means that although some header field decompression errors occur, the content of the data packet is correct.
RFC2508协议认为此时报头解压缩器已经不能完整解压原始数据包,故建议丢弃该数据包。但是,经过分析,在相同环境,当系列号发生跳变时,报头解压缩器解压出的数据包的IP头的ID字段和UDP的校验和CheckSum字段与原报文不一致。但不影响报文的传送及报文内容,所以不丢弃该数据包。这样处理能够最大限度的保护语音的完整,减少由于压缩导致语音质量下降的可能。The RFC2508 protocol considers that the header decompressor cannot fully decompress the original data packet at this time, so it is recommended to discard the data packet. However, after analysis, in the same environment, when the serial number jumps, the ID field of the IP header and the UDP checksum CheckSum field of the data packet decompressed by the header decompressor are inconsistent with the original message. But it does not affect the transmission of the message and the content of the message, so the data packet is not discarded. Such processing can protect the integrity of the voice to the greatest extent and reduce the possibility of voice quality degradation due to compression.
请参阅图3,本发明的错误恢复方法还包括进一步稳定会话环境的过程。Please refer to FIG. 3 , the error recovery method of the present invention also includes a process of further stabilizing the session environment.
首先,在发射方设置定时器;所述定时器的设置可以通过软件升级或添加硬件的方式实现。Firstly, a timer is set on the transmitting side; the setting of the timer can be realized by upgrading software or adding hardware.
当然,所述定时器可以集成在报头压缩器内或与报头压缩器分立;定时器的时间长度可以根据业务需要确定,如定义为30S。Certainly, the timer can be integrated in the header compressor or separated from the header compressor; the time length of the timer can be determined according to service requirements, for example, it is defined as 30S.
如发射方定时器的时间长度内无数据传送时,后续发送的第一个数据包使用全头帧FULL_HEADER格式发送以重建会话环境。If there is no data transmission within the time length of the transmitter timer, the first data packet sent subsequently will be sent in the FULL_HEADER format to rebuild the session environment.
一种实施例是:当发送语音数据包时,报头压缩器判断其与前一语音数据包的时间间隔是否小于定时器的值,如果是,则压缩报头后发送;如果否,则在发送后续发送的第一个数据包时重建会话环境。A kind of embodiment is: when sending voice data packet, header compressor judges whether its time interval with previous voice data packet is less than the value of timer, if yes, then send after compressing header; If not, then send subsequent The session context is rebuilt when the first packet is sent.
这是由于:在报头压缩器与报头解压缩器之间如果长时间没有数据包发送后,随后发送的压缩数据包导致会话环境不同步的可能性较大,尤其在VoIP语音业务中。如果发送FULL_HEADER格式的数据包,能够在报头压缩器与报头解压缩器之间建立新的会话环境。这样能够有效地避免会话环境的不同步。保证一定时间的空闲之后不会出现错包,对报头压缩器与报头解压缩器之间的压缩环境的稳定提高了保证。This is because: if there is no data packet sent between the header compressor and the header decompressor for a long time, the subsequent compressed data packets are more likely to cause the session environment to be out of sync, especially in the VoIP voice service. If a data packet in the FULL_HEADER format is sent, a new session environment can be established between the header compressor and the header decompressor. This can effectively avoid the desynchronization of the session environment. It is guaranteed that no error packets will occur after a certain time of idleness, and the stability of the compression environment between the header compressor and the header decompressor is improved.
请参阅图4,对应于前述错误恢复方法,本发明给出移动通信网络中IP报头压缩的错误恢复装置的一种实施例。Please refer to FIG. 4 , corresponding to the aforementioned error recovery method, the present invention provides an embodiment of an error recovery device for IP header compression in a mobile communication network.
所述错误恢复装置包括报头压缩器200、报头解压缩器300、数据包系列号增量门限值设置器400和定时器500;所述报头压缩器200设置在互为发射方和接收方的移动通信网络的移动终端及分组交换节点内;所述报头解压缩器300也设置在互为发射方和接收方的移动通信网络的移动终端及分组交换节点内。其中,位于同一单元的报头压缩器200和报头解压缩器300可以集成也可以分立。The error recovery device includes a header compressor 200, a header decompressor 300, a data packet serial number incremental threshold value setter 400 and a timer 500; In the mobile terminal and the packet switching node of the mobile communication network; the header decompressor 300 is also set in the mobile terminal and the packet switching node of the mobile communication network which are the transmitting party and the receiving party. Wherein, the header compressor 200 and the header decompressor 300 located in the same unit may be integrated or separated.
所述数据包系列号增量门限值设置器400设置于接收方,用于设置数据包系列号增量门限值;所述报头解压缩器300在接收到语音数据包时,根据所述系列号增量门限值决定是否将会话环境设为无效。The data packet serial number incremental threshold value setter 400 is arranged on the receiving side, and is used to set the data packet serial number incremental threshold value; when the header decompressor 300 receives the voice data packet, according to the The sequence number increment threshold determines whether to invalidate the session context.
所述定时器500设置于发射方,用于预设一定的时间长度。所述报头压缩器200在发送语音数据包时,根据定时器的值决定是否重建会话环境。The timer 500 is set on the transmitting side and is used to preset a certain length of time. When the header compressor 200 sends the voice data packet, it decides whether to rebuild the session environment according to the value of the timer.
可以理解,所述定时器500集成在报头压缩器200内或与报头压缩器200分立。It can be understood that the timer 500 is integrated in the header compressor 200 or separated from the header compressor 200 .
综上所述,对于基于移动分组交换网络的VoIP语音业务,通过采用本发明描述的技术方案,能够有效的提高应用于VoIP业务的RFC2508压缩协议的压缩效率。减小了VoIP语音的端到端传输时延和时延抖动,为VoIP语音质量提供了有效保障。To sum up, for the VoIP voice service based on the mobile packet switching network, by adopting the technical solution described in the present invention, the compression efficiency of the RFC2508 compression protocol applied to the VoIP service can be effectively improved. It reduces the end-to-end transmission delay and delay jitter of VoIP voice, and provides an effective guarantee for VoIP voice quality.
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。The above is only a preferred embodiment of the present invention, it should be pointed out that for those of ordinary skill in the art, without departing from the principle of the present invention, some improvements and modifications can also be made, and these improvements and modifications should also be It is regarded as the protection scope of the present invention.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100584292A CN100428733C (en) | 2004-08-11 | 2004-08-11 | Error recovery method and device for IP header compression in mobile communication network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100584292A CN100428733C (en) | 2004-08-11 | 2004-08-11 | Error recovery method and device for IP header compression in mobile communication network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1735071A CN1735071A (en) | 2006-02-15 |
CN100428733C true CN100428733C (en) | 2008-10-22 |
Family
ID=36077272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100584292A Expired - Fee Related CN100428733C (en) | 2004-08-11 | 2004-08-11 | Error recovery method and device for IP header compression in mobile communication network |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100428733C (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101597523B1 (en) * | 2009-04-10 | 2016-02-25 | 엘지전자 주식회사 | Home appliance service device and control method thereof |
CN108243043A (en) * | 2016-12-27 | 2018-07-03 | 乐视汽车(北京)有限公司 | Vehicle data transmission method, apparatus and system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1301448A (en) * | 1998-05-20 | 2001-06-27 | 夸尔柯姆股份有限公司 | Method for detecting delayed data frames in a transport function |
US6608841B1 (en) * | 1999-12-30 | 2003-08-19 | Nokia Networks Oy | System and method for achieving robust IP/UDP/RTP header compression in the presence of unreliable networks |
-
2004
- 2004-08-11 CN CNB2004100584292A patent/CN100428733C/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1301448A (en) * | 1998-05-20 | 2001-06-27 | 夸尔柯姆股份有限公司 | Method for detecting delayed data frames in a transport function |
US6608841B1 (en) * | 1999-12-30 | 2003-08-19 | Nokia Networks Oy | System and method for achieving robust IP/UDP/RTP header compression in the presence of unreliable networks |
Non-Patent Citations (2)
Title |
---|
Compressing IP/UDP/RTP Headers forLow-Speed Serial Links. S.Casner et al.Network Workinig Group. 1999 |
Compressing IP/UDP/RTP Headers forLow-Speed Serial Links. S.Casner et al.Network Workinig Group. 1999 * |
Also Published As
Publication number | Publication date |
---|---|
CN1735071A (en) | 2006-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2424627C2 (en) | Dynamic robust header compression | |
JP3694241B2 (en) | Method and apparatus for telecommunications using Internet protocols | |
Bormann et al. | RObust Header Compression (ROHC): Framework and four profiles: RTP, UDP, ESP, and uncompressed | |
JP4602568B2 (en) | Communication method used in packet server | |
JP4763682B2 (en) | Providing information on upper layer packet or frame boundary in GRE frame | |
CN1197281C (en) | Header compression in real time services | |
EP1243118B1 (en) | System and method for achieving robust ip/udp/rtp header compression in the presence of unreliable networks | |
AU2007230862B2 (en) | Method and apparatus for enhancing ROHC performance when encountering silence suppression | |
CA2671666C (en) | Method, communications node, and memory for dynamic dictionary updating and optimization for compression and decompression of messages | |
US7730380B2 (en) | Method and apparatus for transmitting/receiving voice over internet protocol packets with a user datagram protocol checksum in a mobile communication system | |
EP1415474B1 (en) | Method and compressor for compressing packet timestamp information | |
EP1786170B1 (en) | Header compression in voice packets | |
JP2000286894A (en) | Method for use in a packet server and apparatus for transporting packets | |
JP2004096717A (en) | Protocol message compression in wireless communication systems | |
EP1360818B1 (en) | Compression method, transmitter and receiver for radio data communication | |
CN101170487A (en) | Compression method, compression system and compression equipment in data stream multiplexing | |
JP4875076B2 (en) | Efficient encoding of out-of-order data packets in the network | |
CN100428733C (en) | Error recovery method and device for IP header compression in mobile communication network | |
TWI381687B (en) | Apparatus and method for efficiently supporting voip in a wireless communication system | |
CN101102263B (en) | Method and device for recovering compressed message | |
Yoshimura et al. | Network Working Group C. Bormann, Editor, TZI/Uni Bremen Request for Comments: 3095 C. Burmeister, Matsushita Category: Standards Track M. Degermark, Univ. of Arizona H. Fukushima, Matsushita H. Hannu, Ericsson | |
HK1043451B (en) | Header compression in real time services |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180426 Address after: California, USA Patentee after: Global innovation polymerization LLC Address before: London, England Patentee before: GW partnership Co.,Ltd. Effective date of registration: 20180426 Address after: London, England Patentee after: GW partnership Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081022 |
|
CF01 | Termination of patent right due to non-payment of annual fee |