CN101304557A - 一种分组传输控制方法及装置 - Google Patents

一种分组传输控制方法及装置 Download PDF

Info

Publication number
CN101304557A
CN101304557A CNA200810104926XA CN200810104926A CN101304557A CN 101304557 A CN101304557 A CN 101304557A CN A200810104926X A CNA200810104926X A CN A200810104926XA CN 200810104926 A CN200810104926 A CN 200810104926A CN 101304557 A CN101304557 A CN 101304557A
Authority
CN
China
Prior art keywords
jitter buffer
frame
time
trau frame
transmission
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.)
Granted
Application number
CNA200810104926XA
Other languages
English (en)
Other versions
CN101304557B (zh
Inventor
贾翔宇
郭江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN200810104926A priority Critical patent/CN101304557B/zh
Publication of CN101304557A publication Critical patent/CN101304557A/zh
Application granted granted Critical
Publication of CN101304557B publication Critical patent/CN101304557B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种分组传输控制方法及装置。该方法包括:在码变换速率适配单元TRAU帧中加入发送时间标签;根据收到的TRAU帧中的发送时间标签与该发送时刻期望收到的TRAU帧的发送时刻确定所述TRAU帧的传输时延;根据所述TRAU帧的传输时延调整接收端的抖动缓冲器Jitter Buffer的长度。该方法通过在TRAU帧的接收端建立抖动缓冲器Jitter Buffer并根据网络传输情况对其动态调整,消除传输抖动及乱序,有效的缓解了GSM网络分组化传输所带来的QoS问题。

Description

一种分组传输控制方法及装置
技术领域
本发明涉及一种通信控制技术,尤其涉及一种通信网络中通信时分组传输的控制方法及装置。
背景技术
全球移动通信系统(GSM,Global System for Mobile communications)是全球覆盖最广、用户最多的移动通信网络。GSM网络在网络侧主要分为核心网及接入网部分。GSM网络自诞生以来,主要采用时分复用(TDM,TimeDivision Multiplex)模式进行传输。近年来,随着网络技术、无线通信技术的发展,GSM网络的核心网已逐渐向基于2G/3G共平台的软交换过渡,同时接入网也向着IP化的方向迈进。
GSM网络的接入网侧的主要网元有基站控制器(BSC,Base StationController)及基站(BTS,Base Transceiver Station),BSC与BTS之间通过Abis接口进行通信。在业务面BTS与BSC上的传输编解码单元(TC,Transcoder)以码变换速率适配单元(TRAU,Transcoder/Rate Adaptor Unit)帧进行通信。
长久以来,TRAU一直采用TDM方式进行传输,BSC上的TC通过E1或其他TDM传输方式每20ms定时向BTS上每个信道提供320bit数据,BTS也通过TRAU帧每20ms定时向TC上报320bit的数据。上述传输方式为每个业务信道固定分配了带宽,能够保证现有的GSM网络中的BSC与BTS之间用于通信的ABIS接口采用TDM方式传输时业务帧基本上均以20ms为周期固定发送与接收,使BTS在每20ms时刻均能收到320bit的数据,使数据流不存在乱序或延迟抖动等情况。但若BTS上译码失败时,存在TRAU也一直提供无效的数据,使得传输效率较为低下的问题。
随着向全IP化的方向发展,通过在A口及Abis接口引入IP传输,GSM网络的接入网将实现传输IP化,可以大幅提高网络的传输效率,节省传输资源及成本。
从上述对现有GSM网络中的接入网部分进行IP化的介绍中,发明人发现上述背景技术至少存在以下问题:
在Abis接口IP化后,由于IP网络的特点,TRAU帧在链路上将会存在抖动及乱序等问题,如:(1)IP传输过程中调度引起的抖动(与拥塞程度相关);(2)IP传输过程中路由不一致引起的抖动;(3)发送方和接收方的相对时钟漂移引起的抖动;(4)IP传输过程中路由的变化引起的抖动;(5)IP传输与TDM传输切换过程中引起的抖动;(6)编解码处理时延引起的抖动等。针对上述各种原因造成的抖动,对于语音业务,若不消除抖动的影响,会使端到端的终端设备(如手机)听到的话音有断续而影响通话质量。并且在WCDMA、CDMA、WIMAX、LTE等网络在进行分组传输(IP化)后也存在相同的问题。因此,针对GSM网络这种对时序要求很严的TDM系统,必须提供一种机制来解决GSM网络进行分组传输(IP化)所带来的抖动及乱序等问题,否则会使传输语音的效果恶化。
发明内容
本发明实施方式提供了一种分组传输控制方法及装置,解决了在无线通信网络中用于通信的Abis接口IP化、TRAU帧采用分组传输后,由于网络分组传输所带来的传输时延而造成的延迟抖动问题。
一种分组传输控制方法,包括:
在码变换速率适配单元TRAU帧中加入发送时间标签;
根据收到的TRAU帧中的发送时间标签与此时刻接收端期望收到的TRAU帧的发送时刻确定此TRAU帧在分组网络上的传输时延;
根据所述TRAU帧的传输时延调整接收端的抖动缓冲器Jitter Buffer的长度。
一种分组传输控制装置,该装置包括:
标签处理模块,用于处理收到的TRAU帧中的发送时间标签,从所述发送时间标签内获取该TRAU帧的发送时刻;
传输时延确定模块,用于根据所述标签处理模块获取的TRAU帧的发送时刻与该发此时刻接收端期望收到的TRAU帧的发送时刻确定该TRAU帧在分组网络上的传输时延;
抖动缓冲器调整模块,用于根据所述传输时延确定模块确定的传输时延调整接收端的抖动缓冲器Jitter Buffer的长度。
一种分组传输控制装置,该装置包括:
标签加入模块,用于在码变换速率适配单元TRAU发送的TRAU帧中加入标记该TRAU帧发送时刻的发送时间标签;
码变换速率适配单元TRAU帧组帧发送单元,用于对标签加入模块加入发送时间标签后的TRAU帧进行发送。
由上述本发明实施方式提供的技术方案可以看出,本发明实施方式通过在分组传输的TRAU帧中加入标记该TRAU帧传送时刻的发送时间标签,并通过所述时间标签确定该TRAU帧在分组网络上的传输时延,根据传输时延调整接收端的抖动缓冲器Jitter Buffer的长度,使抖动缓冲器Jitter Buffer与传输时延相适应,从而消除传输时延引起的网络传输的抖动。本方法通过在作为接收端的基站BTS自身建立Jitter Buffer,并根据网络传输时延的变化动态调整该Jitter Buffer的长度,消除网络传输中TRAU帧进行分组传输(IP化)的传输抖动,有效的缓解了GSM网络分组化传输所带来的QoS问题,该方法机制简单,能够动态适应网络的变化。
附图说明
图1为本发明实施例的方法的流程图;
图2为本发明实施例的抖动缓冲器Jitter Buffer的示意图;
图3为本发明实施例的尖峰信号SPIKE传输模式的示意图;
图4为本发明实施例二的分组传输控制装置的结构框图;
图5为本发明实施例二中又一分组传输控制的结构框图;
图6为本发明实施例二中另一分组传输控制的结构框图;
图7为本发明实施例二中带有调整时机确认模块的分组传输控制的结构框图;
图8为本发明实施例三的分组传输控制的结构框图。
具体实施方式
本发明实施方式是为了消除分组传输中存在的抖动、乱序等问题,以GSM网络为例,在GSM接入网部分进行IP化传输后,传输过程中存在着抖动、乱序等问题,通过在接收端BTS上建立抖动缓冲器Jitter Buffer来消除抖动及乱序,理论上只要在接收端BTS上增加足够大的缓冲用抖动缓冲器JitterBuffer,则可以完全消除抖动及乱序问题。但在接收端建立抖动缓冲器JitterBuffer后,会增加业务的端到端的时延,对于时延不敏感的非交互式业务,可以设置一个固定的比预期抖动大的抖动缓冲器Jitter Buffer来消除抖动。但对于交互式业务如语音等,端到端的时延若超过300ms,则语音质量明显下降,为克服较大的抖动缓冲器Jitter Buffer对语音造成的影响,本发明实施方式的方法是在分组化传输后的TRAU帧中,引入表征TRAU帧分组包发送时间的发送时间标签(TSN域),TSN表示TRAU帧发送的时间,TRAU帧是20ms发送一次,对于在TRAU帧发送时刻,但系统并不需要发送TRAU帧的情况下,TSN也应保持TRAU帧发送时一样的增量。当基站BTS在接收到TRAU帧时,由于TRAU帧在传输时可能引入抖动及乱序,接收端通过TRAU帧中的时间标签标记的发送时刻与此时接收端期望收到的TRAU帧的发送时刻确定该TRAU帧在分组网络上的传输时延,根据所述确定的传输时延动态调整在接收端基站BTS上建立抖动缓冲器Jitter Buffer的长度来消除抖动,即根据网络的传输质量,自适应的调整抖动缓冲器Jitter Buffer的长度(即设置合理的时延),使之适应当前网络的传输抖动情况。对乱序的处理是通过接收端的抖动缓冲器Jitter Buffer的缓冲延迟,利用接收到的TRAU帧中的发送时间标签标记的发送时刻对乱序的TRAU帧进行重新排序来消除网络传输所引起的乱序,该方法减小了由于抖动及乱序带来的对网络中传输的语音的负面影响。
为便于理解,下面将结合附图及具体实施例进行说明。
实施例一
本实施例提供一种分组传输控制方法,可用于防止TRAU帧分组传输包抖动,可以消除TRAU帧在分组传输后,产生的抖动及乱序,尤其是消除抖动及乱序对传输的语音造成的影响,具体如图1所示,包括:
在分组传输的码变换速率适配单元TRAU帧中,加入标记该TRAU帧发送时刻的发送时间标签;
根据收到的TRAU帧中的所述发送时间标签标记的发送时刻与该发送时刻期望收到的TRAU帧的发送时刻确定该TRAU帧的传输时延;
根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度,使调整后抖动缓冲器Jitter Buffer的长度与所述传输时延相适应,消除由所述传输时延造成的抖动。
为消除TRAU帧传输造成的乱序,还可以通过接收端的抖动缓冲器JitterBuffer的缓冲延迟,依据接收到的TRAU帧中的发送时间标签标记的发送时刻对乱序的TRAU帧进行重新排序来消除网络传输所引起的乱序。
上述方法中,根据收到的TRAU帧中的所述发送时间标签标记的发送时刻与该发送时刻期望收到的TRAU帧的发送时刻确定该TRAU帧的传输时延包括:
以实际收到的TRAU帧中的发送时间标签标记的发送时刻与该发送时刻期望收到的TRAU帧中的发送时刻的差值作为该TRAU帧的传输时延。所述期望收到的TRAU帧比如可以是:接收端接收到第一个TRAU帧开始,每过20ms将要接收的下一个发送时间标签加1的TRAU帧。如:前一时刻收到的是发送时刻为8的TRAU帧,则下一时刻(即20ms后)期望收到发送时间为9的TRAU帧。
其中,所述根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度包括:以所述传输时延的延时偏差均值为偏移量来调整抖动缓冲器JitterBuffer接收窗口的中值(即为抖动缓冲器Jitter Buffer的接收范围的中间值,如接收范围为1~9,则中值为5),以所述调整后的中值向两侧扩展所述传输时延的3倍方差的大小来调整Jitter Buffer的长度。其中延时偏差均值是指:取此时刻以前的若干帧的延迟大小值为样本(由于需要反应网络延迟的实时变化,不能对样本帧的个数设计的太多,否则,过多的过去帧会影响计算结果,实时效果不好;同时,也不能对网络的变化过于敏感,否则Jitter Buffer可能频繁调整,效果也不好,鉴于二者存在的矛盾,Jitter Buffer的长度不宜设置过大,一般缓冲2~5个帧即可,因此样本帧的个数可以取2~5),求出这些样本时延的平均值即为延时偏差均值。如:假设前4个帧的时延延迟为0,0,-2,-2,则延时偏差均值为(0+0+(-2)+(-2))/4=-1,3倍方差为1.5,则下次接收帧的期望值将在前一期望值的基础上加上-1(即可以认为,网络延迟出现了变化,总体延迟又减少了1个20ms)。
再根据这些样本值计算的延时偏差均值及方差,来对Jitter Buffer进行调整,本例中对Jitter Buffer的长度调整为2(方差1.5取整)。
其中,所述方差的计算方法为:用各个接收时刻实际收到的TRAU帧的发送时间标签标记的发送时刻与相应时刻期望收到的TRAU帧的发送时刻的差值得出延时偏差均值,通过所述延时偏差均值得出方差。
实际中在分组化后的TRAU帧中,引入表征TRAU分组包发送时间的TSN域,TSN表示TRAU帧发送的时间,TRAU帧是20ms发送一次,对于在TRAU帧发送时刻,但系统并不需要发送TRAU帧的情况下,TSN也应保持与TRAU帧发送时一样的增量。
BTS在接收到TRAU帧时,由于TRAU帧在传输时可能引入了抖动及乱序,需要建立Jitter Buffer并根据确定的时延动态调整Jitter Buffer的长度来消除抖动及乱序带来的影响。
具体做法包括:
(一)初始Jitter Buffer的建立
一般说来Jitter Buffer的初始长度可以由网络维护人员根据网络的传输质量(主要是根据抖动的大小),进行初始配置。
在业务进行中,由于网络路由的变化、突发业务导致网络拥塞等原因,造成了发送端到接收端之间时延的变化,这些时延的变化,相对于已建立的Jitter Buffer中已接收的帧则产生了明显的抖动,当已设置的Jitter Buffer的长度不能解决该抖动时,就要对Jitter Buffer的长度进行动态的调整。Jitter Buffer的长度的调整时机在后面详述,而新调整的Jitter Buffe的长度则主要遵循3σ(3倍方差)原则,即认为网络的时延是服从高斯分布的,某个TRAU帧的接收时延落在整个平均时延的3倍方差范围内的概率是99%,新调整的Jitter Buffer的长度就是以时延的延时偏差均值作为当前的Jitter Buffer接收窗口(接收范围)的中值(中间位置)的偏移,并以偏移后新确定的接收窗口的中值向前后扩展3σ的大小。
(二)Jitter Buffer的自适应调整
图2为Jitter Buffer的接收帧的示意图,以图2为例进行说明:
BTS在本地时间15收到第一个帧后,即图中接收端的时间标签为15的帧,根据初始的时延配置,将计算出Jitter Buffer的接收范围为发送端TC的时间标签为[3,7],即在本地时间为[15,16]期间,收到的任意的TC时间标签不在该范围内的TRAU帧都将丢弃。同时还可以根据初始的时延计算出在本地时间15,当前BTS要发送到空口的TRAU帧的TC时间标签为3,可以看到该帧并不存在,因此基站BTS在空口要发送一个填充帧。
在BTS后续每进行一次发送后,均要依次更新当前的Jitter Buffer,如:在本地时间为16时,Jitter Buffer的接收范围为[4,8],发送TC时间标签为4的帧。在本地时间为17时,Jitter Buffer的接收范围为[5,9],发送TC时间标签为5的帧,本地时间为19时,Jitter Buffer的接收范围为[7,11],发送TC的时间标签为5的帧,依此类推。
为适应网络的变化,BTS在每个时刻均要计算Jitter Buffer的中值以及接收到的方差,以图2为例,计算的过程包括:
①在BTS接收时刻15,收到TC时间为5的帧,以此为基准建立初始的JitterBuffer;
②在BTS接收时刻16,根据建立的Jitter Buffer收到的帧中的发送时间标签确定的发送时刻确定期望收到的TC时间为6的帧,实际收到TC时间为4的帧,偏差为4-6=-2;其中,所述的期望收到的帧为:接收端从接收到第一个帧开始,每过20ms期望接收下一个时间标签加1的帧;
③在BTS接收时刻17,期望收到的TC时间为7的帧,实际收到TC时间为7的帧,偏差为7-7=0;
④在BTS接收时刻18,期望收到的TC时间为8的帧,实际收到TC时间为6的帧,偏差为6-8=-2;
因此在BTS接收的时刻19,前面的时刻接收到的数据与Jitter Buffer中值的延时偏差均值为(0-2+0-2)/4=-1,而方差为:
((0-(-1))^2+(-2-(-1))^2+(0-(-1))^2+(-2-(-1))^2)^2开根号除以4,等于0.5,而3倍方差为1.5。
因此,在BTS的接收时刻19,若不调整Jitter Buffer,那么Jitter Buffer中TC的时间标签为[7,11],Jitter Buffer的接收窗口的中值为9,而此时根据新的计算结果得到的延时偏差均值-1,新的Jitter Buffer的接收窗口的中值由9减1变为8,而Jitter Buffer的长度为1.5约等于2,因此新的Jitter Buffer接收窗口为[8-2,8+2]为[6,10],从前述接收的情况可以看出接收的多数TRAU帧均落在中值偏小的方向,因此Jitter Buffer向负的方向偏也是合理的。
根据上述的处理,即完成了根据网络传输时间确定传输时延,再根据传输时延动态调整抖动缓冲器的Jitter Buffer的过程,达到了消除时延造成抖动对网络的影响。
在上述处理抖动过程中,由于Jitter Buffer有缓冲的作用,对于每个接收到的帧,可以利用这段缓冲时间(因此时缓存里的帧还不需要进行其他处理),根据各帧的发送时刻对缓存里的帧进行排序来消除乱序。对乱序帧进行排序的具体过程结合图2说明如下:
从图2中,可以看出,TC发送的帧的顺序为4,5,6,7。经过网络传输,接收端收到的帧的顺序为5,4,7,6。图中可以看到,接收端将第一个收到的发送时刻为5的帧放入了Jitter Buffer,Jitter Buffer的延迟为2个帧,因此,在下一个时刻,BTS收到了发送时刻为4的帧,此时时刻为5的帧还在Jitter Buffer内,因此可以对发送时刻为4和5的帧进行排序。排序后,由于延迟时间到,因此会首先发送时间标签为4的帧。发送时刻标签为6,7的帧处理也一样。这样利用Jitter Buffer的缓冲延迟,达到了消除乱序的目的。
上述防抖动的处理方法,在网络业务的传递的过程中,如频繁的调整Jitter Buffer的长度,可能会引起接收到的数据不连续,反而恶化语音质量,因此要根据具体情况确定Jitter Buffer的长度的调整时机,具体为:
(1)接收端连续收到的帧的发送时间标签标记的发送时刻都落在了JitterBuffer的接收窗口外的次数超过了门限值,则可以对Jitter Buffer的长度进行调整;
其中,所述Jitter Buffer的接收窗口为:以本次期望收到的帧为中间值,以Jitter Buffer的长度值向两边扩展。例如,假设本次期望值为5,当前JitterBuffer的接收长度为2,则接收窗口为[5-2,5+2]为[3,7],它表示了JitterBuffer的接收范围;
所述的发送时刻都落在了Jitter Buffer的接收窗口外的是指:抖动缓冲器Jitter Buffer存在一个接收窗口(即Jitter Buffer的接收范围),若收到的TRAU帧的发送时间标签标记的发送时刻值都在Jitter Buffer的接收范围外,则为“都落在Jitter Buffer的接收窗口外”,若某一次或几次发送时刻的值在Jitter Buffer的接收范围内,则为“落在Jitter Buffer的接收窗口内”;
所述的门限值为:根据网络的实际情况及相应的用户经验设置该门限值,一般根据网络的实际情况,该门限可以设为不大于3,如:连续接收10个帧,有4个帧的发送时间标签标记的发送时刻未在Jitter Buffer的接收窗口内,则需要对Jitter Buffer的长度进行调整;
(2)接收端收到的帧的发送时间标签标记的发送时刻均落在Jitter Buffer的接收窗口外的比例超过了门限,可以对Jitter Buffer的长度进行调整;
其中,所述的比例超过了门限是指:在每个时刻,接收端都要记录本帧是否在接收窗口外,并统计之前若干帧(数量可以与计算延时偏差均值的样本数相同)中,落在窗口外的帧的个数的比例,如:样本数为5,此时刻之前5个帧中,有2个在窗口外,则比例为40%,而门限值的设定可以根据网络实际状况和经验设定,用户可以配置,一般可以设置为不大于40%。如:连续接收10个帧,有5个帧(占50%)的发送时间标签未在Jitter Buffer的接收窗口内,则需要对Jitter Buffer的长度进行调整;
(3)接收端收到的帧的持续时间超过了预先设定的最大调整时间,可以对Jitter Buffer的长度进行调整;
其中,最大调整时间是指:接收端距离上次调整Jitter Buffer后多长时间还未对Jitter Buffer进行调整,即两次调整Jitter Buffer之间间隔的时间值,最大调整时间一般可以由用户根据经验指定,常设为大于1s。若接收端收到的帧的持续时间超过了这个最大调整时间值,此时应该调整一次(否则存在这种情况,每个帧的延迟都是1,且这些帧的范围均在接收窗口内,因此,若不调整,语音的总体延迟将会增大),为减少因Jitter Buffer的接收窗口在最大调整时间因为调小长度而丢弃已缓存的帧而影响语音质量,因此最大调整时间应在Jitter Buffer中只有空帧或者静噪指示(SID,Silence Descriptor)帧的时候进行调整;
(4)接收端处在静音期间可以进行Jitter Buffer的长度进行调整;
若根据上述第(3)中的说明,接收端处在静音期间对Jitter Buffer的长度进行调整时,不会引起语音质量的变化。以BTS为例,处在静音期间,因收不到TC发来的帧,BTS向空口发送的均为填充帧,当BTS收到第一个SID帧或者语音帧时,BTS可以将该帧根据网络的时延情况,推迟或提前发送给接收的移动终端(如:手机等)(如收到第一个SID帧或者语音帧,此时Jitter Buffer中均为填充帧,则可以提前发送该SID帧或者语音帧,若Jitter Buffer长度为5,按20ms周期,则提前了5×20=100100ms发送该SID帧或者语音帧,相当于动态的调整Jitter Buffer)而不会引起语音质量的变化;
对于上述几种确定接收端调整Jitter Buffer的长度的调整时机的方式,对发送端处在FR/EFR/HR/AMR的编码模式而言均适用;
(5)对于发送端处在AMR编码模式而言除上述的情况,在收到SIDFrist帧(表示一段空闲帧后的第一个静音帧)、Onset帧后(表示一段空闲帧后的第一个语音帧),也可以认为进入调整时机。
上述方法中,还存在一种情况是将预先设定的最大调整时间作为调整时机,在该调整时机可以减小Jitter Buffer的长度,降低延迟,具体为:
当经过一段时间乱序后,为适应网络情况,Jitter Buffer的长度可能比较大;而此后的网络情况良好,此时Jitter Buffer实际不需要较长的长度;因此可以在Jitter Buffer中没有发送的帧,都是空帧或者SID帧的情况下,调整将JitterBuffer的长度减小,这样只会少发空帧或SID帧,对语音的影响不大,降低了语音端到端延迟。
在上述通过动态调整Jitter Buffer的过程中,针对网络中存在出现尖峰信号SPIKE传输模式的情况,可以分为下述两种情况确定是否对抖动缓冲器JitterBuffer进行调整:
(1)在尖峰信号SPIKE传输模式期间不进行抖动缓冲器Jitter Buffer的长度的调整,即不进行抖动缓冲器Jitter Buffer的接收窗口的自适应调整;
(2)尖峰信号SPIKE传输模式结束,则根据网络传输时延按上述方法进行抖动缓冲器Jitter Buffer的长度的调整;
尖峰信号SPIKE传输模式是在网络的传输过程中,因路由的变化,会出现突然有一段较长时间(一般这个值可以根据经验选取为不小于380ms)内没有任何的数据,接着在一段时间内收到非常多数据的情况,最后该现象消除,接收端又按照原来的发送间隔收到TRAU帧,具体如3图所示。
可以看到,若接收端的Jitter Buffer的时延足够长,则该SPIKE传输模式可以使用上述的消除抖动的方法。但是在很多情况下,如语音类的交互性业务,可以接受一些包丢失的情况,但不愿意接收长时间的时延。对于这些场景就要采用新的策略:当接收端判断SPIKE传输模式开始后,就停止上述的Jitter Buffer的自适应调整过程,在SPIKE传输模式的传输过程中,则丢弃一些帧;在判断SPIKE传输结束后,再按照上述的防抖动处理方法对Jitter Buffer的长度进行自适应调整。这种根据SPIKE传输模式处于不同状态,对Jitter Buffer的处理方式,可以保证对网络中传输的语音的影响最小。
这种处理方式的关键是如何判断SPIKE的开始,以及如何判断SPIKE传输模式的结束,具体可以按下述方式:
判断SPIKE传输模式的开始:若在某个时刻开始很长时间(一般不少于380ms)没有收到帧,以后却又突然收到发送时间标签连续的帧,而该时间标签对应的本地的发送时刻早已过去,则可以认为出现了SPIKE传输模式。
判断SPIKE传输模式的结束:当接收端判断处在SPIKE传输模式后,每一帧均要计算一下接收数据差的斜率,若发现斜率已减小到指定的门限(该门限值可以根据实际情况采用经验值设定,如实际中:该门限值可以设为8*var的值小于2),则可以认为SPIKE传输模式已经结束,进而可以对Jitter Buffer的长度根据传输时延进行自适应调整操作。其中,斜率的计算,可以采用以下的计算斜率方法:引入变量var,
vari=vari-1/2+abs((ni-ni-1)/8+(ni-ni-2)/8)         公式1
其中ni为第i次接收端收到的数据和发送端发出的数据的时间差。对应在本实施例中为,
ni=(li+L)-(ri+R)           公式2
其中li为本地收到的第i个帧的时间标签,ri为远端第i个发送的帧的时间标签,L为本地时间标签开始计数时的绝对时间,R为远端时间标签开始计数时的绝对时间。将公式2代入公式1,得到如下计算公式:
vari=vari-1/2+abs((2li-li-1-li-2)+(-2ri+ri-1+ri-2))/8   公式3
从公式3可以看到,var与L、R无关。
以TC向BTS传递数据为例,对上述判断SPIKE传输模式的结束用到的接收数据差的斜率计算的说明:
(1)假定在BTS的本地时间15,连续收到了TC发送时间标签为1,2,3的帧,初始var=0,那么根据上述公式3得出8*var=abs((2*15-15-15)+(-2*3+2+1))=3,可以看到该值较大,仍然处在SPIKE传输模式阶段;
(2)假定在BTS的本地时间16、17、18收到TC的发送时间标签为4、5、6的帧,初始var=0,那么根据上述公式3得出8*var=abs((2*18-17-16)+(-2*6+5+4))=0,可以看到该值较小,确定SPIKE传输模式已经结束。
实施例二
本实施例提供一种分组传输控制装置,可以用于实现实施例一中所述的防抖动的分组传输控制方法,该装置如图4所示,可以用在接收端,具体包括:
标签处理模块,用于处理收到的TRAU帧中的发送时间标签,从所述发送时间标签内获取该TRAU帧的发送时刻;
传输时延确定模块,用于根据所述标签处理模块获取的TRAU帧的发送时刻与该发送时刻期望收到的帧的发送时刻确定传输时延;
抖动缓冲器调整模块,用于根据所述传输时延确定模块确定的传输时延调整接收端的抖动缓冲器Jitter Buffer的长度,使调整后抖动缓冲器Jitter Buffer的长度与所述传输时延相适应来消除传输时延造成的抖动。
如图5所示,所述装置还包括:
乱序帧调整模块,用于利用抖动缓冲器Jitter Buffer的缓冲延迟,根据所述标签处理模块获取的接收到TRAU帧的发送时刻对收到的乱序的TRAU帧进行重新排序来消除乱序。
如图6所示,所述装置还包括:
调整时机确认模块,用于根据接收端接收TRAU帧的情况,确定是否允许所述抖动缓冲器调整模块对抖动缓冲器Jitter Buffer的长度进行调整。该调整时机确认模块确认对抖动缓冲器Jitter Buffer的长度进行调整的调整时机的方法与实施例一相同。
如图7所示,所述调整时机确认模块还包括:
尖峰信号SPIKE传输模式状态确认模块,用于根据接收端接收TRAU帧的情况,确认网络的尖峰信号SPIKE传输模式的状态,若确认网络为尖峰信号SPIKE传输模式,则禁止抖动缓冲器调整模块对抖动缓冲器Jitter Buffer的长度进行调整,若确认网络为非尖峰信号SPIKE传输模式,则允许抖动缓冲器调整模块对抖动缓冲器Jitter Buffer的长度进行调整。该尖峰信号SPIKE传输模式状态确认模块确认SPIKE传输模式所处的状态的方法与实施例一相同。
实施例三
本实施例提供另一种分组传输控制装置,可以用于实施例一的防抖动及乱序的分组传输控制方法中,该装置如图8所示,可以用在发送端,具体包括:
标签加入模块,用于在码变换速率适配单元TRAU发送的TRAU帧中加入标记该帧发送时刻的发送时间标签;
码变换速率适配单元TRAU帧组帧发送单元,用于对标签加入模块加入发送时间标签及帧序号标签后的TRAU帧进行发送。
综上所述,本发明实施例中通过在GSM网络中的接收端BTS建立JitterBuffer,消除网络传输中TRAU帧的传输抖动及乱序,有效缓解了GSM分组化(IP化)传输所带来的QoS问题,有效消除了因分组化传输造成抖动对语音的影响,该方法机制简单,能够动态的适应网络的变化,并且该方法同时适用于WCDMA、CDMA、WIMAX、LTE等网络在进行分组传输(IP化)后抖动的消除。
以上所述的各实施例是为说明本发明的技术方案,各实施例之间不具有前后的次序关系,并且不因各实施例的序号造成限制。且各实施例仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (17)

1、一种分组传输控制方法,其特征在于,包括:
在码变换速率适配单元TRAU帧中加入发送时间标签;
接收端根据收到的TRAU帧中的发送时间标签与此时接收端期望收到的TRAU帧的发送时刻确定该TRAU帧在分组网络上的传输时延;
根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度。
2、根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过接收端的抖动缓冲器Jitter Buffer的缓冲延迟,依据接收到的TRAU帧中的发送时间标签对乱序的TRAU帧进行重新排序消除乱序。
3、根据权利要求1或2所述的方法,其特征在于,所述发送时间标签用于标记所在TRAU帧的发送时刻。
4、根据权利要求1所述的方法,其特征在于,所述根据收到的TRAU帧中的发送时间标签与期望收到的TRAU帧的发送时刻确定该TRAU帧在分组网络上的传输时延包括:
将实际收到的TRAU帧中的发送时间标签标记的发送时刻减去该发送时刻期望收到的TRAU帧的发送时刻得到的差值作为该TRAU帧在分组网络上的传输时延。
5、根据权利要求1所述的方法,其特征在于,所述根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度包括:
以所述传输时延的延时偏差均值为偏移量来调整抖动缓冲器Jitter Buffer接收窗口的中值,以所述调整后的中值向两侧扩展所述传输时延的3倍方差的大小来调整Jitter Buffer的长度。
6、根据权利要求5所述的方法,其特征在于,所述方差是:
用各个接收时刻实际收到的TRAU帧的发送时间标签标记的发送时刻与相应时刻期望收到的TRAU帧的发送时刻的差值的平均值得出延时偏差均值,通过所述延时偏差均值得出的方差。
7、根据权利要求1、4或5所述的方法,其特征在于,所述期望收到的TRAU帧包括:
接收端接收到第一个TRAU帧开始,每过20ms将要接收的下一个发送时间标签加1的TRAU帧。
8、根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若接收端连续收到的TRAU帧的发送时间标签标记的发送时刻在抖动缓冲器Jitter Buffer的接收窗口外的次数超过预先设定的门限值,则根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度;
或者,
若接收端收到的TRAU帧的发送时间标签标记的发送时刻在抖动缓冲器Jitter Buffer的接收窗口外的比例超过预先设定的门限值,则根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度;
或者,
若接收端收到的TRAU帧的持续时间超过预先设定的最大调整时间,则根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度;
或者,
若接收端处在静音期间而后又收到第一个语音帧,则根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度;
或者
当处在AMR编码模式,若接收端收到SIDFrist帧或Onset帧后,则根据所述传输时延调整接收端的抖动缓冲器Jitter Buffer的长度。
9、根据权利要求8所述的方法,其特征在于,所述最大调整时间包括:
两次调整抖动缓冲器Jitter Buffer之间间隔的时间差。
10、根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若接收端判断尖峰信号SPIKE传输模式开始,则停止对抖动缓冲器JitterBuffer的长度的调整;若接收端判断尖峰信号SPIKE传输模式结束,则根据所述传输时延对接收端的抖动缓冲器Jitter Buffer的长度进行调整。
11、根据权利要求10所述的方法,其特征在于,所述接收端判断尖峰信号SPIKE传输模式开始包括:
若在某一时刻开始持续一段不少于380ms的时间未收到TRAU帧,当再次收到发送时间标签连续的TRAU帧,且所述收到的TRAU帧的发送时间标签已错过对应的本地发送时刻,则确认尖峰信号SPIKE传输模式开始。
12、根据权利要求10所述的方法,其特征在于,所述接收端判断尖峰信号SPIKE传输模式结束包括:
若接收端确认开始尖峰信号SPIKE传输模式,则对收到的每一TRAU帧均计算接收数据差的斜率,若所述斜率不大于预先设定的门限值,则确认SPIKE传输模式结束。
13、一种分组传输控制装置,其特征在于,该装置包括:
标签处理模块,用于处理收到的TRAU帧中的发送时间标签,从所述发送时间标签内获取该TRAU帧的发送时刻;
传输时延确定模块,用于根据所述标签处理模块获取的TRAU帧的发送时刻与此时刻接收端期望收到的TRAU帧的发送时刻确定该TRAU帧在分组网络上的传输时延;
抖动缓冲器调整模块,用于根据所述传输时延确定模块确定的传输时延调整接收端的抖动缓冲器Jitter Buffer的长度。
14、根据权利要求13所述的装置,其特征在于,所述装置还包括:
乱序帧调整模块,用于根据所述标签处理模块获取的发送时间标签标记的发送时刻对收到的乱序的TRAU帧进行重新排序来消除乱序。
15、根据权利要求13或14所述的装置,其特征在于,所述装置还包括:
调整时机确认模块,用于根据接收端接收TRAU帧的情况,确定是否允许所述抖动缓冲器调整模块对抖动缓冲器Jitter Buffer的长度进行调整。
16、根据权利要求13所述的装置,其特征在于,所述调整时机确认模块还包括:
尖峰信号SPIKE传输模式状态确认模块,用于根据接收端接收TRAU帧的情况,确认网络的尖峰信号SPIKE传输模式的状态,若确认网络为尖峰信号SPIKE传输模式,则禁止抖动缓冲器调整模块对抖动缓冲器Jitter Buffer的长度进行调整,若确认网络为非尖峰信号SPIKE传输模式,则允许抖动缓冲器调整模块对抖动缓冲器Jitter Buffer的长度进行调整。
17、一种分组传输控制装置,其特征在于,该装置包括:
标签加入模块,用于在码变换速率适配单元TRAU发送的TRAU帧中加入标记该TRAU帧发送时刻的发送时间标签;
码变换速率适配单元TRAU帧组帧发送单元,用于对标签加入模块加入发送时间标签后的TRAU帧进行发送。
CN200810104926A 2008-04-25 2008-04-25 一种分组传输控制方法及装置 Expired - Fee Related CN101304557B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810104926A CN101304557B (zh) 2008-04-25 2008-04-25 一种分组传输控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810104926A CN101304557B (zh) 2008-04-25 2008-04-25 一种分组传输控制方法及装置

Publications (2)

Publication Number Publication Date
CN101304557A true CN101304557A (zh) 2008-11-12
CN101304557B CN101304557B (zh) 2012-09-05

Family

ID=40114223

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810104926A Expired - Fee Related CN101304557B (zh) 2008-04-25 2008-04-25 一种分组传输控制方法及装置

Country Status (1)

Country Link
CN (1) CN101304557B (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697631A (zh) * 2009-10-28 2010-04-21 中兴通讯股份有限公司 一种可序数据包的乱序调整方法及装置
CN101808117A (zh) * 2010-03-03 2010-08-18 清华大学 一种通信中时间标签业务数据的构造及服务方法
CN102025635A (zh) * 2010-12-16 2011-04-20 浪潮(北京)电子信息产业有限公司 一种工作在全双工模式下的网络流量控制方法及装置
CN102104909A (zh) * 2011-03-17 2011-06-22 华为技术有限公司 数据处理方法及装置
CN102118192A (zh) * 2011-02-18 2011-07-06 中兴通讯股份有限公司 帧选择方法及装置
CN102123073A (zh) * 2010-01-07 2011-07-13 华为技术有限公司 数据包重排序方法及装置
CN104202659A (zh) * 2014-09-16 2014-12-10 国家计算机网络与信息安全管理中心 网络视频流乱序分段解码方法
CN104934040A (zh) * 2014-03-17 2015-09-23 华为技术有限公司 音频信号的时长调整方法和装置
CN105743815A (zh) * 2016-04-06 2016-07-06 腾讯科技(深圳)有限公司 抖动缓冲数据处理的方法和装置
CN105900495A (zh) * 2014-01-13 2016-08-24 高通股份有限公司 用于降低无线通信中的功耗的系统和方法
CN105991477A (zh) * 2015-02-11 2016-10-05 腾讯科技(深圳)有限公司 一种语音抖动缓冲区的调整方法及装置
CN107450534A (zh) * 2017-07-28 2017-12-08 珞石(山东)智能科技有限公司 用于处理机器人网络通信抖动的鲁棒规划系统
CN108306716A (zh) * 2017-01-13 2018-07-20 中国移动通信有限公司研究院 一种数据传输方法及数据传输装置
CN110300429A (zh) * 2018-03-23 2019-10-01 中国移动通信集团广东有限公司 调整缓存长度的方法、装置、电子设备和存储介质
CN110618879A (zh) * 2019-08-15 2019-12-27 北京三快在线科技有限公司 消息处理方法、装置、电子设备和计算机可读介质
CN110856028A (zh) * 2018-08-20 2020-02-28 上海途擎微电子有限公司 一种媒体数据的播放方法、设备及存储介质
CN111901678A (zh) * 2020-07-31 2020-11-06 成都云格致力科技有限公司 一种面向tcp实时视频流的抗抖动平滑方法及其系统
CN111917656A (zh) * 2017-07-27 2020-11-10 华为技术有限公司 传输数据的方法和设备
CN116321276A (zh) * 2023-05-19 2023-06-23 阿里巴巴(中国)有限公司 时延确定方法、通信网络、设备和存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1241363C (zh) * 2002-12-06 2006-02-08 北京格林威尔科技发展有限公司 电路业务在基于以太网的无源光网络上传输的方法
DE502004011378D1 (de) * 2003-03-20 2010-08-26 Siemens Ag Verfahren und Jitterpufferregelschaltung zur Regelung eines Jitterpuffers
US20050047396A1 (en) * 2003-08-29 2005-03-03 Helm David P. System and method for selecting the size of dynamic voice jitter buffer for use in a packet switched communications system
US8331385B2 (en) * 2004-08-30 2012-12-11 Qualcomm Incorporated Method and apparatus for flexible packet selection in a wireless communication system
US8085678B2 (en) * 2004-10-13 2011-12-27 Qualcomm Incorporated Media (voice) playback (de-jitter) buffer adjustments based on air interface

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697631B (zh) * 2009-10-28 2015-05-13 中兴通讯股份有限公司 一种可序数据包的乱序调整方法及装置
CN101697631A (zh) * 2009-10-28 2010-04-21 中兴通讯股份有限公司 一种可序数据包的乱序调整方法及装置
CN102123073A (zh) * 2010-01-07 2011-07-13 华为技术有限公司 数据包重排序方法及装置
CN102123073B (zh) * 2010-01-07 2014-10-08 华为技术有限公司 数据包重排序方法及装置
CN101808117B (zh) * 2010-03-03 2012-11-14 清华大学 一种通信中时间标签业务数据的构造及服务方法
CN101808117A (zh) * 2010-03-03 2010-08-18 清华大学 一种通信中时间标签业务数据的构造及服务方法
CN102025635A (zh) * 2010-12-16 2011-04-20 浪潮(北京)电子信息产业有限公司 一种工作在全双工模式下的网络流量控制方法及装置
CN102118192A (zh) * 2011-02-18 2011-07-06 中兴通讯股份有限公司 帧选择方法及装置
CN102118192B (zh) * 2011-02-18 2015-01-21 中兴通讯股份有限公司 帧选择方法及装置
CN102104909B (zh) * 2011-03-17 2014-03-26 华为技术有限公司 数据处理方法及装置
CN102104909A (zh) * 2011-03-17 2011-06-22 华为技术有限公司 数据处理方法及装置
CN105900495A (zh) * 2014-01-13 2016-08-24 高通股份有限公司 用于降低无线通信中的功耗的系统和方法
CN104934040A (zh) * 2014-03-17 2015-09-23 华为技术有限公司 音频信号的时长调整方法和装置
CN104202659B (zh) * 2014-09-16 2017-10-17 国家计算机网络与信息安全管理中心 网络视频流乱序分段解码方法
CN104202659A (zh) * 2014-09-16 2014-12-10 国家计算机网络与信息安全管理中心 网络视频流乱序分段解码方法
CN105991477A (zh) * 2015-02-11 2016-10-05 腾讯科技(深圳)有限公司 一种语音抖动缓冲区的调整方法及装置
CN105991477B (zh) * 2015-02-11 2019-07-19 腾讯科技(深圳)有限公司 一种语音抖动缓冲区的调整方法及装置
CN105743815B (zh) * 2016-04-06 2021-09-10 腾讯科技(深圳)有限公司 抖动缓冲数据处理的方法和装置
CN105743815A (zh) * 2016-04-06 2016-07-06 腾讯科技(深圳)有限公司 抖动缓冲数据处理的方法和装置
CN108306716B (zh) * 2017-01-13 2020-04-14 中国移动通信有限公司研究院 一种数据传输方法及数据传输装置
CN108306716A (zh) * 2017-01-13 2018-07-20 中国移动通信有限公司研究院 一种数据传输方法及数据传输装置
CN111917656B (zh) * 2017-07-27 2023-11-07 超聚变数字技术有限公司 传输数据的方法和设备
CN111917656A (zh) * 2017-07-27 2020-11-10 华为技术有限公司 传输数据的方法和设备
CN107450534B (zh) * 2017-07-28 2020-11-27 珞石(山东)智能科技有限公司 用于处理机器人网络通信抖动的鲁棒规划系统
CN107450534A (zh) * 2017-07-28 2017-12-08 珞石(山东)智能科技有限公司 用于处理机器人网络通信抖动的鲁棒规划系统
CN110300429A (zh) * 2018-03-23 2019-10-01 中国移动通信集团广东有限公司 调整缓存长度的方法、装置、电子设备和存储介质
CN110856028A (zh) * 2018-08-20 2020-02-28 上海途擎微电子有限公司 一种媒体数据的播放方法、设备及存储介质
CN110856028B (zh) * 2018-08-20 2021-12-14 上海途擎微电子有限公司 一种媒体数据的播放方法、设备及存储介质
CN110618879A (zh) * 2019-08-15 2019-12-27 北京三快在线科技有限公司 消息处理方法、装置、电子设备和计算机可读介质
CN111901678A (zh) * 2020-07-31 2020-11-06 成都云格致力科技有限公司 一种面向tcp实时视频流的抗抖动平滑方法及其系统
CN111901678B (zh) * 2020-07-31 2022-08-23 成都云格致力科技有限公司 一种面向tcp实时视频流的抗抖动平滑方法及其系统
CN116321276A (zh) * 2023-05-19 2023-06-23 阿里巴巴(中国)有限公司 时延确定方法、通信网络、设备和存储介质
CN116321276B (zh) * 2023-05-19 2023-10-31 阿里巴巴(中国)有限公司 时延确定方法、通信网络、设备和存储介质

Also Published As

Publication number Publication date
CN101304557B (zh) 2012-09-05

Similar Documents

Publication Publication Date Title
CN101304557B (zh) 一种分组传输控制方法及装置
US6192029B1 (en) Method and apparatus for performing flow control in a wireless communications system
KR101012683B1 (ko) 가변 지연 및 대역폭 조건 하에서 무선 링크를 통한 비디오 패킷
EP1159839B1 (en) Reduced delay priority for comfort noise
US7047310B2 (en) Flow control in a packet data communication system
CN1265591C (zh) 无线通信网中载送分组语音和数据的方法和设备
US6785557B2 (en) Method of transmitting data, in particular GSM data
US6205125B1 (en) Method and system for determining an estimate of a transmission time of a packet
EP2159976A1 (en) Relay device and relay method
CN1173955A (zh) 非均匀不透明数据信道上的速率适配
KR20060027415A (ko) 다운링크 전송 동기화 방법
CN101449545A (zh) 使用抖动缓冲器通信及处理voip数据包的方法和系统
JP2003517800A (ja) ディジタル移動通信システムにおけるデータの非トランスペアレント送信の方法
WO2006086691A2 (en) A network for providing a streaming service
US7561552B2 (en) Method for adaptive channel signaling
EP1166507B1 (en) A method in a packet communication system for transmission of packets with priority given to some data segments
CN101990241B (zh) 一种分组数据传输系统和方法
US8023449B2 (en) Method of data preservation and minimizing reduction in data throughput in the event of a cell change
EP1661342A2 (en) System and method for controlling the operating characteristics of a buffer
JP2002218004A (ja) データを分配の際の遅延時間を低減する方法と装置
EP2129051A1 (en) A method and system for realizing the voice compensation in the mobile communication network
CN101540655B (zh) 一种动态打包语音帧的方法及系统
CN101399762A (zh) 流量控制方法、发送实体及接收实体
JP2001525134A (ja) 同期誤りの訂正方法および無線システム
KR20040069568A (ko) 이동통신 시스템의 기지국에서 패킷 전송 방법 및 장치

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120905

Termination date: 20180425

CF01 Termination of patent right due to non-payment of annual fee