首页 › slicing-mec › 5G URSP策略下发与路由选择拆解

5G URSP 策略下发与业务路由选择信令全链拆解

一、为什么需要 URSP:切片落地的"终端侧最后一公里"

5G 网络切片(Network Slicing)在网络侧通过 NSSF、AMF、SMF 已经能精确地为不同业务选择 S-NSSAI、DNN 与承载。但有一个关键问题悬而未决:当一个 App 在 UE 上发起数据流时,UE 该把它放进哪条 PDU 会话?走哪个切片?用哪个 DNN?是复用已有会话、新建会话,还是直接卸载到非 3GPP? 如果让所有应用都挤进默认的互联网会话,切片隔离就形同虚设,MEC 本地分流、专网 DNN、URLLC 专切片的差异化能力全部失效。

UE Route Selection Policy(URSP,用户设备路由选择策略)就是 3GPP 给出的答案。它定义在 TS 23.503 §6.6.2,编码定义在 TS 24.526 §5.2,下发流程定义在 TS 23.502 §4.2.2。URSP 是一组由 PCF(策略控制功能)下发、UE 本地执行的"应用→路由"映射规则。它把网络切片策略从核心网一路延伸到终端的每一个 socket,是切片真正"端到端"闭环的关键环节,也是 MEC/边缘应用能否被引导到本地 PDU 会话(带本地 PSA/UL CL)的前提。

可以说:没有 URSP,网络切片就只是"网络的事";有了 URSP,切片才是"终端 + 网络"的事。

二、URSP 规则的内部结构:一个三段式的匹配引擎

一条 URSP 规则(TS 23.503 §6.6.2.2)由三部分组成,本质上是一个"匹配条件 + 动作清单"的结构,逻辑上类似防火墙规则:

flowchart LR
    R["URSP Rule"] --> P["Rule Precedence<br/>规则优先级"]
    R --> TD["Traffic Descriptor<br/>流量描述符(匹配条件)"]
    R --> RSD["RSD List<br/>路由选择描述符列表(动作清单)"]
    TD --> TD1["应用描述符<br/>OS ID + OS App ID"]
    TD --> TD2["IP 描述符<br/>目的IP/端口/协议"]
    TD --> TD3["域描述符<br/>FQDN"]
    TD --> TD4["DNN / 连接能力<br/>非IP描述符等"]
    RSD --> R1["RSD-1: SSC1, DNN=internet, S-NSSAI=eMBB"]
    RSD --> R2["RSD-2: SSC3, DNN=corp, S-NSSAI=enterprise"]
    RSD --> R3["RSD-3: 非无缝非3GPP卸载"]
  1. Rule Precedence(规则优先级):决定多条 URSP 规则之间的评估顺序,数值越小优先级越高,每条规则的优先级全网唯一。
  2. Traffic Descriptor(TD,流量描述符):匹配条件。一个应用流量只要命中某条 TD,就选中该规则。TD 是多个可选分量的组合: - 应用描述符(OS ID + OS App ID,区分 Android/iOS 应用) - IP 描述符(目的 IP 三元组:地址、端口、协议) - 域描述符(FQDN,如 *.company.com) - 非应用/非 IP 描述符、DNN 描述符 - 连接能力(Connection Capabilities:IP / Ethernet / Non-IP / Multicast) - Rel-17+ 增加了组件类型,如"UE 状态报告"触发器
  3. Route Selection Descriptor List(RSD 列表,路由选择描述符):动作清单。命中 TD 后,UE 按 RSD 自身的优先级顺序逐个评估,选第一个能满足条件的 RSD 执行。

每个 RSD 携带的"路由参数"才是切片落地的真正载体:

表1:URSP 规则的关键 IE 参数说明

参数 所属 作用 典型取值
Rule Precedence URSP Rule 规则间评估顺序 1~255,越小越优先
Traffic Descriptor URSP Rule 应用流量匹配条件 OS App ID / FQDN / IP 三元组
Route Selection Precedence RSD 同一规则内 RSD 排序 数值越小越优先
SSC Mode RSD 会话与业务连续性模式 1(保持锚点)/2 /3(可换锚点)
S-NSSAI RSD 切片选择 SST + SD
DNN RSD 数据网络名(含专网/MEC DNN) internet / corp / mec01
PDU Session Type RSD 会话类型 IPv4 / IPv6 / Ethernet / Unstructured
Access Type Preference RSD 接入偏好 3GPP / Non-3GPP / Multi-Access
Non-Seamless Non-3GPP Offload RSD 是否卸载到本地非3GPP TRUE / FALSE
Route Selection Validation Criteria (RSVC) RSD(Rel-17) RSD 有效性条件 时间窗 / 位置
Time Window / Spatial Validity RSD(Rel-18) 时空有效性 时段、跟踪区列表

设计意图:把"应用特征"与"网络路由参数"解耦——TD 只描述"这是谁发的流量",RSD 只描述"该走哪条路"。这样 PCF 运营人员可以独立调整路由策略(如新增一个 MEC DNN)而不必重写匹配规则,终端逻辑也更清晰。

三、URSP 如何下发到 UE:UE Policy Delivery 全信令流

URSP 规则不存在 UE SIM 里,而是动态下发。它在 UE 注册成功后,由 PCF 通过 AMF 透明中继、用 NAS 信令(N1 接口)送到 UE。承载协议是 UE Policy Delivery Protocol(UPDP,TS 24.526 §4 / TS 24.501),UPDP 消息封装在 NAS 的 UE Policy Container 这个透明容器里。整个传输对 AMF 是"透明"的——AMF 不解析 URSP 内容,只负责转发。

完整时序如下(TS 23.502 §4.2.2.2 / §4.2.2.3):

sequenceDiagram
    autonumber
    participant UE
    participant AMF
    participant PCF as PCF(UE Policy)
    participant UDR

    Note over UE,PCF: 阶段一:策略关联建立(注册后触发)
    UE->>AMF: Registration Request
    AMF->>PCF: Npcf_UEPolicyControl_Create<br/>(SUPI, PDN Type, UE 上下文)
    PCF->>UDR: Nudr_DataRepository_Query<br/>(订阅的 URSP 数据)
    UDR-->>PCF: URSP 规则集(签约策略)
    PCF-->>AMF: 201 Created (Policy Association ID)

    Note over UE,PCF: 阶段二:下行策略下发(PCF 主动)
    PCF->>AMF: Namf_Communication_N1N2MessageTransfer<br/>(UE Policy Container = MANAGE UE POLICY COMMAND)
    Note right of AMF: 封装为 UPDP 消息
    AMF->>UE: DOWNLINK NAS TRANSPORT<br/>(UE Policy Container)
    Note over UE: UE 解析 UPDP, 存储 URSP,<br/>按规则优先级排序

    Note over UE,PCF: 阶段三:上行结果反馈
    UE->>AMF: UPLINK NAS TRANSPORT<br/>(UE Policy Container = MANAGE UE POLICY COMPLETE)
    AMF->>PCF: Namf_Communication_N1MessageNotify<br/>(UE Policy Container)
    Note over PCF: PCF 记录下发结果<br/>(成功/部分成功/失败)

    Note over UE,PCF: 阶段四:策略更新(订阅变更/AMF/会话事件触发)
    UDR->>PCF: PolicyData Change Notification
    PCF->>AMF: N1N2MessageTransfer(新 URSP)
    AMF->>UE: DOWNLINK NAS TRANSPORT

关键信令消息解析:

  1. Npcf_UEPolicyControl_Create(TS 29.525):注册成功后 AMF 主动向 PCF 建立"UE 策略关联"。AMF 携带 SUPI、PDN(运营商识别符)、用户上下文、PEI 等。PCF 据此从 UDR 取出签约 URSP。
  2. Namf_Communication_N1N2MessageTransfer(TS 29.518):PCF 把要下发的策略打包成 UE Policy Container,发给 AMF。AMF 不解读,直接塞进 DOWNLINK NAS TRANSPORT 消息(TS 24.501 §8.2.6)透传给 UE。容器内的 UPDP 消息是 MANAGE UE POLICY COMMAND。
  3. UPLINK NAS TRANSPORT(TS 24.501 §8.2.5):UE 收到后执行策略安装/替换,再用 MANAGE UE POLICY COMPLETE 回复确认(或部分成功 / 失败原因),经 AMF 的 N1MessageNotify 回送 PCF。
  4. 策略更新:URSP 不是一次性的。当 UDR 签约变化、UE 切换接入、或特定会话事件发生时,PCF 可随时通过同样路径主动下发新 URSP(PCF-initiated),UE 也可在策略丢失/无效时主动请求重发(UE-initiated,经 UPLINK NAS TRANSPORT 携带 MANAGE UE POLICY COMMAND)。

设计意图:让 AMF"透明中继"而非"理解策略",是为了职责分离——AMF 专注移动性管理,策略语义完全由 PCF 与 UE 协商。这也意味着 AMF 的实现可以保持轻量,跨厂商互通时策略格式由 TS 24.526 统一编码,与 AMF 厂商无关。

四、UE 如何用 URSP:应用触发的路由选择决策流

URSP 下发后"静默"存在于 UE,直到一个应用发起上行流量时才被激活。这是 URSP 的运行态,定义在 TS 23.503 §6.6.2.1 的匹配算法中:

flowchart TD
    A["应用发起上行流量"] --> B["提取流量特征<br/>(App ID / FQDN / IP三元组)"]
    B --> C["按 Rule Precedence 升序<br/>遍历 URSP 规则"]
    C --> D{"TD 是否匹配?"}
    D -- 否 --> C
    D -- 是 --> E["选中该规则<br/>进入 RSD 评估"]
    E --> F["按 RSD Precedence 升序<br/>逐个评估 RSD"]
    F --> G{"RSD 有效性?<br/>RSVC/时间窗/位置<br/>是否满足"}
    G -- 否 --> F
    G -- 是 --> H{"已有PDU会话<br/>参数一致?"}
    H -- 是 --> I["复用现有PDU会话<br/>(绑定该业务流)"]
    H -- 否 --> J["发起UE请求的<br/>PDU会话建立"]
    J --> K["用选中的 SSC/DNN/<br/>S-NSSAI/类型建会话"]
    I --> L["业务流走对应切片/路由"]
    K --> L
    C -. 全部不匹配 .-> M["使用 match-all URSP<br/>或默认DNN"]

匹配算法要点(TS 23.503 §6.6.2.1):

一个典型场景:企业员工的 UE 收到 URSP,规则把 corp.company.com 的流量导向 DNN=corp + S-NSSAI=enterprise(切片) + Ethernet 类型,把视频会议 App 导向 DNN=mec01 + 本地切片(经 UL CL 在 MEC 本地卸载),其余流量走默认 internet。这样 MEC 分流、专网隔离、切片差异化在终端侧就已经分流完毕。

五、抓包识别与故障排查

5.1 抓包如何识别 URSP 流程

接口 协议 关键字段 / 识别要点
N7(PCF↔AMF→实际走 N15) HTTP/2 + JSON Npcf_UEPolicyControl 资源 POST;body 含 uePolicyReq、pduSessionPolicy
N1(AMF↔UE) NGAP + 5GMM NAS DOWNLINK NAS TRANSPORT / UPLINK NAS TRANSPORT,内含 UE policy container IE
UPDP 容器内 MANAGE UE POLICY COMMAND / COMPLETE,TLV 编码的 URSP 规则(TS 24.526 §5.2)
Nudr HTTP/2 PolicyData/UePolicySet 数据集,存储签约 URSP

在 Wireshark 中(需加载 5G NAS dissector),过滤 nas-5gs.message_type == 105 || nas-5gs.message_type == 106(对应 Downlink/Uplink NAS Transport),展开 UE policy container 即可看到 URSP 规则的优先级、TD 分量、RSD 列表。

5.2 常见故障点与排查思路

  1. URSP 未下发 / UE 收不到:先确认 AMF 是否成功建立 UE Policy 关联(查 PCF 日志有无 Npcf_UEPolicyControl_Create 返回 201);再查 UDR 是否有该 SUPI 的签约 URSP 数据集;最后确认 PCF 是否真正调用 N1N2MessageTransfer。
  2. URSP 下发了但业务未走切片:最常见。重点查 TD 匹配——App 没有上报 OS App ID、或 FQDN 不匹配、或应用用的是 IP 直连而非域名,导致规则命中失败,最终落到默认 DNN。建议抓包看 UE 是否发起带正确 S-NSSAI/DNN 的 PDU 会话建立。
  3. 规则冲突 / 优先级错误:两条规则 Rule Precedence 重复会引发行为不确定;RSD 内 DNN 与切片不匹配(如签约不包含该 S-NSSAI)会导致 PDU 会话建立被 SMF 拒绝。
  4. RSVC/时间窗失效:Rel-17 引入的有效性条件若配置过严,会出现"白天能走切片、晚上回退默认"的现象,排查时需核对 RSVC 时段与 UE 本地时间。
  5. 漫游场景:URSP 由 H-PCF 下发(归属地策略),V-PCF 可叠加 ANDSP(接入网发现策略)。若 UE 漫游后业务异常,需区分是 URSP 缺失还是切片在拜访网不可用。

六、与相关策略机制对比

表2:UE 侧三类策略机制对比

维度 URSP ANDSP WLANSP
全称 UE Route Selection Policy Access Network Discovery & Selection Policy WLAN Selection Policy
规范 TS 23.503 §6.6.2 / 24.526 §5.2 TS 23.503 §6.6.3 / 24.526 §5.2 TS 24.526 §5.3.2
核心作用 应用流量→PDU 会话/切片/路由 非3GPP接入网发现与选择 WLAN 节点选择
决定 走哪条切片/DNN/会话 选哪个 WLAN/可信N3IWF 选哪个 SSID
漫游下发方 H-PCF(归属) V-PCF(拜访,可叠加) H-PCF
触发 应用发起流量 UE 接入决策 WLAN 扫描/选择

URSP 与 ANDSP 是互补关系:ANDSP 解决"接入哪个非 3GPP 网络",URSP 解决"流量进哪条 PDU 会话/切片",二者共同支撑 ATSSS(多接入)与非无缝卸载场景。

七、Rel-17/18 演进要点

常见问题

Q1:URSP 和 PDU 会话锚点选择(SMF/UPF 选择)是什么关系? A:URSP 决定的是 UE 侧"业务流进哪条会话"——给出 SSC/DNN/S-NSSAI/类型。SMF 再依据这些参数做网络侧的 SMF/UPF 选择(含 MEC 本地 PSA/UL CL)。URSP 是"终端发起方",网络选择是"网络执行方",两者衔接才能实现端到端切片 + 边缘分流。

Q2:URSP 是什么时候下发到 UE 的? A:主要在 UE 初始注册成功后,由 AMF 触发建立 UE Policy 关联、PCF 从 UDR 取签约 URSP 后通过 NAS 下发。之后任何策略变更(签约变化、UE 策略更新触发器)都会引发重新下发。

Q3:如果 UE 收到的 URSP 规则中没有匹配应用流量的,会怎样? A:UE 会使用运营商配置的 match-all 兜底规则或默认 DNN(如 internet)建立会话,保证业务可达,但此时该流量不会享受切片/边缘差异化——这正是很多"切片配置了却不生效"问题的根因。

Q4:URSP 下发为什么用 NAS 而不是 RRC? A:URSP 属于 NAS 层(非接入层)策略语义,与接入技术无关(3GPP 与非 3GPP 接入都要用)。用 NAS 的 UE Policy Container 透传,可保持策略在 NG-RAN 与 untrusted N3IWF 接入下行为一致,且让 AMF 透明中继、RAN 完全不感知策略内容。

参考来源

  1. 3GPP TS 23.503 — Policy and Charging Control Framework, §6.6.2 URSP — URSP 规则结构与匹配算法
  2. 3GPP TS 23.502 — Procedures for the 5G System, §4.2.2 UE Policy Management Related Procedures — 策略下发与关联建立流程
  3. 3GPP TS 24.526 — UE policies for 5GS, §5.2 Encoding of URSP — URSP 规则 TLV 编码
  4. ShareTechnote — Manage UE Policy in 5G — URSP 匹配与流程图解
  5. Cisco — Ultra Cloud Core 5G PCF: URSP Support — 厂商 PCF URSP 配置实现
  6. GSMA NG.141 — Guidelines for URSP — 运营商 URSP 部署指南

本文由「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 等场景全覆盖。

51学通信知识星球海报-扫码加入