1956年,在由达特茅斯学院举办的一次会议上,计算机专家约翰·麦卡锡首次提出了“人工智能”一词,这也被人们看作是人工智能正式诞生的标志。此后的人工智能发展历程经历了多次波折:
人工智能的第一次高峰就是达特茅斯会议之后长达十几年的时间里,计算机被广泛应用于数学和自然语言领域,用来解决代数、几何和英语问题,有很多学者认为“20年内,机器将能完成人能做到的一切”。但很快人工智能发展遇到了技术瓶颈:一是计算机性能不足,很多程序无法在人工智能领域运行;二是用于深度学习的数据严重缺乏,无法支撑智能训练;三是人工智能程序处理复杂问题不堪重负。由于以上原因,上个世纪70年代人工智能发展陷入低谷。
人工智能的第二次高峰是以卡内基梅隆大学设计的一套名为XCON的“专家系统”为代表,这是一套具有完整专业知识和经验的计算机智能系统。在这个时期,仅专家系统产业的价值就高达5亿美元,衍生出了像Symbolics、Lisp Machines和IntelliCorp、Aion这样的软硬件公司。但到1987年时,苹果和IBM公司生产的台式机性能都超过了Symbolics等厂商生产的通用计算机,从此,专家系统风光不再。
人工智能再次崛起是以IBM的计算机系统“深蓝”战胜了国际象棋世界冠军卡斯帕罗夫事件为代表,这是人工智能发展的一个重要里程碑。而2016年AlphaGo战胜围棋冠军李世石则把人工智能推上了一个新的顶峰。在最近3年人工智能则引发了一场商业革命,谷歌、微软、百度等互联网巨头以及众多的初创科技公司,纷纷加入人工智能战场,掀起一轮又一轮的智能化狂潮,人工智能技术已经开始应用在各行各业,在网络和安全领域的研究和应用也得到了各科技公司的重视,其应用价值开始浮现。
人工智能在网络领域的应用
人工智能在网络最重要的应用包括智能运维、网络加速和网络优化三部分。
1. 智能运维
智能运维目前是人工智能发展最好、价值最高的应用,受到了各大公司的重视。传统的运维方式在监控、问题发现、告警以及故障处理等各个环节均存在明显不足,需要大量依赖人的经验,工作效率低下,并且在数据采集、异常诊断分析、告警事件以及故障处理的效率等方面都有待提高,而人工智能结合大数据分析技术,可以在智能监控、智能问题发现和预警、智能故障处理等方面最小化人为干预程度、降低人力成本以及提高运维管理效能。
1) 智能监控
随着企业IT系统规模的扩大、运维环境的复杂化,使得运维人员从海量的数据中发现问题的难度也越来越大。智能运维可以通过智能异常检测、故障关联分析、故障根因分析和智能异常预测等能力,帮助运维人员快速定位问题、追溯故障根源,并实现故障的预测预警。以智能异常检测为例,通过历史数据模型的异常检测等方法并结合AI技术,能够自动、实时、准确地从监控数据中发现异常,为后续故障的分析与处理提供基础。
2) 智能问题发现和预警
对故障进行根源分析是在众多可能引起故障的因素中,追溯到导致故障发生的症结所在,并找出根本性的解决方案。利用机器学习或者深度学习的方法可以找出不同因素之间的强相关关系,并利用这些关系,推断出哪些因素是根本性的因素,帮助用户快速诊断问题、提高故障的定位速度以及修复效率。
在告警方面,传统的告警管理一般使用固定阈值并且需要运维人员手动设置,这种方式不仅工作量巨大且十分依赖运维人员的经验,阈值设置不当可能导致告警风暴或者告警漏报等后果。当监控环境发生变化时,原先的固定阈值无法满足告警管理的要求。而智能运维采用动态基线告警方式,智能分析数据的动态极限,弥补了以往人为设置固定阈值的缺陷,智能地分析数据的发展趋势以及分析数据动态极限,从而对告警做出智能的判断,也就有更大灵活性和适用性。
3) 智能故障处理
在智能故障处理方面,传统运维管理中对故障的处理非常依赖运维人员的经验,但人的经验无法覆盖所有故障范围,运维人员经验不足可能会使运维效率低下或者产生错误决策。智能运维将实时监测结果或者预测结果引入智能专家决策系统,智能生成决策建议,根据实际结果及趋势判断采用的处理策略,可以是人工处理或者自动处理,有效减少问题排查的时间、大幅提升问题解决的效率,提升企业运维的标准化程度。
2. 网络加速
人工智能在网络加速最重要的应用是利用强化学习的思想,深度参与网络协议拥塞控制算法,加速各个应用的传输速率,提高网络的带宽利用率和减小网络时延,其典型应用是用强化学习改进TCP的网络拥塞算法。TCP具有慢启动、快恢复的特点,但是其快恢复是以拥塞窗口直接减半为代价,这就导致TCP传输带宽是一个锯齿形的形状,传输带宽不稳定。而强化学习则通过丢包预测自适应地调整拥塞窗口,使拥塞窗口稳定在一个较小的范围内波动,从而保证了TCP传输的总带宽和时延。国外有相关论文指出,跟传统的TCP拥塞算法相比,基于强化学习的方法可以使传输的带宽提高30%以上,端到端时延减小7%,图1是测试效果图。
图1 基于强化学习和普通TCP拥塞算法测试对比图
在图1中,红色是采用普通NewReno算法的测试效果,绿色则是采用强化学习的LP-TCP测试效果,从图1中可以清楚看到,基于强化学习的TCP拥塞窗口非常稳定,这也是为什么能提高网络带宽利用率的原因,同时因为拥塞窗口的稳定,设备的队列深度也维持在一个稳定的水平,端到端时延也同时减少了。
3. 网络优化
人工智能在网络优化上的应用主要是转发路径优化、资源优化和流量优化。传统的ECMP算法一般是基于五元组原则进行Hash计算,在大象流都Hash到同一个路径的情况下,很容易引起路径流量的不对称,起不到流量均衡的作用,而引入人工智能技术,则可以考虑链路实时带宽,动态计算每一个流的转发路径,从而保证在任何流量情况下均可以实现链路的流量均衡,避免了传统Hash算法的不足。国外有一些学者和专家也在研究通过强化学习的方法来进行路由的计算,以替代传统的路由协议(如OSPF)等。在资源优化方面,人工智能在无线核心网资源分配、无线信道利用率、转发芯片包缓存动态调整方面均有良好的表现,其可以有效提高资源的利用率,根据环境和压力自动调节资源分配,以保证资源利用总是处于最佳的一个状态。
人工智能在安全的应用
人工智能在安全领域的应用十分广泛,并且有其独特的价值和优势,比如加密流量的威胁识别问题和APT(高级持续性威胁)识别问题,传统的基于规则和特征匹配的方法完全失效,必须依赖人工智能的方法来加以甄别。同时,人工智能在欺诈检测、恶意软件检测、入侵检测、网络风险评分和用户/机器行为分析等方面也有重要的应用价值,下面介绍人工智能在安全领域的两个典型应用。
1. 加密流量威胁检测
目前网络上50%以上是加密流量,加密是保护隐私的一个重要手段,能够保护我们的数据不被窥探,但同时也让不法分子有了可乘之机,加密能够像隐藏其他信息一样隐藏恶意软件,从而带来一系列安全问题。而传统DPI(深度报文检测)需要解密原始报文,这是不可能完成的任务。而人工智能基于特征提取和行为分析的方法,可以在不解密报文的情况下,提炼出恶意软件的特性,从而识别出有害威胁。以HTTPS流量为例,通过提取TLS联接的初始数据包信息、数据包长度和时间的顺序、有效载荷上的字节分布等特征数据,经过人工智能模型推理,可以检测出加密流量中的恶意流量,如图2所示。
图2 用人工智能对提取的TLS联接的数据包进行分析
2. APT防攻击检测
APT攻击具有不同于传统网络攻击的5个显著特征:针对性强、组织严密、持续时间长、高隐蔽性和间接攻击,攻击者能适应防御者的入侵检测能力,不断更换和改进入侵方法,具有较强的隐藏能力,攻击入口、途径、时间都是不确定和不可预见的,使得基于特征匹配的传统检测防御技术很难有效检测出攻击,必须要引入新的检测技术。人工智能则可以在这方面发挥特有的优势,通过特征提取和行为分析、结合沙箱和大数据分析技术,准确判定C&C异常、Web异常、隐蔽通道、邮件和流量异常检测等,可以有效识别并阻断勒索病毒、海莲花、震网、BlackEnergy、Google Aurora等APT攻击。
此外,借助于人工智能增强学习的优势,可以构建并完善一套主动式安全防御系统。如今的网络攻击和病毒具有易变性的特点,被动防御已经不能满足当前网络安全的要求,主动防御成为趋势和必须,借助人工智能的学习和进化能力,可以针对即将发生或者未知的攻击行为,与安全策略和威胁情报有机结合,最终实现智慧型、主动型的安全防御系统。
结束语