CN114024896B - 基于mptcp的自适应动态路径管理方法及装置 - Google Patents
基于mptcp的自适应动态路径管理方法及装置 Download PDFInfo
- Publication number
- CN114024896B CN114024896B CN202111287992.7A CN202111287992A CN114024896B CN 114024896 B CN114024896 B CN 114024896B CN 202111287992 A CN202111287992 A CN 202111287992A CN 114024896 B CN114024896 B CN 114024896B
- Authority
- CN
- China
- Prior art keywords
- sub
- streams
- available
- standby
- stream
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于MPTCP的自适应动态路径管理方法及装置,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流作为传输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
Description
技术领域
本发明涉及网络数据传输技术领域,特别是涉及一种基于MPTCP的自适应动态路径管理方法及装置。
背景技术
MPTCP(MultiPathTCP多路传输控制协议)是一种传输控制协议,其目的是允许传输控制协议(TCP)连接使用多个路径来最大化信道资源使用。在当今的互联网中,服务器通常位于多个互联网提供商处,数据中心在计算节点之间提供多条并行路径,移动主机拥有多个无线电。传统上,路由的作用是利用路径多样性,但这限制了响应和扩展。为了真正获得健壮性和性能优势,需要设计成利用多条路径的传输协议。
多条路径的传输协议主要是通过管理子流(子路径),以管理传输路径。传统的路径管理方式包括Fullmesh算法或PCDC算法。然而,Fullmesh算法不管子流是好流还是坏流,统统的加入传输的子流处理中,没考虑子路径和流量特性。在波动的网络环境中,由于链路不好的子流也会默认加入传输,使得接收端缓冲区不得不先缓存数据包,这将导致其数据急剧膨胀,然而缓冲区的大小是有限的,势必会导致缓冲区的数据的溢出。而PCDC算法在传输最初始阶段对子流的好坏进行一次判断,无法适应传输过程中子流的动态变化。
综上,可见传统的路径管理方式还存在以上不足。
发明内容
基于此,有必要针对传统的路径管理方式还存在的不足,提供一种基于MPTCP的自适应动态路径管理方法及装置。
一种基于MPTCP的自适应动态路径管理方法,包括步骤:
根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集;
对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;
根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集;其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。
上述的基于MPTCP的自适应动态路径管理方法,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流作为传输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
在其中一个实施例中,根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集的过程,包括步骤:
根据拓扑结构中发送端与接收端的乘积确定初始有效子路径,以确定初始有效子路径集。
在其中一个实施例中,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集的过程,包括步骤:
根据各有效子路径的吞吐量,计算有效子路径的子流分数;
根据子流分数,区分可用子流和备用子流,以获得可用子流集和备用子流集。
在其中一个实施例中,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集的过程,包括步骤:
根据备用子流集中的备用子流的RTT时间对备用子流进行优先级排序;
根据优先级排序将备用子流加入传输路径;
根据备用子流加入后的吞吐量变化,计算备用子流的增益值;
根据增益值与预设增益值的比较,调整备用子流集。
在其中一个实施例中,根据备用子流加入后的吞吐量变化,计算备用子流的增益值的过程,如下式:
其中,Tputmax=Max(Tput1,Tput2,....,TputZ)表示Z个正在运行的子流当中吞吐量最高的子流数值;Tputmin=Min(Tput1,Tput2,...,TputZ)表示Z个正在运行的子流当中吞吐量最小的子流数值;表示第i条备用子流在加入传输后的平均的吞吐量数值;表示在T时刻,传输所有子流的吞吐量总和,N表示子流的总数;△T指的是备用子流传输所经过的时间;ω表示可变参数,表示备用子流在加入后相对吞吐量的权重大小。
在其中一个实施例中,预设增益值为0。
在其中一个实施例中,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集的过程,包括步骤:
检测可用子流集中可用子流的吞吐量;
根据可用子流的吞吐量变化,计算可用子流的健康参数;
根据健康参数与预设健康值的比较,调整可用子流集。
一种MPTCP路径管理装置,包括:
子流确定模块,用于根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集;
子流分类模块,用于对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;
子流调整模块,用于根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集;其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。
上述的MPTCP路径管理装置,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流作为传输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
一种计算机存储介质,其上存储有计算机指令,计算机指令被处理器执行时实现上述任一实施例的基于MPTCP的自适应动态路径管理方法。
上述的计算机存储介质,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流作为传输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述任一实施例的基于MPTCP的自适应动态路径管理方法。
上述的计算机设备,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流作为传输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
附图说明
图1为一实施方式的基于MPTCP的自适应动态路径管理方法流程图;
图2为另一实施方式的基于MPTCP的自适应动态路径管理方法流程图;
图3为一具体应用例的MPTCP拓扑示意图;
图4为又一实施方式的基于MPTCP的自适应动态路径管理方法流程图;
图5为平均吞吐量对比图;
图6为实时吞吐量对比图;
图7为一实施方式的MPTCP路径管理装置模块结构图;
图8为一实施方式的计算机结构示意图。
具体实施方式
为了更好地理解本发明的目的、技术方案以及技术效果,以下结合附图和实施例对本发明进行进一步的讲解说明。同时声明,以下所描述的实施例仅用于解释本发明,并不用于限定本发明。
本发明实施例提供了一种基于MPTCP的自适应动态路径管理方法。
图1为一实施方式的基于MPTCP的自适应动态路径管理方法流程图,如图1所示,一实施方式的基于MPTCP的自适应动态路径管理方法包括步骤S100至步骤S102:
S100,根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集;
S101,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;
S102,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集;其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。
根据MPTCP网络的拓扑结构的端口数量,进行子路径的概括选择,确定各可能的子路径,作为有效子路径,并根据全部有效子路径建立有效子路径集。
在其中一个实施例中,图2为另一实施方式的基于MPTCP的自适应动态路径管理方法流程图,如图2所示,步骤S100中根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集的过程,包括步骤S200:
S200,根据拓扑结构中发送端与接收端的乘积确定初始有效子路径,以确定初始有效子路径集。
根据MPTCP网络的拓朴结构计算得出初始有效子路径集SP,初始有效子路径数为N=Ns×Mr,Ns为发送端接口数或ISP数,Mr为接收端的接口数或ISP数。
在其中一个实施例中,根据初始有效子路径集SP的确定,即可确定各子路径(子流)的吞吐量TP。
根据子流的吞吐量TP大小,将初始有效子路径集SP中的有效子路径进行分类,分为可用子流和备用子流。在其中一个实施例中,可用子流的吞吐量大于备用子流的吞吐量。
在其中一个实施例中,如图2所示,步骤S101中对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集的过程,包括步骤S300和步骤S301:
S300,根据各有效子路径的吞吐量,计算有效子路径的子流分数;
其中,可根据PCDC算法对有效子路径进行打分,如下式:
IF=(Ωi}
TP:={TP1,TP2,…,TPi,...}i=1,2,…N
其中,Ωi表示子流分数;TPi表示有效子路径i的吞吐量。
S301,根据子流分数,区分可用子流和备用子流,以获得可用子流集和备用子流集。
其中,子流分数越大,表征对应的有效子路径传输越良好,越符合可用子流的需求。因此,根据子流分数对有效子路径进行比例分配,获得可用子流集和备用子流集。其中,可用子流集的可用子流的子流分数大于备用子流集的备用子流。
在其中一个实施例中,将子流分数大于0的有效子路径确定为可用子流,将子流分数小于0的有效子路径确定为备用子流。
为更好地解释本发明实施例的拓扑,图3为一具体应用例的MPTCP拓扑示意图,如图3所示,R1-R4为中继站,作为阀门。控制器用于控制R1-R4的下发流表,以控制数据包的方向。
启动SDN控制器,对SDN交换机进行监控到的数据进行预处理,转化为易于处理计算的数据。其中,R1-R4是路由器,但是实际代码实现是交换机,客户端发送数据给服务器,通过子流1234的数据传输。基于此,通过图3的架构计算子流的吞吐量——启动SDN控制器,主要启动SDN控制器RYU,RYU向交换机周期下发获取统计信息,请求交换机端口流量数据,同时请求流表统计信息。根据得到的数据用如下公式进行实时的流量统计,基于数据包数量来计算吞吐量,如下式:
其中,Tput△表示子流对应的吞吐量;Pi表示在△T时间内有效传输到达所有的数据包;Qi表示在△T时间内有效传输到达有问题的异常数据包,包含错误的包、损坏的包和重复的包;表示子流i的平均报文段长度大小。
在其中一个实施例中,如图2所示,步骤S102中根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集的过程,包括步骤S400步骤S403:
S400,根据备用子流集中的备用子流的RTT时间对备用子流进行优先级排序;
S401,根据优先级排序将备用子流加入传输路径;
S402,根据备用子流加入后的吞吐量变化,计算备用子流的增益值;
S403,根据增益值与预设增益值的比较,调整备用子流集。
其中,对于备用子流,执行后退算法择时加入,并且将反馈效果赋分进行评估,由于备用子流本身是处于关闭的状态。由于性能不佳的备用子流盲目加入可用子流集会给传输系统整体带来一定的消极影响。因此,通过类似计算机网络TCP二进制指数退避算法(BEB)进行退避,不好的备用子流加入需要等待时机加入。一开始备用子流等待的时间比较短,以测试备用子流是否正常,后面经过多次激活发现路径已经完全损坏后应主动退避,等待更多的时间把该备用子流加入网络。取基本的退避时间为加入期τ,即加入备用子流从开始传输数据到稳定传输所消耗的时间。
子流每次申请加入传输所需的等待时间为:Wait_time=|Ωi|*τ*r
从离散的整数集合r∈[0,1,..,2^K]中随机取出一个数,记为r。每次加入失败后,推后的时间为r倍的加入期。其中参数K按下面的公式计算:
K=Min[Count,10]
其中,Count为子流累计加入次数。当尝试加入次数不超过10时,参数K等于累计加入次数;当加入次数超过10时,k就不再增大而一直等于10。
在备用子流加入前,对备用子流进行一个排序,以确保备用子流加入的有序性,定义一个加入优先级,该优先级取决于各个备用子流RTT(Round Trip Time)时间,理由是RTT对应子流来说在一定的程度上反映了路径的拥塞程度:
ΡRTTi=SORT(RTTi,j)
其中,RTTi<RTTj&(0,...i...j...M),M表示备用子流的数量,ΡRTTi表示的就是子流加入传输的优先级参数,每次优先取该值的最小值,依次加入子流,例如PRTT1、PRTT2等。
基于此,在其中一个实施例中,步骤S402中根据备用子流加入后的吞吐量变化,计算备用子流的增益值的过程,如下式:
其中,Tputmax=Max(Tput1,Tput2,....,TputZ)表示Z个正在运行的子流当中吞吐量最高的子流数值;Tputmin=Min(Tput1,Tput2,...,TputZ)示Z个正在运行的子流当中吞吐量最小的子流数值;表示第i条备用子流在加入传输后的平均的吞吐量数值;表示在T时刻,传输所有子流的吞吐量总和,N表示子流的总数;△T指的是备用子流传输所经过的时间;ω表示可变参数,表示备用子流在加入后相对吞吐量的权重大小。
作为一个较优的实施方式,可变参数ω为0.9。
其中,增益值越大,对应的备用子流越适合加入可用子流集。作为一个较优的实施方式,预设增益值为0,即——将增益值大于0的备用子流加入可用子流集中。
在其中一个实施例中,为保证平滑性,避免因丢包导致增益值产生大幅度的波动,为了避免测量值有剧烈抖动,结合之前的样本值,估计的增益值G(i)如下式:
G(i)=α×G(i)+(1-α)G(i)new
当α接近于1,G(i)的值几乎不被G(i)new影响,当α接近于0,表示G(i)new代表下一阶段的增益,且之前的增益值没有作用;为了获得准确的增益值,避免因网络突变引起的错误,通常,当α为0.85时最佳。在进行若干个轮次之后,监测G(i)的数值。如果G(i)大于0,则将第i个备用子流加入可用子流集,否则,就持续进行G(i)的迭代计算。
在其中一个实施例中,图4为又一实施方式的基于MPTCP的自适应动态路径管理方法流程图,如图4所示,步骤S102中根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集的过程,包括步骤S500至步骤S503:
S500,检测可用子流集中可用子流的吞吐量;
S501,根据可用子流的吞吐量变化,计算可用子流的健康参数;
S502,根据健康参数与预设健康值的比较,调整可用子流集。
对于可用子流,实时监控其运行的状态,若发现其性能下降,在经过一个评估算法进行打分,若发现健康参数过低,且糟糕的状况持续,则选择将其转入备用子流集。
由于性能恶化不管是由于丢包,带宽,或者是延迟引起的,最终都体现为吞吐量数值的变化,因此是一种多自变量和因变量的关系。由于有问题的路径在传输时,会到时接收端的缓冲区膨胀,进而导致内存溢出引起更严重丢包,MPTCP的机会重传和惩罚缓慢的子流机制会尽量减少这种情况的发生,但是只是减缓,并不可以消除。
其中,重传指的是当接收端缓冲区不足时,一种选择是重新发送之前在另一个子流上发送的数据,即保持接收窗口的后沿。即用快速的子流来重传慢速的子流落下的数据,来弥补糟糕的子流落下的包。这使得快速路径发送的速度与单路径TCP一样快,即使在缓冲不足的情况下也是如此(快流不必等慢流)。如果连接不受接收窗口(缓冲区大小)限制,则有机会重新传输连接。
惩罚机制通过重传对接收窗口停滞做出反应成本较高;
因此另一种避免持续这样做的方法为——若一个连接刚刚填满了接收窗口,为了避免在下一个RTT再次这样做,需要减少阻碍窗口前进的子流上的RTT。为此,MPTCP可以减少该子流的窗口;将拥塞窗口减半,并将慢启动阈值设置为减小的窗口大小。为了避免重复惩罚同一个流,每个子流往返时间只减少一次。
在其中一个实施例中,两种机制允许MPTCP发送方有效地利用接收方提供的任何接收缓冲区。然而,现代的TCP实现并不只是从一开始就盲目地分配大的缓冲区——当发现需要更多的缓冲区时,会自适应地增加缓冲区的大小。在实现了发送和接收缓冲区调整,使用MPTCP缓冲区大小公式完成。用通常的sysctls设置了最大发送和接收缓冲区,但自动调整会自动增加实际缓冲区。
因此,在缓冲区一定的情况下,由于MPTCP的两种机制,将会导致坏的子流的吞吐量慢慢的变小。因此需要对其吞吐量进行监测即可,定义一个参数来表示可用子流的健康程度θ:
每过RTT时间后执行一次健康算法
θi=1.2×Tputi(T+△T)-Tputi(T)
θi=χθi+(1-χ)θi(new)
测出:θmax=max{θ1,θ2,....,θM},M为可用子流的个数。
若θi=θmax,则认定对应的子流i为主子流,如果主子流发生拥塞,不采取操作。如果是非主子流则执行算法,为了保证网络的稳定性,防止意外关闭性能最佳的子流。
如果子流运行平稳,则θi默认情况下大于0,若出现网络波动,导致的子流损坏则θi<0
经过若干个时间轮回,θi<-Q,则将可用子流设置为备用子流,否则继续利用可用子流i传输。
在其中一个实施例中,Q为预设健康值,包括4-8。作为一个较优的实施方式,Q为5。
为了更好地解释本实施例的效果,以下以一具体应用例对本发明实施例的效果进行展示。以图3所示的拓扑进行场景测试,在支持SDN的网络中构建动态MPTCP路径控制的可行性。在测试平台中,使用Mininet和RYU控制器创建了SDN测试平台。
实验流程:初始化实验构建了4条路径,初始化的路径参数是,路径1,2,3带宽是50M,路径延迟为10ms;路径4带宽是50M,延迟是50ms,且带有5%丢包率。运行一段时间后,50M、延迟50ms的路径4情况变好,带宽是30M,延迟10ms,没有丢包;后面接着是路径2变差,为带宽50M,延迟50ms,有5%的丢包。
图5为平均吞吐量对比图,如图5所示,ASS表示本发明实施例,PCDC表示PCDC算法,FullMesh表示FullMesh算法。可见平均吞吐量(Average Throughput),本发明实施例在相同拓扑中的应用,对应的平均吞吐量更好。
图6为实时吞吐量对比图,如图6所示,在前50秒,ASS和PCDC平均整体的吞吐量比Fullmesh好很多;在50-80秒之间,路径4变好,Fullmesh本来就没有对路径进行任何操作,所以吞吐量瞬间提升,PCDC则已经将路径4关闭,故而不恢复,ASS则执行退避算法后加入路径4,因此吞吐量也跟着提升;在80-140秒期间路径2变差,Fullmesh由于路径2的变差,在有限的缓冲区中,丢包增加导致重传增加,缓冲区内存溢出,影响了整体的吞吐量,PCDC虽然现在只有3个子流在传输,2个好流1个坏流,但是由于加入传输的路径过少,因此整体性能略差于Fullmesh,而ASS在监听到路径2发生问题后,在经过几轮RTT时间后将路径2关闭,仅留下路径134进行传输,此时的ASS吞吐量比Fullmesh更加平稳,平均吞吐量显著提升。
上述任一实施例的基于MPTCP的自适应动态路径管理方法,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流作为传输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
本发明实施例还提供了一种MPTCP路径管理装置。
图7为一实施方式的MPTCP路径管理装置模块结构图,如图7所示,一实施方式的MPTCP路径管理装置包括子流确定模块100、子流分类模块101和子流调整模块102:
子流确定模块100,用于根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集;
子流分类模块101,用于对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;
子流调整模块102,用于根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集;其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。
上述的MPTCP路径管理装置,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流进作为输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
本发明实施例还提供了一种计算机存储介质,其上存储有计算机指令,该指令被处理器执行时实现上述任一实施例的基于MPTCP的自适应动态路径管理方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、终端、或者网络设备等)执行本发明各个实施例方法的全部或部分。而前述的存储介质包括:移动存储设备、RAM、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
与上述的计算机存储介质对应的是,在一个实施例中还提供一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行程序时实现如上述各实施例中的任意一种基于MPTCP的自适应动态路径管理方法。
该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于MPTCP的自适应动态路径管理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
上述计算机设备,在根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集后,对初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;最后,根据可用子流集中可用子流的吞吐量的更新,调整可用子流集和备用子流集。其中,调整包括将可用子流集中可用子流调整为备用子流集的备用子流,或将备用子流集中备用子流调整为可用子流集的可用子流。以可用子流作为传输路径,同时对子流进行作为可用子流和备用子流的转换,以适应传输路径的动态调整,提升传输网络整体的吞吐量,增强用户体验。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (8)
1.一种基于MPTCP的自适应动态路径管理方法,其特征在于,包括步骤:
根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集;
对所述初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;
根据所述可用子流集中可用子流的吞吐量的更新,调整所述可用子流集和所述备用子流集;其中,所述调整包括将所述可用子流集中可用子流调整为所述备用子流集的备用子流,或将所述备用子流集中备用子流调整为所述可用子流集的可用子流;
根据所述可用子流集中可用子流的吞吐量的更新,调整所述可用子流集和所述备用子流集的过程,包括步骤:
根据所述备用子流集中的备用子流的RTT时间对所述备用子流进行优先级排序;
根据所述优先级排序将所述备用子流加入传输路径;
根据所述备用子流加入后的吞吐量变化,计算所述备用子流的增益值;
根据所述增益值与预设增益值的比较,调整所述备用子流集;
根据所述备用子流加入后的吞吐量变化,计算所述备用子流的增益值的过程,如下式:
2.根据权利要求1所述的基于MPTCP的自适应动态路径管理方法,其特征在于,所述根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集的过程,包括步骤:
根据所述拓扑结构中发送端与接收端的乘积确定初始有效子路径,以确定初始有效子路径集。
3.根据权利要求1所述的基于MPTCP的自适应动态路径管理方法,其特征在于,所述对所述初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集的过程,包括步骤:
根据各所述有效子路径的吞吐量,计算所述有效子路径的子流分数;
根据所述子流分数,区分可用子流和备用子流,以获得所述可用子流集和所述备用子流集。
4.根据权利要求1所述的基于MPTCP的自适应动态路径管理方法,其特征在于,所述预设增益值为0。
5.根据权利要求1所述的基于MPTCP的自适应动态路径管理方法,其特征在于,所述根据所述可用子流集中可用子流的吞吐量的更新,调整所述可用子流集和所述备用子流集的过程,包括步骤:
检测所述可用子流集中可用子流的吞吐量;
根据所述可用子流的吞吐量变化,计算所述可用子流的健康参数;
根据所述健康参数与预设健康值的比较,调整所述可用子流集。
6.一种MPTCP路径管理装置,其特征在于,包括:
子流确定模块,用于根据作为管理目标的MPTCP网络的拓扑结构,获得初始有效子路径集;
子流分类模块,用于对所述初始有效子路径集内的有效子路径进行分类,获得可用子流集和备用子流集;
子流调整模块,用于根据所述可用子流集中可用子流的吞吐量的更新,调整所述可用子流集和所述备用子流集;其中,所述调整包括将所述可用子流集中可用子流调整为所述备用子流集的备用子流,或将所述备用子流集中备用子流调整为所述可用子流集的可用子流;
根据所述可用子流集中可用子流的吞吐量的更新,调整所述可用子流集和所述备用子流集的过程,包括步骤:
根据所述备用子流集中的备用子流的RTT时间对所述备用子流进行优先级排序;
根据所述优先级排序将所述备用子流加入传输路径;
根据所述备用子流加入后的吞吐量变化,计算所述备用子流的增益值;
根据所述增益值与预设增益值的比较,调整所述备用子流集;
根据所述备用子流加入后的吞吐量变化,计算所述备用子流的增益值的过程,如下式:
7.一种计算机存储介质,其上存储有计算机指令,其特征在于,所述计算机指令被处理器执行时实现如权利要求1至5任意一项所述的基于MPTCP的自适应动态路径管理方法。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行程序时实现如权利要求1至5任意一项所述的基于MPTCP的自适应动态路径管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111287992.7A CN114024896B (zh) | 2021-11-02 | 2021-11-02 | 基于mptcp的自适应动态路径管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111287992.7A CN114024896B (zh) | 2021-11-02 | 2021-11-02 | 基于mptcp的自适应动态路径管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114024896A CN114024896A (zh) | 2022-02-08 |
CN114024896B true CN114024896B (zh) | 2022-08-26 |
Family
ID=80059685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111287992.7A Active CN114024896B (zh) | 2021-11-02 | 2021-11-02 | 基于mptcp的自适应动态路径管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114024896B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115134292B (zh) * | 2022-06-28 | 2023-11-28 | 王蕊 | 基于接收窗口的多路径传输实时流媒体的路径管理方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905463B (zh) * | 2014-04-21 | 2017-02-15 | 北京邮电大学 | 一种适用于多路径传输的连接管理与控制方法 |
CN105490933B (zh) * | 2015-12-28 | 2019-06-11 | 中国电子科技集团公司第五十四研究所 | 基于多路径传输协议mptcp的路径管理方法及装置 |
US20170346724A1 (en) * | 2016-05-25 | 2017-11-30 | Doru Calin | Dynamic multi-path control and adaptive end-to-end content delivery over wireless media |
CN110784399A (zh) * | 2019-11-04 | 2020-02-11 | 海南大学 | 一种mptcp网络多路径优化组合传输方法及系统 |
-
2021
- 2021-11-02 CN CN202111287992.7A patent/CN114024896B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114024896A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Widmer et al. | Extending equation-based congestion control to multicast applications | |
KR101137164B1 (ko) | 단-대-단 측정에 기초한 네트워크 상으로의 데이터 스트림 유입 제어 | |
US7139281B1 (en) | Method, system and router providing active queue management in packet transmission systems | |
US20020194361A1 (en) | Data transmitting/receiving method, transmitting device, receiving device, transmiting/receiving system, and program | |
Gao et al. | A state feedback control approach to stabilizing queues for ECN-enabled TCP connections | |
WO2020048147A1 (zh) | 数据传输方法及装置 | |
KR20030089708A (ko) | 큐 버퍼를 제어하는 방법 | |
KR20170135107A (ko) | 데이터 전송 방법 및 그 기능이 구비된 컴퓨팅 장치 | |
CN106878192B (zh) | 一种自适应mptcp的数据调度方法 | |
Mamatas et al. | Approaches to congestion control in packet networks | |
CN114024896B (zh) | 基于mptcp的自适应动态路径管理方法及装置 | |
Wang et al. | Using adaptive rate estimation to provide enhanced and robust transport over heterogeneous networks | |
Xiong et al. | Lambdastream–a data transport protocol for streaming network-intensive applications over photonic networks | |
Khademi et al. | Alternative backoff: Achieving low latency and high throughput with ECN and AQM | |
CN116489472A (zh) | 一种视频流的传输方法、装置、电子设备及存储介质 | |
JP4267988B2 (ja) | パケット送信量制御方法、通信システム、通信装置及びプログラム | |
CN115714746A (zh) | 基于延迟和丢包的拥塞控制方法及其系统 | |
JP3548005B2 (ja) | フロー制御方法及びフロー制御装置 | |
KR101046473B1 (ko) | 네트워크 모델을 이용한 전송제어 프로토콜의 흐름 제어및 혼잡 제어 방법 | |
JP2005184494A (ja) | データ通信管理方法 | |
JP6897769B2 (ja) | データ送信装置、方法およびプログラム | |
Hassayoun et al. | Loss synchronization, router buffer sizing and high-speed TCP versions: Adding RED to the mix | |
Marek et al. | High-Rate data transfer with Congestion-Aware multipath routing | |
Rodríguez‐Pérez et al. | The persistent congestion problem of FAST‐TCP: analysis and solutions | |
Fares et al. | A new algorithm for controlling a buffer with time-varying arrival rate |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |