ZKX's LAB

用AI重新定义网络交换

2020-11-20新闻19

为了支持智能化网络计算和虚拟化网络功能部署,新一代智能交换机通过在现有交换机架构的基础上加入智能交换板以及相应的数据包处理框架,为用户提供高性能、高通量、通用化的网络服务软硬件支撑平台。

作为近些年来热门的研究话题,人工智能(AI)已经融入到日常生活的方方面面,一个AI无处不在的新时代已经到来。在分布式计算机系统中,无论是中心云服务器还是边缘计算服务器都变得更加智能,然而,连接云服务器与边缘服务器并控制着数据传递的互联网本身却是最后一个不包含AI的领域之一。在互联网设计之初,各种硬件设施异常昂贵,设计者认为互联网应只具有最小的传输能力,却从未想过会发展到如今如此庞大的规模。网络基础结构中的任何细微调整都会产生连锁反应,从而可能危及整个网络秩序。

尽管有历史遗留问题,AI浪潮已经开始冲击网络的某些领域。例如,部署云和大数据设施,通过收集、分析和推断与用户、应用程序、设备或网络流量有关的网络数据来进行网络系统级集中式智能。除此之外,也有许多研究工作从智能网络流量分析和预测、智能网络资源管理、智能路由规划和故障诊断,甚至智能体验质量设置等方面探索AI如何影响网络功能。值得注意的是,所有上述智能算法都是在假设存在运行这些算法的中央服务器或云服务器的情况下提出的。网络内智能的缺失不仅浪费网络带宽,还使得对网络事件的响应速度变慢。为突破AI进入网络基础设施的障碍,同时又不违反互联网基本的“端到端”原则,需要重新设计和创新交换机架构:将网络智能部署在网络中间节点上,以实现对网络事件的在线识别和网络策略的本地执行。

智能网络时代的网元平台

借力于各类高新技术产业的发展以及新型网络技术的提出,将AI融入互联网的条件已趋于成熟:存储以及计算资源价格大幅度降低,使得网络交换机可以配备功能强大的CPU甚至是GPU;NFV允许网络功能高速开发,并且消除了对专有或特定硬件的依赖;各类开源深度学习平台针对CPU和GPU提供了计算密集型的AI算法,为AI算法在网络内部署提供了无缝的方式。为了支持智能化网络计算和虚拟化网络功能部署,新一代智能交换机通过在现有交换机架构的基础上加入智能交换板以及相应的数据包处理框架,为用户提供高性能、高通量、通用化的网络服务软硬件支撑平台。

1. 智能交换机的硬件设计

图 1展示了智能交换机的逻辑硬件架构,主要包括交换线卡、管理线卡、网板、背板和智能计算线卡。其中,背板用于连接主控线卡、网板、交换线卡和风扇电源等,提供插卡的供电、数据、管理、控制平面的各种通道;交换线卡提供业务传输的外部物理接口,完成数据接收和发送;网板主要负责跨接口单板卡之间的数据转发交换,负责各接口板之间报文的交换、分发、调度、控制;管理线卡提供设备的管理和控制功能,根据用户的操作指令来管理系统、监视性能,并向用户反馈设备运行情况;智能计算线卡接收交换线卡的业务数据,提供通用的计算存储资源以及高性能数据包抓取、解析、处理框架,根据部署的网络服务执行相应的计算任务。

图 1 智能网络交换机的硬件结构

在上述硬件架构下,通过配置ACL规则可以将业务流量从交换线卡,经由内部交换网板镜像至智能计算板。在智能计算板上利用DPDK的零拷贝、CPU亲和性以及大页内存等特性提供高效的数据包抓取与解析处理功能。同时利用多核CPU的并行特性,提供流模式下的序列处理功能,避免流模式下多核并行的同步操作。为了进一步提高数据包处理的性能,智能计算板上还配备了通用GPU,通过GPU的高并发特性支持高通量场景下的数据包过滤、正则匹配、特征提取等功能,同时利用GPU的计算资源为基于AI的网络应用提供平台。

2. 高性能网络流量处理框架

如图 2所示,智能交换机的流量处理框架由数据平面、知识平面和管控平面三个部分组成,完成对流量感知、学习和策略分发的一体化流程。

图 2 智能交换机的软件框架

数据平面主要包括数据包捕获和特征提取两个模块。数据包捕获模块通过匹配数据包中端口、协议和IP地址等字段,筛选出属于同一条流的数据包。在高速网络中,匹配过程通常使用多个线程并行操作。特征提取模块从原始数据包提取包含更多信息的特征数据,这些特征数据包括结构特征,统计特征和隐含特征。结构特征是指原始数据包中包含协议、IP地址和服务类型等的包头信息,统计特征是包括包大小、包间持续时间等的统计特征。隐藏特征是指数据包中数据的潜在属性,这些属性可以被卷积神经网络提取。

知识平面是指利用AI算法深入解析来自数据平面的特征数据,从而分析网络实体和网络应用的行为。具体来说,通过解析统计特征,可以实时观测网络动态,实现流量可视化;通过学习不同应用程序的不同模式,可以实现应用分类功能;通过学习网络实体的正常行为,偏离正常行为即检测为异常,可以实现攻击检测功能;通过分析网络实体的事件日志,可以实现故障检测功能。

管控平面是指利用知识平面的分析结果,对于不同的流量执行不同的控制策略。这些控制策略包括流拦截、转发调度和带宽分配等。流拦截是指丢弃非法数据包,从而可以快速防御网络攻击。转发调度是指借助交换机本地主控卡,动态调整转发信息库(FIB)的转发端口,它还支持为某些应用程序分配带宽和优先级,以满足特定应用的服务质量(QoS)要求。通过远程进程调用(PRC)协议,网络管理者可以灵活地部署他们制定的控制策略。

AI赋能网络的应用场景

下面是目前人工智能应用在网络领域的一些典型场景。应该说,将人工智能技术应用于网络领域前景非常广阔,应用场景也非常丰富,随着技术的进一步发展,场景还会不断增多。

1. 智能安全检测系统

传统的基于规则和特征匹配的安全检测方法难以处理加密流量和零日攻击的检测问题。AI算法因其特有的泛化能力,基于AI的异常检测和攻击分类算法受到了广泛的研究。此外通过研究深度学习模型增量更新的能力,可以实现检测模型的自我更新,最大程度上减少分析攻击样本、提取攻击特征的人工代价。图 3展示了基于深度学习的自演进安全检测框架,通过初始样本训练的检测器,能够在部署阶段从环境中检测并收集未知攻击样本,再利用新样本更新模型,实现学习与检测的闭环。这一过程主要包括未知攻击检测和增量学习两个主要过程。

图 3 基于深度学习的智能安全检测框架

未知攻击检测过程可以采用贝叶斯神经网络作为检测模型,贝叶斯神经网络通过在神经网络的权重上引入分布使得神经网络不仅能给出流量的检测结果,还能给出检测结果的不确定性。已知攻击产生的检测结果不确定性较小,未知攻击的检测结果不确定性大,将不确定性较大的流量判定为未知攻击流量,交由人工筛选。人工筛选出未知攻击和识别错误的已知攻击,并打上正确的标签。利用这些新样本数据,检测模型一方面不断更新旧知识以提高检测准确率,另一方面学习新知识,实现对未知攻击的精确分类。

2. 网络智能优化

随着网络技术的发展,不同类型的数据包充斥着整个网络,纷繁复杂的应用服务有着不同的业务需求:直播服务在追求低延时的同时期望拥有更高的画质,云计算服务需要在用户容忍时间内更快速地将结果返回给用户,云存储以及文件传输服务则需要保持连接的稳定。TCP拥塞控制依旧是当下主流的网络自调节方式,但由于TCP无法感知业务类型,也不能感知网络状态,使其无法智能调控不同流量占比,严重影响网络传输效率。

作为部署在网络中的智能节点,智能网络交换机可以感知不同流量的业务类型,利用基于深度学习的方法,实现智能网络流量控制。在各个局域网中部署中央控制器,用于收集以及广播网络状态信息,同时也需要对全局所有智能交换机做出的决策进行评估;每个智能交换机上部署决策器,在基于本地以及全局网络状态的基础上做出独立决策,并利用中央控制器给出的评估值训练其决策器。通过网络中的迭代训练,提高智能交换机的管控能力,进而优化网络流量分布,提高用户体验。

3. 网络智能运维

早期的运维工作大多是依靠运维人员的经验完成的,成本高且效率低下。智能运维借助大数据和AI算法赋能,对IT运维数据进行深入解析,从而实现故障检测和故障溯源等功能,受到了广泛的关注。

图 4 基于LSTM模型的网络故障检测流程图

运维数据大部分以日志形式出现,在计算机系统中,日志常用来输出各设备的状态信息,通过分析这些日志,可以检测故障。如图 4所示,智能化检测方法提取日志模板序列,进行编码生成语义向量,最后利用深度学习算法(如LSTM模型)学习这些语义向量,从而自动检测故障,可以减少人力成本。对于大型的数据中心,网络设备众多并且存在耦合关系,单个设备发生故障,其他众多与之存在耦合关系的设备其关键指标(KPI)也会随之表现出异常状态,因此对故障溯源具有重要意义。通过构建运维知识图谱,发掘网络设备之间的关联关系,并计算相互耦合的设备之间的关联系数。从而在某个设备KPI发生异常时实现故障的自动溯源。

结束语

AI嵌入网络基础设施,实现网络运行的智能化,使得交换结构朝着适应网络智能的方向发展。与现有的交换机架构不同,通过引入智能平面,智能网络交换机可以在继承原有的数据平面和控制平面的同时,增加支撑智能计算的可插拔模块,在不增加现有基础设施的情况下,实现以低成本的方式升级现有的网络。

#技术编程#AI人工智能

随机阅读

qrcode
访问手机版