掌桥专利:专业的专利平台
掌桥专利
首页

路径学习方法、装置及存储介质

文献发布时间:2024-04-18 19:52:40


路径学习方法、装置及存储介质

技术领域

本申请涉及通信技术领域,尤其涉及一种路径学习方法、装置及存储介质。

背景技术

目前,全网(或某个区域内的网络)设备均通过路由协议进行业务数据的转发。但是,在一个运行统一路由协议的网络中,会出现部分链路拥塞,部分链路确空闲的情况,导致网络设备在转发流量时没有合理利用链路资源。因此,如何在现有路由协议的转发基础上合理利用链路资源成为亟待解决的技术问题。

发明内容

本申请提供一种路径学习方法、装置及存储介质,能够在现有路由协议的转发基础上合理利用链路资源。

为达到上述目的,本申请采用如下技术方案:

第一方面,提供了一种路径学习方法,应用于路由设备中,路由设备包括多个端口,多个端口用于转发数据;方法包括:获取第一数据报文;其中,第一数据报文为在第一时间段内发生拥塞的第一端口进行转发的报文;在转发第一数据报文的第一端口发生拥塞的情况下,确定多个端口中未发生拥塞的第二端口;在第一数据报文中添加预设字段,生成第二数据报文,其中,预设字段用于指示第二数据报文为通过第二端口进行转发的字段;通过第二端口,向目标设备转发第二数据报文;接收来自目标设备的反馈信息;反馈信息为以下任一项:第一反馈信息和第二反馈信息;第一反馈信息用于表征第二端口满足预设条件;第二反馈信息用于表征第二端口不满足预设条件;在反馈信息为第一反馈信息的情况下,更新路由设备的第一路径转发表。

结合上述第一方面,在一种可能的实现方式中,确定多个端口中未发生拥塞的第二端口,包括:确定第一数据报文的特征值;将特征值输入到预设神经网络模型中,确定第二端口;预设神经网络模型用于根据数据报文的特征值,确定转发数据报文的非拥堵端口。

结合上述第一方面,在一种可能的实现方式中,在反馈信息为第一反馈信息的情况下,更新路由设备的路径转发表,包括:确定特征值与第二端口之间的对应关系;将特征值与第二端口之间的对应关系,更新到第一路径转发表中,生成第二路径转发表。

结合上述第一方面,在一种可能的实现方式中,在生成第二路径转发表之后,方法还包括:获取第三数据报文,第三数据报文为在第一端口进行转发的数据报文;确定第一端口当前是否发生拥塞;若是,则根据第二路径转发表转发第三数据报文;若否,则根据第一路径转发表转发第三数据报文。

第二方面,提供了一种路径学习装置,应用于路由设备中,路由设备包括多个端口,多个端口用于转发数据;装置包括:处理单元和通信单元;处理单元,用于获取第一数据报文;其中,第一数据报文为在第一时间段内发生拥塞的第一端口进行转发的报文;处理单元,用于在转发第一数据报文的第一端口发生拥塞的情况下,确定多个端口中未发生拥塞的第二端口;处理单元,还用于在第一数据报文中添加预设字段,生成第二数据报文,其中,预设字段用于指示第二数据报文为通过第二端口进行转发的字段;通信单元,还用于通过第二端口,向目标设备转发第二数据报文;通信单元,还用于接收来自目标设备的反馈信息;反馈信息为以下任一项:第一反馈信息和第二反馈信息;第一反馈信息用于表征第二端口满足预设条件;第二反馈信息用于表征第二端口不满足预设条件;处理单元,还用于在反馈信息为第一反馈信息的情况下,更新路由设备的第一路径转发表。

结合上述第二方面,在一种可能的实现方式中,处理单元,具体用于:确定第一数据报文的特征值;将特征值输入到预设神经网络模型中,确定第二端口;预设神经网络模型用于根据数据报文的特征值,确定转发数据报文的非拥堵端口。

结合上述第二方面,在一种可能的实现方式中,处理单元,还具体用于:确定特征值与第二端口之间的对应关系;将特征值与第二端口之间的对应关系,更新到第一路径转发表中,生成第二路径转发表。

结合上述第二方面,在一种可能的实现方式中,处理单元,还具体用于:获取第三数据报文,第三数据报文为在第一端口进行转发的数据报文;确定第一端口当前是否发生拥塞;若是,则指示通信单元根据第二路径转发表转发第三数据报文;若否,则指示通信单元根据第一路径转发表转发第三数据报文。

第三方面,本申请提供了一种路径学习装置,该路径学习装置包括:处理器以及存储器;其中,所述存储器用于存储计算机执行指令,当所述路径学习装置运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述路径学习装置执行如第一方面和第一方面的任一种可能的实现方式中描述的路径学习方法。

第四方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机可读存储介质中的指令由路径学习装置的处理器执行时,使得路径学习装置能够执行如第一方面和第一方面的任一种可能的实现方式中描述的路径学习方法。

第五方面,本申请提供了一种包含指令的计算机程序产品,当计算机程序产品在路径学习装置上运行时,使得路径学习装置执行如第一方面和第一方面的任一种可能的实现方式中所描述的路径学习方法。

第六方面,本申请提供了一种芯片,芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现如第一方面和第一方面的任一种可能的实现方式中所描述的路径学习方法。

具体的,本申请实施例中提供的芯片还包括存储器,用于存储计算机程序或指令。

在本申请中,上述路径学习装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。

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

本申请提供的技术方案至少带来以下有益效果:路径学习装置获取在第一时间段内发生拥塞的第一端口进行转发的第一报文;路径学习装置在转发第一数据报文的第一端口发生拥塞的情况下,确定多个端口中未发生拥塞的第二端口;路径学习装置在第一数据报文中添加预设字段,生成第二数据报文;路径学习装置通过第二端口,向目标设备转发第二数据报文。路径学习装置接收来自目标设备的反馈信息。其中,反馈信息包括:第一反馈信息和第二反馈信息。在反馈信息为第一反馈信息的情况下,路径学习装置更新路由设备的第一路径转发表。这样,在现有路由协议的转发基础上,当链路发生拥塞时可以合理利用链路资源。

附图说明

图1为本申请实施例提供的一种路径学习装置的硬件结构示意图;

图2为本申请实施例提供的一种路由协议约束下的业务数据报文转发示意图;

图3为本申请实施例提供的一种路径学习的方法的一种流程示意图;

图4为本申请实施例提供的一种路径学习的方法的又一种流程示意图;

图5为本申请实施例提供的一种路径学习的方法的又一种流程示意图;

图6为本申请实施例提供的一种路径学习的方法的又一种流程示意图;

图7为本申请实施例提供的一种路径学习的方法的又一种流程示意图;

图8为本申请实施例提供的一种路径学习装置的结构示意图。

具体实施方式

下面结合附图对本申请施例提供的路径学习方法、装置及存储介质进行详细地描述。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

本申请的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。

此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

图1为本申请实施例提供的一种路径学习装置的结构示意图。如图1所示,该路径学习装置100包括至少一个处理器101,通信线路102,以及至少一个通信接口104,还可以包括存储器103。其中,处理器101,存储器103以及通信接口104三者之间可以通过通信线路102连接。

处理器101可以是一个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个数字信号处理器(digital signalprocessor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。

通信线路102可以包括一通路,用于在上述组件之间传送信息。

通信接口104,用于与其他设备或通信网络通信,可以使用任何收发器一类的装置,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless localarea networks,WLAN)等。

存储器103可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccess memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmableread-only memory,EEPROM)、只读光盘(compact disc read-onlymemory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于包括或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

一种可能的设计中,存储器103可以独立于处理器101存在,即存储器103可以为处理器101外部的存储器,此时,存储器103可以通过通信线路102与处理器101相连接,用于存储执行指令或者应用程序代码,并由处理器101来控制执行,实现本申请下述实施例提供的空间测量确定方法。又一种可能的设计中,存储器103也可以和处理器101集成在一起,即存储器103可以为处理器101的内部存储器,例如,该存储器103为高速缓存,可以用于暂存一些数据和指令信息等。

作为一种可实现方式,处理器101可以包括一个或多个CPU,例如图1中的CPU0和CPU1。作为另一种可实现方式,路径学习装置100可以包括多个处理器,例如图1中的处理器101和处理器107。作为再一种可实现方式,路径学习装置100还可以包括输出设备105和输入设备106。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将网络节点的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,模块和网络节点的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

相关技术中,运营商维护着一张大网,这张网络一端连接用户,另一端连接着内容源(比如数据中心)。这张网络负责将信息从一端传到另一端,实现人与人之间的通信,以及人与内容之间的通信。网络是由设备和链路组成的,最主要的一种设备是路由器,也叫路由转发设备。路由器是有线通信网络中的必备设备之一。它是一种三层路由转发设备,通过识别报文的网络层地址(IP地址),查询路由表信息,并且按照目的地址将报文转发至下一跳设备。其中,路由器之间的线路被称为链路。

大量的路由设备组成一张IP(Internet Protocol,IP)网络,每台设备可形成和保存一张动态的路由表信息,该信息可指导路由设备对报文进行转发;此外,它们通过某种提前规划好的路由协议交换路由表信息,从而维持着整个网络的运转。自从路由协议被设计出来的那一刻起,路由器的工作职责就被确定了。当IP网络中的每台设备都开始运行某一种路由协议的时候,它们就可以互相通告各自的信息,最终,每台设备都会生成一个拓扑图,并且形成一个路由表。这个路由表可以指导其完成所有类型的报文以及所有地址的报文的转发。它借助的就是TCP/IP协议里的第三层,即网络层。

其中,TCP/IP是一种分层的协议框架,从OSI(Open System Interconnection,OSI)七层协议架构演变而来,并最终成为了五层协议架构。不同的路由协议就是基于这一整体框架才产生的。TCP/IP的第五层是应用层,应用层的协议包含HTTP(HyperTextTransfer Protocol,HTT P)、SMTP(Simple Mail TransferProtocol,SMTP)等。这一层封装的是真实的业务数据;TCP/IP的第四层是会话层,会话层的协议主要是TCP(TransmissionControl Protocol,TCP)和UDP(User Datagram Protocol,UDP)两种;这一层封装的是端口号等信息;TCP/IP的第三层是网络层,针对IP网络来说,这一层的协议就是IP协议。所封装的是IP地址(源地址和目的地址等)等信息;之后,第二层和第一层分别是数据链路层和MAC(Media Access Control Addres,MAC)层,每一层都是不同的协议类型和封装方式。

对于路由器来说,它收到一个报文之后,会逐一的剥开MAC层、数据链路层和网络层的封装报头,查询到其内部所封装的信息,IP地址。通过这个IP地址,以及在路由协议的约束下所形成的转发表,它就知道该从哪个端口转发出去,或者说,转发到哪一条链路上去。下一跳(每经过一个设备,被称作,经过了一跳)设备收到该报文之后,执行同样的操作,又将报文转发给了下一跳设备。经过很多次的转发之后,一条报文就被发送到了目的地。如图2所示,为路由协议约束下的业务数据报文转发示意图。其中,包括:主机设备201、路由设备202、主机设备203。其中,路由设备201包括:路由转发设备2021、路由转发设备2022、路由转发设备2023、路由转发设备2024、路由转发设备2025、路由转发设备2026。具体的,主机设备201与主机设备203进行通信。主机设备201将业务数据报文发送至有路由转发设备2021、路由转发设备2022、路由转发设备2023、路由转发设备2024、路由转发设备2025、路由转发设备2026组成的IP网络中根据路由协议约束的转发表进行逐条转发,最终到达主机设备203。

但是,路由协议并不是完美的。通过路由协议全网(或某个区域内的网络)所有设备都掌握了一种转发的方式之后,每台设备根据路由协议约束的转发表进行转发。在一个运行统一路由协议的网络中,会出现部分链路拥塞,部分链路确空闲的情况,导致网络设备在转发流量时没有合理利用链路资源。因此,如何在现有路由协议的转发基础上合理利用链路资源成为亟待解决的技术问题。

为了能够在现有路由协议的转发基础上合理利用链路资源,本申请提供了一种路径学习方法,路径学习装置获取在第一时间段内发生拥塞的第一端口进行转发的第一报文;路径学习装置在转发第一数据报文的第一端口发生拥塞的情况下,确定多个端口中未发生拥塞的第二端口;路径学习装置在第一数据报文中添加预设字段,生成第二数据报文;路径学习装置通过第二端口,向目标设备转发第二数据报文。路径学习装置接收来自目标设备的反馈信息。其中,反馈信息包括:第一反馈信息和第二反馈信息。在反馈信息为第一反馈信息的情况下,路径学习装置更新路由设备的第一路径转发表。这样,在现有路由协议的转发基础上,当链路发生拥塞时可以合理利用链路资源。

本申请实施例提供的路径学习方法可以应用于路由设备中,所述路由设备包括多个端口,所述多个端口用于转发数据,如图3所示,本申请实施例提供的路径学习方法可以通过以下步骤301至步骤306实现。

步骤301、路径学习装置获取第一数据报文。

其中,第一数据报文为在第一时间段内发生拥塞的第一端口进行转发的报文。

一种可能的实现方式中,路径学习装置在检测到第一端口发生拥塞时,开启DPI(Deep Packet Inspection,DPI)检测功能,获取在第一时间段内发生拥塞的第一端口进行转发的第一数据报文。

一种示例,路径学习装置对路由器设备开放应用层协议的内容。当路径学习装置在第一时间段内检测到第一端口发生拥塞时,启动DPI检测功能,获取发生拥塞的第一端口进行转发的第一数据报文。路径学习装置根据获取到的第一数据报文,提取第一数据报文的多个特征值。其中,路径学习装置可以提取到的多个特征值,包括但不限于:第一数据报文的业务类型、端口号、传输协议类型、优先级信息、源IP地址、目的IP地址等。

需要说明的是,路径学习装置在路由器设备的芯片中引入神经网络结构,使其具备识别样本数据和自我训练的能力。其中,第一时间段为路径学习装置检测到路由器设备按照路由协议约束的转发表进行转发时,转发端口发生拥塞的时间段。

步骤302、路径学习装置确定多个端口中未发生拥塞的第二端口。

一种可能的实现方式中,路径学习装置在转发第一数据报文的第一端口发生拥塞的情况下,根据步骤301提取的第一数据报文的多个特征值确定多个端口中未发生拥塞的第二端口。

一种示例,如表1所示,为路径学习装置根据提取到的多个第一数据报文的多个特征值确定多个端口中未发生拥塞的第二端口。

表1、特征值与第二端口对应关系表

步骤303、路径学习装置在第一数据报文中添加预设字段,生成第二数据报文。

其中,预设字段用于指示第二数据报文为通过第二端口进行转发的字段。

一种可能的实现方式中,路径学习装置在确定了未发生拥塞的第二端口后,在第一数据报文的特定字节位置添加预设字段,生成第二数据报文。

具体的,路径学习装置在第一数据报文的特定位置插入两条预设字段信息。其中,两条预设字段信息分别为:第一,标识第一数据报文转发的路径为非路由协议或路由表所约束的新的转发路径;第二,标识第一端口所属的路由器设备的设备信息。

步骤304、路径学习装置通过第二端口,向目标设备转发第二数据报文。

一种可能的实现方式中,路径学习装置根据步骤301确定的第二端口,向目标设备转发步骤302生成的第二数据报文。

步骤305、路径学习装置接收来自目标设备的反馈信息。

其中,反馈信息为以下任一项:第一反馈信息和第二反馈信息;第一反馈信息用于表征第二端口满足预设条件;第二反馈信息用于表征第二端口不满足预设条件。

一种可能的实现方式中,路径学习装置从第二端口将第二数据报文转发至目标设备后,目标设备对接收到的数据报文进行识别。当目标设备识别出该数据报文为第二数据报文时,目标设备开启端口检测功能,检测自身端口以及所连接的链路是否发生拥塞,并将目标设备将第二数据报文转发至它的下一跳设备。同时,目标设备根据第二数据报文中的预设字段信息,向路径学习装置发送包含自身端口和链路检测结果的反馈信息。

一种示例,路径学习装置将第二数据报文转发至非路由表约束的新的转发路径时,路径学习装置会通过目标设备的反馈信息来判断第二数据报文是否进行了一条空闲的链路中。若第二数据报文进入到一条空闲的链路中,则路径学习装置会收到目标设备发送的内容为“TRUE”的反馈信息;否则,路径学习装置会收到目标设备发送的内容为“FALSE”的反馈信息。

需要说明的是,路径学习装置在上述反馈指令的帮助下不断的学习和完善。

步骤306、路径学习装置在反馈信息为第一反馈信息的情况下,更新路由设备的第一路径转发表。

一种可能的实现方式中,路径学习装置在接收到目标设备发送的反馈信息后,对反馈信息进行判断。当反馈信息为第一反馈信息的情况下,路径学习装置记录下如步骤302中表1所示的特征值与第二端口的对应关系。路径学习置根据第一数据报文的特征值与第二端口的对应关系,更新路由设备的第一路径转发表。

需要说明的是,第一路径转发表为非路由协议约束的路径转发表,且第一路径转发表仅在满足预设条件的情况下启用。

上述方案至少带来以下有益效果。路径学习装置获取在第一时间段内发生拥塞的第一端口进行转发的第一报文;路径学习装置在转发第一数据报文的第一端口发生拥塞的情况下,确定多个端口中未发生拥塞的第二端口;路径学习装置在第一数据报文中添加预设字段,生成第二数据报文;路径学习装置通过第二端口,向目标设备转发第二数据报文。路径学习装置接收来自目标设备的反馈信息。其中,反馈信息包括:第一反馈信息和第二反馈信息。在反馈信息为第一反馈信息的情况下,路径学习装置更新路由设备的第一路径转发表。这样,在现有路由协议的转发基础上,当链路发生拥塞时可以合理利用链路资源。

结合图3,如图4所示,上述步骤302,具体还可以通过以下步骤401-步骤402实现。

步骤401、路径学习装置确定第一数据报文的特征值。

一种可能的实现方式中,路径学习装置开启数据报文检测功能,提取和统计第一数据报文应用层协议类型和相关内容,确定第一数据报文的特征值。

一种示例,路径学习装置开启的数据报文检测功能,包括但不限于深度检测包DPI(Deep Packet Inspection,DPI)功能。其中,与传统数据包检测功能相比,传统数据包检测功能只能看到网络层(位于TCP/IP协议的第三层)及以下(即第四层数据链路层和第五层MAC层)的数据,相比本申请中的DIP检测功能不仅能够对TCP/IP协议层中的应用层以下的报文进行分析,而且还新增了应用层分析,可以识别各种应用类型,同时可以看到业务数据的内容。

步骤402、路径学习装置将特征值输入到预设神经网络模型中,确定第二端口。

其中,预设神经网络模型用于根据数据报文的特征值,确定转发数据报文的非拥堵端口。

一种可能的实现方式中,路径学习装置将提取到的第一数据报文的特征值输入到预设神经网络模型中,预设神经网络模型从路径学习装置的除第一端口外的其他输出端口中确定第二端口。

一种示例,路径学习装置将多个特征值输入到预设神经网络模型中,预设神经网络模型从路径学习装置的除第一端口外的n个输出端口中,确定出m个非拥堵端口。预设神经网络模型从m个非拥堵端口随机确定一个非拥堵端口作为输出第一数据报文的第二端口。同时,预设神经网络模型将第一数据报文的多个特征值与第二端口的对应关系进行记录和学习。其中,n和m为正整数。

上述方案至少带来以下有益效果:路径学习装置确定第一数据报文的特征值。同时,路径学习装置将特征值输入到预设神经网络模型中,确定第一数据报文的第二端口。这样,路径学习装置通过实时数据报文作为预设神经网络模型的训练数据,又可能将实时数据报文从非拥堵的链路上转发出去,合理利用了非路由协议路径转发表所约束的空闲的链路资源。

结合图3,如图5所示,上述步骤306具体可以通过以下步骤501-步骤502实现。

步骤501、路径学习装置确定特征值与第二端口之间的对应关系。

一种可能的实现方式中,路径学习装置根据神经网络模型确定出第一数据报文的特征值与第二端口之间的对应关系。

步骤502、路径学习装置将特征值与第二端口之间的对应关系,更新到第一路径转发表中,生成第二路径转发表。

一种可能的实现方式中,路径学习装置将第一数据报文的特征值与第二端口之间的对应关系进行记录。同时,路径学习装置将记录下来的第一数据报文的特征值与第二端口之间的对应关系与第一路径转发表中的特征值与端口的对应关系进行比较。若该记录不存在于第一路径转发表中,则路径学习装置将该第一数据报文的特征值与第二端口之间的对应关系,更新到第一路径转发表中,生成第二路径转发表。

上述方案至少带来以下有益效果:路径学习装置确定特征值与第二端口之间的对应关系。路径学习装置将特征值与第二端口之间的对应关系,更新到第一路径转发表中,生成第二路径转发表。这样,路径学习装置根据数据报文的特征值与第二端口的对应关系,通过预设神经网络模型的训练和学习生成完备的第二路径转发表。

结合图5,如图6所示,步骤502之后,还包括以下步骤601-步骤604。

步骤601、路径学习装置获取第三数据报文。

其中,第三数据报文为在第一端口进行转发的数据报文。

一种可能的实现方式中,路径学习装置按照路由协议约束的路径转发表获取到第三数据报文,并按照路由转发表约束的路径从第一端口进行转发。

步骤602、路径学习装置确定第一端口当前是否发生拥塞。

一种可能的实现方式中,路径学习装置通过主控模块、交互模块和端口模块的信令交互,实时检测自身端口和所有连接链路状态进行检测,确定第一端口当前是否发生拥塞。

需要说明的是,第一端口为路由协议所预设的第三数据报文进行转发的路径。

步骤603、若是,则路径学习装置根据第二路径转发表转发第三数据报文。

一种可能的实现方式中,若第一端口发生拥塞,则路径学习装置提取第三数据报文的特征值,并根据神经网络模型训练得到的第二路径转发表,将第三数据报文转发至拥堵的链路上去。

一种示例,当路径学习装置检测到第一端口所连接的链路利用率超过了一定阈值(如80%)时,路径学习装置启用步骤502生成的第二路径转发表,对第三数据报文进行转发。如表2所示,为第三数据报文在第二路径转发表中的转发路径。

表2、第三数据报文特征值与输出端口关系表

步骤604、若否,则路径学习装置根据第一路径转发表转发第三数据报文。

一种可能的实现方式中,若第一端口未发生拥塞,则路径学习装置仍按照路由协议约束的第一路径转发表转发第三数据报文。

上述方案至少带来以下有益效果。路径学习装置获取第三数据报文,并确定第一端口当前是否发生拥塞。若第一端口当前发生拥塞,则路径学习装置根据第二路径转发表转发第三数据报文。若第一端口当前未发生拥塞,则路径学习装置根据第一路径转发表转发第三数据报文。这样,当路径学习装置按照第一路径转发表进行转发时若出现拥塞,则启用第二路径转发表。从而,路径学习装置能够在现有路径协议的转发基础上合理利用链路资源。

以下,结合图7,对路径学习装置在现有路由协议转发的基础上合理利用链路资源的过程进行说明:

步骤701、路径学习装置对设备端口和所连接的链路状态检测。

一种可能的实现方式中,路径学习装置通过内部主控模块、交换模块和端口模块的信令交换,对自身端口和所连接链路状态实时进行检测。

步骤702、路径学习装置判断设备所连接的链路是否发生用拥塞。

步骤703、若发生拥塞,则路径学习装置开启训练进程。

一种可能的实现方式中,若发生拥塞,则路径学习装置开启DPI训练进程。

步骤704、路径学习装置获取第一数据报文。

其中,步骤704的具体实现方式与上述步骤301类似,其具体实现过程可以参考步骤301,此处不再赘述。

步骤705、路径学习装置确定多个端口中未发生拥塞的第二端口。

其中,步骤705的具体实现方式与上述步骤302类似,其具体实现过程可以参考步骤302,此处不再赘述。

步骤706、路径学习装置通过第二端口,向目标设备转发第二数据报文。

其中,第二数据报文为路径学习装置在第一数据报文中添加预设字段,生成第二数据报文。

其中,步骤706的具体实现方式与上述步骤304类似,其具体实现过程可以参考步骤304,此处不再赘述。

步骤707、路径学习装置接收来自目标设备的反馈信息。

其中,步骤707的具体实现方式与上述步骤305类似,其具体实现过程可以参考步骤305,此处不再赘述。

步骤708、路径学习装置对反馈信息进行判断。

步骤709、路径学习装置确定特征值与第二端口之间的对应关系。

其中,步骤709的具体实现方式与步骤501类似,其具体实现过程可以参考步骤501,此处不再赘述。

步骤7010、路径学习装置将特征值与第二端口之间的对应关系,更新到第一路径转发表中,生成第二路径转发表。

其中,步骤7010的具体实现方式与步骤502类似,其具体实现过程可以参考步骤502,此处不再赘述。

上述方案至少带来以下有益效果。路径学习装置对设备端口和所连接的链路状态检测。若发生拥塞,则路径学习装置开启训练进程。路径学习装置获取第一数据报文,并确定多个端口中未发生拥塞的第二端口。路径学习装置通过第二端口,向目标设备转发第二数据报文。路径学习装置接收来自目标设备的反馈信息,并对接收到接收的反馈信息进行判断。路径学习装置确定特征装置与第二端口之间的对应关系。路径学习装置将特征装置与第二端口之间的对应关系,更新到第一路径转发表中个,生成第二路径转发表。这样,路径学习装置通过实时业务数据报文,并借助预设算法和预设神经网络模型,总结出业务流量特征值与最优路径之间的关系,生成非路由协议约束的第二路径转发表。当路由协议约束的第一路径转发表中的传输路径发生拥塞时,路径学习装置启用第二路径转发表。使得路径学习装置能够在现有路径协议的转发基础上合理利用链路资源。

以上,对本申请实施例涉及到的路径学习装置,以及路径学习装置的各个设备的功能,设备之间的交互进行了详细说明。

可以看出,上述主要从方法的角度对本申请实施例提供的技术方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本申请实施例可以根据上述方法示例对路径学习装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。可选的,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

本申请实施例提供了一种路径学习装置,用于执行上述路径学习系统中任一设备所需执行的方法。该路径学习装置可以为本申请中涉及的路径学习装置,或者路径学习装置中的模块;或者是路径学习装置中的芯片,也可以是其他用于执行路径学习方法的装置,本申请对此不做限定。

如图8所示,为本申请实施例提供的一种路径学习装置的结构示意图。该路径学习装置包括:处理单元801和通信单元802。

处理单元801,用于获取第一数据报文;其中,第一数据报文为在第一时间段内发生拥塞的第一端口进行转发的报文;处理单元802,用于在转发第一数据报文的第一端口发生拥塞的情况下,确定多个端口中未发生拥塞的第二端口;处理单元801,还用于在第一数据报文中添加预设字段,生成第二数据报文,其中,预设字段用于指示第二数据报文为通过第二端口进行转发的字段;通信单元802,还用于通过第二端口,向目标设备转发第二数据报文;通信单元802,还用于接收来自目标设备的反馈信息;反馈信息为以下任一项:第一反馈信息和第二反馈信息;第一反馈信息用于表征第二端口满足预设条件;第二反馈信息用于表征第二端口不满足预设条件;处理单元801,还用于在反馈信息为第一反馈信息的情况下,更新路由设备的第一路径转发表。

可选的,处理单元801,具体用于:确定第一数据报文的特征值;将特征值输入到预设神经网络模型中,确定第二端口;预设神经网络模型用于根据数据报文的特征值,确定转发数据报文的非拥堵端口。

可选的,处理单元801,还具体用于:确定特征值与第二端口之间的对应关系;将特征值与第二端口之间的对应关系,更新到第一路径转发表中,生成第二路径转发表。

可选的,处理单元801,还具体用于:获取第三数据报文,第三数据报文为在第一端口进行转发的数据报文;确定第一端口当前是否发生拥塞;若是,则指示通信单元802根据第二路径转发表转发第三数据报文;若否,则网络指示通信单元802根据第一路径转发表转发第三数据报文。

本申请实施例提供了一种路径学习装置,用于执行上述路径学习系统中任一设备所需执行的方法。该路径学习装置可以为本申请中涉及的路径学习装置,或者路径学习装置中的模块;或者是路径学习装置中的芯片,也可以是其他用于执行路径学习方法的装置,本申请对此不做限定。

本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机执行该指令时,该计算机执行上述方法实施例所示的方法流程中的各个步骤。

本申请的实施例提供一种包含指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行上述方法实施例中的路径学习方法。

本申请的实施例提供一种芯片,芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现如上述方法实施例中的路径学习方法。

其中,计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘。随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、寄存器、硬盘、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-OnlyMemory,CD-ROM)、光存储器件、磁存储器件、或者上述的人以合适的组合、或者本领域数值的任何其他形式的计算机可读存储介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于特定用途集成电路(Application SpecificIntegrated Circuit,ASIC)中。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

由于本申请的实施例中的装置、设备、计算机可读存储介质、计算机程序产品可以应用于上述方法,因此,其所能获得的技术效果也可参考上述方法实施例,本申请实施例在此不再赘述。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

相关技术
  • 一种语音学习方法、装置、语音设备及存储介质
  • 机器学习方法、装置、设备及存储介质
  • 运动姿势的学习方法、装置、系统及信息存储介质
  • 样本存储路径生成方法、装置、计算机设备及存储介质
  • 路径规划方法、装置、电子设备及存储介质
  • 路径学习方法、装置、业务节点及存储介质
  • 双路径嵌入学习方法、电子设备和存储介质
技术分类

06120116330835