一种基于ABEA3C的多路径拥塞控制方法技术

技术编号:38833535 阅读:11 留言:0更新日期:2023-09-17 09:51
本申请提供的一种基于ABEA3C的多路径拥塞控制方法,将异构多子流网络中多径链路拥塞控制的离散问题,建模成为A3C可解决的模型问题,基于A3C模型中的智能体根据receiver端返回的数据和Reward返回的值进行强化学习,结合链路状态评判准则,即链路状态Q值,让Action模块在每一次改善链路传输速率均为正确的改善,有效提升链路的传输速率保证链路的合理传输性,并极大地降低了链路的拥塞问题发生的概率。率。率。

【技术实现步骤摘要】
Conference on Computer Science and Application Engineering (2021): n. pag.)根据当前的路径特性和动态水平,结合RL的深度强化学习的探测带宽机制,并随着时间的推移采用良好决策,有效的利用网络带宽,提升传输吞吐量。
[0006]但是以上两种智能拥塞控制算法均为普通网络环境下,实现数据传输吞吐量的提升,然而上述两个方法在应用于异构网络环境时,在链路带宽判断的准确性和链路传输速率调整的实时性方面仍然存在着链路性能不稳定、可靠性低、低吞吐量等问题。

技术实现思路

[0007]为了解决现有的基于MPTCP的智能拥塞控制方法,在应用于异构网络环境时仍然存在着链路性能不稳定、可靠性低、低吞吐量的问题,本专利技术提供一种基于ABEA3C的多路径拥塞控制方法,其可以对异构网络中的每条路径的链路带宽进行准确判断并对链路执行提升、保持和降低等调整传输速率的决策,有效提升链路的传输速率保证链路的合理传输性,并降低链路的拥塞问题发生的概率。
[0008]本专利技术的技术方案是这样的:一种基于ABEA3C的多路径拥塞控制方法,其特征在于,其包括以下步骤:S1:构建异构多子流网络;在异构多子流网络的sender端和receiver端之间存在多条链路;S2:基于深度学习模型A3C,构建异构多子流网络中传输数据时的调度模型;所述调度模型包括:STATE模块、Action模块和Reward模块;所述STATE模块在每一次数据包进行传输后,记录当前各链路状态;所述链路状态包括:链路的带宽、拥塞窗口、往返时延、空余带宽、丢包率;所述Action模块对每一条链路的数据传输做出决策action;Action模块的动作包括:正、负、零,分别表示提升链路传输速率、降低链路传输速率和不改变链路传输速率;所述Reward模块在action的每一次改善链路传输速率决策后,根据链路状态对Action模块做出的决策进行评价,生成决策评价;S3:基于所述Action模块,控制每条所述链路发送数据;S4:在每一次数据包进行传输完成后,基于所述STATE模块记录当前各链路状态Q
ki
和链路带宽BW
ki
:Q
ki
=[BW
ki
,Cwnd
ki
,RTT
ki
,SE
ki
,PLR
ki
]BW
ki
=[ BW
11
, BW
12
, BW
13
, ..., BW
k

1i
‑1,BW
ki
]其中,n为网络中存在的链路总数,i为链路编号,k为传输的次数,i的范围为0~n;BW
ki
是子流i在k次传输时的链路带宽,Cwnd
ki
为子流i在k次传输时的拥塞窗口,RTT
ki
为子流i在k次传输时的往返时延,SE
ki
为子流i在k次传输时的空余带宽, PLR
ki
为子流i在k次传输时的丢包率;S5:所述Reward模块根据当前各链路状态Q
ki
和链路带宽BW
ki
,对Action模块做出的决策进行评价得到决策评价r
t
:;U(i,t)为Action模块在t时间段内对链路i做出的决策评价结果;N为t时间段内的子流的总数;
S6:在数据包传输的过程中,抓取每一条链路的链路信息,并计算得到所述链路状态Q;Q的计算方法为:;Q
ki
为链路i在k次传输时的网络状态实际值,i为链路编号,k为传输的次数,i的范围为0~n,n为网络中存在的链路总数;α为当前链路传输完成的数据包数量;Cwnd为当前时刻的拥塞窗口值;S7:对所述链路状态Q进行归一化处理:当Q
ki
值大于1时,将Q
ki
=1;Q值大于0小于0.5时,将Q
ki
=

1;Q值大于0.5小于1时,将Q
ki
=

0;S8:基于所述链路状态Q,对当前链路的带宽BW
ki
进行重新估计;;其中,BW
ki
是子流i在k次传输时的链路带宽;packet为每个数据包的大小动态值;η
k
的计算方法如下:;其中,ρ
k
为链路带宽增益,RTT为数据传输往返时间,

RTT为第k

1次数据传输往返时间和第k次数据传输往返时间的差值;S9:基于A3C模型的critic,基于所述链路状态Q、当前链路的带宽BW
ki
和决策评价r
t
对Action模块的决策进行评判;S10:Action模块基于critic的评价结果,决定链路的下一次传输速率,并采取改善action;S11:循环执行步骤S4~S10,实现对异步网络的各个链路的实时调度。
[0009]其进一步特征在于:所述链路带宽增益ρ
k
的计算方法为:;其中,每一条链路对应一个子流,N为t时间段内的子流的总数;Q
ki
为链路i在k次传输时的网络状态实际值;Q
maxi
为链路i在数据传输过程的历史数据中,链路状态的计算最大值;所述Action模块的决策中,首次数据包传输随机选择链路分配,链路传输速率随机产生。
[0010]本申请提供的一种基于ABEA3C的多路径拥塞控制方法,将异构多子流网络中多径
链路拥塞控制的离散问题,建模成为A3C可解决的模型问题,基于A3C模型中的智能体根据receiver端返回的数据和Reward返回的值进行强化学习,结合链路状态评判准则,即链路状态Q值,让Action模块在每一次改善链路传输速率均为正确的改善,有效提升链路的传输速率保证链路的合理传输性,并极大地降低了链路的拥塞问题发生的概率。
附图说明
[0011]图1为NS3平台的仿真场景;图2为ABEA3C的系统模型;图3为A3C深度强化学习算法的模型;图4为A3C深度强化学习算法的训练模型;图5为链路1带宽利用率在不同拥塞控制算法下的比对图;图6为链路2带宽利用率在不同拥塞控制算法下的比对图;图7为链路1吞吐量在不同拥塞控制算法下的比对图;图8为链路2吞吐量在不同拥塞控制算法下的比对图;图9为链路总吞吐量在不同拥塞控制算法下的比对图;图10为算法的整体伪代码图。
具体实施方式
[0012]异构多子流网络中的链路数据发送为离散事件,所以本实施例中,基于NS3(Network Simulator version 3)平台上对本方法运行仿真场景进行搭建,如图1所示为运行本方法的仿真环境。网络拓扑包括发送端(sender)、接收端(receiver)和四个路由节点,其中send

point为发送端包含的IP地址为:10.0.0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于ABEA3C的多路径拥塞控制方法,其特征在于,其包括以下步骤:S1:构建异构多子流网络;在异构多子流网络的sender端和receiver端之间存在多条链路;S2:基于深度学习模型A3C,构建异构多子流网络中传输数据时的调度模型;所述调度模型包括:STATE模块、Action模块和Reward模块;所述STATE模块在每一次数据包进行传输后,记录当前各链路状态;所述链路状态包括:链路的带宽、拥塞窗口、往返时延、空余带宽、丢包率;所述Action模块对每一条链路的数据传输做出决策action;Action模块的动作包括:正、负、零,分别表示提升链路传输速率、降低链路传输速率和不改变链路传输速率;所述Reward模块在action的每一次改善链路传输速率决策后,根据链路状态对Action模块做出的决策进行评价,生成决策评价;S3:基于所述Action模块,控制每条所述链路发送数据;S4:在每一次数据包进行传输完成后,基于所述STATE模块记录当前各链路状态Q
ki
和链路带宽BW
ki
:Q
ki
=[BW
ki
,Cwnd
ki
,RTT
ki
,SE
ki
,PLR
ki
]BW
ki
=[ BW
11
, BW
12
, BW
13
, ..., BW
k

1i
‑1,BW
ki
]其中,n为网络中存在的链路总数,i为链路编号,k为传输的次数,i的范围为0~n;BW
ki
是子流i在k次传输时的链路带宽,Cwnd
ki
为子流i在k次传输时的拥塞窗口,RTT
ki
为子流i在k次传输时的往返时延,SE
ki
为子流i在k次传输时的空余带宽, PLR
ki
为子流i在k次传输时的丢包率;S5:所述Reward模块根据当前各链路状态Q
ki
和链路带宽BW
ki
,对Action模块做出的决策进行评价得到决策评价r
t

【专利技术属性】
技术研发人员:梁腾李志刚徐西海
申请(专利权)人:无锡车联天下信息技术有限公司
类型:发明
国别省市:

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

1