什么是5G核心网的微服务

通信网络的链路为:终端 -- 无线接入网 -- 承载网 -- 核心网,进而到达ip数据网络,访问互联网业务,这也是移动互联网的链路。
核心网在从4g到5g的演进过程,产生了非常大的变化:
第一、用户面和控制面完全分离;
第二、网络功能微服务化。本文着重理解这一点。
一、基于sba的5g核心网
1. 软件应用架构的演进
首先,我们需要看看,it领域软件架构的发展与演进路线,因为在前十年it领域所产生的思想与技术,正影响着ct领域未来十年的发展。
在软件开发的初级阶段,我们通常将负责不同的业务职责的代码文件进行逻辑上的划分,分隔不同的小模块,每个小模块赋予相应的职责,大致过程如下图①②③所示:
这些代码开发简单,发布时会被打成一个包,如war包,被部署在同一台机器的同一个进程中运行。这被称为 单体应用架构 。程序员的工作就是不停地地修补和旋转这个球。
随着业务的不断深入和复杂性的提高,我们需要构建更多的模块:
模块的增多,程序员们修补和旋转这个大球,实在太累,而且有很多的程序员使不上力气。
那么,就像切西瓜一样,把这个球切开。这样,不同的模块在发布时,会被打成不同的小包,如jar包。它们以接口的形式“藕断丝连”着,部署时还是在同一物理服务器上。
当代码大到一定量级,需要数百人来维护时,真是太难了:一个微不足道的小问题,可以导致整个应用挂掉;大用户量上来时,又无法满足高并发情况下的业务需求。
那么,我们把这个球完全成切开,形成一个一个独立的小球,每个小球负责独立的业务功能对外提供服务。这被称为 微服务(microservice architect,msa) 。
仔细来分析,每个微服务的“小球”都需要找到所需的服务和对外提供服务,大流量来时,多个小球共担流量。大致就是这样了:
不难看到,业务代码是翻译的业务逻辑,直接促进业务创新。像服务发现、负载均衡、熔断、限流等等,属于非业务相关,为提高业务开发效率,这部分功能是可以提取出来的,部署时采用专门的进程负责,称为mesh,这也就是 service mesh(服务网格) 了。
在单体--微服务--服务网格的演进过程中,还有一个阶段被称为soa,也就是面向服务架构,英文全称是service-oriented architecture。soa的产生背景更多的是将现有的单体服务进行改造并集成,对外提供统一的服务。
所以,软件应用架构的演进路线是: 单体-- soa --微服务--服务网格 。
基于服务的架构sba我们再来看看,5g核心网的sba。sba,英文全称service based architecture,也就是基于服务的架构。
为啥不是it领域中的soa或者msa呢?大致的原因有:
soa 提倡将架构分解为层而不是域,需要进行大量测试才能发布;微服务提倡数百或数千个服务,而某些应用场景可能只需数十个可部署的服务;微服务对其数据拥有唯一所有权,而拆分大型数据库模式的难度是最为复杂的部分。下面的表格列出了soa、msa、sba、monolithic在敏捷、部署、可测试性、可扩展性、性能、简洁等方面的比较。
不难看出,sba借鉴了it业界成熟的soa(面向服务架构)和msa(微服务架构),并在它们之间进行了折衷和平衡:
服务按领域拆成比soa更细的粒度,可升级单个服务,而对其他服务几乎没有影响;服务按领域拆成比msa更粗的粒度,减小调用链,提高可维护性;服务可扩展、开放,任何其他服务都可以进行相互调用,轻量级服务接口是轻量级的http2.0。以此来实现核心网元的软件化、开放化和智慧化,做到服务功能不太大,也不至于太小。
二、5g核心网服务功能的理解
nf是有哪些?5g核心网软件体现为多个nf网络功能,每个nf又被称为多个nfs网络功能服务。
整体上,又可以看成控制面功能服务和用户面功能服务。本质上是管理线和业务线的工作,一个负责指挥,一个负责干活。
nf之间如何进行交互?5g sba 由一个参考点表示来描述,该表示命名每个 nf 连接到其他 nf 的点。
nf之间通过总线之间进行互连,参考点通过基于服务的接口(sbi) 实现,如amf和smf 通之间的参考点是n11,对应到sbi就是namf和nsmf。
sbi的定义只存在控制平面,所以,smf和upf之间的参考点是n4,amf和ue的参考点是n1,amf和ran的参考点是n2,ran和upf的参考点是n3。
nf如何来管理?众多的nf中,有个nrf(nf repository function,网络存储功能),可以进行nf的集中管理,进行nfs的注册、发现、管理与状态检测。每个nf启动时,必须要到nrf进行注册登记才能对外提供服务,登记信息包括nf类型、地址、服务列表等。
nf如何对外提供服务?nef(network exposure function,网络开放功能),负责管理对外开放网络的数据,外部应用如要访问5g核心网内部数据,则要通过nef。
nf数据如何进行存储?程序的业务运行过程中,必然产生数据。5g核心网中的数据有结构化数据和非结构化数据。
结构化数据包含:手机号码信息,可以使用的业务信息、数据带宽限制数据等。
非结构化数据包括:用户会话信息、状态信息等。udsf一般跟amf、smf打交道。
udsf(unstructured data storage function,非结构化数据存储功能) 用来存储非结构化的数据,允许任何nf存储和检索其非结构化数据。
udr(unified data repository,统一数据存储) 用来存储结构化数据,udm管理的用户签约数据和pcf管理的策略数据。
数据存储从各个网元中剥离出来,进行统一的存储,这样nf的“无状态”,有助于实现nf的弹性伸缩。
数据流的如何进行转发?核心网的首要职责是将数据包按照某种策略进行转发,本质上是“路由和交换”。这个工作由upf用户平面功能来完成:
接收基站过来的数据流,进行数据包的转发和路由,到达ip数据网络;
面向公网服务,则upf部署于网络核心侧,负责全网业务;行业专网服务往往需要低时延,则upf可部署于边缘dc、区域dc、园区、工厂等位置。
手机上网的会话,如何建立?amf(access and mobility management function,接入和移动性管理功能),负责为用户注册、连接、可达性、移动性管理,为ue和smf提供会话管理消息传输通道。
smf(session management function,会话管理功能),负责隧道维护、ip地址分配和管理、up功能选择、策略实施和qos控制、计费数据采集、漫游等。

RTU检修时调度自动化系统的管理模式
PP板 PP吸风罩 吸尘罩 铁皮吸风罩 昆山晟华
使用免费的SDCC C编译器开发DS89C430/450系列
NINEKAN2真无线蓝牙耳机怎么样 值不值得买
速度快能耗低 光导AI芯片企业获盖茨等近千万美元投资
什么是5G核心网的微服务
FPC的结构层次的不同性质介绍
10.5英寸iPad Pro怎么样?新iPad Pro评测:未来长时间内的主力生产工具
电子工程师结合创造性与习惯
简单的mems陀螺仪姿态算法介绍
中银航空租赁已向Skymark航空交付了最后一架波音737-800NG飞机
协会动态 | 广东省互联网行业乡村振兴工作座谈会召开 机智云受邀出席并分享智慧渔业解决方案
一种利用金属纳米线上的表面等离激元干涉场作为激发源的超分辨激发和成像方法
高精地图的精益化管理
基于角色访问控制技术的数控机床信息集成系统设计
一文看懂康佳转型之路如何走
华为助力精诊科技打造多模态融合的手术计划工作站
word文档如何解密
雷达水位计介绍
保证SMT加工品质的三种方法!