本文技术原理深度参考了3GPP TS 23.501 V18.9.0 (2025-03) Release 18规范中,关于“6.2.3 UPF (User Plane function)”的核心章节,旨在为读者提供一个5G用户面功能(UPF)如何作为数据平面的“瑞士军刀”,执行从路由、检测到策略执行等一系列复杂任务,从而将5G核心网的控制指令转化为真实的用户数据流动的全景视图。本文是解读“6 Network Functions”系列的第二部分。

深度解析 3GPP TS 23.501:6.2.3 UPF (用户面功能)

欢迎来到“解构5G核心网”的NF深度解析系列。在上一篇文章中,我们详细解构了5G核心网的“守门人”与“交通枢纽”——AMF。今天,我们将深入到网络的“引擎室”和“高速公路系统”,探索真正处理我们每一个比特数据的“劳模”和“执行者”——UPF(User Plane Function,用户面功能)

如果说AMF和SMF是5G核心网的“大脑”和“神经系统”,负责决策和指挥,那么UPF就是这个庞大系统的“肌肉”和“骨骼”。它是C/U(控制面/用户面)彻底分离架构的核心体现,是一个高度可编程、可分布式部署的数据转发引擎。您观看的每一帧视频、发送的每一条信息、进行的每一次云游戏交互,其数据包都在UPF中被检测、路由、加速和管理。UPF的性能、功能和部署位置,直接决定了5G业务的最终体验。

为了全面展现UPF的多面手角色,让我们再次回到**“未来城市(Future City)”的场景。今天的主角是小晴**,她正驾驶着她的智能网联汽车,从市中心出发,前往郊区的智慧工业园区参加一个XR技术发布会。这趟旅程将穿越多种网络环境,触发多种应用场景,完美地展示了UPF在不同角色下的强大能力。

  • 市中心(Central UPF): 小晴在车上观看运营商合作的“5G-Flix”高清视频,享受免流量服务。

  • 高速公路(Anchor UPF): 车辆高速移动,UPF需要作为移动性锚点,保证连接不中断。

  • 智慧交叉路口(Edge UPF as UL CL): 车辆的V2X(车路协同)应用被激活,需要与路边的边缘计算服务器进行超低时延的通信。

  • 到达园区停车场(Buffering): 车辆停泊,进入休眠状态,但需要接收远程下发的软件更新包。

我们将通过这趟智能驾驶之旅,逐一拆解UPF是如何在SMF的指挥下,扮演好锚点、路由器、策略执行点、QoS保障器、数据缓存区等多种角色的。


1. UPF的核心身份:数据平面的多面手

The User plane function (UPF) includes the following functionality. Some or all of the UPF functionalities may be supported in a single instance of a UPF

UPF是一个纯粹的用户面实体,它的所有行为都受到来自SMF通过N4接口下达的指令控制。规范开宗明义地指出,一个UPF实例可以根据需要,支持以下多种功能中的一个或多个。这凸显了UPF设计的灵活性和可编程性。


2. 角色一:“定海神针” - 移动性锚点

  • Anchor point for Intra-/Inter-RAT mobility (when applicable).

这是UPF最基础,也是最重要的角色之一。在一个PDU会话的生命周期中,无论UE如何移动,只要不发生IP地址的变更,就必须有一个固定的UPF作为会话的锚点(PDU Session Anchor, PSA)

  • IP地址的归属: UE的IP地址就是由这个PSA UPF分配或从外部网络获取的。所有进出该PDU会话的、去往数据网络(DN)的流量,都必须经过这个PSA。

  • 移动性下的稳定性: 当UE发生移动时(例如,从一个基站切换到另一个基站),即使其接入的UPF(I-UPF)发生了变化,只要PSA不变,其IP地址就不会改变,从而保证了上层业务的连续性。

场景代入: 小晴的汽车在城市中行驶,她的PDU会话始终由位于城市核心机房的一个**中央UPF(Central-UPF)**作为PSA。

  • 当小晴在A区时,数据路径是:汽车 gNB-A Central-UPF 互联网

  • 当汽车行驶到B区,切换到gNB-B时,数据路径变为:汽车 gNB-B Central-UPF 互联网

  • 全程Central-UPF作为锚点保持不变,小晴的视频会议IP地址不变,业务无中断。


3. 角色二:“智能分拣员” - 包检测与策略执行

UPF不仅仅是一个简单的路由器,它更是一个智能的“包检测与分拣中心”,能够深度识别流量并执行精细化的策略。

  • Packet inspection (e.g. Application detection based on service data flow template and the optional PFDs received from the SMF in addition).
  • User Plane part of policy rule enforcement, e.g. Gating, Redirection, Traffic steering).

3.1 包检测 (Packet Inspection)

UPF根据SMF下发的**PDR(包检测规则)**来识别流量。PDR可以包含非常丰富的信息:

  • 五元组: 源/目的IP、源/目的端口、协议号。

  • 应用ID: SMF可以从NEF获取应用的PFD(Packet Flow Description),并指示UPF进行DPI(深度包检测),直接识别出这是“抖音”的流量还是“微信”的流量。

  • 隧道信息: GTP-U隧道头中的QFI(QoS Flow Identifier)。

3.2 策略执行 (Policy Enforcement)

一旦PDR匹配成功,UPF就会执行与之关联的FAR(转发行为规则)QER(QoS执行规则)URR(使用情况上报规则)

  • Gating (门控): 决定是“放行”还是“丢弃”这个数据包。

  • Redirection (重定向): 将流量重定向到一个特定的服务器,例如,重定向到运营商的计费提醒页面。

  • Traffic Steering (流量导向): 将流量导向到不同的路径或接口。

场景代入: 小晴正在观看“5G-Flix”的免流量视频。

  1. SMF下发规则: SMF从PCF处得知“5G-Flix”是免流业务,于是向UPF下发了一条特殊的PDR,用于识别来自“5G-Flix”服务器IP地址和端口的流量。与此PDR关联的URR指示:“对此流量进行统计,但标记为‘免计费’”。

  2. UPF执行检测: 当“5G-Flix”的视频数据包到达UPF时,UPF的检测引擎匹配到了这条PDR。

  3. UPF执行上报: UPF根据URR的指令,对这部分流量进行单独计数,并在上报给SMF的Usage Report中,明确地将这部分流量与小晴的其他付费流量区分开来。


4. 角色三:“交通调度员” - 路由与转发

这是UPF最核心的用户面功能,负责将数据包高效、准确地送到目的地。

  • Packet routing & forwarding (e.g. support of Uplink classifier to route traffic flows to an instance of a data network, support of Branching point to support multi-homed PDU Session, support of traffic forwarding within a 5G VN group (UPF local switching, via N6, via N19)).

这是实现边缘计算和业务分流的关键。一个UPF可以被SMF(或I-SMF)配置为UL CL或BP,它能将同一个PDU会话的流量“一分为二”:

  • 一部分流量继续走向远端的中心PSA,访问互联网。

  • 另一部分流量则被“分叉”出去,通过一个本地的N6接口,直接访问部署在边缘的应用服务器。

场景代入:

当小晴的汽车驶近智慧交叉路口时,车载的V2X应用被激活。

  1. SMF/I-SMF决策: 管理该区域的I-SMF(或主SMF)收到来自PCF的指令,需要在本地疏导V2X流量。

  2. UPF扮演UL CL: I-SMF选择路口的一个**边缘UPF(Edge-UPF)**作为UL CL。

  3. 流量分流:

    • Edge-UPF收到来自汽车的所有上行数据。

    • 它根据PDR识别出哪些是V2X数据(例如,目标端口为特定UDP端口)。

    • 对于V2X数据,它执行一个特殊的FAR,将其从本地N6接口转发给路侧的交通信号灯控制器。

    • 对于小晴正在听的在线音乐(非V2X数据),它执行默认的FAR,将其通过N9隧道继续转发给远端的中心PSA UPF。

4.2 5G VN组内的本地交换

当多个UE属于同一个5G VN组(虚拟网络/局域网),并且都锚定在同一个UPF上时,这个UPF就可以扮演二层交换机的角色,实现这些UE之间的流量直接在UPF内部转发,无需绕行到数据网络。这在5.43节的卫星本地交换场景中已有详细描述。


5. 角色四:“仓库管理员” - 下行数据缓存

当UE进入省电的CM-IDLE状态时,网络如何处理发给它的下行数据?UPF在此扮演了“临时仓库”的角色。

  • Downlink packet buffering and downlink data notification triggering.

流程:

  1. UE进入IDLE: 小晴停车后,手机与基站的RRC连接释放,AMF通知SMF,SMF再通知UPF,UE的N3隧道已不可用。

  2. 数据到达UPF: 此时,小晴的朋友给她发来一张高清图片。数据包到达了作为PSA的Central-UPF。

  3. UPF缓存并通知: UPF发现通往UE的N3隧道不存在,于是触发Buffering Action Rule (BAR),开始缓存这些数据包。同时,它立即向SMF发送一个**Downlink Data Notification**(下行数据通知)消息。

  4. 网络寻呼UE: SMF收到通知后,立即请求AMF对小晴进行寻呼。

  5. 数据下发: 小晴的手机被唤醒,重建RRC和N3隧道。UPF随即将缓存的数据包通过新建立的隧道下发给小晴。


6. 其他高级能力

除了以上核心角色,UPF还具备一系列高级功能,以支持5G的各种复杂场景:

  • QoS处理与标记: 执行速率限制(QER),并在GTP-U头中打上QFI标记,在IP头中打上DSCP标记,将QoS策略在数据平面上真正落地。

  • IPUPS(Inter PLMN UP Security): 在漫游场景下,作为PLMN边界的UPF,负责对跨运营商的N9隧道进行安全保护。

  • ATSSS Steering: 在ATSSS场景下,执行SMF下发的MAR(Multi-Access Rule)规则,负责在3GPP和non-3GPP两条路径上进行流量分流和切换。

  • PDU Set处理: 在XR场景下,识别、标记并对齐PDU Set,保障一整帧数据的完整投递。

7. FAQ

Q1: UPF是硬件还是软件?

A:

UPF是一个网络功能,它可以以多种形式实现。在5G时代,它越来越多地以软件的形式出现。

  • 传统方式: 在早期部署中,UPF可以是一个专用的、高性能的硬件网关设备。

  • 虚拟化/云原生方式(主流): 如今,UPF更多的是一个运行在通用服务器(COTS - Commercial Off-The-Shelf)上的虚拟化网络功能(VNF)或容器化网络功能(CNF)。这种软件化的部署方式,使得UPF可以非常灵活地部署在网络的任何位置——从中心数据中心,到区域机房,再到企业园区,甚至到卫星上。

Q2: 一个PDU会话可以经过多个UPF吗?

A:

是的。在一个PDU会话的用户面路径上,可以串联多个UPF,它们扮演不同的角色。

  • PSA UPF (PDU Session Anchor): 每个PDU会话有且只有一个。它是IP地址的锚点,是与数据网络连接的网关。

  • I-UPF (Intermediate UPF): 可以有0个、1个或多个。它位于UE和PSA之间,通常用于支持移动性(如I-SMF场景)或实现流量分流(如UL CL/BP)。

例如,在小晴的智慧路口场景中,数据路径是:UE RAN Edge-UPF (作为UL CL) Central-UPF (作为PSA) DN。这个路径就经过了两个UPF。

Q3: UPF是如何知道它应该执行什么操作的?

A:

UPF的所有行为都严格遵循来自SMF通过N4接口下发的指令。UPF本身没有任何“智能”,它是一个纯粹的、高速的“执行引擎”。SMF通过N4会话,向UPF下发一组规则(PDR, FAR, QER, URR, BAR, MAR等)。UPF的工作就是:

  1. 匹配 (Match): 对每一个流经的数据包,根据PDR列表进行匹配。

  2. 执行 (Action): 一旦匹配成功,就执行与该PDR关联的一系列动作(转发、丢弃、缓存、计数、标记等)。

这种“控制与执行分离”的模式,使得UPF可以被做得非常高效,而复杂的业务逻辑则全部集中在SMF中,便于网络的升级和新业务的引入。

Q4: 什么是N6接口和N9接口?它们和N3接口有什么区别?

A:

这三个都是承载用户面数据的GTP-U隧道接口。

  • N3接口: 连接RAN(基站)UPF。它是承载UE与核心网之间所有用户数据的“第一跳”。

  • N6接口: 连接PSA UPF数据网络(DN)。它是用户数据离开5G核心网,进入互联网或企业专网的“最后一跳”。

  • N9接口: 连接两个UPF之间。当一个PDU会话路径上存在多个UPF时(如I-UPF和PSA UPF),它们之间通过N9接口连接。

Q5: 在ATSSS场景下,UPF是如何同时处理来自5G和Wi-Fi的流量的?

A:

在ATSSS场景下,UPF(作为PSA)会有两个“入口”和一个“出口”。

  • 两个入口:

    1. 一个N3接口,接收来自NG-RAN(5G接入)的GTP-U隧道。

    2. 另一个N3接口,接收来自TNGF/N3IWF(Wi-Fi接入)的GTP-U隧道。

  • 一个出口:

    1. 一个N6接口,通往数据网络。

SMF会为这个MA PDU会话在UPF上建立统一的N4会话。UPF根据SMF下发的MAR(多接入规则),对上行和下行流量进行智能调度。例如,对于下行流量,UPF可以根据MAR,将一个数据流复制多份,分别从通往5G和Wi-Fi的N3隧道发出;或者将一个数据流拆分,一部分从5G的N3隧道发出,另一部分从Wi-Fi的N3隧道发出。