5G核心网学习平台
SMF 实践篇 #06

《5GC实践篇》之SMF篇(13)网元选择之选择和AMF相同的PCF

《5G核心网原理与实践》实践篇 · SMF 网元功能

《5GC实践篇》之SMF篇(13)网元选择之选择和AMF相同的PCF

爱卫生

2023年03月26日 21:27

2.5.2 选择和AMF相同的PCF

一 概述

在5G网络中实现了移动性管理和会话管理的分离,那策略这边也拆分成了AM-Policy和SM-Policy,这意味着在5G注册

流程中,AMF需要先选择一个PCF来获取am-policy。SMF在后续的PDU会话建立流程中也需要选择一个PCF来获取

sm-policy。那问题来了,SMF可以选择和AMF相同的PCF吗?规范中的答案是可以的,相关章节是TS23501的6.3.7.1

PCF discovery and selection for a UE or a PDU Session。

规范原文是:“The selected PCF instance for serving the UE and the selected PCF instance for serving a PDU

session of this UE may be the same or may be different.”(这句话前半段提到的the selected PCF instance for serving

the UE就是指的为UE提供am-policy和ue-policy的PCF,后面那个PCF是指提供sm-policy的PCF。)

PCF的选择原则在规范中定义了8个查询条件,其中条件e指明了可以选择和AMF相同的PCF。如下:

Q1:SMF怎么来选择和AMF一样的PCF呢?

A1:为了保证SMF能选择和AMF相同的PCF,AMF要把自己在注册流程中选择的PCF告诉SMF。AMF通过调用SMF

提供的Nsmf_PDUSession_CreateSMContext Request服务,将自己选择的PCF ID告诉SMF。这个是TS23502中PDU

会话建立流程的第3步,如下图:

关于第3步的文字描述是这样的:

由于调用的是SMF的服务,找到SMF的服务规范TS29502中查询具体的参数说明。在6.1.6.2.2 Type:

SmContextCreateData定义。如下:

可以看出,pcfId的数据类型是NFinstanceId,也就是PCF的实例编号。接下来SMF可以通过查询NRF来获取PCF的详

细信息(pcfinfo)。

同时可以看出,该参数是一个可选参数。也就是AMF可以提供,也可以不提供。这个本质上给了运营商灵活性。如果

运营商希望AMF、SMF选择的PCF一致,就会要求AMF提供。运营商可以根据自己的业务需要来决定。例如运营商如

果认为am-policy、ue-policy、sm-policy都由归属地PCF来提供(而不是拜访地PCF),那就可以让AMF和SMF选择相

同的PCF。

二 检查点与消息举例

以PDU会话建立流程为例。

首先检查AMF发过来的Nsmf_PDUSession_CreateSMContext Request请求消息是否包含了PCF ID。该请求采用Post

方法,request-uri部分应类似下图这样的:

进一步检查其中的JSON Data部分,应包含PCF ID,应类似下图这样的:

第二步,检查SMF是否向NRF发起了基于PCFID的查询,采用Get方法,request-uri如下所示:

需要检查第二步中的target-nf-instance-id取值和第一步AMF发过来的PCFID的取值相同。

第三步检查NRF是否根据PCFID查到了对应的PCF信息,并返回了PCF的详细信息。

第四步就是要检查SMF是否向NRF返回的PCF发起了N7会话的建立,向该PCF请求sm-policy。

← 返回 SMF 实践篇