一种检测网络性能异常的方法、装置、设备及存储介质与流程

文档序号:18751804发布日期:2019-09-24 21:13阅读:125来源:国知局
一种检测网络性能异常的方法、装置、设备及存储介质与流程

本发明涉及计算机及通信领域,特别涉及一种检测网络性能异常的方法、装置、设备及存储介质。



背景技术:

kpi(keyperformanceindicator,关键性能指标)是否良好是衡量无线网络优良的一个重要指标。

影响kpi的性能数据有很多,运维人员可以根据该kpi找到影响该kpi异常的配置参数,然后调整参数,以优化网络。因此找到异常的kpi数据是优化网络的一个重要条件。

然而,通过人工的方式来查找表现异常的kpi时,由于kpi类型达到上万数量级,且当前kpi异常检测方法具有延时性,无法自动、实时检测异常kpi,因此,异常kpi的检测方法必须寻找新的方式。



技术实现要素:

本发明实施例提供的一种检测网络性能异常的方法、装置、设备及存储介质,以提供一种可以实现自动、实时地检测异常kpi的新方式。

本发明实施例提供一种检测网络性能异常的方法,所述方法包括:利用用来表征网络性能的关键性能指标kpi的历史数据,确定所述kpi的置信区间;对所述kpi进行监听,获取所述kpi的实时数据;以及利用所述置信区间和所述实时数据,确定所述kpi是否正常。

本发明实施例另提供一种检测网络性能异常的装置,所述装置包括:第一确定模块,用于利用用来表征网络性能的关键性能指标kpi的历史数据,确定所述kpi的置信区间;实时数据获取模块,用于对所述kpi进行监听,获取所述kpi的实时数据;以及第二确定模块,用于利用所述置信区间和所述实时数据,确定所述kpi是否正常。

本发明实施例还提供一种检测网络性能异常的设备,所述设备包括:处理器,以及与所述处理器耦接的存储器。所述存储器上存储有可在所述处理器上运行的检测网络性能异常的程序,所述检测网络性能异常的程序被所述处理器执行时实现如上述的检测网络性能异常的方法的步骤。

本发明实施例还提供一种存储介质,其上存储有检测网络性能异常的程序,所述检测网络性能异常的程序被处理器执行时实现如上述的检测网络性能异常的方法的步骤。

本发明实施例根据kpi的置信区间,自动、实时地识别异常kpi,有助于运维人员及时优化网络,提高网络性能,改善用户体验。

附图说明

图1是本发明实施例提供的一种检测网络性能异常的方法的流程示意图;

图2是本发明实施例提供的一种检测网络性能异常的装置的示意性框图;

图3是本发明实施例提供的一种检测网络性能异常的设备的示意性框图;

图4是本发明实例1提供的基于大数据分析对虚拟化网络中的异常kpi实时检测的流程示意图;

图5是本发明实例2提供的检测异常的流程示意图;

图6是本发明实例3提供的调整阈值的流程示意图;

图7是本发明实例4提供的标注实时数据的流程示意图;

图8是本发明实例5提供的未检测出异常时重新调整置信区间的流程示意图。

具体实施方式

以下结合附图对本发明的主要实施例进行详细说明。

本发明实施例可以基于大数据分析对虚拟化网络系统中的异常kpi进行实时检测。

实施例1

图1是本发明实施例提供的一种检测网络性能异常的方法流示意程图,如图1所示,所述方法包括:

步骤s101:利用用来表征网络性能的kpi的历史数据,确定所述kpi的置信区间。

具体地说,利用待检测对象的所述kpi的历史数据,确定所述kpi的历史数据的均值和残差区间,并利用所述均值和残差区间,确定所述kpi的置信区间。例如,将所述均值和所述残差区间的上限之和,确定为所述kpi的所述置信区间的上限;将所述均值和所述残差区间的下限之和,确定为所述kpi的所述置信区间的下限。

其中,所述待检测对象指需要检测kpi的站点或小区。

其中,所述历史数据可以是在前一个或多个周期的数据,可以自定义,例如可以是最近两周的数据。

其中,所述置信区间是一个确定的数值范围,该数值范围的最小值为所述置信区间的下限,该数值范围的最大值为所述置信区间的上限。所述置信区间给出所述kpi的实时数据的可信程度,也就是说,实时数据在该数值范围内为可信,即正常,否则为不可信,即异常。

步骤s102:对所述kpi进行监听,获取所述kpi的实时数据。

步骤s103:利用所述置信区间和所述实时数据,确定所述kpi是否正常。

具体而言,若所述kpi的所述实时数据在所述kpi的所述置信区间内,则确定所述kpi正常,否则确定所述kpi异常。

本实施例根据所述置信区间自动确定异常kpi,因此可以在人员参与非常少的基础上实现kpi异常检测。

在其它实施例中,在步骤s103之后,所述方法还可进一步包括:

在确定所述kpi异常之后,接收所述kpi的实时数据的人工审计结果,若所述人工审计结果指示所述实时数据为正常值,即对所述kpi的实时数据进行人工审计后所述实时数据被用户标记为正常,则保存被标记为正常的所述实时数据,以便后续监听到同样的数据时,作为正常值处理。或者,若所述人工审计结果指示一个包含所述实时数据的阈值区间,即用户自定义的包含所述实时数据的阈值区间,则将所述阈值区间作为所述kpi的新置信区间,以便按照新置信区间,对后续监听到的kpi数据进行异常检测,本步骤主要用于自定义置信区间,自定义置信区间优先级可以高于系统训练的置信区间。

在确定所述kpi异常之后,如果未进行人工调整,也可以根据预设时间段内所述kpi的实时数据,自动调整所述kpi的置信区间。具体地说,在所述预设时间段内对所述kpi数据中超出所述kpi的置信区间的上限的比例进行统计,若超出所述上限的kpi数据的比例达到预设第一比例,说明所述置信区间的上限不合理,此时将所述预设时间段内的kpi数据中的最大值确定为所述kpi的置信区间的新上限;在所述预设时间段内对所述kpi数据中超出所述kpi的置信区间的下限的比例进行统计,若超出所述下限的kpi数据的比例达到预设第二比例,说明所述置信区间的下限不合理,此时将所述预设时间段内的kpi数据中的最小值确定为所述kpi的置信区间的新下限。若超出所述上限和下限的kpi数据的比例均为零,即所有kpi数据均在所述置信区间内,说明所述置信区间的上下限均不合理,此时将所述预设时间段内的kpi数据中的最大值和最小值分别作为所述kpi的置信区间的新上限或新下限。本步骤主要是自适应的调整kpi的置信区间,从而得到合理的置信区间。其中,上述预设时间段、预设第一和第二比例均可由用户(即运维人员)预设。

进一步地,在确定所述kpi异常后,还可以从所有异常kpi中,选取用户关注kpi和非用户关注kpi,将所述用户关注kpi排列在所述非用户关注kpi的前面,并在人机界面(如web界面)展示给所述用户。其中,用户关注kpi可以由用户定制,也可以根据用户点击次数确定。本步骤主要是把用户重点关注的异常kpi展示在最前面,便于用户查看。

本发明实施例能够将异常kpi实时推送给用户,优化网络资源管理,提高网络性能,改善用户体验。

本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中。

实施例2

本发明还可以提供一种存储介质,其上存储有检测网络性能异常的程序,所述检测网络性能异常的程序被处理器执行时实现上述的检测网络性能异常的方法的步骤。其中,所述的处理器可以是但不限于cpu,所述的存储介质可以是但不限于rom、ram、磁碟、光盘或者u盘等存储装置中的一个或者两个及以上的组合。

实施例3

图2是本发明实施例提供的检测网络性能异常的装置框图,如图2所示,所述装置包括:

第一确定模块,用于利用用来表征网络性能的关键性能指标kpi的历史数据,确定所述kpi的置信区间;

实时数据获取模块,用于对所述kpi进行监听,获取所述kpi的实时数据;以及

第二确定模块,用于利用所述置信区间和所述实时数据,确定所述kpi是否正常。

所述装置的工作流程包括:第一确定模块获取kpi的历史数据,并确定所述kpi的历史数据的均值和残差区间,然后利用所述均值和残差区间,确定所述kpi的置信区间。实时数据获取模块对所述kpi进行监听,获取所述kpi的实时数据。第二确定模块利用从第一确定模块获取的置信区间,确定所述实时数据正常或异常,具体而言若所述kpi的实时数据在所述kpi的置信区间,则确定所述kpi正常,否则确定所述kpi异常。

需要说明的是,第二确定模块的异常检测依据,在初始情况下可以是第一确定模块训练得到的所述置信区间,后续异常检测时,也可以是人工自定义的置信区间或是根据kpi的异常数据自动调整的置信区间。

实施例4

图3是本发明实施例提供的一种检测网络性能异常的设备的示意性框图,如图3所示,所述设备包括:处理器,以及与所述处理器耦接的存储器;所述存储器上存储有可在所述处理器上运行的检测网络性能异常的程序,所述检测网络性能异常的程序被所述处理器执行时实现如上述的检测网络性能异常的方法的步骤。

以下结合具体实例对本发明实施例作进一步的说明。

实例1

图4是本发明实例1提供的基于大数据分析对虚拟化网络中的异常kpi实时检测的流程示意图,如图4所示,所述检测过程主要如下:

1.检测任务管理

系统接收到输入的小区、kpi类型等参数信息后,启动数据预处理模块和训练模块以开始算法训练任务。

所述数据预处理模块根据所述输入的小区、kpi类型等参数信息,对所述小区的kpi的历史性能数据(即历史kpi性能数据或历史kpi数据或kpi的历史数据)进行数据清洗。

所述训练模块可以实现实施例3的第一确定模块的功能,选取哪段时间的历史性能数据可以由运维人员配置,即时间可配。

2.在线训练

训练模块启动后,查询用户设置参数信息,查询到策略设置的小区、kpi信息后,训练模块开始工作。

从数据预处理模块查询kpi的历史性能数据,然后使用相应的算法(即根据数据特征进行算法自适应)进行训练,输出预测值与实际值的残差的置信区间(即残差区间)和历史kpi性能数据的均值,通过残差的置信区间和历史数据的均值计算出kpi的置信区间,计算公式如下:

a’=a+kpi;

b’=b+kpi;

其中:a是残差的置信区间的下限,b是残差的置信区间的上限,a’是kpi的置信区间的下限,b’是kpi的置信区间的上限,kpi是历史kpi性能数据的均值。

也就是说,运维人员可以通过人机界面指定需要查看kpi的所有小区信息,然后数据预处理模块会将这些小区的kpi历史性能数据进行数据清洗(例如补全缺失的性能数据和去掉不合理的数据)。清洗完成后,算法训练模块(即训练模块)根据数据特征为这些历史数据选取不同的算法训练预测出未来kpi,根据预测的kpi数据和实际的数据,通过高斯分布计算出残差的置信区间,根据历史数据计算出历史kpi数据的均值,通过残差的置信区间和历史数据的均值计算出kpi的置信区间。

需要说明的是,若从数据预处理模块查询到kpi的历史性能数据为空,则不进行训练。等待下一周期,再查询kpi,直到查到历史kpi数据,才进行训练。

3.智能检测

异常检测模块(可以实现实施例3的实时数据获取模块和第二确定模块的功能)监听到数据预处理模块发送的第n个时间粒度的kpi性能数据后,开始检测,从训练模块查询kpi的置信区间,启动用于接收异常数据和向用户展示异常数据的推荐系统。

1)如果实时kpi数据(即kpi的实时数据)在kpi的置信区间内,则认为该kpi为正常值。

2)如果实时kpi数据不在kpi的置信区间内,则认为该kpi为异常值,推送到推荐系统。

也就是说,定时检测任务开始后,对每个时间粒度的kpi进行检测,如果不在kpi的置信区间内,那么认为此时的kpi属于异常状态,将异常的kpi的小区信息推送给推荐系统,由推荐系统将异常汇总结果展示在网站页面,以便运维人员对此做出正确的判断和相应的网络调整动作。如果在kpi的置信区间内,那么认为该kpi为正常值,不做推送。

4.异常检测管理

1)kpi检测发布(即自动调整置信区间)

系统会统计一段时间超出置信区间上下限的kpi的占比,若超出上限的占比达到一定比例,则扩大置信区间的上限为最大kpi值所在的区间值;若超出下的占比达到一定比例,则扩大置信区间的下限为最小kpi值所在的区间值。此处的时间和比例可根据实际需要自行设置(不同的kpi,或者在不同业务场景下可能设置不同的时间和比例)。

系统统计一段时间内无任何异常kpi值出现,则将置信区间缩小,缩小策略为同时将区间的最大最小值设置为此段时间内最大最小kpi值所在的区间值。此处的时间和比例可根据实际需要自行设置。

本实例的在线训练过程基于机器学习对历史数据进行大数据分析,计算出历史数据的均值和残差,利用均值和残差计算出kpi数据初始的置信区间,智能检测过程根据置信区间能够自动化识别异常kpi,异常检测管理过程能够根据被检测kpi数据自适应调整置信区间范围,实时检测出异常kpi,使运维人员能够及时对网络进行优化调整,并且可以在各个终端可以实时观察网络状态,从而解决当前查找异常kpi方式的弊端。

2)阈值设置和用户标识管理(即用户自定义置信区间)

a.如果用户确认某个检测出的异常有误,可以通过人机界面(如点击人机界面上显示的“检测有误”)设置阈值,将阈值发送给系统,系统根据用户设置的阈值修改kpi置信区间为阈值区间,下个检测粒度就可以以此阈值来检测kpi是否有异常。

b.如果用户想把某个异常值加入正常值范围,可以选择标记该异常值,当系统下次检测到该kpi值为该标记值时,则认为该kpi为正常值。

本实例针对待检测的kpi数据在置信区间范围的分布,自适应调整kpi置信区间,运维人员可以人工干预判断kpi的检测结果,例如,调整阈值范围,直接决定kpi的状态(正常或异常),若人工不干预,系统根据一段时间内的kpi异常状态自动扩展或缩小置信区间,从而达到kpi异常检测结果准确率的最优化。此过程可以完全不需要人工操作完成kpi异常的检测,达到智能运维持久地保证网络的最优化。

5.异常自动展示

推荐系统收到异常消息后会在人机界面(如web界面)绘制出运维人员设定时段内(例如昨日24小时)的kpi曲线,并显示该异常的原因和合理的置信区间。

推荐系统会根据用户点击的次数,基于用户和基于物品的协同推荐算法,向该用户推荐可能更关注的kpi信息,把用户重点关注的异常kpi展示在topn(即用户重点关注的n个kpi)的最前面,并让用户点击确认处理。

推荐系统支持用户定制自己关注的kpi对象(即站点/小区),支持异常kpi呈现在topn的最前面,支持用户设置topn的数量,支持用户对kpi设置置信区间(或门限),例如设置预警区间(或预警值)及极限区间(或容忍极限值),如果用户关注的kpi的实时数据到了用户设置的预警值,系统就会提醒用户去关注,如果到了容忍极限值就加大提醒的力度,也就是说,支持异常kpi的推荐和呈现,比如近两周(可以自定义)的趋势图,kpi公式定义和异常判断标准等。进一步地,推荐系统支持异常kpi的解释,即显示异常原因。

本实例在检测到用户关注的小区有kpi异常时,用户在手机客户端可以实时收到检测异常的推送消息,24小时获取异常检测信息。这样运维人员可以随时随地观察到当前的网络状态,能够立刻获得异常信息,对网络进行及时调整,达到网络始终保持最优化状态。

目前,无线网管上性能kpi基本上出现业务异常或告警后,才发现kpi异常,属于事后处理。但实际上kpi异常发生是有一些规律的,本实例结合机器学习(人工智能(ai)技术)可以预测可能发生异常的kpi,并推荐给用户提前处理,避免造成业务异常。由于kpi数量和管理的小区/站点数量比较多,可能出现的异常kpi数量也比较多,如何把用户重点关注的异常kpi展示在topn的最前面,并让用户点击确认处理,这也是无线异常kpi预测推荐系统需要解决的问题,本实例只需要设置策略信息(例如待检测的小区和kpi)就能够实时收到异常检测结果,并能够快速解决部分异常问题,不需要人工在庞大的数据中筛选过滤异常信息,大幅缩短了运维人员定位排查异常所需的时间,降低了运维成本,改善了现有网络运维过程中,人工参与较多,定位耗时多,优化周期长的缺点,从而能实现轻量的、灵活的、智能化的无线网络管理。

使用本实例的技术,可以在人员参与非常少的基础上实现kpi异常检测,并且能够实时推送给用户,优化网络资源管理,提高网络性能,改善用户体验。

实例2

图5是本发明实例2提供的检测异常的流程示意图,如图5所示,检测出异常并显示的过程包括以下步骤:

步骤s501:设置检测的位置信息。

系统接收到用户设置的测量对象类型信息(小区、网元等),获取到待检测的对象的位置信息。

步骤s502:设置检测的kpi。

系统接收到用户选择的kpi信息,获取到待检测的性能指标。

步骤s503:启动检测任务。

训练模块启动后,到系统主动查询设置的参数信息,查询到策略设置的小区、kpi信息后,训练模块开始工作。

步骤s504:训练kpi的置信区间。

从数据预处理模块获取到清理后的历史性能数据进行训练后,输出残差的置信区间和历史kpi性能数据的均值,通过残差的置信区间和历史数据的均值计算出kpi的置信区间,例如残差的置信区间是[-0.02,0.08],历史kpi性能数据的均值是0.9,所以kpi的置信区间是[0.88,0.98]。

步骤s505:异常检测。

比如,异常检测模块根据时间粒度单位(例如1小时、15分钟等),从异常检测的起始时间开始,监听到第n个时间粒度实时的kpi值是0.8,由于0.8不在kpi的置信区间[0.88,0.98]内,所以该kpi检测为异常值,推送给推荐系统。

步骤s506:调整kpi置信区间。

异常检测模块统计预设时间段(可以由运维人员设置)内,例如30天(若为小时粒度,则是720个粒度,若为15分钟原始粒度,则为2880个粒度)的kpi数据检测后,若有预设比例(可以由运维人员设置,例如80%)的kpi数据小于0.88或大于0.98,比如数据为{0.9,0.93,0.8,0.8,0.8...},那么调整kpi的置信区间为[0.8,0.98],比如数据为{0.9,0.93,1.1,1.1,1.0...},那么调整kpi的置信区间为[0.88,1.1]。

步骤507:异常结果显示。

1.推荐系统会根据用户点击的次数根据基于用户和基于物品的协同推荐算法向该用户推荐可能更关注的kpi信息,把用户重点关注的异常kpi展示在topn的最前面,并让用户点击确认处理。

2.预测的异常kpi的topn呈现、支持用户定制自己关注的kpi指标,并设置kpi的门限:极限值和预警值,指标到了预警值就会提醒客户去关注,如果指标直接到了容忍极限值就加大提醒的力度。支持用户定制自己关注的kpi对象(站点/小区)、支持用户设置topn的数量、支持异常kpi的推荐解释呈现,比如近两周(可以自定义)的趋势图,kpi公式定义和异常判断标准等。

3.当检测到用户关注的小区有kpi异常时,用户在手机客户端可以实时收到检测异常的推送消息,24小时获取异常检测信息。

步骤s508:结束任务。

实例3

图6是本发明实例3提供的调整阈值的流程示意图,如图6所示,检测出异常,用户修改阈值后,检测过程包括以下步骤:

步骤s601至步骤s607:同实例2的步骤s501至步骤s507。

步骤s608:阈值设置。

1.在推荐系统,用户查看异常结果后,根据实际需要修改阈值,比如修改为[0.85,0.93],用户设置的阈值替代算法算出的置信区间,从而根据用户所设阈值来检测实时数据是否在该区间内,如果下个检测粒度的实时数据不在阈值区间内则是异常,发送给推荐系统,显现到界面上,提示用户存在异常数据,如果在阈值区间内,则说明数据在用户要求的合理范围内。

2.异常检测模块统计一段时间(如30天)的kpi数据检测后,即使超过预设比例(例如80%)的kpi数据都在kpi的置信区间外,比如数据为{0.9,0.93,0.94,0.94,0.99...},kpi的置信区间仍为[0.85,0.93]。

3.用户不再需要单独设置阈值给特定小区时,可以在界面通过选择取消阈值功能,系统则会按照计算出来的kpi置信区间检测是否有数据异常。

步骤609:异常结果显示。

实例4

图7是本发明实例4提供的标注实时数据的流程示意图,如图7所示,用户标注检测出的异常的步骤包括:

步骤s701至步骤s707:1.同实例2的步骤s501至步骤s507。

步骤s708至步骤s709:用户决策和正常值标记。

在推荐系统,用户查看异常结果后,用户决策此异常数据为误判,标记此异常,如果下个检测粒度的实时数据存在该标记的kpi值,那么认为该kpi值为正常值,不再发送给推荐系统。

也就是说,当利用kpi置信区间检测出kpi值为异常值时,若经过用户决策,判定为误判,则将其标记为正常值,后续检测过程中,如果再次检测到该kpi值,则根据标记,认定为正常值,不再发送给推荐系统。

需要说明的是,用户可以在界面通过选择取消标注功能,系统则会按照训练出来的置信区间来检测是否有数据异常。

步骤710:异常结果显示。

实例5

图8是本发明实例5提供的未检测出异常时重新调整置信区间的流程示意图,如图8所示,未检测出异常时,重新调整置信区间的过程包括以下步骤:

步骤s801至步骤s805:同实例2的步骤s501到步骤s505。

步骤s806:调整置信区间。

异常检测模块统计一段时间的kpi数据检测后,若有100%的kpi数据都在kpi的置信区间内,则调整kpi的置信区间为[kpi的最小值,kpi的最大值],比如数据为{0.9,0.93,0.95,0.95,0.98...},那么调整kpi的置信区间为[0.9,0.98],比如数据为{0.9,0.93,0.97,0.88,0.97,0.97...},那么调整kpi的置信区间为[0.88,0.97]。

也就是说,如果统计时间段内检测的kpi数据均在kpi的置信区间内,则选取所述统计时间段内的kpi数据中的最小值和最大值,并将kpi置信区间的范围调整为从所述最小值至所述最大值。

这样,下个粒度的kpi数据的检测使用调整后的kpi的置信区间。

步骤s807:结束任务。

综上所述,本发明实施例是基于虚拟化系统的实时检测网络性能异常方案,结合ai算法自动完成kpi异常的检测工作,并推送给用户和推荐系统,此外能够接收用户的反馈,不断自适应调整检测条件,使得检测结果更符合当前实际网络状态,同时,不局限于web界面,用户终端(例如手机)可以实时接收到异常kpi的检测结果,及时根据网络当前状态调整相应参数,优化网络状态。

尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。

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