刘利锋
(中兴通讯南京研发中心,江苏 南京 210012)
近年来,移动核心网发生了巨大变化。构建开放、灵活、高效和低成本的云网络,以应对未来爆炸性的移动数据流量增长、海量的终端连接和不断涌现出来的各种新业务应用,已经成为电信运营商的基本诉求。自2015年以来,已经有越来越多的电信运营商选择基于NFV部署云化核心网。
网络功能虚拟化[1](Network Function Virtualization,NFV)的概念是由ETSI提出的,目的是通过IT虚拟化技术,利用标准化的通用IT设备实现各种网络设备的功能,以打破传统电信设备的竖井式体系。ETSI给出的NFV架构[2]如图1所示。
NFV架构可以分为3个主要部分。
(1)NFV基础设施
NFV基础设施(Network Function Virtualization Infrastructure,NFVI)包括物理资源、虚拟化层及其上的虚拟资源,其中物理资源又包含计算、存储和网络3部分硬件资源,是承担计算、存储和内外部互连互通任务的设备。
图1 NFV网络架构
(2)虚拟网元
虚拟网元(Virtualized Network Function,VNF)是传统网络功能的虚拟化实现,主要负责提供真实的网络环境,如IMS、EPC、UDC等。
(3)MANO
MANO负责管理整体系统,由NFVO(NFV Orchestrator)、VNFM(VNF manager)与VIM组成(Virtual Infrastructure Manager)。其中,NFVO负责网络服务生命周期管理;VNFM负责VNF的资源及生命周期管理,如网元的实例化、扩容与缩容等功能;VIM负责整个基础设施层资源(包括硬件资源和虚拟资源)的管理和监控。
NFV对传统网元的软硬件进行了解耦,将不同类型、不同厂家的网元软件运行在统一的虚拟化集成设施上,弱化了软硬件之间的耦合关系。但是,由于NFV采用软硬件解耦、自上而下、分层管理的架构,势必会引入新的故障模式。因此,如何提高系统的可靠性,为电信行业提供99.999%的电信服务,将是NFV面临的挑战。本文将重点关注移动核心网引入NFV后如何构建高可靠性网络,提供“5个9”的业务可靠性。
虚拟化是业界公认的比较先进的技术,目前已经广泛应用于IT领域。然而,在电信领域,NFV还没有广泛部署,主要原因是电信领域所需要的业务连续性要求相比于IT领域更高。IT领域持续数秒的业务故障通常是可以忍受的,用户可以通过重试方式重新获得服务。而电信领域对业务连续性故障的容忍度通常是毫秒级的,不被终端用户所感知。可见,电信领域对系统可靠性要求更高。
可靠性[3]是系统在一定时间内无故障执行指定功能的能力,定义为:
t为观测的时间间隔,MTBF(Mean Time Between Failure)为平均故障间隔时间。
系统可用性[4]是指系统不中断运行时间占实际运行时间的比例,即:
其中MTTR(Mean Time to Restoration)为平均故障恢复时间。由此可见,系统可靠性仅与MTBF有关,系统可用性则与MTBF和MTTR有关。电信级设备要求“5个9”的服务能力,意味着一年的业务中断时间不超过315 s,落实到系统上即可用性。
引入NFV以后,VNF的可靠性由单一的软硬件系统变为基于通用硬件、分层解耦、多个网元共享的硬件平台。虚拟化后,系统由硬件层、虚拟层和应用层等组成,每一层都可能带来新的故障点。虚拟化系统的可靠性是物理资源层、虚拟化层和网元功能层串联组合后的结果[5],如图2所示。
图2 NFV可用性模型架构
因此,基于NFV的系统,其可用性为:
可见,要提高系统的可用性,关键是提高MTBF,同时缩短MTTR,包括缩短故障检测时间和修复时间等。
基于分析可以得出,提高电信网络可用性的方法主要有:(1)提高MTBF,提高系统的容错能力,保障系统长时间稳定运行;(2)降低MTRR,快速发现故障和秒级故障恢复能力;(3)采用冗余配置,提高系统可用性,形成高可用性系统。
因此,构建高可靠的虚拟化核心网络,可以从以下4个方面考虑:(1)提高NFVI的可靠性;(2)快速的故障检测;(3)快速故障恢复能力;(4)完善的容灾备份机制。
引入NFV后,稳定可靠的NFVI是构建高可靠核心网的基础。在硬件资源层面,利用冗余资源构建高可靠的物理资源池,以达到高可靠性目标。同时,在传统网络中使用的可靠性机制同样适用于NFV架构,如服务器双网卡、存储多路径等方式,以防止单点故障。在数据冗余方面,可以考虑RAID技术,实现数据的冗余可靠,或者采用分布数存储ceph,提供数据的1+N多副本。
在Hypervisor层,基于NFV特性,采用互斥部署方案。同类型的VM按照反亲和互斥原则,部署在不同一个物理机上,以防单台物理机故障触发的单点故障。
在虚拟化场景中,硬件可用性不是NFVI的最关键部分,硬件通常被视为资源池。如果其中一些组件不可用,VNF会从资源池中重新选择不同的硬件资源。因此,采用冗余架构,构建高可靠性的资源池,是提升系统可靠性的主要手段。
快速的确定故障根源,是有效降低MTRR的重要环节。虚拟化的软硬件解耦,无法如传统设备快速定位某个节点故障。因此,需要从分层的故障检测和跨层故障联动两个方面进行考虑。
2.2.1 硬件层检测
NFV场景下,硬件故障可能会导致业务和虚拟基础设施故障,因此需要硬件资源的N+M冗余架构。硬件层设备通过IPMI、SNMP等方式上报KPI、告警等给VIM,以监控本机状态。根据ETSI给出的故障检测要求,硬件关键故障需要在1 s内完成上报。
2.2.2 虚拟化层检测
虚拟层为虚机提供看门狗(WatchDog)功能。当创建虚机时,系统自动为该虚机模拟一个看门狗PCI设备。当虚机启动后,开门狗也将启动,虚机定期喂狗。当物理机检测到虚机没有定期喂狗时,物理机重启虚机,使虚机恢复正常。
2.2.3 应用层检测
VNFC是部署在VM上的应用软件组件,可以看做是应用软件的最小单元,由VNFM进行生命周期管理。对应用层VNFC,一般采用VNFM检测、心跳检测、负载均衡组件(LB)检测和VNFM等方式检测VNFC的状态。
2.2.4 跨层故障关联联动
虚拟化采用分层管理的架构,一个故障点可能会触发多层的故障告警,如服务器上的硬盘坏,会同时引起VIM层的告警和操作系统层面的告警,也会引起业务层的告警。因此,单靠一层很难进行故障定位。此外,这些告警由不同层面采集和监控,如VNF-EMS、VNFM或者NFVO等,因此需要对告警信息进行关联分析,以迅速定位故障根源[6]。
NFV故障管理中采用“逐层关联、分类管理”的原则。MANO(包括VIM、VNFM、NFVO)主要负责资源域的告警监控与处理,VNF-EMS-OSS主要负责业务域的告警采集与处理。当业务域告警和资源域告警需要关联时,可以考虑采用NFVO负责业务和资源故障关联的方式,如图3所示。通过扩展NFVO功能,统一进行NFV网络编排、资源调度及运维,以提高NFV网络告警处理效率,同时基于MANO进行统一的网络运维。
图3 NFVO关联业务和资源故障方案
保障业务连续性,实现业务“0”重点,是故障恢复的首要目标,因此快速故障恢复尤为重要。传统核心网网元如MME、SGSN等,业务处理逻辑和上下文数据是紧耦合的。网元业务VNFC需各自存储和管理会话上下文、状态等数据,所以网元业务VNFC组件是有状态的。为了在主节点故障时快速接管业务,一般采用1+1主备的冗余方式,如图4所示。但在这种架构下,如果虚机所在刀片出现故障而需要在其他刀片上重生时,由于业务和数据耦合,因此业务VM需要同步进行上下文数据的迁移。这个过程依赖于主备同步的效率数据量大小,备用节点恢复时间周期长,一般可能要几分钟,因此这个过程中的组件面临无备份节点的风险。另外,如业务负荷增大,需要弹出新的业务VM处理业务时,业务弹缩需迁移数据,弹缩周期长且难以实现无损体验。
图4 1+1主备架构
可行的替代方案是将业务处理逻辑单元和业务数据分开,以实现业务处理逻辑的无状态。同时,引入统一数据库层,存储业务上下文数据,如图5所示。业务处理逻辑单元采用N+M负荷分担的方式,此时可用性更高。单个VM/VNFC故障,其他VNFC可以平滑接管业务。另外,由于业务逻辑和业务数据分离,业务逻辑无状态,因此可以更快速地实现弹性伸缩、自愈和迁移等操作。缩短故障自愈时间,提高系统可靠性。
图5 N+M负荷分担架构
当电信系统在遭受如火灾、水灾、地震等不可抗拒的自然灾难时,容灾系统将保证用户数据的安全性,提供不间断的电信业务。因此,跨数据中心的地理容灾,也是提高电信网络可靠性的必要手段。基于NFV的容灾备份,主要有Pool组网和跨DC部署两个方案。
2.4.1 Pool容灾方案
传统网络的Pool容灾方案成熟度较高,在传统设备中应用广泛。演进到NFV后,VNF可以灵活配置在不同位置并组成VNF池用于异地容灾。VNF池采用N+M负荷均衡模式。如果某个VNF失效,该VNF上的负荷会重新分配到池中的其他VNF。NFV Pool容灾方案如图6所示。
图6 POOL容灾方案
2.4.2 VNF跨DC方案
除了传统的Pool组网方案,VNF还可以采用跨DC部署的容灾方案,如VNF的多个VNFC分配到每个DC,如图7所示。
图7 VNF跨DC方案
这种组网方式,用户会话上下文通过CDB(统一数据库)组件在数据中心之间同步。如果某个数据中心故障,其他数据中心中的VNFC立刻接管故障数据中心上的业务。在故障数据中心到健康数据中心的切换过程中,保证业务的连续性。
为了保持VNFC之间的通信和跨数据中心的数据同步备份,需提供高网络QoS和高可靠性。
NFV作为下一代网络构建的解决方案,其标准化已经逐步成熟,目前多个运营商已经选择NFV作为核心网部署。随着5G的来临,NFV将会加快部署的步伐。提高NFV网络的可靠性,为电信业提供99.999%的服务保障,也是虚拟化广泛部署的关键。本文结合NFV架构的特性,从NFV的故障预防、故障检测、故障迅速恢复和业务容灾等多个方面,基于NFV的电信网络可靠性进行探讨,以期为运营商部署安全可靠的NFV提供参考。