一种基于机器学习的低开销AMF网络智能故障诊断方法

文档序号:33098352发布日期:2023-02-01 00:17阅读:38来源:国知局
一种基于机器学习的低开销AMF网络智能故障诊断方法
一种基于机器学习的低开销amf网络智能故障诊断方法
技术领域
1.本发明涉及5g移动通信技术领域,尤其是一种基于机器学习的低开销且符合3gpp协议规范的amf网络智能故障诊断方法。


背景技术:

2.目前,通信网络故障诊断主要分为两种模式:离线诊断以及在线诊断方式,离线诊断方式通过实时收集通信网络系统运行过程中发生的所有事件,并根据提前制定好的规则对异常事件进行标签,将收集下来的日志保存在本地系统或者复制到其他存储系统,最后通过对离线日志进行分析,达到故障根因查找的目的。这种方法的弊端在于为了保证日志信息的全面性,往往需要运行大量日志信息获取进程,占用了大量系统运行需要的资源,影响系统运行效率,同时保存所有的事件信息需要占用系统大量存储空间,这种方式对系统的冗余性和容量有很高的要求。在线诊断方式的实现机制是准确复现故障,并保留错误现场,利用人工或者自动化的方式查看相关的日志、接口资料以及相关的错误信息,实时的平台信息是这种故障诊断方式最重要的信息输入源。这种检测方式的弊端在于故障复现成功率可能不是100%,有时需要重复多遍才能准确复现故障现场,而制造故障现场需要所有的资源全部就位,并且这些资源都是不可被剥夺的。如故障现场没有被成功复现,则需要清理生产环境,重新准备资源才能进行下一次复现,复现故障基本是以小时为单位占用人力及系统资源的,由此可见,重现故障场景成本极高。
3.针对通信网络故障存在的问题,学者们提出了不同的检测和诊断方法。王媛湲等人基于改进som神经网络提出了一种指挥通信网络故障检测的算法,有效解决了在输入向量过近但类别分类不相同时,普通som算法分类能力差的问题,同时提出了基于反馈的自动定制迭代次数的策略。chernogorov f等人通过研究无线网络故障,提出了通过移动终端向服务基站报告的时间序列进行n元序列分析的方法,运用降维和分类手段得到一系列异常用户,最后映射到发生故障的基站的方法。chernogorov f等人利用了预处理、交叉验证等技术全面地介绍了随机接入信道故障场景的检测流程步骤。卓雪虹等人通过对状态码的监控提出了一种针对信令大数据的故障诊断方法。steinder m等人针对通信系统中端到端服务的问题进行研究,提出了一种基于贝叶斯概率推理的故障定位模型,但这种故障定位方式不适用于复杂的故障场景。xue w等人致力于解决异构网络的复杂性与脆弱度,目标是实现对两层异构无线网络小区终端的故障检测目标,作者基于k-means算法以及通过分析时域上的关键性能指标的变化来实现网络故障的异常捕捉。但是这种算法没有考虑到参数在时域上的关联关系,所以这种故障诊断方法的正确率还有待考证。agrawal r首先通过遍历每种网络故障的原因,然后建立对原因建立故障树,最后通过概率推理的办法对故障原因进行排序然后进行故障定位。这种方法的弊端是如果网络中涉及到的节点数量巨大,那么关系运算复杂度就会变得极高,概率推理的正确性也会受到极大的影响。al-rubaiey b利用时钟同步以及消息传递接口的方式对虚拟网络故障进行检测。故障发生前使用时钟同步算法测算超时时间,故障发生时,接口会发送探针来验证节点之间的连接,以此来推测故障
发生的位置。这种方式需要验证每一条链路的连接状态,链路连接复杂时故障诊断的时延开销会大幅增加,这对故障诊断的有效率与时效性都有极大影响。shaikh r b致力于运用往返时延以及往返路径计算方法保障网络服务质量。但是这种方法在收集节点以及链路信息时会产生巨额流量开销,会降低系统运行的流畅度。a framework利用概率推理模型对故障进行在线检测与诊断,但是这种方法对故障信息知识库的要求极高,是否能够运用于实际的生产环境仍然需要接受考验。
4.综上所述,当前通信网络故障智能检测与诊断研究已经取得了较大进展,但是由于通信网络复杂性与实时性带来的开销高昂问题仍然是故障检测与诊断研究领域需要突破的一大难关,而且以上这些停留在实验以及模拟阶段的学术成果不一定能够运用于复杂的实际通信生产环境,真正能够在工程实践中成功应用的低开销诊断实例还比较少。因此,如何将先进的故障检测与诊断理论方法以及技术运用到实际工业环境中去改善系统开销依旧是移动通信网络故障诊断的研究重点和难点。
5.现有技术存在着5g移动通信网络故障诊断开销大以及诊断结果不够权威,不但故障诊断所需的资源大,而且故障复现速度慢、准确率。


技术实现要素:

6.本发明的目的是针对现有技术的不足而设计的一种基于机器学习的低开销amf网络智能故障诊断方法,采用无监督方式的机器学习算法,实现低开销的5g网络故障信息源获取,以及流程指向性的故障定界,该方法主要从故障数据源获取以及诊断策略角度入手,运用限流算法、som算法、k-means算法、tf-idf算法等以及3gpp相关知识,帮助使用者快速整理思路以及定位故障方向,减少故障信息源的容量开销和系统为保证信息完整性所耗费的资源,大大降低了故障判决点开销、故障信息源收集开销、故障复现成本开销和故障诊断结果映射到3gpp官方解释的开销,符合3gpp协议规范,网络故障诊断技术具备低开销、快速、准确、轻量、通用的优点,而且实用性很强,不仅适用于5g移动通信网络故障的诊断,还能用于其他领域的故障诊断。
7.本发明的目的是这样实现的:一种基于机器学习的低开销amf网络智能故障诊断方法,其特点是采用5g移动通信网络模型、低开销故障信息源获取模型、故障定界模型和故障定位模型为四个呈递进关系的子模型构建的5g网络故障诊断模型,实现低开销amf网络智能故障诊断,所述5g移动通信网络模型采用基于状态的用户调度方式运行流程流量构建的子模型;所述低开销故障信息源获取模型采用限流算法中的滑动窗口算法和漏斗算法以及自组织映射算法构建的子模型,以降低数据获取部分低开销;所述故障定界模型采用逆文本指数分数算法、k-means算法以及案例推理法判断故障所处的流程类别构建的子模型,以降低故障诊断结果映射到3gpp官方解释的开销;所述故障定位模型采用sbi、n1以及n2接口的故障标识映射关系构建的子模型,实现故障定位的步骤具体包括:
8.1)构建移动通信网络;
9.2)获取移动通信网络数据信息,其中包括数据流量、日志信息以及系统告警;
10.3)对故障进行定界;
11.4)对故障进行定位。
12.所述实现低开销amf网络智能故障诊断具体包括以下步骤:
13.s1、完成移动通信网络的构建
14.根据5g网络架构拓扑结构搭建amf网元以及amf周边的网元;根据3gpp协议用户属性规范设计5g通信网络用户模拟机制;通过amf网元、amf周边的网元及其它们相互之间的通信关系,建立基于状态调度的5g流量调度周期模拟机制。
15.s2、故障信息源获取模型的构建
16.s21、告警分类及模板设计
17.以全覆盖的方式收集amf平台发生的所有原始告警数据,对其分析后进行分类,并将通信网络故障告警设置为:critical、error、warning、info和debug五个等级,当告警等级为 critical或error时启动错误定位及诊断功能;当告警等级为warning、info或debug时则不作处理。
18.s22、设计数据监控包获取方案
19.采用限流算法中的滑动窗口算法获取故障数据监控包,所述滑动窗口算法将总阈值切分为总个数为n的连续小窗口,当窗口容量被填满时,加入一个小窗口的同时淘汰一个最旧的窗口。
20.s24、故障通信数据包的预处理
21.将通信数据包经过滤操作得到的故障关键信息点和收集故障时刻的平台日志信息存储到容量富裕的另一磁盘。
22.s3、基于机器学习的5g网络故障定界模型的设计
23.s31、故障分类专家知识库的建立
24.基于历史经验及知识建立故障分类专家数据库的信息索引系统,通过查询得到充足经验的查询结果,提取故障与故障根因的对应关系以及关联模式。
25.s32、故障定界机制实现
26.s321、数据采集及预处理
27.采用机器学习算法对采集的通信流程错误日志故障数据进行预处理,所述预处理包括:数据清洗及集成、数据变换以及数据数据格式化;所述数据清洗是对数据样本异常段落进行替代、填充或估计处理,判断离群点数据是否为有用数据,如是有用数据则保留,若不是有用数据则当噪声做抛弃处理,异常范围值当作缺失值处理;所述数据格式化用于发现适合用于故障定界的特征。
28.s322、数据关键信息的提取
29.利用逆文本指数算法计算每篇日志中每个关键词的逆文本指数分数,以统计每一份日志区别于其他日志的重要程度,所述逆文本指数算法实现步骤如下:
30.1)切词评分:使用jiaba工具对每篇初始日志数据文件进行分词,并模仿英文句子,将分词后日志数据组装成以空格为分割的字符串。
31.2)词频矩阵转换:将文本分词后的矩阵用sklearn库中的countvectorizer工具转换成词频矩阵,并封装成数据帧格式。
32.3)计算每个关键词的tf-idf值,tf-idf值与该词在句子中的重要性成正比,通过对词频矩阵数据帧计算得到tf-idf分数的权重矩阵,所述tf-idf值使用下述(a)式计算:
33.34.其中,tf(di,tj)为词频参数;idf(tj)为逆向文件频率参数;df(tj)为包含特征词 tj的文件的数目参数;m为总文本数目参数。
35.4)优化操作:将tf-idf分数的权重矩阵进行归一化和平滑的优化操作,得到多维逆文本指数分数。
36.s323、故障数据分类
37.将多维逆文本指数分数作为无监督学习的k-means聚类算法的输入特征值进行训练,得到的分类结果为多维乘多维的字符串分数矩阵,所述k-means聚类算法的步骤如下:
38.1)将k-means算法的k值设定为amf流程专家库里的总项目数值,根据专家数据库里建立的障故类型预分类,所述障故类型的总数为48种,随机选择48个故障数据点作为质心,即a=[a
(1)
,a
(2)
,...,a(i)...,a
(48)
]。
[0039]
2)计算故障日志分数数据集中每一个故障数据点与每一个质心的欧式距离,离哪个质心近,就划分到那个质心所属的集合,得到48个集合,所述故障数据点由下述(b)式表示为:
[0040]
data(j)=[g
j_11,...,gj_1n,gj_21,...,gj_2n,...,g48_j1,...,gj_jn
](b)。
[0041]
其中,data(j)表示故障数据点;gj_jn表示第j个故障数据点对应的第jn个分词的tf-idf 值。
[0042]
所述故障数据点与质心的欧式距离由下述(c)式表示为:
[0043]
d=||d
ata(j)-a(i)||2(c)。
[0044]
其中,d表示欧式距离;data(j)表示故障数据点;a(i)表示质心。
[0045]
3)计算48个集合中所有对象的均值,以此作为该类别新的质心,即 a1=[a
1(1)
,a
(2)
,...,a(i)...,a
(48)
],并由下述(d)式计算所有样本中故障数据点到其质心的距离平方和:
[0046][0047]
4)判断新一轮的聚类质心以及总距离平均值是否发生变化,如果质心趋于收敛,则可认为聚类已经完成;如果发生变化,则需要重复步骤2)和步骤3)。
[0048]
s324、数据降维可视化
[0049]
对多维的分类后数据使用t-sne算法进行非线性降维达到可视化的目的,所述t-sne算法降维的具体步骤如下:
[0050]
1)计算二维平面上所有点的相似性,选择一个点,首先计算其和其周围点的距离,得到了本点同其余所有点的相似性分数,然后将这些周围点排放在以本点为中心的正态曲线下,相似性分数越大,表明两个点在二维平面上距离越近;相反,则表明两个点在二维上的距离越远。
[0051]
2)获得本点同其余所有点的相似性分数以后,标准化这些分数,使得它们相加和为1。
[0052]
3)由于每一个点所对应的正态曲线宽度是由其周围点分布的紧密度来决定的,那么两个点之间,前后两次计算的相似性分数可能会不同,所以t-sne算法将这两个点的相似性分数求均值,获得一个矩阵,每一行或列表示这个点同其他点的相似点分数。
[0053]
4)计算一维直线上所有点的相似性分数,选择一个指定的点,然后计算该点与周
围点的距离,获得的降维结果为相似性分数。
[0054]
s4、5g网络故障定位模型的设计
[0055]
s41、sbi接口定位的实现方案
[0056]
amf在与其他网络功能服务交互时,通信接口均采用基于服务的接口sbi,所述sbi接口应用层采用http协议;所述amf分别使用ausf、smf、udm、eir、nssf以及smsf 分别执行nausf服务、nsmf服务、nudm服务、neir服务、nnssf以及nsmsf服务操作,这些服务操作包括:amf和这些网元之间的http请求以及响应,amf在请求这些服务时,会根据流程的不同在http消息中包含不同的请求,amf要么获得请求内容,要么收到包含于返回http响应中的故障事件。
[0057]
所述故障事件包括下述服务状态码事件:
[0058]
1)nausf服务状态码事件
[0059]
ausf提供用户鉴权服务,可能发生请求被ausf拒绝和请求被ausf接受但是鉴权结果为失败的故障事件。
[0060]
2)nsmf服务状态码事件
[0061]
smf提供会话处理服务,可能会发生请求被smf拒绝的故障事件。
[0062]
3)nudm服务状态码事件
[0063]
udm提供用户数据管理以及用户上下文管理服务,用户数据管理服务以及用户上下文管理服务,分别有可能发生由于n 8故障导致的请求被udm拒绝以及请求被udm拒绝的故障事件。
[0064]
4)neir服务状态码事件
[0065]
eir提供设备身份检验服务,可能发生请求被eir接受,但是检验结果为失败的故障事件。
[0066]
5)nnssf服务状态码事件
[0067]
nssf网络切片选择服务,可能发生请求被nssf接受,但是切片选择为失败的的故障事件。
[0068]
s42、n1及n2接口定位的实现方案
[0069]
根据amf的主要流程以及3gpp协议规定错误标识码,建立包含协议类型、错误场景以及错误标识码的专家库,并给出错误标识码的故障描述以及解释,所述amf的主要流程有:注册、去注册、会话建立、切换以及服务请求,这些流程通信使用的接口除了n1和n2,其他均采用sbi接口;所述n1和n2接口应用层以及非接入层分别采用的协议为ngap和nas-mm,并根据该协议建立nas-mm和ngap故障专家库。
[0070]
本发明在通信领域的5g网络流量吞吐量大,信令类型众多,有用信息流失速度快的情况下,借用无监督方式的机器学习算法对网络故障诊断提供一种低开销高性价比的诊断方案。该方法主要从故障数据源获取以及诊断策略角度入手,运用限流算法、som算法、k-means 算法、tf-idf算法等以及3gpp相关知识等,降低了故障判决点开销、故障信息源收集开销、故障复现成本开销和故障诊断结果映射到3gpp官方解释的开销。
[0071]
本发明与现有技术相比具有较高准确性准确性的故障定位,帮助使用者快速整理思路以及定位故障方向,符合3gpp协议规范,大大减少了故障信息源的容量开销和系统为保证信息完整性所耗费的资源,进一步降低故障判决点开销、故障信息源收集开销、故障复
现成本开销以及故障诊断结果映射到3gpp官方解释的开销,且本方案比传统关键词查找方案诊断正确率要高17%,,实用性很强,不仅适用于5g移动通信网络故障的诊断,还能用于其他领域的故障诊断。
附图说明
[0072]
图1为本发明问题分析与建模架构图;
[0073]
图2为本发明问题总体模型架构图;
[0074]
图3为故障流量滑动窗口图;
[0075]
图4为低开销故障日志信息获取示意图;
[0076]
图5为故障信息关键词保存示意图;
[0077]
图6为sbi通信协议栈图;
[0078]
图7为n1接口以及n2接口通信协议栈图;
[0079]
图8为故障信息源获取模块性能对比图;
[0080]
图9为故障定界及定位模块正确率对比图;
[0081]
图10为最终诊断正确率对比图。
具体实施方式
[0082]
本发明采用5g移动通信网络模型、低开销故障信息源获取模型、故障定界模型和故障定位模型为四个呈递进关系的子模型构建的5g网络故障诊断模型,实现低开销amf网络智能故障诊断具体包括以下步骤:
[0083]
s1、完成低开销5g移动通信故障诊断问题的总体建模
[0084]
参阅图1,为了解决低开销5g通信网络智能诊断问题,将此研究目标分解成四个子问题,分别为“如何构建通信网络”、“如何获取数据”、“如何对故障进行定界”以及“如何对故障进行定位”,并且针对每个子问题都提出了对应的子模型,对应的子模型分别为“5g移动通信网络模型”、“低开销故障信息源获取模型”、“5g网络故障定界模型”以及“5g网络故障定位模型”,子模型之间呈现出递进关系。“5g移动通信网络模型”采用了基于状态的用户调度方式运行流程流量,“低开销故障信息源获取模型”运用了限流算法中的滑动窗口算法和漏斗算法以及自组织映射算法来实现降低数据获取部分低开销的目标。“5g网络故障定界模型”利用了逆文本指数分数算法、k-means算法以及案例推理法判断故障所处的流程类别,降低了故障诊断结果映射到3gpp官方解释的开销。“5g网络故障定位模型”利用了sbi、n1以及n2接口的故障标识映射关系实现故障的具体定位,实现了符合3gpp协议规范的故障诊断方案,减少了使用者的理解成本以及故障根因重分析开销。
[0085]
s2、解决“如何构建5g通信网络”的问题
[0086]
参阅图2,首先根据5g网络架构拓扑结构搭建amf网元以及amf周边的网元,然后,根据3gpp协议用户属性规范设计5g通信网络用户模拟机制,最后,从amf网元、amf 周边的网元以及它们相互之间的通信关系三个角度着手,建立基于状态调度的方法设计了5g 流量调度周期模拟机制。
[0087]
s3、解决“如何获取数据”的问题
[0088]
解决“如何获取数据”的问题并缩减数据获取环节的开销,以低开销轻量级的方式
监控网络通信数据包以及相关日志信息。运用限流算法中的滑动窗口算法和漏斗算法降低了故障数据的存储容量开销,运用自组织映射算法来降低了故障信息源收集开销以及故障复现成本开销,利用告警机制降低故障判决点开销。总体方案思路是:1)建立告警中心,为故障信息源的获取提供判决条件;2)运用限流算法中的滑动窗口算法以及som算法建立通信数据包获取方案;3)运用限流算法中的漏斗算法建立故障日志信息获取方案;4)获取故障信息源并对信息进行处理和保存。
[0089]
s4、解决“如何对故障进行定界”的问题
[0090]
具体来说,为了增加故障诊断的正确率以及权威性,减少诊断结果映射到3gpp协议规范的成本,以流程为诊断定界点对故障定界模型详细阐述,增强可理解性以及复用性。具体使用的方法有逆文本指数分数算法、k-means算法以及案例推理法。故障定界问题本质上是一个根据关键性信息进行描述、辨认、分类、解释以及与预测的问题。主要依赖从原始信息数据集中挖掘典型有效信息进行归类来判断所属故障场景,是关联关系发现的过程。
[0091]
s5、解决“如何对故障进行定位”的问题
[0092]“5g网络故障定位模型”利用了sbi、n1以及n2接口的故障标识映射关系实现故障的具体定位,实现了符合3gpp协议规范的故障诊断方案,减少了使用者的理解成本以及故障根因重分析开销。由于amf网元通信使用sbi接口、n1接口或n2接口,而sbi接口协议栈的http响应以及n1和n2接口的ngap协议及nas-mm协议响应本身就能提供大量有用故障指引信息,所以将这三个接口的响应故障标识码应用在故障定位方案中作为重要参考。
[0093]
以下结合附图及实施例对本发明进行详细描述。显然,所列举的实例只用于解释本发明,并非用于限定本发明的范围。
[0094]
实施例1
[0095]
本发明所采用的技术方案如下:
[0096]
s1、完成移动通信网络的构建
[0097]
根据5g网络架构拓扑结构搭建amf网元以及amf周边的网元,然后,根据3gpp协议用户属性规范设计5g通信网络用户模拟机制,最后,从amf网元、amf周边的网元以及它们相互之间的通信关系三个角度着手,设计基于状态调度的5g流量调度周期模拟机制。
[0098]
s2、故障信息源获取模型的构建
[0099]
s21、告警分类及模板设计
[0100]
以全覆盖的方式收集完amf平台发生的所有原始告警数据,在对这些告警数据分析后,对amf平台原始告警进行类别分类。主要将通信网络故障告警等级设置为五级,分别为: critical、error、warning、info和debug。当告警的严重等级为critical及error时才启动错误定位及诊断功能,当严重等级为warning、info和debug时则不做处理。严重等级划分以及模板设计能够在保障系统正常运行的情况下尽可能多的暴露问题,但是又不会过多的浪费 amf平台资源。
[0101]
s22、设计数据监控包获取方案
[0102]
传统数据监控方式由于不确定有用数据包范围,会将平台运行期间的所有信息截取保留,这需要牺牲系统存储容量以及敏捷性来保证数据的完整性和有效性。这样的工作方式会带来以下几个弊端:监控进程抢占系统资源、过大的数据包存储量会降低系统的运行速度、庞大的数据量不仅有效率低而且处理压力巨大。因此急需一种轻量低开销的故障
信息源获取方式来解决传统数据获取方式的弊端。
[0103]
本步骤主要运用了限流算法中的滑动窗口算法来实现故障数据监控包的获取。滑动窗口算法是基于对固定窗口算法改进而得来的,主要解决了临界点连续性的问题。滑动窗口算法将总阈值进行二次切分,切分为总个数为n的连续小窗口。当窗口容量被填满时,加入一个小窗口的同时会有一个最旧的窗口被淘汰。轻量低开销的数据包获取方案是为了增大信息的有效性,这不仅可以加快有用故障信息的查找速度,减少信息查找开销,还能减少磁盘存储资源开销。
[0104]
参阅图3,本步骤将运行流量看作是以时间为横轴,以吞吐量为纵轴的函数。那么在某个时间段内的总运行流量计算表达式为,平均流量运行速率的计算表达式为。假设故障在t1时刻发生,故障有用信息出现在t2时刻,告警信息产生在t3时刻,故障诊断有效信息出现在t
p
时刻。那么实际深入分析的时间段为[t1,t3],实际使用的信息容量表达式为。作为后备冗余信息量的数据时间段为[t
p
,t1],最大需要的冗余信息容量表达式为。用v个等容量为u的数据包滑动窗口来表示这段流量,该滑动窗口向前滑动一个步长r,就会有r个旧数据包滑出,通常步长值r为1。本步骤将监控的通信流量看作是数据包序列m={m
l
,...,mv,...,mw,...,m1},为数据包总长度。
[0105]
如图3所示,m(error)={mw,...,m1}为实际需要使用到的故障信息源数据监控包, m(backup)={mv,...,mw}是有可能会使用到的冗余信息包,m(skip)={m
l
,...,mv}是滑动窗口滑走的包,传统故障信息通信数据源收集方式是将m={m
l
,...,mv,...,mw,...,m1}全部收集,然后再进行处理。本步骤故障信息源收集方式是只收集m(error)+m(backup)={mv,...,m1}。本步骤将有故障信息的数据包标记为1,不含故障信息的数据包标记为0,将每个数据包看作是一个独立的信息变量,那么传统收集方式的信息序列和本文信息收集方式的信息序列分别为: m(traditional)={0
l
,...,0v,...,0
w-1
,1w,...,1
l
}与m(thispapper)={0v,...,1w,...,11}。根据香农信息论的定义,运用随机概率分布统计以及取对数的方法从后验角度得知实验前信源的不确定性,信源的不确定性等于信源的信息量,信源的平均信息量计算公式为一段信息的不确定性越大,则信息量越大。也就是说,相对而言,信息量越大,能够帮助消除的不确定性就越多,相对而言信息更有效。信息的价值在于帮助消除不确定性,由此,分别计算:m(traditinal)=m={0
l
,...,0v,...,0
w-1
,1w,...,11} 与
[0106]
m(thispapper)={mv,...,m1}={0v,...,1w,...,11}的单位信息量。如下述(e)式所示:
[0107][0108]
通过运算可知传统方案获取的单位信息量小于本方案信息获取方式的单位信息量。例如 00000000011111与011111的单位信息量分别为:
[0109]

[0110]
由上可以看到,两端消息都涵盖了需要的故障信息源,但是消息(011111)
[0111]
相比于消息(000000000011111)的单位信息量更多,即(011111)传送的消息更加
有效。由此推出:本文的数据监控包信息提取方式的有效率大于传统监控包提取方式。为了提升信息提取有效率,避免时间查找开销以及降低分析复杂度,本文在进行故障诊断时首先使用 m(error)={mw,...,m1}来进行故障监控信息分析。m(backup)={mv,...,mw}作为备份查找信息,不需时略过该信息的分析,这能减少信息查找及分析开销。
[0112]
s23、设计基于漏斗算法的低开销故障日志信息获取方案
[0113]
参阅图4,平台产生的日志记录按照fifo队列算法以恒定速率进入漏斗中,漏斗总容量是固定的,这个固定值根据经验取值,要求大于平均故障信息容量。漏斗以恒定速率删除最老的日志信息,当检测到告警产生时,下方的漏洞关闭,不再删除日志信息,上方的漏洞不再接受新的日志信息,然后对告警附近时间段内的日志进行关键信息查找并分析,对这些日志以时间顺序为基准进行存储。该序列主要以日志类型、发生时间点、事件为主要特征进行排序,方便进行下一步的故障信息查阅。存储日志信息的主要目的是将信令流程记录日志收集下来,当流程调度异常情况出现时,这部分信息将作为重要参考数据。
[0114]
s24、故障通信数据包预处理
[0115]
参阅图5,这些通信数据包会经过过滤操作得到故障关键信息点,并存储到容量富裕的另一磁盘。随后会立即收集故障时刻的平台日志信息,这些平台日志信息也会被存储到容量富裕的另一磁盘。这样做的好处是能够限制数据包的总存储容量,不过多占用amf资源的同时又能及时保存重要信息。
[0116]
s3、基于机器学习的5g网络故障定界模型设计
[0117]
s31、故障分类专家知识库预建立
[0118]
故障分类专家数据库是基于历史经验以及知识而建立的信息索引系统,根据该知识库制定各种规则,不需要对研究问题建立复杂的数学模型就能得到具备充足经验的查询结果,能快速的提取故障与故障根因的对应关系以及关联模式,且查询结果可理解性强。但是难点也很明显,建立专家知识库需要大量的经验以及知识作为支撑,系统知识需要人工获取以及维护。
[0119]
s32、故障定界机制实现
[0120]
s321、数据采集及预处理
[0121]
本步骤首先根据数据需求分析编写脚本采集大量通信流程错误日志故障数据作为信息的处理源,然后为方便使用机器学习算法,对数据预处理,处理主要工作有数据清洗及集成、数据变换以及数据规范化等。数据清洗过程主要针对数据样本异常段落进行处理,根据异常情况的不同,做替代、填充或者估计处理,判断离群点数据是否使有用数据,如是有用数据则保留,若是无用数据则当作噪声做抛弃处理,异常范围值当作缺失值处理。最后进行数据格式化,用来发现适合用于故障定界的特征。数据预处理可以帮助机器学习算法更快发现规律,加快分析速度。预处理恰当时,最终结果准确性及速度都会有一个较大的提升。
[0122]
s322、预数据关键信息提取
[0123]
本步骤利用逆文本指数算法计算每篇日志中每个关键词的逆文本指数分数,目的是统计每一份日志区别于其他日志的重要程度。算法实现步骤如下:
[0124]
切词评分:本文中获得初始数据样本以后,首先使用jiaba工具对每篇初始日志数据文件进行分词,并模仿英文句子,将分词后日志数据组装成以空格为分割的字符串。假设
原始数据集为以下所示,数据集1:s
11s12
...s
1i
...s
1n
。数据集2:s
21s22
...s
2i
...s
2n
。...。数据集n: s
j1sj2
...s
ji
...s
jn
。经过分词工具处理后结果如下述表1文本分词后矩阵所示:
[0125]
表1文本分词后矩阵
[0126][0127]
词频矩阵转换:经过文本分词后,使用sklearn库中的countvectorizer工具将文本分词后矩阵转换成词频矩阵,并封装成数据帧格式。最终经过词频矩阵转换处理后的结果如下表2 词频矩阵转换后的结果所示:
[0128]
表2词频矩阵转换后的结果
[0129][0130]
接下计算每个关键词的tf-idf值,tf-idf值与该词在句子中的重要性成正比,所述 tf-idf值使用下述(a)式计算:
[0131][0132]
通对对词频矩阵数据帧进行计算后可得到tf-idf分数的权重矩阵。如果语句中的每个词都只在该语句中出现了一次,则其tf值相等,如果某词在每个文本中都出现了,那么它的idf 值相较其他关键字更低。经过tf-idf计算后,本文还会进行归一化、平滑等一系列优化操作。最后,得到多维的tf-idf分数矩阵表,如下述
[0133]
表3tf-idf分数计算结果所示:
[0134]
表3tf-idf分数计算结果
[0135][0136]
s323、故障数据分类
[0137]
对比起朴素贝叶斯这样的有监督分类算法,本步骤更倾向于使用无监督学习的k-means 算法达到分类的目的。不选择有监督分类算法的原因在于分类方式训练成本较高,第一是需要建立三个数据集:训练集、验证集和测试集。其中训练集用来估计模型,验证集用来确定网络结构参数,而测试集则用来检验最终选择的最优模型性能如何,有监督分类算法需要大量被标记过的数据集输入才能达到满意的聚类效果,而k-means算法在寻找未被标记的数据集规律性方面表现良好。
[0138]
本步骤将上一步骤处理后的多维逆文本指数分数作为k-means聚类算法的输入特征值进行训练,得到分类结果。当某一个故障再次发生时,通过计算该故障日志的逆文本指数分数进行案例推理达到分类目的,即可大致确定该故障属于什么流程内发生的错误。聚类步骤如下:
[0139]
1)将k-means算法的k值设定为amf流程专家库里的总项目数值。根据专家数据库里建立的故障类型预分类,类型总数有48种,随机选择48个数据点a=[a(1),a(2),...,a(i)...,a(48)]作为质心。
[0140]
2)计算故障日志分数数据集中的每一个点与每一个质心的欧式距离,离哪个质心近,就划分到那个质心所属的集合。
[0141]
所述故障数据点由下述(b)式表示为:
[0142]
data(j)=[g
j_11,...,gj_1n,gj_21,...,gj_2n,...,g48_j1,...,gj_jn
](b)。
[0143]
其中,data(j)表示故障数据点;gj_jn表示第j个故障数据点对应的第jn个分词的tf-idf 值。
[0144]
所述故障数据点与质心的欧式距离由下述(c)式表示为:
[0145]
d=||
data(j)-a(i)||2(c)。
[0146]
其中,d表示欧式距离;data(j)表示故障数据点;a(i)表示质心。
[0147]
3)重新整理数据后,共有48个集合。重新计算这48个集合中所有对象的均值,以此作为该类别新的质心,新一轮的质心为a1=[a
1(1)
,a
(2)
,...,a(i)...,a
(48)
],并重新计算所有样本数据点到其质心的距离平方和,且由下述(d)式计算:
[0148][0149]
其中,data(j)表示故障数据点;a(i)表示对应的质心。
[0150]
4)判断新一轮的聚类质心以及总距离平均值是否发生变化,如果质心趋于稳定或者说收敛,可以认为聚类已经完成;如果发生变化,则需要重复步骤2)和步骤3)。
[0151]
5)聚类结束,分类后故障数据详见下表:
[0152]
表4分类后故障数据
[0153][0154]
s324、数据降维可视化
[0155]
分类后的故障数据呈现出的形式为多维乘多维的字符串分数矩阵,本步骤最大的需求是要能够对故障日志数据样本进行描述。但3维以上的数据无法达到可视化效果,所以本步骤会对多维的分类后数据进行非线性降维达到可视化的目的。
[0156]
sne是基于在邻域图上随机游走的概率分布,可以在数据中找到其结构关系,t-sne在高位空间中采用的高斯核心函数定义了数据的局部和全局结构之间的软边界,这样做的目的是为了保留数据的局部结构和全局结构。t-sne降维步骤如下:
[0157]
1)计算二维平面上所有点的相似性,选择一个点,首先计算其和其周围点的距离,得到了本点同其余所有点的相似性分数,然后将这些周围点排放在以本点为中心的正态曲线下,相似性分数越大,表明两个点在二维平面上距离越近;相反,则表明两个点在二维上的距离越远。
[0158]
2)获得本点同其余所有点的相似性分数以后,标准化这些分数,使得它们相加和为1,标准化处理的目的是为了增加数据的可比性。
[0159]
3)由于每一个点所对应的正态曲线宽度是由其周围点分布的紧密度来决定的。那么两个点之间,前后两次计算的相似性分数可能会不同。所以t-sne算法将这两个点的相似性分数求均值。最终,我们可以获得一个矩阵,每一行或列表示这个点同其他点的相似点分数。
[0160]
4)计算一维直线上所有点的相似性分数。同之前计算二维平面上点的计算过程一样,选择一个指定的点,然后计算其同周围点的距离,进而获得相似性分数,这次使用的曲线从正态分布变成t分布,最终的降维结果如下表所示:
[0161]
表相似性分数降维
[0162][0163]
s4、5g网络故障定位模型设计
[0164]
s41、sbi接口定位方案实现
[0165]
amf在于其他网络功能服务交互时,通信接口均采用基于服务的接口sbi。
[0166]
参阅图6,由图可知sbi接口应用层采用http协议,http消息流内容里的重要信息包括状态码及其定义、协议错误或应用错误指示以及相应的发送到用户端的5g移动管理状态码。amf分别使用ausf、smf、udm、eir、nssf以及smsf分别执行nausf服务、nsmf 服务、nudm服务、neir服务、nnssf以及nsmsf服务操作。这些服务操作包括amf和这些网元之间的http请求以及响应。amf在请求这些服务时,会根据流程的不同在http消息中包含不同的请求,amf要么获得请求内容,要么收到下述包含于返回http响应中的故障事件:
[0167]
1)nausf服务状态码事件
[0168]
ausf提供用户鉴权服务。有可能会发生的故障事件有:请求被ausf拒绝和请求被ausf 接受但是鉴权结果为失败,下述表7和表8分别具体阐述了这两种故障事件的http映射关系。
[0169]
表7ausf拒绝鉴权请求
[0170][0171]
表8ausf接受鉴权请求
[0172][0173]
2)nsmf服务状态码事件
[0174]
smf提供会话处理服务,有可能会发生的故障事件有:请求被smf拒绝,下表具体阐述了这种故障事件的http映射关系。
[0175]
表9smf拒绝鉴权请求
[0176][0177]
3)nudm服务状态码事件
[0178]
udm提供用户数据管理以及用户上下文管理服务,用户数据管理服务以及用户上下文管理服务,分别有可能会发生的故障事件有:由于n 8故障导致的请求被udm拒绝以及请求被udm拒绝,下表10和表11分别具体阐述了这两种故障事件的http映射关系。
[0179]
表10n8故障导致的请求被udm拒绝
[0180][0181]
表11请求被udm拒绝
[0182][0183]
4)neir服务状态码事件
[0184]
eir提供设备身份检验服务。有可能会发生的故障事件为请求被eir接受但是检验结果为失败,下表12具体阐述了这种故障事件的http映射关系。
[0185]
表12请求被eir接受但是检验结果为失败
[0186][0187]
5)nnssf服务状态码事件
[0188]
nssf网络切片选择服务,可能会发生的故障事件为请求被nssf接受但是切片选择为失败,下表13具体阐述了这种故障事件的http映射关系。
[0189]
表13请求被nssf接受但是切片选择为失败
[0190][0191]
s42、n1及n2接口定位方案实现
[0192]
根据amf的主要流程以及3gpp协议规定错误标识码,建立包含协议类型、错误场景以及错误标识码的专家库,并给出错误标识码的故障描述以及解释。amf的主要流程有:注册、去注册、会话建立、切换以及服务请求。这些流程通信使用的接口除了n1以及n2,其他均采用sbi接口,sbi接口的故障定位方式上一步中已经陈述,本步骤描述n1及n2接口故障定
位方法。
[0193]
参阅图7,n1及n2接口通信协议栈如图7所示,应用层以及非接入层分别采用的协议是 ngap以及nas-mm,本文针对这两个特定使用的协议建立了如下表14所示的nas-mm及 ngap故障专家库,故障由协议与标识号唯一标识,目的是快速找到异常点。
[0194]
表14nas-mm及ngap故障专家库
[0195]
[0196]
[0197]
[0198][0199]
参阅图8a,表示在获取同样的故障数据样本时,不借助工具获取数据时原始的基准cpu 消耗量、借助传统方式获取数据时的消耗量以及借助本发明方式获取数据时的cpu消耗量。无数据获取进程时耗费的cpu为72%,传统方案数据获取时耗费的cpu为79%,本文方案数据获取时耗费的cpu为75%。
[0200]
参阅图8b,表示获取数据获取实验中的磁盘空间容量消耗量,传统方式的磁盘空间容量消耗量为360mb,本发明磁盘空间容量消耗量为252mb。
[0201]
参阅图8c,表示在故障数据时本文方案以及所需的平均实验次数,说明了本发明相比于传统方案来说,在资源成本开销以及单次击中错误现场的能力上表现更为良好。
[0202]
参阅图9a,表示本文故障分类定界方案正确率统计结果,说明了本发明的故障定界能力表现良好。
[0203]
参阅图9b,表示本文故障分类定位方案正确率统计结果,说明了本发明的故障定位能力表现良好。
[0204]
参阅图10,表示文本方案以及传统方案的故障诊断正确率对比结果,说明了本发明不仅能够保证节省资源开销,还能增加故障诊断的正确率。
[0205]
本发明使用了限流算法中的滑动窗口算法以及som算法建立了通信数据包获取方
案,滑动窗口算法用起来比较简单,方便后期维护,后期调整数据容量的时候它可以根据参数调整窗口的大小,后期的收容扩容会更加灵活一些,使用关键信息过滤法处理和保存了故障源关键信息。基于流程的符合3gpp协议的具备强规范性的故障定界方法,首先建立了故障类别专家数据库,然后根据海量故障源建立分类数据库,最后对新产生的故障进行案例推理归类,并根据5g移动通信网络协议栈在应用层及非接入层的核心特点体现建立了基于sbi、 n1以及n2接口的应用层及非接入层的故障标识映射关系数据库实现了故障的具体定位,这种方法具有极高的客观性以及准确性。实现了符合3gpp协议规范的故障诊断方案,减少了使用者的理解成本以及故障根因重分析开销。
[0206]
以上实施例只是对本发明做进一步说明,并非用以限制本发明专利,凡为本发明等效实施,均应包含于本发明专利的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1