付乔 张昊
摘要:基于NFV/SDN等云化新技术的下一代网络在分层解耦的同时,给运营商带来了巨大的集成挑战,运营商下一代网络的集成交付效率和交付质量有待提升。重点阐释NFV/SDN网络集成的痛点,分析下一代网络集成的关键要素,借鉴云计算领域逐渐兴起的持续集成持续交付模式,提出针对NFV/SDN的新型集成体系,并进一步阐释中国移动自主研发的AUTO自动化集成工具及其在中国移动NFV/SDN网络建设中发挥的重要作用。
关键词:NFV;下一代网络;持续集成持续交付
1 引言
传统的运营商网元是基于专有硬件、软硬一体实现的,不同厂家、不同产品线的设备都是一个独立的烟囱,单独地进行升级、扩容等,各个网元功能无法实现资源共享。随着互联网技术的发展,传统电信网络的架构很难满足互联网时代业务快速上线、灵活调整的需求,给运营商带来了巨大的用户体验挑战和成本压力。
网络功能虚拟化(NFV)借鉴IT界的云化技术,将网元功能以软件化的形式部署在通用的硬件资源池上,做到通用硬件层、虚拟层、虚拟网元功能层间的三层解耦,实现资源共享。这样的架构使得网络的基础设施(包括硬件和虚拟层)可以保持相对的稳定,而虚拟化软件化的网络可以根据需求快速调整、灵活变化,提高了网络的灵活性,降低了网络频繁变化带来的成本压力。NFV给未来网络带来了无限的想象空间,下一代5G网络、切片技术、边缘计算业务等新兴技术方向和业务实践应运而生[1]。
然而分层解耦的虚拟化的网络也带来了集成运维的复杂性。传统一体化设备硬件软件紧密耦合,在设备厂商出厂前已经做好了软硬件部署和联调,通信机房现场的集成通常仅包括上电上架和与周边设备的联调工作。网络功能虚拟化后,硬件与软件解耦、软硬件的部署和适配需要在通信机房完成。同时传统一体机设备板卡内部的网络连接变成了通用设备和交换机之间复杂的网络连接关系。此外,NFV后各类组件均是相对独立的软件,大量软件需要互相适配调试。这些变化都使得网络功能虚拟化后的集成工作变得尤为复杂,传统的集成流程、集成方式和集成工具已无法满足下一代网络集成要求[2]。
下一代网络端到端的集成工作是网络转型的“最后一公里”,对网络可靠、有效、灵活、快速和频繁构建具有重要意义。本文将分析下一代网络集成的痛点,分析当前产业界和标准化组织在集成方面的相关进展,提出下一代网络集成需要解决的几个关键问题,并进一步阐释持续集成持续交付的下一代网络新型集成体系。
2 下一代网络集成痛点分析
基于云计算技术的下一代电信网络可有效提高运营商网络灵活性,降低网络成本。然而运营商针对下一代网络的集成却仍停留在传统模式,从体系到工具都缺乏有效的创新。而互联网、云计算服务商经过多年大规模系统集成运营的实践积累,已逐渐形成了较为完善的集成模式。与之相比,当前运营商的集成成本和集成效率均存在较大问题,下一代网络的集成成为下一代网络落地的关键问题。根据分析,以下几点为制约运营商集成的主要痛点。
2.1 传统集成模式难以适应新型云化网络
运营商传统网络由大量软硬一体化设备构成,集成模式采用“交钥匙”的方式,也即设备厂商、集成商、施工队完成设备的集成工作后,将文档和已经调试完成的设备交给运营商即可,由运营商开展后续的运营运维,运营运维与集成关系不密切。
网络转型后,下一代网络可能是由来自不同厂商的硬件和软件组成,这些异厂商的组件都要在运营商的机房进行集成,集成接口众多,厂商参差不齐,集成工作量大。因此,下一代网络的集成工作变得异常复杂,采用传统交钥匙的模式,可能导致集成效率低、质量差。此外,新型网络采用分层运营运维的模式,运营商在运营过程中需要对网络内部细节充分了解,才能细粒度地管理网络,发挥网络的效率优势。而传统交钥匙的集成模式中,运营商对集成过程参与较少,使得后续的运营运维操作难以精细化[3]。
2.2 跨厂商集成壁垒高难度大
与互联网产业不同,电信产业的传统厂商技术能力强,也存在着较高的技术壁垒。网络转型后,虽然在逐步推进资源共享和互操作,但跨厂商集成的壁垒仍然存在。引入NFV后,运营商面临的将是来自十数个厂商的硬件、虚拟化层和虚拟化网元。通过严谨的设备标准和接口定义,可以规定各个组件的主要功能和接口,然而不同厂商设备对规范的实现具体流程步骤实现仍存在差异,导致跨厂商互操作困难。根据笔者在多个试验试点的统计,跨厂商互操作问题约占整个集成过程中出现问题的60%左右,而且这些问题定位困难,解决耗时耗力。
2.3 云化网络集成测试工具匮乏
互联网产业使用云计算技术已有较长时间,也积累了大量的自动化集成工具,其中不乏开源工具。然而,基于电信云的可靠性、稳定性要求,针对虚拟化电信网元的自动化集成测试工具却非常匱乏。近年来,随着电信云集成需求的增大,各个厂商也纷纷投入资源开发针对电信云化网络的集成测试工具,可以对本厂商的软硬件组件进行自动化的集成测试。然而这些工具对异厂商产品却往往束手无策。多个开源组织也逐渐关注电信网络的集成测试,然而开源工具良莠不齐,很难全面地满足运营商的集成要求。
3 下一代网络集成的产业和标准化情况
随着NFV技术逐渐成熟和走向落地,目前主流运营商、集成商和标准化开源组织越来越关注降低集成复杂度、提高集成效率等建设落地问题。
运营商方面,2018年到2019年期间AT&T、Orange等纷纷组建集成认证团队和集成实验室。其中AT&T目前集成团队已超过500人,在NFV自研投入中占比超过50%,实验室业务测试已实现完全自动化。此外其他运营商,包括Docomo、Telefonica等也纷纷委托主流集成商为其定制化研发自动化集成工具和集成实验室系统。
集成商方面,主流集成厂商纷纷意识到下一代网络集成任务重、工作量大,在集成工具、集成实验室等反面开展充分储备,应对下一代网络的集成任务。据统计,目前主流集成厂商集成工具可覆盖80%的自有产品的集成,然而对跨厂商集成的场景,集成厂商的工具往往乏力。
标准化和开源组织方面,近几年对集成的关注度也逐渐提高,主流开源组织,包括LFN、OpenStack、CNCF等自2018年起纷纷增加了CI/CD相关议题或工作组。2018年5月,AT&T发起Airship开源项目,重点完成电信云资源池的部署和生命周期管理,是运营商集成工具开源的第一个项目。2019年3月,LF新成立“伞项目”CDF(Continuous Delivery Foundation),覆盖包括Jenkins、Tekton等多个开源集成工具。2018年底,NFV电信云参考平台开源项目OPNFV也宣布进行战略转型,关注电信云的集成工作。
在新型“集成生态”中,标准化和开源组织也起着关键的作用,为下一代网络集成提供规范化指导、事实标准和最佳实践,成为跨厂商互操作和集成的参考范例和中间件。当前标准化和开源组织对集成已有较大的关注度,然而尚未形成完整的端到端的规范和事实标准,标准化和开源社区对运营商的集成需求的理解仍存在较大偏差,有待参与集成各方积极推进集成的标准化和开源进程。
4 下一代网络集成关键问题
总结下一代网络集成的痛点,运营商需要探索总结新的集成体系和集成方法,以适配基于云化新技术的下一代网络。同时,仅依靠集成商完成集成的传统方式已不适用于下一代网络,为了解决跨厂商的集成问题,为了确保集成运营运维有序结合,运营商需要更大程度地参与集成,做好准备逐步承担起“集成商”的角色。下一代网络的集成过程中,以下几个问题至关重要:
(1)规范化流程
运营商建立符合自己下一代网络设计的规范化流程是集成的基础。
传统运营商网络的集成流程是粗放式的,运营商明确集成的起止时间和交付物,具体的流程则由集成商根据经验自行定义。这样的集成流程难以精细化管理,面对跨厂商集成也难以统一各个厂商具体实施步骤,造成集成效率低、多组件配合差等问题。
针对下一代网络,运营商需要开展精细化的过程控制,对集成的具体流程进行把控,详细分析集成各步骤的前置条件和输出物,建立高效的集成流水线。对部分统一的基础配置,可以考虑由设备厂商在出厂前即做好配置打包,减少现场操作。对互操作的内容,提前做好相关约定,便于现场操作和问题定界定位。对耗时较多的工作,分析与之可并行展开不干扰的其他工作,确保工作有序并行。
(2)自动化工具
丰富的自动化集成测试工具是下一代网络集成的关键抓手。
下一代网络的集成工作接口多工作量大,且对集成系统质量要求高。传统的网络设备集成往往采用手工测试和目测抽测的方式,难以保证复杂的网络质量和准确性。参考互联网云化系统的集成运营经验,大量的自动化工具可以有效地提高集成的效率和质量。
(3)标准化数据
标准化的数据是下一代网络集成的通用语言。
跨厂商的集成的最大难点在于不同厂商的接口、操作、命名习惯均有差异,导致跨厂商的集成难以沟通。定义一套标准化的集成数据作为多厂商集成的通用语言,可以帮助集成商、厂商、运营商彼此更好地理解集成需求和集成详细设计(LLD),并据此开展集成。此外,标准化的数据也是后续网络运营运维的关键基础,是运营商了解集成设计和集成细节的途径。
5 持续集成持续交付(CI/CD)的下一代网络集成体系
持续集成和持续交付是近年来软件开发领域比较流行的概念。所谓持续集成,指的是开发者在开发过程中频繁地代码与已开发代码进行集成整合和验证测试,确保新开发的代码可以融合进原系统中正常运行。持续集成可有效地避免代碼开发出现较大的偏差,及时发现代码问题。持续交付指开发系统以频繁的增量更新替代传统的版本更新,在交付过程中,每次代码完成集成通过测试即可直接交付给用户。持续交付可提高交付系统的用户体验,确保用户的需求能够通过频繁的更新快速满足[4]。
借鉴软件开发的思想,我们进一步提出下一代网络的持续集成持续交付的集成体系。依托丰富的持续集成持续交付工具链,通过规范化下一代网络的集成流水线、统一下一代网络集成数据,实现厂商开发到运营商集成的完整闭环,提高下一代网络交付的效率和质量。持续集成持续交付的下一代集成系统包括以下几个关键因素。
5.1 自动化集成交付系统
软件化的下一代网络需要有与之匹配的自动化集成交付系统。当前虽然针对IT系统已经存在一些自动化的集成和测试工具,但这些工具并非为NFV系统集成设计,集成工具尚未覆盖集成全流程,且良莠不齐、成熟度不高,导致下一代网络集成整体自动化程度较低。面向下一代网络,运营商应逐渐具备覆盖集成全流程的自动化集成交付系统。该系统的主要作用包括:
(1)解决跨厂商的集成对接问题,作为中间件简化异厂商适配
目前大部分厂商的自动化工具仅具有理论上与异厂商对接的可行性,缺乏开放的通用标准和接口,跨厂商对接不现实。已有的异厂商对接案例通常为CT厂商对接IT厂商,由于没有业务竞争相对易于推动。因此在跨厂商集成对接方面,运营商定义的自动化集成交付系统可作为标准化的API和框架,提供中间件,协调异厂商对接。
(2)满足运营商定制化需求
目前厂商储备的自动化工具大部分是针对使用需求量较大的场景开发的。针对运营商的定制化需求,比如资源池的网络设计,在运营商工程建设要求尚未确定之前,厂商自动化产品存在不满足规范要求的风险。而且这类工具定制化开发工作量较大,部分厂商开发动力不足。在这类定制化工具方面运营商需要加强自研和自主开发能力。
(3)保持验收测试中立性,为运营商的集成验收提供自动化的工具保障
下一代网络的集成验收是集成交维的关键环节。传统验收方式无法对庞大的资源池的各个服务器节点、网络连接、内部配置进行全面的验收,往往导致验收通过后很多隐患没有及时发现,后患无穷。集成厂商可以提供部分自动化验收的工具,然而厂商工具良莠不齐,无法保证测试观察点完全满足运营商的要求。因此运营商应具备自主开发的、中立的、自动化的集成验收工具,从硬件、网络、软件等多个层面开展完善且高效的集成验收。
(4)构建跨厂商的持续集成持续交付系统
下一代网络的集成只是下一代网络建设和运维中的一个环节,为了确保下一代网络的灵活性、敏捷性,网络的规划、建设、运维监控应该构成有效闭环,形成正反馈,确保网络可管可控可维护。自动化集成交付平台是下一代网络持续集成持续交付的基础。
5.2 运营商集成验证能力
传统网络的集成工作仅发生在运营商机房的集成现场,网络转型后涉及跨厂商的集成操作,全部在机房完成,效率低,可重复性差。为了应对下一代网络的集成,运营商应逐步形成集成验证能力,在进入集成机房现场之前,将大量集成的互操作问题、预配置问题发现并解决,提高集成现场的集成效率。目前多个主流运营商均在筹备下一代网络的集成验证实验室,提供NFV的集成验证能力。运营商的集成验证能力基于其自动化集成交付系统,可以提供可重复、可复现的小规模多组件部署集成,通过快速灵活的自动化集成操作实现多组件的集成互操作验证。
5.3 持续集成持续交付闭环
基于自动化集成交付系统和运营商集成验证实验室,应进一步构建持续集成持续交付两个闭环。如图1所示。
一个闭环是持续集成闭环,覆盖厂商产品和运营商的集成验证实验室。这一闭环主要目的是对厂商的产品组件进行持续集成验证,确保厂商的每一次更新操作都能与运营商网络内部已存在的其他组件版本集成互操作。这一闭环要求厂商的CI/CD交付流程与运营商的集成验证实验室CI/CD交付流程能够彼此打通,通过厂商交付流程的产品更新可以直接驱动在运营商集成验证实验室进行快速的部署和互操作验证。
另一个闭环是持续交付闭环,覆盖从运营商的集成交付实验室到运营商的机房集成现场。这一闭环主要目的是对多个已在运营商集成验证实验室通过互操作集成验证的组件,通过持续交付的远程操作模式在现网进行部署集成操作,完成集成系统的交付。理想状态的持续交付只需要依靠自动化集成交付平台远程操作和现场施工队根据设计图纸简单地人工操作即可完成。这一闭环要求集成验证实验室的集成流程和现场集成流程打通,集成验证实验室的集成模式、脚本、配置文件,通过合理的规模化可直接在现网复制使用。现网发现的集成问题,可快速在集成验证实验室复现。
6 中国移动下一代网络新型集成实践
6.1 下一代网络自动化集成交付平台AUTO
面向下一代网络的集成痛点,中国移动自2017年起逐步构建新型集成能力。中国移动于2018年12月发布起自动化集成交付平台AUTO系统1.0版本,重点关注集成过程中运营商定制化需求和跨厂商集成痛点。图2为AUTO工具主界面。AUTO平台包含自动规划(AUTO-Design)、自动配置(AUTO-Config)、自动部署(AUTO-Deploy)和自动测试(AUTO-Test)四大功能组件,所有功能统一由AUTO-GUI界面呈现,并通过自动化流程管理平台(AUTO-Pipeline)实现集成任务流水线。
6.2 AUTO平台的应用实践
AUTO系统已在中国移动多个试点试验网环境得到验证。在2018年的NFV试点中,AUTO系统在8小时内完成了82个虚拟层功能测试用例测试,22小时内完成了19个性能测试用例。在2019年5G規模试验中,使用AUTO一键式完成450台服务器15项BIOS配置,极大地提高了硬件集成的效率。目前,AUTO工具也在中国移动的大区资源池建设中推广使用,提高中国移动电信云的集成质量和效率。此外,中国移动于2018年底发布OPEN-AUTO合作伙伴计划,基于AUTO平台,与多厂商开展集成合作,共同在集成流程定义、集成数据统一、集成实验室建设等方面开展合作,构建集成生态。
7 结束语
集成问题是下一代网络落地的“最后一公里”问题,关系着下一代网络的效率和质量。网络转型后,运营商应首先从流程、工具、数据三方面审视当前的集成方法,逐步优化集成的关键要素,从而实现从粗放式的“交钥匙”集成变成精细化的集成过程管理。基于此,运营商应逐步构建持续集成持续交付的集成能力,从而实现下一代网络的快速灵活上线。
在构建下一代网络新型集成体系的过程中,新型“集成生态”尤为重要。传统网络的集成存在着较高的厂商壁垒,导致下一代网络的集成缺乏完整的生态。面向跨厂商的未来网络,厂商壁垒给运营商、设备厂商、集成商带来了极大的资源损耗和技术挑战,因此运营商有必要主动承担责任,推动各方打破技术壁垒,构建跨厂商的持续集成持续交付模式。
参考文献:
[1] 周伟林. 网络功能虚拟化技术研究综述[J]. 计算机研究与发展, 2018,55(4): 675-688.
[2] Ericsson. The Telco Report–Insight into Telco cloud transformation[Z]. 2019.
[3] AT&T. Building the Network of the Future[Z]. 2017.
[4] 张文林. 持续交付及其在大型项目中的应用[J]. 软件导刊, 2017,16(10): 159-161.