谷聚娟,张亚生,庞金坤
(1.中国电子科技集团公司第54研究所,河北 石家庄 050002;2.北京邮电大学网络技术研究院,北京 100876)
天地一体化网络可将天地网络进行融合,实现网络全球覆盖,为全球用户提供无差别的通信和互联网服务[1]。但是,随着业务需求种类的不断增多,不同的应用场景在网络功能、系统性能、安全和用户体验等方面都有着不同的需求,如果使用同一个网络提供服务,会造成网络十分复杂、不灵活,并且无法到达用户所需性能要求,同时也会导致网络运维变得十分复杂,网络运营成本增加[2,3]。而5G的网络切片NS(Network Slicing)[4]技术可以有效地解决该问题。
网络切片是网络功能虚拟化NFV(Network Function Virtualization)[5]应用于5G阶段的关键特征之一。一个(或多个)网络切片可构成一个端到端的逻辑网络[6],按需灵活地提供一种或多种服务;而网络功能虚拟化是指使用通用的硬件和软件虚拟化技术,通过软硬件解耦和功能抽象,以软件的方式实现传统硬件设备通信功能的技术[7]。
基于网络切片的天地一体化网络将改变传统的基于专用硬件建设基础设施平台的模式,通过在通用硬件设备之上构建出多个专用的、虚拟的、互相隔离的逻辑网络,实现跨功能平面的统一资源管理架构和多业务承载资源平面,能够为多种不同的业务类型提供独立运维的、相互隔离并且完整的运行环境,使不同的应用场景可以按照各自的需求定制网络功能和特性,以全面解决传输服务质量、资源可扩展性和组网灵活性等基础性问题。
本文立足天地一体化网络特定场景和应用需求,提出了基于5G网络切片技术的天地一体化网络地面核心网方案,并基于Docker平台构建原型系统,实现了网络切片的按需创建和独立服务,验证了网络切片架构应用于天地一体化网络中的可行性。
Figure 2 Network slicing architecture of the core network of space-ground integrated network
天地一体化网络的架构分为2大部分,分别是天基部分和地基部分,如图1所示,其中,天基部分主要由布设在太空中的卫星节点构成,具有星间链路,可星间组网,具备全球无缝随机接入和移动宽带通信服务能力;地基部分包括终端和地面核心网,其中终端包括安装于人员、车辆、飞机和舰船等实体之上的信息发送和接收终端,地面核心网由部署在陆地上的地基核心节点互联组成。
Figure 1 Composition of space-ground integrated network based on network slicing technology in 5G
本文的设计方案中,在地面核心网部分引入网络切片技术,将其切分成了多个网络切片。这些网络切片能够在由通用服务器组成的同一个物理网络平台上按需组网、灵活部署,实现地面核心网资源的有机组合和按需调用,以满足不同的业务场景。
根据3GPP(3rd Generation Partnership Project)和下一代移动网络NGMN(Next Generation Mobile Networks)相关文件[8,9]中对网络切片架构的描述和天地一体化网络地面核心网的业务需求,对地面核心网网络切片架构进行设计,如图2所示。地面核心网的网络切片架构主要包括网络切片管理模块、网络切片选择模块和网络切片模块(包括共享切片和独立切片)[10],每个模块在系统中充当着不同的角色,彼此相互配合。
2.2.1 网络切片编排管理模块
网络切片编排管理模块的主要功能包括对网络切片实例的管理、对网络切片模板的管理和对网络切片的编排。网络切片模板是网络切片实例创建所需的配置信息,网络切片实例则是网络切片的运行实体,也是网络中具体提供网络服务的实体。每个网络切片实例都有其生命周期,主要包括创建、运行、更新和销毁等阶段。网络切片的编排是指将虚拟化后的网络资源进行组合,得到满足需求的特定网络功能,然后将不同的网络功能编排组合成为面向特定服务需求的网络切片。
2.2.2 网络切片选择模块
引入网络切片技术之后,由于每个网络切片实例都是一个完整的逻辑网络,意味着网络域中同时存在多种不同类型的逻辑网络供用户设备UE(User Equipment)接入。网络切片选择模块在UE附着网络时为其选择所需的网络切片实例,该模块设计遵循以下原则:
(1)由地面核心网而不是天基接入网来选择为用户服务的核心网切片实例,用户设备被允许接入哪些网络切片要写入签约数据中。
(2)可以通过提供网络切片选择策略NSSP(Network Slice Selection Police)来实现网络切片选择,这个策略包含切片选择相关的规则,协助用户完成切片的选择功能。
(3)终端通过提供网络切片选择辅助信息NSSAI(Network Slice Selection Assistance Information)来选择相关的切片实例,每一条网络切片选择辅助信息对应一个网络切片。网络切片选择辅助信息采用预配置的方式,保存于终端侧,具备切片功能的网络可以依据终端提供的网络切片选择辅助信息来为终端选择特定的切片实例。
2.2.3 网络切片模块
在地面核心网的设计中,网络切片模块设计是核心内容。本架构中的网络切片分为2大类:共享切片和独立切片。
共享切片包含整个地面网络系统中的公共切片,主要包括用于存储用户数据及网络数据的数据库切片和公共鉴权切片。为提高天地一体化网络地面核心网数据负载能力,可以创建多个共享数据库切片实例,这些实例中的结构化数据库和非结构化数据库组成的集群通过统一数据管理UDM(Unified Data Management)向外提供数据服务,确保高并发下的数据一致性。公共鉴权切片通过与数据库切片进行交互来实现对用户的鉴权。
独立切片用来提供个性化服务,主要由切片前端和业务切片实例组成。经过网络切片选择模块处理后的业务信令消息经过切片前端模块时,该模块会根据消息包含的用户信息和切片实例的负载情况,将请求流量分发给最合适的独立切片实例,实现负载均衡。本文架构实现了3类独立切片实例:类IMS(IP Multimedia Subsystem)多媒体通信独立切片实例、物联网信息采集独立切片实例和上网下载独立切片实例,这3类独立切片实例分别由不同的虚拟业务网元组合而成,分别提供多媒体通信、信息推送和上网下载服务。
本文方案中,网络切片建立在Docker虚拟化的硬件资源之上,网络切片的组织、创建和部署利用Docker相关技术[11,12]来实现。
基于Docker技术的网络切片实现方式如图3所示,其中Manager UI是管理网络切片的可视化操作界面;Dockerfile是用来构建网络切片中相应网元容器的镜像,该镜像统一推送到Docker 镜像仓库(Docker Image Registry)之中,之后创建容器时可直接从仓库中拉取,如图3中网元II是由仓库中的网元镜像II创建而成的。
网元由容器组构成,不同的网元在业务环境中所需的硬件资源不尽相同,可以使用切片编排管理模块根据不同网元需要承担的业务权重来分配每一个网元容器组里容器的资源,实现资源的合理分配。关键功能的网元容器组可以在其内编排多个相同功能的容器,以避免单一容器宕机之后整体网元失效以致切片服务不可用,同时也起到了动态调整切片业务承载能力的作用。
不同的网元容器组之间可以通过Docker编排文件进行编排的设定,Docker 引擎(Docker Engine)根据该文件中所列举的容器名在仓库中拉取对应的镜像,结合编排文件里的编排信息创建出不同的网元容器,并将这些网元容器进行组合,从而形成一个完整的网络切片,该网络切片可以为用户提供完整的网络服务。
Figure 3 Implementation of network slice based on Docker
Figure 4 Slices deploying on multiple servers based on Docker architecture
本文方案使用Docker Swarm来实现网元的分布式部署,将若干台运行Docker的主机抽象为一个整体(集群),此集群中包含1个管理节点(Swarm Manager)和若干个工作节点(Swarm Worker)。其中,管理节点用来管理集群中的容器资源,并且向工作节点下发任务;而工作节点负责完成管理节点下发的任务。管理节点向外提供了一个HTTP接口,Manager UI可以通过调用该HTTP接口来实现对集群的管理。在创建一个网络切片的时候,Swarm会自动创建一个虚拟网络,属于同一网络切片的网元容器可以通过此虚拟网络进行跨节点的相互连接,从而实现容器间的通信。网络切片内的网元容器组的具体部署策略(如容器组内的容器数量、分布、资源限制等)可以方便地在Docker编排文件里进行定义,当完成网络切片的定义之后,即可将网络切片通过Docker Swarm部署编排到分布式网络服务器集群上。
网元容器组在网络服务器集群上的部署方式多种多样。本文方案中,为了实现负载均衡,管理节点在进行切片部署的过程中,应尽量按照所需处理能力的大小将切片内的网元节点分布在不同的主机上,如图4所示。可以将不同的网元容器组部署到同一个主机(网络节点)上,如网元1和网元2,也可以将不同的网元容器组分别部署到不同的主机上,如网元2和网元3,还可以将网络切片的所有容器组部署在一个节点上,以提高切片的网络速度。
本文方案基于Docker平台在服务器上构建网络切片架构,实现了一个网络切片原型系统,并对原型系统的功能进行测试,测试网络切片实例是否可以按需创建,创建的网络切片实例是否可以正常提供服务。
天地一体化网络地面核心网的网络切片原型系统主要包括网络切片服务子系统和管理子系统2部分。测试原型系统需要用到的硬件设备包括1台网络服务器、3台可用的PC终端、2台可用的移动终端和必要的线路及路由交换设备,其原型系统测试的网络拓扑如图5所示。其中:
(1)网络服务器承载着整个网络切片服务子系统,以及基于Docker平台实现的隔离环境和特定的服务程序,存储网络信息和业务用户信息的数据库也放在网络服务器上。
(2)管理子系统运行在1台PC终端上,通过服务端口管理网络切片服务子系统的运行情况,此外还包括对业务用户的管理。
(3)移动终端和PC终端用来测试网络切片的服务情况,2种终端通过局域网向网络服务器请求特定的业务服务,网络服务器将用户的服务请求信息分配给不同的网络切片实例,从而提供不同的业务服务。
Figure 5 Prototype system test topology of the core network of space-ground integrated network
测试环境搭建完成后,本节以类IMS切片为例,测试网络切片模板的创建、网络切片实例的创建和网络切片实例运行并提供服务的情况。
4.2.1 网络切片模板创建验证
为提供IMS多媒体通信服务,在测试过程中,首先创建一个类IMS切片模板。在模板数据中设计该类网络切片实例的信息,将网络切片实例的主名称设为“mano-ns-sip-server”,其中网元容器组使用的镜像为“mano.ns/sip-server”,开放5060端口供用户连接使用,为实现负载分担,创建2个相同的容器组,将切片实例数(Replicas)设为2。最终所创建切片模板的详细信息如图6所示,符合预期。
Figure 6 Configuration information of the IMS network slice
4.2.2 运行网络切片实例
本文通过类IMS网络切片模板动态创建2个类IMS网络切片实例,其切片实例的名称为“mano-ns-sip-server”,如图7所示为类IMS网络切片实例的运行情况。从图7中可以看到,该类网络切片实例总数和运行总数皆为2,并且都可以正常提供服务。使用开源sip客户端Linphone在1台移动终端和1台PC终端上对类IMS多媒体切片实例的服务情况进行测试。测试的关键步骤为:
(1)在PC终端登录pcuser用户,在移动终端登录mobileuser用户,凭借正确的登录信息通过Linphone客户端登录地面核心网网络切片原型系统。
(2)由pcuser用户终端发起对mobileuser用户终端的呼叫,进入响铃等待阶段。
(3)mobileuser用户终端接听后,2个终端进入通话阶段。
(4)pcuser用户终端挂断,通话结束。
在测试地面核心网网络切片原型系统为2个用户提供IMS呼叫服务时,类IMS网络切片实例的服务日志如图8所示,记录了2个用户终端登记、拨号和通话的整个过程。
Figure 7 Running status of network slice instance
Figure 8 Service log of network slice instance
4.2.3 验证结论
通过以类IMS多媒体通信网络切片为例对原型系统进行测试,结果显示类IMS网络切片可以按照需求在切片模板中进行定制,并且创建的网络切片实例可以正常提供服务,同时可以创建多个相同的切片实例来进行负载分担,防止单个切片实例因过载而造成服务终止。
本文提出了基于Docker平台实现天地一体化网络中地面核心网采用5G网络切片架构的设计方案,并通过原型系统验证了该方案的可行性。验证结果显示,每个网络切片都能够按需创建,内部的网络资源也可以按需分配,各网络切片相互隔离,可独立提供服务,使地面核心网组网更加灵活。然而,要构建理想的天地一体化网络,满足更多不同的业务场景,还需要进行进一步的研究。