当前位置:首页 期刊杂志

软件定义网络下的人工智能网络体系架构分析

时间:2024-05-04

吴玥 屈卫东 甘愿 姚怡男

(中国移动通信集团设计院有限公司重庆分公司 重庆市 401120)

传统TCP/IP 网络内,主要由网络协议控制拥塞、路由和其他各项网络功能,网络内全部设备运行中只要根据既定规则完成相应任务即可。而在网络服务不断趋于多样化发展过程中,网络用户提出的网络需求更加多元化,若只对既有网络协议进行改进与优化,会使既有网络协议增加臃肿度,还无法明显提升网络性能。而在SDN 被提出之后,使网络具有可编程概念,在此基础上促使网络进一步提升灵活性与可拓展性。对此,基础设施服务供应商可结合不同用户提出的个性化网络服务需求自行设计SDN 网络。若在SDN 网络中要进一步提升用户体验,还要求网络管理员充分调研用户多样化的服务需求,结合调研结果设计一个能充分满足多用户多需求的网络。就目前情况来看,SDN 大多是为网络提供操作系统,而如何对这一操作系统实现高效利用,以增加网络的可靠性、稳定性,仍是一个需要深入研究的复杂问题。

在网络技术持续发展过程中,目前计算机网络提出越来越多网络资源动态管理需求,尤其是在大数据中心网络建设与应用中,软件定义网络因其可在高度抽象条件下发挥灵活控制功能,所以能在软件定义网络技术基础上构建一种有前景的、新型的人工智能网络体系架构。此体系架构在软件定义网络控制器支持下,从底层网络当中收集海量、多类型信息,之后通过人工智能技术和大数据技术实现信息分析,并获得底层网络相关特征数据,这些数据可辅助控制器管理下层网络。在软件定义网络下构建人工智能网络体系架构,有两大创新点:

(1)架构保持分布式部署模式,除了可对单个SDN 域提供支持,还能为多个互联SDN 域提供支持;

(2)基于SDN 控制器所设计的APP 可促进SDN 和“智能大脑”之间的相互通信,并在APP 基础上建立一层通用型框架,进一步强化了模型可拓展性。

1 关于软件定义网络的相关概述

1.1 软件定义网络介绍

软件定义网络(SDN)利用具备逻辑集中管理功能的可编程网络,可为解决复杂任务提供简化方案,包括网络优化与编排、流量工程等。在对现代网络应用进行处理期间,对可拓展架构提出更多需求,为提供更充分、可靠的以特定流量类为基础的服务,可建立SDN 体系架构,该架构可在网络状态下实现全局视图,并可对底层实现流级控制,所以SDN 有效促进着网络设计以及管理方式的巨大转变。在SDN 架构当中,现代网络应用部署与设计允许第三方介入。Ethane 项目在提出新型网络模式基础上,为SDN 奠定了坚实基础,尤其是集中式控制器在企业网络当中应用,可达到流级策略管理以及安全管控目标。图1 为SDN 结构。

图1:SDN 结构

SDN 范式使得数据平面、控制平面相互分离,相比于传统网络架构,其方法更动态、更迅速。控制平面被划分为多个虚拟网络,各虚拟网络可为实现不同策略提供支持,所以SDN 范例是一种工具,能够对网络中多种问题加以解决,并符合物联网等先进技术提出的新要求。而要有效应用SDN 范例,关键还在于其是否可以为传统网络协议不能有效解决的相关问题提供有效的解决方案。如谷歌、微软等公司目前已在数据中心中应用SDN 范例,同时人工智能也为SDN 的应用与创新提供了重要途径。以往研究中比较关注SDN 当中人工智能的整合,而后续研究中应在此基础上深入探究SDN 范例当中人工智能所能发挥的重要价值。

1.2 软件定义网络架构

SDN 借助数据平面集中可编程控制相关概念实现创新,在此基础上促进新型网络服务及协议的开发,其设计理念主要强调数据转发平面、网络控制平面双向分离,由此在集中性控制器内所分布软件平台当中建立可编程化控制底层硬件,在软硬件功能发挥下按照具体需求灵活的调配各项网络资源。在所搭建的SDN 网络当中,网络设备功能相对单一,只发挥数据转发作用,所以配置中重点选择通用型硬件,原本发挥控制功能的操作系统在优化设计后将其作为网络操作系统,保持独立运行,尤其对各种差异化的业务特性展开合理适配,另对于硬件设备、业务特性和网络操作系统来说,彼此之间均可以编程形式达到相互通信目的。代表性的SDN 架构主要被分成三层,其中最底层分布的是基础设置层,主要功能是在流表基础上展开数据处理,并负责数据转发以及状态收集;最上层分布的是应用层,涉及到多类应用以及业务;而中间层分布的是控制层,主要功能是对数据平面资源进行合理编排,并对网络状态、拓扑信息等展开维护。

SDN 网络架构相比于传统网络,其主要体现出三个基本特征:

(1)控制、转发相互分离。架构中主要由受控转发相关设备共同组成转发平面,而已经被分离在外的控制面板当中所运行的控制应用负责控制业务逻辑、转发方式。

(2)在转发平面与控制平面两者间设置开放接口。在SDN 网络架构内,专门为控制平面提供可编程的开放接口,在此设计下,控制应用要对自身逻辑更加关注,而对于底层各种实现细节则无需多加关注。

(3)逻辑设计方面采取集中控制模式。该架构的逻辑上,集中控制平面能对多个转发面设备加以控制,具体就是对完整的物理网络进行控制,所以能够立足全局层面得到网络状态视图,同步在全局性网络状态识图支持下优化控制全网络。

2 人工智能网络体系的概念

人工智能技术目前在产业界、学术界均受到热切关注和深入探究,尤其是网络基础设施提供商已发现人工智能可在网络领域发挥着重要的应用价值,应用前景无限,并在此基础上提出部分网络概念,比如知识定义网络(KDN),其基于控制平面新增加了Knowledge 平面,在底层网络完成数据收集任务之后,由该平面负责数据分析,这期间主要运用机器学习算法,分析结束后通过控制平面实现转发。基于KDN 可实现智能化网络管理,但目前尚未提出具体解决方案和架构建立方法。

在KDN 网络启发下,基于既有技术可构建一个和KDN不同,但是具有更高可行性的人工智能网络体系。在此架构当中,控制平面既能够对底层网元设备进行控制,还可以充当中转层,促进上层顺利获取网络信息,并基于北向接口实现控制层和上层之间的通信。控制层上方为SDN APP,设置形式为分布式,运行期间在下层网络信息传递中由北向接口实现信息接收,而后向上层递交,还可为差异化SDN 域间控制器发挥信息交流功能提供支持。有计算工具设置在SDN APP 的上方,设置形式为分布式,相应部位还支持数据分析工具以及相关算法的部署。人工智能网络体系有以下特点:

(1)架构属于分布式部署模式,既可支持单独的SDN域有序运行,也能在其支持下促进存在一定关联的SDN 域发挥组合功能;

(2)在SDN APP 功能发挥下,有助于实现SDN 以及“智能大脑”之间彼此互相通信,还可在其基础上打造一层通用型框架,使模型具备更强的可拓展性。

3 人工智能网络体系架构

传统网络设备配置以及功能较为固定化,而以软件定义网络为基础构建人工智能网络体系,可在体系架构中直接由中央单元对转发单元(路由器和交换机)实现集中管理,并且中央单元可通过直接编程完成基础联网任务以及其他相关附加服务。基于中央管理以及网络的可编程性,能通过人工智能对高速变化、高需求的网络加以处理。

人工智能网络体系架构图如图2,可见该架构主要被分成3 个平面部分:

图2:人工智能网络架构图

(1)数据平面。也就是底层物理网络平面,该平面当中的网络设备会在对流量等数据信息进行采集之后,将其传输至本域所分布的控制器,而后对控制平面所做路由决策加以接收。

(2)控制平面。此平面除了设置有SDN 控制器,还同步以控制器为基础,再其上方建立了APP 和相关数据库。其中数据库主要功能是对当前域内所采集各项数据进行保存处理,而数据库管理工作主要由APP 所负责。在本框架内,控制器APPA 属于核心模块,在实际运行期间,需要接收由控制器所传输过来的底层网络数据,在此基础上对本地数据库进行管理,同时还能在SDN 域不同域间控制器中发挥相互通信功能,为上层所分布智能平面管理控制器提供可靠接口,还可在智能集群当中相应终端Worker 当中充当组成模块。将APP 视作控制平面、智能平面两者之间的接口,可发挥较多功能。在实践过程中,各项功能的实现可主要依靠一组APP。

(3)智能平面。底层网络当中分布有大量数据,为有效处理相关数据,可借助Google MapReduce 技术相关理念和思维,于智能平面当中以分布式集群形式分析大量数据。因为智能集群可不受时间控制的在控制平面内部分布式数据库当中进行底层网络各类数据信息的提取,所以可将一个具有可视化特点的Dashboard 设置在智能平面当中,使网络人员可更便捷的进行分析和管理工作。

3.1 数据平面

此平面重点在于收集并整理底层网络涉及到的有关信息,如拓扑信息、链路信息、流表信息等,而后以网络大脑为方向实现信息传递,使决策层具备更广泛、可靠的信息支持。不过底层物理网络具有多样性、异构性,增加了数据平面作用发挥的难度,同时还要对跨域数据采集问题进行解决。目前SDN 当中,北向、南向两个接口日渐发展成熟,但是东西向两个接口就目前情况来看还未建立统一协议类型。同时,SDN 域间协同有着差异化解决方案,比如清华毕军团队就对此问题提出WE—Bridge,OpenDaylight 社区就以ODL 为目标开发出ODL—SDNi 这一APP。基于相关技术的研究,本文主要提出一种以APP 为基础的可行性较高的跨域解决方案,具体可见图3。

图3:多SDN 域跨域解决方案

方案中网元C 既在SDN 域1 当中,也在SDN 域2 当中,属于边缘网元,和BGP 内部Speaker 角色相类似。边缘网元除了负责本身所属域内网络,还要负责所属其他域间路由。方案中网元C 不均受控于Contoller1,还受到Contoller2 控制,而在网元C 域中,主要由当前域内的Contoller 发挥路由器控制功能。不同路由在存在跨域问题情况下,就要明确区分主与从Contoller,同步受控于主控制器。边缘网元设备具有多样化且复杂的功能,主要由App 控制边缘网元。在选定主从交换机期间,主要由在Contoller1、Contoller2 其上方运行APP 共同协商来确定。

3.2 控制平面

控制平面主要涵盖了基于此的APP,还有数据库与SDN 控制器,在本系统中控制平面发挥着关键作用:

(1)可对智能以及数据两个平面层之间展开的信息交互工作实现协同化处理,使系统更加协调、平稳的运行;

(2)具备下发指令功能,同时流表也由其下发,为网络运行保持正常状提供保障。

控制平面内,控制器设备具有多项功能:

(1)管理下层物理网络;

(2)将南向接口所采集数据经北向接口转发;

(3)交由APP 处理指定事务,包括管理边缘控制器等。

在控制平面层,控制器APP 属于核心,在统一通信协议支持下,可于APP 层进行异构控制器组网。此APP 功能巨大,重点体现在三个方面:

(1)在北向接口完成数据采集任务后,写入到数据库内,还可负责数据库常规管理,向上层供给数据库的接口;(2)负责域间控制器之间的协商和通信;(3)将操作控制器API 提供给上层。

本文所设计的控制平面其工作和WE—Bridge 以及ODL-SDNi 有所不同,在ODL-SDNi 中,基本只支持ODL控制器相互间顺利通信,而此控制平面能在APP 利用下保证异构控制器间顺利的进行彼此通信;在WE—Bridge 中,存在域间路由这一高复杂性问题,而本文所设计控制平面由于提出边缘网元概念,所以原本的域间路由问题就只体现在域间协商问题上。除此以外,本文通过在控制器上设置分布式数据库,实现了网络智能。

3.3 智能平面

在大数据技术持续发展过程中,衍生出更多大数据处理工具,如开源Hadoop 以及Spark 等。在多项技术日渐成熟背景下,大部分网络环境在部署AI 系统期间均支持分布式形式,因此本文设计的智能网络平面架构也在各分布式相关技术支持下实现分布式布局,具体如图4。

图4:分布式智能平面架构

该架构所呈现出的Worker 主要有两类,其一是终端Worker,在控制器上所分布,并和控制器建立对应关系,其在分布式计算和储存当中为基础性的单元,还属于智能平面管理控制器接口,无论哪一时刻均可对下层数据库实现调用;其二是和控制器相分离的Worker,对终端Worker 中涉及到的运算Reduce 数据加以汇聚。Worker 可结合Master 调度,对其他Worker 在相应管辖下数据库提出的读取请求作出回应。

Master 这一管理模块属于分布式计算,主要是基于AI算法将相应的计算任务分配给各Worker,同时统一调度其工作,并协调不同Worker 来应对分布式数据库当中所提数据请求。

Dashboard 属于前端可视化界面,主要由网络管理人员所使用,其中各项数据均来自Master,并且由Manger 操作网络更改与设置等。

Manager 无论是在智能平面中还是在整个网络当中均属于操作系统,其在管理智能平面过程中,主要利用Master实现各项功能,比如针对网络部署相应的AI 算法,另外Manager 可用Worker 对控制器进行管理和控制。

4 结语

本文中提出一种软件定义网络下的人工智能网络体系架构,该网络当中的软件定义网络控制器除了执行网络管理命令,还能采集网络数据,并可发挥末端神经功能。软件定义网络控制器上方部署的是智能网络,其由分布式计算和储存单元所组成。智能网络在大数据、AI 技术等支持下挖掘网络特征。并把底层网络具体分析结果传递至网络管理者。为网络管理工作提供指导。所建立的人工智能网络架构通过在物理系统中实验运行应用,证明该架构具有良好的可行性。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!