CN114598614A - 一种路径预测方法及相关装置 - Google Patents
一种路径预测方法及相关装置 Download PDFInfo
- Publication number
- CN114598614A CN114598614A CN202011312566.XA CN202011312566A CN114598614A CN 114598614 A CN114598614 A CN 114598614A CN 202011312566 A CN202011312566 A CN 202011312566A CN 114598614 A CN114598614 A CN 114598614A
- Authority
- CN
- China
- Prior art keywords
- node
- path
- qos
- information
- distribution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 36
- 238000013473 artificial intelligence Methods 0.000 claims abstract description 32
- 238000013528 artificial neural network Methods 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 29
- 230000001186 cumulative effect Effects 0.000 claims description 22
- 230000005540 biological transmission Effects 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 16
- 238000010586 diagram Methods 0.000 description 31
- 230000006870 function Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 7
- 238000005259 measurement Methods 0.000 description 7
- 230000000306 recurrent effect Effects 0.000 description 7
- 230000004913 activation Effects 0.000 description 5
- 238000004806 packaging method and process Methods 0.000 description 5
- 238000013178 mathematical model Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 235000004257 Cordia myxa Nutrition 0.000 description 3
- 244000157795 Cordia myxa Species 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 241000760358 Enodes Species 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004579 scanning voltage microscopy Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
- H04W28/24—Negotiating SLA [Service Level Agreement]; Negotiating QoS [Quality of Service]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供一种路径预测方法及相关装置,应用于网络拓扑中的节点,该方法包括向服务器发送连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;接收来自服务器的路径的第一QoS分布,其中,路径的第一QoS分布为基于人工智能算法对来自网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,路径的第一QoS分布包括第一节点到出口节点的路径的QoS;根据路径的第一QoS分布确定用于传输业务的目标路径,其中,业务的目的节点为出口节点。采用本申请实施例,能够对不同业务、不同用户的SLA执行概率保障,提高对业务SLA保障的效率。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种路径预测方法及相关装置。
背景技术
同自动驾驶一样,自动驾驶网络也在经历不断演进的过程。在未来,高度自治的自动驾驶网络能够面向业务和客户体验,具备预测或主动性闭环管理的能力,能够大幅提升客户满意度。当前的网络在控制面已经实现路由发现与调整功能,在网络可达性方面已基本可以实现自动化保障,但是对构建自动驾驶网络还远远不够,自动驾驶网络还应该具备服务级别协议(Service Level Agreement,SLA)保障的能力。
现有网络业务的部署仅考虑静态带宽,不考虑动态时延,因此业务的SLA难以得到保障。一方面,当前绝大多数业务基于“尽力服务(Best effort)”的方式,该方式虽然成本较低,但是缺乏业务SLA或网络服务质量(Quality of Service,QoS)的保障;另一方面,当前少数特定业务基于虚拟专用网络(Virtual Private Network,VPN)专线及网络资源预留的方式,虽然可以在一定程度上实现业务SLA或网络QoS的保障,但是成本高、价格昂贵。
发明内容
本申请实施例公开了一种路径预测方法及相关装置,能够对不同业务、不同用户的SLA执行概率保障,提高对业务SLA保障的效率。
第一方面,本申请实施例公开了一种路径预测方法,包括:
第一节点向服务器发送连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;第一节点接收来自服务器的路径的第一QoS分布,其中,路径的第一QoS分布为基于人工智能算法对来自网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,路径的第一QoS分布包括第一节点到出口节点的路径的QoS;第一节点根据路径的第一QoS分布确定用于传输业务的目标路径,其中,业务的目的节点为出口节点。需要说明的是,第一节点为网络拓扑中的任意一个节点。
在本申请实施例里,网络拓扑中的每个节点可以将与自己相关的连接信息和利用率信息向服务器发送,由服务器根据每个节点发送的连接信息和利用率信息预测得到路径的QoS分布,然后将各个路径的QoS分布发送给每个节点。这样一来,在每个节点处都有自己到出口节点的路径的QoS,所以可以根据路径的QoS确定满足业务传输的路径,保障不同业务、不同用户的传输。
在第一方面的一种可能的实施方式中,第一节点可以为边缘节点;第一节点接收来自服务器的路径的第一QoS分布之后,第一节点根据路径的第一QoS分布确定用于传输业务的目标路径之前,还包括:
第一节点接收来自报文源发送的报文,报文携带有服务级别协议SLA保障率或时延累计值中的一种或多种,时延累计值用于确定满足SLA保障率的剩余时延,剩余时延用于转发报文的节点从多条路径中选择满足SLA保障率的路径。
第一方面的一种可能的实施方式中,第一节点根据路径的第一QoS分布中确定用于传输业务的目标路径,包括:
第一节点基于来自报文源发送的报文中的目的地址确定目的节点;
第一节点根据路径的第一QoS分布选择到达目的节点,且满足SLA保障率的目标路径。
可以看出,第一节点可以针对报文的目标地址来选择合适的路径,然后再根据报文所携带的SLA保障率确定满足SLA保障率的路径,使得更多的业务报文的SLA得到保障。
第一方面的一种可能的实施方式中,第一节点为非边缘节点;第一节点接收来自服务器的路径的第一QoS分布之后,第一节点根据路径的第一QoS分布确定用于传输业务的目标路径之前,还包括:
第一节点接收上一跳节点发送的报文,报文包括时延累计值、第一路径、SLA保障率中的一种或多种,其中,第一路径为第一节点的上一跳的节点确定的满足SLA保障率的路径;
第一节点根据路径的第一QoS分布确定用于传输业务的目标路径,包括:
第一节点根据时延累计值和SLA保障率确定业务传输的剩余时延值;
若第一路径不满足剩余时延值,则根据剩余时延值和路径的第一QoS分布确定用于传输业务的目标路径,其中,目标路径满足SLA保障率。
可以看出,报文中携带有SLA保障率和时延累计值,在转发报文的过程中可以动态更新路径,保障每条转发报文的路径都满足SLA保障率。
第一方面的一种可能的实施方式中,第一节点根据路径的第一QoS分布中确定用于传输业务的目标路径之后,还包括:
第一节点更新时延累计值;
第一节点将更新后的时延累计值和目标路径的信息封装至报文中;
第一节点向目标路径上的下一跳节点发送报文。
可以看出,将时延累计值和目标路径的信息封装至报文中,可以让下一跳节点确定满足SLA保障率的剩余时延,还可以让下一跳节点在不查找路由表的情况下转发报文,实现高效转发。
第一方面的一种可能的实施方式中,路径的第一QoS分布是在第一节点到所述出口节点的路径上增加预设流量的情况下预测的。可以看出,路径的QoS分布还可以包括在增加一定业务流量的基础上预测出来的路径,预测得到的路径的QoS分布更为全面,为路径的选择提供更多的可能。
第二方面,本申请实施例公开了一种路径预测方法,包括:
接收来自网络拓扑中每个节点发送的连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
基于连接信息和利用率信息通过人工智能算法预测得到路径的第二QoS分布,其中,路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的QoS;向网络拓扑中的第一节点发送第一节点到出口节点的路径的第一QoS分布,其中,第一节点为网络拓扑中的任意一个节点;第一QoS分布为第二QoS分布中第一节点到出口节点的路径的QoS。
通过本申请实施例,可以通过人工智能算法预测得到网络拓扑中的每个节点到出口节点的路径的QoS分布,使得网络拓扑中节点可以根据路径的QoS分布确定满足报文的SLA保障率的路径来转发报文,可以实现对不同业务、不同用户的SLA的保障。
第二方面的一种可能的实施方式中,人工智能算法包括图神经网络和变分自编码器。
第二方面的一种可能的实施方式中,基于连接信息和利用率信息通过人工智能算法得到路径的第二QoS分布,包括:
将连接信息和利用率信息输入图神经网络中得到路径特征,路径特征包括网络拓扑中的每个节点到出口节点的路径的特征;
将路径特征和链路利用率输入变分自编码器中得到路径的第二QoS分布。
可以看出,通过图神经网络和变分自编码器结合方式,可以根据比较容易获得的连接信息和利用率信息预测得到路径的QoS分布,信息获取简单,预测结果较为精准。
第二方面的一种可能的实施方式中,路径的第一QoS分布是在第一节点到出口节点的路径上增加预设流量的情况下预测的。
第三方面,本申请实施例提供了一种第一节点,包括:
发送单元,用于向服务器发送连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
接收单元,用于接收来自服务器的路径的第一QoS分布,其中,路径的第一QoS分布为基于人工智能算法对来自网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,路径的第一QoS分布包括第一节点到出口节点的路径的QoS;
处理单元,用于根据路径的第一QoS分布确定用于传输业务的目标路径,其中,业务的目的节点为出口节点。
第三方面的一种可能的实施方式中,第一节点为边缘节点;接收单元还用于:
接收来自报文源发送的报文,报文携带有服务级别协议SLA保障率或时延累计值中的一种或多种,时延累计值用于确定满足SLA保障率的剩余时延,剩余时延用于转发报文的节点从多条路径中选择满足SLA保障率的路径。
第三方面的一种可能的实施方式中,处理单元还用于:
基于来自报文源发送的报文中的目的地址确定目的节点;
根据路径的第一QoS分布选择到达目的节点,且满足SLA保障率的目标路径。
第三方面的一种可能的实施方式中,第一节点为非边缘节点;接收单元还用于:
接收上一跳节点发送的报文,报文包括时延累计值、第一路径、SLA保障率中的一种或多种,其中,第一路径为第一节点的上一跳的节点确定的满足SLA保障率的路径;
处理单元还用于:
根据时延累计值和SLA保障率确定业务传输的剩余时延值;
若第一路径不满足剩余时延值,则根据剩余时延值和路径的第一QoS分布确定用于传输业务的目标路径,其中,目标路径满足SLA保障率。
第三方面的一种可能的实施方式中,处理单元,还用于更新时延累计值;
处理单元,还用于将更新后的时延累计值和目标路径的信息封装至报文中;
发送单元,还用于第一节点向目标路径上的下一跳发送报文。
第三方面的一种可能的实施方式中,路径的第一QoS分布是在第一节点到出口节点的路径上增加预设流量的情况下预测的。
第四方面,本申请实施例提供了一种路径预测装置,包括:
接收单元,用于接收来自网络拓扑中每个节点发送的连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
处理单元,用于基于所述连接信息和所述利用率信息通过人工智能算法预测得到路径的第二QoS分布,其中,所述路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的QoS;
发送单元,用于向所述网络拓扑中的第一节点发送所述第一节点到所述出口节点的所述路径的第一QoS分布,其中,所述第一节点为所述网络拓扑中的任意一个节点;所述第一QoS分布为所述第二QoS分布中所述第一节点到出口节点的路径的QoS。
第四方面的一种可能的实施方式中,人工智能算法包括图神经网络和变分自编码器。
第四方面的一种可能的实施方式中,处理单元还用于:
将连接信息和利用率信息输入图神经网络中得到路径特征,路径特征包括网络拓扑中的每个节点到出口节点的路径的特征;
将路径特征和链路利用率输入变分自编码器中得到路径的第二QoS分布。
第四方面的一种可能的实施方式中,路径的QoS分布是在第一节点到出口节点的路径上增加预设流量的情况下预测的。
第五方面,本申请实施例提供了一种第一节点,第一节点包括至少一个处理器和通信接口,至少一个处理器用于调用至少一个存储器中存储的计算机程序,执行第一方面或第一方面的任意一种可能的实施方式所描述的方法。
第六方面,本申请实施例提供了一种服务器,服务器包括至少一个处理器和通信接口,至少一个处理器用于调用至少一个存储器中存储的计算机程序,执行第二方面或第二方面的任意一种可能的实施方式所描述的方法。
第七方面,本申请实施例还提供了一种路径预测系统,该系统包括第一节点和服务器,该第一节点为上述第三方面或第三方面的任意一种可能的实施方式所描述的装置,该服务器为上述第四方面或四方面的任意一种可能的实施方式所描述的装置。
第八方面,本申请实施例公开了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,当计算机程序在一个或多个处理器上运行时,执行第一方面或第一方面的任意一种可能的实施方式所描述的方法。
第九方面,本申请实施例公开了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,当计算机程序在一个或多个处理器上运行时,执行第二方面或第二方面的任意一种可能的实施方式所描述的方法。
第十方面,本申请实施例公开了一种计算机程序产品,当计算机程序产品在一个或多个处理器上运行时,执行第一方面或第一方面的任意一种可能的实施方式所描述的方法。
第十一方面,本申请实施例公开了一种计算机程序产品,当计算机程序产品在一个或多个处理器上运行时,执行第二方面或第二方面的任意一种可能的实施方式所描述的方法。
第十二方面,本申请实施例公开了一种芯片系统,芯片系统包括至少一个处理器,存储器和接口电路,该接口电路用于为上述至少一个处理器提供信息输入/输出,该存储器中存储有计算机程序,当计算机程序在一个或多个处理器上运行时,执行第一方面或第一方面的任意一种可能的实施方式所描述的方法。
第十三方面,本申请实施例公开了一种芯片系统,芯片系统包括至少一个处理器,存储器和接口电路,该接口电路用于为上述至少一个处理器提供信息输入/输出,该存储器中存储有计算机程序,当计算机程序在一个或多个处理器上运行时,执行第二方面或第二方面的任意一种可能的实施方式所描述的方法。
附图说明
以下对本申请实施例用到的附图进行介绍。
图1A是本申请实施例提供的一种SLA保障率与运营商利润的关系示意图;
图1B是本申请实施例提供的一种基于测量的保障业务SLA的场景示意图;
图1C是本申请实施例提供的另一种基于测量的保障业务SLA的场景示意图;
图1D是本申请实施例提供的一种最优切换保障业务SLA的业务场景图;
图1E是本申请实施例提供的一种基于平均SLA保障技术的关系示意图;
图1F是本申请实施例提供的一种基于最大SLA保障技术的关系示意图
图2A是本申请实施例提供的一种基于网络仿真器的QoS推理的场景示意图;
图2B是本申请实施例提供的一种基于数学模型的QoS推理的场景示意图;
图2C是本申请实施例提供的一种基于深度生成网络的QoS推理的场景示意图;
图3是本申请实施例提供的一种路径预测系统的结构示意图;
图4A是本申请实施例提供的一种路径预测方法的流程示意图;
图4B是本申请实施例提供的一种网络拓扑的架构示意图;
图4C是本申请实施例提供的一种存储路径的QoS分布的格式示意图;
图4D是本申请实施例提供的一种执行路径切换的过程中报文头部的信息变化示意图;
图5是本申请实施例提供的一种路径预测的场景示意图;
图6是本申请实施例提供的另一种路径预测系统的结构示意图;
图7是本申请实施例提供的一种路径预测装置的结构示意图;
图8是本申请实施例提供的一种路径预测装置的结构示意图;
图9是本申请实施例提供的一种第一节点的结构示意图;
图10是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。
一、自动驾驶网络(Self-Driving Network)
自动驾驶网络是一种可预测并具有自主运行能力的网络。打造自动驾驶网络需要做出两大转变,第一,从“以网元为中心”的碎片化建网模式,转变为“以业务为中心”的积木式的自治域建网模式。通过融合的“管理-控制-分析”实现单域自治和实时闭环、平衡域内创新和域间协同的成本与速度;第二,产业携手定义跨域开放协同的目标架构和可编程的API标准,大幅简化跨域业务协同和保障的复杂性,降低研运成本和风险,简化集成敏捷商业,降低整个产业的协作成本。
预计电信行业迈向自动驾驶网络的五级演进标准阶段如下:
L0手工运维,具备辅助监控能力,所有动态任务都依赖人执行。
L1辅助运维,系统基于已知规则重复性地执行某一子任务,提高重复性工作的执行效率。
L2部分自治网络,系统可基于确定的外部环境,对特定单元实现闭环运维,降低对人员经验和技能的要求。
L3有条件自治网络,在L2的能力基础上,系统可以实时感知环境变化,在特定领域内基于外部环境动态优化调整,实现基于意图的闭环管理。
L4高度自治网络,在L3的能力基础上,系统能够在更复杂的跨域环境中,面向业务和客户体验驱动网络的预测性或主动性闭环管理,早于客户投诉解决问题,减少业务中断和客户影响,大幅提升客户满意度。
L5完全自治网络,这是电信网络发展的终极目标,系统具备跨多业务、跨领域的全生命周期的闭环自动化能力,真正实现无人驾驶。
二、图神经网络(Graph Neural Network,GNN)
GNN是用于学习包含大量连接的图的联结主要模型,是一种直接作用于图结构上的神经网络。当信息在图的节点之间传播时,GNN会捕捉到图的独立性。与标准神经网络不同的是,GNN会保持一种状态,这个状态可以代表来源于人为指定的深度上的信息。图神经网络处理的数据就是图,而图是一种对节点和节点间关系建模的数据结构,一种非欧几里得数据,图分析可用于节点分类、链接预测和聚类。
可以把图神经网络分为如下五类:图卷积网络(Graph ConvolutionalNetworks)、图注意力网络(Graph Attention Networks)、图自编码器(Graph Auto-encoder)、图生成网络(Graph Generative Networks)、图时空网络(Graph Spatial-Temporal Networks)。
三、服务级别协议(Service Level Agreement,SLA)
SLA是指提供服务的企业与客户之间就服务的品质、水准、性能等方面所达成的双方共同认可的协议或契约。网络运营商在面向不同行业的客户的各种业务的时候,网络运营商需要与客户签署服务等级协议(service level agreement,SLA),该服务等级协议规定了各种业务需要达到不同的SLA目标,例如,协议规定了各种业务的所需要的带宽为多少,各种业务的平均时延不超过阈值等等。
四、服务质量(Quality of Service,QoS)
QoS指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术。当网络发生拥塞的时候,所有的数据流都有可能被丢弃;为满足用户对不同应用不同QoS的要求,就需要网络能根据用户的要求分配和调度资源,对不同的数据流提供不同的服务质量:对实时性强且重要的数据报文优先处理;对于实时性不强的普通数据报文,提供较低的处理优先级,网络拥塞时甚至丢弃。
通常QoS提供以下三种服务模型:Best-Effort service(尽力而为服务模型),Integrated service(综合服务模型,简称Int-Serv),Differentiated service(区分服务模型,简称Diff-Serv)。
五、变分自编码器(Variational auto-encoder,VAE)
VAE作为深度生成模型的一种形式,是由Kingma等人于2014年提出的基于变分贝叶斯(Variational Bayes,VB)推断的生成式网络结构。与传统的自编码器通过数值的方式描述潜在空间不同,它以概率的方式描述对潜在空间的观察,在数据生成方面表现出了巨大的应用价值。VAE和生成对抗网络(Generative Adversarial Networks,GAN)被视为无监督式学习领域最具研究价值的方法之一。
六、循环神经网络(Recurrent Neural Network,RNN)
RNN是一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网络(recursive neuralnetwork)。
七、人工智能(Artificial Intelligence,AI)算法
AI算法包括但不限于:决策树、随机森林算法、逻辑回归、SVM、朴素贝叶斯、K最近邻算法、K均值算法、Adaboost算法、神经网络、马尔可夫。
请参见图1A,图1A是本申请实施例提供的一种SLA保障率与运营商利润的关系示意图。从图1A可以看出,成本开销线和应用体验线之间的差值为利润。在未来自动驾驶网络的场景下,如果在极少数基于资源预留或轻载的“专线”业务得到100%的SLA保障,与大多数基于“best effort”的业务缺乏SLA保障之间,存在一种“beyond best effort”的方式实现对大多数业务的SLA保障,满足不同业务和用户存在不同等级的SLA需求,使得大多数业务SLA得到不同等级的保障。那么,基于“beyond best effort”的方式可以在兼顾SLA保障与成本开销的情况下,面向大多数业务提供差异化体验,会产生一种新的商业模式,并未运营商带来盈利。
目前,基于测量的方法可以避免资源预留的方式,能够比较准确地监控业务SLA,并可以及时或提前地调整业务,因此在很大程度上可以降低因资源预留而带来的高成本。但是,其主要缺陷在于无法预知路径切换之后业务SLA或网络QoS的效果。请参见图1B,图1B是本申请实施例提供的一种基于测量的保障业务SLA的场景示意图。从图1B可以看出,业务A所在当前路径的时延值为75ms,因为业务A的SLA保障率的要求为时延值小于或等于80ms,当前路径的时延值不太可以满足业务A的SLA保障率,因此需要对业务A的转发路径进行切换,实现对业务A的SLA的保障。所谓SLA保障率是在某种概率条件不高于某个时延值。基于测量的方法可知,预测路径1的时延值为60ms,预测路径2的时延值为70ms。
基于测量的SLA保障将选择测量的低时延路径进行切换,根据图1B中路径时延的测量结果,可以将业务A切换到预测路径2上。请参见图1C,图1C是本申请实施例提供的另一种基于测量的保障业务SLA的场景示意图。从图1C可以看出,当将业务A切换至预测路径1后,切换之后的路径负载可能会发生变化,导致切换之后的时延值与切换之前测量的时延值不一致。业务A切换到预测路径2上之后,预测路径2上的时延值为90ms,不满足业务A的SLA保障率。
本发明人发现,如果可以预知路径切换之后的流量变化对时延的影响,那么可以执行最优的路径切换,实现对业务SLA的保障。请参见图1D,图1D是本申请实施例提供的一种最优切换保障业务SLA的业务场景图。从图1D可以看出,如果将业务A切换至预测路径1,那么业务A切换到预测路径1上之后,预测路径1上的时延值为60ms,业务A的SLA保障率将会得到保障。
请参见图1E,图1E是本申请实施例提供的一种基于平均SLA保障技术的关系示意图。从图1E可以看出,业务的SLA保障率为一段时间内的平均时延值不低于150ms,从0时到24时,业务的平均时延值始终低于SLA保障率。但实际上,业务时延值的90分位点和80分位点在很长时间内均高于150ms,比如从6时至24时,业务时延的90分位点始终高于150ms,说明在该段时间段内,业务的SLA保障率低于90%;再比如从9时至24时,业务时延的80分位点始终高于150ms,说明在该段时间内业务的SLA保障率低于80%。可以看出,基于平均SLA保障技术的效果并不理想,在多数情况下业务的SLA保障率并没有得到保障。
请参见图1F,图1F是本申请实施例提供的一种基于最大SLA保障技术的关系示意图。从图1F可以看出,基于最大SLA保障技术面临着成本高、对多数应用收益不明显的问题。当对业务时延的“长尾效应”进行保障时,需要使其最大时延值小于业务SLA需求的方式很难面向网络中的绝大多数业务,因为仅少数应用对“长尾”敏感。
因此,在自动驾驶网络场景下,如要实现业务的SLA保障率的目标,需要对网络中的QoS分布进行推理,这其中的核心挑战是动态排队时延建模与评估。也即,在已知网络负载的情况下,推理并预测出流量在当前路径以及路径切换之后的QoS分布,并基于该分布判断业务SLA的保障情况,并采取相应的策略来保障业务SLA。
目前,存在以下几种对网络中的QoS分布进行推理的方法。
方法一,请参见图2A,图2A是本申请实施例提供的一种基于网络仿真器的QoS推理的场景示意图,网络仿真器的QoS推理工作原理如下:以流量矩阵、网络拓扑作为输入,通过NS2、NS3、OMNeT++等网络仿真器对时延、抖动、丢包等QoS指标进行推理。但是,本申请发明人发现其存在的主要问题是QoS推理速度过慢,仿真实现与现有网络工程实现的差距导致精度偏低。
方法二,请参见图2B,图2B是本申请实施例提供的一种基于数学模型的QoS推理的场景示意图,基于数学模型的QoS推理工作原理如下:以流量矩阵、网络拓扑作为输入,通过排队论、网络演算等数学模型对时延、抖动、丢包等QoS指标进行推理。但是,本申请发明人发现其存在的主要问题是依赖一些数学假设条件,可能与现网流量模型不符,同时依赖大量的人为分析,精度偏低。
方法三、请参见图2C,图2C是本申请实施例提供的一种基于深度生成网络的QoS推理的场景示意图,如SIGCOMM 2018Workshop的文章Deep-Q,基于深度生成网络的QoS推理工作原理为以全网链路利用率分布作为输入,通过VAE推理出某条路径的QoS分布。但是,本申请发明人发现该研究的泛化能力在兼容拓扑动态性与路径多样性等方面需要进一步提升,如当网络拓扑发生变化时,Deep-Q模型需要重新训练,且无法对未测量的路径QoS进行推理。
方法四,基于图神经网络的QoS预测,如SOSR 2019的研究工作RouteNet,其工作原理为以全网的流量矩阵与拓扑信息作为输入,通过GNN预测出某条路径的时延、抖动、丢包等QoS指标。但是,本申请发明人发现该研究存在以下问题:全网流量矩阵信息获取难度大;对于某条路径的QoS均值的预测,无法精确刻画网络状态的动态变化与SLA的概率保障情况。
为了解决上述问题,本申请实施例提供了一种路径预测方法及相关装置,该方法包括:
第一节点可以在预设周期内收集连接信息和利用率信息,其中,连接信息为网络拓扑第一节点与其相邻节点的连接信息,若在预设周期内第一节点与其相邻节点的连接状态没有发生变化,则可以不用再次收集;利用率信息用于描述连接第一节点的链路的利用率,可以是链路在一段时间的平均值,也可以是某一时间的瞬时值,链路利用率在现有设备中支持可采集。
第一节点将收集到的连接信息和利用率信息向服务器发送,服务器在接收到连接信息和利用率信息后,以连接信息和利用率信息作为输入,通过图神经网络和变分自编码器预测网络拓扑中的每个节点到出口节点的路径的第二QoS分布。然后,服务器向网络拓扑中的每个节点发送该节点到出口节点的路径的第一QoS分布。也即,第一节点接收的路径的QoS分布为第一节点到出口节点的路径的第一QoS分布。
第一节点为边缘节点时,第一节点接收来自报文源发送的报文,基于来自报文源发送的报文中的目的地址确定目的节点,然后根据所述路径的第一QoS分布选择到达所述目的节点,且满足所述SLA保障率的目标路径。
第一节点为非边缘节点时,第一节点接收上一跳节点发送的报文,第一节点根据时延累计值和SLA保障率确定业务传输的剩余时延值;若所述第一路径不满足所述剩余时延值,则根据剩余时延值和路径的第一QoS分布确定用于传输业务的目标路径,其中,目标路径满足所述SLA保障率。
需要说明的是,第一节点为网络拓扑中的任意一个节点,也即网络拓扑中的每个节点都将收集连接信息和利用率信息,并将连接信息和利用率信息向服务器发送。
为了更好地理解本申请实施例提供的一种路径预测方法及相关装置,下面先对本申请实施例的网络架构进行描述。
下面以具体实施例结合附图对本申请的技术方案进行详细说明。下述实施例和实施方式可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。应理解,本申请中所解释的功能可以通过独立硬件电路、使用结合处理器/微处理器或通用计算机而运行的软件、使用专用集成电路,和/或使用一个或多个数字信号处理器来实现。当本申请描述为方法时,其还可以在计算机处理器和被耦合到处理器的存储器中实现。
请参见图3,图3是本申请实施例提供的一种路径预测系统的结构示意图。从图3可以看出,路径预测系统300可以包括一个或多个节点302、服务器301,其中,
一个或多个节点302可以是数据中心网、城域网、局域网、移动通信等网络中部署的电子设备,在具体实现过程中,可以是数据中转设备,例如路由器、中继器、桥接器、交换机、网关等各个网络端口等。从图3可以看出,架构303A表示网络拓扑303中的每一个节点302可以在预设周期内收集连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率。然后节点302还可以将上述信息发送给服务器301。在节点302接收来自服务器301的路径的第以QoS分布后,节点302可以从路径的第一QoS分布中确定目标路径,其中,路径的第一QoS分布可以包括以下一种或多种信息:路径的QoS分布的预测周期、出口节点标识、节点302到出口节点的路径上的节点标识、分位点的QoS等信息。然后,再基于目标路径转发报文。
服务器301是具有数据处理能力和数据收发能力的设备,在具体实现过程中,可以是实体设备如主机、机架式服务器、刀片式服务器等,也可以是虚拟设备如虚拟机、容器等。进一步的,服务器301可以是一个服务器,也可以是多个服务器组成的服务器集群。服务器301可以接收来自节点302的网络拓扑信息和链路利用率等样本信息,然后服务器301可以基于上述样本信息通过人工智能算法(比如说图神经网络和变分自编码器)得到路径的第二QoS分布,其中,路径的第二QoS分布可以包括以下一种或多种:路径的QoS分布的预测周期、出口节点标识、网络拓扑中的每个节点到出口节点的路径上的节点标识、分位点的QoS等信息。从架构303B可以看出,服务器301可以向网络拓扑中的每个节点发送本节点到出口节点的路径的QoS分布。比如说,节点302A接收到的路径的QoS分布包括:路径的QoS分布的预测周期、出口节点、第一路径(节点302A到出口节点的路径)上的所有节点标识和分位点的QoS值、第二路径(节点302A到出口节点的路径)上的所有节点标识和分位点的QoS值、第三路径(节点302A到出口节点的路径)上的所有节点标识和分位点的QoS值、第四路径(节点302A到出口节点的路径)上的所有节点标识和分位点的QoS值。节点302B接收到的路径的QoS分布包括:路径的QoS分布的预测周期、出口节点、第一路径(节点302B到出口节点的路径)上的所有节点标识和分位点的QoS值、第二路径(节点302B到出口节点的路径)上的所有节点标识和分位点的QoS值。
需要说明的是,路径的第一QoS分布为路径的第二QoS分布中接收到来自服务器发送的节点到出口节点的路径的QoS。
可以理解的是,网络拓扑是指用传输媒体互联各种设备的物理布局,拓扑是一种不考虑物体的大小、形状等物理属性,而使用点或者线描述多个物体实际位置与关系的抽象表示方法。网络拓扑结构形象地描述了网络的安排和配置方式,以及各节点之间的相互关系。从图3可以看出,网络拓扑303可以表示一个或多个节点302的连接方式,而这种连接方式包括但不限于星型结构、环型结构、总线型结构、混合拓扑结构、分布式结构、树形结构、网络拓扑结构、蜂窝拓扑结构等。
其中,节点302包括边缘节点302A、非边缘节点302B和出口节点302C,节点302执行路径切换的具体表现如下:
当一个或多个节点302中的边缘节点302A(也即第一个接收报文源发送报文的设备)接收来自报文源(生成报文的设备)的报文时,该报文携带有SLA保障率、当前时延累计值、目的地址中的一项或多项,边缘节点302A可以根据目的地址计算或者选择目的节点标识,然后再从路径的QoS分布中确定满足目的节点标识的路径。举例来说,若接收到的报文中携带的目的地址是出口节点302C的地址,则出口节点标识可以认为是目的节点标识,从路径的QoS分布中选择含有出口节点302C的路径来转发报文,其中,路径可以是第一路径、第二路径、第三路径和第四路径。因为报文在网络拓扑303中传输需要满足SLA保障率,所以需要从第一路径、第二路径、第三路径和第四路径中选择满足SLA保障率的路径来转发报文。其中,第一路径的QoS分布为99分位点的时延值为70ms,第二路径的QoS分布为99分位点的时延值为90ms,第三路径的QoS分布为99分位点的时延值为60ms,第四路径的QoS分布为99分位点的时延值为100ms。若SLA保障率为99分位点的时延值为80ms,可以看出,第一路径、第二路径和第三路径都满足要求,在这种情况下,可以选择最优的(也即时延值最小)第三路径来进行路径转发。并将第三路径的信息(比如第三路径上每个节点的标识)和出口节点标识封装到报文中,再将封装后的报文向第三路径上的下一个节点转发。
因此,在非边缘节点302B接收到报文后,需要再次判断第三路径是否满足报文的SLA保障率,若不满足,需要再次选择合适的路径进行报文转发,直至将报文转发到出口路由处。
请参见图4A,图4A是本申请实施例提供的一种路径预测方法的流程示意图,进一步的,该方法可以基于图3所示的框架来实现,该方法包括但不限于如下步骤:
步骤S400:获得样本信息。
具体地,第一节点获得样本信息,第一节点为网络拓扑中的任意一个节点,比如说可以是边缘节点或者非边缘节点,样本信息可以包括连接信息和利用率信息。其中,连接信息可以是网络拓扑中的节点(比如说边缘节点和非边缘节点)在预设周期内与其相邻节点进行交互而获取得到连接情况,比如说,请参见图4B,图4B是本申请实施例提供的一种网络拓扑的架构示意图,从图4B可以看出,与节点1相连的下一跳节点有节点2和节点3,与节点2相连的上一跳节点有节点1和节点4,与节点2相连的下一跳节点有节点5和节点6。因此,节点1可以与节点2和节点3进行交互来获取与节点2和节点3的连接信息,而节点2可以与节点1、节点4、节点5和节点6进行交互来获取与节点1、节点4、节点5和节点6的连接信息。
节点还可以在预设周期内测量链路利用率,链路利用率是网络中的一种重要资源,它主要是指链路平均被占用的程度,是指在单位时间内一条链路传输数据的时间的比例,反映了单位时间内链路的忙闲状态。链路利用率可以是一段时间内的平均值,也可以是某一时间的瞬时值。根据测量链路利用率的方法可以分为主动测量工具与被动测量工具。
举例来说,可以通过管理协议(Simple Network Management Protocol,SNMP)来测量链路利用率,该方法可以包括:(1)以时间t为周期(t的单位为“秒”),通过SNMP协议的get原语读取节点中的某个接口(Interface)的“ifInOctets(收到的所有字节数)”或者“ifOutOctets(发出的所有字节数)”项的值,第i次读取的值记为Pi;(2)记链路的物理带宽是B(字节/秒),记Pi的获取时刻是Ti,则称Ui=(Pi+1-Pi)/tB是Ti时刻开始的t时间内的平均链路利用率;当t足够小时,就称Ui是Ti时刻的链路利用率,对于全双工的链路,若Pi是“ifInOctets”的值,则称Ui是该接口入链路的利用率,若Pi是“ifOutOctets”的值,则称Ui是该接口出链路的利用率。
需要说明的是,预设周期可以根据实际的业务需求进行设置,本申请实施例不做任何限制。
步骤S401:向服务器发送样本信息。
具体地,在第一节点(比如说边缘节点、非边缘节点)获得连接信息和利用率信息等样本信息后,可以将上述样本信息向服务器发送。可以理解的是,此处所指第一节点为网络拓扑中的任意一个节点,比如说边缘节点或者非边缘节点,所以向服务器发送的网络拓扑可以是任意一个与其相邻节点的一个或多个连接信息。而节点可以周期性地(比如在每个预设周期内)去获得连接信息和利用率信息,同时节点也可以周期性地向服务器发送连接信息和利用率信息。需要说明的是,当在第二预设周期内获得的连接信息与在第一预设周期内获得连接信息一样,也即网络拓扑中的节点之间的连接状态没有任何变化,则在第二预设周期内可以不用再次上传连接信息。
步骤S402:服务器基于样本信息通过人工智能算法得到路径的第二QoS分布。
具体地,服务器在接收来自节点发送的连接信息、利用率信息等样本信息后,可以将上述样本信息作为输入,通过人工智能算法预测得到路径的第二QoS分布,路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的第一QoS分布。
可选地,人工智能算法包括但不限于图网络神经,服务器可以将网络拓扑和链路利用率输入至图神经网络中,训练得到路径特征(Path Feature)。具体实现方式可以包括:图神经网络内部可以由多个循环神经网络(RNN)构成,将网络拓扑、链路利用率输入至有多个循环神经网络构成的图神经网络中,再通过激活函数进行激活循环神经网络,输出的结果即为路径特征,也即路径特征可以表示为:
Path Feature=selu(RNN(input))
其中,input=<Network Topology,link utilization>。selu表示激活函数,具体可表示为:
需要说明的是,在循环神经网络中,每个神经元点接收上一层神经元的输出值作为上一层神经元的输入值,并将输入值传送给下一层,所以在多层神经网络中,上层节点的输出和下层节点的输入之间具有一个函数关系,该函数关系可以是激活函数的函数关系。selu激活函数只是本申请实施例中其中一种示例,激活函数可以包括但不限于ELU函数、PReLU函数、ReLU函数、tanh函数、sigmod函数,本申请实施例不做任何限制。可以理解的是,路径特征为与网络拓扑和链路利用率相关的信息,因此路径特征的数据也与网络拓扑和链路利用率中的一项或多项有关,若有n个链路利用率,则相应地也可以得到n哥路径特征。
当通过由多个循环神经网络组成的图神经网络输出路径特征后,再将路径特征和链路利用率输入自变分自编码器(VAE)的编码器(encoder)中,可以得到有高斯分布的均值和方差的对数组成的中间结果,通过对这些中间结果按照正太分布N(0,1)随机采样,可以得到一系列数值,然后再将这些数值输入至VAE的decoder中,可以预测得到路径的第二QoS分布。路径的第二QoS分布可以包括路径的QoS分布的预测周期(EpochID)、网络拓扑中的每个节点到出口节点的路径上的节点标识(Path_NodeID)、出口节点标识(eNodeID)、分位点的QoS等信息中的一项或多项。其中,分位点的QoS表现为某个分位点的QoS值,比如说99分位点的时延值。其中,每个节点到出口节点的路径包括网络拓扑中的每个节点到出口节点的路径,以图4B为例,若节点7为出口节点,则路径包括节点0、节点1、节点3、节点7所组成的路径,节点0、节点1、节点2、节点5、节点7所组成的路径,节点0,节点1、节点2、节点6、节点7所组成的路径,节点0、节点2、节点5、节点7所组成的路径,节点0、节点2、节点6、节点7所组成的路径,节点0、节点4、节点2、节点5、节点7所组成的路径,节点0、节点4、节点2、节点7、节点7所组成的路径。分位点的QoS包括每个节点到出口节点的路径的QoS分位点。
需要说明的是,服务器可以在接收到当前利用率的基础上增加一定的预设流量,根据增量预设流量后的利用率预测路径的QoS分布。也即,路径的QoS分布是在网络拓扑的任意节点到出口节点的路径上增加预设流量的情况下预测的。需要说明的是,增加的预设流量可以根据实际需求进行设置,本申请实施例不做任何限制。
需要说明的是,如果想获取某一特定路径的QoS分布,则可以将该特定路径的标识(Path ID)输入至图神经网络中,则可以得到该特定路径的路径特征,再将该路径特征输入至VAE中,可以得到该特定路径的QoS分布。
步骤S403:服务器发送路径的第一QoS分布。
具体地,服务器可以向网络拓扑中的每个节点发送本节点到出口节点的路径的第一QoS分布,比如说服务器可以将边缘节点通往出口节点的所有路径的第一QoS分布向边缘节点发送,服务器还可以将非边缘节点通往出口节点的所有路径的第一QoS分布向非边缘节点发送。以图4B所示的网络拓扑为例,服务器可以向网络拓扑400中的节点0、节点1、节点2、节点3、节点4、节点5、节点6、节点7发送预测得到的本节点通往出口节点的路径的QoS分布。比如说,对于节点0来说,是节点0到出口节点的路径的QoS分布;对于节点1来说,是节点1到出口节点的路径的QoS分布。
步骤S404:存储路径的第一QoS分布。
具体地,当网络拓扑中每个节点收到来自服务器的路径的第一QoS分布后,可以将其存储在数据面中。请参见图4C,图4C是本申请实施例提供的一种存储路径的第一QoS分布的格式示意图,路径的第一QoS分布包括路径的QoS分布的预测周期(EpochID)、网络拓扑中的每个节点到出口节点的路径上的节点标识(Path_NodeID)、出口节点标识(eNodeID)、分位点的QoS等信息中的一项或多项。
从图4C可以看出,预测周期(EpochID)表示该路径的第一QoS分布是服务器根据网络拓扑中每个节点发送的连接信息和利用率信息进行预测的次数,比如说预测周期等于1可以表明在第一个周期内,节点将连接信息和利用率信息向服务器发送后,服务器根据其预测得到的;再比如说,预测周期等于1还可以表明,在节点测量连接信息或者利用率信息的第一个周期内,因连接信息或者利用率信息没有发生变化,所以没有向服务器发送连接信息或者利用率信息,则服务器在第二个周期内没有接收到来自节点发送的连接信息或者利用率信息,则服务器在第二个周期内没有进行预测;预测周期为2表明,服务器根据连接信息和利用率信息进行了第二次预测。
出口节点标识(eNodeID)表示网络拓扑中出口节点的标识,图4C中只示意出一个出口节点,可以理解的是,在网络拓扑中可以存在一个或多个出口节点。对于存在多个出口节点的情况,同样可以按照图4C所示的存储格式进行存储。
若是边缘节点接收来自服务器发送的路径的第一QoS分布,则路径N表明边缘节点到出口节点的第N条路径上的节点标识(Path_NodeID),比如说若路径N上的节点有边缘节点、第三节点、第二节点和出口节点,则路径N包括由边缘节点、第三节点、第二节点和出口节点构成的路径。若是非边缘节点接收来自服务器发送的路径的第一QoS分布,则路径N表明非边缘节点到出口节点的第N条路径上的节点标识(Path_NodeID),比如说若路径N上的节点有非边缘节点、第三节点、第二节点和出口节点,则路径N包括由非边缘节点、第三节点、第二节点和出口节点构成的路径。而路径N所对应的99%delay11表示QoS分位点的时延值,表明报文在路径N上传输时,99%的情况传输的时延值不超过delay11,delay11表示时延值;90%delay12表示报文在路径N上传输时,90%的情况传输的时延值不超过delay12,delay12表示时延值;50%delay13表示报文在路径N上传输时,50%的情况传输的时延值不超过delay13,delay13表示时延值。路径1和路径2所对应的QoS分位点的时延值可以参考对路径N所对应的QoS分位点的时延值的描述,此处不再赘述。
步骤S405:边缘节点根据路径的第一QoS分布确定用于传输业务的第一路径。
具体地,边缘节点接收来自报文源发送的报文,报文中携带有SLA保障率、时延累计值(Total delay)、目的地址等信息中的一项或多项。可选地,报文头部中封装有SLA保障率、当前时延累计值、目的地址等信息中的一项或多项。边缘节点可以基于业务报文中携带的目的地址计算或选择出口节点,然后再从已经存储的路径的第一QoS分布中确定边缘节点通往出口节点的路径,其中,通往出口节点的路径包括通往出口节点的每一条路径。举例来说,若业务报文中携带的目的地址为192.168.10.100,则根据192.168.10.100找到地址同样也为192.168.10.100的节点的标识,根据192.168.10.100对应的节点的标识找到通往该节点的每一条路径。
业务报文中携带有该业务的SLA保障率,节点可以从通往出口路由的路径中选择满足SLA保障率的路径作为第一路径,也即,第一路径为转发报文的目标路径。其中,第一路径包括第一路径上的每一个节点到出口节点的路径。举例来说,若通往出口路由的路径包括路径1、路径2、路径3和路径4,路径1的QoS分位点包括以下一种或多种:99%120ms、95%100ms、90%90ms;路径2的QoS分位点包括以下一种或多种:99%110ms、95%100ms、90%70ms;路径1的QoS分位点包括以下一种或多种:99%130ms、95%110ms、90%100ms;若业务报文的SLA保障率为报文的传输在95%的情况下不能超过100ms,在90%的情况下不能超过90ms,可以看出路径1和路径2满足业务报文的SLA保障率,但是路径2的时延值最小,则可以选择路径2作为第一路径。
在边缘节点确定第一路径后,可以获得第一路径上的所有节点的标识,以及第一路径所对应的预测周期,因此边缘节点可以将第一路径上所有节点的标识和该第一路径所对应的预测周期封装至报文中,可选地,可以封装至报文头部中。并且,还需要更新报文所携带的时延累计值,并将更新后的时延值封装至业务报文中,可选地,可以封装至业务报文的头部。也即,将边缘节点接收来自上一跳的节点(可以是报文源)发送的报文所需要的时延值更新至时延累计值中。比如说,在第10ms接收到上一跳的节点发送的报文,则将10ms更新至时延累计值中。最后,边缘节点向第一路径的下一跳节点(比如说非边缘节点)转发更新后的报文。
步骤S406,非边缘节点根据路径的第一QoS分布确定用于传输业务的目标路径。
具体地,非边缘节点可以接收到来自网络拓扑中的上一跳的节点(比如说边缘节点)发送的报文,报文中携带有以下一种或多种信息:时延累计值、第一路径、出口节点标识、SLA保障率、预测周期。非边缘节点根据SLA保障率和时延累计值计算得到剩余时延值,然后判断业务报文携带的第一路径是否还满足剩余时延值,若第一路径上的节点有边缘节点、第三节点、第二节点和出口节点,则第一路径的QoS分布是由边缘节点、第三节点、第二节点和出口节点构成的QoS分布。若非边缘节点为第三节点,则可以判断非边缘节点处存储的由第三节点、第二节点和出口节点构成的路径的QoS分布是否满足剩余时延值,若满足,则可以根据第一路径来转发报文;若不满足,则需要根据剩余时延值选择第二路径,将第二路径作为转发报文的目标路径。并将第二路径的相关信息替换报文中封装的第一路径的相关信息,同时更新报文中封装的时延累计值,并根据第二路径来转发报文。需要说明的是,“路径的QoS分布是否满足剩余时延值”可以理解为路径的QoS分布小于或者等于剩余时延值。
在一种可能的实现方式中,边缘节点需要判断业务报文中所携带的预测周期与节点在数据面中所存储的预测周期的数值是否一致,预测周期一致则说明路径的QoS分布在服务器侧没有更新,可以根据业务报文所携带的第一路径的相关信息转发报文;预测周期不一致则说明路径的QoS分布在服务器侧有更新,也即在接收来自上一跳的节点发送业务报文的时间内,该节点接收来自服务器最新预测的路径的QoS分布,该节点可以根据最新预测的路径的QoS分布来更新路径后再转发报文到下一跳。
可选地,节点可以根据业务报文所携带的SLA保障率和时延累计值计算剩余时延值,比如说若SLA保障率为报文的传输在95%的情况下不能超过100ms,在90%的情况下不能超过90ms,在当前的时延累计值为10ms的情况下,剩余时延值为在95%的情况下不能超过90ms,在90%的情况下不能超过80ms,则该节点从最新的预测周期(可以是预测周期的数值最大,或者接收到预测周期的时间最近)中选择与业务报文中所携带的出口节点标识一致的路径,在从该路径中选择满足或者优于在95%的情况下不能超过90ms,在90%的情况下不能超过80ms的路径作为第二路径,将第二路径作为转发报文的目标路径。
在非边缘节点确定第二路径后,可以获得第二路径上的所有节点的标识,以及第二路径所对应的预测周期,因此非边缘节点可以更新报文所携带的信息,将第二路径上所有节点的标识和该第二路径所对应的预测周期封装至报文中,可选地,可以封装至报文头部中。并且,还需要更新报文所携带的时延累计值,并将更新后的时延值封装至业务报文中,可选地,可以封装至业务报文的头部。也即,将非边缘节点接收来自上一跳的节点(可以是边缘节点)发送的报文所需要的时延值更新至时延累计值中。比如说,在第10ms接收到上一跳的节点发送的报文,则将10ms更新至时延累计值中,也即在当前时延累计值的基础上加上10ms。最后,非边缘节点向第二路径的下一跳节点转发更新后的报文。
举例来说,请参见图4D,图4D是本申请实施例提供的一种执行路径切换的过程中报文头部的信息变化示意图。从图4D可以看出,边缘节点接收到的业务报文的头部携带有SLA保障率、时延累计值(Total delay)等信息中的一项或多项。当边缘节点根据该业务报文的目的地址计算或选择出口节点的节点标识(eNodeID)后,可以将该出口节点的eNodeID封装至业务报文的头部。然后,边缘节点可以根据通往出口节点的eNodeID的所有路径的QoS分布,选择可以满足报文头部的SLA保障率的路径PathID,并将该路径的QoS分布的预测周期EpochID及路径PathID上所有节点的NodeID(R1_nodeID,…,Rn_nodeID)封装至业务报文的头部中。
需要说明的是,本申请实施例所提及的SLA保障率也可以称为SLA概率保障需求(SLA probability request),表明网络的QoS在某个概率情况下不能超过某个阈值,以QoS为时延为例,如业务报文在95的情况下不能超过100ms,在90%的情况下不能超过120ms等。可以理解的是,SLA保障率可以包括一项或多项信息。
请参见图5,图5是本申请实施例提供的一种路径预测的场景示意图。从图5可以看出,网络拓扑中的每一个节点(包括但不限于R1、R2、R3、R4和R5)可以周期性地测量利用率信息,并且还可以周期性地与相邻节点交互来获得连接信息。需要理解的是,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率。其中,假如周期为10毫秒,则可以每间隔10毫秒去测量链路利用率,以及每间隔10毫秒与相邻节点交互来获得网络拓扑。然后,再周期性地向服务器500发送链路利用率和网络拓扑。
服务器500接收到连接信息和利用率信息后,可以将其输入至由多个循环神经网络组成的图神经网络中,图神经网络输出得到关于连接信息和利用率信息的路径特征,然后再将路径特征和利用率信息输入至变分自编码器中,变分自编码器输出得到路径的QoS分布。然后,服务器500将当前预测周期EpochID,以及以某个节点为起点,以每一个出口节点为终点的所有路径的QoS分布发送给每个节点。其中,路径的QoS分布包括但不限于服务器500执行QoS分布的预测周期(EpochID)、预测得到每一条路径的路径标识(Path_NodeID)、出口路由的节点标识(eNodeID)、QoS的分位点等信息中的一项或多项。因为服务器500是第三次执行QoS分布的预测,所以EpochID=3;出口路由的节点标识eNodeID=R4;服务器500预测得到三条路径,分别是Path1(R1,R5,R4)、Path2(R1,R2,R5,R4)和Path3(R1,R2,R3,R4),其中,Path1的QoS分位点是99%delay=130ms以及90%delay=145ms,Path2的QoS分位点是95%delay=125ms以及90%delay=135ms,Path3的QoS分位点是99%delay=110ms以及90%delay=125ms。Path1还可以包括路由节R5到节点R4的路径的QoS分位点;Path2还可以包括节点R2到节点R4的时延值,节点R5到节点R4的时延值;Path3还可以包括节点R2到节点R4的时延值,节点R3到节点R4的时延值。
当网络拓扑中的每一个节点(R1,R2,R3,R4、R5)接收来自服务器500发送的本节点到出口节点的路径的QoS分布后,可以将其存储在数据面503中。
源地址Source501根据目的地址Destination将业务报文发送给节点R1,R2,R3,R4和R5所构成的网络拓扑中后,节点R1首先接收到业务报文,其中,业务报文的头部携带有SLA保障率,SLA保障率具体表现为95%情况下时延不超过120ms,90%的情况下时延不超过140ms。在节点R1接收到业务报文后,根据业务报文的目的地址查询或计算得到出口节点的标识eNodeID=R4。然后,节点R1再根据SLA保障率,以及节点R1通往节点R4的路径Path1、Path2和Path3的QoS分布,选择满足SLA保障率的路径为Path3,并将当前预测周期EpochID=3和Path3上所有节点,即R1、R2、R3、R4封装至业务报文的头部,并更新报文头部的时延累计值Total_delay,即从源地址Source501到节点R1的时延。
节点R1根据路径Path3(R1,R2,R3,R4)将更新后的报文向节点R2发送,在节点R2接收到上述报文后,根据SLA保障率和Total_delay计算剩余时延,并判断报文头部封装的路径Path3是否可以满足要求,也即若Total_delay=40ms,SLA保障率表现为在90%的情况下时延不超过140ms,则剩余时延的最大值可以为100ms。因为Path3还可以包括节点R2到节点R4的路径的QoS分布,节点R3到节点R4的路径的QoS分布。因此,可以根据剩余时延的最大值100ms,判断节点R2到节点R4的路径的QoS分布是否满足,若R2到R4的路径的QoS分布具体表示为是99%delay=95ms以及90%delay=105ms,可以看出不太满足剩余时延的最大值100ms的要求,则需要重新选择路径来转发业务报文,在转发业务报文之前,需要更新封装在报文头部的路径,也即将重新选择的路径的相关信息(比如说EpochID、路径上的节点标识等)替换报文中原有路径的信息。可以理解的是,为了保障业务报文在网络中准确且高效地传输,对于即将达到SLA保障率的路径可以认为是不满足SLA保障率的路径,比如99%delay=95ms即将满足剩余时延的最大值100ms。若R2到R4的路径的QoS分布具体表示为是99%delay=75ms以及90%delay=85ms,可以看出满足剩余时延的最大值100ms的要求,则可以根据路径Path3来转发业务报文,节点2将业务报文转发至节点3。当节点2的下一跳节点接收到业务报文后,可以参考节点2的方式来判断业务报文中封装的路径是否满足SLA保障率,直至将业务报文转发至目的地址Destination处。
在其中一种可能的实现方式中,节点R2可以判断业务报文的头部封装的预测周期EpochID与自己在数据面存储的预测周期EpochID是否一致,若一致,可以理解为两个地方的EpochID的数值相同,则根据路径Path3将报文向节点R3发送。节点R2在将业务报文转发至节点R3之前,需要更新报文头部的累计时延Total_delay,也即从源地址Source501到节点R2的时延。若不一致,可以理解为节点R2存储的EpochID比业务报文的头部携带的EpochID的数值大,则节点R2根据SLA保障率和Total_delay计算剩余时延,并根据剩余时延在该EpochID所对应的路径的QoS分布中选择满足要求的路径,并将该路径的相关信息(比如说EpochID、路径上的节点标识等)替换报文中原有路径的信息,封装至报文头部中。节点R2在将业务报文根据更新后的路径转发至下一跳节点之前,需要更新报文头部的累计时延Total_delay,也即从源地址Source501到节点R2的时延。当节点2的下一跳节点接收到业务报文后,可以参考节点2的方式来判断业务报文中封装的路径是否满足SLA保障率,直至将业务报文转发至目的地址Destination处。
请参见图6,图6是本申请实施例提供的另一种路径预测系统的结构示意图。路径预测系统600包括网络测量模块601,QoS预测模块602和网络控制模块603。其中:
网络测量模块601是具有数据处理能力和数据收发能力的电子设备,用于获得连接信息和利用率信息,将连接信息和利用率信息向服务器发送,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率。
QoS预测模块602是具有数据处理能力和数据收发能力的电子设备,比如说服务器或者多个服务器组成的服务器集群,用于接收来自网络拓扑中每个节点发送的连接信息和利用率信息,还用于基于连接信息和利用率信息通过人工智能算法预测得到路径的第二QoS分布,其中,路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的QoS;还用于向网络拓扑中的每个节点发送本节点到出口节点的路径的第一QoS分布。比如说,QoS预测模块602向第一节点发送第一节点到出口节点的路径的QoS分布。
在一种可能的实现方式中,人工智能算法包括图神经网络和变分自编码器。
在一种可能的实现方式中,QoS预测模块602将连接信息和利用率信息输入图神经网络中得到路径特征,路径特征包括网络拓扑中的每个节点到出口节点的路径的特征;
QoS预测模块602将路径特征和链路利用率输入变分自编码器中得到路径的第二QoS分布。
网络控制模块603,用于接收来自服务器的路径的第一QoS分布;还用于根据路径的第一QoS分布确定用于传输业务的目标路径,控制网络拓扑中的节点根据目标路径转发报文其中,业务的目的节点为出口节点。其中,QoS分布包括QoS主要分位点(比如99分位点、95分位点、90分位点等)的时延值。
在一种可能的实现方式中,网络控制模块603接收第一报文,第一报文携带有服务级别协议SLA保障率或时延累计值中的一种或多种,时延累计值用于确定满足SLA保障率的剩余时延,剩余时延用于转发报文的节点从多条路径中选择满足SLA保障率的路径。
在一种可能的实现方式中,网络控制模块603基于来自报文源发送的报文中的目的地址确定目的节点;
网络控制模块603根据路径的QoS分布选择到达目的节点,且满足SLA保障率的目标路径。
在一种可能的实现方式中,网络控制模块603接收第二报文,第二报文包括时延累计值、第一路径、SLA保障率中的一种或多种,其中,第一路径为第一节点的上一跳的节点确定的满足SLA保障率的路径;
网络控制模块603根据路径的第一QoS分布确定用于传输业务的目标路径,包括:
网络控制模块603根据时延累计值和SLA保障率确定业务传输的剩余时延值;
若第一路径不满足剩余时延值,则网络控制模块603根据剩余时延值和路径的第一QoS分布确定用于传输业务的目标路径,其中,目标路径满足SLA保障率。
需要说明的是,各个单元的实现还可以对应参照图4A所示的方法实施例的相应描述。
请参见图7,图7是本申请实施例提供的一种第一节点的结构示意图。第一节点700可以为节点中的一个器件,例如芯片或者集成电路等。第一节点700可以包括发送单元701、接收单元702和处理单元703。该第一节点700用于实现前述的路径预测方法,例如图4A的路径预测方法。
可以理解的,本申请各个装置实施例中,对多个单元或者模块的划分仅是一种根据功能进行的逻辑划分,不作为对装置具体的结构的限定。在具体实现中,其中部分功能模块可能被细分为更多细小的功能模块,部分功能模块也可能组合成一个功能模块,但无论这些功能模块是进行了细分还是组合,第一节点700在路径预测的过程中所执行的大致流程是相同的。例如,上述第一节点700中的发送单元701、接收单元702也可以合并为通信单元。通常,每个单元都对应有各自的程序代码(或者说程序指令),这些单元各自对应的程序代码在处理器上运行时,使得该单元执行相应的流程从而实现相应功能。
在一些可能的实现方式中,该第一节点可以为图4A所示实施例中的边缘节点,其中,各个单元的描述如下:
发送单元701,用于向服务器发送连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
接收单元702,用于接收来自服务器的路径的第一QoS分布,其中,路径的第一QoS分布为基于人工智能算法对来自网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,路径的第一QoS分布包括第一节点到出口节点的路径的QoS;
处理单元703,用于根据路径的第一QoS分布确定用于传输业务的目标路径,其中,业务的目的节点为出口节点。
在一种可能的实施方式中,接收单元702还用于:
接收来自报文源发送的报文,报文携带有服务级别协议SLA保障率或时延累计值中的一种或多种,时延累计值用于确定满足SLA保障率的剩余时延,剩余时延用于转发报文的节点从多条路径中选择满足SLA保障率的路径。
在一种可能的实施方式中,处理单元703还用于:
基于来自报文源发送的报文中的目的地址确定目的节点;
根据路径的第一QoS分布选择到达目的节点,且满足SLA保障率的目标路径。
在一种可能的实施方式中,处理单元701,还用于更新时延累计值;
处理单元,还用于将更新后的时延累计值和目标路径的信息封装至报文中;
发送单元701,还用于第一节点向目标路径上的下一跳发送报文。
在一种可能的实施方式中,路径的第一QoS分布是在第一节点到出口节点的路径上增加预设流量的情况下预测的。
在一些可能的实现方式中,该路径预测装置可以为图4A所示实施例中的非边缘节点,其中,各个单元的描述如下:
发送单元701,用于向服务器发送连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
接收单元702,用于接收来自服务器的路径的第一QoS分布,其中,路径的第一QoS分布为基于人工智能算法对来自网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,路径的第一QoS分布包括第一节点到出口节点的路径的QoS;
处理单元703,用于根据路径的第一QoS分布确定用于传输业务的目标路径,其中,业务的目的节点为出口节点。
在一种可能的实施方式中,接收单元702还用于:
接收上一跳节点发送的报文,报文包括时延累计值、第一路径、SLA保障率中的一种或多种,其中,第一路径为第一节点的上一跳的节点确定的满足SLA保障率的路径;
处理单元703还用于:
根据时延累计值和SLA保障率确定业务传输的剩余时延值;
若第一路径不满足剩余时延值,则根据剩余时延值和路径的第一QoS分布确定用于传输业务的目标路径,其中,目标路径满足SLA保障率。
在一种可能的实施方式中,处理单元703,用于更新时延累计值;
处理单元,还用于将更新后的时延累计值和目标路径的信息封装至报文中;
发送单元701,还用于第一节点向目标路径上的下一跳发送报文。
在一种可能的实施方式中,路径的第一QoS分布是在第一节点到出口节点的路径上增加预设流量的情况下预测的。
请参见图8,图8是本申请实施例提供的一种路径预测装置的结构示意图。路径预测装置800可以为节点,也可以为节点中的一个器件,例如芯片或者集成电路等。路径预测装置800可以包括接收单元801、处理单元802和发送单元803。该路径预测装置800用于实现前述的路径预测方法,例如图4A任意一个实施例的路径预测方法。
可以理解的,本申请各个装置实施例中,对多个单元或者模块的划分仅是一种根据功能进行的逻辑划分,不作为对装置具体的结构的限定。在具体实现中,其中部分功能模块可能被细分为更多细小的功能模块,部分功能模块也可能组合成一个功能模块,但无论这些功能模块是进行了细分还是组合,路径预测装置800在路径预测的过程中所执行的大致流程是相同的。例如,上述路径预测装置800中的接收单元801、发送单元803也可以合并为通信单元。通常,每个单元都对应有各自的程序代码(或者说程序指令),这些单元各自对应的程序代码在处理器上运行时,使得该单元执行相应的流程从而实现相应功能。
在一些可能的实现方式中,该路径预测装置可以为图4A所示实施例中的服务器,其中,各个单元的描述如下:
接收单元801,用于接收来自网络拓扑中每个节点发送的连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
处理单元802,用于基于连接信息和利用率信息通过人工智能算法预测得到路径的第二QoS分布,其中,路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的QoS;
发送单元803,用于向网络拓扑中的第一节点发送第一节点到出口节点的路径的第一QoS分布,其中,第一节点为网络拓扑中的任意一个节点;第一QoS分布为第二QoS分布中第一节点到出口节点的路径的QoS。
在一种可能的实施方式中,人工智能算法包括图神经网络和变分自编码器。
在一种可能的实施方式中,处理单元802还用于:
将连接信息和利用率信息输入图神经网络中得到路径特征,路径特征包括网络拓扑中的每个节点到出口节点的路径的特征;
将路径特征和链路利用率输入变分自编码器中得到路径的第二QoS分布。
在一种可能的实施方式中,路径的QoS分布包括第一节点到出口节点的路径上增加业务的流量时的QoS。
请参见图9,图9是本申请实施例提供的一种第一节点的结构示意图。第一节点900可以包括至少一个存储器901和至少一个处理器902。可选的,还可以包含总线903。进一步可选的,还可以包括通信接口904,其中,存储器901、处理器902和通信接口904通过总线903相连。
其中,存储器901用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器901可以是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read onlymemory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)等等中的一种或者多种的组合。
处理器902是进行算术运算和/或逻辑运算的模块,具体可以是中央处理器(central processing unit,CPU)、图片处理器(graphics processing unit,GPU)、微处理器(microprocessor unit,MPU)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)、复杂可编程逻辑器件(Complex programmable logic device,CPLD)等处理模块中的一种或者多种的组合。
通信接口904用于接收外部发送的数据和/或向外部发送数据,可以为包括诸如以太网电缆等的有线链路接口,也可以是无线链路(Wi-Fi、蓝牙、通用无线传输等)接口。可选的,通信接口904还可以包括与接口耦合的发射器(如射频发射器、天线等),或者接收器等。
该第一节点900中的处理器902用于读取存储器901中存储的计算机程序,用于执行前述的路径预测方法,例如图4A任意一个实施例所描述的路径预测方法。
在一些可能的实现方式中,该第一节点900可以为图4A所示实施例中的边缘节点,该第一节点900中的处理器902用于读取存储器901中存储的计算机程序,用于执行以下操作:
向服务器发送连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
接收来自服务器的路径的第一QoS分布,其中,路径的第一QoS分布为基于人工智能算法对来自网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,路径的第一QoS分布包括第一节点到出口节点的路径的QoS;
根据路径的第一QoS分布确定用于传输业务的目标路径,其中,业务的目的节点为出口节点。
在一种可能的实施方式中,处理器902还用于:
接收来自报文源发送的报文,报文携带有服务级别协议SLA保障率或时延累计值中的一种或多种,时延累计值用于确定满足SLA保障率的剩余时延,剩余时延用于转发报文的节点从多条路径中选择满足SLA保障率的路径。
在一种可能的实施方式中,处理器902还用于:
基于来自报文源发送的报文中的目的地址确定目的节点;
根据路径的第一QoS分布选择到达目的节点,且满足SLA保障率的目标路径。
在一种可能的实施方式中,处理器902还用于:
更新时延累计值;
将更新后的时延累计值和目标路径的信息封装至报文中;
向目标路径上的下一跳节点发送报文。
在一种可能的实施方式中,路径的第一QoS分布包括第一节点到出口节点的路径上增加业务的流量时的QoS。
在一些可能的实现方式中,该第一节点900可以为图4A所示实施例中的非边缘节点,该第一节点900中的处理器902用于读取存储器901中存储的计算机程序,用于执行以下操作:
向服务器发送连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
接收来自服务器的路径的第一QoS分布,其中,路径的第一QoS分布为基于人工智能算法对来自网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,路径的第一QoS分布包括第一节点到出口节点的路径的QoS;
根据路径的第一QoS分布确定用于传输业务的目标路径,其中,业务的目的节点为出口节点。
在一种可能的实施方式中,处理器902还用于:
接收上一跳节点发送的报文,报文包括时延累计值、第一路径、SLA保障率中的一种或多种,其中,第一路径为第一节点的上一跳的节点确定的满足SLA保障率的路径;
根据时延累计值和SLA保障率确定业务传输的剩余时延值;
若第一路径不满足剩余时延值,则根据剩余时延值和路径的第一QoS分布确定用于传输业务的目标路径,其中,目标路径满足SLA保障率。
在一种可能的实施方式中,处理器902还用于:
更新时延累计值;
将更新后的时延累计值和目标路径的信息封装至报文中;
向目标路径上的下一跳节点发送报文。
在一种可能的实施方式中,路径的第一QoS分布是在第一节点到出口节点的路径上增加预设流量的情况下预测的。
请参见图10,图10是本申请实施例提供的一种服务器的结构示意图。服务器100可以包括至少一个存储器1001和至少一个处理器1002。可选的,还可以包含总线1003。进一步可选的,还可以包括通信接口1004,其中,存储器1001、处理器1002和通信接口1004通过总线1003相连。
其中,存储器1001用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器1001可以是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read onlymemory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)等等中的一种或者多种的组合。
处理器1002是进行算术运算和/或逻辑运算的模块,具体可以是中央处理器(central processing unit,CPU)、图片处理器(graphics processing unit,GPU)、微处理器(microprocessor unit,MPU)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)、复杂可编程逻辑器件(Complex programmable logic device,CPLD)等处理模块中的一种或者多种的组合。
通信接口1004用于接收外部发送的数据和/或向外部发送数据,可以为包括诸如以太网电缆等的有线链路接口,也可以是无线链路(Wi-Fi、蓝牙、通用无线传输等)接口。可选的,通信接口1004还可以包括与接口耦合的发射器(如射频发射器、天线等),或者接收器等。
该装置100中的处理器1002用于读取存储器1001中存储的计算机程序,用于执行以下操作:
接收来自网络拓扑中每个节点发送的连接信息和利用率信息,其中,连接信息用于描述本节点与相邻节点的连接情况,利用率信息用于描述连接本节点的链路的利用率;
基于连接信息和利用率信息通过人工智能算法预测得到路径的第二QoS分布,其中,路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的QoS;
向网络拓扑中的第一节点发送第一节点到出口节点的路径的第一QoS分布,其中,第一节点为网络拓扑中的任意一个节点;第一QoS分布为第二QoS分布中第一节点到出口节点的路径的QoS。在一种可能的实施方式中,人工智能算法包括图神经网络和变分自编码器。
在一种可能的实施方式中,处理器1002还用于将连接信息和利用率信息输入图神经网络中得到路径特征,路径特征包括网络拓扑中的每个节点到出口节点的路径的特征;
将路径特征和链路利用率输入变分自编码器中得到路径的第二QoS分布。
在一种可能的实施方式中,路径的第一QoS分布是在第一节点到出口节点的路径上增加预设流量的情况下预测的。需要说明的是,各个操作的实现还可以对应参照图4A所示的方法实施例的相应描述。
本申请实施例还提供一种芯片系统,所述芯片系统包括至少一个处理器,存储器和接口电路,所述存储器、所述收发器和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有计算机程序;所述计算机程序被所述处理器执行时,图4A所示的方法流程得以实现。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当上述计算机程序在一个或多个处理器上运行时,图4A所示的方法流程得以实现。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在一个或多个处理器上运行时,可以执行如图4A所示的任意一种实施例所描述的路径预测方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来计算机程序相关的硬件完成,该计算机程序可存储于计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储计算机程序代码的介质。
Claims (20)
1.一种路径预测方法,其特征在于,应用于第一节点,所述第一节点为网络拓扑中的节点,所述方法包括:
所述第一节点向服务器发送连接信息和利用率信息,其中,所述连接信息用于描述本节点与相邻节点的连接情况,所述利用率信息用于描述连接所述本节点的链路的利用率;
所述第一节点接收来自所述服务器的路径的第一QoS分布,其中,所述路径的第一QoS分布为基于人工智能算法对来自所述网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,所述路径的第一QoS分布包括所述第一节点到出口节点的路径的QoS;
所述第一节点根据所述路径的第一QoS分布确定用于传输业务的目标路径,其中,所述业务的目的节点为所述出口节点。
2.根据权利要求1所述的方法,其特征在于,所述第一节点为边缘节点;所述第一节点接收来自所述服务器的路径的第一QoS分布之后,所述第一节点根据所述路径的第一QoS分布确定用于传输业务的目标路径之前,还包括:
所述第一节点接收来自报文源发送的报文,所述报文携带有服务级别协议SLA保障率或时延累计值中的一种或多种,所述时延累计值用于确定满足所述SLA保障率的剩余时延,所述剩余时延用于转发所述报文的节点从多条路径中选择满足所述SLA保障率的路径。
3.根据权利要求2所述的方法,其特征在于,所述第一节点根据所述路径的第一QoS分布中确定用于传输业务的目标路径,包括:
所述第一节点基于来自报文源发送的报文中的目的地址确定目的节点;
所述第一节点根据所述路径的第一QoS分布选择到达所述目的节点,且满足所述SLA保障率的目标路径。
4.根据权利要求1所述的方法,其特征在于,所述第一节点为非边缘节点;所述第一节点接收来自所述服务器的路径的第一QoS分布之后,所述第一节点根据所述路径的第一QoS分布确定用于传输业务的目标路径之前,还包括:
所述第一节点接收上一跳节点发送的报文,所述报文包括时延累计值、第一路径、SLA保障率中的一种或多种,其中,所述第一路径为所述第一节点的上一跳的节点确定的满足所述SLA保障率的路径;
所述第一节点根据所述路径的第一QoS分布确定用于传输业务的目标路径,包括:
所述第一节点根据所述时延累计值和所述SLA保障率确定所述业务传输的剩余时延值;
若所述第一路径不满足所述剩余时延值,则根据所述剩余时延值和所述路径的第一QoS分布确定用于传输业务的目标路径,其中,所述目标路径满足所述SLA保障率。
5.根据权利要求2-4任一项所述的方法,其特征在于,所述第一节点根据所述路径的第一QoS分布中确定用于传输业务的目标路径之后,还包括:
所述第一节点更新所述时延累计值;
所述第一节点将更新后的所述时延累计值和所述目标路径的信息封装至所述报文中;
所述第一节点向所述目标路径上的下一跳节点发送所述报文。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述路径的第一QoS分布是在所述第一节点到所述出口节点的路径上增加预设流量的情况下预测的。
7.一种路径预测方法,其特征在于,所述方法包括:
接收来自网络拓扑中每个节点发送的连接信息和利用率信息,其中,所述连接信息用于描述本节点与相邻节点的连接情况,所述利用率信息用于描述连接所述本节点的链路的利用率;
基于所述连接信息和所述利用率信息通过人工智能算法预测得到路径的第二QoS分布,其中,所述路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的QoS;
向所述网络拓扑中的第一节点发送所述第一节点到所述出口节点的所述路径的第一QoS分布,其中,所述第一节点为所述网络拓扑中的任意一个节点;所述路径的第一QoS分布为所述路径的第二QoS分布中所述第一节点到出口节点的路径的QoS。
8.根据权利要求7所述的方法,其特征在于,所述人工智能算法包括图神经网络和变分自编码器。
9.根据权利要求8所述的方法,其特征在于,所述基于所述连接信息和所述利用率信息通过人工智能算法得到路径的第二QoS分布,包括:
将所述连接信息和所述利用率信息输入所述图神经网络中得到路径特征,所述路径特征包括所述网络拓扑中的每个节点到所述出口节点的路径的特征;
将所述路径特征和所述链路利用率输入所述变分自编码器中得到所述路径的第二QoS分布。
10.根据权利要求7-9任一项所述的方法,其特征在于,所述路径的第一QoS分布是在所述第一节点到所述出口节点的路径上增加预设流量的情况下预测的。
11.一种第一节点路径预测装置,其特征在于,包括:
发送单元,用于向服务器发送连接信息和利用率信息,其中,所述连接信息用于描述本节点与相邻节点的连接情况,所述利用率信息用于描述连接所述本节点的链路的利用率;
接收单元,用于接收来自所述服务器的路径的第一QoS分布,其中,所述路径的第一QoS分布为基于人工智能算法对来自所述网络拓扑中的每个节点的连接信息和利用率信息进行预测得到的,所述路径的第一QoS分布包括所述第一节点到出口节点的路径的QoS;
处理单元,用于根据所述路径的第一QoS分布确定用于传输业务的目标路径,其中,所述业务的目的节点为所述出口节点。
12.根据权利要求11所述的装置,其特征在于,所述第一节点为边缘节点;所述接收单元还用于:
接收来自报文源发送的报文,所述报文携带有服务级别协议SLA保障率或时延累计值中的一种或多种,所述时延累计值用于确定满足所述SLA保障率的剩余时延,所述剩余时延用于转发所述报文的节点从多条路径中选择满足所述SLA保障率的路径。
13.根据权利要求12所述的装置,其特征在于,所述处理单元还用于:
基于来自报文源发送的报文中的目的地址确定目的节点;
根据所述路径的第一QoS分布选择到达所述目的节点,且满足所述SLA保障率的目标路径。
14.根据权利要求11所述的装置,其特征在于,所述第一节点为非边缘节点;所述接收单元还用于:
接收上一跳节点发送的报文,所述报文包括时延累计值、第一路径、SLA保障率中的一种或多种,其中,所述第一路径为所述第一节点的上一跳的节点确定的满足所述SLA保障率的路径;
所述处理单元还用于:
根据所述时延累计值和所述SLA保障率确定所述业务传输的剩余时延值;
若所述第一路径不满足所述剩余时延值,则根据所述剩余时延值和所述路径的第一QoS分布确定用于传输业务的目标路径,其中,所述目标路径满足所述SLA保障率。
15.根据权利要求12-14任一项所述的装置,其特征在于,所述处理单元,还用于更新所述时延累计值;
所述处理单元,还用于将更新后的所述时延累计值和所述目标路径的信息封装至所述报文中;
所述发送单元,还用于所述第一节点向所述目标路径上的下一跳发送所述报文。
16.一种路径预测装置,其特征在于,包括:
接收单元,用于接收来自网络拓扑中每个节点发送的连接信息和利用率信息,其中,所述连接信息用于描述本节点与相邻节点的连接情况,所述利用率信息用于描述连接所述本节点的链路的利用率;
处理单元,用于基于所述连接信息和所述利用率信息通过人工智能算法预测得到路径的第二QoS分布,其中,所述路径的第二QoS分布包括网络拓扑中的每个节点到出口节点的路径的QoS;
发送单元,用于向所述网络拓扑中的第一节点发送所述第一节点到所述出口节点的所述路径的第一QoS分布,其中,所述第一节点为所述网络拓扑中的任意一个节点;所述第一QoS分布为所述第二QoS分布中所述第一节点到出口节点的路径的QoS。
17.根据权利要求16所述的装置,其特征在于,所述人工智能算法包括图神经网络和变分自编码器。
18.根据权利要求17所述的装置,其特征在于,所述处理单元还用于:
将所述连接信息和所述利用率信息输入所述图神经网络中得到路径特征,所述路径特征包括所述网络拓扑中的每个节点到所述出口节点的路径的特征;
将所述路径特征和所述链路利用率输入所述变分自编码器中得到所述路径的第二QoS分布。
19.一种第一节点,其特征在于,所述第一节点包括至少一个处理器和通信接口,所述至少一个处理器用于调用至少一个存储器中存储的计算机程序,以使得所述第一节点实现如权利要求1-6中任一项所述的方法。
20.一种服务器,其特征在于,所述服务器至少一个处理器和通信接口,所述至少一个处理器用于调用至少一个存储器中存储的计算机程序,以使得所述服务器实现如权利要求7-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011312566.XA CN114598614A (zh) | 2020-11-20 | 2020-11-20 | 一种路径预测方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011312566.XA CN114598614A (zh) | 2020-11-20 | 2020-11-20 | 一种路径预测方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114598614A true CN114598614A (zh) | 2022-06-07 |
Family
ID=81812499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011312566.XA Pending CN114598614A (zh) | 2020-11-20 | 2020-11-20 | 一种路径预测方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114598614A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115396366A (zh) * | 2022-09-02 | 2022-11-25 | 湖南师范大学 | 基于图注意力网络的分布式智能路由方法 |
CN116155818A (zh) * | 2023-04-17 | 2023-05-23 | 中国工商银行股份有限公司 | 路由调度方法、系统及存储介质 |
-
2020
- 2020-11-20 CN CN202011312566.XA patent/CN114598614A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115396366A (zh) * | 2022-09-02 | 2022-11-25 | 湖南师范大学 | 基于图注意力网络的分布式智能路由方法 |
CN115396366B (zh) * | 2022-09-02 | 2023-07-25 | 湖南师范大学 | 基于图注意力网络的分布式智能路由方法 |
CN116155818A (zh) * | 2023-04-17 | 2023-05-23 | 中国工商银行股份有限公司 | 路由调度方法、系统及存储介质 |
CN116155818B (zh) * | 2023-04-17 | 2023-06-20 | 中国工商银行股份有限公司 | 路由调度方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Balasubramanian et al. | An SDN architecture for time sensitive industrial IoT | |
US10924393B2 (en) | Per-flow call admission control using a predictive model to estimate tunnel QoS in SD-WAN networks | |
Miao et al. | Stochastic performance analysis of network function virtualization in future internet | |
EP3047609B1 (en) | Systems and method for reconfiguration of routes | |
EP3537656B1 (en) | Network control method, apparatus and system, storage medium | |
EP3748922B1 (en) | Partial reroute of traffic onto a backup tunnel using predicitve routing | |
Ferriol-Galmés et al. | Building a digital twin for network optimization using graph neural networks | |
Głąbowski et al. | Modelling overflow systems with distributed secondary resources | |
Fiandrino et al. | A machine-learning-based framework for optimizing the operation of future networks | |
CN114598614A (zh) | 一种路径预测方法及相关装置 | |
US20210231447A1 (en) | Method and vehicle manager for managing remote-controlled vehicle | |
US11470005B2 (en) | Congestion detection using machine learning on arbitrary end-to-end paths | |
CN114268537A (zh) | 面向确定性网络的网络切片生成及动态配置系统及方法 | |
Boutaba et al. | Managing virtualized networks and services with machine learning | |
Huang et al. | Machine learning for broad-sensed internet congestion control and avoidance: A comprehensive survey | |
Kolomvatsos et al. | Uncertainty-driven ensemble forecasting of QoS in Software Defined Networks | |
CN114205300B (zh) | 一种能够在流量信息不完整情况下保证coflow传输截止期限的流量调度方法 | |
Arzo et al. | Intelligent qos agent design for qos monitoring and provisioning in 6g network | |
Hassen et al. | Improved Exploration Strategy for Q-Learning Based Multipath Routing in SDN Networks | |
Ke et al. | Internet-of-Things monitoring system of robot welding based on software defined networking | |
EP4111308A1 (en) | Device and method for load balancing | |
WO2022073583A1 (en) | Distributed traffic engineering at edge devices in a computer network | |
Darmani et al. | QoS-enabled TCP for software-defined networks: a combined scheduler-per-node approach | |
Zhang et al. | Towards automated network management: Learning the optimal protocol selection | |
Messaoudi et al. | GNN-Based SDN Admission Control in Beyond 5G Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |