Jump to section

VNF 和 CNF 之间有何区别?

复制网址

虚拟网络功能(VNF)是提供网络功能(如目录服务、路由器、防火墙、负载平衡器等)的软件应用。虚拟网络功能以虚拟机(VM)的形式部署,在电信提供商向数字化转型的过程中,使用 VNF 通常是从传统网络设备的物理网络功能(PNF)向现代化网络转型的重要一步,传统设备通常会依赖于专有硬件,而 VNF 则可帮助他们摆脱这种依赖。  

作为网络功能虚拟化(NFV)架构的关键组成部分,VNF 建立在 NFV 基础架构(NFVI)之上,包括像 OpenShift® 上的红帽® OpenStack 服务这样的虚拟基础架构管理器(VIM),其作用是在 VNF 之间高效地分配计算、存储和网络等资源。由 NFV 定义的管理、自动化和网络编排(MANO)组件提供了用于管理 NFVI 和置备新 VNF 的框架。 

虽然 VNF 现在已成为标准网络架构的一部分,但随着数字服务提供商转向提供更敏捷的服务,VNF 仍然存在一些限制。在从物理设备向 VNF 过渡的初期,提供商往往只是将嵌入式软件系统完全从设备中提取出来,然后创建一个大型虚拟机。然而,由于并未尝试优化这些虚拟机,因此他们创建的虚拟设备不仅效率低,用途单一,而且管理和维护起来依然费时费力。 

除此之外,在云环境中很难使用这类传统 VNF 实现可扩展性。有些企业已经采取措施来改进其初始 VNF 实现方式,很多服务提供商则采用了通用的水平 NFVI 云平台,以简化其运行大量 VNF 的环境。这些变化有助于使 NFV 成为 5G 或边缘网络的基础技术。然而,对于希望兼顾敏捷性、可扩展性和低开销的大规模 5G 或边缘部署来说,虚拟机的“重量”仍然会限制 VNF 的效率。  

通过采用云原生方法,数字服务提供商可同时使用集中式和分布式位置来部署应用,进而获得更高的灵活性、可扩展性、可靠性和可移植性。超越虚拟化转向完全云原生设计有助于将所需效率和敏捷性推向一个新高度,从而快速部署市场和客户所需的创新、差异化的产品。

云原生方法的一大重要特点在于,它使用容器而不是虚拟机。容器支持用户将软件(如应用、功能或微服务)与运行该软件所需的所有文件打包到一起,同时共享对操作系统和其他服务器资源的访问权限。这种方法便于在不同环境(开发、测试、生产等),甚至云之间,移动所含组件,同时保留全部功能。

云原生网络功能(CNF)从 VNF 演变而来,设计并实现为在容器内运行。通过将网络架构组件容器化,不仅可以在同一集群上运行多种服务,还能更轻松地引入已拆分的应用,并且能够动态地将网络流量引导至相应的容器集(Pod)。

 

 

This figure shows the evolution of network functions from the traditional vertically integrated approach, to VNFs managed by a common VM orchestration platform, to CNFs managed by a common container orchestration platform.

这张图展示了网络功能的演变,从传统的垂直整合方式,到由通用虚拟机编排平台管理的VNF,再到由通用容器编排平台管理的CNF。  

采用 CNF 可以解决一些 VNF 的基本局限性,因为许多网络功能被迁移到了容器中。采用容器化方式来实施网络组件,有助于在 IT 环境中跨集群管理这些功能的运行方式和运行位置。 

然而,CNF 不只是涉及对网络功能实施容器化。为了在容器打包之外充分发挥云原生原则的所有优势,需要进一步重新构建网络功能软件,如将其分解为微服务,允许在更新期间使用多个版本,并使用通用负载平衡器或数据存储等可用的平台服务。 

此外,随着对云原生环境的采用不断增加,在过渡期间, CNF 必须与传统 VNF 共存。数字服务提供商必须完全自动执行网络的开发、部署、维护和运维,以有效处理不断增长的需求、加快部署并降低复杂性。对于提供商来说,标准化的配置和部署方法、开源社区中成熟的工具以及严格的测试和认证比以往更加重要。

开放且一致的基础可以帮助电信提供商树立信心,让他们无论在何处开展业务,无论业务覆盖范围有多大,都能可靠地运行其服务。而如果借助 NFV(使用 VNF),尤其是采用云原生架构(使用 CNF)来构建这个基础,更能提高灵活性和敏捷性。自动化不仅在保证生态系统轻松高效地运作实现规模化运行方面发挥着关键作用,还有助于数字服务提供商加速更改以及添加服务与功能,从而更加出色地响应客户的需求和要求。

继续阅读

文章

有状态 VS 无状态

要判断一个应用为有状态或无状态,取决于交互状态的记录时长以及该信息所需的存储方式。

文章

什么是 Quarkus?

Quarkus 是一个为 Java 虚拟机(JVM)和原生编译而设计的 Kubernetes 原生 Java 堆栈,专门根据容器而对 Java 进行了优化。

文章

什么是无服务器?

无服务器是一种云原生开发模型,可使开发人员专注构建和运行应用,而无需管理服务器。

详细了解云原生应用

产品

企业级应用平台,包含一系列久经测试的服务,可在您选择的基础架构上将应用推向市场。

相关资源

电子书

云原生遇到混合云:策略指南

电子书

云原生应用的构建之路

产品规格表

以更低的成本和复杂性加速应用开发

培训

免费培训

利用微服务架构开发云原生应用