一种移动网络发送速率控制方法、装置及***
技术领域
本发明实施例涉及移动网络技术领域,尤其涉及一种移动网络数据传输控制方法、装置和***。
背景技术
随着移动网络技术的不断发展,现代移动网络正在为越来越多的用户提供快捷而又方便的网络接入。考虑到信道质量的不稳定以及基站负载的动态性较高,在基站上一般会保留较大的缓存,这样有利于吸收突发性的数据流。但是在正常的工作过程中,所保留的缓存通常是过大的,这样就会对用户的正常使用造成不必要的延迟,同时也会降低网络性能,通常这种情况被称为缓冲膨胀。
形成缓冲膨胀的根本原因主要来源于两个方面。首先,相比于链路速度瓶颈,缓冲设置得过大;其次,现代移动网络采用的传输层协议是基于丢包的传输控制协议(Transmission Control Protocol:TCP),而信道干扰所导致的丢包在现代网络里面极不常见,因为在一般运行过程中,丢包的情况往往出现在缓冲区变满的时间段。在传输过程中,一个采用基于丢包TCP协议的发送端会一直增加发送速率直到缓冲区被填满。而由于第一个原因,发送速率很可能会超过瓶颈速率,瓶颈速率并不能够很快的抽干缓冲区,那么这个时段的进出队列时间就会显著增加。在这种情况下,用户体验会受到极大的影响,例如,当用户正在体验线上游戏,同时后台又存在一个下载程序,用户在游戏过程中很可能就会经历很长的端到端的延时。由于在缺失丢包信息的情况下,基于丢包的TCP协议不能显著控制传输速率,这就使得在多任务情况下,较高的进出队延迟成为一个普遍现象。
为了解决缓冲膨胀的问题,研究人员提出了两类解决办法。基于其不同的部署区域,将这两类解决办法具体分为:基站端部署方法和接收端部署方法。其中,针对基站端部署,可以监控基站队列长度的变化,进而反馈发送速率的调整策略,但是由于实际网络部署十分复杂,此类策略需要改变网络的拓扑结构,因而无法在实际应用中大规模部署。针对接收端部署,由于其不需要对网络拓扑进行修改,因而相对于基站端部署方法有较大的优势,但是现有的策略多采用固定的发送速率控制办法,即设定一个往返时延(Round-TripTime:RTT)的参考值,以此来作为判断的依据,这一特性显然无法适应当前不同移动网络共存的现状。
发明内容
本发明的目的是提出一种移动网络数据传输控制方法、装置和***,以对网络延迟状态进行侦测,准确控制传输速率,进而降低缓存负载,有效解决缓冲膨胀的问题。
第一方面,本发明实施例提供了一种移动网络数据传输控制方法,包括:
根据历史网络延迟时间采样集合预测新时间窗口的网络延迟及置信区间;
计算新时间窗口的网络延迟时间估计值;
根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率。
第二方面,本发明实施例提供了一种移动网络数据传输控制装置,包括:
预测模块,用于预测新时间窗口的网络延迟及置信区间;
估计值计算模块,用于计算新时间窗口的网络延迟时间估计值;
发送速率控制模块,根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率。
第三方面,本发明实施例提供了一种移动网络数据传输控制***,包括:
配置有本发明实施例中任一移动网络数据传输控制装置的接收端设备,以及发送端设备。
本发明实施例中提供的移动网络数据传输控制方法、装置和***,根据历史网络延迟时间采样集合预测新时间窗口的网络延迟及置信区间,计算新时间窗口的网络延迟时间估计值,根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率,网络延迟监测准确性高,并能够适应不同的移动网络标准,能够依据网络延迟的变化对发送速率做出相应调整,进而降低缓存负载,有效解决缓冲膨胀的问题。
附图说明
图1为本发明实施例一提供的移动网络数据传输控制方法的流程示意图;
图2为本发明实施例二提供的移动网络数据传输控制方法的流程示意图,
图3为本发明实施例二提供的移动网络延迟测量环境;
图4为本发明实施例二提供的在不同核函数的核长度γ值下测量得到的预测准确率;
图5为本发明实施例三提供的一种更新历史网络延迟时间采样集合方法的流程示意图;
图6为本发明实施例四提供的移动网络数据传输控制装置的结构框图;
图7为本发明实施例五提供的移动网络数据传输控制***的结构框图;
图8为本发明实施例五提供的一种具体的拓扑结构示意图;
图9为本发明实施例五提供的移动网络数据传输控制***测试获得的网络延迟预测准确率图像;
图10为本发明实施例五测试获得的带宽预测误差与DRWA算法带宽预测误差比较图像。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的移动网络数据传输控制方法的流程示意图,该方法可以由移动网络数据传输控制装置执行,其中该装置可由软件和/或硬件实现,可作为接收端设备的一部分被内置在接收端设备内部。如图1所示,该方法包括:
步骤101、根据历史网络延迟时间采样集合预测新时间窗口的网络延迟及置信区间。
根据应用场景需要选择合适的历史网络延迟时间采样集合的大小,根据选择的历史网络延迟时间采样集合的数据,预测新时间窗口的网络延迟,并计算所述预测的新时间窗口的网络延迟及置信区间。
步骤102、计算新时间窗口的网络延迟时间估计值。
所述新时间窗口网络延迟时间估计值是指从发送第一个确认字符(ACK,Acknowledgement)的时间点开始,到所述接收窗口内最后一个数据包被接收到的时间间隔。
步骤103、根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率。
根据步骤101获得的所述预测的新时间窗口的网络延迟,以及步骤102获得的所述新时间窗口的网络延迟时间估计值,实时调整发送端的发送速率。本发明第一实施例提供的移动网络数据传输控制方法,根据历史网络延迟时间采样集合预测新时间窗口的网络延迟及置信区间,计算新时间窗口的网络延迟时间估计值,根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率,网络延迟监测准确性高,并能够适应不同的移动网络标准,能够依据网络延迟的变化对发送速率做出相应调整,进而降低缓存负载,有效解决缓冲膨胀的问题。
实施例二
图2为本发明实施例二提供的移动网络数据传输控制方法的流程示意图,本实施例是上述实施例基础上的优化,具体地该方法包括:
步骤201、根据历史网络延迟时间采样集合预测新时间窗口的网络延迟及置信区间。
其中,为准确预测移动网络延迟,在校园中选取了两个地点作为移动网络通用移动通信***(Universal Mobile Telecommunications System,UMTS)和高速分组接入(High-Speed Packet Access,HSPA)的测量采样点,并对于每个采样点进行了验证性实验。在实验过程中发现,在较短的时间窗口内,网络延迟的分布都集中于此次测量的平均值附近。如图3所示在两个地点,选取5个网站在不同的移动网络下进行测试。对于得到的采样点,采用采用柯尔莫哥洛夫-斯米尔诺夫(Kolmogorov-Smirnov)测试,默认置信水平为0.01,测试结果如下列表1所示:
表1 Kolmogorov-Smirnov测试结果
表1表明,即使在较小置信水平的验证条件下,仍然有平均90.93%的采样点通过了Kolmogorov-Smirnov测试。因此,在一个小时间区间内,对于一个固定的远端IP,端到端的移动网络延迟服从高斯分布。针对实际应用中不同时段,同一位置的移动网络延迟,采用高斯过程进行实时网络延迟测试。高斯过程是将静态高斯变量拓展到时间序列上的随机过程。不同于传统的训练方法,高斯过程并不对随机变量进行模型推断。移动网络延迟ri服从下列公式:
ru=f(xi)+∈,i=1,2,3,…
其中,∈为高斯白噪声,服从N(0,∑)分布。xi为采样时间窗口值,ri为移动网络延迟,f是一个从采样时间窗口到移动网络延迟的映射。为了不失一般性,不同时间窗口内的延迟,其高斯独立,即ri≠rj(i≠j)。选取历史移动网络延迟时间采样集合{r1,…,rn},且r1+…+rn~N(μ1+…+μn,n∑),其中,μ1是时间窗口x1的均值,∑是方差。若xA和xB是两个从高斯过程得到的两个连续变量,它们服从一个联合高斯分布:N(μ,∑)。它们的条件概率分布:
也服从高斯分布,即:
其中
示例性的,选择为历史网络延迟时间采样集合,所述历史网络延迟时间采样集合的采样值为n,即采样点的数量为n,rn为时间窗口xn中的网络延迟。
若网络延迟时间服从均值为0,协方差为K的高斯分布,那么,新时间窗口x*中的网络延迟r*与网络延迟时间采样集合满足如下所示的联合高斯分布:
其中,协方差K用核函数表示。核函数K衡量了两个时间窗口之间的相关度,这个相关决定了历史网络延迟采样集合的数据对最终预测结果产生的影响。通常,核函数K为半正定矩阵:
令其中,γ表示核函数的核长度。如果两个时间窗口距离相对较近,那么这两个窗口内的信号强度就有较强的相关性,即K≈1。分别在UMTS和HSPA两个网络标准下进行了下载测试,寻找最优γ值,并且测试了接收端在静止(static)和运动(move)状态下的情况。对于每次下载,采样100000个数据包来计算不同的γ值对下载性能的影响。对于每次测量,选取一个下载窗口内的数据包作为历史数据。如图4所示,当γ≤1时,预测准确率在两个网络类型(UMTS和HSPA)和两种运动状态静态(static)和动态(move)下都能取得接近1的准确率。因而将核长度γ设定为1。
因此,
其中,
∑*为新时间窗口x*中的网络延迟r*的方差。最终得到新时间窗口的网络延迟置信区间:
其中,r*为新时间窗口的网络延迟,为新时间窗口的网络延迟r*的置信区间,μ*为新时间窗口的网络延迟平均值,为学生氏分布,∑*为新时间窗口的网络延迟方差;为新时间窗口的网络延迟r*的下限值 为新时间窗口的网络延迟r*的上限值
对于端到端网络延迟不服从均值为0的高斯分布的情况,设网络延迟r~GP(μ,K),令r′=r-μ,则r′服从均值为0的高斯过程,即r′~GP(0,K)。因此,该方法也适用于端到端网络延迟不服从均值为0的高斯分布的情况。
优选地,考虑噪声对网络延迟的分布的影响,那么
可以计算得到:
其中,I为单位矩阵,∑为历史网络延迟时间采样集合方差。
步骤202、计算新时间窗口的网络延迟时间估计值。
步骤203、根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率。
具体地,用表示新时间窗口的网络延迟时间估计值,当所述新时间窗口的网络延迟时间估计值大于所述新时间窗口的网络延迟的置信区间的上限值时,令rwnd′=rwnd*β,其中rwnd为原接收窗口,rwnd′为调整后的接收窗口;β的值应小于1,优选的,默认β设置为0.875。当所述新时间窗口的网络延迟时间估计值大于所述新时间窗口的网络延迟的置信区间的上限值时,说明此时发送速率过大,应将原接收窗口rwnd调小。
当所述新时间窗口的网络延迟时间估计值小于所述新时间窗口的网络延迟的置信区间的下限值时,令其中rwnd为原接收窗口,rwnd′为调整后的接收窗口。当所述新时间窗口的网络延迟时间估计值小于所述新时间窗口的网络延迟的置信区间的上限值时,说明此时发送速率过小,应将原接收窗口rwnd调大。
当所述新时间窗口的网络延迟时间估计值属于所述新时间窗口的网络延迟的置信区间时,令rwnd′=rwnd+1,其中rwnd为原接收窗口,rwnd′为调整后的接收窗口;当所述新时间窗口的网络延迟时间估计值属于所述新时间窗口的网络延迟的置信区间时,说明发送速率已经接近瓶颈速率,应采用保守策略,在原接收窗口rwnd的基础上加1,得到调整后的接收窗口。
将所述调整后的接收窗口rwnd′发给发送端;所述发送速率正比于调整后的接收窗口。所以通过对接收窗口大小的调整,就能够实现对发送速率的调整。
步骤204、更新所述历史网络延迟时间采样集合。
该步骤的目的是为了实现动态采样调整,选取合适的历史网络延迟时间采样集合,以便更加准确的预测新时间窗口的网络延迟及置信区间,此外,在进行该步骤时,还应该兼顾节省计算开销。
本发明第二实施例提供的移动网络数据传输控制方法,在实施例一的基础上,增加了更新所述历史网络延迟时间采样集合的步骤,能够实现动态采样调整,进一步提高了网络延迟监测准确性,降低缓存负载,有效解决缓冲膨胀的问题。
实施例三
图5为本发明实施例三提供的一种更新历史网络延迟时间采样集合方法的流程示意图,如图5所示,包括:
步骤301、计算新时间窗口接收速率。
对于一个新时间窗口内接收到的数据包,可以利用公式来计算接收速率,其中表示接收速率,表示接收的数据包数量,表示网络延迟时间估计值。
步骤302、根据所述新时间窗口接收速率以及新时间窗口网络延迟时间估计值计算新时间窗口的净网络延迟时间。
根据接收端发送的两个确认字符报文之间的序号差,可以得到有多少个数据包在链路中传输,利用公式来计算净新时间窗口的净网络延迟时间其中Gap(ACK Seq)表示两个ACK之间的序号差。
步骤303、计算历史网络延迟时间采样集合的置信区间。
具体地,所述历史网络延迟时间采样集合的置信区间为:
其中,u为历史网络延迟时间采样集合的均值,∑为历史网络延迟时间采样集合的方差,n为历史网络延迟时间采样集合中采样时间窗口数量。
步骤304、根据所述新时间窗口的净网络延迟时间更新采样集合。
考虑到预测准确率,过大或者过小的采样集合都不能提供一个较高的预测准确率,通过对采样数据的分析,优选的采样集合的采样值为3,此时预测准确率最高,因而接下来以采样集合大小为3进行具体的说明。
根据步骤302中获得的新时间窗口的净网络延迟时间更新采样集合,具体包括:
当所述新时间窗口的净网络延迟时间属于历史网络延迟时间采样集合的置信区间且所述历史网络延迟时间采样集合的采样值小于预设的采样值3时,将新时间窗口的采样点加入采样集合。该种情况为刚开始进行移动网络数据传输控制时,例如进行了1时间窗口采样后,进行新时间窗口的采样时,历史网络延迟时间采样数量为1,历史网络延迟时间采样集合的采样值等于1,小于预设的采样值3,因此将新时间窗口的采样点加入采样集合。加入新时间窗口的采样点,而采样值随之增加,若当前采样值为1,则加入新时间窗口的采样点后,新采样值增加为2,若当前采样值为2,则加入新时间窗口的采样点后,新采样值增加为3。
当所述新时间窗口的净网络延迟时间属于历史网络延迟时间采样集合的置信区间且所述历史网络延迟时间采样集合的采样值等于预设的采样值时,采样窗口右移,加入新时间窗口的采样点;即相当于当前采样值=3,采样窗口右移,舍弃历史网络延迟时间采样集合中最早时间戳的历史采样点,加入新时间窗口的采样点,采样值不变,仍为3。
当所述新时间窗口的净网络延迟时间不属于历史网络延迟时间采样集合的置信区间时,保留最近时间戳的一个历史采样点,并加入新时间窗口的采样点。即仅保留历史网络延迟时间采样集合中最近时间戳的一个历史采样点,并加入新时间窗口的采样点,此时采样值为2。
本发明实施例,通过根据所述新时间窗口的净网络延迟时间与历史网络延迟时间采样集合的置信区间,历史网络延迟时间采样集合采样值的比较,动态更新历史网络延迟时间采样集合,避免过时的历史网络延迟时间采样点对新时间窗口网络延迟预测的影响,提高了网络延迟监测准确性,降低缓存负载,有效解决缓冲膨胀的问题。
实施例四
图6为本发明实施例四提供的移动网络数据传输控制装置的结构框图,该装置可作为接收端设备的一部分被内置在接收端设备内部。如图6所示,该装置包括:
预测模块401,用于预测新时间窗口的网络延迟及置信区间。
估计值计算模块402,用于计算新时间窗口的网络延迟时间估计值。
发送速率控制模块403,根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率。
本发明第实施例提供的移动网络数据传输控制装置,根据历史网络延迟时间采样集合预测新时间窗口的网络延迟及置信区间,计算新时间窗口的网络延迟时间估计值,根据所述新时间窗口的网络延迟时间估计值和所述预测的新时间窗口的网络延迟控制发送速率,网络延迟监测准确性高,并能够适应不同的移动网络标准,能够依据网络延迟的变化对发送速率做出相应调整,进而降低缓存负载,有效解决缓冲膨胀的问题。
进一步地,所述预测新时间窗口的网络延迟服从高斯分布,所述新时间窗口的网络延迟的置信区间计算公式为:
其中r*为新时间窗口的网络延迟,为新时间窗口的网络延迟r*的置信区间,μ*为新时间窗口的网络延迟平均值,为学生氏分布,n为历史网络延迟时间采样集合采样值,∑*为新时间窗口的网络延迟方差。为新时间窗口的网络延迟r*的下限值 为新时间窗口的网络延迟r*的上限值
进一步地,所述发送速率控制模块403,具体用于:
当所述新时间窗口的网络延迟时间估计值大于所述新时间窗口的网络延迟的置信区间的上限值时,令rwnd′=rwnd*β,其中rwnd为原接收窗口,rwnd′为调整后的接收窗口;
当所述新时间窗口的网络延迟时间估计值小于所述新时间窗口的网络延迟的置信区间的下限值时,令其中rwnd为原接收窗口,rwnd′为调整后的接收窗口;
当所述新时间窗口的网络延迟时间估计值属于所述新时间窗口的网络延迟的置信区间时,令rwnd′=rwnd+1,其中rwnd为原接收窗口,rwnd′为调整后的接收窗口;
将所述调整后的接收窗口发给发送端;所述发送速率正比于调整后的接收窗口。
优选的,该装置还包括:采样集合更新模块,用于更新历史网络延迟时间采样集合。
所述采样集合更新模块,具体包括:接收速率计算子单元,用于计算新时间窗口接收速率;新时间窗口净网络延迟时间计算子单元,用于根据所述新时间窗口接收速率以及新时间窗口网络延迟时间估计值计算新时间窗口的净网络延迟时间;历史采样集合置信区间计算子单元,用于计算历史网络延迟时间采样集合的置信区间;采样集合更新子单元,用于根据所述新时间窗口的净网络延迟时间更新所述历史网络延迟时间采样集合。
所述采样集合更新子单元,具体用于:
当所述新时间窗口的净网络延迟时间属于历史网络延迟时间采样集合的置信区间且所述历史网络延迟时间采样集合的采样值小于预设的采样值时,加入新时间窗口的采样点;
当所述新时间窗口的净网络延迟时间属于历史网络延迟时间采样集合的置信区间且所述历史网络延迟时间采样集合的采样值等于预设的采样值时,采样窗口右移,加入新时间窗口的采样点;
所述新时间窗口的净网络延迟时间不属于历史网络延迟时间采样集合的置信区间时,保留最近时间戳的一个历史采样点,并加入新时间窗口的采样点。本发明实施例所提供的移动网络数据传输控制装置可用于执行本发明任意实施例提供的移动网络数据传输控制方法,具备相应的功能模块,实现相同的有益效果。
实施例五
图7为本发明实施例五提供的移动网络数据传输控制***的结构框图,如图所示,该***包括配置有本发明实施例任一种移动网络数据传输控制装置的接收端设备501,以及发送端设备502。
举例而言,图8给出该***的一种具体的拓扑结构,该拓扑结构为一单跳网络,服务器作为发送端,用户手机作为接收端,中继为一个基站。当然,接收端还可以为PC(Personal Computer,个人计算机)、笔记本电脑等设备。需要注意的是,本发明实施例还可用于多跳网络,即中继为多个基站的情况。服务器与基站的链接带宽为100Mbps,延迟为10ms。对于基站和用户的链接,UMTS带宽为400kbps,延迟为100ms,HSPA链接带宽为4Mbps,延迟为50ms。使用上述拓扑结构的***,进行移动网络数据传输控制时,对于接收端静止和运动两种情况,计算了新时间窗口网络延迟时间预测准确率,如图9所示。与传统的DRWA(动态接收窗口调整算法,DynamicReceiveWindowAdjustment)算法相比,其带宽估计误差率降低了20%,如图10所示,带宽界定了链路速率,因此宽估计误差率降低,说明能够通过移动网络数据传输控制保证发送速率接近链路速率,降低缓存负载,进而降低进出队延迟,有效解决缓冲膨胀的问题。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。