CN101369866A - 一种测试流媒体传输质量的方法和设备 - Google Patents
一种测试流媒体传输质量的方法和设备 Download PDFInfo
- Publication number
- CN101369866A CN101369866A CNA2008101676355A CN200810167635A CN101369866A CN 101369866 A CN101369866 A CN 101369866A CN A2008101676355 A CNA2008101676355 A CN A2008101676355A CN 200810167635 A CN200810167635 A CN 200810167635A CN 101369866 A CN101369866 A CN 101369866A
- Authority
- CN
- China
- Prior art keywords
- package
- buffer memory
- buf
- media stream
- desired value
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种测试流媒体传输质量的方法和设备,包括:收到完整的IP封包;判断封包是否为RTP封装,若是则继续,否则返回;记录RTP序号,记录封包到达的时间,计算封包长度;根据当前已接收到的封包的累加长度、网络限速带宽和封包到达的时间,计算当前封包到达时,对缓存的需求量;以及根据当前封包到达前已接收到的封包的累加长度、媒体流编码速率和封包到达的时间,计算P封包到前,缓存中还剩的媒体封包长度;判断指标值的计算周期是否到达,若是,则继续;计算指标值,包括根据封包到达时,对缓存的需求量,计算媒体流抖动引起的缓存溢出因素;以及根据封包到前,缓存中还剩的媒体封包长度,计算媒体流抖动引起的缓存清空因素。
Description
技术领域
本发明涉及流媒体业务平台和互联网协议(IP)网络技术,特别是指一种流媒体在IP网络传输过程中,在IP网络各环节(包括流媒体发送端)的质量状况的测试方法和设备。
背景技术
网络视频(IPTV)是通过IP网络向用户提供的流媒体服务。流媒体不同于一般的信息浏览,而是完整、流畅、赏心悦目的多媒体展现,需以有序、低丢包、稳定的速率在IP网络上传送才得以实现。而IP网络是基于“尽力而为”和开放性原则建立的,流媒体在网络传输过程会产生丢包、延时和抖动,这些传输特性是造成图像质量下降(视频停顿、马赛克、黑白屏、暴音等)的主要因素。同时,从流媒体服务器发送出来的媒体流,也会存在丢包和抖动的现象,也同样会造成图像质量的下降。
流媒体在传输过程中的丢包、延时和抖动对图像质量的影响是:
1)丢包:基于UDP的组播流,由于没有重传机制的,丢一个包就会造成图像的停顿或马赛克;有重传机制的单播流,过高的丢包率对图像质量也有影响。
2)延时:延时表现为媒体流从发送端到接收端的恒定延迟。对于组播流,适当的延时,只会延迟节目的播放时间,对图像质量没有直接影响。对于单播流,在传输控制协议(TCP)传输机制下,如发送端在一定时间内没有收到接收端的ACK确认报文,发送端就会重发数据包,从而影响图像的质量。
3)抖动:抖动表现为媒体流从发送端到接收端的延迟变化。当媒体编码器按恒定速率编码时,媒体流抖动就表现为媒体流速率的变化。在网络限速节点或汇聚节点以及接收端,过大的抖动会引起丢包;另外,在接收端,过大的抖动还会引起断流。解决抖动的方法是,减小抖动和增加网络节点及接收端的缓存。
目前,测试流媒体传输质量主要采用媒体流传输指标(MDI,Media Delivery Index)指标。该指标由Cisco及IneoQuestTechnologies公司提出,并被IETF采纳,标准号为RFC4445。MDI定义了两个流媒体传输性能指标:延时因子(DF,Delay Factor)和媒体流损失率(MLR,Media Loss Rate)。DF数值表明被测流媒体的抖动状况,DF的单位是毫秒(ms),DF将流媒体抖动的变化换算为对网络节点和接收端缓存的需求;MLR的单位是每秒的媒体封包丢失数量,该数值表明被测试流媒体的传输丢包速率。
然而,现有技术中,基于上述RFC4445定义的MDI指标,对流媒体传输质量进行测试的方法,在现网实际测试过程中,仍然不够准确,比较粗糙,存在着很多问题,比如:无法准确反映出,在监测点的媒体流抖动,是否超过了下行方向各网络节点的缓存的承受力,以至于造成丢包;无法准确反映出,在监测点的媒体流抖动,是否超过了接收端的缓存,以至于造成断流;无法准确反映出,在监测点的媒体流封包的丢包情况和重传情况。其原因主要是在现网实际测试过程中,RFC4445定义的MDI指标存在以下问题:
1)RFC4445的计算模型没有区分缓存溢出(丢包)和清空(断流),没有区分网络设备和接收端设备的缓存需求。由于接收端(机顶盒)的缓存要远大于网络节点的缓存,因此,计算流媒体的缓存溢出应针对于网络节点设备,计算流媒体的缓存清空应针对于接收端设备。
2)计算缓存溢出,应采用网络限速带宽;计算缓存清空,应采用流媒体编码速率。而RFC4445都使用了MR,即流媒体编码速率。
3)RFC 4445 DF参数单位为ms,不能直观反映缓存需求。
4)RFC 4445计算模型只针对组播流,对于基于TCP的单播流,没有具体的测试方法。
发明内容
有鉴于此,本发明提出一种更合理的测试流媒体传输质量的方法和设备。以便准确反映出在监测点的媒体流抖动,是否超过了下行方向各网络节点的缓存的承受力,以至于造成丢包;能准确反映出,在监测点的媒体流抖动,是否超过了接收端的缓存,以至于造成断流;能准确反映出,在监测点的媒体流封包的丢包情况和重传情况。
基于上述目的本发明提供的一种测试流媒体传输质量的方法,包括:
A.初始化计算参数;
B.等待收到完整的互联网协议IP封包P(i);
C.判断封包是否为RTP封装,如果是,则进入步骤D,否则,返回步骤B;
D.记录RTP序号,记录封包P(i)到达的时间,计算封包长度;
E.根据当前已接收到的封包的累加长度、网络限速带宽和封包P(i)到达的时间,计算当前封包P(i)到达时,对缓存的需求量Buf_ov(i);以及根据当前封包P(i)到达前已接收到的封包的累加长度、媒体流编码速率和封包P(i)到达的时间,计算P(i)封包到前,缓存中还剩的媒体封包长度Buf_cl(i);
F.判断指标值的计算周期是否到达,如果是,则进入步骤G,否则返回步骤B;
G.计算指标值,包括根据封包P(i)到达时,对缓存的需求量Buf_ov(i),计算媒体流抖动引起的缓存溢出因素BUFov;以及根据封包P(i)到前,缓存中还剩的媒体封包长度Buf_cl(i),计算媒体流抖动引起的缓存清空因素BUFcl。
可选的,该方法所述步骤A前进一步包括:设定运行参数,包括设定指标值的计算周期,设定接入带宽,设定网络限速端口的缓存大小或突发数据量,设定机顶盒的缓存大小。
可选的,该方法所述步骤A前还包括:设定编码速率,或通过RTP封包PCR字段计算编码速率。
可选的,该方法所述指标值的计算周期设定为5秒;所述接入带宽为DSL限速或BRAS限速。
可选的,该方法步骤A所述初始化计算参数包括:将计算周期的时钟清零,计算变量和指标值分别清空。
可选的,该方法步骤E所述P(i)封包到达时,对缓存的需求量Buf_ov(i)的计算为Buf_ov(i)=(SUM(S(i))-C×T(i))×8;i=1...i,其中C为网络限速带宽,SUM(S(i))为对S(1)、S(2)...S(i)的累加,T(i)是封包P(i)到的时间;
对P(i)封包到前,缓存中还剩的媒体封包Buf_cl(i)的计算为Buf_cl(i)=(SUM(S(j))-A×T(i))×8;i=1...i-1,其中A为媒体流编码速率,SUM(S(j))为对S(0)、S(1)...S(i-1)的累加,S(0)为0。
可选的,该方法步骤G所述媒体流抖动引起的缓存溢出因素BUFov的计算为BUFov=MAX(Buf_ov(i)),i=0...i;
所述媒体流抖动引起的缓存清空因素BUFcl的计算为BUFcl=-MIN(Buf_cl(i)),i=0...i。
可选的,该方法所述步骤G中计算的指标值还包括:媒体流的丢包因素MLR,MLR=Ploss/Pnum,其中Pnum为一个计算周期内应收到的总媒体封包数,Ploss为一个计算周期内的丢包数;
传输控制协议TCP流的重传因素TCPRPT,TCPRPT=Prpt/Pnum,其中Prpt为一个计算周期内重传的媒体封包数。
可选的,该方法还包括:H.将步骤G计算的指标值记录到数据库中,并进行显示。
可选的,该方法步骤H中所述指标值显示的方式为显示在测试过程中各指标值的平均值、最大值、最小值中的一个或一个以上。
可选的,该方法步骤B前还包括:通过分光或镜像的方法,从设置在网络中的监测点获取媒体流。
可选的,该方法步骤H后进一步包括:返回步骤A。
基于上述目的,本发明还提供了一种测试流媒体传输质量的设备,包括:
封包处理模块,用于判断封包是否为RTP封装,并对RTP封装的封包记录RTP序号、封包P(i)到达的时间、计算封包长度;
数据计算模块,用于接收封包处理模块的处理结果,并根据该处理结果计算在计算周期内的各项指标值,包括:根据当前已接收到的封包的累加长度、网络限速带宽和封包P(i)到达的时间,计算当前封包P(i)到达时,对缓存的需求量Buf_ov(i);以及根据当前封包P(i)到达前已接收到的封包的累加长度、媒体流编码速率和封包P(i)到达的时间,计算P(i)封包到前,缓存中还剩的媒体封包长度Buf_cl(i);并根据封包P(i)到达时,对缓存的需求量Buf_ov(i),计算媒体流抖动引起的缓存溢出因素BUFov;以及根据封包P(i)到前,缓存中还剩的媒体封包长度Buf_cl(i),计算媒体流抖动引起的缓存清空因素BUFcl;
时钟,与数据计算模块连接,用于对计算周期进行定时;
显示模块,用于接收数据计算模块输出的指标值,对指标值进行显示;
存储模块,用于接收数据计算模块输出的指标值,对指标值进行存储。
可选的,该设备还包括:网络接口,用于对从设置在网络中的监测点获取的媒体流信号进行光电信号转换后发送给封包处理模块。
可选的,该设备所述数据计算模块对P(i)封包到达时,对缓存的需求量Buf_ov(i)的计算为Buf_ov(i)=(SUM(S(i))-C×T(i))×8;i=1...i,其中C为网络限速带宽,SUM(S(i))为对S(1)、S(2)...S(i)的累加,T(i)是封包P(i)到的时间;
所述数据计算模块对P(i)封包到前,缓存中还剩的媒体封包Buf_cl(i)的计算为Buf_cl(i)=(SUM(S(j))-A×T(i))×8;i=1...i-1,其中A为媒体流编码速率,SUM(S(j))为对S(0)、S(1)...S(i-1)的累加,S(0)为0。
可选的,该设备所述数据计算模块对媒体流抖动引起的缓存溢出因素BUFov的计算为BUFov=MAX(Buf_ov(i)),i=0...i;
所述数据计算模块对所述媒体流抖动引起的缓存清空因素BUFcl的计算为BUFcl=-MIN(Buf_cl(i)),i=0...i。
可选的,该设备所述数据计算模块计算的指标值还包括:媒体流的丢包因素MLR,MLR=Ploss/Pnum,其中Pnum为一个计算周期内应收到的总媒体封包数,Ploss为一个计算周期内的丢包数;
传输控制协议TCP流的重传因素TCPRPT,TCPRPT=Prpt/Pnum,其中Prpt为一个计算周期内重传的媒体封包数。
从上面所述可以看出,本发明提供的流媒体传输质量测试方法和设备,通过更合理检测指标的计算,解决了当前被广泛使用的RFC4445定义的流媒体传输质量指标所存在的不足,能够区分抖动引起的缓存溢出和清空,区分设备,并具有针对性;并可对基于TCP的单播流进行测试。
并且,本发明能准确反映出在监测点的媒体流抖动,是否超过了下行方向各网络节点的缓存的承受力,以至于造成丢包;能准确反映出,在监测点的媒体流抖动,是否超过了接收端的缓存,以至于造成断流;能准确反映出,在监测点的媒体流封包的丢包情况和端到端的重传情况,以反映网络的质量。
本发明在实际应用中,可提升测试的准确性和针对性。
附图说明
图1为本发明实施例流媒体传输质量指标的计算流程示意图;
图2为本发明实施例流媒体传输质量测试连接示意图;
图3为本发明实施例流媒体传输质量测试设备的组成结构示意图;
图4a为限速环节无缓存情况下抖动引起丢包和断流的原理示意图;
图4b为限速环节有缓存情况下抖动引起丢包和断流的原理示意图。
具体实施方式
下面参照附图对本发明的示例性实施例进行更全面的描述。
首先,对抖动引起丢包和断流的原理进行分析:
在网络限速节点或汇聚节点以及接收端,过大的抖动会引起丢包;另外,在接收端,过大的抖动还会引起断流。
其原理参见图4a、4b所示,设媒体流的编码速率为A,媒体流的传输速率为B(t),一般情况下,B(t)的平均值=A。设网络限速带宽为C,则A应小于C。
如网络无缓存,则当B(t)>C时,就会丢包,如图4a所示。如网络有缓存,则当B(t)的波动不太大时,输出的媒体流就没有丢包,如图4b所示,但是当B(t)的波动过大时,也会产生丢包。理论上任意时刻t都应满足公式(1),否则就会产生丢包。
其中,Buf为缓存大小。
对于接收端(机顶盒),除了媒体流抖动过大形成丢包外,还存在一种可能,就是当媒体流速率持续降低直至接收端的缓存清空,而造成的媒体流断流,也会引起图像质量主管感受不好。为避免接收端缓存清空,理论上任意时刻t都应满足公式(2),否则就会产生断流。
其中,Buf为缓存大小。
视频传输质量的指标计算:
BUFov:媒体流抖动引起的缓存溢出因素,单位Byte。
当某一IP封包P(i)到网络设备或接收端解码器时,为使缓存不溢出,根据公式(1),对缓存大小BUFov需求的计算方法为:
设,S(i)=IP封包P(i)的字节数,单位bit;
Buf_ov(i)=(SUM(S(i))-C×T(i))×8;i=1...i;
其中,Buf_ov(i)表示P(i)封包到时,对缓存的需求量,单位Byte;C为网络限速带宽(单位:bps);SUM(S(i))为对S(1)、S(2)...S(i)的累加;T(i)是P(i)到的时间。
由于媒体流是一直持续的,所以必须有一个测试周期,每个周期计算出一个指标值,一般情况下,计算周期可设为5s。
设Buf_ov(0)=0,在一个计算周期内BUFov=MAX(Buf_ov(i)),i=0...i;BUFov的单位为Byte。
BUFov的物理意义是,BUFov必须小于网络限速环节(如DSLAM)的缓存大小,否则就容易形成丢包。对于进入IP网的媒体流,必须设定BUFov的限制。
BUFcl:媒体流抖动引起的缓存清空因素,单位Byte。
当某一IP封包P(i)到接收端解码器前,为使缓存不清空,根据公式(2),对缓存大小BUFcl需求的计算方法为:
设,S(i)=IP封包P(i)的字节数,单位bit;
Buf_cl(i)=(SUM(S(j))-A×T(i))×8;i=1...i-1;
其中,Buf_cl(i)表示P(i)封包到前,缓存中还剩的媒体封包长度,单位Byte;A为媒体流编码速率(单位:bps);SUM(S(j))为对S(0)、S(1)...S(i-1)的累加,S(0)为0;T(i)是P(i)到的时间。
由于媒体流是一直持续的,所以必须有一个测试周期,每个周期计算出一个指标值,一般情况下,计算周期可设为5s。
设Buf_cl(0)=0,在一个计算周期内BUFcl=-MIN(Buf_cl(i)),i=0...i;BUFcl的单位为Byte。
BUFcl的物理意义是,BUFcl必须小于接收端解码器的缓存大小,否则就容易形成断流。需要指出的是,接收端解码器的物理缓存要大于实际使用的缓存,本计算值针对的是接收端实际使用的缓存。对于进入IP网的媒体流,必须设定BUFcl的限制。
基于上述分析,本发明实施例的流媒体传输质量指标的具体计算流程,参见图1所示,包括以下步骤:
步骤101,设定运行参数。
具体可包括:
设定指标值的计算周期,一般为5秒(s),每5s计算出一组指标值;
设定接入带宽,一般为DSL限速或BRAS限速,单位bps;
设定编码速率,如不设定,可通过RTP封包PCR字段计算得到;
设定网络限速端口的缓存大小(或突发数据量),单位Byte;
设定机顶盒的缓存大小,单位Byte。
步骤102,计算变量初始。
具体可包括:时钟清为0,计算变量和指标值分别清空(NULL)。
步骤103,收到IP封包P(i)。
具体可包括:等待收到完整的IP封包P(i),如果未收到则始终等待。
步骤104,判断是否为媒体流封包,如果是,则进入步骤105,否则,返回步骤103。
其中,判断媒体流封包的依据是判断是否为RTP封装。
步骤105,记录RTP序号,记录封包到的时间,计算封包长度。
步骤106,计算Buf_ov(i)、Buf_cl(i)。
其中,Buf_ov(i)为P(i)封包到时,对缓存的需求,单位Byte;Buf_cl(i)表示P(i)封包到前,缓存中还剩的媒体封包,单位Byte。
根据上面的描述,本发明实施例中,步骤306具体可包括:
设,S(i)=IP封包P(i)的字节数,单位bit;
Buf_ov(i)=(SUM(S(i))-C×T(i))×8;i=1...i;
其中,Buf_ov(i)表示P(i)封包到达时,对缓存的需求,单位Byte;C为网络限速带宽(单位:bps);SUM(S(i))为对S(1)、S(2)...S(i)的累加;T(i)是P(i)到的时间。
Buf_cl(i)=(SUM(S(j))-A×T(i))×8;i=1...i-1;
其中,Buf_cl(i)表示P(i)封包到前,缓存中还剩的媒体封包,单位Byte;A为媒体流编码速率(单位:bps);SUM(S(j))为对S(0)、S(1)...S(i-1)的累加,S(0)为0;T(i)是P(i)到的时间。
步骤107,判断计算周期是否到达,如果是,则进入步骤108,否则返回步骤103。
可以看出,在本步骤中,如果计算周期(一般为5s)未到,则继续记录相关信息,计算Buf_ov(i)、Buf_cl(i)等的值。如果计算周期到,则计算相关指标值。
步骤108,指标值计算。
所述需计算的指标值可包括:
BUFov=MAX(Buf_ov(i)),i=0...i;
BUFcl=-MIN(Buf_cl(i)),i=0...i;
以及还根据需要可以包括:
MLR=Ploss/Pnum;
TCPRPT=Prpt/Pnum,Pnum应收到的封包数,Prpt重传包数。
其中,MLR为媒体流的丢包因素。
MLR的物理意义为:在一个计算周期内,丢失的媒体封包率,不计乱序封包数。媒体流RTP封包有序号。
Pnum为应收到的封包数,Ploss为丢包数;
Pnum=一个计算周期内,应该收到的总媒体封包数;
Ploss=一个计算周期内,被丢弃的媒体封包数。
TCPRPT为TCP流的重传因素。
TCPRPT的物理意义为:在一个计算周期内,TCP单播流的重传率,反映网络端到端的质量状况。
Pnum=一个计算周期内,应该收到的总媒体封包数;
Prpt=一个计算周期内,重传的媒体封包数。
例如,在一个周期内收到的RTP序号为:1、2、3、4、1、5、3、6,那么序号1、3为重传报文,重传数为2。
步骤109,指标值入库和显示。
具体可包括:将计算的指标值记录到数据库中,并实时显示,显示的方式可以为在测试过程中,各指标值的平均值、最大值和最小值,可以是其中的某一项或多项值,比如:只显示平均值;或者,只显示最大值和最小值等。
在指标值入库和显示完成后,可以返回步骤102,准备进行下一轮数据接收并测试。
本发明实施例的流媒体传输质量测试在实际应用中的连接结构参见图2所示。在IP网络中媒体流发送端发出的媒体流经过n个网络节点传输到媒体流接收端。在媒体流传输过程中,可通过分光或镜像的方法,把监测点的媒体流送到流媒体传输质量测试设备上。
图2所示的例子中,流媒体传输质量测试设备所测试的BUFov应小于网络节点2....n中限速设备(例如DSLAM或Bras)的缓存或突发允许量;BUFcl应小于媒体流接收端的缓存;MLR表示从媒体流发送端到监测点(图例为节点1后)的丢包情况,一般用于组播业务;TCPRPT表示从媒体流发送端到接收端的媒体封包重传情况,能直接反映端到端的网络状况,一般用于有重传机制的单播业务。
参见图3所示,基于上述方法本发明流媒体质量测试设备的组成结构的实施例,主要包括:
网络接口301,一般为光电网络接口,对从设置在网络中的监测点获取的媒体流信号进行光电信号转换后发送给封包处理模块处理。
封包处理模块302,实现对封包的判断,统计封包的长度。
主要用于判断封包是否为RTP封装,并对RTP封装的封包记录RTP序号、封包P(i)到达的时间、计算封包长度。
数据计算模块303,实现对指标值的计算。
主要包括:接收封包处理模块302的处理结果,并根据该处理结果计算在计算周期内的各项指标值,包括:根据当前已接收到的封包的累加长度、网络限速带宽和封包P(i)到达的时间,计算当前封包P(i)到达时,对缓存的需求量Buf_ov(i);以及根据当前封包P(i)到达前已接收到的封包的累加长度、媒体流编码速率和封包P(i)到达的时间,计算P(i)封包到前,缓存中还剩的媒体封包长度Buf_cl(i);并根据封包P(i)到达时,对缓存的需求量Buf_ov(i),计算媒体流抖动引起的缓存溢出因素BUFov;以及根据封包P(i)到前,缓存中还剩的媒体封包长度Buf_cl(i),计算媒体流抖动引起的缓存清空因素BUFcl。
并且还可以进一步计算:媒体流的丢包因素MLR和TCP流的重传因素TCPRPT。
时钟304,与数据计算模块303连接,实现计算周期定时,发送定时开始、定时结束的信号给数据计算模块303。
显示模块305,用于接收数据计算模块303输出的指标值,对指标值进行显示。
存储模块306,用于接收数据计算模块303输出的指标值,对指标值进行存储。
本发明方案解决了当前被广泛使用的RFC4445定义的流媒体传输质量指标所存在的不足,其不足表现在:DF值没有区分抖动引起的缓存溢出和清空,没有区分设备,缺乏针对性;无法对基于TCP的单播流进行测试。
本发明提出的流媒体传输质量测试方法,能准确反映出,在监测点的媒体流抖动,是否超过了下行方向各网络节点的缓存的承受力,以至于造成丢包;能准确反映出,在监测点的媒体流抖动,是否超过了接收端的缓存,以至于造成断流;能准确反映出,在监测点的媒体流封包的丢包情况和端到端的重传情况,以反映网络的质量。
本发明的流媒体传输质量测试方法在实际应用中,可提升测试的准确性和针对性。
本发明的描述是为了示例和说明起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (17)
1.一种测试流媒体传输质量的方法,其特征在于,包括:
A.初始化计算参数;
B.等待收到完整的互联网协议IP封包P(i);
C.判断封包是否为RTP封装,如果是,则进入步骤D,否则,返回步骤B;
D.记录RTP序号,记录封包P(i)到达的时间,计算封包长度;
E.根据当前已接收到的封包的累加长度、网络限速带宽和封包P(i)到达的时间,计算当前封包P(i)到达时,对缓存的需求量Buf_ov(i);以及根据当前封包P(i)到达前已接收到的封包的累加长度、媒体流编码速率和封包P(i)到达的时间,计算P(i)封包到前,缓存中还剩的媒体封包长度Buf_cl(i);
F.判断指标值的计算周期是否到达,如果是,则进入步骤G,否则返回步骤B;
G.计算指标值,包括根据封包P(i)到达时,对缓存的需求量Buf_ov(i),计算媒体流抖动引起的缓存溢出因素BUFov;以及根据封包P(i)到前,缓存中还剩的媒体封包长度Buf_cl(i),计算媒体流抖动引起的缓存清空因素BUFcl。
2.根据权利要求1所述的方法,其特征在于,所述步骤A前进一步包括:设定运行参数,包括设定指标值的计算周期,设定接入带宽,设定网络限速端口的缓存大小或突发数据量,设定机顶盒的缓存大小。
3.根据权利要求2所述的方法,其特征在于,所述步骤A前还包括:设定编码速率,或通过RTP封包PCR字段计算编码速率。
4.根据权利要求2或3所述的方法,其特征在于,所述指标值的计算周期设定为5秒;所述接入带宽为DSL限速或BRAS限速。
5.根据权利要求1所述的方法,其特征在于,步骤A所述初始化计算参数包括:将计算周期的时钟清零,计算变量和指标值分别清空。
6.根据权利要求1所述的方法,其特征在于,步骤E所述P(i)封包到达时,对缓存的需求量Buf_ov(i)的计算为Buf_ov(i)=(SUM(S(i))-C×T(i))×8;i=1...i,其中C为网络限速带宽,SUM(S(i))为对S(1)、S(2)...S(i)的累加,T(i)是封包P(i)到的时间;
对P(i)封包到前,缓存中还剩的媒体封包Buf_cl(i)的计算为Buf_cl(i)=(SUM(S(j))-A×T(i))×8;i=1...i-1,其中A为媒体流编码速率,SUM(S(j))为对S(0)、S(1)...S(i-1)的累加,S(0)为0。
7.根据权利要求1或6所述的方法,其特征在于,步骤G所述媒体流抖动引起的缓存溢出因素BUFov的计算为BUFov=MAX(Buf_ov(i)),i=0...i;
所述媒体流抖动引起的缓存清空因素BUFcl的计算为BUFcl=-MIN(Buf_cl(i)),i=0...i。
8.根据权利要求1所述的方法,其特征在于,所述步骤G中计算的指标值还包括:媒体流的丢包因素MLR,MLR=Ploss/Pnum,其中Pnum为一个计算周期内应收到的总媒体封包数,Ploss为一个计算周期内的丢包数;
传输控制协议TCP流的重传因素TCPRPT,TCPRPT=Prpt/Pnum,其中Prpt为一个计算周期内重传的媒体封包数。
9.根据权利要求1或8所述的方法,其特征在于,还包括:H.将步骤G计算的指标值记录到数据库中,并进行显示。
10.根据权利要求9所述的方法,其特征在于,步骤H中所述指标值显示的方式为显示在测试过程中各指标值的平均值、最大值、最小值中的一个或一个以上。
11.根据权利要求9所述的方法,其特征在于,步骤H后进一步包括:返回步骤A。
12.根据权利要求1所述的方法,其特征在于,步骤B前还包括:通过分光或镜像的方法,从设置在网络中的监测点获取媒体流。
13.一种测试流媒体传输质量的设备,其特征在于,包括:
封包处理模块,用于判断封包是否为RTP封装,并对RTP封装的封包记录RTP序号、封包P(i)到达的时间、计算封包长度;
数据计算模块,用于接收封包处理模块的处理结果,并根据该处理结果计算在计算周期内的各项指标值,包括:根据当前已接收到的封包的累加长度、网络限速带宽和封包P(i)到达的时间,计算当前封包P(i)到达时,对缓存的需求量Buf_ov(i);以及根据当前封包P(i)到达前已接收到的封包的累加长度、媒体流编码速率和封包P(i)到达的时间,计算P(i)封包到前,缓存中还剩的媒体封包长度Buf_cl(i);并根据封包P(i)到达时,对缓存的需求量Buf_ov(i),计算媒体流抖动引起的缓存溢出因素BUFov;以及根据封包P(i)到前,缓存中还剩的媒体封包长度Buf_cl(i),计算媒体流抖动引起的缓存清空因素BUFcl;
时钟,与数据计算模块连接,用于对计算周期进行定时;
显示模块,用于接收数据计算模块输出的指标值,对指标值进行显示;
存储模块,用于接收数据计算模块输出的指标值,对指标值进行存储。
14.根据权利要求13所述的设备,其特征在于,还包括:网络接口,用于对从设置在网络中的监测点获取的媒体流信号进行光电信号转换后发送给封包处理模块。
15.根据权利要求13所述的设备,其特征在于,所述数据计算模块对P(i)封包到达时,对缓存的需求量Buf_ov(i)的计算为Buf_ov(i)=(SUM(S(i))-C×T(i))×8;i=1...i,其中C为网络限速带宽,SUM(S(i))为对S(1)、S(2)...S(i)的累加,T(i)是封包P(i)到的时间;
所述数据计算模块对P(i)封包到前,缓存中还剩的媒体封包Bur_cl(i)的计算为Buf_cl(i)=(SUM(S(j))-A×T(i))×8;i=1...i-1,其中A为媒体流编码速率,SUM(S(j))为对S(0)、S(1)...S(i-1)的累加,S(0)为0。
16.根据权利要求15所述的设备,其特征在于,所述数据计算模块对媒体流抖动引起的缓存溢出因素BUFov的计算为BUFov=MAX(Buf_ov(i)),i=0...i;
所述数据计算模块对所述媒体流抖动引起的缓存清空因素BUFcl的计算为BUFcl=-MIN(Buf_cl(i)),i=0...i。
17.根据权利要求13所述的设备,其特征在于,所述数据计算模块计算的指标值还包括:媒体流的丢包因素MLR,MLR=Ploss/Pnum,其中Pnum为一个计算周期内应收到的总媒体封包数,Ploss为一个计算周期内的丢包数;
传输控制协议TCP流的重传因素TCPRPT,TCPRPT=Prpt/Pnum,其中Prpt为一个计算周期内重传的媒体封包数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101676355A CN101369866B (zh) | 2008-10-21 | 2008-10-21 | 一种测试流媒体传输质量的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101676355A CN101369866B (zh) | 2008-10-21 | 2008-10-21 | 一种测试流媒体传输质量的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101369866A true CN101369866A (zh) | 2009-02-18 |
CN101369866B CN101369866B (zh) | 2011-07-27 |
Family
ID=40413519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101676355A Active CN101369866B (zh) | 2008-10-21 | 2008-10-21 | 一种测试流媒体传输质量的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101369866B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148743A (zh) * | 2010-02-05 | 2011-08-10 | 联芯科技有限公司 | 一种数据流量的控制方法、装置及移动终端 |
CN102149022A (zh) * | 2011-01-20 | 2011-08-10 | 德科仕通信(上海)有限公司 | 提高计算mpeg-ts层丢包数精准度的方法及系统 |
CN101764825B (zh) * | 2010-02-08 | 2012-12-19 | 成都市华为赛门铁克科技有限公司 | 虚拟专用网的数据传输方法、系统及终端、网关设备 |
CN104135486A (zh) * | 2014-08-08 | 2014-11-05 | 浙江奇汇电子提花机有限公司 | 一种基于tcp协议的流媒体无线自适应传输方法 |
CN104219504A (zh) * | 2014-09-28 | 2014-12-17 | 上海长合信息技术股份有限公司 | 地铁视频监控系统的故障检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100442858C (zh) * | 2005-10-11 | 2008-12-10 | 华为技术有限公司 | 分组网络中多媒体实时传输的唇同步方法及其装置 |
-
2008
- 2008-10-21 CN CN2008101676355A patent/CN101369866B/zh active Active
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148743A (zh) * | 2010-02-05 | 2011-08-10 | 联芯科技有限公司 | 一种数据流量的控制方法、装置及移动终端 |
CN102148743B (zh) * | 2010-02-05 | 2013-08-21 | 联芯科技有限公司 | 一种数据流量的控制方法、装置及移动终端 |
CN101764825B (zh) * | 2010-02-08 | 2012-12-19 | 成都市华为赛门铁克科技有限公司 | 虚拟专用网的数据传输方法、系统及终端、网关设备 |
CN102149022A (zh) * | 2011-01-20 | 2011-08-10 | 德科仕通信(上海)有限公司 | 提高计算mpeg-ts层丢包数精准度的方法及系统 |
CN102149022B (zh) * | 2011-01-20 | 2012-12-19 | 德科仕通信(上海)有限公司 | 提高计算mpeg-ts层丢包数精准度的方法及系统 |
CN104135486A (zh) * | 2014-08-08 | 2014-11-05 | 浙江奇汇电子提花机有限公司 | 一种基于tcp协议的流媒体无线自适应传输方法 |
CN104219504A (zh) * | 2014-09-28 | 2014-12-17 | 上海长合信息技术股份有限公司 | 地铁视频监控系统的故障检测方法 |
CN104219504B (zh) * | 2014-09-28 | 2017-09-15 | 上海长合信息技术股份有限公司 | 地铁视频监控系统的故障检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101369866B (zh) | 2011-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101369866B (zh) | 一种测试流媒体传输质量的方法和设备 | |
CN100420250C (zh) | 通信设备操作方法、数据呈现方法和设备 | |
CN100581158C (zh) | 数据流式传输系统和方法 | |
CN100442796C (zh) | 一种流媒体传输系统中的速率控制方法 | |
US8582453B2 (en) | System for measuring the transmission bandwidth for multimedia streaming and method for same | |
CN104125429B (zh) | 视频数据传输的调节方法及装置 | |
CN102244773B (zh) | 一种基于窄变带宽网络的实时视频流传输方法 | |
CN102045222B (zh) | 网络系统实时整体测试的方法 | |
FR2927749A1 (fr) | Procede et dispositif de transmission de donnees, notamment video. | |
CN101218807B (zh) | 用于估计实时内容分发的客户端的输入缓冲器的填充率的设备及方法 | |
CN100452876C (zh) | 流媒体数据的并行传输调度方法 | |
US20110149775A1 (en) | System and method for interworking between media quality assessment at terminal device and qos control in transport network | |
CA2457193C (en) | Data communications method and system for transmitting multiple data streams calculating available bandwidth per stream and bit stream trade-off | |
WO2003026232A1 (en) | Data communications method and system using buffer size to calculate transmission rate for congestion control | |
WO2002005496A1 (fr) | Systeme de communication de donnees | |
CN103533451A (zh) | 抖动缓存调节方法及其系统 | |
CN101166140A (zh) | 一种应用于互联网的网络拥塞控制系统及方法 | |
CN106656629A (zh) | 一种流媒体播放质量的预测方法 | |
CN114401253B (zh) | 一种基于WebRTC的模拟网络中视频传输方法 | |
CN103036808B (zh) | 一种去除网络抖动的方法及系统 | |
CN102387409A (zh) | 基于流媒体系统的视频播放方法 | |
CN101557273A (zh) | 一种同时适用于有线和无线网络的实时流媒体传输的方法 | |
CN108550103A (zh) | 一种图像处理方法及装置 | |
CN116723133B (zh) | 数据发送、接收设备、网络状态信息提取方法及装置 | |
CN107302504B (zh) | 一种基于虚拟发送队列的多路传输调度方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1128109 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1128109 Country of ref document: HK |