本文聚焦 TS 23.501 §5.6.4、TS 23.502 §4.3.4/§4.3.5.2、TS 29.244(N4 PFCP)与 TS 23.548(R17 边缘计算增强),拆解 SMF 在已建立 PDU 会话中动态插入 上行分类器(Uplink Classifier, UL CL) 与本地 PDU 会话锚点(L-PSA)的完整信令链与 N4 规则下发细节。
5G 系统要把一个 UE 的部分业务流量"就近"卸载到边缘数据网络(Edge DN)的应用服务器(EAS),同时保持另一些业务(如互联网)仍走中央锚点,最经济的方法不是断开 PDU 会话重建,而是在用户面数据路径中插入一个分流点——这就是 UL CL。
UL CL 是 UPF 支持的一种功能(functionality),它依据 SMF 下发的业务流过滤器(SDF Filter,基于五元组、QFI、UE IP 等)对上行报文进行匹配,并把匹配/不匹配的报文分别转发到不同的 PDU 会话锚点(PSA)。其设计目标三句话可概括:
需要特别区分三个易混概念:UL CL(按 SDF 过滤分流,IPv4/IPv6 均可)、Branching Point / BP(仅 IPv6 Multi-Homing,按 IPv6 Prefix 分流,每个 Prefix 对应一个 PSA)、SSC Mode 3 PSA 重选(先建新 PSA 再删旧 PSA,会改变 N3/N9 拓扑但 UE IP 不变,本质是锚点迁移而非"并行分流")。三者都涉及"插入/移除 UPF",但触发条件、分流粒度与会话连续性语义完全不同(详见下文对比表)。
flowchart LR
subgraph 插入前
UE1[UE] -->|N3| PSA1A[PSA1 中央锚点\n分配UE IP] -->|N6| INET1[Internet/中央DN]
end
UE1 -.同PDU会话.-> X((插入UL CL))
subgraph 插入后
UE2[UE] -->|N3| ULCL[UL CL\n分流功能]
ULCL -->|匹配本地业务\nN9| LPSA[L-PSA 边缘锚点] -->|N6| EAS[本地EAS/边缘DN]
ULCL -->|其余业务\nN9| PSA1B[PSA1 中央锚点] -->|N6| INET2[Internet]
end
TS 23.501 §5.6.4 定义了 SMF 决定插入/移除 UL CL(或 BP)的三类触发条件,工程实践中通常由不同网元发起:
Nnef_TrafficInfluence_Create,TS 29.522)或直接经 PCF(Npcf_PolicyAuthorization,TS 29.514)下发 AF-Service-Identifier、DNAI(Data Network Access Identifier)、N6 Traffic Routing Rule、Application Relocation Information 等,PCF 转译为 PCC Rule,SMF 收到后据此选择 L-PSA 与 UL CL 位置。R17 起,TS 23.548 引入 EASDF(Edge Application Server Discovery Function),从根本上改变了"UE 如何知道该连哪个边缘服务器"的问题:EASDF 作为 UE 的 DNS 服务器(通过 SMF 下发的 DNS Server Address 配置),对 UE 的应用域名查询返回与 UE 当前位置/边缘拓扑匹配的本地 EAS IP。UE 拿到本地 EAS IP 后,发往该 IP 的流量自然被 UL CL 的 SDF Filter 命中、卸载到本地——这是 UL CL 与应用层协同的"上层闭环"。
下面以"AF 经 NEF/PCF 触发、SMF 在已建立 PDU 会话中插入独立 UL CL UPF 与 L-PSA"为典型场景,画出从应用触发到数据分流生效的全链路。该流程对应 TS 23.502 §4.3.5.2(SMF initiated PDU Session Modification)与 TS 23.548 的边缘计算信令增强。
sequenceDiagram
autonumber
participant AF as AF<br/>(应用功能)
participant NEF as NEF
participant PCF as PCF
participant SMF as SMF
participant LPSA as L-PSA<br/>(边缘锚点)
participant ULCL as UL CL<br/>(分流UPF)
participant PSA1 as PSA1<br/>(中央锚点)
participant AMF as AMF
participant RAN as (R)AN
participant UE as UE
AF->>NEF: Nnef_TrafficInfluence_Create<br/>(AF-Service-Id, DNAI, App Relocation Info)
NEF->>PCF: Npcf_AMPolicy… / SMPolicyAssociationUpdate<br/>(Traffic Routing Influence)
PCF->>SMF: Npcf_SMPolicyControlUpdate<br/>(PCC Rule + Traffic Routing Policy + DNAI)
Note over SMF: 决策:选择L-PSA、选择UL CL UPF、<br/>确定业务流过滤器(SDF Filter)
SMF->>LPSA: N4 PFCP Session Establishment Request<br/>(建L-PSA的PDR/FAR, 分配L-PSA侧N9 F-TEID)
LPSA-->>SMF: N4 PFCP Session Establishment Response<br/>(L-PSA F-TEID)
SMF->>ULCL: N4 PFCP Session Modification Request<br/>(新建本地分流PDR + 两条FAR)
Note right of ULCL: PDR: SDF Filter=本地EAS IP段<br/>FAR-Local: FORW→L-PSA<br/>FAR-Central: FORW→PSA1
ULCL-->>SMF: N4 PFCP Session Modification Response
SMF->>PSA1: N4 PFCP Session Modification Request<br/>(更新下行FAR, 指向UL CL的F-TEID)
PSA1-->>SMF: N4 PFCP Session Modification Response
SMF->>AMF: Namf_Communication_N1N2MessageTransfer<br/>(PDU Session Modification Command + N2 SM Info)
AMF->>RAN: N2 PDU Session Resource Modify Request<br/>(含UL NG-RAN TNL info if 需新建N3)
RAN->>UE: RRC Reconfiguration<br/>(若有新N3隧道则更新)
RAN-->>AMF: N2 PDU Session Resource Modify Response
UE-->>RAN: RRC Reconfiguration Complete
Note over UE,RAN: 数据路径就绪,开始分流
UE->>RAN: 上行报文(目标=EAS IP)
RAN->>ULCL: N3 上行报文
ULCL->>LPSA: 命中本地Filter→N9→L-PSA→N6→本地EAS
ULCL->>PSA1: 其余报文→N9→PSA1→中央DN
关键工程要点解读:
F-TEID 要指向对端 L-PSA 的 F-TEID),这是"先下游后上游"的依赖顺序,避免出现短暂的黑洞转发。UL CL 之所以能"分流",本质是 SMF 通过 N4(PFCP,TS 29.244)向 UPF 下发了两组规则:用于识别业务的 PDR(Packet Detection Rule) 与用于转发决策的 FAR(Forwarding Action Rule)。理解 PDR/FAR 的 IE 组成,是抓包排错的核心能力。
flowchart TB
subgraph PDR["PDR (业务识别)"]
PD1[PDR ID]
PD2[Precedence 优先级]
subgraph PDI["PDI (包检测信息)"]
PI1[Source Interface<br/>= ACCESS/Core]
PI2[F-TEID<br/>本端接收隧道]
PI3[SDF Filter<br/>五元组/UE IP Filter]
PI4[QFI]
end
PD3[Outer Header Removal<br/>剥离GTP-U]
end
subgraph FARLocal["FAR-Local (本地转发)"]
FL1[FAR ID]
FL2[Apply Action = FORW]
subgraph FP1["Forwarding Parameters"]
F1[Destination Interface<br/>= CORE/ACCESS]
F2[Network Instance<br/>= 本地DN]
F3[F-TEID<br/>对端L-PSA隧道]
end
end
subgraph FARCen["FAR-Central (中央转发)"]
FC1[FAR ID]
FC2[Apply Action = FORW]
subgraph FP2["Forwarding Parameters"]
C1[Destination Interface<br/>= CORE]
C2[F-TEID<br/>对端PSA1隧道]
end
end
PDR -- 匹配本地Filter --> FARLocal
PDR -- 不匹配/默认 --> FARCen
UL CL 节点的规则模型要点:
| IE 名称 | 所属规则 | 作用 | UL CL 场景取值示例 |
|---|---|---|---|
| PDR ID | PDR | 规则唯一标识 | 本地上行 PDR=10,默认上行 PDR=20 |
| Precedence | PDR | 匹配优先级(值小优先) | 本地业务=100,默认=200 |
| Source Interface | PDI | 标识接收接口方向 | ACCESS(收 UE 上行)/CORE(收 PSA 下行) |
| F-TEID(PDI 内) | PDI | 本端接收隧道端点 | UL CL 的 N3 接收 F-TEID |
| SDF Filter | PDI | 业务流五元组/IP 段过滤 | 目标 IP=本地 EAS 段 / 应用 Server IP |
| Apply Action | FAR | 转发动作 | FORW(转发)/DROP/BUFF/DUPT |
| Destination Interface | Forwarding Param | 转发目标方向 | 本地→CORE(L-PSA);下行→ACCESS(AN) |
| F-TEID(Forwarding 内) | Forwarding Param | 对端接收隧道端点 | L-PSA 或 PSA1 的 N9 接收 F-TEID |
| Network Instance | Forwarding Param | 目标 DN 实例(DNN) | 本地 DNN(如 mec.local) |
| QFI | QER/PDI | 5QI 与 QoS 流映射 | 本地低时延业务=85(URLLC) |
| Outer Header Removal | PDR | 是否剥离 GTP-U | 上行=剥离后做 IP 五元组匹配 |
| 维度 | UL CL(上行分类器) | Branching Point(分支点) | SSC Mode 3 PSA 重选 |
|---|---|---|---|
| 适用 IP 类型 | IPv4 / IPv6 均可 | 仅 IPv6 Multi-Homing | IPv4 / IPv6 均可 |
| 分流粒度 | 按 SDF Filter(五元组/IP) | 按 IPv6 Prefix(每 Prefix 一 PSA) | 不分流,整体迁移锚点 |
| 同一时刻 PSA 数 | 多个(中央+本地并行) | 多个(每 Prefix 一 PSA) | 新旧两个 PSA 临时并存,最终只剩新 PSA |
| UE IP 是否变化 | 否(主锚点 PSA1 分配) | 多个 IPv6 Prefix 并存(多归属) | 否(重选前后 IP 可保持) |
| 业务连续性 | 长连接不断,按需分流 | 多 Prefix 并行 | 先建新后删旧,会话连续 |
| 典型场景 | MEC 本地分流、LADN | IPv6 多归属多 DN | UE 移动致锚点不再最优 |
| 触发主体 | AF/NEF、SMF 配置、UE 移动 | UE 多归属需求、PCC | DNAI 变化、SSC mode=3 |
| TS 章节 | TS 23.501 §5.8.2.6 / §5.6.4 | TS 23.501 §5.8.2.6 | TS 23.501 §5.6.9 / §5.15.5.3 |
三者并非互斥:一个 PDU 会话既可用 UL CL 做本地分流,也可能在后续移动中触发 SSC Mode 3 重定位;而 BP 本质是 UL CL 在 IPv6 多归属下的特化形式(用 Prefix 代替五元组做分流判定)。
从控制面 PDU 会话状态看,UL CL 插入并不改变 PDU 会话主状态(始终 ACTIVE),改变的是 Session Management 上下文内的 User Plane 拓扑。下图刻画了从"单 PSA 直连"到"UL CL + 双 PSA 并行分流"的状态/拓扑转换:
stateDiagram-v2
[*] --> 单PSA: PDU会话建立(PSA1, UE获IP)
单PSA --> UL_CL_插入中: 触发条件达成<br/>(AF/NEF/PCF/DNAI变化)
state UL_CL_插入中 {
[*] --> 建L_PSA
建L_PSA --> 配UL_CL: 拿到L-PSA F-TEID
配UL_CL --> 改PSA1下行FAR
改PSA1下行FAR --> N1N2下发
}
UL_CL_插入中 --> 双PSA分流: 数据路径就绪
双PSA分流 --> 双PSA分流: 持续按SDF分流<br/>(本地↔L-PSA, 中央↔PSA1)
双PSA分流 --> UL_CL_移除中: 业务结束/UE离开区域
UL_CL_移除中 --> 单PSA: 删L-PSA与UL CL规则<br/>恢复PSA1直连
双PSA分流 --> Edge_重定位: DNAI变化(换边缘站点)
Edge_重定位 --> 双PSA分流: 迁移UL CL/L-PSA到新DNAI
工程意义:由于主状态不变,UL CL 的插入/移除对 UE 的 NAS 层几乎"无感"(仅收到一条 PDU Session Modification Command 作通告),真正的复杂性全在 N4 侧——这也是为何 UL CL 故障 90% 是 N4 规则配置问题而非信令流程问题。
在 N4 接口(PFCP,通常 UDP/8805)抓包,定位 PFCP Session Modification Request,关注以下特征即可判定是一次 UL CL 插入:
Apply Action = FORW,Forwarding Parameters 中 Network Instance 指向本地 DNN、F-TEID 指向新 L-PSA;在 N2 接口(NGAP)抓包,看是否有 PDU Session Resource Modify 携带新的 UL NG-RAN TNL Information——若有,说明部署了独立 UL CL UPF,新建了 N3 隧道;若无,说明 UL CL 与 PSA1 合一部署。
DUPT(Duplicate)误把同一报文发往两个 PSA;正常分流是按 Filter 二选一,不是复制。TS 23.548 在 R18 进一步完善了边缘计算架构,与 UL CL 强相关的是:
Q1:UL CL 插入会改变 UE 的 IP 地址吗? A:不会。UE 的 IP 始终由主锚点 PSA1 在 PDU 会话建立时分配。UL CL 与 L-PSA 只是在数据路径上"并行"新增一个分支,共享同一 UE IP,因此 TCP 长连接保持不断,这是 UL CL 相对 SSC Mode 2/3 的关键业务连续性优势。
Q2:UL CL 和 Branching Point 到底什么区别? A:核心区别在分流判据与 IP 类型。UL CL 用 SDF Filter(五元组/IP 段)判分流,IPv4/IPv6 都支持;BP 仅用于 IPv6 Multi-Homing,按 IPv6 Prefix 判分流,每个 Prefix 对应一个 PSA。功能上 BP 可视为 UL CL 在多归属场景的特化。
Q3:插入 UL CL 后,(R)AN 与核心网之间的 N3 隧道会变吗? A:取决于部署形态。若 UL CL 与 PSA1 合一部署,N3 不变;若 UL CL 是独立部署的新 UPF,则需新建 (R)AN↔UL CL 的 N3 隧道,N2 携带新的 UL NG-RAN TNL Address 并触发 RRC Reconfiguration。
Q4:本地业务走了中央,最可能的原因是什么? A:按概率排序:① 本地 PDR 的 SDF Filter 与实际业务流不匹配(目标 IP/端口写错);② 本地 PDR 的 Precedence 优先级不够高,被默认 PDR 先匹配;③ FAR 配置成 DUPT(复制)而非按需分流。抓 N4 看报文实际命中的 PDR ID 即可定位。
Q5:AF 如何告诉 5GC 该把流量卸到哪个边缘站点?
A:AF 通过 NEF(Nnef_TrafficInfluence)或直接经 PCF(Npcf_PolicyAuthorization)下发 DNAI + AF-Service-Identifier + N6 Traffic Routing Rule。DNAI 是 5GC 内部对边缘接入点的标识,SMF 据 DNAI 选择对应 L-PSA/UL CL 拓扑,PCF 把应用语义转译为含 SDF Filter 的 PCC Rule 下发。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
