网络中流量动态调整方法、系统、电子设备及存储介质转让专利
申请号 : CN201911204067.6
文献号 : CN111211987B
文献日 : 2021-07-27
发明人 : 李丹 , 程阳 , 吴建平
申请人 : 清华大学
摘要 :
权利要求 :
1.一种网络中流量动态调整方法,其特征在于,包括:获取网络中任一边界路由器节点收集的局部网络状态信息;
将所述任一边界路由器节点收集的局部网络状态信息输入对应训练后的第一预设子模型,得到输出的从源边界路由器节点到目的边界路由器节点的每一条备选路径上的流量分割比例,其中,所述源边界路由器节点为所述任一边界路由器节点,所述目的边界路由器节点为网络中的出口边界路由器节点;
每一个源边界路由器节点对应一个第一预设子模型,还包括第二预设子模型,多个所述第一预设子模型和所述第二预设子模型组成预设模型;
通过如下方式对每一个第一预设子模型进行训练:在当前时刻,将网络中每一个源边界路由器节点收集的局部网络状态信息输入每一个源边界路由器节点对应的第一预设子模型,输出从每一个源边界路由器节点到目的边界路由器节点的每一条备选路径上的流量分割比例;
将网络中每一个源边界路由器节点对应的流量分割比例进行组合,得到组合后的流量分割比例集合;以及将每一个源边界路由器节点收集的局部网络状态信息进行组合,得到组合后的全局网络状态信息;
将流量分割比例集合和全局网络状态信息输入第二预设子模型中,输出对应的当前状态‑动作价值Q;
对于任一个源边界路由器节点,将其对应的流量分割比例替换为均等分割比例,除所述任一个源边界路由器节点之外的源边界路由器节点对应的流量分割比例不变,形成更新的流量分割比例集合;
将更新后的流量分割比例集合和所述全局网络状态信息再次输入第二预设子模型中,输出与所述任一个源边界路由器节点对应的基准动作‑状态价值b;
根据所述当前状态‑动作价值Q和所述基准动作‑状态价值b,得到与所述任一个源边界路由器节点的当前动作对应的贡献值A;
根据所述贡献值A对所述任一个源边界路由器节点对应的第一预设子模型的模型参数进行调整,得到训练后的所述任一个源边界路由器节点对应的第一预设子模型。
2.根据权利要求1所述的网络中流量动态调整方法,其特征在于,所述任一边界路由器节点收集的局部网络状态信息包括从源边界路由器节点到目的边界路由器节点的每一条备选路径上的最大链路利用率和每一条备选路径上所有网络设备的最大排队长度信息。
3.根据权利要求1或2所述的网络中流量动态调整方法,其特征在于,还包括:采用预设方法从源边界路由器节点到目的边界路由器节点的所有网络路径中确定出多条备选路径。
4.根据权利要求3所述的网络中流量动态调整方法,其特征在于,所述采用预设方法从源边界路由器节点到目的边界路由器节点的所有网络路径中确定出多条备选路径包括:采用无关路由算法从源边界路由器节点到目的边界路由器节点的所有网络路径中计算出具有多样性的多条备选路径;或者,采用K‑SPF算法从源边界路由器节点到目的边界路由器节点的所有网络路径中计算出多条备选路径。
5.根据权利要求1所述的网络中流量动态调整方法,其特征在于,通过如下方式对所述第二预设子模型进行训练:
在所述当前时刻的下一时刻,将网络中每一个源边界路由器节点收集的局部网络状态信息输入每一个源边界路由器节点对应的第一预设子模型,输出从每一个源边界路由器节点到目的边界路由器节点的每一条备选路径上的流量分割比例;
将网络中每一个源边界路由器节点对应的流量分割比例进行组合,得到组合后的流量分割比例集合;以及将每一个源边界路由器节点收集的局部网络状态信息进行组合,得到组合后的全局网络状态信息;
将流量分割比例集合和全局网络状态信息输入第二预设子模型中,输出对应的Q′值,其中,Q′值为下一时刻对应的状态‑动作价值;
根据所述Q′值与Q值计算当前状态动作的均方贝尔曼误差,根据所述均方贝尔曼误差对所述第二预设子模型的模型参数进行调整,得到训练后的第二预设子模型。
6.根据权利要求1所述的网络中流量动态调整方法,其特征在于,所述得到输出的从源边界路由器节点到目的边界路由器节点的每一条备选路径上的流量分割比例之后还包括:根据所述第一预设子模型输出的从源边界路由器节点到目的边界路由器节点的每一条备选路径上的流量分割比例,为每一条新到达的流上的数据包选择一条备选路径,作为每一条流上的数据包经过网络的转发路径;
利用源路由技术将每一条流上的数据包按照选择的备选路径在网络域内转发到目的边界路由器节点。
7.一种网络中流量动态调整系统,其特征在于,包括:获取模块,用于获取网络中任一边界路由器节点收集的局部网络状态信息;
输出模块,用于将所述任一边界路由器节点收集的局部网络状态信息输入对应训练后的第一预设子模型,得到输出的从源边界路由器节点到目的边界路由器节点的每一条备选路径上的流量分割比例,其中,所述源边界路由器节点为所述任一边界路由器节点,所述目的边界路由器节点为网络中的出口边界路由器节点;
每一个源边界路由器节点对应一个第一预设子模型,还包括第二预设子模型,多个所述第一预设子模型和所述第二预设子模型组成预设模型;
通过如下方式对每一个第一预设子模型进行训练:在当前时刻,将网络中每一个源边界路由器节点收集的局部网络状态信息输入每一个源边界路由器节点对应的第一预设子模型,输出从每一个源边界路由器节点到目的边界路由器节点的每一条备选路径上的流量分割比例;
将网络中每一个源边界路由器节点对应的流量分割比例进行组合,得到组合后的流量分割比例集合;以及将每一个源边界路由器节点收集的局部网络状态信息进行组合,得到组合后的全局网络状态信息;
将流量分割比例集合和全局网络状态信息输入第二预设子模型中,输出对应的当前状态‑动作价值Q;
对于任一个源边界路由器节点,将其对应的流量分割比例替换为均等分割比例,除所述任一个源边界路由器节点之外的源边界路由器节点对应的流量分割比例不变,形成更新的流量分割比例集合;
将更新后的流量分割比例集合和所述全局网络状态信息再次输入第二预设子模型中,输出与所述任一个源边界路由器节点对应的基准动作‑状态价值b;
根据所述当前状态‑动作价值Q和所述基准动作‑状态价值b,得到与所述任一个源边界路由器节点的当前动作对应的贡献值A;
根据所述贡献值A对所述任一个源边界路由器节点对应的第一预设子模型的模型参数进行调整,得到训练后的所述任一个源边界路由器节点对应的第一预设子模型。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述网络中流量动态调整方法的步骤。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至6任一项所述网络中流量动态调整方法的步骤。
说明书 :
网络中流量动态调整方法、系统、电子设备及存储介质
技术领域
背景技术
变化的特征,并不能很好地提升网络的运行效率,网络路由成为制约大规模网络高效运行
的主要瓶颈。
性,随着网络规模的增大,求解大规模流量路径规划问题产生巨大的计算开销,无法满足流
量调度对实时性的要求。
发明内容
流量分割比例,其中,所述源边界路由器节点为所述任一边界路由器节点,所述目的边界路
由器节点为网络中的出口边界路由器节点。
上所有网络设备的最大排队长度信息。
界路由器节点的每一条备选路径上的流量分割比例;
得到组合后的全局网络状态信息;
新的流量分割比例集合;
器节点到目的边界路由器节点的每一条备选路径上的流量分割比例;
得到组合后的全局网络状态信息;
作为每一条流上的数据包经过网络的转发路径;
备选路径上的流量分割比例,其中,所述源边界路由器节点为所述任一边界路由器节点,所
述目的边界路由器节点为网络中的出口边界路由器节点。
第一方面的各种可能的实现方式中任一种可能的实现方式所提供的网络中流量动态调整
方法。
的各种可能的实现方式中任一种可能的实现方式所提供的网络中流量动态调整方法。
整,能够实现在网络环境发生变化时,自动及时对各路径上的流量比例进行调整,保证网络
系统的稳定运行。
附图说明
明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根
据这些附图获得其他的附图。
具体实施方式
明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根
据这些附图获得其他的附图。
流量分割比例,其中,所述源边界路由器节点为所述任一边界路由器节点,所述目的边界路
由器节点为网络中的出口边界路由器节点。
升网络的运行效率,网络路由成为制约大规模网络高效运行的主要瓶颈。针对传统互联网
路由采用“基于网络拓扑的静态路由+基于线性规划的流量工程”的方法,导致网络链路的
负载不均衡、对动态突发流量的反应慢的问题,本发明实施例针对不断发生变化的网络环
境,对不同网络路径上的流量比例进行调整,实现网络系统的动态路由控制,确保整个网络
系统的稳定运行。
比如图2中的编号为1、2、3、4、5和6路由器节点为边界路由器节点,编号为7、8节点为内部路
由器节点。其中,编号为1、2、3、5和6路由器节点均可以为源路由器节点(也可以称为入口边
界路由器节点),编号为4的路由器节点为目的边界路由器节点(也可以称为出口边界路由
器节点)。在此需要说明的是,所有的边界路由器节点既可以作为入口边界路由器节点也可
以作为出口边界路由器节点,因为网络流量可以是双向的,一个路由器节点所扮演的角色,
入口节点还是出口节点依据其上的流量方向而定。图2仅仅示出了从路由器节点1到路由器
节点4的流量方向。
内遥测技术INT或者OSPF‑TE等方法来收集局部网络状态信息。
调整,保证网络系统的运行效率,提升网络利用率。
路利用率和每一条备选路径上所有网关设备的最大排队长度信息。
常在进行网络数据传输时,会从所有的网络路径中选择几条最优的路径,以下将选择出来
的多条最优路径称为从该源边界路由器节点到该目的边界路由器节点的备选路径。网络系
统中的每一个源边界路由器均可以收集到从该源边界路由器节点到该目的边界路由器节
点的每一条备选路径上的最大链路利用率和每一条备选路径上所有网络设备的最大排队
长度信息。也就是说,对于每一个时间点和指定的一对源边界路由器节点和目的边界路由
器节点,每一个源边界路由器节点可收集到该源边界路由器节点和目的边界路由器节点的
每一条备选路径上的最大链路利用率和每一条备选路径上所有网关设备的最大排队长度
信息。
都作为一个独立的智能路由决策单元,在每一个边界路由器中,都包含一个具有智能路由
决策的智能体模型,该智能体模型是一个多层的神经网络模型组成。在每个边界路由器上:
利用数据采集技术,如带内遥测技术INT或者OSPF‑TE等方法,采集局部网络状态信息,包括
每一条备选路径上的最大链路利用率和每一条备选路径上的所有网络设备(包括路由器和
交换机)的最大排队信息,其中,备选路径指的是,以该边界路由器为起始节点,到达出口边
界路由器的一条可达路径,选择多条最短路径作为该源边界路由器节点、目的边界路由节
点对的备选路径。
1→7→8→4,1→6→5→4都可以作为边界路由器节点1到边界路由器节点4的备选路径)。默
认情况下,使用无关路由(OR)的方法计算出具有多样性的K(默认情况下,设置K为3)条备选
路径;使用其他路径计算方法(如K‑SPF)算出的K条最短路径也可以作为本发明实施例中的
备选路径。
型组成预设模型;
界路由器节点的每一条备选路径上的流量分割比例;
得到组合后的全局网络状态信息;
新的流量分割比例集合;
个第一预设子模型称为Actor,第二预设子模型称为Critic,多个第一预设子模型和一个第
二预设子模型组成预设模型。另外,为了避免强化学习训练的过程中随机动作探索过程对
真实网络环境的干扰,本发明实施例对模型进行训练的过程是基于搭建的模拟网络环境上
进行的,且是基于离线训练的。其中,所谓的基准动作‑状态价值b代表当前状态下,该Actor
策略模型所能采取的最好动作的价值。贡献值A代表当前策略模型Actor的动作对于当前整
体网络环境的价值。
器节点到目的边界路由器节点的每一条备选路径上的流量分割比例;
得到组合后的全局网络状态信息;
当前时刻经过智能体模型与环境的动作交互状态转移得到下一个时刻。
详细说明。
为Critic。在当前时刻t,虚拟模拟网络中的每一个源边界路由器节点收集到的局部网络状
态信息称为
中,输出为
t
组合,得到组合后的流量比例分割集合A;
Actor1的输出结果 替换为默认的流量分割比例,即流量均等分割比例,即每一条备选路
径上的流量比例相等,其它的Actor输出的流量分割比例的结果不变,重新组合成更新后的
t t t t t
A ,S 不变,将更新后的A ,S输入Critic中,输出与Actor1对应的b1。根据前述输出的Q(S ,
t
A)值和该次输出的b1值,得到Actor1对应的贡献值 根据 对Actor1的模
型参数进行调整,得到训练后的Actor1;对于其它的Actor,采用同样的方式对自身的模型
参数进行调整,得到训练后的Actor。
Actorn中,输出为
进行组合,得到组合后的流量比例分割集合A ;
A )值。
默认值设置为0.9;该均方贝尔曼误差可以表述为:评价模型Critic对于当前动作‑状态价
值(也就是Q)的评估和经过状态转移得到的下一个状态‑动作价值Q′,以及单步奖励r之间
2
的误差的平方,也即(r+γQ(S′,A′)‑Q(S,A)) 。
估,并利用差异化的奖励机制对每一个Actori所做的动作ai进行差异化的反馈,从而实现更
加高效的训练效率。该框架包含两个模型,分别为Actor模型(即前述实施例的第一预设子
模型)和Critic模型(即前述实施例的第二预设子模型)。这两种模型均是由神经网络结构
组成,其中Actor模型均由多层网络组成。Critic模型是由多层全连接神经网络结构组成
(默认情况下设置为5层),输出一个单一的值,表示每一个Actor的动作对当前网络环境的
贡献。Critic是全局唯一实体,用作训练Actor之间的协作优化,其中Actori上的参数用θi表
示;Critic的参数用w表示。
A=[a1,…,an]作为输入,得到输出Q(S ,A)表示当前所有Actor产生的动作组合在当前网
络状态中产生的总价值,也即总贡献。
其中 表示当前 在固定其他Actor的动作A‑ai情况下,所能达
到的最好评价。 表示当前Actori应该采取的最优动作,也就是均分备选路径上的分割
比。
表示Actori的策略函数,在这里使用的是神经网络组成的复杂函数。
2
A)) 表示当前动作状态的均方贝尔曼误差,其中S′,A′分别表示环境经由当前状态S和动作
A转移到的下一个状态和在下一个状态下应该采取的最优策略组合,其中,γ表示衰减因
子,是一个固定值,默认设置为0.9,r是指当前网络环境中瓶颈链路的利用率Umax的倒数,w
是指Critic模型的参数,β是指Critic模型的更新步长,一般是一个固定值,默认设置成
0.01。
每一条流上的数据包的转发路径;
集的每一条备选路径上的最大链路利用率和每一条备选路径上所有网关设备的最大排队
长度信息输入到最终训练后的第一预设子模型中,得到输出的从该源边界路由器节点到该
目的边界路由器节点的每一条备选路径的流量分割比例。边界路由器根据该流量分割比
例,针对每一条流上的数据包选取对应的一条备选路径,利用源路由技术(如分段路由,SR)
将每一条流上的数据包按照选择的备选路径在该网络域内转发到出口的路由器节点,即目
的路由器节点。
链路的利用率26%‑85%。
义,可以用于本发明实施例中各个执行模块的理解。图4为本发明实施例提供的网络中流量
动态调整系统整体结构示意图,该系统包括:
的流量分割比例,其中,所述源边界路由器节点为所述任一边界路由器节点,所述目的边界
路由器节点为网络中的出口边界路由器节点。
通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通
信。处理器501可以调用存储器503中的逻辑指令,以执行如下方法:获取网络中任一边界路
由器收集的局部网络状态信息;将任一边界路由器收集的局部网络状态信息输入训练后的
第一预设子模型,得到输出的从源边界路由器节点到目的边界路由器节点的每一条备选路
径上的流量分割比例。
发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以
软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以
使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施
例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,
Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种
可以存储程序代码的介质。
络中任一边界路由器收集的局部网络状态信息;将任一边界路由器收集的局部网络状态信
息输入训练后的第一预设子模型,得到输出的从源边界路由器节点到目的边界路由器节点
的每一条备选路径上的流量分割比例。
整,能够实现在网络环境发生变化时,自动及时对各路径上的流量比例进行调整,保证网络
系统的稳定运行。
在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光
盘等各种可以存储程序代码的介质。
元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其
中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性
的劳动的情况下,即可以理解并实施。
述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该
计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指
令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施
例或者实施例的某些部分所述的方法。
以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;
而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和
范围。