好的,我们继续PCC框架的深度之旅,现在正式进入规范的“执行手册”——第6.3节,PCC规则。
深度解析 3GPP TS 23.503:6.3 Policy and charging control rule (Part 1 - PCC规则的“宪法全书”)
本文技术原理深度参考了3GPP TS 23.503 V18.9.0 (2025-03) Release 18规范,将以“庖丁解牛”的方式,逐一拆解第6.3.1节“General”中定义的核心元素——PCC规则。本文旨在为读者呈现这份PCC框架的“宪法全书”,详细解读构成一条PCC规则的每一个字段的精确含义与作用。
在前几篇文章中,我们已经清晰地了解了PCC框架的“组织架构”(网络功能)和“沟通方式”(接口)。我们知道了是谁在制定策略,又是通过什么渠道下发指令。今天,我们将聚焦于这些指令的具体内容——策略与计费控制规则(Policy and Charging Control Rule, PCC Rule)。
PCC规则是PCF思想的结晶,是SMF执行的蓝图,是UPF操作的法典。它以一种结构化的语言,精确定义了网络应该如何对待特定的数据流。可以说,读懂了PCC规则,就读懂了5G策略控制的精髓。
为了全面展示PCC规则的强大与复杂,我们将引入一个极具挑战性的场景:一座智慧体育场,正在举办万众瞩目的世界杯决赛。场内汇集了数万名观众、媒体记者、安保人员和后勤设备。
我们的新主角Alex,是一位购买了“终极VIP球迷体验”套餐的铁杆球迷。他的套餐不仅包含最佳位置的门票,还承诺提供独家的8K VR视角直播,让他能以球员的视角体验比赛,并且所有流量费用由赛事赞助商提供。
现在,让我们聚焦于为Alex的8K VR流服务的那条PCC规则,看看这份“宪法全书”是如何写就的。
1. PCC规则的本质:动态与预定义 (6.3.1 General)
首先,规范明确了PCC规则的本质:它是使能用户面检测、策略控制和计费的核心信息集合。并且,它分为两种类型。
The Policy and charging control rule (PCC rule) comprises the information that is required to enable the user plane detection of, the policy control and proper charging for a service data flow. Two different types of PCC rules exist: Dynamic rules and predefined rules. The dynamic PCC rules are provisioned by the PCF to the SMF, while the predefined PCC rules are configured into the SMF…
1. 动态PCC规则 (Dynamic PCC Rules)
- 定义:由PCF根据实时情况(如AF请求、网络状态、用户行为)动态生成,并通过N7接口下发给SMF。
- 特点:灵活、按需、生命周期与业务会话绑定。
- 场景(Alex的VR直播):为Alex的8K VR直播生成的PCC规则就是一条典型的动态规则。它在Alex打开VR应用时被创建,在应用关闭时被撤销。PCF可以根据现场网络拥塞情况,实时修改这条规则中的QoS参数。
2. 预定义PCC规则 (Predefined PCC Rules)
- 定义:预先配置在SMF中的静态规则,由一个规则标识符引用。PCF只需下发这个标识符,即可激活相应的规则。
- 特点:静态、配置开销小、适用于普适性业务。
- 场景:智慧体育场为所有观众提供一个免费的“赛事信息查询”服务。SMF中预定义了一条规则,内容是“凡是访问
info.stadium.com的流量,都允许通过,且不计费”。当任何用户(包括Alex)的PDU会话建立时,PCF只需下发指令“激活PredefinedRule-StadiumInfo”,即可为该用户开启这项服务,无需重复发送完整的规则内容。
2. PCC规则的“宪法”条文:Table 6.3.1深度拆解
规范中的“Table 6.3.1: The PCC rule information in 5GC”是本章的核心,它详细定义了一条PCC规则所能包含的所有信息字段。这张表格跨越数页,内容极其丰富。为了便于理解,我们将其中的“法条”解构为五大主题进行解读。
主题一:身份与识别 —— “我是谁,我排第几?”
这部分定义了规则的唯一性和优先级。
| 信息名称 (Information name) | 描述 (来自规范) | 场景应用 (Alex的VR规则) |
|---|---|---|
| Rule Identifier | Uniquely identifies the PCC rule, within a PDU Session. | PCF会为这条规则生成一个唯一ID,如"Alex-VR-Stream-Rule"。SMF和PCF后续就用这个ID来指代、修改或删除这条规则。 |
| Precedence | Determines the order, in which the service data flow templates are applied at service data flow detection… | PCF会为这条规则设置一个非常高的优先级(即一个很小的数值,如100)。这确保了UPF在检测数据包时,会优先用这条VR规则去匹配,然后再用其他通用规则(如优先级为2000的社交媒体规则)去匹配。 |
深度解读:Precedence(优先级)至关重要。当一个数据包可能同时匹配多条规则时(例如,VR应用也可能产生一些访问社交网络的信令),UPF会采用**优先级最高(数值最小)**的那条规则。没有正确的优先级设置,为Alex精心准备的QoS保障就可能被一条普通的上网规则所覆盖。
主题二:流量检测 —— “这条规则管的是谁?”
这部分是规则的IF条件,定义了什么样的流量会受到这条规则的管控。
| 信息名称 (Information name) | 描述 (来自规范) | 场景应用 (Alex的VR规则) |
|---|---|---|
| Service data flow template | For IP PDU traffic: Either a list of service data flow filters or an application identifier… | 这是规则的“画像”。对于Alex的VR流,这里会包含一个或多个service data flow filters,精确定义了VR视频流的IP五元组:- 源IP: Any - 目的IP: VR_Server_IP_Address - 源端口: Any - 目的端口: VR_Streaming_Port - 协议: UDP 或者,如果采用了DPI,这里可能是一个 application identifier,如"Stadium-8K-VR-App"。 |
| Mute for notification | Defines whether application’s start or stop notification is to be muted. | 默认不静音。如果PCF需要知道Alex何时开始/停止观看VR,这个字段就不会设置。UPF检测到流量的出现和消失时,SMF就会上报给PCF。 |
深度解读:Service data flow template是策略能否精准落地的关键。如果定义得太宽泛,可能会错误地将其他流量也纳入QoS保障范围;如果太狭窄,则可能漏掉部分业务流量。对于加密流量,基于IP五元组的filter可能失效,此时就需要更先进的application identifier配合UPF的DPI引擎来进行识别。
主题三:策略控制 —— “我该拿它怎么办?”
这是规则的THEN动作,是策略的核心,定义了网络对匹配到的流量应执行的操作。
| 信息名称 (Information name) | 描述 (来自规范) | 场景应用 (Alex的VR规则) |
|---|---|---|
| Gate status | The gate status indicates whether the service data flow… may pass (Gate is open) or shall be discarded (Gate is closed). | Open。允许Alex的VR数据流通过UPF。 |
| 5G QoS Identifier (5QI) | The 5QI authorized for the service data flow. | 一个代表低延迟、高可靠性视频流的标准化或动态值,例如5QI=84 (Live Video)。 |
| ARP (Allocation and Retention Priority) | The Allocation and Retention Priority for the service data flow… | 设置一个高优先级,如Priority Level=4,Pre-emption Capability=Enabled,Pre-emption Vulnerability=Disabled。这意味着在网络拥塞时,它有权抢占普通观众的网页浏览流量,且自身不能被抢占。 |
| UL/DL-guaranteed bitrate | The uplink/downlink guaranteed bitrate authorized for the service data flow. | DL-guaranteed bitrate = 120 Mbps。PCF授权给VR直播下行流的保障速率。 |
| UL/DL-maximum bitrate | The uplink/downlink maximum bitrate authorized for the service data flow. | DL-maximum bitrate = 200 Mbps。允许VR直播在网络资源充足时突发到的最高速率。 |
| Reflective QoS Control | Indicates to apply reflective QoS for the SDF. | Enabled。启用反射QoS。UPF会自动将下行数据包的QoS标记(如DSCP)“反射”到上行数据流,UE无需复杂的配置就能自动将VR控制信令发送到正确的QoS Flow上。 |
深度解读:这一组参数共同构成了对业务流的**差异化服务(QoS)**承诺。SMF在收到这些参数后,会执行我们在上一篇文章中详述的“QoS Flow绑定”和资源协商流程,为Alex的VR直播铺设一条专用的“网络快车道”。
主题四:计费与用量 —— “这笔账该怎么算?”
这部分定义了流量的商业属性,确保每一比特流量都有明确的归属和计量方式。
| 信息名称 (Information name) | 描述 (来自规范) | 场景应用 (Alex的VR规则) |
|---|---|---|
| Charging method | Indicates the required charging method for the PCC rule. Values: online or offline or neither. | Offline。对于赞助数据,通常采用离线计费,即先使用后结算。 |
| Charging key | The charging system (CHF) uses the charging key to determine the tariff to apply… | 一个特定的值,如CK_Stadium_Sponsor_A,指向赛事赞助商的计费账户。 |
| Sponsor Identifier | An identifier, provided from the AF which identifies the Sponsor… | 包含赞助商的ID,例如"WorldCup_Official_Telecom_Partner"。 |
| Application Service Provider Identifier | An identifier… which identifies the Application Service Provider… | 包含VR直播服务提供商的ID。 |
深度解读:Sponsor Identifier和Charging Key的组合,是实现“赞助数据(定向免流)”商业模式的关键。SMF会指示UPF,为所有匹配这条规则的流量,在生成用量报告时,都打上CK_Stadium_Sponsor_A这个标签。CHF收到报告后,就知道这笔账应该记在赞助商名下,而不是Alex的个人账户。
主题五:高级功能与增强 —— “还有什么特殊指令?”
PCC规则还包含大量可选字段,用于支持各种高级和新兴的业务场景。
| 信息名称 (Information name) | 描述 (来自规范) | 场景应用 (Alex的VR规则) |
|---|---|---|
| Traffic steering policy identifier(s) | Reference to a pre-configured traffic steering policy at the SMF… | PCF可能会包含一个标识符,如"Video_Edge_Optimization"。SMF据此指示UPF,将Alex的VR流量导向部署在体育场边缘的视频增强服务器(MEC),进行转码或缓存,以进一步降低时延、提升画质。 |
| QoS Monitoring parameter(s) | Indicates the QoS Monitoring parameter(s) for which QoS Monitoring can be enabled… | PCF可以要求SMF监控这条VR流的实时包延迟。如果PCF从SMF收到的监控报告显示延迟超标,它可以立即采取行动,比如调整QoS参数或通知AF。 |
| MA PDU Session Control | This part defines information supporting control of MA PDU Sessions. | 如果Alex的VIP套餐支持5G+Wi-Fi双连接(ATSSS),这里会包含具体的分流/切换策略。例如,Steering Mode = "Smallest-Delay",指示UE和UPF始终选择当前延迟最低的路径(5G或Wi-Fi)来传输VR流。 |
| Redirect Destination | Controlled Address to which the service data flow is redirected when redirect is enabled. | 如果Alex的VIP套餐体验时间结束,PCF可以修改这条规则,将Gate status设为Closed,并设置Redirect=Enabled,Redirect Destination=...,将他重定向到续费页面。 |
深度解读:这些高级功能字段极大地扩展了PCC规则的能力边界,使其不仅仅是简单的QoS和计费控制,而是成为了一个能够实现业务链、智能运维、多网协同等复杂功能的强大工具。
6.3.2 规则的操作:激活、修改与停用
规范在6.3.2节中,定义了对PCC规则的生命周期管理操作,包括激活、修改和停用。PCF可以在PDU会话的任何时刻,对动态PCC规则执行这些操作。
一个特别有趣的概念是“延迟操作(deferred operations)”。
A PCC rule may have either a single deferred activation time, or a single deferred deactivation time or both.
场景应用:赛事赞助商提供了一个“中场休息15分钟,所有观众免费高速上网”的活动。PCF可以在比赛开始时,就向所有用户的SMF下发一条针对全网流量的高QoS PCC规则,并设置:
- Deferred Activation Time:
中场休息开始时间 - Deferred Deactivation Time:
中场休息结束时间
SMF收到这条规则后,会将其“暂存”。当中场休息开始的时刻一到,SMF会自动激活这条规则,所有观众享受到高速网络。15分钟后,SMF又会自动停用它。这种“定时任务”机制,大大减轻了PCF在某个时刻需要处理海量并发请求的压力,实现了策略的平滑、准时部署。
FAQ
Q1:一条PCC规则中可以不包含QoS或计费信息吗?
A1:可以。PCC规则的字段大多是可选的(Conditional)或Mandatory with exceptions。一条规则可以只包含SDF Template和Gate Status,实现简单的“允许/禁止”访问控制。也可以只包含计费信息,用于对某个业务进行特殊的计费,而其QoS则遵循默认的QoS Flow。PCC规则的灵活性就在于其模块化的设计,可以根据实际业务需求,按需组合不同的控制“积木”。
Q2:SMF能否拒绝或修改PCF下发的PCC规则? A2:SMF作为执行者,原则上不能修改PCF下发的动态PCC规则的策略意图。但是,如果SMF在执行过程中遇到问题(例如,RAN资源不足,无法满足规则中的GBR要求),它会拒绝激活这条PCC规则,并将失败的原因报告给PCF。PCF需要根据失败原因,决定是修改规则后重试,还是放弃该策略。
Q3:什么是“Precedence for TFT packet filter allocation”?它和规则的Precedence有什么区别? A3:“Rule Precedence”决定了在UPF进行**业务流检测(SDF Detection)时的匹配优先级,解决的是“一个数据包应该适用哪条PCC规则”的问题。而“Precedence for TFT packet filter allocation”则是在与EPS(4G)互通的场景下,用于决定上行包过滤器(UL TFT Packet Filter)**在分配给UE时的优先级。因为终端侧能支持的过滤器数量有限,当需要下发的过滤器总数超过UE能力时,这个优先级就决定了哪些更重要的过滤器被优先分配。它解决的是UE侧资源限制的问题。
Q4:PCC规则中的Reflective QoS(反射QoS)是如何工作的?
A4:反射QoS是一种简化UE侧QoS配置的机制。当PCF在一个PCC规则中启用了Reflective QoS Control,SMF会指示UPF为匹配该规则的下行数据包打上一个特殊的标记(RQI - Reflective QoS Indication)。当UE收到带有RQI标记的下行数据包后,它会自动“领悟”到:“原来这个QoS Flow是支持反射QoS的!”。之后,当UE需要发送与该业务相关的上行数据时(例如,VR应用的控制信令),它就会自动创建一个上行包过滤器,并将这些上行数据包也发送到同一个QoS Flow对应的无线承载上,而无需网络侧再显式地为其下发上行过滤器。
Q5:PCC规则是如何支持ATSSS(多接入流量导向、切换与分离)的?
A5:通过PCC规则中的MA PDU Session Control(多接入PDU会话控制)信息块。当PCF希望对一个多接入会话(如5G+Wi-Fi)中的某个业务流进行控制时,它会在这部分信息中指定:
- Steering Functionality:使用哪种多接入技术(如MPTCP, ATSSS-LL)。
- Steering Mode:采用哪种分流策略,如“Active-Standby”(主备)、“Load-Balancing”(负载均衡)、“Smallest-Delay”(最低延迟)。
- Threshold Values:如果采用基于性能的策略(如最低延迟),这里会定义具体的延迟阈值。 SMF收到这些指令后,会将其转化为下发给UE的ATSSS规则和下发给UPF的N4规则,从而实现对跨网流量的精细化调度。