2. 5G核心网服务化架构(SBA)解析

5G核心网(5GC)与传统4G EPC最根本的差异,在于它把"网元之间用固定协议点对点通信"改造成了"网络功能(NF)以服务的形式对外提供能力,其他NF按需调用"。这套设计称为服务化架构(Service-Based Architecture,SBA)。理解SBA,关键不是记住一堆缩写,而是搞清楚三件事:每个NF负责什么、它们之间通过什么接口交互、以及一个NF如何被其他NF"找到"。

一、SBA的基本形态:控制面服务化,用户面仍走隧道

在SBA中,控制面被拆成若干独立的网络功能(NF),每个NF把自己的能力封装成一组"服务",通过基于HTTP/2的RESTful接口对外暴露。服务用"服务名+版本"标识,例如 namf-comm 表示AMF的通信服务,nsmf-pdusession 表示SMF的PDU会话服务。调用方不需要知道对方部署在哪台物理设备上,只需要知道服务名,由NRF帮助解析到具体实例。

需要特别强调的是:SBA主要作用于控制面。用户面数据仍然通过UPF之间的N9接口、以及UPF与RAN之间的N3接口,以GTP-U隧道方式转发,并不走HTTP服务化接口。把"控制面服务化、用户面隧道化"这条边界记清楚,后面很多接口关系就不会混淆。

二、核心NF的职责分工

下面按"接入—会话—数据—能力开放"这条主线梳理主要NF。

  • AMF(Access and Mobility Management Function,接入与移动性管理功能):负责终端的注册、鉴权流程的协调、移动性管理、连接管理。它是终端在控制面的"第一入口",RAN通过N2接口把NAS消息交给AMF。AMF本身不管理会话的用户面参数,而是把会话相关请求转给SMF。
  • SMF(Session Management Function,会话管理功能):负责PDU会话的建立、修改、释放,分配UE IP地址,选择并控制UPF,制定QoS与计费策略。SMF通过N4接口(PFCP协议)向UPF下发转发规则。
  • UPF(User Plane Function,用户面功能):执行数据包的路由转发、QoS执行、流量统计、以及作为PDU会话锚点。它受SMF控制,是用户面数据的实际处理点。
  • UDM(Unified Data Management,统一数据管理):存储用户的签约数据、鉴权凭证、允许的切片与DNN等信息。它不直接与AMF/SMF交互,而是通过UDR存放数据,由AUSF、AMF、SMF等按需查询。
  • AUSF(Authentication Server Function,鉴权服务器功能):配合UDM完成终端的鉴权与密钥派生。
  • NRF(NF Repository Function,网络功能存储库功能):SBA的"服务注册中心",负责NF实例的注册、发现与状态维护。
  • NEF(Network Exposure Function,网络能力开放功能):把核心网内部的能力(如QoS、位置、事件订阅)安全地开放给外部应用,同时把外部请求转换为内部NF可识别的服务调用。
  • PCF(Policy Control Function,策略控制功能):提供QoS、计费、接入控制等策略规则。

这些NF之间通过服务化接口(以N开头,如Nnrf、Namf、Nsmf、Nudm、Nnef)互相调用,而N1(UE与AMF)、N2(RAN与AMF)、N3(RAN与UPF)、N4(SMF与UPF)、N6(UPF与数据网络)属于非服务化接口,是SBA之外的连接。

5G核心网SBA:控制面服务化 + 用户面隧道化 控制面(服务化接口,HTTP/2 + JSON) NRF 注册 / 发现 / 状态 AMF 接入与移动性管理 SMF 会话管理 UDM 签约数据管理 AUSF 鉴权与密钥派生 PCF 策略与计费规则 NEF 能力开放 外部应用 / AF 第三方业务系统 Nsmf Nudm Nausf Npcf N33 用户面(隧道转发,非服务化) UE 终端 gNB / RAN 基站 UPF 用户面转发 DN 数据网络 Uu N3 N6 N4 / PFCP N2 服务化接口 NF间服务调用 非服务化接口

三、服务注册与发现机制

SBA能"按需找到对方",靠的是NRF提供的注册与发现流程。可以把它类比成一个服务注册中心:每个NF实例启动后,先向NRF登记自己是谁、提供哪些服务、监听哪个地址和端口、支持什么版本;调用方在需要时向NRF查询"谁提供某项服务",拿到候选实例列表后再发起调用。

注册过程大致如下:NF实例完成初始化后,向NRF发送注册请求,携带NF类型(如SMF)、NF实例ID、支持的服务列表(如 nsmf-pdusession、nsmf-event-exposure)、FQDN或IP地址、PLMN、切片标识(S-NSSAI)等信息。NRF校验通过后保存该实例的档案,并返回一个有效期。实例需要定期发送心跳或更新请求来维持"已注册"状态;如果长时间没有心跳,NRF会将其标记为不可用,避免调用方拿到失效地址。

发现过程则是调用方发起查询。例如AMF在处理一次注册请求时,需要为终端选择一个SMF,它会向NRF发送发现请求,查询条件可以包括:目标NF类型为SMF、终端所属的S-NSSAI、目标DNN、以及所在位置信息。NRF根据这些条件筛选出匹配的SMF实例列表返回。AMF再按优先级、负载或本地策略从中选择一个,随后直接向该SMF发起 Nsmf_PDUSession_CreateSMContext 服务调用。

注册与发现是"先登记、后查询"的两段式机制。NRF本身不转发业务请求,它只负责维护"谁在哪里、能提供什么"的目录信息,真正的服务调用发生在NF与NF之间。

四、一次PDU会话建立中的接口协作

把上面的NF和接口串起来,看一个典型场景:终端发起PDU会话建立。AMF收到NAS请求后,通过NRF发现并选定SMF,调用Nsmf服务把会话管理请求转给SMF;SMF向UDM查询签约数据(通过Nudm),向PCF获取策略(通过Npcf),然后通过N4接口向UPF下发PFCP会话建立请求,指定隧道端点、QoS规则和计费上报规则;UPF建立转发规则后返回响应,SMF再把结果经AMF回给终端。整个过程中,控制面走的是服务化接口,用户面数据则从UE经N3到UPF、再经N6到数据网络。

理解这条链路后,排障时就有了清晰的定位思路:如果终端注册失败,重点看AMF与AUSF/UDM的鉴权与签约查询;如果会话建立失败,重点看SMF能否通过NRF发现、N4下发是否成功、UPF是否返回正确原因值;如果会话建立成功但无法上网,则要检查N3/N6转发和UPF上的QoS与路由规则。把"控制面服务化"和"用户面隧道化"两条线分开看,问题范围会迅速收窄。

五、关键接口速查

接口连接对象协议/性质典型用途
N1UE ↔ AMFNAS,非服务化注册、鉴权、会话管理信令
N2RAN ↔ AMFNGAP,非服务化终端上下文与信令传递
N3RAN ↔ UPFGTP-U,非服务化用户面数据转发
N4SMF ↔ UPFPFCP,非服务化下发转发、QoS、计费规则
N6UPF ↔ DNIP/以太网,非服务化连接外部数据网络
NnrfNF ↔ NRFHTTP/2,服务化服务注册、发现、状态订阅
NamfNF ↔ AMFHTTP/2,服务化通信、事件暴露、位置服务
NsmfNF ↔ SMFHTTP/2,服务化PDU会话管理、事件暴露
NudmNF ↔ UDMHTTP/2,服务化签约数据、鉴权向量查询
NnefAF ↔ NEFHTTP/2,服务化能力开放、事件订阅

最后提醒一点:NRF的发现结果具有时效性,NF实例可能因扩缩容、故障切换而变更地址。因此调用方应结合NRF返回的有效期做缓存,并在调用失败时重新发起发现,而不是把某个实例地址长期写死。这也是SBA相比传统静态配置更灵活、但对服务治理要求更高的原因。