传输数据分组的方法和设备的制作方法

文档序号:7955035阅读:132来源:国知局
专利名称:传输数据分组的方法和设备的制作方法
技术领域
一般地说,本发明涉及一种在不可靠的信道上传输数据分组的方法和设备,尤其涉及传输具有压缩的首标的数据分组的方法和设备。
背景技术
有几种将数据从一个终端传输到另一个终端的通信技术。最常用的技术是蜂窝电话和英特网。进一步的发展是诸如英特网电话这类媒体点播(media-on-demand)和对话业务。大多数这类业务都需要传送包括音频和视频内容的实时数据。
实时传送协议(RTP)提供用于此目的的手段。RTP是用于实时或接近于实时传输数据的英特网协议。RTP自己不能保证实时传递数据,但它提供用于支持流数据发送和接收应用的机制。一般来说,RTP运行于UDP协议之上。UDP(用户数据报协议)是一种象TCP一样、运行于IP网之上的无连接协议。与TCP/IP不同,UDP/IP不提供任何出错恢复业务,而代之以提供一种在IP网上发送和接收数据报的直接方式来替代。
虽然RTP是为固定网络开发的,但它可以用在移动网中。然而在移动网上使用RTP时遇到移动信道有限的带宽问题。原因是协议RTP、UDP和IP各自都有自己的首标。因而一个分组除了链路层帧外,还有20字节的IP首标、8字节的UDP首标以及12字节的RTP首标,因此总和起来至少40字节。
这种首标具有很高的冗余,为了减少总的开销,已经开发出了首标压缩机制。首标压缩协议去掉首标的冗余并且以一种有效的方式编码该信息。在最好的情况下,这可以将原始首标压缩到一字节。
图1图解了一使用首标压缩协议的系统。该发射器包括用于压缩原始首标的压缩器100。然后将该被压缩的首标传输到接收器并且在那里通过解压器110解压缩。
设备场景(context)120是压缩器用来压缩该首标的状态。该设备场景是一组变量并且基本上由未压缩版的最后的首标的首标字段组成。除了实际的首标字段外,该设备场景还包括附加变量,诸如对一系列相继分组已经检测到是常数的首标字段的一阶差分。该设备场景也可以包含描述该分组流的附加信息,例如典型的分组间在序号和时标方面的增加。
在操作过程中,压缩器100和解压器110需要维护一个公用的设备场景。当解压器110的设备场景130和压缩器100的设备场景120不一致时,首标压缩失败。当在不可靠的信道例如无线信道上传输数据分组时,由于可能在压缩器100和解压器110之间丢失或损坏分组,这种情况可能发生。
因此,一旦解压器110的设备场景130变成无效,必须启动一再同步过程。为了这一目的,提供更新(UP)分组用于传输包含压缩器100的设备场景120的信息到解压器110。因此,通过使用UP分组更新设备场景130。
首标压缩模式的性能可以用两个参数加以描述,这两个参数是压缩效率和稳健性。稳健模式允许链路上的错误,在其中的链路上发生首标压缩而不会丢失附加分组、引入附加错误或使用更多带宽。使用UP分组一方面增加稳健性,另一方面由于UP分组尺寸大又降低了压缩效率。因此,除了UP分组之外,还使用非常小而且只与前面的UP分组有关的非更新(NUP)分组时。因此,NUP分组不更新该设备场景,以至于NUP分组丢失,解压器110的设备场景130还继续有效,该接收器仍然能够解压缩其后续分组。
要压缩的分组流通常表现的很有规律。大多数首标字段在该流的使用期限中为常数并且保持不变。某些字段根据每个分组变化(例如,序号或时标)。如果这些字段的值同步于该序号,因此可以从这种序号计算出来,那么该流为规则的。这些字段中的奇异性妨碍这种同步,例如由于RTP-时标字段的非线性跳越。由于奇异性,不可能从序号计算出已经改变了的字段的值。这些奇异性可能出现的很频繁,例如对于会话音频流平均每一秒出现。
NUP分组的长度随时间增加归于两个原因。如果该流表现出非正常特性,那么将要被发送的NUP分组会更大,原因是必须包括这些非正常特性。如果在该流中不出现非正常特性,该NUP分组的长度也可能会随时间增加,原因是与最后的更新分组的差较大。为了降低NUP分组的长度,必须进行一次更新,即,发送一系列UP分组,并且如果正确地收到这些分组,则更新设备场景。
确定为一次更新而发送的UP分组的数量是一个难点。如果发送太多,那么仍然在发送UP分组时该设备场景就已经更新并且是有效的了。这不必要地增加了所传输的位并且降低了效率,原因是UP分组比NUP分组大。另一方面,如果没有发送足够的UP分组,则会增加丢失设备场景的危险,原因是增加了收不到被发送的任何分组的概率。
因此,当UP分组的数量太高时,压缩效率降低。如果UP分组的数量太低,则解压器可能丢失其设备场景,以至于不得不放弃全部分组,直到正确地收到下一个UP分组。
在诸如无线网络这样的不可靠的信道中,信道质量通常发生相当可观的变化。现在将参考图2a至2c详细地进行图解。
在这些示例中,假定发生突发错误。突发错误是丢失几个连续的分组的那些错误。在图2a至2c的示例中,假定丢失三个分组。参考图2A,解压器接收不到一个UP分组和两个NUP分组。由于解压器现在具有无效的设备场景,所以不得不放弃后续NUP分组,以至于在接收器中存在总共九个丢失的分组。
在图2b中,连续的UP分组的数量已经增加到总量为三。虽然由于正确地收到这些UP分组的至少一个的概率非常高,所以发送一系列相继UP分组通常更可靠,但降低了压缩效率。此外,在图2b的示例中,事实上没有提高稳健性,原因归于突发错误的性质,再就是不能在接收器中解压九个分组。
克服突发错误的问题的一种方法是使用图2c所示的分散模式。使用分散模式指的是以固定次序发送UP和NUP分组,以避免发送一行中的全部UP分组。在图2c的示例中,这种序列是UP-NUP-UP-NUP-NUP-UP-NUP-NUP-NUP-UP-NUP-……从图2c能够看出,即使以分散模式传输分组也可能引起显著的数据分组丢失。
因此,现有技术不能正确地处理压缩效率和稳健性的问题。而且发现确定最优条件是一个严重的问题。

发明内容
本发明的目的是提供一种用于在不可靠的信道中传输数据分组的方法和设备,该方法和设备能够提高效率和稳健性。
这一目的通过定义在独立权利要求中的发明达到。
根据本发明,依据信道质量设置相继UP分组的数量。因此在高质量信道的情况下,可以减少UP分组的数量。当信道上存在高错误率时,增加UP分组的数量,使得在发射器和接收器之间存在稳健的连接。
本发明有利条件在于允许动态地使传输和压缩机制适应与当前的信道质量,特别在于本发明允许动态地根据信道质量控制解压器的设备场景的更新。仅仅将UP分组发送既保证高稳健性又保证较好压缩效率所需要的次数。因此,即使信道质量改变也能减少平均首标大小。
本发明的优选实施例定义在从属权利要求中。
通过根据往返时间设置设备场景更新阶段传输的更新和非更新分组的总量,甚至可以经常用具有良好质量的信道进行这个数字的调整。这允许更精确地控制在压缩效率和传输稳健性之间寻找最好的折中。
当基于编码解码器属性确定NUP分组的数量时,使得根据本发明的机制不但适合该信道的当前属性,而且适合分组流类型。通过依靠信道质量和分组流属性产生UP和NUP分组序列,可以达到在压缩效率和传输稳健性之间更好的折中。


现在参考附图描述本发明,其中图1图解了一压缩器/解压器系统,在其中使用了UP和NUP分组;图2a-2c图解了在突发错误情况下UP-NUP序列的时序图;图3图解了在根据本发明的设备场景更新阶段的UP-NUP序列;图4a和4b图解了最佳地使用本发明的压缩器/解压器系统;图5示出了根据本发明的设备场景更新过程的通用流程图;图6a和6b是图解在每个子序列中设置UP分组数量的过程的优选实施例的流程图;以及图7是图解根据本发明的优选实施例在序列中设置分组总数量的过程的流程图。
具体实施例方式
以下将更加详细地描述本发明的优选实施例。
现在参考图3,设备场景更新阶段的UP和NUP序列可以分割成一系列子序列。每个子序列包含多个由多个NUP分组所跟随的UP分组。下面的参数用于描述根据本发明的UP-NUP序列。
参数p描述设备场景更新阶段的总分组数量。只要必须考虑更新设备场景或者更新设备场景至少有用,例如在丢失设备场景的情况下时,或者更一般地说,只要在数据流中检测到奇异性时,就进入这种阶段。选择足够长的设备均是更新阶段的持续时间,以使得解压器能够更新其设备场景。
参数k是每个子序列中的分组数量。在图3的优选实施例中,这个参数在各个子序列中是相同的。
参数mi描述第i个子序列中的UP分组的数量。这个参数的值对于不同的子序列可以互相不同,并且在本发明的一个优选实施例中,该参数以次第减1,即,mi=mi-1-1。
最后,参数ni描述第i个子序列中的NUP分组的数量。
图4a和4b图解了最佳地使用本发明的压缩器/解压器系统。根据图4a,压缩器从测量单元400接收关于信道质量的测量值。测量单元400可以是任何实体,例如可以是物理层实体,它能够给压缩器100提供指示信道质量的测量值。这种值可以包括任何类型的、指示例如信道中的噪声属性或任何位或数据块错误的测量值。如果不能利用真实的测量值,测量单元400可以变成能够执行任何产生至少估计的质量值的行为的发射器的控制单元。
在图4b的系统中,万一一个子序列的每个UP分组都丢失了,解压器能够发送不应答(non-acknowledgement,NACK)消息给压缩器。根据下面的讨论将更明白多个NACK的关系。
现在转到图5,该解了更新设备场景130的总体流程图,该过程包括设置各个参数mi、k、ni和p的500步至530步。正如本领域的普通技术人员所公认的那样,图5中图解的步骤次序可以改变。例如,可以先设置参数p或k。此外,下列情况也在本发明的范围之内,即更新设备场景的过程可以包括只设置某些参数而将剩下的参数选定为常数或设置成缺省值。
现在将更详细地描述根据本发明设置参数。在500步中,设置每个子序列中的UP分组的数量mi。如上所述,这个数值从子序列到子序列最好依次以1递减。将考虑到正确地接收至少一个UP分组的概率会随i的值增加这一点来选择这个方案。实际上只需要找到一个最佳的开始值m1。
图6a图解了设置m1的一个优选实施例。在600步,压缩器100获得参数m1的当前值。然后,在610步,读取m1的的一个最大值和一个最小值。例如该最大值和最小值可以分别设置为二和六。
如果在准备期间压缩器不能在600步获得参数m1的当前值,那么压缩器就使用开始值替代。开始值最好能够被设置成最小和最大限制的平均值。
一旦获得当前值和限制值,压缩器就从在上面已经在图4a的设备场景中讨论过的测量单元400接收测量值。在620步获得的值最好是信道中的信噪比SNR或数据块错误率BLER的测量值。如果SNR值低,即,BLER高,则需要较高的m1值来增加解压器正确地接收到数据分组的概率。
然后在630步使用所获得的测量值确定该信道条件是否改变。如发生了改变,则在640步更新参数m1。由于该信道条件可能变化非常快而且非常频繁,因此m1值是逐渐匹配的,即,m1值依赖于信道质量变好还是变坏按一固定量进行增加或减少。
图6b示出了在第一子序列中设置UP分组的数量m1的另一个优选实施例。这种方法最好在测量单元400没有可利用的测量值时使用。在获得当前值和最小和最大小值之后,压缩器在650步确定是否收到NACK。如果正确地接收到第一序列的至少一个UP分组,那么解压器110将不发送NACK消息。因此,如果压缩器100在整个过程中没有收到NACK,那么将参数m1降低一用于下一个更新过程(600步)。然而如果收到NACK,那么在670步增加参数m1。这最好能够通过加一预定的值或通过将当前值乘以一预定的系数来实现。
虽然在上面讨论的实施例中,只根据信道质量直接设置了m1的值,而剩下的序列中的UP分组的数量根据公式mi=mi-1-1设置,但应该理解,在本发明的范围内,不仅仅m1而且任何参数mi都可以独立地进行设置。
现在将更详细地描述设置参数k,即,每个子序列中的分组的数量(510步)。如上所述,这个参数对所有数据块都被选择成常数。根据本发明的优选实施例,这个常数值根据编码解码器属性进行设置。
这是因为某些媒体的编码解码器(例如声音编码解码器)可以处理某些分组丢失。例如,如果该编码解码器能够补偿多达x个分组的分组丢失、使得用户不会听出该分组丢失,那么常数参数k被设置成低于这个数字x。为此目的,如果可能的话,压缩器可以例如读取RTP首标的有效负载类型字段以检测所使用的编码解码器。或者,压缩器使用任何可利用的带外(out-of-band)信令。
如果压缩器已经获得关于编码解码器的通用属性的适当信息,那么就由此设置参数k。为此目的,编码解码器的通用属性可以存储在例如压缩器的查找表中。如果压缩器不能确定适当的信息,则参数k被设置成这样一个值,假定它不影响接收应用。此时,最好使用最保守的方法。此外,如果在编码解码器上没有任何信息可利用,那么参数mi可以稍微增加一点以便仍然保证稳健性。
在图5所述的过程的520步中,设置每个子序列中的NUP分组的数量ni。正如图3所显示的那样,一旦设置了参数mi和k,就可以根据ni=k-mi确定参数ni。
最后,更新设备场景的过程包括以530步表示的设置该序列中的分组的总数量p的过程。这一过程在图7中更详细地描述。正如以下将要讨论的那样,在本发明的优选实施例中,将参数p设置成足够大以使得该解压器有足够的时间来反应关于数据分组的任何丢失的NACK消息。这个参数可以根据往返时间RTT设置成有利形式,最好是其小倍数。因为这个原因,图7的过程涉及当前RTT值的估计。
根据本发明,该过程启动不活动期间的设备场景丢失。不活动期间是不发送任何分组的这样一个时间段。通常,压缩器检测不活动期间,例如在不能接收任何RTP分组一定时间的任何时候。
首先在700步确定是否发送了分组。如果存在一个被检测到的不活动期间,则在720步发送一个坏分组。坏分组是不包含正确压缩首标的分组以至于这个分组将使解压器110的设备场景130无效。然后该解压器在730步将马上回送一个在压缩器100中接收到的NACK消息。在740步中压缩器通过计算接收NACK的时间和发送坏分组的时间之间的时间差来估计RTT的值。如果在750步中确定出RTT值已经被改变了,那么在760步更新参数p。最好,将参数p选得与RTT值成比例。
所描述的设置序列中的分组的总数量p的过程的优势在于,只要在一不活动期间之后的更新过程由于某些不可预见的时标间隙而开始,就执行该过程。因此,不存在任何丢失设备场景130的额外概率。
此外,通过发送坏分组来估计RTT值的所述过程也是其优点,原因是只要检测到不活动期间就执行该过程。不活动期间的出现独立于任何设备场景丢失,并且参数p的调整即使在好质量的信道中也可以经常执行。
此外,根据本发明的RTT估计的优势在于它允许精确地控制参数p。例如,如果该测量将只利用多个NACK而不通过发送坏分组来启动设备场景丢失加以实现,则在丢失至少一个分组并且收到另一个分组的情况下,该测量值将导致RTT值增加额外的时间。这种额外时间可以非常长,而且不可计算。
权利要求
1.一种在信道上传输数据分组的方法,该数据分组具有压缩的首标,该方法包括步骤使用设备场景(120)压缩首标;和传输相继更新(UP)分组的数量(mi),每一个分组都包含指示所述设备场景的数据;其特征在于该方法还包括步骤检测(620、650)该信道的质量;以及依赖于所确定的信道质量设置(500、640、660、670)所述更新分组的数量(mi)。
2.根据权利要求1的方法,其中确定信道质量的步骤包括估算(620、630)信道中的数据块错误率(BLER)的测量值。
3.根据权利要求1的方法,其中确定信道质量的步骤还包括估算(620、630)信噪比(SNR)的测量值。
4.根据权利要求1的方法,其中确定信道质量的步骤包括确定(650)是否接收到NACK消息的步骤。
5.根据权利要求1至4之一的方法,其中传输数据分组的一列子序列,每个子序列包括相继更新(UP)分组的数量(mi);只根据所确定的信道质量设置第一个子序列的相继更新分组的数量(mi);以及后续子序列中的更新分组的数量依次按一预定数值递减。
6.根据权利要求1至5之一的方法,还包括传输不包含指示所述设备场景(120)的数据的相继非更新(NUP)分组的数量(ni)的步骤,其中根据往返时间(RTT)设置设备场景更新阶段被传输的更新和非更新分组的总量(p)。
7.根据权利要求6的方法,还包括步骤检测(700)不活动期间;传输(720)没有正确压缩的首标的数据分组;接收(730)NACK消息;以及将往返时间设置(740)成传输(720)和接收(730)之间的时间差。
8.根据权利要求1至7之一的方法,还包括传输不包含指示所述设备场景(120)的数据的相继非更新(NUP)分组的数量(ni)的步骤,所述非更新分组的数量(ni)基于编码解码器属性和所述更新分组的数量(mi)被确定。
9.一种在信道上传输数据分组的设备,该数据分组具有压缩的首标,该设备包括压缩器(100),用于使用设备场景(120)压缩首标;传输装置,用于传输相继更新(UP)分组的数量(mi),每一个分组都包含指示所述设备场景的数据;检测该信道的质量的装置(400);以及控制装置,用于依赖于所确定的信道质量设置所述更新分组的数量(mi)。
10.根据权利要求9的设备,配置成执行根据权利要求1至8之一的方法。
全文摘要
本发明涉及一种在信道上传输数据分组的方法和设备,其中所述数据分组具有压缩的首标。在利用设备场景压缩首标之后,传输一个包含指示所述设备场景的数据的相继更新分组的数量。根据本发明,确定信道的质量并因此设置更新分组的数量。该信道质量可以通过测量数据块错误率或信噪比来确定。或者信道质量可以通过估算是否已经接收到NACK消息来估计。可以根据往返时间设置设备场景更新阶段传输的更新和非更新分组的总数量。非更新分组的数量还可以基于编码解码属性进行确定。本发明在例如无线通信这样的不可靠的信道上使用有优势。
文档编号H04L29/06GK1343056SQ0113290
公开日2002年4月3日 申请日期2001年9月4日 优先权日2000年9月7日
发明者卡斯滕·伯迈斯特, 罗尔夫·黑肯伯格 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1