使用机器学习来监测链路质量并且预测链路故障的制作方法

文档序号:16847957发布日期:2019-02-12 22:29阅读:343来源:国知局
使用机器学习来监测链路质量并且预测链路故障的制作方法

网络设备可以包括内部链路和外部链路。例如,网络设备可以包括允许网络设备的组件之间的业务流(例如,分组)的内部链路和/或允许网络设备之间的业务流的外部链路。



技术实现要素:

根据一些可能的实现,一种设备可以包括用于接收已训练数据模型的一个或多个处理器。数据模型可以使用与一组链路相关联的历史链路质量信息被训练。数据模型可以包括与测量链路质量相关联的一个或多个值。在接收到已训练数据模型之后,一个或多个处理器可以确定与主动支持业务流的链路相关联的链路质量信息。一个或多个处理器可以通过使用链路质量信息作为针对数据模型的输入来对链路进行分类。数据模型可以将链路分类为与第一链路质量度量相关联的第一类、与第二链路质量度量相关联的第二类、或与第三链路质量度量相关联的第三类。一个或多个处理器可以通过使用与提高对链路进行分类的准确性相关联的信息更新数据模型来确定链路是否被正确分类。在确定链路是否被正确分类之后,一个或多个处理器可以将链路的类更新为第一类、第二类或第三类。一个或多个处理器可以基于对链路进行分类和/或更新链路的类来执行与提高链路质量相关联的一个或多个动作。

根据一些可能的实现,一种非暂态计算机可读介质可以存储一个或多个指令,一个或多个指令在由一个或多个处理器执行时引起一个或多个处理器获取使用与一组链路相关联的历史链路质量信息被训练的数据模型。历史链路质量信息可以包括与测量链路质量相关联的一个或多个值。一个或多个指令可以引起一个或多个处理器在获取数据模型之后确定与主动支持业务流的链路相关联的链路质量信息。一个或多个指令可以引起一个或多个处理器通过使用链路质量信息作为针对数据模型的输入来对链路进行分类。数据模型可以将链路分类为与测量链路质量相关联的一组类中的类。一个或多个指令可以引起一个或多个处理器通过执行与提高对链路进行分类的准确性相关联的一个或多个动作来确定链路是否被正确分类。一个或多个指令可以引起一个或多个处理器在确定链路是否被正确分类之后选择性地更新链路的类。一个或多个指令可以引起一个或多个处理器基于对链路进行分类和/或选择性地更新链路的类来执行与提高链路质量相关联的一个或多个动作。

根据一些可能的实现,一种方法可以包括由设备接收已训练数据模型。已训练数据模型可以使用与一组链路相关联的历史链路质量信息被训练。该方法可以包括由该设备在接收到已训练数据模型之后确定与主动支持业务的链路相关联的链路质量信息。该方法可以包括由该设备通过使用链路质量信息作为针对数据模型的输入来对链路进行分类。数据模型可以将链路分类为与测量链路质量相关联的一组类中的类。该方法可以包括由该设备确定链路的实际质量等级。该方法可以包括由该设备在确定链路的实际链路质量之后选择性地更新链路的类。该方法可以包括由该设备基于对链路进行分类和/或选择性地更新链路的类来执行与提高链路质量相关联的一个或多个动作。

根据一些可能的实现,一种设备,包括:一个或多个处理器,用于:接收已训练数据模型,所述数据模型使用与一组链路相关联的历史链路质量信息被训练,所述数据模型包括与测量链路质量相关联的一个或多个值;在接收到所述已训练数据模型之后,确定与主动支持业务流的链路相关联的链路质量信息;通过使用所述链路质量信息作为针对所述数据模型的输入对所述链路进行分类,所述数据模型用于将所述链路分类为:与第一链路质量度量相关联的第一类,与第二链路质量度量相关联的第二类,或者与第三链路质量度量相关联的第三类;通过使用与提高对所述链路进行分类的准确性相关联的信息更新所述数据模型来确定所述链路是否被正确分类;在确定所述链路是否被正确分类之后,将所述链路的类更新为所述第一类、所述第二类或所述第三类;以及基于对所述链路进行分类和/或更新所述链路的类来执行与提高链路质量相关联的一个或多个动作。

根据一些可能的实现,其中所述历史链路质量信息和/或所述链路质量信息包括以下中的至少一项:一个或多个实际链路质量度量,一个或多个链路质量预测器,一个或多个环境条件,或者上述各项的某种组合。

根据一些可能的实现,其中所述一个或多个处理器在对所述链路进行分类时用于:将所述链路分类为所述第二类或所述第三类,所述第二类与边际链路质量相关联,并且所述第三类与低链路质量相关联;以及其中所述一个或多个处理器在确定所述链路是否被正确分类时用于:确定所述链路被不正确地分类,以及使用动态质量系数值更新所述数据模型,所述动态质量系数值与重新训练所述数据模型以提高链路分类的准确性相关联。

根据一些可能的实现,其中所述一个或多个处理器在对所述链路进行分类时用于:将所述链路分类为与所述第三链路质量度量相关联的所述第三链路类,所述第三链路质量度量与低链路质量相关联,以及在发生实际链路错误之前停用所述链路以防止所述链路上的业务丢弃。

根据一些可能的实现,其中所述一个或多个处理器在确定所述链路是否被正确分类时用于:在发生实际链路错误之前停用所述链路,以及执行诊断测试以标识所述链路是否被正确分类;以及其中所述一个或多个处理器在更新所述链路的所述类时用于:基于所述诊断测试的结果更新所述链路的所述类。

根据一些可能的实现,其中所述一个或多个处理器在确定所述链路是否被正确分类时用于:执行诊断测试以确定所述链路的实际质量等级,比较所述链路的所述实际质量等级和与所述链路的所述类相关联的质量等级,基于比较所述链路的所述实际质量等级和与所述链路的所述类相关联的所述质量等级来确定所述链路是否被正确分类,以及基于所述链路是否被正确分类,使用与更新所述链路的所述类相关联的一个或多个质量系数值来更新所述数据模型。

根据一些可能的实现,其中所述一个或多个处理器在执行与提高所述链路质量相关联的所述一个或多个动作时用于:执行所述一个或多个动作中的至少一个动作,所述一个或多个动作包括:适应与所述链路相关联的一个或多个环境条件,或者向与感兴趣方相关联的设备提供用于修复或更换与所述链路相关联的一个或多个硬件组件和/或软件模块的推荐。

根据一些可能的实现,一种存储指令的非暂态计算机可读介质,所述指令包括:在由一个或多个处理器执行时引起一个或多个处理器进行以下操作的一个或多个指令:获取使用与一组链路相关联的历史链路质量信息被训练的数据模型,所述历史链路质量信息包括与测量链路质量相关联的一个或多个值;在获取所述数据模型之后,确定与主动支持业务流的链路相关联的链路质量信息;通过使用所述链路质量信息作为针对所述数据模型的输入对所述链路进行分类,所述数据模型用于将所述链路分类为与测量链路质量相关联的一组类中的类;通过执行与提高对所述链路进行分类的准确性相关联的一个或多个动作来确定所述链路是否被正确分类;在确定所述链路是否被正确分类之后,选择性地更新所述路的所述类;以及基于对所述链路进行分类和/或选择性地更新所述链路的所述类来执行与提高链路质量相关联的一个或多个动作。

根据一些可能的实现,其中引起所述一个或多个处理器确定所述链路是否被正确分类的所述一个或多个指令引起所述一个或多个处理器:确定所述链路被不正确地分类,以及通过修改一个或多个质量系数值来更新所述数据模型,所述一个或多个质量系数值与通过提高链路分类的所述准确性来适应环境条件相关联。

根据一些可能的实现,其中引起所述一个或多个处理器确定所述链路是否被正确分类的所述一个或多个指令引起所述一个或多个处理器:标识所述链路被分类为所述类的次数,确定所述链路已经被分类为所述类的所述次数不满足与所述类相关联的分类的阈值数目,在确定所述链路已经被分类为所述类的所述次数不满足与所述类相关联的所述分类的阈值数目之后停用所述链路,以及在停用所述链路之后,执行诊断测试以标识所述链路未被正确分类;以及其中引起所述一个或多个处理器选择性地更新所述链路的所述类的所述一个或多个指令引起所述一个或多个处理器:将所述链路的所述类更新为与不同于所述类的链路质量的链路质量相关联的另一类。

根据一些可能的实现,其中引起所述一个或多个处理器确定所述链路是否被正确分类的所述一个或多个指令引起所述一个或多个处理器:在对所述链路进行分类之后,执行诊断测试以标识所述链路未被正确分类;以及其中引起所述一个或多个处理器选择性地更新所述链路的所述类的所述一个或多个指令引起所述一个或多个处理器:基于所述诊断测试的结果来将所述链路的所述类更新为与不同于所述类的链路质量的链路质量相关联的另一类。

根据一些可能的实现,其中引起所述一个或多个处理器确定所述链路是否被正确分类的所述一个或多个指令引起所述一个或多个处理器:标识所述链路已经被分类为所述类的次数,以及确定所述链路已经被分类为所述类的所述次数满足与所述类相关联的分类的阈值数目;以及其中所述一个或多个指令在由所述一个或多个处理器执行时还引起所述一个或多个处理器:在确定所述链路已经被分类为所述类的所述次数满足与所述类相关联的所述分类的阈值数目之后,将所述链路列入黑名单。

根据一些可能的实现,其中引起所述一个或多个处理器对所述链路进行分类的所述一个或多个指令引起所述一个或多个处理器:将所述链路分类为与低链路质量相关联的类;以及其中所述一个或多个指令在由所述一个或多个处理器执行时还引起所述一个或多个处理器:指派一个或多个附加链路以支持与所述链路相关联的业务流,以及在所述一个或多个附加链路开始支持业务流之后,停用所述链路。

根据一些可能的实现,一种方法,包括:由设备接收已训练数据模型,所述已训练数据模型使用与一组链路相关联的历史链路质量信息被训练;由所述设备在接收到所述已训练数据模型之后,确定与主动支持业务的链路相关联的链路质量信息;由所述设备通过使用所述链路质量信息作为针对所述数据模型的输入对所述链路进行分类,所述数据模型用于将所述链路分类为与测量链路质量相关联的一组类中的类;由所述设备确定所述链路的实际质量等级;由所述设备在确定所述链路的所述实际链路质量之后,选择性地更新所述链路的所述类;以及由所述设备基于对所述链路进行分类和/或选择性地更新所述链路的所述类来执行与提高链路质量相关联的一个或多个动作。

根据一些可能的实现,还包括:执行诊断测试以确定所述链路的所述实际质量等级,比较所述链路的所述实际质量等级和与所述链路的所述类相关联的质量等级,基于比较所述链路的所述实际质量等级和与所述链路的所述类相关联的所述质量等级来确定所述链路是否被正确分类,以及使用与分类和/或更新所述链路的所述类相关联的一个或多个值来更新所述数据模型。

根据一些可能的实现,其中确定所述链路的所述实际质量等级包括:标识所述链路已经被分类为所述类的次数,确定所述链路已经被分类为所述类的所述次数是否满足分类的阈值数目,以及如果所述链路已经被分类为所述类的所述次数不满足所述分类的阈值数目,则执行诊断测试以确定所述链路的所述实际质量等级。

根据一些可能的实现,还包括:在将所述链路分类为所述类之后停用所述链路,在停用所述链路之后,执行诊断测试以标识所述链路未被正确分类,以及通过修改与分类和/或更新所述链路的所述类相关联的一个或多个质量系数值来更新所述数据模型,所述一个或多个质量系数值基于所述诊断测试的结果被修改;以及其中更新所述链路的所述类包括:使用已经被更新的所述数据模型来将所述链路的所述类更新为另一类。

根据一些可能的实现,其中更新所述数据模型包括:使用已修改的所述一个或多个质量系数值来更新所述数据模型;以及其中选择性地更新所述链路的所述类包括:提供所述链路质量信息作为针对所述数据模型的输入,所述数据模型用于使用已修改的所述一个或多个质量系数值来更新所述链路的所述类。

根据一些可能的实现,还包括:在将所述链路分类为所述类之后停用所述链路,在停用所述链路之后,执行诊断测试以标识所述链路是否被正确分类,以及基于所述诊断测试的结果来确定是否要更新所述数据模型,如果所述诊断测试的所述结果指示所述链路被不正确地分类,则要更新所述数据模型。

根据一些可能的实现,其中确定所述链路的所述实际质量等级包括:确定所述链路是高风险链路,以及监测和测试所述链路,所述监测和所述测试比与低风险链路相关联的监测和测试更频繁且更详尽。

附图说明

图1a至1d是本文中描述的示例实现的概述的图;

图2是其中可以实现本文中描述的系统和/或方法的示例环境的图;

图3是图2的一个或多个设备的示例组件的图;

图4是使用机器学习来监测链路质量和检测链路故障的示例过程的流程图;以及

图5a至5c是与图4所示的示例过程相关的一个或多个示例实现的图。

具体实施方式

以下对示例实现的详细描述参考附图。不同附图中的相同的附图标记可以标识相同或相似的元素。

随着对数据服务的需求的增加,网络设备处理的业务量可能增加。这可能导致位于网络设备内的板(例如,印刷电路板(pcb))内的更高带宽互连,并且还可能导致链路(例如,串行器解串器(serdes)链路)以更高速度运行。此外,板可能密集地包含内部链路,导致干扰并且导致板的寿命期间的链路劣化。然而,很多网络设备仅能够在故障发生之后检测链路故障(例如,链路劣化)。

本文中描述的一些实现提供了一种网络设备,其使用一种或多种机器学习技术来监测链路质量并且在链路发生故障之前检测链路故障。例如,模型生成设备可以使用与一组链路相关联的历史链路质量信息来训练数据模型(例如,通过创建预测函数),并且可以将已训练数据模型(例如,预测函数)提供给一组网络设备。在这种情况下,该组网络设备可以通过使用与链路相关联的链路质量信息作为针对数据模型的输入来对主动支持业务流的链路进行分类。此外,网络设备可以执行与提高链路分类的准确性相关联的一个或多个动作和/或与提高链路质量相关联的一个或多个动作(例如,修复链路和/或板的请求、更换板的请求、适应与链路相关联的环境条件等)。

以这种方式,该组网络设备预测链路故障,并且通过采取一个或多个先发制人的动作经由与该组网络设备相关联的链路来消除业务丢失。此外,通过执行与提高链路质量相关联的一个或多个动作,该组网络设备提高了网络通信的效率和可靠性。

图1a至1d是本文中描述的示例实现100的概述的图。如图1a至1d所示,示例实现100可以包括模型生成设备,模型生成设备使用一种或多种机器学习技术来训练可以用于监测链路质量和检测链路故障的数据模型。另外,如本文中进一步详细描述的,一组网络设备可以使用已训练数据模型来执行与提高链路分类的准确性相关联的一个或多个动作和/或与提高链路质量相关联的一个或多个动作。

如图1a和附图标记105所示,模型生成设备可以从数据源接收历史链路质量信息。历史链路质量信息可以包括与测量链路质量相关联的一个或多个值。在这种情况下,历史性能信息可以包括一个或多个实际链路质量度量、一个或多个链路质量预测器、和/或一个或多个环境条件。

例如,一个或多个实际链路质量度量可以包括与标识数据传输中的错误相关联的一个或多个值,诸如前向纠错(fec)值、循环冗余校验(crc)值、测量信号完整性的一个或多个值(诸如信噪比(snr))等。另外,一个或多个链路质量预测器可以包括误码率(ber)值、链路眼宽度值、链路眼高度值、链路质量斜率等。此外,一个或多个环境条件可以包括温度值(例如,板的温度、系统的温度等)、链路正常运行时间值等。

此外,历史链路质量信息可以与在不同环境条件下操作的一组网络设备相关联,从而允许模型生成设备训练考虑很多不同环境条件的数据模型。

如附图标记110所示,模型生成设备可以训练数据模型。例如,模型生成设备可以通过创建能够对主动支持业务流的链路进行分类的预测函数来训练数据模型,如本文中进一步描述的。在这种情况下,网络设备可以通过将历史链路质量信息中包括的值与质量系数值(例如,指示特定链路质量度量的值)相关联来创建预测函数。另外,网络设备可以配置可以用于确定总体链路质量得分的一个或多个权重值。

作为示例,假定历史链路质量信息包括五个值(例如,值a、值b、值c、值d和值e)。进一步假定,值a对链路质量具有正面影响(例如,高a值是高链路质量的强指示符),值b至d对链路质量没有很大影响,并且值e对链路质量具有负面影响(例如,高e值是低链路质量的强指示符)。在这种情况下,预测函数可以通过向极性(例如,正、负)和权重(例如,链路质量=0.9a+0.1b+0.2c+0.05d-0.9e)赋值来解释不同程度的影响。

如附图标记115所示,模型生成设备可以将数据模型提供给一组网络设备(被示出为网络设备1至网络设备n)。例如,模型生成设备可以向该组网络设备提供预测函数以用作每个网络设备在监测业务流时可以实现的初始数据模型。

以这种方式,该组网络设备可以接收可以用于对主动支持业务流的链路进行分类的已训练数据模型。

尽管图1b至1d示出了第一网络设备(被示出为网络设备1)执行与提高链路分类的准确性相关联的一个或多个动作和/或与提高链路质量相关联的一个或多个动作,但是实际上,该组网络设备(网络设备1至网络设备n)每个执行与提高链路分类的准确性相关联的一个或多个动作和/或与提高链路质量相关联的一个或多个动作。

如图1b和附图标记120所示,第一网络设备可以分析与链路相关联的业务以确定链路质量信息。例如,业务可以通过链路,并且第一网络设备可以使用一种或多种性能监测技术来确定针对链路的链路质量信息。

作为示例,第一网络设备可以通过比较在比特串行进通过链路之前和之后的比特串值来确定ber值。作为另一示例,第一网络设备可以使用一个或多个传感器来测量与板相关联的温度值。作为另一示例,第一网络设备可以监测业务以确定噪声值和信号值,并且可以处理这些值以确定snr值。以这种方式,第一网络设备可以确定针对主动支持业务流的链路的链路质量信息。

如附图标记125所示,第一网络设备可以使用数据模型对链路进行分类。例如,第一网络设备可以通过使用链路质量信息作为数据模型的输入来对链路进行分类,这可以引起数据模型输出总体链路质量得分。在一些情况下,总体链路质量得分可以与一个或多个链路质量类相关联,诸如与高链路质量相关联的类、与边际链路质量相关联的类、或与低链路质量相关联的类。在所示的示例中,数据模型可以将链路分类为与边际链路质量相关联的类。

通过使用数据模型对链路进行分类,第一网络设备可以执行与提高链路分类的准确性相关联的一个或多个动作和/或与提高链路质量相关联的一个或多个动作,如本文中进一步描述的。

如图1c和附图标记130所示,第一网络设备可以确定链路的实际质量等级。例如,第一网络设备可以在链路活动时确定链路的实际质量等级,和/或可以在停用链路之后确定链路的实际质量等级。作为示例,第一网络设备可以通过执行诸如fec技术、crc技术等非侵入式技术来在链路活动时确定链路的实际质量等级。作为另一示例,第一网络设备可以在业务被重定向到另一链路之后停用链路(以便防止链路上的业务丢弃),并且可以通过对链路执行诊断测试来确定链路的实际质量等级。在一些情况下,第一网络设备可以使用伪随机二进制序列(prbs)测试来监测行进通过链路的比特。在这种情况下,链路可以基于成功地行进通过链路的比特的数目来通过或不通过prbs测试。如示例所示,假定当比特行进通过链路时,阈值数目的比特的值发生改变(例如,从0到1或者从1到0)。这可能导致链路未通过诊断测试,表明链路是低质量链路。

另外,第一网络设备可以确定链路是否被正确分类。例如,第一网络设备可以比较链路的分类和链路的实际质量等级(例如,如诊断测试所指示的)。如果链路的分类和链路的实际质量等级不匹配(即,链路被不正确地分类),则第一网络设备可以通过修改一个或多个质量系数值来更新数据模型以提高链路的后续分类。例如,第一网络设备可以接收分类作为边际质量链路(例如,作为训练数据的结果),但是由于特定于第一网络设备的环境条件而可以具有低链路质量的实际链路分类。以这种方式,第一网络设备可以更新数据模型以动态地适应特定于第一网络设备的环境条件。

如附图标记135所示,第一网络设备可以更新链路的类。例如,第一网络设备可以基于诊断测试的结果来更新链路的类。在这种情况下,第一网络设备可以将链路的类更新为与先前分类不同的类。例如,如果链路通过诊断测试,则第一网络设备可以将链路的类更新为与高链路质量相关联的类,并且如果链路未通过诊断测试,则第一网络设备可以将链路的类更新为与低链路质量相关联的类。替代地,第一网络设备可以通过重新使用链路质量信息作为针对数据模型的输入来更新链路的类。在这种情况下,作为修改与数据模型相关联的一个或多个质量系数值的结果,数据模型可以输出更准确的链路质量预测。在所示的示例中,第一网络设备可以将链路的类更新为与低链路质量相关联的类。

通过确定链路的实际质量等级并且更新链路的类,第一网络设备能够提高链路分类的准确性。此外,如果链路被分类或重新分类为低质量链路,则第一网络设备可以停用链路以防止后续业务遭受分组丢失。

如图1d和附图标记140所示,第一网络设备可以确定链路是否已经接收到与低链路质量相关联的阈值数目的分类。例如,第一网络设备可以在一定间隔内监测链路,并且可以在整个间隔内周期性地对链路进行分类。在这种情况下,如果第一网络设备将链路分类为低质量链路,则第一网络设备可以将链路被分类为低质量链路的当前次数和与低链路质量相关联的分类的阈值数目相比较。以这种方式,第一网络设备能够标识是否要将链路列入黑名单(即,防止链路能够主动支持业务流)或者监测和测试链路。

如附图标记145所示,如果链路被分类为低质量链路的当前次数不满足与低链路质量相关联的分类的阈值数目,则第一网络设备可以监测和测试链路。例如,第一网络设备可以继续监测链路,对链路执行附加诊断测试,执行附加fed技术,和/或更新数据模型以提高链路分类的准确性,等等。以这种方式,第一网络设备能够在将链路列入黑名单和/或执行与提高链路质量相关联的附加动作之前验证链路是否为低质量链路。

如附图标记150所示,如果链路被分类为低质量链路的当前次数满足与低链路质量相关联的分类的阈值数目,则第一网络设备可以将链路列入黑名单。在这种情况下,第一网络设备可以将链路列入黑名单以防止链路能够主动支持业务流。通过将链路列入黑名单,第一网络设备避免了在低质量链路继续支持业务流的情况下可能导致的业务丢弃和链路故障,从而提高了网络通信的质量。

如附图标记155所示,第一网络设备可以生成推荐。例如,第一网络设备可以生成以下推荐:修复链路(例如,内部链路、外部链路)和/或板,更换链路(例如,外部链路)和/或板,等等。在这种情况下,推荐可以包括与链路相关联的链路质量信息、诊断测试的结果、和/或指示要执行的特定动作(例如,修复链路,修复板,更换链路,更换板,等等)的指令。

如附图标记160所示,第一网络设备可以向与感兴趣方(例如,技术人员)相关联的网络管理设备提供推荐。以这种方式,感兴趣方可以修复和/或更换链路和/或板,从而相对于允许低质量链路继续支持业务流而言提高了网络通信。

在一些实现中,第一网络设备可以生成并且提供对被分类或重新分类为与边际链路质量相关联的类的链路的推荐。以这种方式,感兴趣方可以在分组丢弃和/或信号丢失之前修复和/或更换链路和/或板。

如附图标记165所示,第一网络设备可以继续调整数据模型。例如,第一网络设备可以继续监测业务流并且修改数据模型以提高链路分类的准确性,适应与链路相关联的环境条件,使用预测技术来在故障发生之前标识链路故障,等等。

以这种方式,第一网络设备能够管理链路质量并且在链路故障发生之前预测链路故障。

如上所述,图1a至1d仅作为示例提供。其他示例是可能的,并且可以与关于图1a至1d描述的不同。

图2是其中可以实现本文中描述的系统和/或方法的示例环境200的图。如图2所示,环境200可以包括一个或多个数据源210、模型生成设备220、一个或多个网络设备230-1至230-n(n≥1)(下文中统称为“网络设备230”并且单独地称为“网络设备230”)、网络管理设备240和/或网络250。环境200的设备可以经由有线连接、无线连接或者有线和无线连接的组合互连。

数据源210包括能够接收、存储和/或提供历史链路质量信息的一个或多个设备。例如,数据源210可以包括服务器设备或服务器设备群组。在一些实现中,数据源210可以与一组网络设备230(或可以监测链路质量的其他设备)交互以接收链路质量信息并且将链路质量信息存储为历史链路质量信息。在一些实现中,数据源210可以存储与一组链路相关联的历史链路质量信息。在一些实现中,数据源210可以将历史链路质量信息提供给模型生成设备220和/或网络设备230。

模型生成设备220包括能够接收、存储、处理和/或提供与链路质量相关联的信息的一个或多个设备。例如,模型生成设备220可以包括服务器设备或服务器设备群组。在一些实现中,模型生成设备220可以被实现为云平台。替代地,模型生成设备220可以被实现为服务器设备(例如,现场服务器设备)。在一些实现中,模型生成设备220可以从数据源210接收历史链路质量信息。在一些实现中,模型生成设备220可以处理历史链路质量信息以训练数据模型(例如,通过创建预测函数)。在一些实现中,模型生成设备220可以向网络设备230提供已训练数据模型(例如,预测函数)。

网络设备230包括能够接收、处理、转发和/或传送与链路相关联的信息的一个或多个设备。例如,网络设备230可以包括路由器,诸如标签交换路由器(lsr)、标签边缘路由器(ler)、入口路由器、出口路由器、提供商路由器(例如,提供商边缘路由器、提供商核心路由器等)、虚拟路由器等。另外地或替代地,网络设备230可以包括网关、交换机、防火墙、集线器、网桥、反向代理、服务器(例如,代理服务器、云服务器、数据中心服务器等)、负载平衡器或类似设备。在一些实现中,网络设备230可以是在诸如机箱等壳体内实现的物理设备。在一些实现中,网络设备230可以是由云计算环境或数据中心的一个或多个计算机设备实现的虚拟设备。

在一些实现中,网络设备230可以包括或连接到一组链路,并且该组链路可以被监测(例如,使用硬件组件(诸如传感器或抽头(tap)),使用软件模块,等等)以标识与该组链路相关联的链路质量信息。在一些实现中,网络设备230可以使用数据模型(例如,预测函数)来对链路进行分类,并且可以执行与提高链路分类的准确性相关联的一个或多个动作(例如,如图2中的反馈循环所示,网络设备230可以调整数据模型)和/或与提高链路质量相关联的一个或多个动作。在一些实现中,网络设备230可以向数据源210提供链路质量信息(例如,其可以被存储为历史链路质量信息)。在一些实现中,网络设备230可以向网络管理设备240提供修复链路的推荐。

网络管理设备240包括能够接收、存储、处理和/或提供与链路相关联的信息的一个或多个设备。例如,网络管理设备240可以包括计算设备,诸如台式计算机、膝上型计算机、平板计算机、服务器设备、移动电话(例如,智能电话或无线电话)、可穿戴计算机(例如,智能手表、智能手环、智能眼镜等)、传感器设备或类似类型的设备。在一些实现中,网络管理设备240可以从网络设备230接收以下推荐:修复链路,更换与链路相关联的板,等等。在这种情况下,网络管理设备240可以调度用于修复链路或者更换与链路相关联的板的约定,和/或可以向网络设备230提供指示约定已经被调度的响应消息。

网络250包括一个或多个有线和/或无线网络。例如,网络250可以包括蜂窝网络(例如,第五代(5g)网络、第四代(4g)网络(诸如长期演进(lte)网络)、第三代(3g)网络、码分多址(cdma)网络等)、公共陆地移动网络(plmn)、局域网(lan)、广域网(wan)、城域网(man)、电话网络(例如,公共交换电话网(pstn))、专用网络、自组织网络、内联网、因特网、基于光纤的网络、云计算网络等、和/或这些或其他类型的网络的组合。

图2所示的设备和网络的数目和布置作为示例提供。实际上,可以存在与图2所示的相比更多的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络、或者不同地布置的设备和/或网络。此外,图2所示的两个或更多个设备可以在单个设备内实现,或者,图2所示的单个设备可以实现为多个分布式设备。另外地或替代地,环境200的一组设备(例如,一个或多个设备)可以执行被描述为由环境200的另一组设备执行的一个或多个功能。

图3是设备300的示例组件的图。设备300可以对应于数据源210、模型生成设备220、网络设备230和/或网络管理设备240。在一些实现中,数据源210、模型生成设备220、网络设备230和/或网络管理设备240可以包括一个或多个设备300和/或设备300的一个或多个组件。如图3所示,设备300可以包括交换结构310、一个或多个线卡320、一个或多个链路(例如,一组外部链路330、一组板间链路340、一组板内(板载)链路342等)、和/或控制器350。在一些实现中,交换结构310与控制器350之间的业务可以通过单个内部链路340来提供和/或接收。在一些实现中,交换结构310与控制器350之间的业务可以通过一组板间链路340来提供和/或接收,其中每个内部链路340m可以被指定用于外部链路330的子集和/或线卡320的子集。在一些实现中,线卡320可以使用一组板间链路340来与交换结构310的一个或多个对应平面通信。

交换结构310经由线卡320互连外部链路330。在一些实现中,交换结构310可以使用一个或多个交换结构组件312(例如,一个或多个交叉开关、一个或多个总线、一个或多个共享存储器、和/或一个或多个平面)来实现。在一些实现中,交换结构组件312可以使用板内(板载)链路342来连接。在一些实现中,交换结构310可以使得外部链路330能够通信。例如,交换结构310可以经由一组板间链路340与一个或多个线卡320连接,并且一个或多个线卡320可以与外部链路330连接,如本文中进一步描述的。

线卡320包括一个或多个线卡组件322。例如,线卡320可以包括被设计为适合pcb的模块化电子电路,并且可以包括一个或多个线卡组件322(例如,分组处理组件、重新计时器等)。分组处理组件可以包括用于处理分组的一个或多个处理器,并且可以处理输入业务,诸如通过执行数据链路层封装或解封装。在一些实现中,分组处理组件可以从交换结构310接收分组,可以处理分组,并且可以将已处理分组输出到连接到线卡组件320的适当的外部链路330。另外地或替代地,分组处理组件可以从外部链路330接收分组,可以处理分组,并且可以将已处理分组输出到交换结构310用于传送到控制器350和/或另一外部链路330(例如,经由相同的分组处理组件或不同的分组处理组件)。

外部链路330是物理链路的附接点,并且可以是诸如分组等输入和/或输出业务的入口和/或出口点。在一些实现中,单个线卡320可以连接到多个外部链路330。在一些实现中,单个线卡320可以连接到单个外部链路330。外部链路330可以允许第一网络设备230与作为第一网络设备230的邻居的第二网络设备230之间的通信。外部链路330可以存储分组(例如,在缓冲器中),和/或可以调度分组以在输出物理链路上传输。外部链路330可以支持数据链路层封装或解封装和/或各种更高级协议。

板间链路340是允许线卡320和/或控制器350与交换结构310通信的路径。板间链路340可以包括例如有线或无线路径,诸如光纤路径、电路径等。在一些实现中,在单个线卡组件320与交换结构310之间可以存在多个板间链路340。在一些实现中,在控制器350与交换结构310之间可以存在单个板间链路340。板内(板载)链路342是允许线卡组件322和/或交换结构组件312之间的互连的路径。

控制器350包括处理器,处理器的形式为例如中央处理单元(cpu)、图形处理单元(gpu)、加速处理单元(apu)、微处理器、微控制器、数字信号处理器(dsp)、现场可编程门阵列(fpga)、专用集成电路(asic)和/或另一类型的处理器。处理器以硬件、固件或硬件和软件的组合来实现。在一些实现中,控制器350可以包括可以被编程以执行功能的一个或多个处理器。在一些实现中,控制器350可以包括每个包括一个或多个处理器的虚拟设备群组。

在一些实现中,控制器350可以包括随机存取存储器(ram)、只读存储器(rom)和/或存储用于由控制器350使用的信息和/或指令的另一类型的动态或静态存储设备(例如,闪存、磁存储器、光学存储器等)。

在一些实现中,控制器350可以与连接到设备300的其他设备、网络和/或系统通信以交换关于网络拓扑的信息。控制器350可以基于网络拓扑信息创建路由表,基于路由表创建转发表,并且将转发表转发给线卡组件320,诸如用于在执行对输入和/或输出分组的路由查找时使用。

控制器350可以执行本文中描述的一个或多个过程。控制器350可以响应于执行由非暂态计算机可读介质存储的软件指令来执行这些过程。计算机可读介质在本文中定义为非暂态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或跨多个物理存储设备分布的存储器空间。

软件指令可以经由通信接口从另一计算机可读介质或从另一设备读入与控制器350相关联的存储器和/或存储组件。当被执行时,存储在与控制器350相关联的存储器和/或存储组件中的软件指令可以引起控制器350执行本文中描述的一个或多个过程。另外地或替代地,可以代替软件指令或与软件指令组合地使用硬连线电路以执行本文中描述的一个或多个过程。因此,本文中描述的实现不限于硬件电路和软件的任何特定组合。

图3所示的组件的数目和布置作为示例提供。实际上,设备300可以包括与图3所示的更多的组件、更少的组件、不同的组件、或者不同地布置的组件。另外地或替代地,设备300的一组组件(例如,一个或多个组件)可以执行被描述为由设备300的另一组组件执行的一个或多个功能。

图4是用于使用机器学习来监测链路质量和检测链路故障的示例过程400的流程图。在一些实现中,图4的一个或多个过程框可以由网络设备230执行。在一些实现中,图4的一个或多个过程框可以由与网络设备230分开或包括网络设备230的另一设备或设备群组(诸如数据源210、模型生成设备220和/或网络管理设备240)执行。

如图4所示,过程400可以包括接收与一组链路相关联的历史链路质量信息(框410)。例如,模型生成设备220可以从数据源210接收与一组链路(例如,网络设备内的一组内部链路、设备之间的一组外部链路等)相关联的历史链路质量信息。链路可以是提供设备的组件和/或模块(例如,硬件组件、软件模块等)之间的连接的内部链路,或者可以是提供设备之间的连接的外部链路。

在一些实现中,数据源210可以存储历史链路质量信息。例如,数据源210可以使用数据结构(诸如数组、链表、树、图、哈希表、数据库等)来存储历史链路质量信息。在一些实现中,数据源210可以存储大量数据。例如,数据源210可以存储数千、数百万、数十亿、或甚至数万亿的数据点。

在一些实现中,模型生成设备220可以接收历史链路质量信息。历史链路质量信息可以包括一个或多个实际链路质量度量、一个或多个链路质量预测器、和/或一个或多个环境条件。例如,一个或多个实际链路质量度量可以包括与标识数据传输中的错误相关联的一个或多个值,诸如前向纠错(fec)值、循环冗余校验(crc)值、测量信号完整性的一个或多个值(诸如信噪比(snr)比值)等。另外,一个或多个链路质量预测器可以包括误码率(ber)值、链路眼宽度值、链路眼高度值、链路质量斜率等。此外,一个或多个环境条件可以包括温度值(例如,板的温度、系统的温度等)、链路正常运行时间值等。

在一些实现中,模型生成设备220可以接收一组网络设备230的历史链路质量信息。例如,模型生成设备220可以接收在不同环境条件下操作的一组网络设备230的历史链路质量信息。通过接收在不同环境条件下操作的设备的历史链路质量信息,模型生成设备220可以处理历史链路质量信息以训练数据模型,如本文中进一步描述的。

以这种方式,模型生成设备220可以接收与一组链路相关联的历史链路质量信息,使得该信息可以用于训练数据模型。

如图4进一步所示,过程400可以包括使用历史链路质量信息来训练数据模型(框420)。例如,模型生成设备220可以使用机器学习技术来训练可以用于对链路进行分类的数据模型,如本文中进一步描述的。

在一些实现中,模型生成设备220可以训练数据模型以供一组网络设备230使用。例如,模型生成设备220可以通过创建预测函数来训练数据模型,并且可以将预测函数提供给该组网络设备230。在这种情况下,模型生成设备220可以通过将历史链路质量信息中包括的值与动态质量系数值(例如,可以是正的或负的)相关联来创建预测函数。质量系数值可以是指示特定链路质量测量的值。在一些情况下,质量系数值可以被分组为与高链路质量、边际链路质量或低链路质量相关联的类。

另外,模型生成设备220可以通过配置可以用于确定总体链路质量得分的一个或多个权重值来创建预测函数。例如,模型生成设备220可以向特定质量系数值指派权重。以这种方式,模型生成设备220可以使用加权的质量系数值来确定总体链路质量得分。

在一些实现中,如本文中描述的,模型生成设备220可以使用监督机器学习技术来训练数据模型。附加地或替代地,模型生成设备220可以使用不同类型的机器学习技术来训练数据模型,诸如经由聚类的机器学习、降维、结构化预测、异常检测、神经网络、强化学习等。

以这种方式,模型生成设备220可以使用历史链路质量信息来训练可以由一组网络设备230使用以对主动支持业务流的一组链路进行分类的数据模型。虽然该组网络设备230可以利用数据模型来对主动支持业务流的一组链路进行分类,但是本文中描述的实现描述了与单个网络设备230和单个链路相关联的数据流以说明示例过程。

如图4进一步所示,过程400可以包括向网络设备提供数据模型(框430)。例如,模型生成设备220可以向网络设备230提供数据模型(例如,其包括预测函数)。以这种方式,网络设备230可以使用数据模型来对主动支持业务流的链路进行分类。

如图4进一步所示,过程400可以包括通过使用与链路相关联的链路质量信息作为数据模型的输入来对主动支持业务流的链路进行分类(框440)。例如,网络设备230可以接收数据模型,并且可以确定与主动支持业务流的链路相关联的链路质量信息,并且可以使用链路质量信息作为数据模型的输入。在这种情况下,数据模型可以输出总体链路质量得分,总体链路质量得分用于将链路分类为与高链路质量相关联的类、与边际链路质量相关联的类或与低链路质量相关联的类。在其他情况下,数据模型可以使用不同的分类方案,诸如具有更多类的分类方案、具有更少类的分类方案、关注于不同度量(例如,链路质量的子集,诸如特定的链路质量度量)的分类方案等。

在一些实现中,网络设备230可以确定与主动支持业务流的链路相关联的链路质量信息。例如,网络设备230可以使用一种或多种技术来确定链路的链路质量和/或监测环境条件。在一些情况下,网络设备230可以使用不同的质量监测技术来监测链路质量信息中包括的不同值。作为示例,网络设备230可以监测行进通过链路的比特以确定ber值。作为另一示例,网络设备230可以使用一个或多个传感器来监测和测量与板、asic等相关联的温度值。以这种方式,网络设备230可以确定主动支持业务流的链路的链路质量信息。

在一些实现中,网络设备230可以将链路分类为与高链路质量相关联的类。例如,网络设备230可以使用包括与高链路质量相关联的一个或多个值(例如,低ber值、低fec值等)的链路质量信息作为数据模型的输入。在这种情况下,数据模型可以输出与高链路质量相关联的总体链路质量得分。在一些实现中,网络设备230可以以与上述相同的方式将链路分类为与边际链路质量或低链路质量相关联的类。

以这种方式,网络设备230能够将链路分类为与特定质量等级相关联的类,并且可以通过停用具有边际或低链路质量的链路来防止链路故障和业务丢失。

如图4进一步所示,过程400可以包括:如果链路被分类为与边际链路质量相关联的类或与低链路质量相关联的类,则停用链路(框450)。例如,网络设备230可以将链路分类为与边际链路质量或低链路质量相关联的类,可以重定向业务以避免经由链路的业务流,并且可以停用链路。

在一些实现中,在停用链路之前,网络设备230可以通过执行fec技术、crc技术等来确定链路的实际质量等级。例如,网络设备230可以执行fec技术、crc技术等,以确定数据模型的输出是否是错误预测(例如,假阳性、假中性、假阴性)。在这种情况下,如果网络设备230检测到错误预测,则网络设备230可以更新数据模型,从而提高后续链路预测的准确性。

在一些实现中,网络设备230可以停用链路。例如,假定链路被分类为与边际链路质量或低链路质量相关联的类。在这种情况下,网络设备230可以重定向业务以避免经由链路的业务流(例如,通过指派一个或多个附加链路以支持与被分类为边际链路质量或低链路质量的链路相关联的业务流)。另外,网络设备230可以停用链路以允许用于提高链路分类的准确性的一个或多个动作被执行。

如图4进一步所示,过程400可以包括在停用链路之后执行与提高链路分类的准确性相关联的一个或多个动作(框460)。例如,网络设备230可以确定链路的实际质量(例如,通过执行诊断测试等),更新数据模型(例如,通过修改质量系数值、阈值、权重值等),更新链路的类,等等。

在一些实现中,网络设备230可以通过执行诊断测试来确定链路的实际质量等级。例如,网络设备230可以执行伪随机二进制序列(prbs)测试以确定链路的实际质量等级。在这种情况下,网络设备230可以执行prbs测试以确定链路的实际质量等级(例如,高质量、边际质量、低质量等),并且可以比较链路的实际质量等级和链路分类以确定链路是否被正确分类。

在一些情况下,prbs测试可以能够通过确定有多少比特能够准确地行进通过链路来确定链路的实际质量等级(例如,零比特从链路的第一侧到链路的第二侧是否保持为零比特,一个比特从链路的第一侧到链路的第二侧是否保持为一个比特,等等)。在这种情况下,prbs测试可以使用阈值来确定链路的实际质量等级。如果第一阈值量的比特准确地进行通过链路,则prbs测试可以确定链路与高链路质量相关联。如果第二阈值量的比特准确地行进通过链路,则prbs测试可以确定链路与边际链路质量相关联。如果第三阈值量的比特准确地进行通过链路,则prbs测试可以确定链路与低链路质量相关联。以这种方式,prbs测试可以将链路的实际质量与链路分类相比较以确定链路是否被正确分类。

在一些实现中,网络设备230可以基于诊断测试的结果来更新链路的类。例如,如果诊断测试指示链路的实际质量不同于与分类相关联的质量,则网络设备230可以更新链路的类。

在一些实现中,网络设备230可以通过更新数据模型来更新链路的类。例如,网络设备230可以基于诊断测试的结果来修改(例如,增加、减少等)质量系数值中的一个或多个。在这种情况下,网络设备230可以重新提供链路质量信息作为数据模型的输入,这可以引起数据模型使用一个或多个已修改质量系数值来更新链路的类。以这种方式,网络设备230提高了后续预测的准确性(例如,相对于不更新数据模型)。

作为示例,假定网络设备230将链路分类为与高链路质量相关联的类并且链路未通过诊断测试。在这种情况下,网络设备230可以基于诊断测试的输出来将链路的类更新为与边际链路质量相关联的类或与低链路质量相关联的类。另外,网络设备230可以修改与对链路进行分类相关联的质量系数值,从而允许网络设备230进行更准确的后续链路质量预测。以这种方式,网络设备230可以更新数据模型以消除假阳性(例如,当实际链路质量为低时链路质量为高的预测)。

作为另一示例,假定网络设备230将链路分类为与边际链路质量相关联的类并且链路不接收与边际链路质量相关联的诊断测试得分。在这种情况下,网络设备230可以将链路的类更新为与高链路质量相关联的类或与低链路质量相关联的类。如果链路通过诊断测试(例如,接收与高链路质量相关联的得分),则网络设备230可以通过修改与对链路进行分类相关联的质量系数值来更新数据模型。如果链路未通过诊断测试(例如,接收与低链路质量相关联的得分),则网络设备230可以通过修改与对链路进行分类相关联的质量系数值来更新数据模型。以这种方式,网络设备230可以更新数据模型以消除假中性(例如,当实际链路质量为高或低时链路质量为边际的预测)。

作为另一示例,假定网络设备230将链路分类为与低链路质量相关联的类并且链路通过诊断测试。在这种情况下,网络设备230可以将链路的类更新为与高链路质量相关联的类或与边际链路质量相关联的类。如果链路以与高链路质量相关联的得分通过诊断测试,则网络设备230可以通过修改与对链路进行分类相关联的质量系数值来更新数据模型。如果链路以与边际质量链路相关联的得分通过诊断测试,则网络设备230可以通过修改(例如,与将链路的类更新为与高链路质量相关联的类相关联的量相比,修改更低的量)与对链路进行分类相关联的质量系数值来更新数据模型。以这种方式,网络设备230可以更新数据模型以消除假阴性(例如,当实际链路质量为边际或高时链路质量为低的预测)。

作为另一示例,假定网络设备230对链路进行分类并且诊断测试确认分类是正确的。在这种情况下,网络设备230可以利用指示所使用的质量系数值是正确值的信息来更新数据模型。以这种方式,网络设备230能够以更高的置信度对具有类似链路质量信息的后续链路进行分类。

在一些实现中,网络设备230可以监测重新分类的链路(即,已经更新了分类的链路)。例如,网络设备230可以通过接收链路质量信息的增加频率(例如,与在框440期间接收链路质量信息的频率相比的增加频率)来监测重新分类的链路。另外,网络设备230可以进行增加数目的链路质量预测以验证重新分类是否提高了链路分类的准确性。在一些实现中,网络设备230可以在一段时间间隔内监测重新分类的链路。在一些情况下,间隔的持续时间可以与链路质量相关联(例如,低质量链路的间隔比边际质量链路的间隔更长)。

作为示例,假定网络设备230通过将链路分类为具有低链路质量来确定链路为高风险链路。在这种情况下,与与较低风险链路相关联的监测和测试相比,网络设备230可以更频繁且更广泛地监测和测试链路。

在一些实现中,网络设备230可以迭代地确定链路是否被正确地分类,并且可以迭代地更新链路的类,直到链路被正确分类。

通过执行与提高链路分类的准确性相关联的一个或多个动作,已经由网络设备230连续更新的数据模型可以在所有(或大多数)情况下正确地分类链路质量,从而允许网络设备230执行与提高链路质量相关联的一个或多个动作。

如图4进一步所示,过程400可以包括在对链路进行分类之后执行与提高链路质量相关联的一个或多个动作(框470)。例如,网络设备230可以适应与链路相关联的环境条件(例如,温度水平、电压水平等),向感兴趣方(例如,网络管理员、技术人员等)提供报告和/或推荐,等等。

在一些实现中,网络设备230可以适应与链路相关联的环境条件。例如,网络设备230可以标识错误预测(例如,假阳性、假中立、假阴性等),并且可以在标识错误预测之后通过重新训练数据模型来适应环境条件。以这种方式,网络设备230可以重新训练数据模型以适应特定网络设备的环境条件。

在一些实现中,网络设备230可以单独的数据模型来实现预测技术。例如,网络设备230可以训练包括与链路故障相关联的一组特性(例如,包括导致链路故障的数据)的单独的数据模型。在这种情况下,网络设备230可以提供与活动链路相关联的链路质量信息作为单独的数据模型的输入,这可以引起单独的数据模型输出其中链路的链路质量被预测为降低超过特定链路质量阈值的预计时间段。

在一些实现中,网络设备230可以将链路列入黑名单(即,防止链路能够主动支持业务流)。例如,网络设备230可以将低质量链路列入黑名单以防止业务丢失,直到链路和/或板被修复和/或更换。在一些情况下,网络设备230可以确定链路是否具有被分类为与低链路质量相关联的类的历史,并且如果链路已经被分类为与低链路质量相关联的类超过阈值次数,则可以将链路列入黑名单。在一些情况下,网络设备230可以通过向控制链路业务的软件模块提供关于链路不再能够支持业务流的指示来将链路列入黑名单。

作为示例,假定链路被分类为与低链路质量相关联的类。在这种情况下,如果链路具有被分类为与低链路质量相关联的类的历史,则网络设备230可以将链路列入黑名单,从而防止链路主动支持业务流。如果链路没有被分类为与低链路质量相关联的类的历史,则网络设备230可以执行诊断测试以确定链路的实际质量,如上所述。以这种方式,网络设备230能够减少网络设备230内的链路故障(例如,分组丢失、信号衰减等)直到链路和/或板被修复和/或更换。

另外地或替代地,网络设备230可以向网络管理设备240提供修复或更换与链路相关联的一个或多个硬件组件和/或软件模块的推荐。例如,网络设备230可以生成推荐,推荐包括链路的链路质量信息、诊断测试的结果、和/或指示要执行的特定动作(例如,修复链路,修复板,更换链路,更换板,等等)的指令。在这种情况下,网络设备230可以向网络管理设备240提供推荐。在一些实现中,网络设备230可以自动调度用于让感兴趣方(例如,技术人员)修复与链路相关联的硬件组件和/或软件模块的约定。

以这种方式,网络设备230可以执行与提高链路质量相关联的一个或多个动作。另外,网络设备230在故障发生之前预测链路故障防止了业务丢失。此外,通过执行与提高链路分类的准确性和/或链路质量相关联的一个或多个动作,网络设备230提高了网络通信的效率和可靠性。

尽管图4示出了过程400的示例框,但是在一些实现中,过程400可以包括与图4中描绘的相比更多的、更少的框、不同的框、或者不同地布置的框。另外地或替代地,可以并行执行过程400的两个或更多个框。

图5a至图5c是与图4所示的示例过程相关的一个或多个示例实现的图。图5a示出了其中网络设备230可以标识假阳性并且可以更新数据模型以提高链路分类的准确性的示例实现。图5b示出了其中网络设备230可以标识假中性并且可以更新数据模型以提高链路分类的准确性的示例实现。图5c示出了其中网络设备230可以标识假阴性并且可以更新数据模型以提高链路分类的准确性的示例实现。以这种方式,网络设备230可以继续改善链路分类,直到数据模型能够正确地分类所有(或接近所有)链路,从而确保了可以采取动作以提高链路质量。

如图5a所示,网络设备230可以标识假阳性(例如,当实际链路质量为边际或低时,数据模型可能错误地将链路分类为与高链路质量相关联的类)。如附图标记502所示,网络设备230可以将链路分类为与高链路质量相关联的类。在这种情况下,网络设备230可以通过执行fec技术、crc技术等来确定实际链路错误(例如,硬件错误)是否与链路相关联。

如附图标记504所示,如果网络设备230确定不存在fec错误、crc错误等,则网络设备230可以空闲和/或监测链路。在这种情况下,fec技术、crc技术等用于验证链路被正确地分类为具有高链路质量。

如附图标记506所示,如果网络设备230确定存在fec错误、crc错误等,则网络设备230可以更新数据模型。在这种情况下,网络设备230可以通过修改一个或多个质量系数值来更新数据模型。在这种情况下,修改与链路质量信息相关联的一个或多个质量系数值可以允许数据模型在数据模型用于后续分类时正确地分类具有类似链路质量信息的链路。

以这种方式,网络设备230能够标识假阳性,并且可以更新数据模型以提高链路分类的准确性。

如图5b所示,网络设备230可以标识假中性(例如,当实际链路质量为高或低时,数据模型可能错误地将链路分类为与边际链路质量相关联的类)。如附图标记508所示,网络设备230可以将链路分类为与边际链路质量相关联的类。在这种情况下,并且如附图标记510所示,网络设备230可以以与上述相同的方式停用、监测和测试链路。如附图标记512所示,如果链路以高通过得分通过测试(被示出为“高通过”),则网络设备230可以将链路的类更新为与高链路质量相关联的类。在这种情况下,网络设备230可以重新启用链路以允许链路继续支持网络业务流。

另外,并且如附图标记514所示,网络设备230可以更新数据模型。例如,网络设备230可以通过修改一个或多个质量系数值来更新数据模型。在这种情况下,修改与链路质量信息相关联的一个或多个质量系数值可以允许数据模型在数据模型用于后续分类时正确地分类具有类似链路质量信息的链路。

如附图标记516所示,如果链路未通过诊断测试,则网络设备230可以将链路的类更新为与低链路质量相关联的类。在这种情况下,并且如附图标记518所示,网络设备230可以更新数据模型。例如,网络设备230可以通过修改一个或多个质量系数值来更新数据模型。这可以允许数据模型在数据模型用于后续分类时正确地分类具有类似链路质量信息的链路。

如附图标记520所示,如果链路以低通过得分通过测试(被示出为“低通过”),则网络设备230可以将链路的类更新为与边际链路质量相关联的类。在这种情况下,网络设备230可以通过更新与置信度得分相关联的一个或多个值来更新数据模型,如上所述。

以这种方式,网络设备230能够标识假中性,并且可以更新数据模型以提高链路分类的准确性。

如图5c所示,网络设备230可以标识假阴性(例如,当实际链路质量为边际或高时,数据模型可能错误地将链路分类为与低链路质量相关联的类)。如附图标记522所示,网络设备230可以将链路分类为与低链路质量相关联的类。

如附图标记524所示,网络设备230可以确定链路是否已经接收到与低链路质量相关联的阈值数目的分类。在这种情况下,网络设备230可以将链路被分类为与低链路质量相关联的类的当前次数和与低链路质量相关联的分类的阈值数目相比较。如附图标记526所示,网络设备230可以将链路列入黑名单,如本文中其他地方所述。以这种方式,网络设备230能够防止被重复分类为低质量的链路支持业务流。

如附图标记528所示,如果链路被分类为与低链路质量相关联的类的当前次数不满足分类的阈值数目,则网络设备230可以停用、监测和测试链路(例如,使用诊断测试),如本文中其他地方所述。如附图标记530所示,如果链路通过诊断测试,则网络设备230可以将链路的类更新为与高链路质量相关联的类。在这种情况下,并且如附图标记532所示,网络设备230可以通过修改一个或多个质量系数值来更新数据模型。这可以允许数据模型利用类似的链路质量信息来正确地分类后续链路。

如附图标记534所示,如果链路未通过诊断测试,则网络设备230可以执行与修复链路相关联的一个或多个动作。例如,网络设备230可以向网络管理设备提供以下请求:修复链路,修复与链路相关联的板,更换板,等等。

以这种方式,网络设备230能够标识假阴性,并且可以更新数据模型以提高链路分类的准确性。

如上所述,图5a至图5c仅作为示例提供。其他示例是可能的,并且可以与关于图5a至图5c描述的不同。

以这种方式,网络设备230能够标识假阳性、假中性和/或假阴性,并且可以更新数据模型以提高链路分类的准确性。通过正确地分类链路,网络设备230能够标识链路的质量开始降低的情况,并且能够采取修复链路、修复板、更换链路或更换板所需要的纠正动作,如本文中其他地方所述。以这种方式,网络设备230相对于在链路故障之后采取校正动作而言提高了网络性能。

前述公开内容提供了说明和描述,但并非旨在穷举或将实现限于所公开的精确形式。修改和变化鉴于以上公开内容是可能的,或者可以从实现的实践中获取。

如本文中使用的,术语组件旨在广义地解释为硬件、固件和/或硬件和软件的组合。

一些实现在本文中结合阈值来描述。如本文中使用的,满足阈值可以是指值大于阈值、多于阈值、高于阈值、大于或等于阈值、小于阈值、少于阈值、低于阈值、小于或等于阈值、等于阈值等。

很清楚的是,本文中描述的系统和/或方法可以以不同形式的硬件、固件或硬件和软件的组合来实现。用于实现这些系统和/或方法的实际的专用控制硬件或软件代码不限制实现。因此,本文中描述了系统和/或方法的操作和行为,而没有参考特定的软件代码,应当理解,软件和硬件可以被设计为基于本文中的描述来实现系统和/或方法。

即使特定的特征组合在权利要求中陈述和/或在说明书中公开,但是这些组合并不旨在限制可能的实现的公开。实际上,这些特征中的很多特征可以以未具体在权利要求中陈述和/或在说明书中公开的方式组合。尽管下面列出的每个从属权利要求可以直接仅依赖于一个权利要求,但是可能的实现的公开包括每个从属权利要求与权利要求集合中的每个其他权利要求的组合。

除非明确地如此描述,否则本文中使用的元件、动作或指令不应当被解释为是关键或必要的。此外,如本文中使用的,冠词“一(a)”和“一个(an)”旨在包括一个或多个项目,并且可以与“一个或多个”可互换地使用。此外,如本文中使用的,术语“集合”旨在包括一个或多个项目(例如,相关项目、不相关项目、相关和不相关项目的组合等),并且可以与“一个或多个”可互换地使用。在仅有一个项目的情况下,使用术语“一个(one)”或类似的语言。此外,如本文中使用的,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在是开放式术语。此外,除非另有明确说明,否则短语“基于”旨在表示“至少部分基于”。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1