一种数据传输速率的控制方法技术

技术编号:11454570 阅读:114 留言:0更新日期:2015-05-14 04:41
本发明专利技术提供了一种数据传输速率的控制方法,该方法包括:流媒体服务器测定QoS指标,判断当前网络拥塞状况;根据当前网络拥塞状况,调整数据包发送的主控延迟,利用所述主控延迟控制网络吞吐量。本发明专利技术提供了一种针对硬件条件有限的流媒体服务器的传输控制方法,提高了流媒体传输的实时性和有效性,传输速率得到有效调整,显著提高了QoS。

【技术实现步骤摘要】
一种数据传输速率的控制方法
本专利技术涉及网络传输和通信,特别涉及一种流媒体传输方法。
技术介绍
近年来,随着互联网和信息技术的高速发展,以及服务器与互联网的结合,如何对网络协议进行优化,在有限的网络带宽下高效地传输多媒体数据,并且避免造成网络拥塞,成为了视频、语音等媒体服务器的发展方向之一。流媒体数据在互联网上的传输依赖网络传输协议,包括TCP和UDP传输协议,如果用不具备任何排序、重传和拥塞控制的协议来传输多媒体数据,网络带宽会被迅速耗尽,而且随着网络状态的恶化,丢包数的增加也会影响传输质量。现有的拥塞控制不适合硬件条件有限的嵌入式设备,没有根据嵌入式设备的特点进行相应调整,无法满足嵌入式设备中流媒体数据的实时性和准确性。因此,针对相关技术中所存在的上述问题,目前尚未提出有效的解决方案。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术提出了一种数据传输速率的控制方法,包括:嵌入式流媒体服务器测定QoS指标,判断当前网络拥塞状况;根据当前网络拥塞状况,调整数据包发送的主控延迟,利用所述主控延迟控制网络吞吐量。优选地,所述QoS指标包括丢包率,并且所述根据当前网络拥塞状况,调整数据包发送的主控延迟,利用所述主控延迟控制网络吞吐量,进一步包括:(1)根据网络延迟值公式计算第1时刻的网络延迟γ(1),以此作为第1时刻的网络延迟估计值R(1),然后计算第2时刻的网络延迟γ(2),通过平滑公式计算第2时刻的网络延迟估计值,所述平滑公式如下:R(t)=(1-θ)·R(t-1)+θ·γ(t)式中θ为平滑系数,是0-1之间的常数;(2)将网络延迟估计值R(t)进行正则化,使计算出的网络延迟等级M(t)为0-1之间的数值,计算M(t)的方法如下:M(t)=R(t)/τ式中τ为可容忍的最大网络延迟;(3)采用基于主控延迟的方法对传输速率进行调整,包括:在每两个数据包之间间隔一个主控延迟,或每两组数据包之间间隔一个主控延迟,主控延迟的参数D(t)的范围是[Dl,Dh],Dl和Dh计算公式如下:Dl=Mave/MhDh=Mave/Ml式中Mh和Ml分别为单位时间内系统所允许的最大和最小数据传输量,Mave为每个或每组数据包大小;(4)拥塞情况的判断:设定两个拥塞阈值Lh和Ll,且0<Ll<Lh<1,[0,Ll]作为空闲状态,[Lh,1]作为拥塞状况,根据不同的网络延迟等级M(t)和M(t-1)判定不同的拥塞情况,然后分别计算速率调整参数d,具体包括:情况1:M(t)≥Lh且M(t-1)<Lh,即t-1时刻未进入拥塞状况,t时刻进入拥塞状况,则通过增加主控延迟来降低传输速率:d=(Dh-Dl)·(M(t)-Lh)/(1-Lh)D(t)=min{D(t)+d,Dh}情况2:M(t)≥M(t-1)≥Lh,即t-1时刻已进入拥塞状况,t时刻拥塞程度比t-1时刻严重,则通过增加主控延迟来降低传输速率:d=(Dh-Dl)·(M(t)-M(t-1))/(1-Lh)D(t)=min{D(t)+d,Dh}情况3:M(t)<Ll,即t时刻进入空闲状态,则通过减少主控延迟来加快传输速率:d=(Dh-Dl)·(Ll-M(t))/LlD(t)=max{D(t)-d,Dl}情况4:如果属于以上3种情况的其他情况,则不需要作任何速率调整,即D(t)=D(t)。本专利技术相比现有技术,具有以下优点:本专利技术提供了一种针对硬件条件有限的流媒体服务器的传输控制方法,提高了流媒体传输的实时性和有效性,传输速率得到有效调整,显著提高了QoS。附图说明图1是根据本专利技术实施例的数据传输速率的控制方法的流程图。具体实施方式下文与图示本专利技术原理的附图一起提供对本专利技术一个或者多个实施例的详细描述。结合这样的实施例描述本专利技术,但是本专利技术不限于任何实施例。本专利技术的范围仅由权利要求书限定,并且本专利技术涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本专利技术的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本专利技术。拥塞控制的目的就是控制网络吞吐量,从而实现低丢包率、低网络延迟和低抖动。对于流媒体服务器来说,远距离的广域网通信是它的一大特点,拥塞控制中应考虑到网络延迟的问题,同时为了减轻网络负担,用单程延迟代替往返延迟。在发送方包头添加时间戳,在接收方根据发送方的时间戳和接收时间就可计算出网络延迟,从而计算延迟。本专利技术所改进的拥塞控制算法是在数据包头添加序号和时间戳,通过测定丢包率、网络延迟来对网络状态进行估计与判断。本专利技术的一方面提供了一种数据传输速率的控制方法。图1是根据本专利技术实施例的数据传输速率的控制方法流程图。嵌入式媒体服务器数据速率调整的机制是,在每两个数据包或者每两组数据包的发送之间经历一段时间的主控延迟,通过主控延迟的长短控制网络吞吐量。速率调整机制都是基于数据传输速率的,即通过公式计算下一时刻单位时间应发送的数据量,然后进行调整。这样速率调整的机制对于CPU处理性能较高、系统时钟精度较高的计算机来说是准确且有效的,但是对于系统资源有限的流媒体服务器来说是不合适的。综上所述,对于基于嵌入式设备的流媒体服务器来说,不应采取基于传输速率的调整机制,而应采取基于主控延迟的速率调整机制,既可以简化代码复杂程度,又可以有效控制吞吐量。本专利技术采用双阈值,并且改进了网络状态的判定方法。针对丢包率和网络延迟这两个拥塞指标,分别采用基于丢包率的拥塞控制方法和基于网络延迟的拥塞控制方法。下面介绍基于丢包率的拥塞控制算法流程。(1)根据丢包率公式计算第1时刻的丢包率ρ(1),以此作为第1时刻的丢包率估计值P(1)。然后计算第2时刻的丢包率ρ(2),通过平滑公式计算第2时刻的丢包率估计值。所述平滑公式如下:P(t)=(1-α)·P(t-1)+α·ρ(t)式中α为平滑系数,是0-1之间的常数。当α接近1的时候,丢包率估计值P(t)接近丢包率ρ(t),平滑效果不明显;当α接近0的时候,丢包率估计值P(t)接近上一时刻的丢包率估计值P(t-1),过于平稳,无法及时跟踪当前丢包率。所以,应根据不同的需要,选择不同的α。在本实施例中,为了兼顾实时性与稳定性,平滑系数取0.5。(2)为了简化计算,将丢包率估计值P(t)进行正则化,使计算出的丢包率等级L(t)为0-1之间的数值。公式如下:L(t)=P(t)/β式中β为可容忍的最大丢包率,此值根据不同需求预先选择。在本专利技术中选3%作为可容忍的最大丢包率。(3)采用基于主控延迟的方法对传输速率进行调整:在每两个数据包之间间隔一个主控延迟,或两组数据包(每组有若干个数据包)之间间隔一个主控延迟。主控延迟的参数D(t)的范围是[Dl,Dh],其中Dl和Dh需要根据芯片性能、操作系统精度以及具体任务要求而选择。Dl和Dh计算公式如下:Dl=Mave/MhDh=Mave/Ml式中Mh和Ml分别为单位时间内系统所允许的最大和最小数据传输量,Mave为每个或每组数据包大小。(4)拥塞情况的判断:设定两个拥塞阈值Lh和Ll,且0<Ll<Lh<1。[0,Ll]作为空闲状态,[Lh,1]作为拥塞状况。根据不同的丢包率等级L(t)和L(t-1)判定不同的拥塞本文档来自技高网...
一种数据传输速率的控制方法

【技术保护点】
一种数据传输速率的控制方法,其特征在于,包括:流媒体服务器测定QoS指标,判断当前网络拥塞状况;根据当前网络拥塞状况,调整数据包发送的主控延迟,利用所述主控延迟控制网络吞吐量。

【技术特征摘要】
1.一种数据传输速率的控制方法,其特征在于,包括:流媒体服务器测定QoS指标,判断当前网络拥塞状况;根据当前网络拥塞状况,调整数据包发送的主控延迟,利用所述主控延迟控制网络吞吐量;所述QoS指标包括网络延迟,并且所述根据当前网络拥塞状况,调整数据包发送的主控延迟,利用所述主控延迟控制网络吞吐量,进一步包括:(1)根据网络延迟值公式计算第1时刻的网络延迟γ(1),以此作为第1时刻的网络延迟估计值R(1),然后计算第2时刻的网络延迟γ(2),通过平滑公式计算第2时刻的网络延迟估计值,所述平滑公式如下:R(t)=(1-θ)·R(t-1)+θ·γ(t)式中θ为平滑系数,是0-1之间的常数;(2)将网络延迟估计值R(t)进行正则化,使计算出的网络延迟等级M(t)为0-1之间的数值,计算M(t)的方法如下:M(t)=R(t)/τ式中τ为可容忍的最大网络延迟;(3)采用基于主控延迟的方法对传输速率进行调整,包括:在每两个数据包之间间隔一个主控延迟,或每两组数据包之间间隔一个主控延迟,主控延迟的参数D(t)的范围是[Dl,Dh],Dl和Dh计算公式如下:Dl=Mave/MhDh=Mave/Ml式中Mh和Ml分别为单位时间...

【专利技术属性】
技术研发人员:陈海清刘宇波
申请(专利权)人:成都金本华科技股份有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1