多路径拥塞控制方法及装置

文档序号:31472628发布日期:2022-09-09 23:39阅读:264来源:国知局
多路径拥塞控制方法及装置

1.本技术涉及拥塞控制cc技术领域,尤其涉及多路径拥塞控制方法及装置。


背景技术:

2.拥塞控制cc(congestion control)一直是网络中基石问题。从多路径传输控制协议mptcp(multipath tcp)出现以来,就诞生了很多mptcp的拥塞控制cc算法。这些算法大多数是基于tcp cc协议扩展而来,但这些变体算法也都或多或少继承了tcpcc协议的缺点,即根据环境信号调节拥塞窗口,若出现错误信号则会造成严重的性能下降。而为了解决这一问题,随着机器学习ml的快速发展,深度强化学习drl(deepreinforcement learning)模型也逐渐被广泛应用于网络拥塞控制cc中。
3.然而,现有的多路径拥塞控制方式中,由于现实应用状态下,每个mptcp的子流数目是不确定的,因此子流数目限制了基于深度强化学习的拥塞控制算法的应用;以及,另一类基于学习的拥塞控制方案采用在线最优化求解理论,将其扩展到多路径使得每条子流使用在线学习框架决策发送速率,因此会导致基于在线学习理论的强化学习算法收敛较慢的问题;另外,深度强化学习drl决策的间隔时间无法确定,不同的设备和操作系统决策时间将会不同,使得drl决策可能会阻塞数据包,这导致其无法应用于高速网络。


技术实现要素:

4.鉴于此,本技术实施例提供了多路径拥塞控制方法及装置,以消除或改善现有技术中存在的一个或更多个缺陷。
5.本技术的一个方面提供了一种多路径拥塞控制方法,包括:
6.实时监测基于多路径传输控制协议mptcp的目标网络当前是否处于非阻塞状态;
7.若所述目标网络当前处于非阻塞状态,则使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
8.在本技术的一些实施例中,还包括:
9.若所述目标网络当前未处于非阻塞状态,则将所述目标网络的拥塞控制模式切换至并存模式,以基于该并存模式对所述目标网络的数据传输进行拥塞控制;
10.其中,所述并存模式包括:作为主模式的启发式mptcp决策方式和作为辅助模式的drl决策方式,该drl决策方式包括:使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
11.在本技术的一些实施例中,所述基于所述mptcp的各个子流各自对应的单子流强化学习模型对所述目标网络的数据传输进行拥塞控制,包括:
12.各个子流分别异步查询自身的动作,并收集除自身外的其他子流的信息;
13.各个子流分别根据除自身外的其他子流的信息及预设的权重数据生成当前的多子流奖励,以使各个所述子流分别基于各自获取的多子流奖励和所述单子流强化学习模型对所述目标网络的数据传输进行符合公平性原则的拥塞控制。
14.在本技术的一些实施例中,所述单子流强化学习模型的输入包括当前的环境信息,所述单子流强化学习模型的输出包括子流对窗口的独立调整参数;
15.所述环境信息包括:根据各个所述子流的状态加权平均数据获取的带宽、滑动窗口、往返时间rtt和该往返时间rtt的平均偏差。
16.在本技术的一些实施例中,还包括:
17.在所述mptcp的各个子流中择一作为目标子流;
18.应用除所述目标子流之前的其他子流的信息及预设的权重数据生成当前的多子流奖励,以使所述目标子流基于所述多子流奖励训练深度强化学习模型;
19.将所述单子流强化学习模型复制至其他子流以进行迭代训练,直至所述强化学习模型收敛,得到用于在多路径中进行单子流的公平性拥塞控制的单子流强化学习模型。
20.在本技术的一些实施例中,所述实时监测基于多路径传输控制协议mptcp的目标网络当前是否处于非阻塞状态,包括:
21.实时监测当前的包速与模型决策延迟阈值之间的数值比较结果,其中,所述包速包括:数据包的到达拥塞管理器的时间间隔;
22.若所述数值比较结果显示所述包速等于或大于所述模型决策延迟阈值,则判定所述目标网络当前处于非阻塞状态;
23.若所述数值比较结果显示所述包速小于所述模型决策延迟阈值,则判定所述目标网络当前未处于所述非阻塞状态。
24.在本技术的一些实施例中,还包括:
25.在所述目标网络的拥塞控制模式切换至所述并存模式后,实时监测到所述包速是否在预设时间段内连续小于所述模型决策延迟阈值;
26.若是,则将所述目标网络的拥塞控制模式从所述并存模式切换至非阻塞模式,以使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
27.本技术的另一个方面提供了一种多路径拥塞控制装置,包括:
28.非阻塞状态监测模块,用于实时监测基于多路径传输控制协议mptcp的目标网络当前是否处于非阻塞状态;
29.drl拥塞控制模块,用于若所述目标网络当前处于非阻塞状态,则使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
30.本技术的另一个方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的多路径拥塞控制方法。
31.本技术的另一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的多路径拥塞控制方法。
32.本技术提供的多路径拥塞控制方法,实时监测基于多路径传输控制协议mptcp的目标网络当前是否处于非阻塞状态;若所述目标网络当前处于非阻塞状态,则使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制;通过单子流强化学习模型实现对基于多路径传输控制协议mptcp的目标网络
的拥塞控制,跳出在多路径中使用多子流强化学习的思维模型,在多路径拥塞控制问题中使用单子流模型并解决了公平性问题,在子流数量发生变化时也不需要重新训练模型,打破了强化学习模型drl在mptcp cc中的壁垒,实现强化学习模型针对多路径传输控制协议mptcp的拥塞控制,能够解决多子流模型不能适应子流数目变化的问题,并能够有效提高基于单子流强化学习模型进行多路径拥塞控制的及时性及可靠性;同时,通过添加了非阻塞模式状态监测,在检测到无阻塞发生时才采用单子流强化学习模型对应的决策模式,能够有效避免阻塞对目标网络中数据传输性能带来的影响,有效提高拥塞控制的智能化程度,进而能够有效保证基于多路径传输控制协议mptcp的目标网络的运行稳定性,更适用于高速网络。
33.本技术的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本技术的实践而获知。本技术的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。
34.本领域技术人员将会理解的是,能够用本技术实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本技术能够实现的上述和其他目的。
附图说明
35.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,并不构成对本技术的限定。附图中的部件不是成比例绘制的,而只是为了示出本技术的原理。为了便于示出和描述本技术的一些部分,附图中对应部分可能被放大,即,相对于依据本技术实际制造的示例性装置中的其它部件可能变得更大。在附图中:
36.图1为强化学习rl模型的举例示意图。
37.图2为本技术一实施例中的多路径拥塞控制方法的总流程示意图。
38.图3为本技术一实施例中的多路径拥塞控制方法的具体流程示意图。
39.图4为本技术另一实施例中的多路径拥塞控制装置的结构示意图。
40.图5为本技术应用实例提供的基于单子流强化学习模型的非阻塞多路径拥塞控制方法的流程示意图。
41.图6为本技术应用实例提供的模式转换策略示意图。
具体实施方式
42.为使本技术的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本技术做进一步详细说明。在此,本技术的示意性实施方式及其说明用于解释本技术,但并不作为对本技术的限定。
43.在此,还需要说明的是,为了避免因不必要的细节而模糊了本技术,在附图中仅仅示出了与根据本技术的方案密切相关的结构和/或处理步骤,而省略了与本技术关系不大的其他细节。
44.应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
45.在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连
接,也可以表示存在中间物的间接连接。
46.在下文中,将参考附图描述本技术的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
47.在本技术的一个或多个实施例中,多路径传输控制协议mptcp(多路径tcp,multipathtcp)是使用多条路径进行流量传输的协议,其目的是最大化信道资源的使用。随着物联网iot和5g的发展,大多数终端设备存在多个网络接口(例如wi-fi、lte及以太网等)。mptcp协议允许将一条tcp流切分为多条子流,针对每条子流均建立单独的连接。子流可以通过不同的网络接口进行传输,以提供更高的容错性。
48.在本技术的一个或多个实施例中,拥塞控制(congestion control,cc)一直是网络中的基石问题。由于需要管理多条路径的流量传输,mptcp的拥塞控制比单路径更为复杂。mptcp可以利用多条路径来获取更高的吞吐,但同时也要考虑路径的差异性带来的影响。除此之外,拥塞控制cc还需要考虑和单路径流的共存问题,将单路径算法直接用于多路径会侵犯单路径流量的权益。总之,mptcp的拥塞控制需要遵循以下原则:
49.1)提高吞吐:mptcp的吞吐量应该不低于在最好的子路径使用tcp所能获得的吞吐;2)效用性:mptcp应该将流量从拥塞的路径转移到不拥塞的路径;
50.3)公平性:mptcp应该和普通tcp一样从共享资源中获得相同资源。
51.因此多路径拥塞控制十分重要,如果不做好拥塞控制机制,效果甚至会比单路径tcp效果还差。
52.在本技术的一个或多个实施例中,强化学习rl(reinforcement learning)是机器学习ml(machine learning)中的一个领域。由于其无标签的特性,被广泛使用于拥塞控制cc算法中。强化学习rl使用一个代理机器agent与环境交互,获取奖励来学习策略。所以可以从环境中学习历史反馈到行为的映射。强化学习rl的目标是训练一个最优策略,最大化折扣奖励。参见图1,代理机器agent根据当前状态s
t
,给出动作a
t
,环境根据动作a
t
返回下一时刻的s
t+1
和奖励r
t+1
。基于强化学习rl的方式可以分为在线学习和离线学习。离线学习先使用独立数据进行训练。再将训练好的模型用于实际环境进行动作决策。
53.在本技术的一个或多个实施例中,深度强化学习drl(deep reinforcement learning)是强化学习rl的深度版本。在单路径tcp中,已经有许多算法将深度强化学习drl使用在拥塞控制中。由于多子流、公平性等问题,近两年才有研究将深度强化学习drl用在mptcp上。
54.拥塞控制cc一直是网络中基石问题。从多路径传输控制协议mptcp出现以来,就诞生了很多从多路径传输控制协议的拥塞控制mptcp cc算法。他们大多数是基于tcp cc协议扩展而来。最早的非耦合uncoupled tcp设计思想比较简单,将tcp中经典的拥塞避免算法reno直接应用在了tcp流切分的每条子流上面,有严重的不公平性。链接增加算法lia(linked-increases algorithm)将每条子流关联起来,根据总的拥塞窗口决定每一子流窗口的增长,在一定程度上解决了公平性问题。机会性链接增加算法olia(opportunistic linked-increases algorithm)进一步解决了lia负载均衡的问题,将流量导入状况好的路径。平衡连接适应算法balia(balanced linked adaptation)对网络进行建模,更好的平衡了公平性和反应性。wvegas算法是在tcp vegas的基础上实现的加权vegas,具有良好的低延迟效果。上述这些mptcp变体都或多或少继承了tcp cc协议的缺点。他们根据环境信号调
节拥塞窗口,错误的信号会造成严重的性能下降。
55.由于机器学习ml的快速发展,深度强化学习drl模型被广泛使用于网络拥塞控制cc中。在单路径的拥塞控制cc问题中,remy算法最先建立网络强化学习rl模型并使用q-learning算法将先验知识映射到拥塞窗口。aurora算法使用深度强化学习drl策略决策发送速率。indigo算法将模拟学习用于拥塞控制cc问题。pcc算法则使用在线学习的方式,根据效用函数调整发送速率。在多路径中,smartcc算法使用瓦片编码(tile coding)将网络连续环境离散化,并使用q-learning算法进行存储状态与动作的映射。但是多路径组合过于复杂,使用q-learning会有极大的不精确性。drlcc算法采用ddpg drl多路径模型,一个代理机器agent为所有子流输出动作。mpcc算法将pcc扩展到多路径,同样使用在线学习的方式。
56.然而,现有的多路径拥塞控制方式多存在下述问题:
57.(1)子流数目限制了基于深度强化学习cc算法的应用。深度强化学习drl需要训练出一个策略为当前状态提供决策。由于深度强化学习drl输入输出的限制,他们只能使用固定的动作空间。基于深度强化学习的拥塞控制drlcc和smartcc是将深度强化学习drl用于mptcp拥塞控制开创性工作。它们使用一个代理机器agent为所有的子流提供控制决策。所以当子流数目发生变化时,它们需要重新训练。然而在现实生活,每个mptcp的子流数目是不确定的。而且由于子流的断开或创建,数量会不断发生变化,这使得他们无法实际中得以应用。
58.(2)基于在线学习理论的强化学习算法收敛较慢。另一类基于学习的拥塞控制cc方案使用区别于drl离线训练的online optimization理论(也叫online learning)。他们将网络视为黑盒,基于现实经验性数据控制速率,避免了对网络的假设和训练。mpcc将利用这种理论的pcc扩展到多路径,每条子流使用在线学习框架决策发送速率。因此也存在pcc收敛慢的问题。
59.(3)drl决策会阻塞数据包。从部署的角度来看,与启发式cc算法相比,rl策略查找通常要花费高几个数量级的时间。当环境与强化学习rl范式同步时,模型决策会阻塞数据包发送。所以大多数基于学习的算法会基于间隔进行决策。这样缺失去了灵活性和精确性。阻塞时间越长,瓶颈链路带宽越大,对性能带来的负面影响越大。而更小决策时间间隔带来更大的灵活性。但是深度强化学习drl决策的间隔时间无法确定,不同的设备和操作系统决策时间将会不同。基于深度强化学习的拥塞控制drl-cc中采用每包决策的方式。其提到基于深度强化学习的拥塞控制drlcc的平均推理时间为0.5ms,也就是说当路径总带宽大于24mbps的时候,强化学习的决策会阻塞数据包的发包,这导致其无法应用于高速网络。而smartcc中查找时间也会成为瓶颈。
60.基于此,本技术实施例提供一种多路径拥塞控制方法,具体为一种基于单子流强化学习模型的非阻塞多路径拥塞控制方法,参见图2,所述多路径拥塞控制方法具体包含有如下内容:
61.步骤100:实时监测基于多路径传输控制协议mptcp的目标网络当前是否处于非阻塞状态。
62.其中,上述步骤100可以由一虚拟的拥塞管理器(blocking manager)执行,每条流查询的时候,会经过该虚拟的拥塞管理器。当拥塞管理器检测到drl决策会阻塞数据包发送
时,可以立即切换算法,既保留了强化学习的准确性又增加了灵活性。
63.可以理解的是,步骤100这种情况下,数据包之间的间隔较大包速较慢,也代表拥塞发生的可能性更大。所以应该使用drl这种更灵活的调节方式预防拥塞的发生。此时流的每次查询都使用drl进行决策。
64.步骤200:若所述目标网络当前处于非阻塞状态,则使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
65.在步骤200中,虑到多子流模型不能适应子流数目变化的问题,本技术将单子流cc模型用于多路径cc中。考虑将各个子流分开来看,它们和单路径tcp流没有什么区别。他们各自建连,各自选择路径,异步查询并且有各自的窗口。每一个子流的需求和单路径流量相同。当我们解决了公平性问题后,单子流模型完全可以满足mptcp cc的需求。
66.从上述描述可知,本技术实施例提供的多路径拥塞控制方法,通过单子流强化学习模型实现对基于多路径传输控制协议mptcp的目标网络的拥塞控制,跳出在多路径中使用多子流强化学习的思维模型,在多路径拥塞控制问题中使用单子流模型并解决了公平性问题,在子流数量发生变化时也不需要重新训练模型,打破了强化学习模型drl在mptcp cc中的壁垒,实现强化学习模型针对多路径传输控制协议mptcp的拥塞控制,能够解决多子流模型不能适应子流数目变化的问题,并能够有效提高基于单子流强化学习模型进行多路径拥塞控制的及时性及可靠性;同时,通过添加了非阻塞模式状态监测,在检测到无阻塞发生时才采用单子流强化学习模型对应的决策模式,能够有效避免阻塞对目标网络中数据传输性能带来的影响,有效提高拥塞控制的智能化程度,进而能够有效保证基于多路径传输控制协议mptcp的目标网络的运行稳定性,更适用于高速网络。
67.为了进一步避免阻塞对目标网络中数据传输性能带来的影响,在本技术实施例提供的一种多路径拥塞控制方法中,参见图3,所述多路径拥塞控制方法中的步骤100之后还可以具体包含有如下内容:
68.步骤300:若所述目标网络当前未处于非阻塞状态,则将所述目标网络的拥塞控制模式切换至并存模式,以基于该并存模式对所述目标网络的数据传输进行拥塞控制;
69.其中,所述并存模式包括:作为主模式的启发式mptcp决策方式和作为辅助模式的drl决策方式,该drl决策方式包括:使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
70.可以理解的是,在步骤300在这种情况下,包到达间隔小,drl会阻塞数据包的发送。但是此时包速很快,也说明了拥塞出现的可能性较小,不需要过度调节。此时drl变为辅助模式。
71.从上述描述可知,本技术实施例提供的多路径拥塞控制方法,通过在目标网络当前未处于非阻塞状态时,将所述目标网络的拥塞控制模式切换至并存模式,能够进一步避免阻塞对目标网络中数据传输性能带来的影响,有效提高拥塞控制的智能化程度。
72.为了实现符合公平性原则的拥塞控制,在本技术实施例提供的一种多路径拥塞控制方法中,所述多路径拥塞控制方法中的步骤200和步骤300中的所述基于所述mptcp的各个子流各自对应的单子流强化学习模型对所述目标网络的数据传输进行拥塞控制,具体包含有如下内容:
73.步骤011:各个子流分别异步查询自身的动作,并收集除自身外的其他子流的信
息;
74.步骤012:各个子流分别根据除自身外的其他子流的信息及预设的权重数据生成当前的多子流奖励,以使各个所述子流分别基于各自获取的多子流奖励和所述单子流强化学习模型对所述目标网络的数据传输进行符合公平性原则的拥塞控制。
75.具体来说,使用单子流模型的一大挑战就是公平性问题。单路径cc算法直接引入到多路径传输中会导致过度攻击,直接使用单子流模型也会存在这个问题。为了解决公平性问题,本技术使用多子流reward,每次子流查询时,收集所有子流的信息,根据权重获取reward。这样每个子流虽然单独做决策,却和其他子流相互关联,在公平的前提下实现全局效用最大化。
76.从上述描述可知,本技术实施例提供的多路径拥塞控制方法,通过设置多子流奖励reward,每次子流查询时,收集所有子流的信息,根据权重获取reward。这样每个子流虽然单独做决策,却和其他子流相互关联,在公平的前提下实现全局效用最大化,进而能够有效解决公平性问题,实现符合公平性原则的拥塞控制。
77.为了将单子流强化学习模型有效用于多路径拥塞控制中,在本技术实施例提供的一种多路径拥塞控制方法中,所述多路径拥塞控制方法中的所述单子流强化学习模型的输入包括当前的环境信息,所述单子流强化学习模型的输出包括子流对窗口的独立调整参数;
78.所述环境信息包括:根据各个所述子流的状态加权平均数据获取的带宽、滑动窗口、往返时间rtt和该往返时间rtt的平均偏差。
79.具体来说,在我们方案中,每个子流查询同一个agent获取自己的动作(action)。他们虽然独立的调整窗口,但他们互相关联,松散耦合,以达到理想的全局优化结果。模型的输入是当前的环境信息s
t
=[b
t
,c
t
,r
t
,d
t
],分别代表了带宽、滑动窗口cwnd、往返时间rtt(round-trip time)及往返时间rtt的平均偏差。其中每个参数都是各个子流状态的加权平均。每个子流的状态是过去十个包状态的加权平均。输出是对窗口的调整参数。奖励函数(reward)按照下述公平性问题的解决办法。使用近端策略优化ppo(proximal policy optimization)算法进行训练。
[0080]
从上述描述可知,本技术实施例提供的多路径拥塞控制方法,单子流强化学习模型的输入包括当前的环境信息,输出包括子流对窗口的独立调整参数,能够将单子流强化学习模型有效用于多路径拥塞控制中,能够有效满足mptcp cc的需求。
[0081]
为了进一步提高训练单子流强化学习模型的效率及单子流强化学习模型的应用可靠性及准确性,在本技术实施例提供的一种多路径拥塞控制方法中,所述多路径拥塞控制方法中还具体包含有如下内容:
[0082]
步骤013:在所述mptcp的各个子流中择一作为目标子流。
[0083]
步骤014:应用除所述目标子流之前的其他子流的信息及预设的权重数据生成当前的多子流奖励,以使所述目标子流基于所述多子流奖励训练深度强化学习模型;
[0084]
步骤015:将所述单子流强化学习模型复制至其他子流以进行迭代训练,直至所述强化学习模型收敛,得到用于在多路径中进行单子流的公平性拥塞控制的单子流强化学习模型。
[0085]
具体来说,本技术使用模型复制,迭代训练的方式。为了解决训练问题,本技术只
选取一条子流进行训练,其他的子流复制模型迭代训练。训练时我们选取一条子流(id=0的流)使用为drl提供训练数据。这条子流会一直存在。每训练固定数量r个回合后,将保存的模型复制给其他子流使用。重复这个过程迭代训练。模型不断被更新,直至收敛。最后会得到我们想要的单子流模型。在还没有模型的初期非训练子流使用传统算法。
[0086]
从上述描述可知,本技术实施例提供的多路径拥塞控制方法,通过使用模型复制,每训练固定数量个回合后,将保存的模型复制给其他子流使用。重复这个过程迭代训练。模型不断被更新,直至收敛;能够有效提高训练单子流强化学习模型的效率及单子流强化学习模型的应用可靠性及准确性。
[0087]
为了避免了在大带宽下drl决策时间阻塞数据包发送带来的性能影响,在本技术实施例提供的一种多路径拥塞控制方法中,参见图3,所述多路径拥塞控制方法中的步骤110还具体包含有如下内容:
[0088]
步骤110:实时监测当前的包速与模型决策延迟阈值之间的数值比较结果,其中,所述包速包括:数据包的到达拥塞管理器的时间间隔;
[0089]
步骤120:若所述数值比较结果显示所述包速等于或大于所述模型决策延迟阈值,则判定所述目标网络当前处于非阻塞状态;
[0090]
步骤130:若所述数值比较结果显示所述包速小于所述模型决策延迟阈值,则判定所述目标网络当前未处于所述非阻塞状态。
[0091]
具体来说,数据传输被阻塞的主要原因是因为包到达的速度过快。收到新的ack却没有收到新的动作会阻塞内核的下一步行动。所以本技术使用包速来判断网络是否会发生阻塞。我们实时监测包到达间隔ν来代表包速,并设定一个阈值γ(代表模型决策延迟)。
[0092]
从上述描述可知,本技术实施例提供的多路径拥塞控制方法,通过按照drl是否会阻塞发包将网络状态分为两种模式并使用不同的策略,避免了在大带宽下drl决策时间阻塞数据包发送带来的性能影响,进而进一步提高基于多路径传输控制协议mptcp的目标网络的运行稳定性。
[0093]
为了避免过度调节,在本技术实施例提供的一种多路径拥塞控制方法中,参见图3,所述多路径拥塞控制方法中的步骤300还具体包含有如下内容:
[0094]
步骤400:在所述目标网络的拥塞控制模式切换至所述并存模式后,实时监测到所述包速是否在预设时间段内连续小于所述模型决策延迟阈值。
[0095]
步骤500:若所述包速在预设时间段内连续小于所述模型决策延迟阈值,则将所述目标网络的拥塞控制模式从所述并存模式切换至非阻塞模式,以使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
[0096]
具体来说,在并存模式下,包到达间隔小,drl会阻塞数据包的发送。但是此时包速很快,也说明了拥塞出现的可能性较小,不需要过度调节。此时drl变为辅助模式。在并存模式下,每n个包间隔决策一次。其他时刻使用启发式mptcp决策方式(如lia等)。并在过程中持续检测包到达的速度。如果连续δ(例如预设时间段的一种举例:5s)内,包速均小于阈值,就切换回非阻塞模式。
[0097]
从上述描述可知,本技术实施例提供的多路径拥塞控制方法,通过在过程中持续检测包到达的速度,如果连续一段时间内的包速都小于阈值,就切换回非阻塞模式,有效考虑了拥塞出现的可能性较小的情形,避免过度调节,进一步提高多路径拥塞控制过程的智
能化程度。
[0098]
从软件层面来说,本技术还提供一种用于执行所述多路径拥塞控制方法中全部或部分内的多路径拥塞控制装置,参见图4,所述多路径拥塞控制装置具体包含有如下内容:
[0099]
非阻塞状态监测模块10,用于实时监测基于多路径传输控制协议mptcp的目标网络当前是否处于非阻塞状态。
[0100]
drl拥塞控制模块20,用于若所述目标网络当前处于非阻塞状态,则使用一个单子流强化学习模型应用于mptcp的各个子流,对目标网络的数据传输进行符合公平性原则的拥塞控制。
[0101]
本技术提供的多路径拥塞控制装置的实施例具体可以用于执行上述实施例中的多路径拥塞控制方法的实施例的处理流程,其功能在此不再赘述,可以参照上述多路径拥塞控制方法实施例的详细描述。
[0102]
所述多路径拥塞控制装置进行多路径拥塞控制的部分可以在服务器中执行,而在另一种实际应用情形中,也可以所有的操作都在客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本技术对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器,用于多路径拥塞控制的具体处理。
[0103]
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
[0104]
上述服务器与所述客户端设备端之间可以使用任何合适的网络协议进行通信,包括在本技术提交日尚未开发出的网络协议。所述网络协议例如可以包括tcp/ip协议、udp/ip协议、http协议、https协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的rpc协议(remote procedure call protocol,远程过程调用协议)、rest协议(representational state transfer,表述性状态转移协议)等。
[0105]
从上述描述可知,本技术实施例提供的多路径拥塞控制装置,通过基于射线追踪方式对通导融合系统对应的室内场景的室内信号传播路径进行预测,以得到多路径信息,能够对室内信号传播路径进行精确预测,得到详细的多路径信息及参数,充分考虑了室内多径和非视距传播,能够从节点布局角度降低多径和非视距传播对定位误差的影响,进而能够有效提高针对室内信号传播路径的测距结果的真实性;通过根据所述通导融合系统的通信网络和定位网络各自对应的评价指标,生成对应的通导融合网络评价指标,能够专门适用于通导融合系统的网络规划,能够有效保证通信性能;通过将所述通导融合网络评价指标作为多优化算法的目标函数,实现了针对通信业务和定位性能的联合考虑,进而能够提高多路径拥塞控制的可靠性及有效性。
[0106]
为了进一步说明本方案,本技术还提供一种基于单子流强化学习模型的非阻塞多路径拥塞控制方法的具体应用实例。跳出在多路径中使用多子流强化学习的思维模型,在多路径拥塞控制问题中使用单子流模型并解决了公平性问题,在子流数量发生变化时也不需要重新训练模型,打破了drl在mptcp cc中的壁垒。除此之外,本技术添加了非阻塞模式
状态转换,在检测到阻塞发生时及时切换到另一种决策模式,避免阻塞对性能带来的影响。以上设计都增加了本技术的实用性,具有良好的创新性和研究意义。
[0107]
本技术致力于实现一个适用于动态子流和非阻塞的drl框架,解决基于学习的mptcp cc算法在实际中应用的问题。如图5所示,本技术将单子流drl模型用于多路径拥塞控制中。具体来说,每条子流异步查询自身的动作。训练子流会查询训练深度强化学习模型的代理机器drl-agent,并收集其他子流的状态保证公平性。训练drl-agent根据信息更新模型,并每隔一段时间复制给使用drl-agent,迭代训练。为了解决数据包阻塞问题,本技术将发送时的状态分为两类—阻塞和非阻塞模式。每条流查询的时候,会经过一个虚拟的拥塞管理器(blocking manager)。当检测到drl决策会阻塞数据包发送时,立即切换算法,既保留了强化学习的准确性又增加了灵活性。
[0108]
所述基于单子流强化学习模型的非阻塞多路径拥塞控制方法具体包含有如下内容:
[0109]
(1)单子流多路径拥塞控制模型
[0110]
单子流模型:考虑到多子流模型不能适应子流数目变化的问题,本技术将单子流cc模型用于多路径cc中。考虑将各个子流分开来看,它们和单路径tcp流没有什么区别。他们各自建连,各自选择路径,异步查询并且有各自的窗口。每一个子流的需求和单路径流量相同。当我们解决了公平性问题后,单子流模型完全可以满足mptcp cc的需求。在我们方案中,每个子流查询同一个agent获取自己的动作(action)。他们虽然独立的调整窗口,但他们互相关联,松散耦合,以达到理想的全局优化结果。模型的输入是当前的环境信息s
t
=[b
t
,c
t
,r
t
,d
t
],分别代表了带宽、滑动窗口cwnd、往返时间rtt(round-trip time)及往返时间rtt的平均偏差。其中每个参数都是各个子流状态的加权平均。每个子流的状态是过去十个包状态的加权平均。输出是对窗口的调整参数。奖励函数(reward)按照下述公平性问题的解决办法。使用近端策略优化ppo(proximalpolicy optimization)算法进行训练。
[0111]
公平性问题:使用单子流模型的一大挑战就是公平性问题。单路径cc算法直接引入到多路径传输中会导致过度攻击,直接使用单子流模型也会存在这个问题。为了解决公平性问题,本技术使用多子流reward,每次子流查询时,收集所有子流的信息,根据权重获取reward。这样每个子流虽然单独做决策,却和其他子流相互关联,在公平的前提下实现全局效用最大化。
[0112]
训练方式:本技术使用模型复制,迭代训练的方式。为了解决训练问题,本技术只选取一条子流进行训练,其他的子流复制模型迭代训练。训练时我们选取一条子流(id=0的流)使用为drl提供训练数据。这条子流会一直存在。每训练固定数量r个回合后,将保存的模型复制给其他子流使用。重复这个过程迭代训练。模型不断被更新,直至收敛。最后会得到我们想要的单子流模型。在还没有模型的初期非训练子流使用传统算法。
[0113]
(2)非阻塞策略
[0114]
本技术按照drl是否会阻塞发包将网络状态分为两种模式并使用不同的策略。数据传输被阻塞的主要原因是因为包到达的速度过快。收到新的ack却没有收到新的动作会阻塞内核的下一步行动。所以本技术使用包速来判断网络是否会发生阻塞。我们实时监测包到达间隔ν来代表包速,并设定一个阈值γ(代表模型决策延迟):
[0115]
state 1:当ν≥γ,进入非阻塞模式,使用drl决策。这种情况下包间隔较大包速较
慢,也代表拥塞发生的可能性更大。所以应该使用drl这种更灵活的调节方式预防拥塞的发生。此时流的每次查询都使用drl进行决策。
[0116]
state 2:当ν《γ,进入并存模式。在这种情况下,包到达间隔小,drl会阻塞数据包的发送。但是此时包速很快,也说明了拥塞出现的可能性较小,不需要过度调节。此时drl变为辅助模式。一旦检测到ν《γ,拥塞控制器就会切换到并存模式。如图6所示,在并存模式下,每n个包间隔决策一次。其他时刻使用启发式mptcp决策方式(lia)。并在过程中持续检测包到达的速度。如果连续δ(5s)包速小于阈值,就切换回state1。
[0117]
综上,本技术应用实例提供的基于单子流强化学习模型多路径拥塞控制算法及非阻塞模式转换框架等。上述应用实例具备如下有益效果:
[0118]
(1)本技术应用实例设计了一种基于单子流强化学习模型的非阻塞多路径拥塞控制算法。仿真和真实环境实验表明,本技术可以适应子流数目的变化,并且在不同的网络条件下表现出一致的高性能,具有更强的实用性。
[0119]
(2)本技术应用实例将单子流drl模型使用于多路径拥塞控制,并解决了公平性问题。打破子流数目固定的局限性,并创新性的使用迭代训练的方式。
[0120]
(3)本技术应用实例提出了一个非阻塞状态转换框架,避免了在大带宽下drl决策时间阻塞数据包发送带来的性能影响。
[0121]
本技术实施例还提供了一种计算机设备(也即电子设备),该计算机设备可以包括处理器、存储器、接收器及发送器,处理器用于执行上述实施例提及的多路径拥塞控制方法,其中处理器和存储器可以通过总线或者其他方式连接,以通过总线连接为例。该接收器可通过有线或无线方式与处理器、存储器连接。所述计算机设备与多路径拥塞控制装置之间通信连接,以自所述无线多媒体传感器网络中的传感器接收实时运动数据,并自所述视频采集装置接收原始视频序列。
[0122]
处理器可以为中央处理器(central processing unit,cpu)。处理器还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
[0123]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本技术实施例中的多路径拥塞控制方法对应的程序指令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的多路径拥塞控制方法。
[0124]
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0125]
所述一个或者多个模块存储在所述存储器中,当被所述处理器执行时,执行实施例中的多路径拥塞控制方法。
[0126]
在本技术的一些实施例中,用户设备可以包括处理器、存储器和收发单元,该收发单元可包括接收器和发送器,处理器、存储器、接收器和发送器可通过总线系统连接,存储器用于存储计算机指令,处理器用于执行存储器中存储的计算机指令,以控制收发单元收发信号。
[0127]
作为一种实现方式,本技术中接收器和发送器的功能可以考虑通过收发电路或者收发的专用芯片来实现,处理器可以考虑通过专用处理芯片、处理电路或通用芯片实现。
[0128]
作为另一种实现方式,可以考虑使用通用计算机的方式来实现本技术实施例提供的服务器。即将实现处理器,接收器和发送器功能的程序代码存储在存储器中,通用处理器通过执行存储器中的代码来实现处理器,接收器和发送器的功能。
[0129]
本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述多路径拥塞控制方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、软盘、硬盘、可移动存储盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质。
[0130]
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本技术的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
[0131]
需要明确的是,本技术并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本技术的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本技术的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
[0132]
本技术中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
[0133]
以上所述仅为本技术的优选实施例,并不用于限制本技术,对于本领域的技术人员来说,本技术实施例可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1