《5G核心网原理与实践》实践篇 · PCF 网元功能
PCF向UDR订阅用户签约数据变更事件
爱卫生
2023年07月08日 11:24
1 背景说明:
在5G中,PCF也实现了前后端分离。全端的PCF-FE处理3GPP的各种信令,
UDR则扮演了BE的角色,提供数据的集中存储。
但是,PCF中的数据有两类。
1)动态的策略数据:
- 此类数据是PCF根据人物、时间、地点的不同制定的动态策略,例如
if UE本月累计使用量>10G;
then MBR=128kbps。
这些动态数据是不存放在后端UDR中的。
2)静态的用户数据业务签约数据。
- 此类数据有点像4G中的SPR节点(Subscription Profile Repository 用户签约数据库),存放5G用户业
务相关的开户或签约数据。
需要注意,当UDR作为PCF-BE时存储的用户签约数据,与UDR作为UDM-BE时存储的用户签约数据是完
全不同的。
UDM中存放的是基本的5G开户数据,例如是否签约5G、签约的DNN、签约的切片、缺省的Qos等。
而PCF-BE的UDR存放的是业务相关的签约数据,例如:
1)用户标识类信息:如IMSI,MSISDN,IMEI(SV);
2)用户类别信息:如集团用户、个人用户等;
3)用户级别信息:如金、银、铜牌用户;
4)用户账户状态信息:如正常、冻结等;
5)用户计费相关信息:如起帐日、付费类型等;
6)用户套餐及业务订购信息:如套餐或业务的名称、启用时间、截止时间等;
7)订购业务或套餐的优先级信息;
8)用户签约的静态配额信息,允许个性化的为用户签约用量;
- 用户签约的用量累积时间区间应包括按日、按月、按有效期内累计;
- 用户签约的用量类型应包括按流量、按时长作累积;
-用户签约的用量的累积粒度应包括按用户、按套餐、按业务、以及按APN累积;
- 用户签约的用量按照接入地类型包括按漫游、按本地用量累积;
9)用户的重定向信息等;
10)用户接收用量通知短信的号码。。。
而PCF需要从UDR获取的就是这些由BOSS发放到UDR中的用户签约数据。
例如PCF可以根据UE的等级(金银铜)来提供不同的Qos。
2 为什么PCF要向UDR订阅用户签约数据变更事件?
由于静态数据的发放是在UDR中的,因此产生变化时,PCF并不知道,这就影响到了PCF制定策略。
所以,PCF需要向UDR发起用户签约数据事件的订阅
3 PCF如何向UDR订阅用户签约数据变更事件?
PCF调用UDR的Nudr_DataRepository_Subscribe服务操作向UDR发起订阅,
在29.504的5.2.2.6 Subscribe节里定义。采用POST方法,订阅成功返回201。
如下图所示:
这些静态数据通常是通过BOSS经由业务开通网关写入到UDR中。
4 log消息实战:
PCF向UDR发起的订阅请求以及响应如下:
将第一个POST请求的body部分展开,如下:
可以看到,PCF向UDR订阅的是sm-data(放在monitoredResourceUris里),
也就是关于该UE的PDU会话的策略事件。
接下来,当UDR侧的sm-data事件发生变化时,UDR会主动向PCF发送通知。
请看下集。
规范:
PCF支持向UDR订阅策略数据变更的API在29.519中定义。
其中最主要的参数是monitoredResourceUris的取值,在Table 5.2.2-1: Resources and methods overview
中说明,可以订阅的事件包括:am-data、ue-policy-set、sm-data、UsageMonitoringInformation、
operator-specific-data、SponsorConnectivityData、bdt-data等。本例中的sm-data,全名是
SessionManagementPolicyData,表示会话管理策略数据。