-
在已有用户上下文中创建新会话绑定:UE A已有DNN1会话,再建立DNN2会话时,BSF在同一用户上下文中新增一条绑定记录;
-
删除特定会话的绑定信息:UE A释放DNN1会话时,BSF只删除DNN1对应的绑定记录,DNN2的绑定信息保持不变。
同一用户多DNN会话绑定的典型场景
| 场景 |
已有绑定 |
新增/删除操作 |
结果 |
| 建立VoNR语音会话 |
DNN=Internet绑定PCF1 |
新增DNN=IMS绑定PCF2 |
两条绑定共存 |
| 释放数据业务会话 |
DNN=Internet + DNN=IMS |
删除DNN=Internet绑定 |
仅保留IMS绑定 |
| 建立第二个数据会话 |
DNN=Internet绑定PCF1 |
新增DNN=Internet2绑定PCF2 |
两条绑定共存 |
| 释放特定DNN会话 |
两条绑定 |
删除其中一条 |
保留另一条 |
详细消息流程图
sequenceDiagram
participant UE_A as UE A
participant SMF as SMF/BSF
participant PCF1 as PCF1
participant PCF2 as PCF2
Note over UE_A, PCF2: 前置: UE A已有DNN1会话, BSF中存在绑定信息
Note over UE_A, PCF2: 绑定信息1: SUPI A + IPv6 A1 + DNN1 <-> PCF1
Note over UE_A, PCF2: 阶段1: 在已有上下文中创建新会话绑定
UE_A->>SMF: PDU Session Establishment Request (DNN2)
Note right of UE_A: NAS消息<br/>携带DNN2, S-NSSAI
SMF->>PCF2: POST /npcf-smpolicycontrol/v1/policies
Note right of SMF: Npcf_SMPolicyControl_Create<br/>DNN2会话, 选择PCF2
PCF2-->>SMF: 201 Created
Note over SMF: BSF新增绑定: SUPI A + IPv6 A2 + DNN2 <-> PCF2
Note over UE_A, PCF2: 阶段2: 删除特定会话的绑定信息
UE_A->>SMF: PDU Session Release Request (DNN1)
Note right of UE_A: 仅释放DNN1会话
SMF->>PCF1: DELETE /npcf-smpolicycontrol/v1/policies/{smPolicyId}
Note right of SMF: Npcf_SMPolicyControl_Delete<br/>仅终止DNN1的策略关联
PCF1-->>SMF: 204 No Content
Note over SMF: BSF删除DNN1绑定<br/>保留DNN2绑定不受影响
flowchart LR
subgraph 阶段1_创建新会话绑定
A1["UE A发起DNN2的PDU会话建立"] --> B1["SMF选择PCF2"]
B1 --> C1["SMF向PCF2发起SMPolicyControl_Create"]
C1 --> D1["PCF2返回201 Created"]
D1 --> E1["BSF在已有上下文中新增绑定记录"]
end
subgraph 阶段2_删除特定会话绑定
A2["UE A发起DNN1的PDU会话释放"] --> B2["SMF向PCF1发起SMPolicyControl_Delete"]
B2 --> C2["PCF1返回204 No Content"]
C2 --> D2["BSF仅删除DNN1的绑定"]
D2 --> E2["DNN2绑定信息保持不变"]
end
style E1 fill:#c8e6c9,stroke:#2e7d32,stroke-width:3px
style E2 fill:#c8e6c9,stroke:#2e7d32,stroke-width:3px
2 协议规范与关键技术
2.1 相关协议参考
本篇测试涉及以下3GPP协议规范:
-
TS 29.551(Nbsf_Management服务):定义了BSF的服务化接口,包括会话绑定信息的创建、查询、更新和删除操作。特别是第5.2.2节定义了Nbsf_Management服务的各个操作。
-
TS 29.513(PCF策略控制接口):定义了PCF与SMF之间的N7接口(Npcf_SMPolicyControl),包括策略关联的建立和终止。
-
TS 23.501(5G系统架构):第5.8.2.6节描述了BSF在策略控制架构中的角色——维护PDU会话与PCF之间的绑定关系。
2.2 同一用户上下文中的多会话绑定管理
在5G核心网中,一个用户可以同时建立多个PDU会话(如一个用于Internet上网、一个用于IMS语音)。每个PDU会话可能被分配到不同的PCF。BSF需要支持在同一用户上下文中管理多条独立的绑定记录。
关键设计要点:
-
绑定信息的唯一性:每条绑定记录由(SUPI + DNN + S-NSSAI + IP地址)组合唯一标识;
-
独立删除:删除某条绑定记录不应影响同一用户的其他绑定记录;
-
增量创建:在已有用户上下文中新增绑定记录,不需要重建整个用户上下文。
2.3 SMF内置BSF的绑定管理机制
当BSF内置于SMF时,绑定信息的创建和删除与PDU会话的生命周期紧密耦合:
-
创建时机:SMF为UE建立PDU会话时,在获取PCF ID/地址后,自动在BSF中创建绑定记录;
-
删除时机:SMF处理PDU会话释放时,自动删除对应的绑定记录;
-
查询机制:通过SMF的CLI维护命令epg smf sbi bsf-services show-pcf-binding-info查询绑定信息。
3 消息流程与详细解读
3.1 测试前置条件
-
网络中SMF(内置BSF)、PCF网元系统及操作维护台运行正常;
-
UE A已完成附着,已建立DNN1(Internet9)的PDU会话;
-
网元SMF(内置BSF)中有UE A的会话绑定信息:
-
绑定信息1:UE IPv6 A1, DNN1, S-NSSAI, SUPI A, GPSI A和PCF1 ID或地址;
-
网元SMF(内置BSF)中有UE B的会话绑定信息:
-
绑定信息2:UE IPv6 B1, DNN1, S-NSSAI, SUPI B, GPSI B和PCF2 ID或地址。
3.2 测试步骤解读
阶段1:创建新会话绑定
触发UE A创建DNN2(apn9)的PDU会话。SMF为DNN2会话选择PCF2,在BSF中创建新的绑定记录。
阶段2:删除特定会话绑定
触发UE A释放DNN1(Internet9)相关的PDU会话。SMF向PCF1发送策略关联终止请求,BSF删除DNN1对应的绑定记录,但DNN2的绑定信息保持不变。
3.3 消息流程详图
flowchart TD
A["开始测试"] --> B["查询UE A已有绑定信息"]
B --> C["确认DNN1绑定存在"]
C --> D["触发UE A建立DNN2会话"]
D --> E["SMF选择PCF2并建立策略关联"]
E --> F["BSF新增DNN2绑定记录"]
F --> G["验证: 查询DNN2绑定信息"]
G --> H["触发UE A释放DNN1会话"]
H --> I["SMF向PCF1发送SMPolicyControl_Delete"]
I --> J["PCF1返回204 No Content"]
J --> K["BSF删除DNN1绑定记录"]
K --> L["验证: DNN1绑定已删除"]
L --> M["验证: DNN2绑定仍存在"]
M --> N["测试完成"]
style F fill:#c8e6c9,stroke:#2e7d32,stroke-width:2px
style K fill:#ffcdd2,stroke:#c62828,stroke-width:2px
style M fill:#e3f2fd,stroke:#1565c0,stroke-width:2px
4 关键信令参数分析
4.1 创建新会话前:UE A的初始用户上下文
在创建新会话之前,UE A(IMSI: 4608800000XXXXXX)已有一个DNN1=Internet9的PDU会话。
UE A的SMF用户信息:
[local]SMF09#epg smf user-info identifier-type imsi value 4608800000XXXXXX
mobile-user-information:
subscriber-information:
imsi: 4608800000XXXXXX
msisdn: 86138000XXXXXX
active-pdu-sessions:
active-pdu-session:
pdu-session-id: 5
dnn-in-use: Internet9
an-type: 3GPP
ssc-mode: SSC_MODE_1
ue-address-1:
ipv6: 2a01:172:2401:3:3e7d:da46:1f24:b0b/64
ue-address-2:
ipv4: 172.24.1.5
single-nssai:
slice-service-type: 9
slice-differentiator: 000001
4.2 创建新会话后:UE A拥有两个PDU会话
UE A成功建立DNN2=apn9的PDU会话后,SMF用户信息中显示两个活跃的PDU会话。
新增的DNN2会话信息:
active-pdu-session:
pdu-session-id: 6
dnn-in-use: apn9
an-type: 3GPP
ssc-mode: SSC_MODE_1
ue-address-1:
ipv6: 2a01:172:2401:2:4575:4ba7:27e0:9608/64
ue-address-2:
ipv4: 172.24.1.4
single-nssai:
slice-service-type: 9
slice-differentiator: 000001
4.3 BSF绑定信息对比分析
创建新会话后,BSF中存在两条绑定记录。通过CLI分别查询:
DNN1(Internet9)的绑定信息——绑定PCF1:
[local]SMF09#epg smf sbi bsf-services show-pcf-binding-info address 172.24.1.5
pcf-binding-information:
snssai-sst: 9
snssai-sd: 000001
ueIp: 2a01:172:2401:3:3e7d:da46:1f24:b0b
dnn: Internet9
supi: 4608800000XXXXXX
gpsi: 86138000XXXXXX
pcfId: 2244c290-3621-4d72-b718-e0194603ab11
pcfDiameterHost: rxDiam-Host.com
pcfDiameterRealm: rxDiam-Realm.com
pcfIpEndPoints: 10.10.32.32:9091
DNN2(apn9)的绑定信息——绑定PCF2:
[local]SMF09#epg smf sbi bsf-services show-pcf-binding-info address 172.24.1.4
pcf-binding-information:
snssai-sst: 9
snssai-sd: 000001
ueIp: 2a01:172:2401:2:4575:4ba7:27e0:9608
dnn: apn9
supi: 4608800000XXXXXX
gpsi: 86138000XXXXXX
pcfId: 4444c290-3621-4d72-b718-e0194603ab11
pcfDiameterHost: rxDiam-Host.com
pcfDiameterRealm: rxDiam-Realm.com
pcfIpEndPoints: 10.10.32.34:9091
两条绑定信息的对比:
| 参数 |
DNN1绑定 (Internet9) |
DNN2绑定 (apn9) |
| IPv4地址 |
172.24.1.5 |
172.24.1.4 |
| IPv6地址 |
2a01:...:1f24:b0b |
2a01:...:27e0:9608 |
| DNN |
Internet9 |
apn9 |
| SUPI |
4608800000XXXXXX |
4608800000XXXXXX |
| PCF ID |
2244c290-...-e0194603ab11 |
4444c290-...-e0194603ab11 |
| PCF IP |
10.10.32.32:9091 |
10.10.32.34:9091 |
| PDU Session ID |
5 |
6 |
4.4 删除特定会话的PDU释放信令
UE A发起DNN1(Internet9)的PDU会话释放,SMF通过NGAP流程处理:
# UE A发起DNN1的PDU会话释放
lts_run_mobiles '90002, 1, [{504,6}]'
# NGAP信令交互
INFO MS-group 1: Sending NGAP Uplink N1 transport
with PDU Session Release Request
GnodebId: 5:180005
AmfId: 4:9932677912
INFO protocol_proxy:
ngap_pduSessionResourceReleaseCommand
pduSessionToBeReleaseItem: 6
INFO MS-group 1:
Recv NGAP PDU Session Resource Release Command
Send NGAP PDU Session Resource Release Response
Recv NAS PDU Session Release Command: 6
DEBUG MS-group 1: stop_payload, MsId:90002, PdpId 2
关键信令参数:
| 参数 |
值 |
说明 |
| pduSessionId |
6 |
标识要释放的PDU会话编号 |
| GnodebId |
5:180005 |
服务基站标识 |
| AmfId |
4:9932677912 |
AMF分配的UE NGAP ID |
| Release Command |
PDU Session Release Command |
网络通知UE会话释放 |
| stop_payload |
MsId:90002, PdpId 2 |
停止该PDU会话的负载 |
5 测试验证与数据解读
5.1 验证一:DNN1绑定信息已成功删除
PDU会话释放后,查询DNN1对应的IP地址(172.24.1.4),BSF返回绑定信息不存在:
[local]SMF09#epg smf sbi bsf-services show-pcf-binding-info address 172.24.1.4
pcf-binding-information:
Error: BINDING_INFORMATION_NOT_FOUND
解读: BINDING_INFORMATION_NOT_FOUND表明BSF已成功删除DNN1(apn9)对应的绑定记录。PCF2的策略关联已被终止,绑定信息已从BSF中完全清除。
5.2 验证二:DNN2绑定信息不受影响
同时查询DNN2对应的IP地址(172.24.1.5),BSF仍然返回完整的绑定信息:
[local]SMF09#epg smf sbi bsf-services show-pcf-binding-info address 172.24.1.5
pcf-binding-information:
snssai-sst: 9
snssai-sd: 000001
ueIp: 2a01:172:2401:3:3e7d:da46:1f24:b0b
dnn: Internet9
supi: 4608800000XXXXXX
gpsi: 86138000XXXXXX
pcfId: 2244c290-3621-4d72-b718-e0194603ab11
pcfDiameterHost: rxDiam-Host.com
pcfDiameterRealm: rxDiam-Realm.com
pcfIpEndPoints: 10.10.32.32:9091
解读: DNN2(Internet9)的绑定信息完全不受影响,PCF1的策略关联依然有效。这证明了BSF支持选择性删除——仅删除指定DNN的绑定记录,不影响同一用户的其他绑定。
5.3 测试结果汇总
| 验证项 |
预期结果 |
实际结果 |
结论 |
| 创建DNN2新会话绑定 |
BSF新增绑定记录 |
查询到PCF2绑定信息 |
通过 |
| 删除DNN1特定绑定 |
仅删除DNN1绑定 |
返回BINDING_INFORMATION_NOT_FOUND |
通过 |
| DNN2绑定不受影响 |
DNN2绑定保留 |
查询到完整PCF1绑定信息 |
通过 |
| 同一用户多绑定独立管理 |
互不影响 |
各绑定独立创建和删除 |
通过 |
6 小结与思考
本篇验证了BSF在同一用户上下文中管理多条会话绑定信息的能力。测试结果表明:
-
增量创建:BSF支持在已有用户上下文中创建新的会话绑定,无需重建整个用户上下文。当用户建立新的PDU会话时,BSF自动新增绑定记录。
-
选择性删除:BSF支持仅删除特定DNN的绑定信息,不影响同一用户的其他绑定记录。这是通过绑定记录的唯一标识(SUPI + DNN + IP地址)实现的。
-
多PCF管理:同一用户的不同PDU会话可以绑定到不同的PCF实例,BSF能正确维护多条独立的映射关系。
延伸思考:
-
并发场景:当用户同时释放多个DNN会话时,BSF是否能保证每条绑定记录的独立删除不会产生竞争条件?在实际网络中,这种情况虽然不常见,但在异常恢复场景下可能出现。
-
绑定数量限制:一个用户上下文中最多能存储多少条绑定记录?这取决于SMF的实现限制和网络规划。在实际运营中,一个用户通常同时只有2-3个PDU会话(Internet + IMS + 特定DNN),因此不太可能触达上限。
-
跨SMF场景:当同一用户的不同PDU会话由不同SMF服务时(如ULCL场景),绑定信息存储在不同的BSF实例中。AF查询时需要通过NRF发现正确的BSF,这增加了查询的复杂度。
协议参考:根据3GPP TS 29.551第5.2.2.3节,BSF应支持在同一个SUPI下管理多条独立的PcfBinding记录。每条记录由IPv4地址/IPv6前缀、DNN和S-NSSAI的组合唯一标识。当SMF删除某条PDU会话时,BSF仅删除对应的绑定记录,不影响同一SUPI下的其他绑定。
51学通信(微信:gprshome201101)——专注5G核心网与IMS技术教学,已帮助10000+通信工程师提升技能。知识星球搜"51学通信",200+小时视频+3000+文章等你来。