热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

arima数据预处理_网络设备智能分析,从数据到洞察

信息化及互联网技术的发展以及各行各业数字化业务的迅速增长,对IT基础设施提出了高性能和高可靠性的双重需求。在构建高性能网络上,大吞吐量转发设备和高速接口

信息化及互联网技术的发展以及各行各业数字化业务的迅速增长,对IT基础设施提出了高性能和高可靠性的双重需求。在构建高性能网络上,大吞吐量转发设备和高速接口快速迭代,400G链路带宽设备也已经发布并将逐步走入广泛应用。在高可靠性上,双管齐下,一是不断提高可靠性硬件设计和控制技术设计,二是通过网络运维技术提高网络运行可靠性。本文主要针对网络设备智能分析,讨论如何从网络设备采集数据,通过数据的挖掘分析形成对网络设备的洞察,为网络设备运维带来智能,最终增强可靠性运维能力。为描述方便,下文中部分描述省略网络设备这一限定词。

运维分析为何要大数据

设备技术及运维技术的发展使得运维数据在不断朝着更精、更深、更广方向发展。

更精 通过更小周期的数据采集,能够更精确采集到真实反应设备实际状态的数据。

更深 一个网络设备往往有两套系统:管理控制系统和数据转发系统。转发服务系统过程变化具有更高频率。由于技术及成本收益等因素的原因,传统运维中主要针对管理控制系统,而转发服务系统往往是一个黑盒状态。高性能网络精细运维的诉求以及技术不断进步,使得转发服务系统也开始提供高速过程的状态数据,成为运维分析对象。高频率过程的采集分析必然增加数据的产生速度和数量。

更广 空间上随着运维手段和能力的提高,更多的数据被纳入;时间上智能运维的引入对历史数据提出了长记录要求,无论是训练样本数据还是推理数据,都是智能分析的大前提。所有这些都需要分析系统有更强的存储计算能力,即提出了大数据技术的必要性。

数据的采集与预处理

在网络运维分析中,数据挖掘的几个通用过程必不可少:数据采集;数据取样和探索;数据预处理;数据建模分析;模型校验评估;模型应用。如图1所示。

68242565f765744c867c9e4ae9f3f2ca.png

图1 网络运维数据挖掘过程

其中,数据的采集是最基础的工作。网络运维数据的理想采集方式如图2所示。持续变化数据,适合gRPC Telemetry Dialout方式定时采集,不同变化频率和重要性的数据采用不同的定时周期;有限状态数据,适合事件驱动Dialout,方式上可以是TRAP告警、Log事件,或gRPC等;静态数据,可以事件驱动Dialout,也可以不定期Get,根据数据的特点来确定。

1a4e247265f00901b05d5ab654822f63.png

图2 网络设备几种类型运维数据采集

数据是产生最终分析结果的根本源泉,有什么样的数据就会产生什么样的分析结果,数据内容和质量至关重要。因此分析前,必须先对数据进行实际采样,进行人工分析后确定分析方法。

对数据进行正式分析之前,还要对数据进行预处理。因为任何数据都不是完美的,都会存在这样那样的问题,所有需要进行预处理。另外,数据的分析需要从不同的维度进行,有些数据必须经过一定的加工才能作为后续建模分析的数据。预处理的好坏具有和原始数据的质量一样的重要性。

下面几个预处理,在网络设备运维中需要重视。

1.1 时间一致性处理

网络运维数据中对应数据的时间非常重要,尤其在数据相关性分析时,时间的准确性是首要因素,但是在实际环境中各个设备的时间往往不是同步的。如图3所示,从分析系统的角度定义两个时钟基线标签,本地时钟是各设备的,全局时钟是分析系统的。对于不同目的的分析可以使用不同的时间标签。

18aa3ae91dfc1b3e5b1654a6d1a9cd87.png

图3 设备运维数据的时间属性

1.2时间粒度聚合处理

如图4所示,对于由网络设备定时采集并PUSH到分析系统的数据,往往由于网络设备性能的原因,保证不了如下两个方面,需要有适应性处理。

0c79cd393e1d6a3647de32160f411cd1.png

图4 Telemetry数据最小采集粒度变化情况

数据建模分析

网络设备运维中有些数据本身直接有运维意义,比如主备控制协议握手时间数据,握手超时就会导致主备设备分裂,但多数数据还是需要通过较多的分析才能得到有价值信息。通过建模分析主要达到几个目的:

● 经过分析后的数据提升可视化价值。

● 通过数据分析找出网络运行的模式和规律。

● 通过数据分析对数据后面的事实做出判断,即隐含问题的发现。

● 通过数据分析找出问题关联的前置影响因素,即问题根由分析。

1、统计分析的方法

统计分析是传统简单而又直接高效的数据分析方法,分布式大数据计算的成熟使得统计分析方法更能发挥作用。不管是度量类的数据还是事件类的数据,都可以基于时间、网络空间、地理空间、网络基础设备特征、网络服务特征、网络用户特征等特征数据的单纬度、多纬度统计分析。

2、时间序列数据建模分析的方法

时间序列数据有的是从网络直接采集的数据,有的是原始数据经过加工后的数据,例如对原始数据经过统计分析和特征分析,分析的结果作为时间序列数据。时间序列数据分析的目的是要获得4个方面的结果:

● 序列基线分析,即找出数据的模式和规律。

● 序列异常检测,找出数据中偏离规律的异常点。

● 序列预测分析,找出序列未来的变化趋势。

● 对于多个序列,还要找出序列之间的相关性,尤其是异常点之间的相关性。

分析方法上,根据是否依赖学习样本数据区分为无监督学习和有监督学习方法。一般来说有监督学习具有更好的效果。

无监督基线学习及异常检测 其核心原理是,通过算法找出时间序列数据的一个趋势基线,并基于基线给定上下范围,超过给定范围的则认为是异常点,数据异常点在网络物理上就存在异常可能性。使用的方法例如:指数加权移动平均EWMA & 3-Sigma;多项式拟合 & 差值异常。

7e7ec9c3a377ea33d274920001cd4395.png

5dcf58ae2859371fcb66b501809e64bb.png

图 5 无监督时间序列异常检测

有监督学习异常检测 有监督学习就是事先有一定数量经过标注的序列数据,这些数据部分作为训练集用于学习,部分作为测试集用于验证。有监督的机器学习一般要经过特征工程从序列数据提取特征,然后将提取后的特征数据作为学习和分析的对象。时间序列的特征提取方法主要有统计特征、分类特征、拟合特征。

有监督学习及异常检测中极端梯度提升XGBoost是一个可并行计算的集成学习方法。通过逐步增加决策树来增加精度。XGBoost的建模过程如图9所示。

1f4f9ea1d618fb7c00a06da3b6ad05c8.png

图6 XGBoost

时间序列预测 时间序列的预测方法其思路是找出序列数据的变化趋势规律,根据规律来计算未来时间的序列数据。有如下常用方法:

● 自回归滑动平均方法:ARMA(p,q);ARIMA(p,d,q);

● 指数平滑方法:ETS;

● GAM模型;

● 中长期记忆模型:LSTM等。

3、事件数据建模分析的方法

网络运维不光是通过分析发现运行网络中存在的问题,更重要的是定位问题的根因,能够在问题产生时尽可能快速地找出根因并解决问题,以减少对业务的影响,甚至能够在问题未产生影响时进行纠正。这些问题体现在运维数据上,就可能是网络运行中产生各种各样的网络设备事件数据,或者是上述统计及时序分析得到的序列异常点数据。不管是事件数据还是异常点数据,都具有时间、空间特征,通过对不同维度数据的关联分析,就可以找到相关性,从而加速根因定位。

关联分析常用的分析方法有:Apriori及FP-Growth等。

案例分析

对于如图7所示的区域分支网络,A为接入设备,B1/B2为汇聚设备,C1/C2为核心设备,核心设备上行链路具有较高重要性,需要进行监测:一是监测实际的接口带宽增长趋势并给出预测,用于接口链路规划,采集的数据为接口利用率;二是对链路带宽不合理利用进行监测,及时发现并给出根因。采集的数据为接口利用率、接口上流量的Netstream采样。

2f6053a6876440d5e3d8df702ecb8ff1.png

图7 区域三级组网

1、在线监测问题

对监测的接口利用率预处理后形成时间序列数据,按照如下三级进行分析:

● 监测序列值与安全阈值比较,小于安全阈值则不进一步计算;

● 超过安全阈值后,做时间序列动态基线分析;

● 基于基线进行异常分析,标记序列异常点,生成异常事件。

通过上述分析监测方法,发现C1设备上行接口出现了如图8所示的利用率异常冲高事件,并在一定程度上影响了业务使用体验。

图8为C1上行出口11天的接口带宽利用率序列,序列时间粒度为小时,序列值为小时内10分钟均值最大值(通过10分钟均值,将小微突发排除,不作为监测对象)。

8b3da6e1611adae4f5f7dfb9825276b0.png

图8 C1设备上行出口带宽利用率异常监测

2、问题分析

监测发现问题后,将C1上行口接口利用率序列数据做成份分解分析,图11中的序列通过计算分解为如图9~图11的三个成份序列。

8492a63f2139d90558276afcd61df51b.png

图9 C1上行出口带宽利用率序列成份1

0646152fbc9478e39fcceb53eb1c218a.png

图10 C1上行出口带宽利用率序列成份2

088d61c25dd6b39780777cf1b01eba2b.png

图11 C1上行出口带宽利用率序列成份3

不难看出,成份1和成份2为常规成份,每日持续存在或者周期出现,序列成份3则是引起C1上行出口整体带宽利用异常并影响业务的主要因素,出现时间和异常点吻合。

再对C1上行出口的Netstream流分析,可以找出序列3对应的业务流,根据业务流的源地址可以知道是从哪里来的流量导致的问题,但还需要知道是新业务产生的流,还是其他路径的流切换到这里的,如果是切换来的,还需要知道是什么原因导致的切换。

接下来进行相关性关联分析,分为事件关联分析和实体关联分析:

事件关联分析 在C1上行出口相关的网络范围内基于时间做关联分析,发现在相同时间内有接入到汇聚的链路A-B2有故障事件。

实体关联分析 网络设计中,网络设备C2上行口和网络设备C1上行口有备份关系,即二者是接口带宽利用率分析的相关实体。

对C2上行口的带宽利用率也进行成份分析,结果参见图12。

4f3b755958711f7293289bfd6e1129a0.png

图12 C2上行出口带宽利用率序列成份分析

综合上述分析可以得出,导致C1上行出口利用率异常冲高的成份,正是C2上行出口减少的成份。根据网络拓扑,正是由于A-B2设备之间链路的故障导致一部分流量的路径由“A-B2-C2-上行口”切换为“A-B1-C1-上行口”,从而导致C1上行口带宽利用率过高。

结束语

网络设备智能分析领域,数据和方法的结合是一个渐进的过程。目前从技术应用上,有一定的成果但不成熟,依旧任重道远,但智能化为可靠性网络保驾护航必将是一个趋势。

目前,在网络设备智能分析领域,既有新华三这样的设备制造商也有像BAT这样的互联网企业,还有网管产品厂商,这些参与者之间既有共性的方法和技术,也有各自不同的视角和偏重,相互竞争、相互合作、相互参考中共同推动网络分析智能化进程。

新华三SNA架构中的SeerAnalyzer产品结合新华三多年的产品服务经验,深度结合产品的数据能力,将经验和数据挖掘技术相结合,力图提升SNA整体的智能分析能力。

新华三数字化联接

长按扫码关注我们,

更多精彩敬请期待!

0b4f4d410d27a75d2864377dff529a3e.png

这里“阅读原文”,查看更多




推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • Learning to Paint with Model-based Deep Reinforcement Learning
    本文介绍了一种基于模型的深度强化学习方法,通过结合神经渲染器,教机器像人类画家一样进行绘画。该方法能够生成笔画的坐标点、半径、透明度、颜色值等,以生成类似于给定目标图像的绘画。文章还讨论了该方法面临的挑战,包括绘制纹理丰富的图像等。通过对比实验的结果,作者证明了基于模型的深度强化学习方法相对于基于模型的DDPG和模型无关的DDPG方法的优势。该研究对于深度强化学习在绘画领域的应用具有重要意义。 ... [详细]
  • 本文概述了JNI的原理以及常用方法。JNI提供了一种Java字节码调用C/C++的解决方案,但引用类型不能直接在Native层使用,需要进行类型转化。多维数组(包括二维数组)都是引用类型,需要使用jobjectArray类型来存取其值。此外,由于Java支持函数重载,根据函数名无法找到对应的JNI函数,因此介绍了JNI函数签名信息的解决方案。 ... [详细]
  • 本文介绍了adg架构设置在企业数据治理中的应用。随着信息技术的发展,企业IT系统的快速发展使得数据成为企业业务增长的新动力,但同时也带来了数据冗余、数据难发现、效率低下、资源消耗等问题。本文讨论了企业面临的几类尖锐问题,并提出了解决方案,包括确保库表结构与系统测试版本一致、避免数据冗余、快速定位问题等。此外,本文还探讨了adg架构在大版本升级、上云服务和微服务治理方面的应用。通过本文的介绍,读者可以了解到adg架构设置的重要性及其在企业数据治理中的应用。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文介绍了绕过WAF的XSS检测机制的方法,包括确定payload结构、测试和混淆。同时提出了一种构建XSS payload的方法,该payload与安全机制使用的正则表达式不匹配。通过清理用户输入、转义输出、使用文档对象模型(DOM)接收器和源、实施适当的跨域资源共享(CORS)策略和其他安全策略,可以有效阻止XSS漏洞。但是,WAF或自定义过滤器仍然被广泛使用来增加安全性。本文的方法可以绕过这种安全机制,构建与正则表达式不匹配的XSS payload。 ... [详细]
author-avatar
最好的骨头518_822
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有