5G核心网学习平台
网络切片 实践篇 #03

5GC实践篇之切片篇第12篇:发起PDU会话时的切片选择

《5G核心网原理与实践》实践篇 · 网络切片 网元功能

5GC实践篇之切片篇第12篇:发起PDU会话时的切片选择

作者:爱卫生


1 测试背景与用例简介

在前面多篇文章中,我们详细讨论了注册阶段的切片选择机制——UE通过Registration流程获取Allowed NSSAI,网络为其选择合适的AMF和SMF。但注册只是UE获得网络服务的"入场券",真正使用切片服务发生在PDU会话建立阶段

本篇聚焦的场景是:UE已经成功注册并获得了Allowed NSSAI,当UE需要发起数据业务时,根据PCF下发的NSSP(Network Slice Selection Policy)策略选择合适的S-NSSAI,并以此发起PDU会话建立请求。AMF收到请求后,根据S-NSSAI和DNN的组合查询NRF,选择支持该切片的SMF,完成PDU会话建立。

这个场景是5G切片从"策略配置"到"实际使用"的关键环节。如果说前面的文章讲的是"如何让UE知道有哪些切片可用",那么本篇讲的就是"UE如何真正使用这些切片"。

本场景涉及的NSSP策略与第4篇(UE与PCF交互与切片相关的URSP策略信息)密切相关。第4篇中PCF通过AMF下发了NSSP信息,本篇将展示UE如何应用这些策略信息来选择合适的切片。

1.1 从Allowed NSSAI到PDU会话的完整链路


PCF下发NSSP -> UE保存NSSP -> UE发起应用 -> UE根据NSSP匹配S-NSSAI ->

UE检查S-NSSAI是否在Allowed NSSAI中 -> 发起PDU会话建立请求 ->

AMF根据S-NSSAI+DNN查询NRF -> NRF返回SMF -> PDU会话建立完成

2 协议规范与关键技术

2.1 相关协议规范

本篇涉及PDU会话建立过程中的切片选择,相关协议规范如下:

  • TS 23.501 第5.15节:定义了PDU会话与S-NSSAI的绑定关系,以及SMF选择的切片相关规则。

  • TS 23.501 第6.3.2节:SMF选择机制,包括基于S-NSSAI和DNN的SMF发现。

  • TS 23.502 第4.3.2节:UE发起的PDU会话建立流程。

  • TS 24.526:URSP(UE Route Selection Policy)规范,定义了NSSP策略的结构和匹配规则。

  • TS 24.501 第6.4.1节:PDU Session Establishment Request消息格式。

  • TS 29.503:Nudm_SDM接口,SMF获取SM签约数据。

  • TS 29.510:NRF NFDiscovery服务,AMF查询支持特定S-NSSAI+DNN的SMF。

  • TS 29.502:Nsmf_PDUSession服务接口。

2.2 NSSP策略匹配机制

NSSP(Network Slice Selection Policy)是URSP策略中的一个组件,定义了"应用流量"到"网络切片"的映射规则。其核心匹配逻辑如下:

NSSP组件 说明
Traffic Descriptor 流量描述符,匹配条件(如App ID、IP描述符、DNN等)
Route Selection Descriptor 路由选择描述符,匹配结果(如S-NSSAI、DNN、SSC模式等)

UE发起应用时,按以下步骤匹配NSSP:

  1. 匹配Traffic Descriptor:将应用的特征(App ID、目的IP/端口等)与NSSP中的Traffic Descriptor逐一比对;

  2. 获取Route Selection Descriptor:匹配成功后,获取对应的Route Selection Descriptor;

  3. 确定S-NSSAI:从Route Selection Descriptor中提取S-NSSAI;

  4. 检查Allowed NSSAI:验证S-NSSAI是否在当前的Allowed NSSAI中;

  5. 确定DNN:从Route Selection Descriptor中提取DNN(如有);

  6. 发起PDU会话建立:使用确定的S-NSSAI和DNN发起PDU会话。

2.3 基于切片的SMF选择

AMF收到PDU Session Establishment Request后,需要根据S-NSSAI和DNN选择合适的SMF。SMF选择流程如下:

  1. AMF检查本地是否有缓存的支持该S-NSSAI+DNN的SMF信息;

  2. 如果没有缓存,AMF向NRF发起Nnrf_NFDiscovery_Request,查询条件包括:

  3. nfType=SMF

  4. snssai=目标S-NSSAI

  5. dnn=目标DNN

  6. tai=UE当前位置

  7. NRF返回符合条件的SMF列表;

  8. AMF根据负载均衡等策略选择其中一个SMF;

  9. AMF向选定的SMF发起Nsmf_PDUSession_CreateSMContext。

2.4 SMF的签约数据校验

SMF收到PDU会话建立请求后,需要向UDM获取SM(Session Management)签约数据,验证:

校验项 说明
DNN是否签约 DNN是否在UE的签约DNN列表中
S-NSSAI是否授权 S-NSSAI是否在UE的签约切片中
DNN+S-NSSAI组合 该组合是否被授权
QoS参数 签约的默认QoS信息
Charging 计费相关的签约信息

3 消息流程与详细解读

3.1 整体流程概览


sequenceDiagram

    participant UE as UE终端

    participant RAN as NG-RAN

    participant AMF

    participant NRF

    participant SMF

    participant UDM as UDM(SM数据)

    Note over UE: 前提:UE已注册<br/>PCF已下发NSSP<br/>Allowed NSSAI已获取

    UE->>UE: 用户触发应用

    Note over UE: 根据NSSP匹配S-NSSAI<br/>检查S-NSSAI在Allowed NSSAI中

    UE->>RAN: NAS PDU Session Establishment Request<br/>S-NSSAI + DNN + PDU Session Type

    RAN->>AMF: N2 NAS Transport<br/>转发PDU Session Establishment Request

    Note over AMF: 提取S-NSSAI和DNN<br/>检查S-NSSAI在Allowed NSSAI中

    AMF->>NRF: Nnrf_NFDiscovery_Request<br/>nfType=SMF, snssai, dnn, tai

    NRF-->>AMF: 返回SMF列表

    Note over AMF: 选择合适的SMF

    AMF->>SMF: Nsmf_PDUSession_CreateSMContext<br/>S-NSSAI + DNN + SUPI + DNN

    SMF->>UDM: Nudm_SDM_Get(SUPI/SM数据)

    UDM-->>SMF: 返回SM签约数据

    Note over SMF: 验证DNN+S-NSSAI<br/>获取默认QoS等

    SMF-->>AMF: Nsmf_PDUSession_CreateSMContext Response<br/>SM Context Created

    Note over SMF: 后续PDU Session建立流程<br/>选择UPF、建立会话等

    SMF->>AMF: Nsmf_PDUSession_UpdateSMContext<br/>N2 SM Information

    AMF->>RAN: N2 PDU Session Resource Setup Request

    RAN->>UE: NAS PDU Session Establishment Accept

    RAN-->>AMF: N2 PDU Session Resource Setup Response

    AMF->>SMF: Nsmf_PDUSession_UpdateSMContext<br/>N2 SM Response

3.2 流程详细解读

步骤1:UE根据NSSP选择S-NSSAI

UE上的应用(例如视频会议App)被触发后,UE执行以下操作:

  1. 匹配NSSP策略:UE检查本地保存的NSSP策略,找到与"视频会议App"匹配的Traffic Descriptor;

  2. 确定S-NSSAI:匹配到的Route Selection Descriptor中指定了S-NSSAI=SST=1/SD=010203(eMBB增强切片);

  3. 验证Allowed NSSAI:UE检查SST=1/SD=010203是否在当前的Allowed NSSAI中。验证通过;

  4. 确定DNN:Route Selection Descriptor中指定了DNN=internet(或运营商自定义DNN)。

如果S-NSSAI不在Allowed NSSAI中,UE不得使用该切片发起PDU会话。UE可以尝试匹配其他NSSP规则,或者使用默认切片。

步骤2:UE发起PDU Session Establishment Request

UE构造PDU Session Establishment Request消息,包含以下关键参数:

参数 说明
PDU Session ID 1 UE分配的会话标识
S-NSSAI SST=1, SD=010203 NSSP匹配的切片
DNN internet 数据网络名称
PDU Session Type IPv4 会话类型
SSC Mode SSC Mode 1 会话连续性模式

步骤3:AMF验证并选择SMF

AMF收到PDU Session Establishment Request后:

  1. 验证S-NSSAI:检查SST=1/SD=010203是否在UE的Allowed NSSAI中。验证通过;

  2. 查询NRF:AMF向NRF发起NFDiscovery请求,查询条件为nfType=SMF, snssai=[SST=1/SD=010203], dnn=internet, tai=46088-A001;

  3. NRF返回SMF列表:NRF返回一个或多个支持该S-NSSAI+DNN组合的SMF;

  4. 选择SMF:AMF根据负载均衡策略选择一个SMF。

步骤4:AMF向SMF发起CreateSMContext

AMF向选定的SMF发送Nsmf_PDUSession_CreateSMContext请求:


Nsmf_PDUSession_CreateSMContext Request:

  supi: "imsi-4608800000XXXXXX"

  pduSessionId: 1

  dnn: "internet"

  sNssai: {"sst": 1, "sd": "010203"}

  servingNfId: "amf-01-set01-instance01"

  guami: {"plmnId": {"mcc": "460", "mnc": "88"}, "amfRegionId": "01", "amfSetId": "01"}

  servingNetwork: {"mcc": "460", "mnc": "88"}

  anType: "3GPP_ACCESS"

  ratType: "NR"

  ueLocation: {"tai": {"plmnId": {"mcc": "460", "mnc": "88"}, "tac": "A001"}}

步骤5:SMF获取SM签约数据并验证

SMF收到CreateSMContext请求后,向UDM获取该UE的SM签约数据:


Nudm_SDM_Get Request:

  supi: "imsi-4608800000XXXXXX"

  dataSubsets: ["SMF_SEL", "SM_DATA"]

UDM返回的SM签约数据包含:


{

  "smData": {

    "dnnConfigurations": {

      "internet": {

        "pduSessionTypes": {"defaultSessionType": "IPV4"},

        "sscModes": {"defaultSscMode": "SSC_MODE_1"},

        "5gQosProfile": {"5qi": 9, "arp": {"priorityLevel": 8}},

        "sessionAmbr": {"uplink": "100Mbps", "downlink": "200Mbps"}

      }

    },

    "subscribedSnssai": {

      "sst": 1,

      "sd": "010203"

    }

  }

}

SMF验证:

  • DNN "internet" 在签约DNN列表中:通过

  • S-NSSAI SST=1/SD=010203 在签约切片中:通过

  • DNN+S-NSSAI组合已授权:通过

步骤6:后续PDU会话建立流程

验证通过后,SMF继续执行PDU会话建立的后续步骤:

  1. 选择UPF(基于S-NSSAI和DNN);

  2. 建立N4会话;

  3. 通过AMF和RAN向UE下发PDU Session Establishment Accept;

  4. UE获得IP地址,PDU会话建立完成。

3.3 PDU会话切片选择完整决策流程


flowchart TD

    A[UE触发应用] --> B[匹配NSSP策略]

    B --> C{找到匹配的NSSP规则}

    C --> D[未找到:使用默认切片]

    C --> E[找到:提取S-NSSAI和DNN]

    E --> F{S-NSSAI在Allowed NSSAI中}

    F --> G[不在:尝试其他NSSP规则或使用默认切片]

    F --> H[在:构造PDU Session Establishment Request]

    D --> H

    G --> H

    H --> I[AMF收到请求]

    I --> J{验证S-NSSAI在Allowed NSSAI中}

    J --> K[不在:拒绝PDU会话]

    J --> L[在:查询NRF获取SMF]

    L --> M[NRF返回SMF列表]

    M --> N[AMF选择SMF]

    N --> O[向SMF发送CreateSMContext]

    O --> P[SMF获取签约数据并验证]

    P --> Q{验证通过}

    Q --> R[不通过:拒绝PDU会话]

    Q --> S[通过:继续PDU会话建立]

4 关键信令参数分析

4.1 UE NSSP策略示例

以下是一个典型的NSSP策略(由PCF下发,AMF转达给UE):


URSP Rule #1:

  Traffic Descriptor:

    App ID: com.example.videoconference

  Route Selection Descriptor:

    Priority: 1

    S-NSSAI: SST=1, SD=010203 (eMBB Enhanced)

    DNN: internet

    SSC Mode: SSC_MODE_1

    PDU Session Type: IPv4

URSP Rule #2:

  Traffic Descriptor:

    App ID: com.example.iotgateway

  Route Selection Descriptor:

    Priority: 1

    S-NSSAI: SST=3 (MIoT)

    DNN: iot

    SSC Mode: SSC_MODE_3

    PDU Session Type: IPv4

URSP Rule #3 (Default):

  Traffic Descriptor:

    Match-All: TRUE

  Route Selection Descriptor:

    Priority: 2

    S-NSSAI: SST=1 (eMBB default)

    DNN: internet

4.2 Nnrf_NFDiscovery_Request参数

参数 说明
nfType SMF 查询NF类型
targetSnssaiList [{"sst":1,"sd":"010203"}] 目标切片
dnn internet 数据网络名称
tai {"tac":"A001"} UE位置
preferredFQDN smf.set01.mnc088... 优先查询的FQDN

4.3 NRF返回的SMF信息


{

  "nfInstances": [

    {

      "nfInstanceId": "smf-01-set01-instance01",

      "nfType": "SMF",

      "nfStatus": "REGISTERED",

      "plmnId": {"mcc": "460", "mnc": "88"},

      "sNssai": [

        {"sst": 1, "sd": "010203"},

        {"sst": 1, "sd": "040506"}

      ],

      "dnn": ["internet", "enterprise"],

      "ipv4Addresses": ["10.x.x.x"],

      "allowedNfTypes": ["AMF"],

      "nfServiceList": [

        {

          "serviceInstanceId": "smf-pdu-session",

          "serviceName": "nsmf-pdusession",

          "versions": [{"apiVersion": "v1"}],

          "scheme": "https",

          "nfServiceStatus": "REGISTERED",

          "ipEndPoints": [{"ipv4Address": "10.x.x.x", "port": 8443}]

        }

      ]

    }

  ]

}

4.4 Nsmf_PDUSession_CreateSMContext关键参数

参数 说明
supi imsi-4608800000XXXXXX UE标识
pduSessionId 1 PDU会话ID
dnn internet 数据网络名称
sNssai SST=1, SD=010203 选择的切片
anType 3GPP_ACCESS 接入类型
ratType NR 无线接入技术
ueLocation TAI: 46088-A001 UE位置

4.5 AMF CLI验证数据

PDU会话处理日志(脱敏):


# AMF PDU Session Processing Log

Time: 2026-04-17 15:20:30.100

SUPI: imsi-4608800000XXXXXX

GPSI: 86138000XXXXXX

Received PDU Session Establishment Request:

  PDU Session ID: 1

  S-NSSAI: SST=1, SD=010203 (eMBB Enhanced)

  DNN: internet

  PDU Session Type: IPv4

  SSC Mode: SSC_MODE_1

Slice Verification:

  SST=1/SD=010203 in Allowed NSSAI: YES

  Verification Result: PASSED

SMF Selection:

  Query NRF: nfType=SMF, snssai=[SST=1/SD=010203], dnn=internet

  NRF Response: 1 SMF found

    SMF Instance: smf-01-set01-instance01

    SMF IP: 10.x.x.x:8443

    SMF Supported S-NSSAI: [SST=1/SD=010203, SST=1/SD=040506]

    SMF Supported DNN: [internet, enterprise]

SM Context Creation:

  Request sent to SMF: smf-01-set01-instance01

  Response: 201 Created

  SM Context ID: smf-01-set01-instance01/1

PDU Session Resource Setup:

  N2 SM Information sent to RAN

  Waiting for RAN response...

  RAN Response: N2 PDU Session Resource Setup Response received

PDU Session Establishment: SUCCESS

  UE IP Address: 172.x.x.x

  Allocated UPF: upf-01-set01

SMF处理日志(脱敏):


# SMF PDU Session Log

Time: 2026-04-17 15:20:30.200

SM Context ID: smf-01-set01-instance01/1

SUPI: imsi-4608800000XXXXXX

Received CreateSMContext:

  S-NSSAI: SST=1, SD=010203

  DNN: internet

  PDU Session Type: IPv4

UDM Subscription Data Retrieved:

  DNN internet: Subscribed

  S-NSSAI SST=1/SD=010203: Subscribed

  Default 5QI: 9

  Default ARP Priority: 8

  Session AMBR: UL=100Mbps, DL=200Mbps

SM Selection Verification:

  DNN+S-NSSAI combination: AUTHORIZED

  QoS Profile: Applied default

UPF Selection:

  Query NRF: snssai=[SST=1/SD=010203], dnn=internet

  Selected UPF: upf-01-set01 (10.x.x.x)

  N4 Session: Created

PDU Session Address Allocation:

  UE IP: 172.x.x.x (IPv4)

  Session Type: IPv4

5 测试验证与数据解读

5.1 测试预置条件

本场景的测试预置条件包括:

  • UE已成功注册,Allowed NSSAI包含SST=1/SD=010203;

  • PCF已通过AMF向UE下发NSSP策略,包含App到切片的映射规则;

  • NRF已注册支持SST=1/SD=010203+internet的SMF;

  • UDM中配置了该UE的SM签约数据(DNN+S-NSSAI组合);

  • UPF已部署并支持该切片。

5.2 验证要点

验证点1:UE正确根据NSSP选择S-NSSAI

在UE日志中确认:

  • UE触发的应用与NSSP中的Traffic Descriptor匹配;

  • UE选择的S-NSSAI是NSSP策略中指定的切片;

  • UE验证了S-NSSAI在Allowed NSSAI中。

验证点2:AMF正确选择SMF

在AMF和NRF接口跟踪中确认:

  • AMF向NRF发起的查询包含正确的S-NSSAI和DNN;

  • NRF返回的SMF确实支持该S-NSSAI+DNN组合;

  • AMF成功与SMF建立SM Context。

验证点3:SMF正确验证签约数据

在SMF和UDM接口跟踪中确认:

  • SMF向UDM获取SM签约数据;

  • DNN和S-NSSAI均在签约数据中;

  • PDU会话的QoS参数与签约数据一致。

验证点4:PDU会话成功建立

在端到端消息跟踪中确认:

  • PDU Session Establishment Accept成功下发给UE;

  • UE获得IP地址;

  • UPF的N4会话成功建立。

5.3 数据解读

通过分析测试数据,可以得出以下关键结论:

  1. NSSP是切片使用的"导航仪":UE不凭"直觉"选择切片,而是严格按照PCF下发的NSSP策略进行匹配。这确保了运营商对切片使用的完全控制。如果NSSP配置错误,UE可能选择错误的切片或不选择切片。

  2. AMF的SMF选择是切片隔离的关键:AMF根据S-NSSAI+DNN查询NRF选择SMF,确保不同切片的PDU会话由不同的SMF管理。这是5G切片隔离在控制面的体现。

  3. SMF的签约校验是第三道防线:继AMF注册时校验和PDU会话发起时校验后,SMF在创建SM Context时再次校验S-NSSAI和DNN的授权状态。这种多层校验确保了切片安全。

  4. DNN+S-NSSAI的组合控制:运营商可以通过DNN和S-NSSAI的组合实现精细化的策略控制。例如,同一个DNN(internet)在不同切片中可能有不同的QoS配置。

5.4 与前文场景的衔接

对比维度 第10篇(PDU会话拒绝) 本篇(PDU会话成功建立)
S-NSSAI 未签约 已签约且在Allowed NSSAI中
AMF行为 返回Reject(Cause 91) 查询NRF选择SMF
SMF是否参与 不参与(AMF直接拒绝) 参与(创建SM Context)
结果 PDU会话失败 PDU会话成功建立

6 小结与思考

6.1 本篇小结

本篇详细分析了UE发起PDU会话时的切片选择流程。关键要点如下:

  1. NSSP驱动切片选择:UE根据PCF下发的NSSP策略,将应用流量映射到具体的S-NSSAI和DNN,然后发起PDU会话建立。

  2. AMF的SMF选择:AMF根据S-NSSAI+DNN查询NRF,选择支持该切片的SMF。这是切片在PDU会话层面的核心路由决策。

  3. SMF的签约校验:SMF从UDM获取SM签约数据,验证DNN和S-NSSAI的授权状态,确定QoS参数。

  4. 端到端切片贯通:从UE的NSSP匹配、AMF的SMF选择、SMF的签约校验到UPF的选择,每个环节都基于S-NSSAI进行决策,确保了端到端的切片一致性。

6.2 延伸思考

思考1:NSSP更新对已建立PDU会话的影响

如果PCF更新了UE的NSSP策略(例如,将某个App的切片从eMBB改为URLLC),已建立的PDU会话是否需要重建?根据协议,URSP/NSSP的更新不影响已建立的PDU会话。UE在后续发起新应用时使用更新后的策略。但如果运营商需要立即生效,可能需要触发UE释放旧PDU会话并重新建立。

思考2:多切片并发PDU会话

UE可以同时建立多个PDU会话,每个PDU会话关联不同的S-NSSAI。例如,UE同时拥有eMBB切片的PDU会话(用于视频会议)和MIoT切片的PDU会话(用于IoT数据上报)。这正是5G切片的核心价值——同一终端同时享受不同特性的网络服务。

思考3:SMF选择与网络拓扑

在大型网络中,同一S-NSSAI可能由多个SMF支持(不同区域或不同容量)。NRF返回SMF列表后,AMF的选择策略(轮询、加权、位置优先等)直接影响网络负载分布和用户体验。合理的SMF选择策略是5G切片运维的重要课题。


← 返回 网络切片 实践篇