加速网由云生,助力算网一体
2022-05-31万晓兰李晶林刘克彬
万晓兰 李晶林 刘克彬
新华三技术有限公司 北京 100085
引言
中国信息通信研究院发布的《中国数字经济发展白皮书(2021)》显示,2020年我国数字经济规模达到39.2万亿元,占GDP比重为38.6%,数字经济增速是GDP增速3倍多。由此可以看出,数字经济有着巨大的发展潜力,已成为打造新发展格局的关键要素。国务院印发的《“十四五”数字经济发展规划》明确部署了八大重点任务,不断做强做优做大我国数字经济,为构建数字中国提供有力支撑。
数字经济的发展离不开数字化这个基础支撑,云计算已成为企业数字化转型的必然选择,为企业的数字化提供必需的计算力保障。因此当今数字时代,数字经济的增长和计算力是有着密不可分的关系。根据IDC和浪潮信息联合发布的《2020全球计算力指数评估报告》显示,计算力与经济增长紧密相关,计算力指数平均每提高1个百分点,数字经济和GDP将分别增长3.3‰和1.8‰。业内研究显示,计算力正在成为数字经济发展的主要动力[1-3]。
算力的连接、承载和调配,离不开网络的支撑和协同,云计算和网络已成为数字经济时代的数字基础设施。数字化产生的海量数据只有承载在强大的算力之上,才可能得到加工、挖掘和分析处理,才会产生应有的价值。而网络则是连接数据和算力的桥梁,是发挥云计算能力的关键支撑。只有云网协同才能把算力和数据有效地连接起来,才能让数据得到算力的处理,从而推动数字化的进程,保证数字经济的发展。
云网协同推动了企业的数字化转型,随着企业数字化的进一步发展,越来越多的数字化业务对算力的需求也逐渐变的多样化,仅提供算力连接的云网协同已不能很好地满足企业应用日益增长的个性化需求。
伴随着数字化的发展,云网协同逐步演进到云网融合也就是算网一体,是发展的必然结果。算网一体就是通过网络和云计算资源的深度结合,网中有云,网络可以提供算力,云生网络,云可以提供网络功能,实现算网一体,完成用户上云、业务上云,实现一云多网,协同服务。随着边缘计算和通信云的发展,网络所连接的算力呈现出由集中向边缘、由边缘向泛在的趋势,这一趋势将通过算网一体的动态、敏捷、安全地调度各种异构算力资源,聚合公有云、通信云、边缘云、行业云,乃至用户终端等各种算力,实现算力一体供给、按需分配[4-6]。
1 算网一体需要网由云生
云原生能带来诸多优势,大大改善应用开发运维迭代的效率,帮助企业业务创新迭代,改进资源弹性管理和迁移的效率,帮助企业降本增效。以容器、微服务、Serverless、DevSecOps等为代表的先进云原生技术和理念推动着云原生技术的蓬勃发展,企业应用走向全面云化。作为数字化基础关键部分的网络也需要云原生化才能更好地为数字化发展服务[7-8]。
算网一体要求网络支持云原生,网络功能实现容器化,不同的网络功能可以由单独的容器运行,这样网络功能就不需要专用设备来完成,可以由云计算资源中的容器来提供,这样才能和计算资源完成统一编排,支持弹性扩容,发挥云原生的优势,实现网由云生,从而真正实现算网一体。
1.1 网由云生的实现
1.1.1 云网业务层同构
算网一体的本质是云网融合,需要网络与云深度结合,以便网络能够快速动态满足云的需求,因此需要网络业务具备动态生成和快速调度的能力,云计算天然具备这样的能力,而网络只有实现虚拟化和云化才能够具备这样的能力。
长期以来,云计算与网络是独立发展、割裂的,云计算对网络的需求主要是基于Overlay方式实现,在业务层面进行协同,提供简单的功能配合,无法进行算力的一体化编排和调度,也就无法根据不同的应用需求来提供相应的算力。
要实现一体化算力调度,需要云计算和网络资源无缝对接、资源池化,同时形成统一的资源视图,网络的拓扑、带宽、流量、云的计算和存储能力等可实时呈现。网络设备与云计算网元进行统一纳管,实现自动化的开通、故障定位和排除,这就需要云计算和网络功能同构,实现云化进而达到一体化算力调度。
云化网络可以为算力网络提供敏捷和开放的虚拟管道,用于云和端的互联。运营商通过通信云的建设,充分利用现有机房,构建NFV统一资源池,支撑网络云化演进。
1.1.2 云网资源共享
算网一体需要实现云边协同、泛在计算协同,充分利用各种异构算力,实现算力统一编排。算力统一编排,是指对云和网络的计算资源进行统一编排,从而进行算力的灵活调度。
传统的网络设备是专有设备,无法对外开放算力,而网由云生后,网络的功能被云化,网络设备的算力可以提供给用户,网络设备的算力开放,可以和云的算力进行资源共享,当网络功能需求简单时,网络设备可以提供多余的算力与云的算力进行统一编排,进行一体化调度。当网络设备的算力不足以支撑相应的网络功能时,算力请求也会被统一编排,从云资源中申请相应的算力来完成网络功能,这样云和网络资源共享,就能够实现算力统一编排,推动算网一体发展。
1.1.3 云网控制统一
网络实现云化后,可以在云上运行网络功能,实现网由云生。这种情况下,云和网都基于算力进行控制,由于二者同构且资源共享,云管系统和网络控制器可以很方便地实现统一控制,对算力进行统一编排和调度,可以实时感知算力,监控网络状态,真正做到算网一体,按需调配,统一运维,内生安全。
1.2 网络云原生化的价值和优势
1.2.1 云对网络业务按需赋能
以云为中心的网络云化,演化出一张智能网络。云集齐了“算力、算法、算料”,让网络本身拥有了前所未有的智能可能性。云有遍布全球的基础设施,通过IoT技术,可以进一步为网络加上感知能力和响应能力,也就是所谓的Sense-Think-Act(感知—思考—响应),到时候就不用分清楚哪里是端、哪里是网、哪里是云,能感受到的整个基础设施融合在一起了。
1.2.2 满足新产业应用场景
对于产业而言,数据的流向正在发生深刻变化。5G和物联网潮流下,成百上千万的机器和设备正首次接入互联网:在工业领域,工程师需要实时了解工厂、矿区的运营情况;在智慧城市领域,更多的联网设备正带来智能高效的城市管理手段;在智能网联汽车领域,如火如荼的自动驾驶潮流,正进一步推动绿色、便捷出行成为可能。这一变化正在对过去十几年里为云计算设计的IT架构形成挑战,数据洪流从云端向边缘,实现网络计算融合,极大有利于满足新兴产业应用场景。
1.2.3 支撑未来演进
随着人工智能、区块链、无线通信等信息技术的发展,可以预见类似元宇宙、全息通信等新应用将层出不穷,将会给现有网络带来巨大的挑战,网络云原生后,将从以设施为中心转向以应用为中心演变,网络变得更加弹性、智能、开放,实现SDX(软件定义功能),可以支撑未来网络需求的变化。
2 网络云化的发展趋势和技术挑战
2.1 网络虚拟化发展及云化趋势
云计算和5G技术的发展,极大地推动了网络云化的发展,也就是网络的虚拟化和云化。
传统网络设备的虚拟化之路主要是NFV的发展,最成功的典型应用是实现了5G核心网的完全云化。传统网络通常采用专用硬件设备,软硬件架构封闭,功能紧耦合,这种架构难以支撑和满足日新月异的互联网应用、业务快速部署、服务创新等方面的需求,SDN/NFV作为一种新型的网络构建模型,应运而生,其代表的网络软件化和虚拟化思路,为传统网络创新和演进带来了全新的启发和方向,已成为未来网络演进发展的重要趋势和特征[9]。
NFV将网元功能以软件的形式部署在通用的硬件资源池上,做到通用硬件层、软件虚拟层、虚拟网元功能层间的三层解耦,这种架构使得网络基础设施(包括硬件和虚拟层)可以保持相对的标准化和稳定性,构建的虚拟化网络提高了网络的灵活性,降低了网络频繁变化带来的成本压力和运维复杂度。
NFV和虚拟化技术为5G网络建设提供了良好的技术支撑,5G核心网采用服务器架构进行设计,实现了网络功能的灵活组合、业务的敏捷提供。5G核心网借鉴软件架构基于微服务进行组织的理念,通过模块化实现网络功能间的解耦和整合,解耦后的网络功能(服务)可以独立扩容、独立演进、按需部署;各种服务采用服务注册、发现机制,实现了各自网络功能在5G核心网中的即插即用、自动化组网。
但是,NFV也存在不足,对于网络的进一步云化发展带来阻碍。NFV可以消除对专有硬件的需求,但它只是将复杂度从不同供应商的专有硬件转移到不同供应商的专有软件上,因此,NFV的部署难以管理且非常复杂。NFV技术需要进一步发展,目前在网络虚拟化方面和持续云化方面有以下几种趋势。
2.1.1 NFV的云原生化
随着云技术的发展,NFV也在不断发展。以前通过VM部署的虚拟化网络业务VNF,现在正逐渐向云原生容器中部署,容器可以托管VNF,以提供统一扩展和编排,这在管理方面将带来极大的灵活性。
根据Statista的数据显示,Verizon采用云原生、基于容器的EPC(演进分组核心)技术进行了测试,该EPC可以提供一个更有效的运营方式来运行新的宽带服务,VNF部署在容器中,基于Kubernetes可以对VNF、CNF、VM和容器进行动态编排,可以轻松开发、扩展、更新和编排各种微服务,实现了使NFV向云原生演进。
2.1.2 边缘计算与NFV的结合
产业数字化的发展,经常需要将应用部署在更靠近最终用户的地方,边缘计算有助于节省宝贵的带宽并缩短响应时间,现在终端用户智能手机、无线电发射塔以及本地数据中心等边缘设备都具有在本地处理数据的能力。
边缘计算与NFV的结合能够加速应用程序和服务的部署,如借助NFVI和边缘计算基础设施来支持在边缘同时部署虚拟化的VNF和第三方应用程序和服务,从而有效支撑应用尽量在靠近用户的地方进行终结,减少网络流量迂回,降低业务延时,提供更好的业务体验。这些基础设施包括vCPE/uCPE、5G MEC服务器等。5G的多接入边缘计算(MEC)的体系架构已经非常类似于NFV,在某种程度上5G MEC提供了标准的虚拟化计算平台,可以看作是微型数据中心,5G可以在边缘利用这些计算能力来提供更低的应用服务延迟。如借助uCPE或MEC等设备,可以在边缘(现场)进行实时计算,对网络进行虚拟化和切片,为高要求的应用程序提供高吞吐量。
2.1.3 网络开放
开放式白盒网络交换机日益普及,白盒路由器初现端倪。这些白盒网络设备允许部署不同的开源网络操作系统(NOS)。白盒交换机在近些年间得到了快速发展,白盒网络设备关键特征是开放,开放的网络操作系统,打破软件和硬件在网络层面的固有特性,实现软、硬件的分离,提供灵活、可扩展和可编程的网络,以适应不同场景的应用需求。
这些白盒网络设备的操作系统呈现明显的云原生化发展趋势。如SoNiC由多个容器组成,每个容器都包含用于部署特定网络功能(例如BGP、LAG)的资源,因此,当某个功能存在更新或bug时,只需更新一个容器即可,而不是替换整个交换机软件(这将导致数据平面停机)。
2.2 网络云原生化技术挑战
为了适应云网真正融合和算网一体的需求,需要网络进一步向云原生化发展,目前业界已经有了一些尝试和实践,但依然存在许多技术挑战。这些挑战包括需要采用云原生、微服务化、容器化部署等资源供给方式,引入DevOps及CI/CD(持续集成/持续部署)等开发理念,对现有的网络设备进行全新改造和重构,以更好地满足快速多变的业务需求以及市场环境。
网络设备的核心是网络操作系统,因此主要是需要对网络操作系统进行改造,概要说来,主要是在以下这些方面:软件功能解耦,实现模块化;业务部署容器化和轻量化;高可靠和高性能;开放性和继承性;全自动化部署。
3 网由云生设计和应用实践
3.1 总体架构
算网一体化的总体架构如图1所示。从用户端到云,我们可以简单地把网络分成两段,一段是接入网络,一段是服务网络,接入网络是宽带、移动等各种接入方式,服务网络是从POP点到云端的网络。网络的云原生化包括接入网络和服务网络,其中最主要的是服务网络,在服务网络中,网络的控制面和业务面可以基于云架构,实现彻底的云化重构。
从用户终端到云之间会经过CPE、PE、P等网络设备,这些网络设备需要实现统一的云原生化改造,与邻近的计算、存储等资源一起,共同组合成为一朵融合的云。
相对而言,在边缘接入POP侧(即CPE、PE上)实现网络的云原生化,实现边缘接入网络与边缘云的融合,比在骨干网上实现网络的云原生化,应该更具普遍意义和实际价值。
在这些设备网元上,每个网元可以看作都是计算和网络转发融合的一体化网元,每个网元包括转发平面、业务平面和控制平面,这些功能平面的实现可以是基于VM,也可以是容器,转发平面可以基于硬件实现,也可以基于通用的x86或者ARM CPU实现。
算网一体的关键在于需要有一个全局的云网大脑。云网大脑是实现算网一体化的关键重点,如图2所示,需要采集和汇聚云网各种基础信息数据,借助大数据、人工智能等技术手段,结合场景化的应用需求,对云网基础信息数据从不同纬度,不同视角进行深度挖掘与分析,为上层应用提供全自动化的服务编排,实现智能运营维护,提升客户体验,实现资产价值的最大化利用。
不同云网大脑可能有不同的实现思路,侧重网络业务视角,大致应该包括以下功能。
1)统一门户:对外呈现统一的服务能力入口,包括统一的流程、统一的服务、统一的业务能力等;
2)场景化服务:针对实际应用场景,提供整合的统一网络服务;
3)统一数字底盘:实现对底层网络物理资源能力的抽象,对应用提供标准化的服务能力。
3.2 网元的云原生实现
网络的云原生化,关键在于传统网络设备的云化重构。
云原生的容器技术和微服务架构,提供了比虚拟机技术更好的快速迭代和弹性扩展能力,因此,H3C在Docker容器如火如荼发展的大背景下,对传统网络操作系统的演进进行了深入探索和研究,实现了跨越式发展,基于原生Linux内核,完美支持容器化,在模块化、轻量化、高可靠、高性能、自动化、虚拟化、可视化、继承性、开放性、可编程等方面相比传统网络设备平台实现极大的增强,为算网一体化的发展奠定了良好的基础。
3.2.1 容器化操作系统
新一代云化网络操作系统基于标准Linux内核及定制的CentOS发行版基础系统,集成了Docker Community版本及Kubelet(随版本升级而更新),支持Docker原生命令,比如image、ps、pull、run等。
从逻辑架构上,支持新一代云原生网络操作系统的设备网元,等同于一台标准的计算设备,内部提供标准的K8s容器平台,可以支持多个容器运行,可以加载多个第三方应用,这些应用可以是L3网络业务,也可以是L4~L7应用,极大地拓展了网络设备网元的业务能力,也使得网元设备的业务方式实现了与云业务同构同源。
容器化架构,为网络业务和第三方应用提供独立的容器运行环境。网络业务容器和用户创建的容器均运行在Linux内核之上,直接使用物理设备的硬件资源,利用Linux Namespace和Shankongge Cgroups等技术来实现容器间的隔离和资源分配控制。
云原生化的网络操作系统集成了K8s和Docker Daemon,基本功能运行在网络业务容器中,可作为一个节点接受Kubernetes Master的调度和管理,支持容器镜像形式发布虚拟化产品,并通过K8s对设备上运行的第三方容器进行大规模、集群化部署和集中式管理,不需要将第三方软件源码通过交叉编译环境编译,即可直接部署运行,因此管理员可将设备作为类似服务器的产品进行部署和管理,实现应用快速发布。
支持用户在物理设备上部署第三方应用,实现泛在计算,如图3所示。这些应用包括基于RPM(Red-Hat Package Manager,RPM软件包管理工具)技术打包的应用和基于Docker容器化的应用。
从业务架构角度讲,云原生网络操作系统平台由基础设施平面、数据平面、控制平面、管理平面等四个平面组成。
云原生网络操作系统可为Host应用(Dockerd及Kubelet)和第三方容器提供网络支持,运行在Host或者第三方容器中的应用程序,可以与加载在设备上的应用通信(东西向流量),或者与外界通信(南北向流量)。
3.2.2 云原生网络设备能力与价值
1)网络业务能力与云同构
基于容器化操作系统平台,彻底实现了网络业务能力与云同构,即网络业务能力完全可以基于云平台实现,天然具备了云原生的弹性扩展、快速迭代、持续演进等能力。
在当前容器化网络操作系统平台基础上,未来可以进一步实现网络业务能力拆分,引入轻量化数据库和轻量化容器管理平台,如图4所示。同时,网络设备把承载网络功能的复杂单容器拆分为灵活轻巧多容器,包括控制容器(控制平面)、转发容器(转发平面)、场景化业务容器(业务平面)。多容器可以按需部署在多台网络设备上,对外呈现为一台网络设备,可实现网络设备的云集群,简化管理。转发容器采用数据库技术,实现无状态,负载分担,可动态扩展。场景化业务容器按需部署,灵活扩展,提升性能。
2)云网资源共享
在边缘接入侧,边缘云与POP网元处于同一逻辑地理位置,算力资源可以接受统一云平台纳管,实现一体化共享。
对传统网络设备的容器化重构,彻底打通了网络与云的算力/网络资源共享。网络设备云原生化重构以后,网元上的虚拟机资源、容器资源可以接受外部边缘云容器管理平台(OpenStack或K8s)统一进行纳管和调度,实现最大效率的算力资源均衡利用。
3)全面的开放性
为了支持算网一体化调度,云原生网络设备可以提供全面的开放性:提供可编程SDK,第三方使用SDK可以进行增值开发,支持C/python等语言;元支持网络特性容器化部署,动态快速安装,按需提供;网元可按需调整CPU和内存分配,释放部分计算和存储资源,集成第三方增值应用。
4 结束语
算网一体是算力网络的全新发展阶段,基于云原生架构实现,将打破云网边界,弹性、灵活的微服务架构,云原生化、DevOps的应用开发,可满足业务灵活多变,以及快速上线,敏捷迭代的需求。
实现算网一体,关键挑战是网络的云原生化,采用网由云生的理念实现网络的重构和改造,通过全面引入云原生技术,实现业务逻辑和底层资源的完全解耦。H3C基于对网络云原生化的深刻理解,对传统网络操作系统进行了跨越式发展和开发,实现了传统网络设备的全面容器化架构。
算网一体基于云网协同发展而来,是一个循序渐进的过程,需要分步进行技术攻关。