当前位置: 首页 > 专利查询>辉达公司专利>正文

利用强化学习执行网络拥塞控制制造技术

技术编号:34365754 阅读:52 留言:0更新日期:2022-07-31 08:44
本发明专利技术公开了利用强化学习执行网络拥塞控制。强化学习代理使用深度神经网络和分布式训练组件学习拥塞控制策略。训练组件使代理能够与大量环境集并行交互。这些环境模拟真实世界的基准和真实硬件。在学习过程中,代理学习如何最大化目标函数。模拟器可以实现与各种场景的并行交互。当经过训练的代理遇到各种各样的问题时,它更有可能很好地推广到新的和还未见的环境中。此外,可以在训练期间选择操作点,该操作点可以配置代理所需的行为。该操作点可以配置代理所需的行为。该操作点可以配置代理所需的行为。

Using reinforcement learning to implement network congestion control

【技术实现步骤摘要】
利用强化学习执行网络拥塞控制
[0001]声明优先权
[0002]本申请要求获得于2021年1月20日提交的美国临时申请第63/139,708号的权益,该申请在此以引用的方式全部并入本文。


[0003]本公开涉及执行网络拥塞控制。

技术介绍

[0004]在计算机网络中,当网络中的节点(网络接口卡(NIC)或路由器/交换机)接收流量的速度超过其能够处理或传输的速度时,就会发生网络拥塞。拥塞导致延迟(信息从源头到目的地的时间)增加,在极端情况下还可能导致分组丢弃/遗失或线头阻塞。
[0005]目前的拥塞控制方法依赖于手工起草的算法。这些手工制作的算法很难调整,而且很难实现一个单一的配置,以适用于不同的问题集。目前的方法也没有解决复杂的多主机场景,其中不同的NIC的传输速率可能对观察到的拥塞有巨大的影响。
附图说明
[0006]图1说明了根据一个实施例的利用强化学习进行拥塞控制的方法的流程图。
[0007]图2说明了根据一个实施例的训练和部署强化学习代理的方法的流程图。
[0008]图3说明了根据一个实施例的示例性强化学习系统。
[0009]图4示出了根据一个实施例的网络架构。
[0010]图5说明了根据一个实施例的示例性系统。
[0011]图6说明了根据一个实施例的游戏流媒体系统的示例性系统图。
[0012]图7说明了根据一个实施例的网络中的示例性拥塞点。
具体实施方式
[0013]示例性系统包括算法学习代理,该算法学习代理使用深度神经网络和分布式训练组件学习拥塞控制策略。训练组件使代理能够与大量并行环境交互。这些环境模拟真实世界的基准测试和真实硬件。
[0014]该过程分为两部分

学习和部署。在学习过程中,代理与模拟器交互,并根据目标函数的最大化来学习如何行动。模拟器支持与各种场景(多对一、长对短、全对全等)的并行交互。当代理遇到各种各样的问题时,它更有可能很好地推广到新的和还未见的环境中。此外,可在训练期间选择操作点(目标),以实现每个客户对所需行为的配置。
[0015]训练完成后,该训练神经网络用于控制通过每个网络接口卡传输的各种应用程序的传输速率。
[0016]图1示出了根据一个实施例的利用强化学习执行拥塞控制的方法100的流程图。方法100可以在处理单元的上下文中和/或通过程序、自定义电路或自定义电路和程序的组合
来执行。例如,方法100可以由GPU(图形处理单元)、CPU(中央处理单元)或下面描述的任何处理器执行。此外,本领域的普通技术人员将理解,执行方法100的任何系统都在本公开的实施例的范围和精神内。
[0017]如操作102所示,强化学习代理从数据传输网络接收环境反馈,环境反馈指示当前通过数据传输网络传输数据的速度。在一个实施例中,可响应于由强化学习代理建立数据传输网络内的多个数据流中的每一个的初始传输速率来检索环境反馈。在另一实施例中,环境反馈可包括来自环境的信号、或其估计、或环境的预测。
[0018]此外,在一个实施例中,数据传输网络可包括一个或更多个传输数据源(例如,数据分组等)。例如,数据传输网络可以包括分布式计算环境。在另一个示例中,可以远程执行光线跟踪计算(例如,在一个或更多个服务器等处),并且光线跟踪的结果可以经由数据传输网络发送到一个或更多个客户端。
[0019]此外,在一个实施例中,一个或更多个传输数据源可包括位于一个或更多个计算设备上的一个或更多个网络接口卡(NIC)。例如,位于一个或更多个计算设备上的一个或更多个应用可各自利用多个NIC中的一个或更多个经由数据传输网络向附加计算设备传送信息(例如,数据分组等)。
[0020]此外,在一个实施例中,一个或更多个NIC中的每一个都可以在数据传输网络内实现多个数据流中的一个或更多个。在另一实施例中,多个数据流中的每一个可以包括从源(例如,源NIC)到目的地(例如,交换机、目的NIC等)的数据传输。例如,可以将多个数据流中的一个或更多个发送到传输网络内的相同目的地。在另一示例中,可以在数据传输网络内实现一个或更多个交换机。
[0021]此外,在一个实施例中,多个数据流中的每个数据流的传输速率可由位于一个或更多个通信数据源(例如,一个或更多个NIC中的每个NIC等)上的强化学习代理建立。例如,强化学习代理可以包括经过训练的神经网络。
[0022]此外,在一个实施例中,单个强化学习代理的实例可以位于每个源上,并且可以调整多个数据流中每个数据流的传输速率。例如,多个数据流中的每一个可以链接到单个强化学习代理的关联实例。在另一示例中,强化学习代理的每个实例可以指示其相关联的数据流的传输速率(例如,根据预定尺度等),以便执行流控制(例如,通过在相关联的数据流上实现速率阈值等)。
[0023]此外,在一个示例中,通过控制多个数据流中每个数据流的传输速率,强化学习代理可以控制一个或更多个应用程序传输数据的速率。在另一示例中,强化学习代理可包括机器学习环境(例如,神经网络等)。
[0024]此外,在一个实施例中,环境反馈可包括由强化学习代理从数据传输网络内发送的数据分组(例如,RTT分组等)提取的测量。例如,从中提取测量的数据分组可以包括在多个数据流中。
[0025]此外,在一个实施例中,测量值可包括指示数据当前在传输网络内传输的速度的状态值。例如,状态值可以包括RTT膨胀值,该RTT膨胀值包括数据当前传输网络分组的当前分组速率与空数据传输网络的分组速率的比率。在另一实施例中,测量还可以包括从数据传输网络内实现的信号导出的统计数据。例如,统计数据可以包括延迟测量、拥塞通知分组、传输速率等中的一个或更多个。
[0026]此外,如操作104所示,数据传输网络内的多个数据流中的一个或更多个的传输速率由强化学习代理基于环境反馈进行调整。在一个实施例中,强化学习代理可以包括训练过的神经网络,该神经网络基于环境反馈将环境反馈作为要对多个数据流中的一个或更多个进行的输入和输出调整。
[0027]例如,可以使用特定于数据传输网络的训练数据来训练神经网络。在另一示例中,训练数据可以考虑数据传输网络的特定配置(例如,一个或更多个交换机的数量和位置,发送和接收网卡的数量,等等)。
[0028]此外,在一个实施例中,经过训练的神经网络可以具有相关联的目标。例如,相关联的目标可以是调整一个或更多个数据流,使得数据传输网络内的所有数据流以相同速率传输,同时最大化数据传输网络的利用率并避免数据传输网络内的拥塞。在另一示例中,可以通过最小化多个数据流中丢弃的数据分组的数量来避免拥塞。
[0029]此外,在一个实施例中,经过训练的神经网络可以输出对多个数据流中的一个或更多个进行的调整,以最大化相关联的目标。例如,强化学习代理可以建立预定阈值带宽。在另一示例中,强化学习代理可以减少以高于预定阈值带宽的速率发送的数据流。在又一示例中,强化学习代理可以增加以低于预定阈本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,包括在装置处:在强化学习代理处接收来自数据传输网络的环境反馈,所述环境反馈指示当前通过所述数据传输网络传输数据的速度;和由所述强化学习代理,基于所述环境反馈调整数据传输网络内的多个数据流中的一个或更多个数据流的传输速率。2.根据权利要求1所述的方法,其中所述强化学习代理包括经过训练的神经网络,所述经过训练的神经网络将所述环境反馈作为基于所述环境反馈将做出的对所述多个数据流中的一个或更多个数据流进行的输入和输出调整。3.根据权利要求1所述的方法,其中响应于由所述强化学习代理在所述数据传输网络内建立所述多个数据流中的每一个数据流的初始传输速率,检索所述环境反馈。4.根据权利要求1所述的方法,其中:所述数据传输网络包括一个或更多个传输数据源,所述一个或更多个传输数据源包括位于一个或更多个计算设备上的一个或更多个网络接口卡NIC,以及所述一个或更多个NIC中的每一个NIC实现所述数据传输网络内的所述多个数据流中的一个或更多个数据流。5.根据权利要求1所述的方法,其中所述多个数据流中的每一个数据流都包括从源到目的地的数据传输。6.根据权利要求1所述的方法,其中所述多个数据流中的每一个数据流的传输速率由位于一个或更多个通信数据源中的每一个通信数据源上的强化学习代理建立。7.根据权利要求1所述的方法,其中所述环境反馈包括由所述强化学习代理从所述数据传输网络内发送的数据分组中提取的测量。8.根据权利要求7所述的方法,其中所述测量包括状态值,所述状态值指示数据当前在所述传输网络内传输的速度。9.根据权利要求7所述的方法,其中所述测量包括从所述数据传输网络内实现的信号导出的统计数据,所述统计数据包括延迟测量、拥塞通知分组和传输速率中的一个或更多个。10.根据权利要求1所述的方法,其中所述数据传输网络包括用于执行光线跟踪计算的分布式计算环境。11.根据权利要求1所述的方法,其中,在训练包括在所述强化学习代理中的神经网络期间,调整由所述强化学习代理进行的调整的粒度。12.根据权利要求1所述的方法,还包括由所述强化学习代理接收附加环境反馈,并且基于...

【专利技术属性】
技术研发人员:S
申请(专利权)人:辉达公司
类型:发明
国别省市:

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

1