MPTCP多路径传输缓存耗量的回归模型计算方法和系统转让专利

申请号 : CN201911060937.7

文献号 : CN110808859B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周星耿亚奇

申请人 : 海南大学

摘要 :

本申请涉及MPTCP多路径传输缓存耗量的回归模型计算方法和系统。方法包括:获取MPTCP信息;从MPTCP信息中提取网络吞吐量值;将网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。上述的MPTCP多路径传输缓存耗量的回归模型计算方法因采用真实的数据建立模型,从而根据建立的模型计算缓存耗量值得到的结果非常精确。

权利要求 :

1.一种MPTCP多路径传输缓存耗量的回归模型计算方法,其特征在于,所述方法包括:获取MPTCP信息;

从所述MPTCP信息中提取网络吞吐量值;

将所述网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中所述缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且所述缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系;

缓存耗量模型的建立方法,包括:

从NorNet Core国际测试床上获取所述NorNet Core实验数据;其中所述NorNet Core实验数据包括MPTCP缓存耗量实验值和网络吞吐量实验值;

采用所述数理统计回归分析方法建立多项式回归模型,并采用所述MPTCP缓存耗量实验值和所述网络吞吐量实验值对所述多项回归模型进行学习训练,得到训练后的回归模型;其中,所述多项式回归模型用于表示网络吞吐量和缓存耗量之间的回归关系;

对所述训练后的回归模型进行性能评估,在评估通过后,得到所述缓存耗量模型。

2.根据权利要求1所述的方法,其特征在于,对所述训练后的回归模型进行性能评估的步骤中,包括:计算所述训练后的回归模型的确定系数和假定机率;

在所述确定系数大于预设的系数值,且所述假定机率小于预设的概率值时,判定所述训练后的回归模型评估通过。

3.根据权利要求1所述的方法,其特征在于,从NorNet Core国际测试床上获取所述NorNet Core实验数据的步骤中,包括:选择NorNet Core国际测试床体系,其中所述NorNet Core国际测试床体系包括多个站点主机;各站点主机之间通过网络通信连接,形成MPTCP传输系统;

对所述NorNet Core国际测试床体系配置网络初始参数;

在网络参数配置完成后,从所述MPTCP传输系统随机选择一条传输路线为初始路径,在所述初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值;

采用拥塞控制算法依次从剩余的MPTCP传输系统中选择传输路径,在所述传输路径上设置缓存耗量值,测量并记录相应的吞吐量值;

根据每一个所述缓存耗量值和与每一个所述缓存耗量值相对的所述吞吐量值得到所述NorNet Core实验数据。

4.根据权利要求3所述的方法,其特征在于,在所述初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值的步骤中,包括:选择不同的时间点,在所述初始路径上设置缓存耗量值进行多次数据传输,在每一次数据传输中测量并记录相应的初始吞吐量值;

对每一个所述初始吞吐量值进行平均运算,得到所述吞吐量值。

5.根据权利要求2-4任一项所述的方法,其特征在于,建立多项式回归模型的步骤中,包括:采用python工具包建立多项式回归模型。

6.根据权利要求3所述的方法,其特征在于,所述拥塞控制算法包括Cubic算法、Hybla算法、OLIA算法、Reno算法、Scalable算法以及Vegas算法中的任意一种或多种。

7.一种MPTCP多路径传输缓存耗量的回归模型计算系统,其特征在于,所述系统包括:信息获取模块,用于获取MPTCP信息;

网络吞吐量值提取模块,用于从所述MPTCP信息中提取网络吞吐量值;

缓存耗量值计算模块,用于将所述网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中所述缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且所述缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系;

还包括:

实验数据获取模块,用于从NorNet Core国际测试床上获取NorNet Core实验数据;其中NorNet Core实验数据包括MPTCP缓存耗量实验值和网络吞吐量实验值;

回归模型建立训练模块,用于采用所述数理统计回归分析方法建立多项式回归模型,并采用MPTCP缓存耗量实验值和网络吞吐量实验值对多项回归模型进行学习训练,得到训练后的回归模型;其中,所述多项式回归模型用于表示网络吞吐量和缓存耗量之间的回归关系;

缓存耗量模型建立模块,用于对训练后的回归模型进行性能评估,在评估通过后,得到缓存耗量模型。

8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。

说明书 :

MPTCP多路径传输缓存耗量的回归模型计算方法和系统

技术领域

[0001] 本申请涉及多路径网络传输技术领域,特别是涉及一种MPTCP多路径传输缓存耗量的回归模型计算方法和系统。

背景技术

[0002] 随着多种接入技术的发展,近年来智能移动终端越来越普及,它们往往都拥有多个网络接口(例如WLAN和3G/4G等),甚至连个人电脑也配备有多个网卡以通过多个接口同时接入到不同的网络供应商。这种具有多个网络接口的多宿主特性使设备具有了更好的可移动性、快速恢复能力、安全性好负载共享功能。
[0003] 负载共享功能是其中一个很重要的特性,它能够聚合不同链路的带宽、使得设备能获得更大的网络吞吐量。负载共享功能可以在网络协议栈中的多个层上实现,其中传输层是非常重要的网络协议栈。在传输层上进行负载功能的方法很多,例如R-MTP、MPTCP以及MCT-SCTP等,其中MPTCP是端到端实现负载共享的多路径传输协议中最重要的协议之一,近年来已广泛地应用于负载共享。MPTCP是传统TCP协议的扩展,即在传输层上个多条路径实现同时信息数据传输的协议。MPTCP使用TCP作为子流传输,多个路径就意味着有多个TCP子流。在网络传输时合理配置缓存非常重要,其中传输缓存耗能是衡量缓存是否合理的一个重要参数,即实践中通常根据传输缓存耗能来合理配置缓存。可见,要准备确定MPTCP的传输缓存耗能就显得尤为重要。
[0004] 目前,最常用的MPTCP传输缓存耗能计算方法就是将MPTCP分割成多个TCP子流,然后计算每个TCP子流的传输缓存耗能,最后再将每个TCP子流的传输缓存耗能简单进行叠加就得出了MPTCP传输缓存耗能。然而,MPTCP协议下主机的数据传输方式与TCP不同,因此不能这么简单地将各个子流视为单个TCP链接并将其缓存值相加,大量的测试研究表明在多路径传输下按照简单叠加多个TCP传输耗能值得到的MPTCP传输缓存耗能值,然后按照得到的MPTCP传输缓存耗能值进行配置会造成缓存资源的大量浪费。

发明内容

[0005] 基于此,有必要针对上述技术问题,提供一种能够解决问题的MPTCP多路径传输缓存耗量的回归模型计算方法、系统、计算机设备和存储介质。
[0006] 一种MPTCP多路径传输缓存耗量的回归模型计算方法,所述方法包括:
[0007] 获取MPTCP信息;
[0008] 从所述MPTCP信息中提取网络吞吐量值;
[0009] 将所述网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中所述缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且所述缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0010] 在其中一个实施例中,缓存耗量模型的建立方法,包括:
[0011] 从NorNet Core国际测试床上获取所述NorNet Core实验数据;其中所述NorNet Core实验数据包括MPTCP缓存耗量实验值和网络吞吐量实验值;
[0012] 建立多项式回归模型,并采用所述MPTCP缓存耗能实验值和所述网络吞吐量实验值对所述多项回归模型进行学习训练,得到训练后的回归模型;
[0013] 对所述训练后的回归模型进行性能评估,在评估通过后,得到所述缓存耗量模型。
[0014] 在其中一个实施例中,对所述训练后的回归模型进行性能评估的步骤中,包括:
[0015] 计算所述训练后的回归模型的确定系数和假定机率;
[0016] 在所述确定系数大于预设的系数值,且所述假定机率小于预设的概率值时,判定所述训练后的模型评估通过。
[0017] 在其中一个实施例中,从NorNet Core国际测试床上获取所述NorNet Core实验数据的步骤中,包括:
[0018] 选择NorNet Core国际测试床体系,其中所述NorNet Core国际测试床体系包括多个站点主机;各站点主机之间通过网络通信连接,形成MPTCP多路径传输系统系统;
[0019] 对所述NorNet Core国际测试床体系配置网络初始参数;
[0020] 在网络参数配置完成后,从所述MPTCP多路径传输系统随机选择一条传输路线为初始路径,在所述初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值;
[0021] 采用路径控制算法依次从剩余的MPTCP多路径传输系统中选择传输路径,在所述传输路径上设置缓存耗量值,测量并记录相应的吞吐量值;
[0022] 根据每一个所述缓存耗量值和与每一个所述缓存耗量值相对的所述吞吐量值得到所述NorNet Core实验数据。
[0023] 在其中一个实施例中,在所述初始路径上设置缓存耗量值进行数据传输,采用拥塞控制算法计算出吞吐量值的步骤中,包括:
[0024] 选择不同的时间点,在所述初始路径上设置缓存耗量值进行多次数据传输,在每一次数据传输中测量并记录相应的初始吞吐量值;
[0025] 对每一个所述初始吞吐量值进行平均运算,得到所述吞吐量值。
[0026] 在其中一个实施例中,建立多项式回归模型的步骤中,包括:
[0027] 采用python工具包建立多项式回归模型。
[0028] 在其中一个实施例中,所述拥塞控制算法包括Cubic算法、Hybla算法、OLIA算法、Reno算法、Scalable算法以及Vegas算法中的任意一种或多种。
[0029] 一种MPTCP多路径传输缓存耗量的回归模型计算系统,所述系统包括:
[0030] 信息获取模块,用于获取MPTCP信息;
[0031] 网络吞吐量值提取模块,用于从所述MPTCP信息中提取网络吞吐量值;
[0032] 缓存耗量值计算模块,用于将所述网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中所述缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且所述缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0033] 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0034] 获取MPTCP信息;
[0035] 从所述MPTCP信息中提取网络吞吐量值;
[0036] 将所述网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中所述缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且所述缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0037] 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0038] 获取MPTCP信息;
[0039] 从所述MPTCP信息中提取网络吞吐量值;
[0040] 将所述网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中所述缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且所述缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0041] 上述MPTCP多路径传输缓存耗量的回归模型计算方法、系统、计算机设备和存储介质,首选获取MPTCP信息,其中MPTCP信息中包括网络吞吐量值,然后将网络吞吐量值输入至预先建立的缓存耗量模型即可得到MPTCP缓存耗量值,由于缓存耗量模型是根据数理统计回归分析方法对NorNet Core实验数据(即实际的MPTCP缓存耗量与网络吞吐量)进行分析建模得到的。上述的MPTCP多路径传输缓存耗量的回归模型计算方法因采用真实的数据建立模型,从而根据建立的模型计算缓存耗量值得到的结果非常精确。

附图说明

[0042] 图1为一实施例MPTCP多路径传输缓存耗量的回归模型计算方法应用环境的示意图;
[0043] 图2为一个实施例中MPTCP多路径传输缓存耗量的回归模型计算方法的流程示意图;
[0044] 图3为一个实施例中MPTCP多路径传输缓存耗量的回归模型计算方法中缓存耗量模型的建立方法的流程示意图;
[0045] 图4为一个实施例中获取NorNet Core实验数据的流程示意图;
[0046] 图5为另一个实施例中NorNet国际测试床体系结构示意图;
[0047] 图6为一个实施例中采用NorNet国际测试床体系测试的缓存耗量与吞吐量关系示意图;
[0048] 图7为一个实施例中NorNet Core实验数据在不同拥塞控制算法下的拟合曲线关系示意图;
[0049] 图8为一实施例中MPTCP多路径传输缓存耗量的回归模型计算系统的结构示意图;
[0050] 图9为一个实施例中计算机设备的内部结构图。

具体实施方式

[0051] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0052] 本方法运用于图1的终端102中,终端可以是个人计算机、笔记本电脑等,终端102与数据采集设备104进行通讯连接,数据采集设备104通常MPTCP信息采集仪等。
[0053] 在一个实施例中,如图2所示,提供了一种MPTCP多路径传输缓存耗量的回归模型计算方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
[0054] 步骤S202,获取MPTCP信息;
[0055] 步骤S204,从MPTCP信息中提取网络吞吐量值;
[0056] 其中,MPTCP,多连接的TCP连接。MPTCP允许在一条TCP链路中建立多个子通道。当一条通道按照三次握手的方式建立起来后,可以按照三次握手的方式建立其他的子通道,这些通道以三次握手建立连接和四次握手解除连接。这些通道都会绑定于MPTCP session,发送端的数据可以选择其中一条通道进行传输。MPTCP可以选择多条子通道中任意一条来发送数据。MPTCP如果使用传统的TCP的方式来发送数据,将会出现一部分包在一条子通道,而另一部分包在另外一条子通道。如此,防火墙等中间设备将会收到TCP的序号跳跃的包,因此将会发生丢包等异常情况。为了解决这个问题,MPTCP通过增加DSN(data sequence number)来管理包的发送,DSN统计总的报文段序号,而每个子通道中的序号始终是连续。MPTCP的接收包过程分为两个阶段:第一、每个子通道依据自身序号来重组报文段;第二、MPTCP的控制模块依据DSN对所有子通道的报文段进行重组。
[0057] 网络吞吐量,网络中的数据是由一个个数据包组成,防火墙对每个数据包的处理要耗费资源。吞吐量是指在没有帧丢失的情况下,设备能够接受的最大速率。其测试方法是:在测试中以一定速率发送一定数量的帧,并计算待测设备传输的帧,如果发送的帧与接收的帧数量相等,那么就将发送速率提高并重新测试;如果接收帧少于发送帧则降低发送速率重新测试,直至得出最终结果。吞吐量测试结果以比特/秒或字节/秒表示。
[0058] 缓存耗量是指缓冲区的数据在单位时间内的传输量,其与网络吞吐量有关。另外,缓存耗量影响缓冲区数据的缓存速率,即当缓存耗量大,而缓存速度慢时,会大大减小数据传输速度;但当缓存耗量小,缓存速度快时,缓冲区会存在着大量的数据,从而造成缓存区资源浪费。因此,准确地计算缓存耗量就显得尤为重要。
[0059] 在本实施例中,MPTCP信息是指MPTCP有关的信息,包括站点主机个数、MPTCP中路径的数量、每条路径中的网络吞吐量、网络之间协议类型、IP版本等。
[0060] 步骤S206,将网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中缓存耗量模型是基于数理统计回归分析方法对NorNetCore实验数据进行分析建模得到的,且缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0061] 具体的,数理统计回归分析方法是指确定两种或两种以上变量间相互依赖的回归关系。按照所涉及的自变量的数目,回归分析方法可以分为一元回归分析与多元回归分析;按照因变量的数目,又可分为简单回归分析和多重回归分析;按照自变量和因变量的关系,可分为线性回归分析和非线性回归分析。在本实施例中就是要找出网络吞吐量与MPTCP缓存耗量之间的关系,即记为预先建立的缓存耗量模型。
[0062] 上述MPTCP多路径传输缓存耗量的回归模型计算方法、系统、计算机设备和存储介质,首选获取MPTCP信息,其中MPTCP信息中包括网络吞吐量值,然后将网络吞吐量值输入至预先建立的缓存耗量模型即可得到MPTCP缓存耗量值,由于缓存耗量模型是根据数理统计回归分析方法对NorNet Core实验数据(即实际的MPTCP缓存耗量与网络吞吐量)进行分析建模得到的。上述的MPTCP多路径传输缓存耗量的回归模型计算方法因采用真实的数据建立模型,从而根据建立的模型计算缓存耗量值得到的结果非常精确。
[0063] 在其中一个实施例中,如图3所示,缓存耗量模型的建立方法,包括:
[0064] 步骤S302,从NorNet Core国际测试床上获取NorNet Core实验数据;其中NorNet Core实验数据包括MPTCP缓存耗量实验值和网络吞吐量实验值;
[0065] 步骤S304,建立多项式回归模型,并采用MPTCP缓存耗量实验值和网络吞吐量实验值对多项回归模型进行学习训练,得到训练后的回归模型;
[0066] 步骤S306,对训练后的回归模型进行性能评估,在评估通过后,得到缓存耗量模型。
[0067] 具体的,NorNet Core实验数据是从NorNet Core国际测试床取得的;具体的,在NorNet Core体系结构下,选择不同的合适的工作条件,在MPTCP路径上设置或假定不同的网络吞吐量值,从而进行缓存耗量试验,得到多个缓存耗量值,然后将这些测设得到的网络吞吐量值和缓存耗量值记为NorNet Core实验数据。建立多项式回归模型,其实质就是要确定网络吞吐量和缓存耗量之间的关系。采用MPTCP缓存耗能实验值和网络吞吐量实验值对多项回归模型进行学习训练,得到训练后的回归模型。在得到训练后的回归模型之后,需要对该模型的性能进行评估,即对该模型进行质量评估以确定该模型是否有效可用。在评估通过后说明训练后的回归模型质量性能好,有效可用;最后根据训练后的回归模型得到缓存耗量模型。
[0068] 在一种可选的实施方式中,对训练后的回归模型进行性能评估的步骤中,包括:计算训练后的回归模型的确定系数和假定机率;在确定系数大于预设的系数值,且假定机率小于预设的概率值时,判定训练后的模型评估通过。
[0069] 其中,确定系数(即R-Square)是变量之间相关程度的值,是通过数据的变化来表征一个拟合的好坏。由上面的表达式可以知道“确定系数”的正常取值范围为[0 1],越接近1,表明方程的变量对y的解释能力越强,这个模型对数据拟合的也较好。假设机率(又叫假定值,P-value),是假设检验是推断统计中的一项重要内容,是用于判断原始假设是否正确的重要证据。统计学根据显著性检验方法所得到的P值,一般以P<0.05为显著,P<0.01为非常显著,其含义是样本间的差异由抽样误差所致的概率小于0.05或0.01。当P越小结果准确的可能性越高,反之,准确的可能性越低。在本实施例中,主要是计算训练后的回归模型的确定系数和假定机率来确定该回归模型的性能。
[0070] 另外,预设的系数值通常是大于0小于1的数值,在实际过程中,用户可以根据其需求进行选择,但选择的数值不应过小,否则不利于选择性能好的回归模型。预设的概率值通常为小于0.1的实数,例如0.05、0.001等。
[0071] 在其中一个实施例中,如图4所示,从NorNet Core国际测试床上获取NorNetCore实验数据的步骤中,包括:
[0072] 步骤S402,选择NorNet Core国际测试床体系,其中NorNet Core国际测试床体系包括多个站点主机;各站点主机之间通过网络通信连接,形成MPTCP多路径传输系统;
[0073] 具体的,要想获得NorNet Core实验数据,首先要进行试验,该试验需要在NorNet Core国际测试床体系上进行。NorNet Core国际测试床体系包括多个站点主机,各站点主机可以在世界各地分布,各站点主机可同时提供IPv4和IPv6地址资源,并且操作系统内核集成了MPTCP多路径传输内核。
[0074] 步骤S404,对NorNet Core国际测试床体系配置网络初始参数;
[0075] 其中,初始参数包括:发送端主机、接受端主机的网络供应商ISP参数、2)IP版本(IPv4,IPv6)等。
[0076] 步骤S406,在网络参数配置完成后,从MPTCP多路径传输系统随机选择一条传输路线为初始路径,在初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值;
[0077] 步骤S408,采用路径控制算法依次从剩余的MPTCP多路径传输系统中选择传输路径,在传输路径上设置缓存耗量值,测量并记录相应的吞吐量值;
[0078] 步骤S410,根据每一个缓存耗量值和与每一个缓存耗量值相对的吞吐量值得到NorNet Core实验数据。
[0079] 具体的,选定一个拥塞控制算法及路径管理算法,然后设置不同的缓存耗量值进行数据传输,获得相应的吞吐量值。将所有的缓存耗量值和与其对应的吞吐量值记为NorNet Core实验数据。
[0080] 在其中一个实施例中,在初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值的步骤中,包括:
[0081] 选择不同的时间点,在初始路径上设置缓存耗量值进行多次数据传输,在每一次数据传输中测量并记录相应的初始吞吐量值;对每一个初始吞吐量值进行平均运算,得到吞吐量值。
[0082] 具体的,为避免传输过程中短暂的网络波动影响,设定每个不同的缓存耗量进行一段时间的(例如30秒)的数据传输,然后求该时间段内的平均吞吐量。
[0083] 在其中一个实施例中,建立多项式回归模型的步骤中,包括:
[0084] 采用python工具包建立多项式回归模型。
[0085] 具体的,python工具包集成了一系列数据处理方法和模型,可以用来数据挖掘、建立模型等。采用python工具包分析数据简单且方便。
[0086] 在其中一个实施例中,拥塞控制算法包括Cubic算法、Hybla算法、OLIA算法、Reno算法、Scalable算法以及Vegas算法中的任意一种或多种。
[0087] 为了便于理解本发明的技术方案,给出一个详细的实施例。本文采用了多种回归分析方法,旨在寻找出X(多个自变量)与y之间的最佳关系,即:y=f(X)其中,y表示吞吐量,X表示可能影响吞吐量的多个因素,包括缓存耗量、拥塞控制算法等。被称为回归模型或预测模型。将它们的关系量化、比较,排除噪声因子,并在最小误差情况下将给定的X对y进行回归预测建模分析。本发明采用Python中著名的机器学习包SciKit-Learn对多路径传输进行多项式回归分析建模。具体为利用SciKit-Learn中的linear_model模块,该模块采用线性回归算法,具体使用LinearRegression类进行建模,通过场景设计在NorNet Core国际测试床上进行大量测试,通过把测试数据加载到LinearRegression中会输出一个多项式函数关系,调用该类的coef_方法可输出回归系数ci,i=0,1,…,n,根据R-Square的定义可自定义函数求出R-Squared的值,调用该类的f_regression方法可输出P-values值。在建模过程中:1、选择回归模型质量评价指标,有了缓存耗量回归模型算法还不够,还需要对模型的回归质量进行评价,其评价指标包括:R-Square及P-values两个。前者R-Square的值越大越好,其值越接近1表示所回归的模型匹配度越好;后者P-values的值越小越好,其值越接近于0表示所回归的模型错误的概率越小。R-Squarer的定义如下:
[0088]
[0089]
[0090]
[0091] 其中SST是关于实际数据y的方差;SSR是关于预测值的方差。R-square则表示预测值的总方差和实际值总方差的比值,其取值范围在区间[0,1]之间。如果R-Square=0.9,那么这将意味着回归模型有90%的预测准确率。当R-Square=1,则表示实际值被回归模型完美的匹配。显然,R-Square的值越大,表示模型匹配度越好。P-values是一个概率值,在统计学上用于表达显著性检验方法。当P<0.05为显著,P<0.01为非常显著,其含义表明样本间的差异由抽样误差所导致的概率小于0.05或者0.01。在本实施例中选择,R-Square=0.9和P-values<0.05是可以被接受的范围。2、选择吞吐量潜在影响因子根据多路径缓存模型构建,进一步确认如下几个可能影响网络吞吐量的潜在因子,分别为发送端和接受端的网络供应商ISP参数、IP版本(IPv4,IPv6)、拥塞控制算法、初始路径的选择。3、回归预测建模:(1)缓存耗量模型研究场景设计,在NorNet Core国际测试床的站点之间进行数据传输,该测试床的体系结构如图5所示;图5中所示的各个Site就是NorNet国际测试床在世界各地所分布的各站点,各站点主机可同时提供IPv4和IPv6地址资源,并且操作系统内核集成了MPTCP多种多路径传输;选定一个拥塞控制算法及路径管理算法,然后设置不同的缓存耗量值进行数据。传输,获得相应的吞吐量值。为避免传输过程中短暂的网络波动影响,设定每个不同的缓存耗量进行30秒的数据传输,然后求该时间段内的平均吞吐量;其中缓存耗量与吞吐量关系如图6所示;(2)为最大程度避免网络波动的影响,每个实验场景在不同的时间进行十次数据传输实验,然后对这些实验结果求平均值获得每个缓存值下的吞吐量,然后将实验结果数据作为NorNet Core实验数据;其中获得十次测试数据的平均值后,该数据就可在坐标轴上用可视化方式表示各平均值点与各拥塞控制算法下的拟合曲线关系,如图7所示;(3)将NorNet Core实验数据导入python工具包,建立多项式回归模型并使用实验数据训练模型,并同类项后输出模型公式,从而得到缓存耗量模型。4、缓存耗量模型性能测试:采用根据某次实验数据回归得到的缓存耗量模型如下:T=125.49+(3.12+0.38*E1+0.55*E2+
0.54*E3+0.53*E4+0.21*E5+0.2*E6)*B-0.02*B2+(39.52*E1+30.22*E2+51.70*E3+28.6*E4+
47.09*E5-61.8*E6),其中:T吞吐量(Mbit/s),B缓存耗量(Mbit),Ek其中k∈{1,…,6},分别代表采用各种不同的拥塞算法:k=1:Cubic,k=2:Hybla,k=3:OLIA,k=4:Reno,k=5:
Scalable,k=6:vegas,以该模型为例,在实际传输过程中,若拥塞控制算法选用E1(Cubic),即E1=1,E2=E3=E4=E5=E6=0则该模型即为:TE1=165.01+3.5*B-0.02*B2,根据上述公式,若要获得200Mbit/s的吞吐量,则缓存耗量只需设为10.65Mbit;此场景下测得在UiO-UiT两个站点的RTTmax=0.044089s,RTOmax=1s,将这些参数带入现有的MPTCP缓存耗量计算公式 计算得出该场
景的缓存耗量至少为145.6Mbit,可见采用现有的MPTCP缓存耗量计算公式计算出的缓存耗量远远大于实际需求;若拥塞控制算法选用E2(Hybla),即E2=1,E1=E3=E4=E5=E6=0该模型即为:TE2=155.71+3.67*B-0.02*B2,根据该公式,若要获得200Mbit/s的吞吐量,则缓存耗量只需设为12.99Mbit,而采用现有的MPTCP缓存耗量计算公式不考虑拥塞控制算法的影响,所计算的缓存耗量依然是145.6Mbit;可见无论选用哪种拥塞控制算法,根据现有的MPTCP缓存耗量公式得出的结果都远大于本实施例中建立的缓存耗量模型计算的MPTCP缓存耗量值。进一步地,为了证明本方法所得耗量模型公式的正确性,用前面回归模型评价指标公式与对其模型进行评估计算,结果为R-Square为0.92,接近于1,而P-values则远远小于0.01,所以根据数理统计理论,该模型的匹配度好,且由抽样误差所导致的概率小于规定的0.05,缓存耗量模型有效。综上所述,本实施例中构建的缓存耗量模型正确有效。
[0092] 应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在每个的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0093] 在一个实施例中,如图8所示,提供了一种MPTCP多路径传输缓存耗量的回归模型计算系统,包括:信息获取模块802,用于获取MPTCP信息;
[0094] 网络吞吐量值提取模块804,用于从MPTCP信息中提取网络吞吐量值;
[0095] 缓存耗量值计算模块806,用于将网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0096] 在其中一个实施例中,包括:
[0097] 实验数据获取模块,用于从NorNet Core国际测试床上获取NorNet Core实验数据;其中NorNet Core实验数据包括MPTCP缓存耗量实验值和网络吞吐量实验值;
[0098] 回归模型建立训练模块,用于建立多项式回归模型,并采用MPTCP缓存耗能实验值和网络吞吐量实验值对多项回归模型进行学习训练,得到训练后的回归模型;
[0099] 缓存耗量模型建立模块,用于对训练后的回归模型进行性能评估,在评估通过后,得到缓存耗量模型。
[0100] 在其中一个实施例中,包括:
[0101] 计算模块,用于计算训练后的回归模型的确定系数和假定机率;
[0102] 模型评估模块,用于在确定系数大于预设的系数值,且假定机率小于预设的概率值时,判定训练后的模型评估通过。
[0103] 在其中一个实施例中,实验数据获取模块包括:体系选择模块、初始参数配置模块、第一吞吐量值计算模块和第二吞吐量值计算模块;
[0104] 体系选择模块,用于选择NorNet Core国际测试床体系,其中NorNet Core国际测试床体系包括多个站点主机;各站点主机之间通过网络通信连接,形成MPTCP多路径传输系统;
[0105] 初始参数配置模块,用于对NorNet Core国际测试床体系配置网络初始参数;
[0106] 第一吞吐量值计算模块,用于在网络参数配置完成后,从MPTCP多路径传输系统随机选择一条传输路线为初始路径,在初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值;
[0107] 第二吞吐量值计算模块,用于采用路径控制算法依次从剩余的MPTCP多路径传输系统中选择传输路径,在传输路径上设置缓存耗量值,测量并记录相应的吞吐量值;
[0108] 实验数据获取模块,还用于根据每一个缓存耗量值和与每一个缓存耗量值相对的吞吐量值得到NorNet Core实验数据。
[0109] 在其中一个实施例中,第一吞吐量值计算模块包括:初始吞吐量值计算模块[0110] 初始吞吐量值计算模块,用于选择不同的时间点,在初始路径上设置缓存耗量值进行多次数据传输,在每一次数据传输中测量并记录相应的初始吞吐量值;
[0111] 第一吞吐量值计算模块,还用于对每一个初始吞吐量值进行平均运算,得到吞吐量值。
[0112] 在其中一个实施例中,回归模型建立训练模块,还用于采用python工具包建立多项式回归模型。
[0113] 在其中一个实施例中,拥塞控制算法包括Cubic算法、Hybla算法、OLIA算法、Reno算法、Scalable算法以及Vegas算法中的任意一种或多种。
[0114] 关于MPTCP多路径传输缓存耗量的回归模型计算系统的具体限定可以参见上文中对于MPTCP多路径传输缓存耗量的回归模型计算方法的限定,在此不再赘述。上述MPTCP多路径传输缓存耗量的回归模型计算系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0115] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储电阻等效模型、等效子模型的数据,以及存储执行计算时得到的等效电阻、工作电阻以及接触电阻。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种MPTCP多路径传输缓存耗量的回归模型计算方法。
[0116] 本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有每个的部件布置。
[0117] 在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取MPTCP信息;从MPTCP信息中提取网络吞吐量值;将网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0118] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:缓存耗量模型的建立方法,包括:从NorNet Core国际测试床上获取NorNet Core实验数据;其中NorNet Core实验数据包括MPTCP缓存耗量实验值和网络吞吐量实验值;建立多项式回归模型,并采用MPTCP缓存耗能实验值和网络吞吐量实验值对多项回归模型进行学习训练,得到训练后的回归模型;对训练后的回归模型进行性能评估,在评估通过后,得到缓存耗量模型。
[0119] 在一个实施例中,处理器执行计算机程序时还要实现以下步骤:对训练后的回归模型进行性能评估的步骤中,包括:计算训练后的回归模型的确定系数和假定机率;在确定系数大于预设的系数值,且假定机率小于预设的概率值时,判定训练后的模型评估通过。
[0120] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:从NorNet Core国际测试床上获取NorNet Core实验数据的步骤中,包括:选择NorNet Core国际测试床体系,其中NorNet Core国际测试床体系包括多个站点主机;各站点主机之间通过网络通信连接,形成MPTCP多路径传输系统;对NorNet Core国际测试床体系配置网络初始参数;在网络参数配置完成后,从MPTCP多路径传输系统随机选择一条传输路线为初始路径,在初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值;采用路径控制算法依次从剩余的MPTCP多路径传输系统中选择传输路径,在传输路径上设置缓存耗量值,测量并记录相应的吞吐量值;根据每一个缓存耗量值和与每一个缓存耗量值相对的吞吐量值得到NorNet Core实验数据。
[0121] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:在初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值的步骤中,包括:选择不同的时间点,在初始路径上设置缓存耗量值进行多次数据传输,在每一次数据传输中测量并记录相应的初始吞吐量值;对每一个初始吞吐量值进行平均运算,得到吞吐量值。
[0122] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:建立多项式回归模型的步骤中,包括:采用python工具包建立多项式回归模型。
[0123] 在一个实施例中,处理器执行计算机程序时还实现以下步骤:拥塞控制算法包括Cubic算法、Hybla算法、OLIA算法、Reno算法、Scalable算法以及Vegas算法中的任意一种或多种。
[0124] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取MPTCP信息;从MPTCP信息中提取网络吞吐量值;将网络吞吐量值输入预先建立的缓存耗量模型,计算得到MPTCP缓存耗量值;其中缓存耗量模型是基于数理统计回归分析方法对NorNet Core实验数据进行分析建模得到的,且缓存耗量模型用于记录MPTCP缓存耗量与网络吞吐量之间的关系。
[0125] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:缓存耗量模型的建立方法,包括:从NorNet Core国际测试床上获取NorNet Core实验数据;其中NorNet Core实验数据包括MPTCP缓存耗量实验值和网络吞吐量实验值;建立多项式回归模型,并采用MPTCP缓存耗能实验值和网络吞吐量实验值对多项回归模型进行学习训练,得到训练后的回归模型;对训练后的回归模型进行性能评估,在评估通过后,得到缓存耗量模型。
[0126] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:对训练后的回归模型进行性能评估的步骤中,包括:计算训练后的回归模型的确定系数和假定机率;在确定系数大于预设的系数值,且假定机率小于预设的概率值时,判定训练后的模型评估通过。
[0127] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:从NorNet Core国际测试床上获取NorNet Core实验数据的步骤中,包括:选择NorNet Core国际测试床体系,其中NorNet Core国际测试床体系包括多个站点主机;各站点主机之间通过网络通信连接,形成MPTCP多路径传输系统;对NorNet Core国际测试床体系配置网络初始参数;在网络参数配置完成后,从MPTCP多路径传输系统随机选择一条传输路线为初始路径,在初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值;采用路径控制算法依次从剩余的MPTCP多路径传输系统中选择传输路径,在传输路径上设置缓存耗量值,测量并记录相应的吞吐量值;根据每一个缓存耗量值和与每一个缓存耗量值相对的吞吐量值得到NorNet Core实验数据。
[0128] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:在初始路径上设置缓存耗量值进行数据传输,测量并记录吞吐量值的步骤中,包括:选择不同的时间点,在初始路径上设置缓存耗量值进行多次数据传输,在每一次数据传输中测量并记录相应的初始吞吐量值;对每一个初始吞吐量值进行平均运算,得到吞吐量值。
[0129] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:建立多项式回归模型的步骤中,包括:采用python工具包建立多项式回归模型。
[0130] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:拥塞控制算法包括Cubic算法、Hybla算法、OLIA算法、Reno算法、Scalable算法以及Vegas算法中的任意一种或多种。
[0131] 本领域普通技术人员可以理解实现实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0132] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0133] 以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。