深度解析 3GPP TS 23.122:4.9 SNPN selection process (Part 4 - 本地化服务与异常处理)

本文技术原理深度参考了3GPP TS 23.122 V18.10.0 (2025-03) Release 18规范中,关于“4.9.3.3 Additional conditions for SNPN selection for MS supports access to an SNPN providing access for localized services in SNPN”和“4.9.4 Abnormal cases”的核心章节,旨在为读者深入解读5G专网中动态、情境感知的网络选择机制以及关键的故障处理逻辑。

引言:从“新员工”到“特派员”

在“Part 3”中,我们见证了“未来工厂”的新设备——环境监测器T01,是如何通过Onboarding引导服务,从一台“大脑空白”的设备,成功获取“数字身份证”,成为工厂专网Future-Fab-Net的正式一员。

今天,我们的故事将迎来新的篇章。我们的老朋友,物流机器人AGV-007,在完成了常规的生产物料运输任务后,接到了一个高度机密的“特派任务”:向工厂的核心研发区域——“量子芯片实验室”运送一批珍贵材料。

这个实验室并非普通的生产车间,它拥有自己独立的、安保级别更高的专用网络Quantum-Lab-Net,并且只在特定的实验窗口期才允许外部设备接入。AGV-007如何智能地感知到自己进入了“特殊区域”,并在正确的时间窗口切换到正确的网络?又或者,当一批设备集体“罢工”,无法连接任何网络时,工程师李工该如何抽丝剥茧,定位问题所在?

本篇文章将聚焦SNPN选择流程中两个极为重要的方面:由时空条件触发的本地化服务选择,以及所有正常流程都失效后的异常情况处理


1. AGV-007的“VIP通行证”:本地化服务选择 (4.9.3.3)

为了让AGV-007能够顺利完成这次“特派任务”,工厂IT部门提前为它下发了一张临时的“VIP通行证”。这张通行证,在3GPP的语境下,就是一条“本地化服务(Localized Services in SNPN)”的配置策略。这张通行证的核心信息包括:

  • 目标网络Quantum-Lab-Net
  • 时间有效性:本周五下午 14:00 - 16:00
  • 位置有效性:量子芯片实验室所在的地理围栏区域

这个功能使得SNPN的网络选择不再是静态的、一成不变的,而是变得“聪明”起来,能够根据设备所处的时间和空间动态地调整自己的行为。规范定义了触发这种特殊网络选择的几个关键“扳机”。

If the MS supports access to an SNPN providing access for localized services in SNPN, the UE is in automatic SNPN selection mode and: a) access for localized services in SNPN is changed between disabled and enabled; or b) access for localized services in SNPN is enabled; and:

  1. the selected SNPN is an SNPN selected for localized services in SNPN, and the validity information for the selected SNPN is no longer met; or
  2. the selected SNPN is not an SNPN selected for localized services in SNPN, and the validity information for an entry in the “credentials holder controlled prioritized list…” changes from not met to met;

这段原文虽然晦涩,但它精确地描述了触发网络重选的三个核心场景。让我们跟随AGV-007的脚步来一一解析。

1.1 Trigger 1: “VIP任务”的启动与关闭

a) access for localized services in SNPN is changed between disabled and enabled;

这个触发器对应的是本地化服务功能本身的总开关。

场景解析:周五下午13:30,李工通过网管平台,远程激活了AGV-007的“本地化服务接入”功能。这个动作本身,就可能触发AGV-007进行一次网络重选,去检查是否有符合条件的本地化服务网络已经可用。反之,当任务完成后,李工关闭此功能,同样会触发一次重选,让AGV-007切换回常规网络。

1.2 Trigger 2: “门禁卡”生效——进入VIP区域

  1. …the validity information for an entry… changes from not met to met;

这是最核心的触发条件,意为“有效性信息从未满足变为满足”。

场景解析:周五下午14:05,AGV-007满载着材料,缓缓驶向量子芯片实验室。当它穿越一道安全门,进入实验室的地理围栏区域时,它的通信模块发生了以下判断:

  1. 检查时间:当前时间14:05,在通行证规定的14:00-16:00窗口内。(时间条件满足)
  2. 检查位置:当前GPS坐标,在通行证规定的地理围栏内。(位置条件满足)

就在这一刻,“validity information changes from not met to met”的条件被触发!AGV-007的通信模块立即意识到,它有更高优先级的任务了。它会立刻启动一次网络重选流程,主动去寻找并连接Quantum-Lab-Net

1.3 Trigger 3: 任务结束——离开VIP区域或时间失效

  1. …the validity information for the selected SNPN is no longer met;

这个触发条件正好相反,意为“有效性信息从满足变为不再满足”。

场景解析一(离开区域):下午14:30,AGV-007完成了材料交接,驶出量子芯片实验室的安全门。它的通信模块再次进行判断:

  1. 检查时间:当前时间14:30,仍在窗口期内。
  2. 检查位置:当前GPS坐标,已在地理围栏之外。(位置条件不再满足)

“validity information is no longer met”条件被触发!AGV-007明白它的“VIP通行证”在此地已失效。它会立即启动网络重选,切换回覆盖全厂的Future-Fab-Net

场景解析二(时间失效):假设AGV-007在实验室内的工作一直持续到下午16:01。此时,即使它还停留在实验室内,它的通信模块也会发现:

  1. 检查时间:当前时间16:01,已超出14:00-16:00的窗口期。(时间条件不再满足)

同样,“validity information is no longer met”条件被触发。AGV-007会主动断开与Quantum-Lab-Net的连接,并切换回Future-Fab-Net

1.4 安全第一:紧急情况下的特殊处理

  • if the MS does not have an emergency PDU session and is not registered for emergency services, the MS may perform SNPN selection according to clause 4.9.3.1.1; or
  • otherwise, if the validity information for the selected SNPN is no longer met the MS shall perform a local release of all PDU sessions except for the emergency PDU session. The MS may perform SNPN selection… after the emergency PDU session is released.

规范在这里增加了一个至关重要的安全条款。

场景解析:下午15:59,就在通行证即将失效的前一分钟,实验室突然发生烟雾报警。工厂的安全系统通过Quantum-Lab-Net向AGV-007下发了“紧急停机并保持信道”的指令。AGV-007立即停车,并与安全系统建立了一个最高优先级的紧急PDU会话。

下午16:01,通行证的时间失效了。按照正常逻辑,AGV-007应该切换回Future-Fab-Net。但规范规定,如果设备当前有紧急会话,那么所有非紧急的网络重选动作都将被抑制。AGV-007会继续保持在Quantum-Lab-Net上,直到紧急会话被安全系统明确释放。

这个机制确保了在任何情况下,都不会因为常规的网络切换而中断生死攸关的紧急通信。安全,永远是第一位的。


2. “网络失联”的终极诊断:异常情况处理 (4.9.4)

现在,让我们把视角切换回工程师李工。他今天遇到了一个棘手的问题:仓库区的一批AGV集体“趴窝”,屏幕上都显示“无服务”。他知道,这些设备肯定是在自动选择流程的每一步都失败了,最终陷入了规范定义的“异常情况”。

If: a) the MS does not support access to an SNPN using credentials from a credentials holder and:

  1. the “list of subscriber data” is empty; or
  2. for each entry of the “list of subscriber data” … i) there has been an authentication failure …; or ii) the MS has received an “illegal ME” or “illegal UE” response…

规范将异常情况分为两大类,李工需要像侦探一样,根据线索来判断属于哪一类。

2.1 异常案例一:“白板机”与“废弃的工卡”

场景解析:全新的“白板”设备

李工首先检查了一台故障AGV。连接上调试器后,他发现这台AGV的“用户数据列表”是空的。这是一台全新的设备,因为产线上的配置服务器恰好宕机,导致它在出厂前没有被写入任何订阅信息。

a) 1) the “list of subscriber data” is empty;

这就是最简单的一种异常情况。设备没有任何“身份证”,自然无法被任何需要身份验证的网络所接纳。

场景解析:过期的安全密钥

接着,李工检查了另一台故障AGV。他发现这台设备的“用户数据列表”里有Future-Fab-Net的订阅信息,但查看通信日志,满屏都是“Authentication Failure”(认证失败)。

a) 2) i) there has been an authentication failure for the subscriber identifier of the entry on the SNPN…

原来,IT部门昨晚进行了一次全网安全密钥轮换,但这批AGV因为处于离线充电状态,没有及时更新自己的密钥。今天开机后,它们拿着“过期的暗号”去“敲门”,自然被网络拒之门外。因为它们的列表里只有这一个订阅,所以最终陷入了异常。

场景解析:被拉黑的“问题固件”

在第三台AGV上,李工看到了更严重的问题。日志显示网络返回了“Illegal UE”(非法UE)的拒绝原因。

a) 2) ii) the MS has received an “illegal ME” or “illegal UE” response to an LR request…

他查询了IT部门的记录,发现这批AGV的固件版本存在一个严重的安全漏洞。为了防止漏洞扩散,IT部门在核心网的设备身份寄存器(EIR)中,将所有使用该固件版本的UE都加入了“黑名单”。

2.2 最终诊断:进入“No SIM”状态

无论是以上哪种情况——“白板机”、“密钥过期”还是“固件被禁”——只要AGV遍历了自己所有的订阅信息,发现每一个都无法成功注册,它就会最终进入一个特殊的状态。

then effectively there is no selected SNPN (“No SIM” state).

这个“No SIM”状态是一个历史术语的沿用,在SNPN的语境下,它更准确的含义是**“无有效订阅可用”**。

进入这个状态后,AGV会停止所有常规的网络选择尝试,彻底“躺平”。它的网络连接就断了,无法接收任何生产指令。这正是李工在监控大屏上看到的“集体趴窝”的根本原因。

2.3 如何恢复?

In these cases, the states of the cell selection process are such that the “list of subscriber data” (if any) or the PLMN subscription (if any) is not used. An MS in “No SIM” state configured with default UE credentials for primary authentication may perform SNPN selection procedure for onboarding services in SNPN.

设备并不会彻底“死亡”。规范留了一条“生路”:即使在“No SIM”状态下,设备仍然可以去尝试Onboarding引导服务

李工找到了问题所在后,他的解决步骤如下:

  1. 对于“白板机”:他只需要将设备推到覆盖有Onboarding信号的区域,设备就会自动获取配置,恢复正常。
  2. 对于“密钥过期”和“固件被禁”的设备:他首先需要联系IT部门,将这些设备的身份从黑名单中暂时移除,或者为它们重新签发密钥。然后,他同样可以利用Onboarding流程,或者通过本地连接,为这些设备重新推送正确的订阅数据。

异常处理流程的终点,往往是另一个流程的起点(如Onboarding或人工干预),形成了一个完整的设备生命周期管理闭环。


3. FAQ环节

Q1:本地化服务(Localized Services)和网络切片(Network Slicing)有什么区别?

A1:它们是两个不同维度但可以结合使用的技术。网络切片是逻辑上的网络资源划分,它为不同业务(如低时延、高带宽)提供差异化的服务质量保障,但它本身通常是广域覆盖的。而本地化服务是基于时空条件的网络选择策略,它决定了设备在何时何地“应该去连接哪个网络”。一个典型的应用就是,AGV-007在进入实验室后,通过本地化服务策略,切换到了Quantum-Lab-Net这个SNPN,然后在这个SNPN内部,它可能会根据URSP规则,将控制信令发送到该网络的“低时延切片”中。

Q2:如果一个区域同时满足多个本地化服务策略,设备会如何选择?

A2:规范定义了“credentials holder controlled prioritized list of preferred SNPNs for access for localized services in SNPN”,即IT部门可以为这些本地化服务网络设定一个优先级列表。设备会按照这个列表的顺序进行尝试。如果没有定义优先级,通常会由设备实现(如选择信号最强的)来决定。

Q3:AGV进入“No SIM”状态后,除了尝试Onboarding,还会做什么吗?

A3:在“No SIM”状态下,设备的主要行为就是停止常规的网络搜索,以节省电量。除了周期性地、低频地扫描是否有Onboarding网络出现外,它还会被允许发起紧急呼叫(如果设备支持且场景需要)。除此之外,它会保持静默,等待人工干-预或网络环境发生根本性变化。

Q4:规范4.9.4中区分了“支持凭证持有者”和“不支持凭证持有者”的两种情况,这在实际中有什么区别?

A4:这反映了设备身份管理架构的差异。“不支持凭证持有者”的场景,可以理解为一个简单的闭环系统,设备的身份和凭证完全在设备自身的“用户数据列表”中定义。而“支持凭证持有者”的场景,则是一个更高级的架构,设备的身份可能与一个更广泛的、集中的身份管理系统(Credentials Holder)相关联,比如企业的统一身份认证平台。在这种架构下,异常情况的判断逻辑会更复杂,因为它不仅要考虑设备自身的配置,还要考虑与这个外部身份系统的交互结果。

Q5:工程师李工如何判断一台设备是因为“认证失败”还是“被列为非法”而被拒绝?

A5:这取决于网络在拒绝注册时返回的拒绝原因值(Cause Value)。3GPP TS 24.501等信令规范为各种拒绝场景都定义了唯一的数字原因值。例如,“IMSI unknown in UDM”对应一个原因值,“Security algorithm or key unacceptable”对应另一个。李工通过查看设备底层的信令日志,解读这个原因值,就能准确地判断出网络拒绝设备的根本原因,从而进行针对性的排障。