(2020年度“华苏杯”获奖论文二等奖)基于机器学习快速挖掘定界定位NFV架构下VoLTE网络潜在隐患的研究
2021-11-17陈尚干
陈尚干
中国电信股份有限公司江苏分公司
0 引言
中国电信VoLTE网络基于NFV技术部署,用户数的迅猛发展给VoLTE网络运维带来较大挑战。NFV垂直方向涉及多个组件,VNF、虚拟机、hypervisor、物理主机、存储、交换机等,传统的故障定界定位方法在面对NFV场景尤其是垂直层问题时显得捉襟见肘。业界对于IT设备日志、告警、性能的高可用性是值得借鉴的,例如亚健康检测。如何进行NFV与传统通信网元日志、告警、性能两者之间的有机挖掘,提高其利用价值,用于预测预防,是一个变被动响应为主动运维的关键举措,也是解决NFV架构下VoLTE设备不稳定的重要手段。使用日志、告警、性能分析是故障定界定位的杀手锏,探索基于NFV垂直设备日志、告警、性能信息,使用机器学习的方法,挖掘NFV VoLTE网络的潜在隐患,提高网络维护质量。
1 NFV架构下VoLTE网络存在的突出问题
网络架构的变化挑战现有维护模式,运维技术人员并不擅长甚至不具备依靠NFV架构与传统网元架构日志、告警、性能有机结合的排障能力,无法在故障发生后,快速进行日志、告警、性能搜索定位问题。受限于网元数量、访问限制、网络传输能力以及业务网元性质、路由复杂性等客观条件,需要与研发支撑工程师来来回回沟通多次,传送多次文件才能有效进行日志、告警、性能分析,大大降低了故障分析处理效率,延长了障碍处理时限。
设备底层与应用层运行状况未能有效衔接。IT日志、告警、性能与传统业务层面的日志、告警、性能等无法有机结合、融会贯通,它们的价值无法充分利用,特别是无法有效利用进行预测预防。
网络障碍无法快速有效反馈到对应的网络资源上。梳理VNF对应处理模块与虚机资源,标注虚机编号、服务器网卡、网络交换机TOR、EOR及网络链路资源,通过各类网元运行日志、告警、性能收敛到相应的网络资源上,然后进行可视化、易用性显示,再经过各种资源关联计算,智能化锁定障碍发生点,精确定界NFV底层问题或业务流程上某一个网元问题,最后通过专家库经验过滤判断,采取规范化措施自动化恢复。
2 深度挖掘NFV架构下VoLTE网络隐患的设计思路
针对NFV场景下日志、告警、性能的特点,提出以下解决思路:(1)实现日志、告警、性能的统一采集、统一存储、统一呈现。对NFV垂直层各部件的日志、告警、性能进行采集并在统一界面进行呈现。在统一时间轴上用柱状图的形式将各层日志、告警、性能量进行展现,当异常数据量出现时一目了然,同时还可以通过层级间日志、告警、性能量的变化辅助分析故障关联关系。(2)预制日志、告警、性能关键字搜索,加快搜索效率。系统提供搜索功能,可以根据搜索条件快速进行文本搜索,同时可以预制搜索关键字及组合,在日志、告警、性能采集进入系统时完成匹配,提高搜索效率。(3)日志、告警、性能快速导出。根据日志、告警、性能采集对象、文件路径、时间进行归类,便于离线下载,最大程度缩小文件大小。(4)引入机器学习功能,智能分析,实现障碍的端到端网元关联显性化。
本方案设计思路及模型如图1所示。
图1 VoLTE网络隐患挖掘设计框架
数据源:由VoLTE网络中关联网元及虚拟层各个NFV组件产生的日志、告警、性能。
采集层:通过LogStash探针客户端部署,采集应运层及I层各组件日志、告警、性能。Logstash是一个开源的数据搜索引擎、服务器端数据处理管道,可以同时从多个数据源获取数据,并对其进行转换,然后将其发送到目的“存储”。Logstash管道有两个必需的元素——输入和输出,以及一个可选元素过滤器。输入插件从数据源那里消费数据,过滤器插件根据期望修改数据,输出插件将数据写入目的地。
缓存层存储层:Kafka是开源的消息系统,一个高吞吐量分布式消息系统。通过Kafka/LogStash入库到GaussDB数据库。Elasticsearch(ES)是一个基于Lucene构建的开源、分布式、RESTful接口的全文搜索引擎。Elasticsearch还是一个分布式文档数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,ES能够横向扩展至数以百计的服务器存储以及处理PB级的数据。可以在极短的时间内存储、搜索和分析大量的数据,通常作为具有复杂搜索场景情况下的核心发动机。
机器学习:对采集VoLTE业务关联网元及NFV大量日志、告警、性能的数量经过IPLOM算法、卡方算法、3-sigma算法等判断出数据异常变化、顺序序列变化、内容成分比例变化,多维度快速收敛到一个点一个面上,辅助对障碍的定界定位。
运维服务:将方案系统所需服务分解为各个微服务进程,提供日志、告警、性能统计、检索、监控、导出等功能,并为上层提供故障诊断和隐患排查。
展现层:通过web-portal为维护人员提供可视简易的操作界面,实现故障障碍定位定界显性化。
3 机器学习挖掘NFV架构下VoLTE隐患实现原理
机器学习是研究如何使用机器来模拟人类学习活动的一门学科。NFV VoLTE隐患挖掘、故障定界定位的机器学习方向有如下三种:(1)根据VoLTE业务关联网元及NFV日志、告警、性能的数量变化来学习,给出可疑日志、告警、性能凸起和时间点;(2)根据VoLTE业务关联网元及NFV日志、告警、性能的顺序序列变化,训练出正常的日志、告警、性能顺序,把异常的日志、告警、性能预警出来并匹配到端到端关联路由及网元上;(3)学习训练NFV日志、告警、性能的内容成分比例的变化,与经验专家库结合,实施网络障碍定界定位显性化。
(1)事件聚合
作用:将杂乱、冗余的日志、告警、性能归类。
算法:IPLoM聚类算法。
算法要点:
①利用Event(一条日志、告警、性能为一个Event)大小进行分类。
②利用关键字(选熵值最小的字段)进行分类,如图2所示。
图2 利用关键字进行分类
③关键字成对出现,组合起来有含义,认为是一个关键字,如图3所示。
图3 关键字认定
④聚合变量部分达到50%,则不再合并。
算法结果示例:通过对关键字分类,识别出关键字invalid、error、on、broadcast进行聚合;而对interconnect-ITXXX等中变量较多,超过预定值无法进行聚合、合并。如图4所示。
图4 算法结果
(2)日志、告警、性能数量变化检测
如图5所示,采用3Sigma算法检测指定日志、告警、性能吞吐量是否有突增、突降等异常行为,从而检测网络状态。即先假设一组检测数据(日志、告警、性能)只含有随机误差,对其进行计算处理得到标准偏差,按一定概率确定一个区间,认为凡超过这个区间的误差,就不属于随机误差而是粗大误差,含有该误差的数据应认为是异常数据,说明网络运行存在异常。
图5 3Sigma原则
3σ原则为:数值分布在(μ-σ,μ+σ)中的概率为0.6826;数值分布在(μ-2σ,μ+2σ)中的概率为0.9545;数值分布在(μ-3σ,μ+3σ)中的概率为0.9973。可以认为,正常情况下取值几乎全部集中在(μ-3σ,μ+3σ)区间内,超出这个范围的可能性仅占不到0.3%,可以认为存在异常。
(3)日志、告警、性能构成变化检测
作用:检测日志、告警、性能的组成内容是否出现变化。
算法:卡方算法+3Sigma算法。
卡方检验就是统计样本的不同分布之间的偏离程度以及关联关系。总体卡方值越大,总体分布越不符合同一分布;统计对象卡方值越大,与分布变化关联程度越大。一个非常大的卡方检验统计量意味着数据不太适合。如果卡方值较大,拒绝无效假设。统计学中有两种类型的变量:数值变量和非数值变量。该值可以通过给定的观察频率和期望频率来计算:
算法步骤:①学习出日志、告警、性能模板;②在历史数据中学习出每个时刻每个模板的卡方值,并求和;③随学习出每个时刻的卡方和的3Sigma模型;④检查新数据中卡方和值是否满足3Sigma模型,不满足即为异常。
卡方算法+3Sigma算法结果示例如图6所示。
图6 构成变化检测算法结果示例图
结果说明:通过与基线窗口数值进行卡方值比较,检测窗口卡方值偏差较大,不在3Sigma范围,可以断定为异常值。
(4)日志、告警、性能序列变化检测
作用:检测日志、告警、性能的打印序列是否出现变化。
算法:N-Gram算法。
N-Gram是一种基于统计语言模型的算法。它的基本思想是将文本里面的内容按照字节进行大小为N的滑动窗口操作,形成长度是N的字节片段序列。
每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是这个文本的向量特征空间,列表中的每一种gram就是一个特征向量维度。
该模型基于这样一种假设:第N个词的出现只与前面N-1个词相关,而与其它任何词都不相关,整句的概率就是各个词出现概率的乘积。这些概率可以通过直接从语料中统计N个词同时出现的次数得到。
N-Gram算法结果示例如图7所示。
图7 序列变化检测算法结果示例图
结果说明:不同颜色图形即为一个gram,预先设定不同色块间模型数据并设定阈值,形成色块间向量特征空间表,当检测数据的色块空间表与模型数据空间表不一致时,即可判断出异常数据点。
通过以上检测发现日志、告警、性能异常点,然后触发告警,再结合专家经验库匹配分析,实现基于日志、告警、性能的故障分析和隐患发现。
4 结束语
基于机器学习快速挖掘定位定界VoLTE网络潜在隐患的系统,结合了Logstash开源数据搜索引擎,采用卡方3Sigma算法,通过人机学习技术,自主开发NFV VoLTE障碍挖掘,快速定界定位管理平台,可以实施VoLTE端到端障碍可视化管理。
该方案对NFV VoLTE网络进行日志、告警、性能挖掘,提高日志、告警、性能的利用价值,用于预测预防,这是一个变被动响应为主动运维的关键举措,也是解决NFV架构下VoLTE设备不稳定的重要手段。
该方案探索基于NFV VoLTE垂直设备日志、告警、性能信息,使用机器学习的多种算法手段,挖掘NFV VoLTE网络的潜在隐患,提高网络维护质量,是本方案的典型创新。
该方案使用机器学习挖掘网络潜在隐患的系统,对VoLTE端到端各网元的日志、告警、性能统一采集、统一存储、统一分析,引入机器学习,从三个方向(数量变化、顺序序列变化、内容成分比例变化)分析日志、告警、性能变化,发现异常点,从手工分析转变为机器分析,挖掘网络隐患,并提高故障定界定位效率,在国内三大运营商中首次实现底层与应用层有机结合。
与传统被动响应处理故障的手段相比,该方案大大提供了一线运维人员对NFV VoLTE网络的维护效率,提高NFV VoLTE网络的可靠性,降低网络风险,实现网络稳定运行。