一种基于云存储系统实现文件传输协议动态选择的方法

文档序号:25868780发布日期:2021-07-13 16:30阅读:147来源:国知局
一种基于云存储系统实现文件传输协议动态选择的方法

本发明涉及云存储和文件传输的技术领域,尤其是指一种基于云存储系统实现文件传输协议动态选择的方法。



背景技术:

近年来,随着网络传输质量的变化,网络丢包率,网络rtt,网络带宽,网络抖动的相较于tcp设计时均发生了很大的变化。当前基于tcp协议的文件传输,在弱网络环境下出现的歧义重传、队头阻塞、ackdelay、高握手延迟等问题严重影响了弱网络环境下文件传输的质量与速度。基于quic协议的文件传输能够解决tcp协议在弱网络环境下出现的歧义重传、队头阻塞,高握手延迟等问题,在弱网络环境下加速文件的传输。鉴于quic协议和tcp协议是面向不同的网络环境进行设计的网络传输协议,经过验证,没有任何一种网络协议能够在所有的网络环境下均保证最优的文件传输性能,故可以根据实际网络情况和文件大小预测使用tcp协议和使用quic协议的文件传输耗时,选取耗时最短的传输协议进行文件传输。

当前,国内外的云存储产品均使用tcp协议进行文件传输,但是当tcp协议在弱网络环境下,其传输性能不能令人满意。quic协议在弱网络环境下在进行文件传输表现优于tcp协议,最直观的体现是在相同的高丢包率环境下传输相同大小的文件,使用quic协议耗时较短。为了应对复杂多变的网络环境,以及在各种网络环境下为用户提供优质的文件传输服务,应该在不同的网络环境和文件大小下选择不同的文件传输协议进行文件传输。



技术实现要素:

本发明的目的在于克服现有技术的缺点与不足,提出了一种基于云存储系统实现文件传输协议动态选择的方法,突破传统云存储系统使用单一网络传输协议进行文件传输的问题,通过多元线性回归模型预测使用不同网络传输协议进行文件传输的耗时,动态选择网络传输协议,为用户在文件传输时提供协议选择的建议。

为实现上述目的,本发明所提供的技术方案为:一种基于云存储系统实现文件传输协议动态选择的方法,包括以下步骤:

1)获取基础数据,为在云存储系统历史文件传输中对使用tcp协议传输和quic协议传输时的耗时统计和网络情况统计,统计数据包括文件大小、网络rtt、网络带宽、网络丢包率、网络抖动和文件传输耗时;

2)利用基础数据,建立多元线性回归模型,并计算得到回归方程;

3)利用回归方程预测使用quic协议文件传输耗时和使用tcp协议文件传输耗时;

4)将使用tcp协议和使用quic协议传输耗时预测返回给客户端;

5)根据耗时预测选择耗时最短的传输协议。

所述步骤2)包括以下步骤:

2.1)根据基础数据,建立多元线性回归模型如下:

t(x)=θ0+θ1x1+θ2x2+θ3x3+θ4x4+θ5x5+ε

式中,t(x)表示时间因变量,即不同文件大小和不同网络参数下的传输时间耗时;θ0,θ1,θ2,θ3,θ4,θ5为不同文件大小和不同网络参数x1,x2,x3,x4,x5所对应的回归系数;ε表示误差项的随机变量;

2.2)按照最小二乘法,使用基础数据分别计算使用tcp协议进行文件传输和使用quic协议进行文件传输耗时的回归方程系数,即确定回归参数:

y=xβ+ε

式中,表示基础数据中测量的传输时间;表示基础数据中影响文件传输耗时的因素,有文件大小、网络rtt、网络带宽、网络丢包率和网络抖动;表示待计算的回归系数;表示误差项随机变量的矩阵;yn表示当影响文件传输耗时的因素的值为xn1,xn2,…,xn5时,使用tcp协议或quic协议进行文件传输的耗时;β0,β1,β2,β3,β4,β5分别表示待计算的常数回归系数、文件大小回归系数、网络rtt回归系数、网络带宽回归系数、网络丢包率回归系数和网络抖动回归系数;εn表示第n组训练值的误差项随机变量;

根据矩阵方程计算得到使用tcp协议进行文件传输耗时的多元回归线性方程:

t(tcp)=b0+b1x1+b2x2+b3x3+b4x4+b5x5

其中,t(tcp)表示使用tcp协议进行文件传输时的因变量;b0,b1,b2,b3,b4,b5为使用tcp协议进行文件传输的基础数据计算得到的回归系数;

使用quic协议进行文件传输耗时的多元回归线性方程:

t(quic)=q0+q1x1+q2x2+q3x3+q4x4+q5x5

其中,t(quic)表示使用quic协议进行文件传输时的因变量;q0,q1,q2,q3,q4,q5为使用quic协议进行文件传输的基础数据计算得到的回归系数。

在步骤3)中,对于不同的文件大小,不同的网络环境分别计算使用tcp协议进行文件传输和使用quic协议进行文件传输的预测耗时,具体如下:

结合当前文件大小、网络rtt、网络带宽、网络丢包率和网络抖动,使用多元线性回归方程t(tcp)、t(quic)分别计算预测耗时:

t(tcp)=b0+b1filelength+b2netrtt+b3netloss+b4netshake+b5netbandwidth

t(quic)=q0+q1filelength+q2netrtt+q3netloss+q4netshake+q5netbandwidth

其中,filelength表示文件大小,netrtt表示网络rtt,netloss表示网络丢包率,netshake表示网络抖动,netbandwidth表示网络带宽;b0,b1,b2,b3,b4,b5表示使用tcp协议传输文件耗时预测回归模型的回归系数;q0,q1,q2,q3,q4,q5表示使用quic协议传输文件耗时预测回归模型的回归系数。

在步骤4)中,采用可视化的方法将使用tcp协议和使用quic协议进行文件传输的耗时预测显示在用户的可视化界面,使客户端能够获得使用tcp协议和quic协议进行文件传输的耗时预测值。

在步骤5)中,客户端根据得到的对使用tcp协议进行文件传输和使用quic协议进行文件传输的耗时预测,选择合适的传输协议进行文件传输;客户端在选择合适的传输协议进行文件传输后,将文件传输数据,包括文件大小、网络rtt、网络带宽、网络丢包率、网络抖动以及传输实际耗时反馈给服务端,服务端通过实际数据修正多线性回归模型的参数,以提高预测准确度。

本发明与现有技术相比,具有如下优点与有益效果:

1、本发明打破了当前文件传输中,协议单一的情况,使用quic协议和tcp协议进行文件传输。

2、本发明首次实现了根据网络情况和文件大小实时预测使用quic协议和tcp协议进行文件传输的耗时情况。

3、本发明为用户进行文件传输提供协议选择,并给予耗时提示,使用户根据网络情况和文件大小选择合适的文件传输协议进行文件传输。

4、本发明方法在云存储系统中具有广泛的使用空间,操作简单,数据便于采集,在加快文件传输方面有很好的前景。

附图说明

图1为本发明方法逻辑流程示意图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。

如图1所示,本实施例所提供的基于云存储系统实现文件传输协议动态选择的方法,使用了云存储系统用户文件传输网络情况、文件大小和文件传输耗时历史统计,其包括以下步骤:

1)获取基础数据,包括文件大小、网络rtt、网络带宽、网络丢包率、网络抖动和文件传输耗时。

获取的云存储系统用户文件传输历史数据如表1所示:

表1文件传输历史数据(部分)

2)利用基础数据,建立多元线性回归模型,并计算得到回归方程,包括以下步骤:

2.1)根据基础数据,共5个自变量,建立五元线性回归模型如下:

t(x)=θ0+θ1x1+θ2x2+θ3x3+θ4x4+θ5x5+ε

式中,t(x)表示时间因变量,即不同文件大小和不同网络参数下的传输时间耗时。θ0,θ1,θ2,θ3,θ4,θ5为不同文件大小和不同网络参数x1,x2,x3,x4,x5所对应的回归系数,ε表示误差项的随机变量。

2.2)按照最小二乘法,使用基础数据分别计算使用tcp协议进行文件传输和使用quic协议进行文件传输耗时的回归方程系数,即确定回归参数:

y=xβ+ε

式中,表示基础数据中测量的传输时间,表示基础数据中影响文件传输耗时的因素,有文件大小、网络rtt、网络带宽、网络丢包率和网络抖动,表示待计算的回归系数,表示误差项随机变量的矩阵;yn表示当影响文件传输耗时的因素的值为xn1,xn2,…,xn5时,使用tcp协议或quic协议进行文件传输的耗时;β0,β1,β2,β3,β4,β5分别表示待计算的常数回归系数,文件大小回归系数,网络rtt回归系数,网络带宽回归系数,网络丢包率回归系数,网络抖动回归系数;εn表示第n组训练值的误差项随机变量。

根据矩阵方程计算得到使用tcp协议进行文件传输耗时的多元回归线性方程:

t(tcp)=b0+b1x1+b2x2+b3x3+b4x4+b5x5

其中,t(tcp)表示使用tcp协议进行文件传输时的因变量;b0,b1,b2,b3,b4,b5为使用tcp协议进行文件传输的基础数据计算得到的回归系数;

使用quic协议进行文件传输耗时的多元回归线性方程:

t(quic)=q0+q1x1+q2x2+q3x3+q4x4+q5x5

其中,t(quic)表示使用quic协议进行文件传输时的因变量;q0,q1,q2,q3,q4,q5为使用quic协议进行文件传输的基础数据计算得到的回归系数。

采用上述步骤计算,得到的线性回归方程如下:

使用tcp协议进行文件传输耗时预测的多元线性回归方程为:

t(tcp)=0.0092x1+0.3781x2+0.4892x3-0.832x4-2.312x5+0.032

使用quic协议进行文件传输耗时预测的多元线性回归方程为:

t(quic)=0.00472x1+0.2325x2+0.1436x3-0.243x4-1.417x5+0.045

3)对于不同的文件大小,不同的网络环境分别计算使用tcp协议进行文件传输和使用quic协议进行文件传输的预测耗时,具体如下:

结合当前文件大小、网络rtt、网络带宽、网络丢包率和网络抖动,使用多元线性回归方程t(tcp)、t(quic)分别计算预测耗时:

t(tcp)=b0+b1filelength+b2netrtt+b3netloss+b4netshake+b5netbandwidth

t(quic)=q0+q1filelength+q2netrtt+q3netloss+q4netshake+q5netbandwidth

其中,filelength表示文件大小,netrtt表示网络rtt,netloss表示网络丢包率,netshake表示网络抖动,netbandwidth表示网络带宽;b0,b1,b2,b3,b4,b5表示使用tcp协议传输文件耗时预测回归模型的回归系数;q0,q1,q2,q3,q4,q5表示使用quic协议传输文件耗时预测回归模型的回归系数。

例如当文件大小为50mb,网络延时为43ms,网络丢包率为2%,网络抖动10ms,网络带宽100mb,则:

t(tcp)<t(quic)

可以看到在文件较大,网络延时较低,丢包率低,抖动大,带宽大的网络中,使用tcp协议进行文件传输耗时更小。

4)将使用tcp协议和使用quic协议传输耗时预测返回给客户端,具体是采用可视化的方法将使用tcp协议和使用quic协议进行文件传输的耗时预测显示在用户的可视化界面。

5)客户端根据得到的对使用tcp协议进行文件传输和使用quic协议进行文件传输的耗时预测,选择合适的传输协议进行文件传输,即用户根据实际情况选择合适的传输协议进行文件传输,一般情况下可以使用系统默认的耗时最短的传输协议。

客户端在选择合适的传输协议进行文件传输后,将文件传输数据,包括文件大小、网络rtt、网络带宽、网络丢包率、网络抖动以及传输实际耗时反馈给服务端,服务端通过实际数据修正多线性回归模型的参数,以提高预测准确度,具体情况如下:

用户根据耗时预测选择合适的传输协议进行文件传输,在文件传输的过程中对网络情况进行检测,对文件传输的耗时进行检测,并将本次的文件传输情况记录到数据库中,进行数据采集和数据更新,用与对线性回归方程进行调整。

综上所述,在采用以上方案后,本发明通过采集用户历史的文件传输数据,使用多元线性回归模型,计算出多元线性回归方程。使用多元线性回归方程预测用户当前网络环境下进行文件传输使用不同的传输协议的耗时预测,为用户选择合适的协议进行文件传输提供参考,具有实际应用价值,值得推广。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1