首页> 中国专利> 网络性能预测方法,性能预测模型训练方法及相关装置

网络性能预测方法,性能预测模型训练方法及相关装置

摘要

本申请涉及人工智能领域,具体涉及一种网络性能预测方法,网络性能预测模型的训练方法及相关装置。其中,预测包括:针对目标网络获取当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息;通过目标网络的网络性能预测模型对当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息进行处理,得到当前时刻的异构关系图的第二状态信息,第二状态信息包括目标网络的当前时刻的性能指标;基于第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。采用本申请的实施例不仅可以准确预测网络的性能指标,还可以得到随时间变化的性能指标。

著录项

  • 公开/公告号CN114900441A

    专利类型发明专利

  • 公开/公告日2022-08-12

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN202210467299.6

  • 申请日2022-04-29

  • 分类号H04L41/147(2022.01);H04L41/14(2022.01);H04L41/16(2022.01);

  • 代理机构广州三环专利商标代理有限公司 44202;

  • 代理人张月婷

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-06-19 16:22:17

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-08-30

    实质审查的生效 IPC(主分类):H04L41/147 专利申请号:2022104672996 申请日:20220429

    实质审查的生效

说明书

技术领域

本申请涉及人工智能领域,尤其涉及一种网络性能预测方法,性能预测模型训练方法及相关装置。

背景技术

网络研究者和运营商都致力于不断提高网络服务质量以满足各种网络服务需求,通常依赖网络性能模型以实现高效的网络设计、运营和优化。具体而言,网络性能模型为在线场景的性能监控和离线场景的性能优化提供了新的手段。运营商可以通过性能模型实时获取真实网络性能、监控可能的异常;设计者可以通过性能模型评估给定拓扑、配置和流量下的性能是否满足设计需求;研究者可以通过性能模型指导流量调度、路由策略等优化方案的设计和评估。

随着机器学习技术的迅猛发展,基于深度神经网络的深度学习方法被应用到计算机视觉、机器翻译等领域并取得巨大成功。研究者们开始关注基于数据驱动方法的网络性能建模,并且已经取得了一些进展,代表性工作有:1、基于图神经网络构建网络性能预测模型,来确定链路和路径之间的关系,进而可以评估不同拓扑、路由方案、链路带宽和流量下的路径级的稳态时延。2、基于变分自编码器(variationalautoencoder,VAE)和长短期记忆(longshorttermmemory,LSTM)构建网络性能预测模型,来确定路径时延和流量的关系,进而可以通过给定拓扑下时序的流量矩阵去预测路径时延和丢包分布。

这两种网络性能预测模型缺乏系统性表达能力和时序状态建模能力。真实网络中存在多种网络实体,这些实体上存在多种本地或全局范围的配置。例如,交换机的缓存大小只在本地影响队列的长度,而路由策略会影响全网内的流量分布。网络性能指标也表现在不同网络实体上,如广域网场景关注路径级时延和丢包,数据中心场景下关注流级别指标如流完成时间(flowcompletiontime,FCT)。由于现有的网络性能预测模型缺乏系统性表达能力,只能基于链路和路径之间的关系来预测网络的性能指标,这种方式确定的性能指标是不准确的。此外,网络性能处在不断变化的过程中,网络设备的缓存和正在发送的数据包使得网络下一时刻的状态依赖于当前时刻状态,必须通过连续的性能评估才能准确反应网络性能的变化过程,这样一些网络性能异常(如时延增加、吞吐下降)也才能被识别出来,因此模型需要输出随时间变化的性能指标。由于现有的网络性能预测模型不具备时序状态建模能力,因此现有的网络性能预测模型无法输出随时间变化的性能指标。

发明内容

本申请实施例提供一种网络性能预测方法,网络性能预测模型训练方法及相关装置,采用本申请的方案可以克服上述问题。

第一方面,本申请实施例提供一种网络性能预测方法,包括:

针对目标网络获取当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息,当前时刻的异构关系图用于表征当前时刻目标网络中参与网络运行的多个节点及多个节点之间的关系;通过目标网络的网络性能预测模型对当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息进行处理,得到当前时刻的异构关系图的第二状态信息,第二状态信息包括目标网络的当前时刻的性能指标;基于第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。

在一个可能的实施例中,目标网络的多个节点包括:网络设备、链路、队列和路径。在一些场景中,目标网络的多个节点还包括流。网络设备可以包括交换机和服务器。

通过引入网络的异构关系图,用于表征网络实体、配置及其之间的关系,从而实现了对网络系统的结构性描述。通过网络性能预测模型对当前时刻的异构关系图的第一状态信息进行处理,可得到具有全局状态信息的隐藏状态信息,基于具有全局状态信息的隐藏状态信息可以得到更加准确的网络性能指标。基于隐藏状态信息预测目标网络当前时刻的异构关系图在下一时刻的第一状态信息,按照递归方式,可以基于当前时刻的异构关系图在下一时刻的第一状态信息预测目标网络在后续时刻的性能指标和当前时刻的异构关系图后续时刻的第一状态信息,实现了目标网络的性能指标的时序性表达,也即是目标网络的网络性能预测模型具有系统性表达能力。

在一个可能的实施例中,目标网络的网络性能预测模型包括编码网络,信息传递网络及解码网络,通过目标网络的网络性能预测模型对当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息进行处理,得到当前时刻的异构关系图的第二状态信息,包括:

通过编码网络对当前时刻的异构关系图的第一状态信息进行编码操作,以得到当前时刻的异构关系图的第三状态信息;通过信息传递网络对当前时刻的异构关系图、当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息;通过解码网络对当前时刻的异构关系图的隐藏状态信息进行解码操作,以得到当前时刻的异构关系图的第二状态信息。

应理解,当前时刻的异构关系图包括多个节点及多个节点之间的边信息,通过编码网络对当前时刻的异构关系图的第一状态信息进行编码操作,以得到当前时刻的异构关系图的第三状态信息具体是对当前时刻的异构关系图中每个节点的第一状态信息进行编码操作。

由于当前时刻的异构关系图中不同节点的第一状态信息的维度可能不相同,为了便于后续处理,通过编码网络对当前时刻的异构关系图中每个节点的第一状态信息进行编码操作,以得到每个节点的第三状态信息,不同节点的第三状态信息的维度是相同的。通过信息传递网络进行多轮信息传递,使得每个节点的隐藏状态信息包括其他节点的状态信息,进而基于隐藏状态信息可以得到更加准确的性能指标。

在一个可能的实施例中,当前时刻的异构关系图包括目标网络的多个节点及多个节点之间的边信息,多个节点之间的边信息用于表示多个节点之间的关系,通过信息传递网络对当前时刻的异构关系图、当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息,包括:

基于根据当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息得到当前时刻的异构关系图的第四状态信息;当前时刻的异构关系图的第四状态信息包括当前时刻的异构关系图中每个节点的第四状态信息;在进行第i轮信息传递时,基于多个节点之间的边信息获取当前时刻的异构关系图中每个节点的邻居节点的状态信息S

为了得到更加准确的性能指标,在进行信息传递之前,需引入前一时刻的隐藏状态信息,将前一时刻的隐藏状态信息及当前时刻的异构关系图的第三状态信息整合在一起,得到当前时刻的异构关系图的第四状态信息,然后再基于当前时刻的异构关系图的第四状态信息进行信息传递。

在一个可能的实施例中,基于每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

由于每个节点的聚合信息是针对每个节点的邻居节点的状态信息S

在一个可能的实施例中,当前时刻的异构关系图的第一状态信息包括静态信息及当前时刻的动态信息,第二状态信息还包括状态信息变化量,动态信息变化量为下一时刻的动态信息相对于当前时刻的动态信息之间的变化量,基于第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息,包括:

从当前时刻的异构关系图的第二状态信息确定动态信息变化量;根据动态信息变化量、当前时刻的动态信息及静态信息得到当前时刻的异构关系图在下一时刻的第一状态信息。

在得到当前时刻的异构关系图在下一时刻的第一状态信息后,可以按照递归方式,当前时刻的异构关系图在下一时刻的第一状态信息预测目标网络在下下一时刻的性能指标和当前时刻的异构关系图在下下一时刻的第一状态信息,甚至目标网络在后续每个时刻的性能指标和当前时刻的异构关系图在后续每个时刻的第一状态信息。

第二方面,本申请实施例提供一种网络性能预测模型的训练方法,包括:

获取多个异构关系图和多个异构关系图中每个异构关系图的第五状态信息,多个异构关系图是针对同一网络在不同时刻获取的,每个异构关系图用于表征获取每个异构关系图的时刻网络中参与网络运行的多个节点及多个节点之间的关系;基于多个异构关系图及多个异构关系图中每个异构关系图的第五状态信息对初始预测模型进行多轮训练,以得到网络性能预测模型。

在一个可能的实施例中,基于多个异构关系图及多个异构关系图中每个异构关系图的第五状态信息对初始预测模型进行多轮训练,以得到网络性能预测模型,包括:

将多个异构关系图分成多组,每组包括至少一个异构关系图;在进行第p轮训练时,将多组中第p组的异构关系图的第五状态信息及隐藏状态信息H’

在一个可能的实施例中,初始预测模型包括初始编码网络、初始信息传递网络及初始解码网络,性能预测模型M

对第p组中的第j个异构关系图的第五状态信息进行如下处理,以得到第j个异构关系图对应的第六状态信息:

通过编码网络M

在一个可能的实施例中,基于第j个异构关系图包括的多个节点之间的边信息,通过信息传递网络M

基于第j个异构关系图的第七状态信息与第j-1个异构关系图的隐藏状态信息H

在一个可能的实施例中,基于第j个异构关系图中每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

在一个可能的实施例中,网络的多个节点包括:网络设备、链路、队列和路径。在一些场景中,目标网络的多个节点还包括流。网络设备可以包括交换机和服务器。

应理解,使用第二方面所述的方法可以训练得到第一方面的网络性能预测模型,并且训练过程与使用网络性能预测模型预测性能指标的过程是一致的,因此第二方面所述内容的有益效果可参见第一方面所述内容的有益效果,在此不再叙述。

第三方面,本申请实施例提供一种预测装置,包括:

获取单元,用于针对目标网络获取当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息,当前时刻的异构关系图用于表征当前时刻目标网络中参与网络运行的多个节点及多个节点之间的关系;

预测单元,用于通过目标网络的网络性能预测模型对当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息进行处理,得到当前时刻的异构关系图的第二状态信息,第二状态信息包括目标网络的当前时刻的性能指标;

确定单元,用于基于第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。

在一个可能的实施例中,目标网络的网络性能预测模型包括编码网络,信息传递网络及解码网络,预测单元具体用于:

通过编码网络对当前时刻的异构关系图的第一状态信息进行编码操作,以得到当前时刻的异构关系图的第三状态信息;通过信息传递网络对当前时刻的异构关系图、当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息;通过解码网络对当前时刻的异构关系图的隐藏状态信息进行解码操作,以得到当前时刻的异构关系图的第二状态信息。

在一个可能的实施例中,当前时刻的异构关系图包括目标网络的多个节点及多个节点之间的边信息,多个节点之间的边信息用于表示多个节点之间的关系,在通过信息传递网络对当前时刻的异构关系图、当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息的方面,预测单元具体用于:

基于根据当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息得到当前时刻的异构关系图的第四状态信息;当前时刻的异构关系图的第四状态信息包括当前时刻的异构关系图中每个节点的第四状态信息;在进行第i轮信息传递时,基于多个节点之间的边信息获取当前时刻的异构关系图中每个节点的邻居节点的状态信息S

在一个可能的实施例中,在基于每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

在一个可能的实施例中,当前时刻的异构关系图的第一状态信息包括静态信息及当前时刻的动态信息,第二状态信息还包括状态信息变化量,动态信息变化量为下一时刻的动态信息相对于当前时刻的动态信息之间的变化量,确定单元具体用于,包括:

从当前时刻的异构关系图的第二状态信息确定动态信息变化量;根据动态信息变化量、当前时刻的动态信息及静态信息得到当前时刻的异构关系图在下一时刻的第一状态信息。

在一个可能的实施例中,目标网络的多个节点包括:网络设备、链路、队列和路径。在一些场景中,目标网络的多个节点还包括流。网络设备可以包括交换机和服务器。

第四方面,本申请实施例提供一种训练装置,包括:

获取单元,用于获取多个异构关系图和多个异构关系图中每个异构关系图的第五状态信息,多个异构关系图是针对同一网络在不同时刻获取的,每个异构关系图用于表征获取每个异构关系图的时刻网络中参与网络运行的多个节点及多个节点之间的关系;

训练单元,用于基于多个异构关系图及多个异构关系图中每个异构关系图的第五状态信息对初始预测模型进行多轮训练,以得到网络性能预测模型。

在一个可能的实施例中,训练单元具体用于:

将多个异构关系图分成多组,每组包括至少一个异构关系图;在进行第p轮训练时,将多组中第p组的异构关系图的第五状态信息及隐藏状态信息H’

在一个可能的实施例中,初始预测模型包括初始编码网络、初始信息传递网络及初始解码网络,性能预测模型M

对第p组中的第j个异构关系图的第五状态信息进行如下处理,以得到第j个异构关系图对应的第六状态信息:

通过编码网络M

在一个可能的实施例中,在基于第j个异构关系图包括的多个节点之间的边信息,通过信息传递网络M

基于第j个异构关系图的第七状态信息与第j-1个异构关系图的隐藏状态信息H

在一个可能的实施例中,在基于第j个异构关系图中每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

在一个可能的实施例中,网络的多个节点包括:网络设备、链路、队列和路径。在一些场景中,目标网络的多个节点还包括流。网络设备可以包括交换机和服务器。

第五方面,本申请实施例还提供一种电子设备,包括处理器和存储器,其中,所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行第一方面或第二方面所述的方法的部分或者全部。

第六方面,本申请实施例还提供一种芯片系统,该芯片系统应用于电子设备;所述芯片系统包括一个或多个接口电路,以及一个或多个处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述电子设备执行第一方面或第二方面所述的方法的部分或者全部。

第七方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现第一方面或第二方面所述的方法的部分或者全部。

第八方面,本申请实施例还提供一种计算机程序,该计算机程序被执行以实现第一方面或第二方面所述的方法的部分或者全部。

本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1a为本申请实施例提供的一种系统架构示意图;

图1b为本申请实施例提供的另一种系统架构示意图;

图2为本申请实施例提供的一种网络性能预测方法的流程示意图;

图3a为本申请实施例提供的一种异构关系图的示意图;

图3b为本申请实施例提供的另一种异构关系图的示意图;

图4为本申请实施例提供的一种网络性能预测方法中一个步骤的具体流程示意图;

图5为本申请实施例提供的另一种异构关系图的示意图;

图6为本申请实施例提供一种使用网络性能预测模型的过程示意图;

图7为本申请实施例提供一种数据中心网络的示意图;

图8为本申请实施例提供数据中心网络的异构关系图的示意图;

图9为本申请实施例提供的一种网络性能预测模型训练方法的流程示意图;

图10为本申请实施例提供的一种预测装置的结构示意图;

图11为本申请实施例提供的一种训练装置的结构示意图;

图12为本申请实施例提供的一种电子设备的结构示意图;

图13为本申请实施例提供的另一种电子设备的结构示意图。

具体实施方式

本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

下面结合附图对本申请的实施例进行描述。

参见附图1a,本申请实施例提供了一种系统架构100。数据采集设备160用于采集多个异构关系图及多个异构关系图对应的多个状态信息,并存入数据库130。其中,多个异构关系图是针对同一网络在不同时刻确定的,多个异构关系图中的每个异构关系图用于表征在该异构关系图对应的时刻参与网络运行的多个节点及多个节点之间的关系。每个异构关系图包括多个节点及多个节点之间的边信息,多个节点之间的边信息用于表征多个节点之间的关系。训练设备120基于数据库130中维护的多个异构关系图及多个异构关系图的状态信息生成网络性能预测模型101。训练设备120如何基于多个异构关系图及其状态信息得到网络性能预测模型101可参见后续实施例的相关描述,在此不再叙述。网络性能预测模型101能够基于输入目标网络的当前时刻的异构关系图及其第一状态信息预测当前时刻目标网络的性能指标。进一步的,网络性能预测模型101还可以基于输入目标网络的当前时刻的异构关系图及其第一状态信息预测下一时刻异构关系图的状态信息。

训练设备120得到的网络性能预测模型101可以应用不同的系统或设备中。在附图1a中,执行设备110配置有I/O接口112,与外部设备进行数据交互,“用户”可以通过客户设备140向I/O接口112输入数据,该数据包括目标网络的当前时刻的异构关系图及其状态信息。

执行设备110可以调用数据存储系统150中的数据、代码等,也可以将数据、指令等存入数据存储系统150中。

计算模块111使用网络性能预测模型101对输入的数据进行处理,处理过程具体包括:

对当前时刻的异构关系图的第一状态信息进行编码操作,以得到当前时刻的异构关系图的第三状态信息;基于当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息;对当前时刻的异构关系图的隐藏状态信息进行解码,以得到当前时刻异构关系图的第二状态信息,当前时刻异构关系图的第二状态信息包括目标网络的当前时刻的性能指标,基于当前时刻的异构关系图的第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。

最后,I/O接口112将处理结果,比如目标网络在当前时刻的性能指标返回给客户设备140,提供给用户。

更深层地,训练设备120可以针对不同的网络,基于不同网络的异构关系图及其状态信息生成相应的网络性能预测模型101,以给用户提供更佳的结果。

在附图1a中所示情况下,用户可以手动指定输入执行设备110中的目标网络的当前时刻的异构关系图及其状态信息,例如,在I/O接口112提供的界面中操作。另一种情况下,客户设备140可以自动地向I/O接口112输入目标网络的当前时刻的异构关系图及其状态信息并获得当前时刻目标网络的性能指标和下一时刻异构关系图的状态信息,如果客户设备140自动输入数据需要获得用户的授权,用户可以在客户设备140中设置相应权限。用户可以在客户设备140查看执行设备110输出的结果,比如当前时刻目标网络的性能指标和下一时刻异构关系图的状态信息,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备140也可以作为数据采集端将采集到目标网络的当前时刻的异构关系图及其状态信息作为训练数据存入数据库130。

值得注意的,附图1a仅是本发明实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在附图1a中,数据存储系统150相对执行设备110是外部存储器,在其它情况下,也可以将数据存储系统150置于执行设备110中。

参见图1b,图1b为本申请实施例提供的一种系统架构示意图。如图1b所示,该系统结构包括预测装置10和计算装置20,

其中,预测装置10可以为终端设备,比如智能手机、台式电脑、笔记本电脑、平板电脑等。计算装置20可以为服务器、服务器集群、云服务器或者其他形式的具有计算能力的设备。

预测装置10向计算装置20发送模型获取请求。在一个示例中,模型获取请求包括目标网络的标识,计算装置20存储有多个网络对应的多个网络性能预测模型。计算装置20根据目标网络的标识从多个网络性能预测模型中获取目标网络对应的网络性能预测模型。在另一个实施例中,模型获取请求携带有训练数据,该训练数据包括针对目标网络获取的多个不同时刻异构关系图及其状态信息,计算装置20基于多个不同时刻异构关系图及其状态信息得到目标网络对应的网络性能预测模型。计算装置20向预测装置10发送携带目标网络对应的网络性能预测模型的响应消息。预测装置10基于利用目标网络对应的网络性能预测模型,基于目标网络当前时刻的异构关系图及其第一状态信息预测目标网络当前时刻的性能指标和当前时刻的异构关系图在下一时刻的第一状态信息。

在一些实施例中,预测装置10具有强大的计算能力,预测装置10基于多个不同时刻异构关系图及其状态信息得到目标网络对应的网络性能预测模型。预测装置10基于利用目标网络对应的网络性能预测模型,基于目标网络当前时刻的异构关系图及其第一状态信息预测目标网络当前时刻的性能指标和下一时刻异构关系图的状态信息。

对于基于利用目标网络对应的网络性能预测模型,基于目标网络当前时刻的异构关系图及其第一状态信息预测目标网络当前时刻的性能指标和当前时刻的异构关系图在下一时刻的第一状态信息,具体包括:

对当前时刻的异构关系图的第一状态信息进行编码操作,以得到当前时刻的异构关系图的第三状态信息;基于当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息;对当前时刻的异构关系图的隐藏状态信息进行解码,以得到当前时刻异构关系图的第二状态信息,当前时刻异构关系图的第二状态信息包括目标网络的当前时刻的性能指标,基于当前时刻的异构关系图的第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。

可以看出,通过引入网络的异构关系图,用于表征网络实体、配置及其之间的关系,从而实现了对网络系统的结构性描述。基于异构关系图对异构关系图的状态信息进行信息传递,使得异构关系图中的每个节点的状态信息包含异构关系图中其他节点的状态信息,也就是说异构关系图中的每个节点的状态信息是全局状态信息,基于全局状态信息进行性能指标预测,可以预测得到精确的性能指标。基于当前时刻的状态信息可以预测下一时刻的状态信息及其后续时刻的状态信息,进而可以预测下一时刻目标网络的性能指标及后续时刻目标网络的性能指标。

参见图2,图2为本申请实施例提供的一种网络性能预测方法的流程示意图。如图2所示,该方法包括:

S201、预测装置针对目标网络获取当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息,当前时刻的异构关系图用于表征当前时刻的目标网络中参与网络运行的多个节点之间的关系。

可选的,预测装置可以图1a中的执行设备110,或者图1b中的预测装置10。

需要指出的是,异构关系图中的节点包括物理节点和虚拟节点。其中,物理节点表示具有配置信息的网络节点,包括但不限于带有缓冲区的交换机、服务器、链路(端口)、队列。虚拟节点表示与网络性能相关的节点,包括但不限于流、路径。

对于不同的节点,状态信息是不相同的。比如交换机的状态信息包括但不限于:缓存大小、缓存管理策略等。链路(端口)的状态信息包括但不限于:带宽、传播时延、队列调度策略、缓存管理控制因子等。队列的状态信息包括但不限于:调度权重、主动队列管理(activequeuemanagement,AQM)策略及其参数等。路径的状态信息包括但不限于:聚合流量大小、跳数、时延、吞吐量、抖动、丢包等。流的状态信息包括但不限于:开始时间、流大小、剩余流大小、流生存时间等。

不同时刻的异构关系图所包含的节点可能不相同。异构关系图用于表征在某一时刻网络中的参与网络运行的多个节点及多个节点之间的关系。由于在不同的时刻,目标网络中参与网络运行的节点可能不相同,并且参与网络运行的节点之间的关系也不相同,因此不同时刻的异构关系图可能不相同。

节点之间的边信息用于表征节点之间的关系。两个节点之间是否具有关系是基于领域知识确定的。若两个节点之间存在关系,则两个节点互为邻居节点。

举例说明,假设目标网络包括交换机S0和交换机S1,其中,交换机S0包括链路L0和链路L1,交换机S1包括链路L2和链路L3。链路L0配置有队列Q0和队列Q1,链路L1配置有队列Q2和队列Q3,链路L2配置有队列Q4和队列Q5,链路L3配置有队列Q6和队列Q7。

在第一时刻,路径P0经过队列Q0和队列Q4,且流F0和流F1经过路径P0传输。路径P1经过队列Q1和队列Q7,且流F2经过路径P1传输。图3a示意出了第一时刻的异构关系图。如图3a所示,节点S0与链路L0有关系,链路L0与队列Q0和队列Q1均有关系,节点S1与链路L2有关系,链路L2与队列Q4有关系,链路L3与队列Q7有关系,路径P0与队列Q0和队列Q4有关系,路径P1与队列Q1和队列Q7有关系,路径P0与流F0和流F1有关系,路径P1与流F2有关系。图3a中的虚线表示对应的节点在第一时刻未参与网络的运行。

在第二时刻,路径P0经过队列Q0、队列Q1和队列Q4,且流F0经过路径P0传输。路径P1经过队列Q2、队列Q3和队列Q7,且流F2和流F3经过路径P1传输。图3b示意出了第二时刻的异构关系图。如图3b所示,节点S0与链路L0和链路L1有关系,链路L0与队列Q0和队列Q1均有关系,链路L1与队列Q2和队列Q3均有关系。节点S1与链路L2和链路L3有关系,链路L2与队列Q4有关系,链路L3与队列Q7有关系,路径P0与队列Q0、队列Q1和队列Q4有关系,路径P1与队列Q2、队列Q3和队列Q7有关系,路径P0与流F0有关系,路径P1与流F2和流F3有关系。图3b中的虚线表示对应的节点在第二时刻未参与目标网络的运行。

有图3a和图3b可知,对于同一网络,不同时刻的异构关系图可能是不相同的。

S202、预测装置通过目标网络的网络性能预测模型对当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息进行处理,得到当前时刻的异构关系图的第二状态信息,第二状态信息包括目标网络的当前时刻的性能指标。

其中,网络性能预测模型包括编码网络、信息传递网络及解码网络。S202的具体过程如图4所示,包括:

S401、预测装置通过编码网路对当前时刻的异构关系图的第一状态信息进行编码操作,以得到当前时刻的异构关系图的第三状态信息。

由于异构关系图包括多个不同类型的节点,对于不同类型的节点,其状态信息是不一样的。相应的,状态信息的维度可能不相同。在本申请中,状态信息是通过向量表示。对于不同类型的节点,其状态信息对应的向量的维度可能不一样,为了方便后续处理,需要对异构关系图中每个节点的状态信息进行处理,以使异构关系图中所有节点处理后的状态信息的维度是一样的。用向量表示状态信息时,对异构关系图中每个节点的状态信息对应的向量进行处理,以使异构关系图中所有节点的状态信息对应向量的维度是一样的。具体处理方式是:

预测装置利用编码网络对当前时刻的对异构关系图中每个节点的第一状态信息进行处理,以得到当前时刻的异构关系图中每个节点的第三状态信息。当前时刻的异构关系图的第三状态信息包括当前时刻的异构关系图中每个节点的第三状态信息。

可选的,编码网络是基于神经网络实现的,比如图神经网络。

S402、预测装置通过信息传递网络对当前时刻的异构关系图、当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息。

在此需要指出的是,为了得到更加准确的性能指标,在进行多轮信息传递操作之前,预测装置需要对当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行处理,比如拼接,以得到当前时刻的异构关系图的第四状态信息。

对当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行拼接的具体方式包括不限于:

对于当前时刻的异构关系图中的任一节点X,若前一时刻的异构关系图存在节点X,则根据节点X的第三状态信息和隐藏状态信息得到节点X的第四状态信息。比如节点X的隐藏状态信息是使用3维向量表示的,节点X的第三状态信息是使用4维向量表示的,则节点X的第四状态信息是由用于表示节点X的隐藏状态信息的3维向量和表示节点X的第三状态信息的4维向量得到的7维向量表示的。若前一时刻的异构关系图不存在节点X,则将节点X的第三状态信息确定为节点X的第四状态信息。

按照上述方式,可以得到当前时刻的异构关系图中每个节点的第四状态信息。当前状态的异构关系图的第四状态信息包括当前时刻的异构关系图中每个节点的第三状态信息。

在得到当前时刻的异构关系图的第四状态信息后,由于各个节点的状态信息只包含与自身相关的状态信息,不包含异构关系图中其他节点的状态信息,因此为了提高预测的性能指标的精度,预测装置基于当前时刻的异构关系图对当前时刻的异构关系图的第四状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的每个节点的状态信息包含其他节点的状态信息。当前时刻的异构关系图包括目标网络的多个节点及多个节点之间的边信息,多个节点之间的边信息用于表示多个节点之间的关系。具体方式是:

在进行第i轮信息时,基于当前时刻的异构关系图包括的多个节点之间的边信息获取该异构关系图中每个节点的邻居节点的状态信息S

当i=1时,当前时刻的异构关系图中每个节点S

进一步的,基于每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

由于每个节点的聚合信息是针对每个节点的邻居节点的状态信息S

在此需要指出的是,信息传递网络包括3个部分,分别用于实现聚合函数、转换函数和更新函数的功能。也即是基于每个节点的邻居节点的状态信息S

应理解,上述异构关系图中可能包含同类型的节点,比如异构关系图中对应的交换机的多个节点为同类型的节点,对应的路径的多个节点为同类型的节点。对于同类型的多个节点,在进行上述操作时,使用聚合函数、转换函数和更新函数是相同的,也就是使用的图神经网络是相同的。

举例说明,假设如图5所示,当前时刻的异构关系图包括7个节点。对于图5所示的异构关系图的第三状态信息进行3轮信息传递操作,具体包括:

在进行第1信息传递操作时,对于节点A,节点A的邻居节点包括节点B和D,预测装置根据节点B、节点D和节点A的第三状态信息得到节点A的状态信息S

在进行第2轮信息传递操作时,对于节点A,预测装置根据节点B、节点D和节点A的状态信息S

在进行第3轮信息传递操作时,对于节点A,预测装置根据节点B、节点D和节点A的状态信息S

S403、预测装置通过解码网络对当前时刻的异构关系图的隐藏状态信息进行解码,以得到当前时刻的异构关系图的第二状态信息。

其中,当前时刻的异构关系图的第二状态信息包括目标网络的当前时刻的性能指标。

可选的,解码网络可以通过神经网络实现,比如图神经网络。

S203、预测装置基于第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。

具体的,当前时刻的异构关系图的第一状态信息包括静态信息及当前时刻的动态信息,第二状态信息还包括状态信息变化量,动态信息变化量为下一时刻的动态信息相对于当前时刻的动态信息之间的变化量,预测装置从当前时刻的异构关系图的第二状态信息确定动态信息变化量;根据动态信息变化量、当前时刻的动态信息及静态信息得到当前时刻的异构关系图在下一时刻的第一状态信息。

预测装置在得到当前时刻的异构关系图在下一时刻的第一状态信息后,可以基于S202和S203的方式对当前时刻的异构关系图在下一时刻的第一状态信息进行递归处理,以预测目标网络在下下一时刻的性能指标和当前时刻的异构关系图在下下一时刻的第一状态信息,甚至目标网络在后续每个时刻的性能指标和当前时刻的异构关系图在后续每个时刻的第一状态信息。

应理解,静态信息为目标网络中不随时间变化的信息,比如交换机总缓存大小、链路带宽、传播时延、路径跳数、流开始时间等。动态信息为目标网络中随时间变化的信息,比如路径流量大小、剩余流大小、流生存时间等。若网络中的配置会随时间变化,则也应看作动态信息,如主动队列管理参数、队列权重等。

可以看出,在本申请的方案中,通过引入网络的异构关系图,用于表征网络实体、配置及其之间的关系,从而实现了对网络系统的结构性描述。基于异构关系图对异构关系图的状态信息进行信息传递,使得异构关系图中的每个节点的状态信息包含异构关系图中其他节点的状态信息,也就是说异构关系图中的每个节点的状态信息是全局状态信息,基于全局状态信息进行性能指标预测,可以预测得到精确的性能指标。基于当前时刻得异构关系图的第一状态信息可以预测当前时刻得异构关系图在下一时刻的第一状态信息,按照递归方式,可以基于当前时刻的异构关系图在下一时刻的第一状态信息预测目标网络在后续时刻的性能指标和当前时刻的异构关系图后续时刻的第一状态信息,实现了目标网络的性能指标的时序性表达。

下面结合附图具体介绍利用目标网络的网络性能预测模型对目标网络当前时刻的性能指标进行预测。

如图6所示,网络性能预测模型包括编码网络、信息传递网络和解码网络。当前时刻的状态信息是指针对目标网络获取的当前时刻的异构关系图的第一状态信息。当前时刻的异构关系图包括多个节点和节点之间的边信息,当前时刻的异构关系图的第一状态信息包括该异构关系图中每个节点的第一状态信息。由于异构关系图中不同节点的第一状态信息的维度可能不一致,为了便于后续处理,将当前时刻的异构关系图的每个节点的第一状态信息输入到编码网络中进行处理,以得到每个节点的第三状态信息;其中,当前时刻的异构关系图中所有节点的第三状态信息的维度是相同的。

基于前一时刻的隐藏状态信息和当前时刻的异构关系图的第三状态信息得到当前时刻的异构关系图的第四状态信息的具体过程可参见S402的相关描述,在此不再叙述。通过信息传递模型对当前时刻的关系图的第四状态信息进行N轮预测,以得到当前时刻的异构关系图的隐藏状态信息,使得当前时刻的异构关系图中每个节点的隐藏状态信息不仅包含该节点的第一状态信息,还包含当前时刻的异构关系图中其他节点的第一状态信息。具体过程可参见步骤S402的相关描述,在此不再叙述。

通过解码网络对当前时刻的异构关系图的隐藏状态信息进行解码,以得到当前时刻的异构关系图的第二状态信息。其中,当前时刻的异构关系图的第为状态信息包括目标网络当前时刻的性能指标及动态信息变化量。其中,当前时刻的异构关系图的第一状态信息包括静态信息和当前时刻的异构关系图的动态信息,动态信息变化量为当前时刻的异构关系图在下一时刻的动态信息相对于当前时刻的异构关系图的动态信息的变化量。基于当前时刻的异构关系图的动态信息和动态信息变化量可得到当前时刻的异构关系图在下一时刻的动态信息,再基于当前时刻的异构关系图的静态信息及当前时刻的异构关系图在下一时刻的动态信息可到当前时刻的异构关系图在下一时刻的第一状态信息。

在一个具体的示例中,图7为一种具有叶-脊拓扑的数据中心网络的示意图。如图7所示,目标网络包括交换机S0、交换机S1、交换机S2、交换机S3、交换机S4、交换机S5、服务器H0、服务器H1、服务器H2、服务器H3、服务器H4、服务器H5、服务器H6和服务器H7。交换机的缓存在所有端口间共享,也即是交换机的所有端口共享缓存,每个端口的队列由调度策略管理,流从源服务器发送到目的服务器,服务器上运行数据中心传输控制协议(datacentertransmissioncontrolprotocol,DCTCP),以进行拥塞控制,每个交换机的队列上设置了显式拥塞通知(explicit congestion notification,ECN)机制,网络性能预测模型需要预测在不同配置下不同流(开始时间、大小)的完成时间。

如图7所示,流F0和流F1被配置从服务器H0的队列Q0经过路径P0传输至服务器H5,流F2从服务器H0的队列Q1经过路径P1传输至服务器H4,流F3被配置从服务器H1的队列Q1经过路径P2传输至服务器H5,其中,路径P0经过交换机S0的链路L0的队列Q0、交换机S4的链路L0的队列Q0和交换机S2的链路L0的队列Q0,路径P1经过交换机S0的链路L0的队列Q1、交换机S4的链路L0的队列Q1和交换机S2的链路L1的队列Q1;路径P2经过交换机S0的链路L0的队列Q1、交换机S4的链路L0的队列Q1和交换机S2的链路L0的队列Q1。

基于上述信息,可以构建数据中心网络的异构关系图,如图8所示。为了准确建模不同级别的网络特征信息,使用5种不同类型的节点来描述网络,包括交换机节点S0、S2和S4、端口(链路)节点L0和L1、队列节点Q0和Q1、路径节点P1、P2和P3、流节点F0、F1、F2和F3。节点之间连接表示节点之间存在直接的影响关系。比如队列节点有ECN阈值和优先级权重,端口节点有队列策略,队列节点和端口节点连接在一起。交换机节点有共享缓存的控制变量,作用在端口节点上,交换机节点需要和端口节点连接在一起。流节点和其经过的路径节点连接在一起。这样,局部关系就可以用不相交的边来描述。为了建立全局关系,如路由,路径节点需要和其经过的队列节点连接起来。注意,并非数据中心网络中所有的物理节点都必须实例化,因为其中一些设备可能没有流经过,此时其对关注的性能没有影响。

获取图8所示异构关系图的第一状态信息,包括每个交换机节点的第一状态信息,每个链路(端口)节点的第一状态信息,每个队列节点的第一状态信息、每个路径节点的第一状态信息和每个流节点的第一状态信息。在本示例中,交换机节点、链路节点和队列节点均仅包含静态信息,路径和流节点既包含静态信息也包含动态信息。具体而言,交换机节点的第一状态信息包括但不限于缓存大小和缓存策略;链路节点的第一状态信息包括但不限于带宽、传播时延、队列调度策略、缓存管理控制因子;队列节点的第一状态信息包括但不限于队列调度权重、优先级;路径节点的第一状态信息包括跳数等静态信息和路径流量大小等动态信息;流节点的第一状态信息包括静态信息和动态信息,其中,静态信息包括但不限于流开始时间、流大小,动态信息包括但不限于剩余流大小、流生存时间。由于不同类型的节点,第一状态信息的维度是不一样的,因此通过对图8所示异构关系图中每个节点的第一状态信息进行编码,以得到每个节点的第三状态信息,图8所示异构关系图中所有节点的第三状态信息的维度是一致的。为了使得性能指标的预测更加精准,对前一时刻的异构关系图的隐藏信息与当前时刻的异构关系图的第三状态信息进行处理,比如拼接,以得到当前时刻的异构关系图的第四状态信息,具体拼接过程可参见S402的相关描述,在此不再叙述。

为了使图8所示异构关系图中每个节点的状态信息包含其他节点的第一状态信息,对图8所示异构关系图的第四状态信息进行多轮信息传递,以得到图8所示异构关系图的隐藏状态信息。对于每个路径节点,使用加和方式聚合经过该路径的所有流的信息,然后利用RNN聚合路径节点经过的所有队列信息,通过路径节点对应的转换函数分别转换聚合信息到路径节点的状态信息的隐空间中,把路径节点的第四状态信息、转换后的流信息和转换后的队列信息拼接在一起,把拼接得到的信息传递给更新函数用来更新路径节点的状态信息。

对于每个流节点,通过流节点对应的转换函数将流所在的路径的第四状态信息转换到流节点状态信息的隐空间中,然后将转换后的路径节点的状态信息和流节点的第四状态信息拼接在一起,把拼接得到的信息传递给流节点对应的更新函数用来更新路径节点的状态信息。

对于每个队列节点,通过队列节点对应的聚合函数聚合经过队列的所有路径的第四状态信息,然后通过队列节点对应的转换函数将与队列节点有关系的链路节点的第四状态信息和路径节点的聚合状态信息转换到队列节点所在的隐空间中,将转换后的链路节点的状态信息和路径节点的状态信息拼接在一起,把拼接得到的信息传递给队列节点对应的更新函数用来更新队列节点的状态信息。

对于每个链路(端口)节点,通过链路节点对应的聚合函数聚合与链路有关系的所有队列节点的第四状态信息,然后把交换机节点的第四状态信息和聚合后的队列节点的状态信息通过链路节点对应的转换函数转换到链路节点所在的隐空间中,将转换后的交换机节点的状态信息和队列节点的状态信息拼接在一起,把拼接得到的信息传递给链路节点对应的更新函数用来更新链路节点的状态信息。

对于每个交换机节点,通过交换机的节点对应的转换函数将交换机节点包含的链路节点的第四状态信息转换到交换机节点所在的隐空间中,然后转换后的链路节点的状态信息和交换机节点的第四状态信息拼接在一起,把拼接得到的信息传递给交换机节点对应的更新函数用来更新交换机节点的状态信息。

按照上述可以完成一轮信息传递。经过多轮上述信息传递过程后,可得到图8所示的异构关系图中每个节点的隐藏状态信息,且图8所示的异构关系图中每个节点的隐藏状态信息包含其他节点的第一状态信息。

通过解码网络图8所示的异构关系图的隐藏状态信息进行解码,以得到图8所示的异构关系图的第二状态信息。图8所示的异构关系图的第二状态信息包括图7所示网络的性能指标,比如路径时延、丢包率等。图8所示的异构关系图的第二状态信息还包括动态信息变化量,该动态信息变化量为当前时刻的异构关系图在下一时刻的动态信息相对于当前时刻异构关系图的动态信息的变化量,比如在两个时刻间的流完成数据量、流存活时间等。图8所示的异构关系图的第一状态信息包括静态信息及当前时刻异构关系图的动态信息,其中交换机节点、链路节点、队列节点和路径节点均仅包含静态信息,流节点既包含静态信息也包含动态信息,具体而言,交换机节点的第一状态信息包括但不限于缓存大小和缓存策略;链路节点的第一状态信息包括但不限于带宽、传播时延、队列调度策略、缓存管理控制因子;队列节点的第一状态信息包括但不限于队列调度权重、优先级;路径节点的第一状态信息包括但不限于跳数;流节点的第一状态信息包括流开始时间、流大小等静态信息和剩余流大小、流生存时间等动态信息。根据当前时刻异构关系图的动态信息和动态信息变化量可得到当前时刻的异构关系图在下一时刻的动态信息,基于当前时刻的异构关系图在下一时刻的动态信息和静态信息得到当前时刻的异构关系图在下一时刻的第一状态信息。在得到当前时刻的异构关系图在下一时刻的第一状态信息,就可以预测后续时刻图7所示的网络的性能指标。需要注意的是,在本示例中,对于FCT这一性能指标是通过动态状态变化量间接获得的,具体而言,该网络性能预测模型通过预测的时刻之间接收到的数据量,并在每个时刻更新剩余流大小和生存时间来预测FCT。一旦剩余流大小低于零,网络性能预测模型就认为流结束了,并使用其生存时间作为预测的FCT。

在上述示例中,一种可能的使用场景是目标网络的流量不通过流描述,而描述为通过路径的聚合流量信息,网络性能预测模型需要预测在不同配置和路径流量下路径性能随时间的变化。此时,其他节点不变,路径节点同时包含静态和动态信息,其中静态信息包括跳数等,动态信息包括路径流量速度;输出的路径性能包括时延、丢包等。在该场景中,在使用网络性能预测模型进行预测和训练该网络性能预测模型时,所使用的异构关系图只包括交换机节点、链路(端口)节点、队列节点和路径节点,不包括流节点。

应理解,本申请的方案对应用的网络领域没有限制,可以用在数据中心网络的细粒度性能预测中,也可以应用在骨干网的路径级性能预测中。

异构关系图描述不同实体间的交互关系,类似的方法也可以应用在物理领域的仿真模拟过程中,其中实体约束、数目和关系以及聚合函数可能会存在变化,另外可能需要引入物理方程来描述实体随时间的变化过程,但多个实体之间的影响关系仍然可以采用状态转移过程来描述。

对于不同的网络,其网络的结构、网络中设备的配置信息等可能不相同,因此为了得到精确的性能指标,对于不同的网络,所使用的网络性能预测模型是不一样的。因此对于不同的网络,需要训练对应的网络性能预测模型。

下面介绍如何训练得到一个网络的网络性能预测模型。

参见图9,图9为本申请实施例提供的一种网络性能预测模型训练方法的流程示意图。

如图9所示,该方法包括:

S901、训练装置获取多个异构关系图和每个异构关系图的第五状态信息。

其中,多个异构关系图是针对同一网络在不同时刻获取的,每个异构关系图包括多个节点及多个节点之间的边信息;每个异构关系图的状态信息包括该异构关系图中每个节点的第一状态信息。

可选的,训练装置可以为图1a中的训练设备120,或者图1b中的预测装置10或者计算装置20。

需要指出的是,异构关系图中的节点包括物理节点和虚拟节点。其中,物理节点表示具有配置信息的网路实体,包括但不限于交换机、服务器、链路(端口)、队列。虚拟节点标识与网络性能相关的实体,包括但不限于流、路径。

不同时刻的异构关系图所包含的节点可能不相同。异构关系图用于表征在某一时刻网络中的参与网络运行的实体及这些实体之间的关系。由于在不同的时刻,网络中参与网络运行的实体可能不相同,因此不同时刻的异构关系图可能不相同。实体之间的边信息也即是上述节点之间的边信息。

在此需要指出的是,异构关系图的相关特征可参见图2所示实施例的相关描述,在此不再叙述。

S902、训练装置基于多个异构关系图及多个异构关系图中每个异构关系图的第五状态信息对初始预测模型进行多轮训练,以得到网络性能预测模型。

在一个可能的实施例中,预测装置基于多个异构关系图及多个异构关系图中每个异构关系图的第五状态信息对初始预测模型进行多轮训练,以得到网络性能预测模型,具体包括:

在一个示例中,预测装置将多个异构关系图分成多组,每组包括至少一个异构关系图;再利用多组异构关系图及其第五状态信息进行多轮训练,在进行第1轮训练时,预测装置将多组中第1组的异构关系图的第五状态信息及隐藏状态信息H’

其中,基于损失值L

在另一个示例中,在每得到预设数量的异构关系图及其第五状态信息后,预测装置就基于得到预设数量的异构关系图及其第五状态信息进行一轮训练,具体训练过程可参见上述相关描述。

进一步的,初始预测模型包括初始编码网络、初始信息传递网络及初始解码网络,对应的,性能预测模型M

对第p组中的每个异构关系图的第五状态信息进行如下处理,以得到每个异构关系图对应的第六状态信息:

通过编码网络M

基于第2个异构关系图包括的多个节点之间的边信息,通过编码网络M

……

基于第j个异构关系图包括的多个节点之间的边信息,通过编码网络M

按照上述方式,可以第p组中每个异构关系图的第六状态信息。当p=1时,编码网络M

在一个可能的实施例中,基于第j个异构关系图包括的多个节点之间的边信息,通过信息传递网络M

基于第j个异构关系图的第七状态信息与第j-1个异构关系图的隐藏状态信息H

在进行第1轮信息传递时,基于第j个异构关系图的多个节点之间的边信息确定第j个异构关系图中每个节点的邻居节点;根据每个节点状态信息S

在进行第2轮信息传递时,基于第j个异构关系图的多个节点之间的边信息确定第j个异构关系图中每个节点的邻居节点;根据每个节点状态信息S

……

在进行第k轮信息传递时,基于第j个异构关系图获取第j个异构关系图中每个节点的邻居节点的状态信息S

其中,第j个异构关系图的第八状态信息包括第j个异构关系图中每个节点的第八状态信息,当第k轮信息传递为多轮信息传递中的最后一轮信息传递时,每个节点的状态信息S

应理解,由于在第1轮信息传递时,已基于第j个异构关系图的多个节点之间的边信息确定第1个异构关系图中每个节点的邻居节点,因此在后续信息传递时,可以不用执行“基于第j个异构关系图的多个节点之间的边信息确定第j个异构关系图中每个节点的邻居节点”的操作。

在一个可能的实施例中,基于第j个异构关系图中每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

其中,聚合操作可以通过聚合函数实现,转换操作可通过转换函数实现,更新操作可以通过更新函数实现。聚合函数,转换函数和更新函数可以均通过神经网络实现,比如图神经网络。对于异构关系图中,包括类型相同的节点。对于类型相同的节点,所对应的聚合函数可以是相同的,所对应的转换函数可以是相同的,所对应的更新函数可以是相同的。

在一个可能的实施例中,第j-1个异构关系图的隐藏状态信息H

对于第j个异构关系图的异构关系图中的任一节点Y,若第j-1异构关系图存在节点Y,则根据节点Y的第七状态信息和节点Y的隐藏状态信息得到节点Y的第八状态信息。比如节点Y的隐藏状态信息是使用2维向量表示的,节点Y的第七状态信息是使用3维向量表示的,则节点Y的第八状态信息是由用于表示节点Y的隐藏状态信息的2维向量和表示节点Y的第七状态信息的3维向量得到的4维向量表示的。若第j-1个异构关系图不存在节点Y,则将节点Y的第七状态信息确定为节点Y的第八状态信息。

按照上述方式,可以得到第j个异构关系图中每个节点的第八状态信息。第j个异构关系图的第八状态信息包括第j个异构关系图中每个节点的第八状态信息。

按照上述训练方法,可以得到一个网络的网络性能预测模型。

参见图10,图10为本申请实施例提供的一种预测装置的结构示意图。如图10所示,该预测装置1000包括:

获取单元1001,用于针对目标网络获取当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息,当前时刻的异构关系图用于表征当前时刻目标网络中参与网络运行的多个节点及多个节点之间的关系;

预测单元1002,用于通过目标网络的网络性能预测模型对当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息进行处理,得到当前时刻的异构关系图的第二状态信息,第二状态信息包括目标网络的当前时刻的性能指标;

确定单元1003,用于基于第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。

在一个可能的实施例中,目标网络的网络性能预测模型包括编码网络,信息传递网络及解码网络,预测单元1002具体用于:

通过编码网络对当前时刻的异构关系图的第一状态信息进行编码操作,以得到当前时刻的异构关系图的第三状态信息;通过信息传递网络对当前时刻的异构关系图、当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息;通过解码网络对当前时刻的异构关系图的隐藏状态信息进行解码操作,以得到当前时刻的异构关系图的第二状态信息。

在一个可能的实施例中,当前时刻的异构关系图包括目标网络的多个节点及多个节点之间的边信息,多个节点之间的边信息用于表示多个节点之间的关系,在通过信息传递网络对当前时刻的异构关系图、当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息进行多轮信息传递操作,以得到当前时刻的异构关系图的隐藏状态信息的方面,预测单元1002具体用于:

基于根据当前时刻的异构关系图的第三状态信息及前一时刻的异构关系图的隐藏状态信息得到当前时刻的异构关系图的第四状态信息;当前时刻的异构关系图的第四状态信息包括当前时刻的异构关系图中每个节点的第四状态信息;在进行第i轮信息传递时,基于多个节点之间的边信息获取当前时刻的异构关系图中每个节点的邻居节点的状态信息S

在一个可能的实施例中,在基于每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

在一个可能的实施例中,当前时刻的异构关系图的第一状态信息包括静态信息及当前时刻的动态信息,第二状态信息还包括状态信息变化量,动态信息变化量为下一时刻的动态信息相对于当前时刻的动态信息之间的变化量,确定单元1003具体用于:

从当前时刻的异构关系图的第二状态信息确定动态信息变化量;根据动态信息变化量、当前时刻的动态信息及静态信息得到当前时刻的异构关系图在下一时刻的第一状态信息。

在一个可能的实施例中,目标网络的多个节点包括:网络设备、链路、队列和路径。在一些场景中,目标网络的多个节点还包括流。网络设备可以包括交换机和服务器。

需要说明的是,上述各单元(获取单元1001、预测单元1002和确定单元1003用于执行上述方法的相关步骤。比如获取单元1001用于执行S201相关内容,预测单元1002用于执行S202的相关内容,确定单元1003用于执行S203的相关内容。

在本实施例中,预测装置1000是以单元的形式来呈现。这里的“单元”可以指特定应用集成电路(application-specific integrated circuit,ASIC),执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。此外,以上获取单元1001、预测单元1002和确定单元1003可通过图12所示的电子设备的处理器1201来实现。

参见图11,图11为本申请实施例提供的一种训练装置的结构示意图。如图11所示,该训练装置1100包括:

获取单元1101,用于获取多个异构关系图和多个异构关系图中每个异构关系图的第五状态信息,多个异构关系图是针对同一网络在不同时刻获取的,每个异构关系图用于表征获取每个异构关系图的时刻网络中参与网络运行的多个节点及多个节点之间的关系;

训练单元1102,用于基于多个异构关系图及多个异构关系图中每个异构关系图的第五状态信息对初始预测模型进行多轮训练,以得到网络性能预测模型。

在一个可能的实施例中,训练单元1102具体用于:

将多个异构关系图分成多组,每组包括至少一个异构关系图;在进行第p轮训练时,将多组中第p组的异构关系图的第五状态信息及隐藏状态信息H’

在一个可能的实施例中,初始预测模型包括初始编码网络、初始信息传递网络及初始解码网络,性能预测模型M

对第p组中的第j个异构关系图的第五状态信息进行如下处理,以得到第j个异构关系图对应的第六状态信息:

通过编码网络M

在一个可能的实施例中,在基于第j个异构关系图包括的多个节点之间的边信息,通过信息传递网络M

基于第j个异构关系图的第七状态信息与第j-1个异构关系图的隐藏状态信息H

在一个可能的实施例中,在基于第j个异构关系图中每个节点的邻居节点的状态信息S

对每个节点的邻居节点的状态信息S

在一个可能的实施例中,网络的多个节点包括:网络设备、链路、队列和路径。在一些场景中,目标网络的多个节点还包括流。网络设备可以包括交换机和服务器。

需要说明的是,上述各单元(获取单元1101和训练单元1102)用于执行上述方法的相关步骤。比如获取单元1101用于执行S901的相关内容,训练单元1102用于执行S902的相关内容。

在本实施例中,训练装置1100是以单元的形式来呈现。这里的“单元”可以指特定应用集成电路(application-specific integrated circuit,ASIC),执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。此外,以上获取单元1101和训练单元1102可通过图13所示的电子设备的处理器1301来实现。

如图12所示电子设备1200可以以图12中的结构来实现,该电子设备1200包括至少一个处理器1201,至少一个存储器1202以及至少一个通信接口1203。所述处理器1201、所述存储器1202和所述通信接口1203通过所述通信总线连接并完成相互间的通信。

处理器1201可以是通用中央处理器(CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制以上方案程序执行的集成电路。

通信接口1203,用于与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(Wireless Local Area Networks,WLAN)等。

存储器1202可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。

其中,所述存储器1202用于存储执行以上方案的应用程序代码,并由处理器1201来控制执行。所述处理器1201用于执行所述存储器1202中存储的应用程序代码。

存储器1202存储的代码可执行以上提供的任一种模型搜索方法,比如:

针对目标网络获取当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息,当前时刻的异构关系图用于表征当前时刻目标网络中参与网络运行的多个节点及多个节点之间的关系;通过目标网络的网络性能预测模型对当前时刻的异构关系图及当前时刻的异构关系图的第一状态信息进行处理,得到当前时刻的异构关系图的第二状态信息,第二状态信息包括目标网络的当前时刻的性能指标;基于第二状态信息和当前时刻的异构关系图的第一状态信息确定当前时刻的异构关系图在下一时刻的第一状态信息。

如图13所示电子设备1300可以以图13中的结构来实现,该电子设备1300包括至少一个处理器1301,至少一个存储器1302以及至少一个通信接口1303。所述处理器1301、所述存储器1302和所述通信接口1303通过所述通信总线连接并完成相互间的通信。

处理器1301可以是通用中央处理器(CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制以上方案程序执行的集成电路。

通信接口1303,用于与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(Wireless Local Area Networks,WLAN)等。

存储器1302可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。

其中,所述存储器1302用于存储执行以上方案的应用程序代码,并由处理器1301来控制执行。所述处理器1301用于执行所述存储器1302中存储的应用程序代码。

存储器1302存储的代码可执行以上提供的任一种模型搜索方法,比如:

获取多个异构关系图和多个异构关系图中每个异构关系图的第五状态信息,多个异构关系图是针对同一网络在不同时刻获取的,每个异构关系图用于表征获取每个异构关系图的时刻网络中参与网络运行的多个节点及多个节点之间的关系;基于多个异构关系图及多个异构关系图中每个异构关系图的第五状态信息对初始预测模型进行多轮训练,以得到网络性能预测模型。

本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的任何一种网络性能预测方法的部分或全部步骤。

本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的任何一种网络性能预测模型的训练方法的部分或全部步骤。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。

以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号