CN115037667B - 一种细粒度网络态势感知与源路由智能优化方法与装置 - Google Patents
一种细粒度网络态势感知与源路由智能优化方法与装置 Download PDFInfo
- Publication number
- CN115037667B CN115037667B CN202210953069.0A CN202210953069A CN115037667B CN 115037667 B CN115037667 B CN 115037667B CN 202210953069 A CN202210953069 A CN 202210953069A CN 115037667 B CN115037667 B CN 115037667B
- Authority
- CN
- China
- Prior art keywords
- network
- data packet
- target
- transmitted
- routing
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/121—Shortest path evaluation by minimising delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种细粒度网络态势感知与源路由智能优化方法与装置,涉及通信的技术领域,包括:获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息,利用深度强化学习算法对状态信息和属性信息进行处理,得到待传送数据包的路由路径。深度强化学习算法中,每条可选路由路径的奖励为可选路由路径上每个网络设备的奖励之和,且每个网络设备的奖励为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数,因此,本发明方法可以在最小化最大链路利用率和路径时延的情况下,计算出最优路由路径,从而不会导致大量数据流堆积在同一路径,避免出现网络拥塞的问题,保证了数据包传输的及时性,进而提升了整体网络传输性能。
Description
技术领域
本发明涉及通信的技术领域,尤其是涉及一种细粒度网络态势感知与源路由智能优化方法与装置。
背景技术
传统网络测量方法包括Ping协议、IP测量协议(IPMP)、MPLS丢包/延迟测量协议等,基于以上测量方法,传统网络管控技术停留在网络设备与网络基础资源的粗粒度感知与调控的层面上,当网络出现如网络拥塞、单点故障等突发状况时,集中式的控制单元无法快速地根据底层网络资源与网络设备的信息变化进行及时有效的控制规则适变与下发,甚至需要进行人工调校,即便网络管理员可以迅速的做出反应,网络也会产生极高的突发处理、响应时间,这将会导致网络的传输性能严重下降,以至无法按时按需地完成数据包的传输。
发明内容
本发明的目的在于提供一种细粒度网络态势感知与源路由智能优化方法与装置,避免出现网络拥塞的问题,保证了数据包传输的及时性,进而提升了整体网络传输性能。
第一方面,本发明提供一种细粒度网络态势感知与源路由智能优化方法,包括:获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息;其中,所述属性信息包括:源IP地址和目的IP地址;利用深度强化学习算法对所述状态信息和所述属性信息进行处理,得到所述待传送数据包的目标路由路径;其中,所述待传送数据包所处的网络设备为所述深度强化学习算法中智能体的状态,所述待传送数据包下一跳网络设备的端口编号为所述智能体的动作;每条可选路由路径的奖励为所述可选路由路径上每个网络设备的奖励之和,每个所述网络设备的奖励为所述网络设备的节点时延与所述目标网络的最大链路利用率的加权和的相反数。
在可选的实施方式中,获取目标网络内所有网络设备的状态信息,包括:基于带内遥测方法在所述目标网络中传送多个数据包;其中,所述多个数据包的路由路径可覆盖所述目标网络中的所有网络设备;接收每个数据包接收端的前一跳网络设备反馈的其所属路由路径中所有网络设备的INT元数据;基于所有所述INT元数据确定所述目标网络内所有网络设备的状态信息。
在可选的实施方式中,每个所述网络设备的INT元数据包括:所述网络设备的编号、所述网络设备的节点时延和所述网络设备待传输数据包的字节数。
在可选的实施方式中,所述目标网络的最大链路利用率表示所述目标网络中所有网络设备的链路利用率中的最大值;其中,目标网络设备的链路利用率通过以下算式进行计算:;其中,表示所述目标网络设备的链路利用率,B表示所述目标网络设备待传输数据包的字节数,表示所述目标网络设备的节点时延,所述目标网络设备表示所述目标网络中的任一网络设备。
在可选的实施方式中,在得到所述待传送数据包的目标路由路径之后,还包括:将所述目标路由路径以源路由的方式下发至所述待传送数据包的起始交换节点,以使所述待传送数据包以源路由的方式在所述目标网络中按照所述目标路由路径进行转发。
第二方面,本发明提供一种细粒度网络态势感知与源路由智能优化装置,包括:获取模块,用于获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息;其中,所述属性信息包括:源IP地址和目的IP地址;处理模块,用于利用深度强化学习算法对所述状态信息和所述属性信息进行处理,得到所述待传送数据包的目标路由路径;其中,所述待传送数据包所处的网络设备为所述深度强化学习算法中智能体的状态,所述待传送数据包下一跳网络设备的端口编号为所述智能体的动作;每条可选路由路径的奖励为所述可选路由路径上每个网络设备的奖励之和,每个所述网络设备的奖励为所述网络设备的节点时延与所述目标网络的最大链路利用率的加权和的相反数。
在可选的实施方式中,获取模块包括:传送单元,用于基于带内遥测方法在所述目标网络中传送多个数据包;其中,所述多个数据包的路由路径可覆盖所述目标网络中的所有网络设备;接收单元,用于接收每个数据包接收端的前一跳网络设备反馈的其所属路由路径中所有网络设备的INT元数据;确定单元,用于基于所有所述INT元数据确定所述目标网络内所有网络设备的状态信息。
第三方面,本发明提供一种电子设备,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述实施方式中任一项所述的细粒度网络态势感知与源路由智能优化方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现前述实施方式中任一项所述的细粒度网络态势感知与源路由智能优化方法。
本发明提供了一种细粒度网络态势感知与源路由智能优化方法,包括:获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息;其中,属性信息包括:源IP地址和目的IP地址;利用深度强化学习算法对状态信息和属性信息进行处理,得到待传送数据包的目标路由路径;其中,待传送数据包所处的网络设备为深度强化学习算法中智能体的状态,待传送数据包下一跳网络设备的端口编号为智能体的动作;每条可选路由路径的奖励为可选路由路径上每个网络设备的奖励之和,每个网络设备的奖励为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数。
本发明提供的细粒度网络态势感知与源路由智能优化方法,首先获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息,然后利用深度强化学习算法对状态信息和属性信息进行处理,得到待传送数据包的路由路径,并且由于每条可选路由路径的奖励为可选路由路径上每个网络设备的奖励之和,每个网络设备的奖励为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数,因此,本发明方法可以在最小化最大链路利用率和路径时延的情况下,计算出最优路由路径,从而不会导致大量数据流堆积在同一路径,避免出现网络拥塞的问题,保证了数据包传输的及时性,进而提升了整体网络传输性能。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种细粒度网络态势感知与源路由智能优化方法的流程图;
图2为本发明实施例提供的一种SDN架构的网络管控示意图;
图3为本发明实施例提供的一种带内遥测技术的基本处理流程图;
图4为本发明实施例提供的一种数据包传输系统的框架示意图;
图5为本发明实施例提供的一种数据包包头格式示意图;
图6为本发明实施例提供的一种数据包包头中的源路由包头格式示意图;
图7为本发明实施例提供的一种基于源路由协议的数据包转发流程图;
图8为本发明实施例提供的一种数据包传输流程图;
图9为本发明实施例提供的一种细粒度网络态势感知与源路由智能优化装置的功能模块图;
图10为本发明实施例提供的一种电子设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
传统网络测量方法包括Ping协议、IP测量协议(IPMP)、MPLS丢包/延迟测量协议等,这些方式属于基于带外的网络测量。所谓带外,指网络的管控信息与承载用户业务的信息在不同的逻辑信道进行传送,因此其主动向网络中发送特殊协议数据包以统计网络信息,这会导致额外的检测流量开销,同时也仅能测量丢包率、延迟、TTL(Time To Live,生存时间)等粗粒度网络性能指标。
基于以上测量方法,传统网络管控技术停留在网络设备与网络基础资源的粗粒度感知与调控的层面上,当网络出现如网络拥塞、单点故障等突发状况时,集中式的控制单元无法快速地根据底层网络资源与网络设备的信息变化进行及时有效的控制规则适变与下发,甚至需要进行人工调校,即便网络管理员可以迅速的做出反应,网络也会产生极高的突发处理、响应时间,这将会导致网络的传输性能严重下降,以至无法按时按需地完成数据包的传输。有鉴于此,本发明实施例提供了一种细粒度网络态势感知与源路由智能优化方法,用以缓解上文中所提出的技术问题。
实施例一
图1为本发明实施例提供的一种细粒度网络态势感知与源路由智能优化方法的流程图,如图1所示,该方法具体包括如下步骤:
步骤S102,获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息。
本发明实施例所提供的方法是基于SDN(Software Defined Network,软件定义网络)网络架构和可编程数据平面技术来实现对目标网络进行网络管控,网络管控是指对网络内部的各个设备终端进行细粒度、差异化的管理与控制,常用的网络管控方案大多基于SDN网络结构下的集中式控制器实现。基于SDN架构的网络管控技术主要可分为数据平面和控制平面的工作,其具体流程如图2所示。首先,数据平面需要收集网内设备的状态信息,通过南向接口上传至控制平面的控制器;再由控制器根据数据平面的信息设计管控策略,下发流表更改数据平面的转发行为,从而实现集高度感知、快速响应为一体的网络控制模式,提升网络性能。
因此,要通过目标网络传输待传送数据包,不仅需要获取待传送数据包的属性信息,还需要获取目标网络内所有网络设备的状态信息。其中,待传送数据包的属性信息包括:源IP地址和目的IP地址。本发明实施例中。SDN网络架构下的数据平面负责信息收集,控制平面负责确定路由策略。
步骤S104,利用深度强化学习算法对状态信息和属性信息进行处理,得到待传送数据包的目标路由路径。
传统的网络管控手段对数据平面可控性低,难以根据网络流量分布情况更改数据流的转发规则;且仅针对时延进行路由优化的方式可能导致大量数据流堆积在同一路径上,进而产生网络拥塞。为了解决上述问题,本发明实施例所提供的方法采用深度强化学习算法对状态信息和属性信息进行处理,从而确定出待传送数据包的目标路由路径。
其中,待传送数据包所处的网络设备为深度强化学习算法中智能体的状态,待传送数据包下一跳网络设备的端口编号为智能体的动作;每条可选路由路径的奖励为可选路由路径上每个网络设备的奖励之和,每个网络设备的奖励为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数。
具体的,待传送数据包位于目标网络中的每个交换机、每个主机时,将其视为智能体处于一种状态,源主机为初始状态,目的主机为终点;智能体的动作设置为待传送数据包下一跳网络设备的端口编号,也即交换机的端口编号,动作空间为离散的,动作选择哪个编号数值,表示采取该端口为出端口进行数据包的转发。
深度强化学习算法需要最大化奖励,且本发明实施例所提供的方案目标是最小化最大链路利用率和路径时延的情况下寻找最优路由,因此,本发明实施例将网络的链路利用率和数据包的路径时延共同作为奖励值,并且,将每个网络设备的奖励设置为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数。进一步的,为了最大化奖励,深度强化学习算法中,设置待传送数据包的下一状态到达除终点主机(目的IP地址)外的主机时,得到的奖励为负,待传送数据包的下一状态到达终点主机时,得到的奖励为正。
也就是说,利用本发明实施例所提供的方法,能够在最小化最大链路利用率和路径时延的情况下,计算出最优路由,再由SDN网络架构的控制器下发流表部署最优路由转发规则,可以对网络流量的转发进行管控,优化数据流的路由方式,且不会导致需要进行路由优化的数据流堆积在同一条路径上,从而提升整体网络性能。
本发明提供的细粒度网络态势感知与源路由智能优化方法,首先获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息,然后利用深度强化学习算法对状态信息和属性信息进行处理,得到待传送数据包的路由路径,并且由于每条可选路由路径的奖励为可选路由路径上每个网络设备的奖励之和,每个网络设备的奖励为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数,因此,本发明方法可以在最小化最大链路利用率和路径时延的情况下,计算出最优路由路径,从而不会导致大量数据流堆积在同一路径,避免出现网络拥塞的问题,保证了数据包传输的及时性,进而提升了整体网络传输性能。
随着软件定义网络的兴起,除带外遥测技术之外,另外一类网络测量技术出现,其通过SDN控制器从网络外围直接获取网络内部设备的信息,这种方式可以获得全局状态的感知,但是由于需要控制器与交换设备间进行大量的数据交换,从而在控制器与网络设备之间进行网络状态信息的传输,因此会产生较大的南北向开销。
带内遥测(In-band Network Telemetry,INT)是一种新兴的网络监控技术,所谓带内,是指网络的管控信息与承载用户业务的信息通过同一个逻辑信道进行传送。其基本思路为通过逐跳地记录、添加数据包所经过的网络设备信息到包头部位,从而在终点处形成源节点-目的节点完整路径上的设备相关信息,以实现细粒度的网络感知能力。
具体的,图3为本发明实施例提供的一种带内遥测技术的基本处理流程图,如图3所示,发送端发出一个数据包,在INT源端(可以向数据包中插入INT包头的网络设备)添加INT包头以及第一个INT元数据。每经过一个交换机,通过解析INT包头,将需要的设备状态信息INT Metadata(也即,INT元数据,是需要收集的网络状态信息)插入数据包的包头部位。在数据包接收端的前一跳,将采集到的所有INT Metadata传到控制器中,同时将数据包恢复为初始状态。
有鉴于此,在一个可选的实施方式中,上述步骤S102中,获取目标网络内所有网络设备的状态信息,具体包括如下步骤:
步骤S1021,基于带内遥测方法在目标网络中传送多个数据包。
其中,多个数据包的路由路径可覆盖目标网络中的所有网络设备。
步骤S1022,接收每个数据包接收端的前一跳网络设备反馈的其所属路由路径中所有网络设备的INT元数据。
步骤S1023,基于所有INT元数据确定目标网络内所有网络设备的状态信息。
基于以上方案描述可知,本发明实施例中,SDN架构的数据平面采用带内遥测技术来收集目标网络中所有网络的状态信息。采用带内遥测的方式进行网络信息测量可以充分利用网络中已经在传输的数据包,当其路过一个网络设备时,在数据包上添加此网络设备相关的状态信息。在数据包传输到目的IP地址的前一跳,将新增的网络状态信息提取出来,发往控制器。带内遥测方法相当于在数据包的基础传输能力之上扩展出了网络的感知能力,是一种高效低开销的网络管控方法。
因此,只需要在目标网络内传送多个数据包,并确保上述多个数据包的路由路径可覆盖目标网络中的所有网络设备,即可在所有数据包均传送到相应的目标IP地址之后,获取每个数据包接收端的前一跳网络设备反馈的其所属路由路径中所有网络设备的INT元数据,上述路由路径中所有网络设备的INT元数据的并集即为目标网络内所有网络设备的状态信息。
已有的遥测方法例如采用Ping协议、IP测量协议(IPMP)、MPLS丢包/延迟测量协议等,采用新的协议发送探测包,只能进行粗粒度的测量,且基于带外的遥测方式,增加了额外的检测流量开销。而带内遥测可以将遥测信息插入正常转发的数据包,不造成额外的检测开销,且可以实现在数据包的级别进行细粒度测量。
在一个可选的实施方式中,每个网络设备的INT元数据包括:网络设备的编号、网络设备的节点时延和网络设备待传输数据包的字节数。
目标网络中,为了区分网络设备,以及快速定位所指定的网络设备,目标网络中的每个网络设备均设有唯一的编号,也即swid,可选的,swid占32bit。另外,已知网络设备在传输数据包时存在时延,且路由路径的优劣与数据包的传输时延相关,因此,将节点时延(hop_delay)也作为一种数据进行采集,其中,节点时延的单位为us,占32bit。已知本发明实施例中除时延之外,还将网络设备的链路利用率作为路由路径奖励的一部分,且网络设备当前处理的待传输数据包的字节数与网络设备的链路利用率存在关联,因此,INT元数据中还应包含网络设备待传输数据包的字节数byte_cnt,可选地byte_cnt占32bit。
在一个可选的实施方式中,目标网络的最大链路利用率表示目标网络中所有网络设备的链路利用率中的最大值。
其中,目标网络设备的链路利用率通过以下算式进行计算:;其中,表示目标网络设备的链路利用率,B表示目标网络设备待传输数据包的字节数,表示目标网络设备的节点时延,目标网络设备表示目标网络中的任一网络设备。
本发明实施例中,在获取到目标网络中每个网络设备的INT元数据之后,也即确定出每个网络设备的状态信息,利用采集到的INT元数据以及上述链路利用率的算式,可以进一步计算出任一网络设备的任一数据传输端口对应的链路利用率。假设目标网络中共有5个网络设备,且链路利用率分别为:60%,80%,20%,50%,30%,那么目标网络的最大链路利用率为80%。
在一个可选的实施方式中,每条可选路由路径的奖励表示为:;其中,表示可选路由路径上第i个网络设备的节点时延,表示节点时延修正系数,节点时延修正系数可根据链路利用率的大小设置合适的数值,使得节点时延与链路利用率对路由优化的作用相当;表示可选路由路径上网络设备的总数,表示目标网络的最大链路利用率。
本发明实施例中,深度强化学习算法的输入是数据平面采集的带内遥测信息,算法的目的是找到一条路径能够使奖励最大化。确定出待传送数据包的目标路由路径之后,即可确定出该条路径经历的每一跳交换机的出端口。
强化学习是机器学习的一个分支,其最大的特点是在交互中学习(Learning fromInteraction)。智能体在与环境的交互中,根据获得的奖励或惩罚不断的学习知识以更加适应环境。而深度强化学习提出的动机是传统的强化学习Q-learning算法的存储空间有限,对复杂环境中大量的状态,其无法构建可以存储超大状态空间并表征状态好坏的Q表(奖励值表)。因此引入神经网络,形成深度Q网络。深度强化学习技术不断改进,现在已经有包括DQN,DDPG,TRPO,A2C,ACER,PPO在内的近十种经典算法实现。深度强化学习算法分为三种学习框架:值函数(Value Based)、策略梯度(Policy Gradient)和行动者-评论家(Actor-Critic)。其中Actor-Critic类强化学习算法综合了值函数和策略梯度,用值函数误差指导策略更新,加快学习速度。
本发明实施例不对深度强化学习算法的具体算法形式进行限定,用户可以根据实际需求进行选择,下面对PPO(Proximal Policy Optimization)近端策略优化算法的机理进行概述。总的来说PPO是一套Actor-Critic结构,Critic采用优势函数来评估动作的好坏,策略通过期望回报的梯度更新,期望回报梯度为:,其中,a表示动作,s表示当前状态,表示在策略π下的s状态采取动作a得到的奖励。
在PPO算法中,Critic网络的目标是最小化损失函数,也就是最小化估计误差;Actor的目标是最大化。Actor网络会在旧策略的基础上,根据A修改新策略。当A大时,修改幅度大,让新策略更可能发生。在实际应用中,可利用CLIP方法限制策略更新幅度,保证训练的稳定性,也即,,其中,表示新旧策略之比,表示裁剪幅度超参数。
鉴于本发明实施例已经定义了深度强化学习算法中智能体的状态、动作与奖励的具体内容,因此,应用PPO算法可快速计算出待传送数据包的最优路由,也即,待传送数据包的目标路由路径。
在传统路由方法中,网络交换设备根据数据包的目的地逐跳确定转发路径,难以在网络故障时及时排除故障位置,以重新规划路由,且对数据包转发路径的可控性差,难以部署网络管控机制。另外,在SDN网络架构下,控制器虽然能够下发流表更改数据平面交换设备的转发行为,但是将此方式应用于路由优化中,由于控制器需要频繁给每个交换设备下发流表发送控制指令,这样操作会带来昂贵的南北向流量开销。
有鉴于此,在一个可选的实施方式中,在得到待传送数据包的目标路由路径之后,本发明方法还包括如下内容:
将目标路由路径以源路由的方式下发至待传送数据包的起始交换节点,以使待传送数据包以源路由的方式在目标网络中按照目标路由路径进行转发。
具体的,源路由技术允许在数据包发送端就指定数据包在网络中转发的路由,也即,源路由可以自定义数据包转发路径,不仅能更快实现网络故障排除,还能用于网络路由优化当中。采用源路由方式,控制器只需向数据包发送端下发流表,就能实现规划数据包在网络中的转发行为,大大减少了南北向开销。
图4为本发明实施例提供的一种数据包传输系统的框架示意图,控制平面初始时需要给每个交换设备部署默认的转发路径,实现网络设备互联,在控制平面基于深度强化学习算法计算出最优路由之后,由控制平面下发流表到待发送数据包的起始交换设备(也即,起始交换节点),使待发送数据包以源路由的方式按照优化后的路由路径进行转发,从而实现细粒度的网络感知与路由优化,提升数据流转发性能。
由于SDN架构中数据平面需要实现带内遥测机制,以及源路由机制,因此本发明实施例基于可编程数据平面设计数据包包头为如图5所示的格式,INT包头用于存储多跳INT信息;IP包头用于存储下一跳节点的IP信息;UDP(User Datagram Protocol)包头也即用户数据报协议包头。借助于可编程数据平面能够自定义数据包处理逻辑的优势,源路由协议直接将目标路由路径上各交换机(网络设备)的转发端口保存在源路由包头;源路由包头由多个交换机的转发端口port和用于指示该交换机是否为最后一跳交换机的bos组成。源路由包头格式如图6所示。
基于源路由协议的数据包转发流程,参考图7,第一跳交换设备的源路由包头包含n条bos和port信息,说明数据包需要转发经过n跳交换设备(图7的示例中n=3),因为数据包每经过一跳交换设备就需要解析一条bos和port信息,解析后该条源路由信息删除。bos指示当前是否为最后一跳,若为最后一跳(bos=1),则数据包离开当前交换设备后恢复为正常数据包。
为了便于理解本发明技术方案,下面进行举例说明,如图8所示,数据平面利用带内遥测技术收集INT信息上传至控制平面。控制平面基于深度强化学习算法PPO的路由优化模块计算最优路由,再由控制器将优化后得路由规则发下流表至数据流的起始交换设备S1,向其中插入源路由包头,由此每一跳都会解析源路由包头,按照源路由规则进行转发。图8中,ETH表示以太网包头,除源路由包头外,其余类型的包头未在图8中显示。S1按照第一个源路由信息,以port为1发送数据包,发出后删除此条源路由信息;S2按照当前数据包得第一个源路由信息,以port为2发送数据包,发出后删除此条源路由信息;S3同样,但是由于此时bos值为1,因此是源路由得最后一跳,因此按照port为3转发后,数据包恢复为正常数据包,后面将按照正常数据包格式进行解析。
由此可知,利用本发明方案可以实现细粒度的网内感知,PPO算法能根据感知信息,在最小化最大链路利用率和路径时延的情况下,计算出最优路由。相比只针对时延最短这个单一目标进行路由优化,本发明实施例不仅能得到最优路由,且不会导致大量数据流堆积在同一路径。利用源路由方式更新了数据流的转发规则,最终以较低的南北向开销优化了数据流的传输性能。
综上所述,本发明实施例提出了将带内遥测与基于SDN架构的网络管控技术相结合的技术方案,带内遥测通过将信息插入网络中正常转发的数据包中,可不造成额外的检测开销,且实现在数据包的级别进行细粒度测量;控制器根据信息下发流表实施相应的路由优化策略,从而提升网络的性能;进一步的,本发明实施例提出了基于深度强化学习算法PPO与源路由进行路由优化,首先,PPO算法能在考虑多个优化目标的情况下展现出其智能决策方式的优势,且相比控制器向每个交换设备下发流表更新转发规则,源路由方式能够大量减少南北向开销,因此可实现通过更小的南北向开销而进行路由优化。
实施例二
本发明实施例还提供了一种细粒度网络态势感知与源路由智能优化装置,该细粒度网络态势感知与源路由智能优化装置主要用于执行上述实施例一所提供的细粒度网络态势感知与源路由智能优化方法,以下对本发明实施例提供的细粒度网络态势感知与源路由智能优化装置做具体介绍。
图9是本发明实施例提供的一种细粒度网络态势感知与源路由智能优化装置的功能模块图,如图9所示,该装置主要包括:获取模块10,处理模块20,其中:
获取模块10,用于获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息;其中,属性信息包括:源IP地址和目的IP地址。
处理模块20,用于利用深度强化学习算法对状态信息和属性信息进行处理,得到待传送数据包的目标路由路径。
其中,待传送数据包所处的网络设备为深度强化学习算法中智能体的状态,待传送数据包下一跳网络设备的端口编号为智能体的动作;每条可选路由路径的奖励为可选路由路径上每个网络设备的奖励之和,每个网络设备的奖励为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数。
本发明提供的细粒度网络态势感知与源路由智能优化装置所执行的细粒度网络态势感知与源路由智能优化方法,首先获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息,然后利用深度强化学习算法对状态信息和属性信息进行处理,得到待传送数据包的路由路径,并且由于每条可选路由路径的奖励为可选路由路径上每个网络设备的奖励之和,每个网络设备的奖励为网络设备的节点时延与目标网络的最大链路利用率的加权和的相反数,因此,本发明实施例所提供的装置可以在最小化最大链路利用率和路径时延的情况下,计算出最优路由路径,从而不会导致大量数据流堆积在同一路径,避免出现网络拥塞的问题,保证了数据包传输的及时性,进而提升了整体网络传输性能。
可选地,获取模块10包括:
传送单元,用于基于带内遥测方法在目标网络中传送多个数据包;其中,多个数据包的路由路径可覆盖目标网络中的所有网络设备。
接收单元,用于接收每个数据包接收端的前一跳网络设备反馈的其所属路由路径中所有网络设备的INT元数据。
确定单元,用于基于所有INT元数据确定目标网络内所有网络设备的状态信息。
可选地,每个网络设备的INT元数据包括:网络设备的编号、网络设备的节点时延和网络设备待传输数据包的字节数。
可选地,目标网络的最大链路利用率表示目标网络中所有网络设备的链路利用率中的最大值。
其中,目标网络设备的链路利用率通过以下算式进行计算:;其中,表示目标网络设备的链路利用率,B表示目标网络设备待传输数据包的字节数,表示目标网络设备的节点时延,目标网络设备表示目标网络中的任一网络设备。
可选地,该装置还包括:
下发模块,用于将目标路由路径以源路由的方式下发至待传送数据包的起始交换节点,以使待传送数据包以源路由的方式在目标网络中按照目标路由路径进行转发。
实施例三
参见图10,本发明实施例提供了一种电子设备,该电子设备包括:处理器60,存储器61,总线62和通信接口63,所述处理器60、通信接口63和存储器61通过总线62连接;处理器60用于执行存储器61中存储的可执行模块,例如计算机程序。
其中,存储器61可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口63(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线62可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器61用于存储程序,所述处理器60在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的过程定义的装置所执行的方法可以应用于处理器60中,或者由处理器60实现。
处理器60可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器60中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器60可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器61,处理器60读取存储器61中的信息,结合其硬件完成上述方法的步骤。
本发明实施例所提供的一种细粒度网络态势感知与源路由智能优化方法与装置的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,术语“水平”、“竖直”、“悬垂”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种细粒度网络态势感知与源路由智能优化方法,其特征在于,包括:
获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息;其中,所述属性信息包括:源IP地址和目的IP地址;每个所述网络设备的状态信息包括:所述网络设备的编号、所述网络设备的节点时延和所述网络设备待传输数据包的字节数;
利用深度强化学习算法对所述状态信息和所述属性信息进行处理,得到所述待传送数据包的目标路由路径;
其中,所述待传送数据包所处的网络设备为所述深度强化学习算法中智能体的状态,所述待传送数据包下一跳网络设备的端口编号为所述智能体的动作;每条可选路由路径的奖励为所述可选路由路径上每个网络设备的奖励之和,每个所述网络设备的奖励为所述网络设备的节点时延与所述目标网络的最大链路利用率的加权和的相反数;深度强化学习算法的目的是找到一条路径能够使奖励最大化。
2.根据权利要求1所述的细粒度网络态势感知与源路由智能优化方法,其特征在于,获取目标网络内所有网络设备的状态信息,包括:
基于带内遥测方法INT在所述目标网络中传送多个数据包;其中,所述多个数据包的路由路径可覆盖所述目标网络中的所有网络设备;
接收每个数据包接收端的前一跳网络设备反馈的其所属路由路径中所有网络设备的INT元数据;
基于所有所述INT元数据确定所述目标网络内所有网络设备的状态信息。
4.根据权利要求1所述的细粒度网络态势感知与源路由智能优化方法,其特征在于,在得到所述待传送数据包的目标路由路径之后,还包括:
将所述目标路由路径以源路由的方式下发至所述待传送数据包的起始交换节点,以使所述待传送数据包以源路由的方式在所述目标网络中按照所述目标路由路径进行转发。
5.一种细粒度网络态势感知与源路由智能优化装置,其特征在于,包括:
获取模块,用于获取目标网络内所有网络设备的状态信息和待传送数据包的属性信息;其中,所述属性信息包括:源IP地址和目的IP地址;每个所述网络设备的状态信息包括:所述网络设备的编号、所述网络设备的节点时延和所述网络设备待传输数据包的字节数;
处理模块,用于利用深度强化学习算法对所述状态信息和所述属性信息进行处理,得到所述待传送数据包的目标路由路径;
其中,所述待传送数据包所处的网络设备为所述深度强化学习算法中智能体的状态,所述待传送数据包下一跳网络设备的端口编号为所述智能体的动作;每条可选路由路径的奖励为所述可选路由路径上每个网络设备的奖励之和,每个所述网络设备的奖励为所述网络设备的节点时延与所述目标网络的最大链路利用率的加权和的相反数;深度强化学习算法的目的是找到一条路径能够使奖励最大化。
6.根据权利要求5所述的细粒度网络态势感知与源路由智能优化装置,其特征在于,获取模块包括:
传送单元,用于基于带内遥测方法INT在所述目标网络中传送多个数据包;其中,所述多个数据包的路由路径可覆盖所述目标网络中的所有网络设备;
接收单元,用于接收每个数据包接收端的前一跳网络设备反馈的其所属路由路径中所有网络设备的INT元数据;
确定单元,用于基于所有所述INT元数据确定所述目标网络内所有网络设备的状态信息。
7.一种电子设备,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至4中任一项所述的细粒度网络态势感知与源路由智能优化方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现上述权利要求1至4中任一项所述的细粒度网络态势感知与源路由智能优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210953069.0A CN115037667B (zh) | 2022-08-10 | 2022-08-10 | 一种细粒度网络态势感知与源路由智能优化方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210953069.0A CN115037667B (zh) | 2022-08-10 | 2022-08-10 | 一种细粒度网络态势感知与源路由智能优化方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115037667A CN115037667A (zh) | 2022-09-09 |
CN115037667B true CN115037667B (zh) | 2022-11-08 |
Family
ID=83131303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210953069.0A Active CN115037667B (zh) | 2022-08-10 | 2022-08-10 | 一种细粒度网络态势感知与源路由智能优化方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115037667B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116055415B (zh) * | 2023-01-10 | 2024-05-14 | 中国联合网络通信集团有限公司 | 数据包的传输控制方法及装置 |
CN117041139B (zh) * | 2023-10-09 | 2024-03-26 | 腾讯科技(深圳)有限公司 | 数据包传输方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1435033A (zh) * | 2000-03-15 | 2003-08-06 | 英佛西莫信息技术股份有限公司 | 用于在网络中经由最优数据路径进行数据通讯的方法及系统 |
CN109039942A (zh) * | 2018-08-29 | 2018-12-18 | 南京优速网络科技有限公司 | 一种基于深度强化学习的网络负载均衡系统及均衡方法 |
CN111010294A (zh) * | 2019-11-28 | 2020-04-14 | 国网甘肃省电力公司电力科学研究院 | 一种基于深度强化学习的电力通信网路由方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8565117B2 (en) * | 2008-01-15 | 2013-10-22 | Alcatel Lucent | Systems and methods for network routing |
US9137161B2 (en) * | 2013-05-29 | 2015-09-15 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system of bandwidth-aware service placement for service chaining |
-
2022
- 2022-08-10 CN CN202210953069.0A patent/CN115037667B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1435033A (zh) * | 2000-03-15 | 2003-08-06 | 英佛西莫信息技术股份有限公司 | 用于在网络中经由最优数据路径进行数据通讯的方法及系统 |
CN109039942A (zh) * | 2018-08-29 | 2018-12-18 | 南京优速网络科技有限公司 | 一种基于深度强化学习的网络负载均衡系统及均衡方法 |
CN111010294A (zh) * | 2019-11-28 | 2020-04-14 | 国网甘肃省电力公司电力科学研究院 | 一种基于深度强化学习的电力通信网路由方法 |
Non-Patent Citations (1)
Title |
---|
基于MPLS的广域保护通信系统路由算法;熊小萍等;《电工技术学报》;20130630;第28卷(第6期);第3节 * |
Also Published As
Publication number | Publication date |
---|---|
CN115037667A (zh) | 2022-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102620026B1 (ko) | 패킷 처리 방법, 관련 기기 및 컴퓨터 저장 매체 | |
US11228515B2 (en) | Data packet detection method, device, and system | |
US20220294722A1 (en) | Transmission Quality Detection Method, Apparatus, and System, and Storage Medium | |
US8427958B2 (en) | Dynamic latency-based rerouting | |
CN115037667B (zh) | 一种细粒度网络态势感知与源路由智能优化方法与装置 | |
CN107342906B (zh) | 一种大象流的检测方法、设备及系统 | |
CN106713141A (zh) | 用于获得目标传输路径的方法和网络节点 | |
CN112511325B (zh) | 网络拥塞控制方法、节点、系统及存储介质 | |
US20220407791A1 (en) | Network performance detection method and apparatus, and network device | |
CN111147372B (zh) | 下行报文发送、转发方法和装置 | |
US9832114B2 (en) | Packet forwarding system, control apparatus, packet forwarding method, and program | |
CN116112423B (zh) | 一种路径确定方法、装置及设备 | |
WO2022253194A1 (zh) | 报文转发方法、装置及通信网络 | |
US20150334032A1 (en) | Control apparatus, communication system, communication node control method, and program | |
CN114157595B (zh) | 一种通信系统、数据处理方法以及相关设备 | |
WO2022253192A1 (zh) | 报文转发方法、装置及通信网络 | |
JP6801075B2 (ja) | データ・パケットのパス情報を得る方法及びデバイス | |
US9521066B2 (en) | vStack enhancements for path calculations | |
CN114070795A (zh) | 拥塞门限确定方法、装置、设备及存储介质 | |
WO2014006920A1 (en) | Communication system, control apparatus, communication method, and program | |
CN107431656A (zh) | 控制设备、通信系统、控制方法及程序 | |
WO2023206165A1 (zh) | 组播数据报文发送的方法、装置、设备和存储介质 | |
WO2021093509A1 (zh) | 流量分配方法及装置 | |
Xie et al. | INToSR: Building A Novel In-band Network Telemetry over SRv6 | |
CN118413462A (zh) | 资源感知方法、装置、通信设备及可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |