好的,我们将以雷霆之势,继续深入附录C的最后一个核心技术腹地,揭开5G漫游导引中最精妙的用户体验保障机制——SOR-CMCI的神秘面纱。
深度解析 3GPP TS 23.122:附录C Control plane solution for steering of roaming in 5GS (Part 3 - “智能时钟”SOR-CMCI与连接态漫游导引)
本文技术原理深度参考了3GPP TS 23.122 V18.10.0 (2025-03) Release 18规范中,关于“Annex C.4 Enhanced 5G control plane steering of roaming for the UE in connected mode”的核心章节,旨在为读者详细解读5G终端在进行数据业务时,是如何通过SOR-CMCI机制,智能、优雅地执行漫游导引策略的。
引言:当“换网指令”遭遇“重要会议”
在“Part 2”中,我们通过信令流程图,见证了Alex的手机在法兰克福机场,是如何在注册过程中和注册后,接收到来自归属运营商(HPLMN)的“漫游指南”的。这份指南明确指示他,应该从当前所在的“运营商B”切换到优先级更高的“运营商C”。
但此时,一个新的挑战出现了:Alex刚刚坐进机场贵宾厅,便通过手机接入了一场至关重要的跨国视频会议。他的手机正处于连接模式(Connected Mode),大量的数据流正在实时交换。
如果手机此时“耿直地”立即执行“换网指令”,去搜索并切换到运营商C,将不可避免地导致PDU会话中断,视频会议瞬间掉线。这对于正在做重要演示的Alex来说,无疑是一场灾难。
为了避免这种糟糕的用户体验,3GPP的专家们为5G漫游导引(SoR)设计了一个精巧的“缓冲”与“决策”机制——SOR-CMCI (Steering of Roaming Connected Mode Control Information)。它就像一个“智能时钟”,告诉手机,在执行“换网”这个大动作之前,应该“等多久”,以及“在等什么”。
今天,我们将聚焦于Alex的这场视频会议,看看SOR-CMCI是如何像一位贴心的私人助理,为他“守护”好当前的业务,并选择最佳时机完成网络切换的。
1. 连接态的困境:为何需要SOR-CMCI?(C.4.1)
The steering of roaming connected mode control information (SOR-CMCI) enables the HPLMN to control the timing of a UE in 5GS connected mode to move to idle mode to perform the steering of roaming.
规范开篇就点明了SOR-CMCI的核心使命:控制UE从连接模式转换到空闲模式的时间点,以便执行漫游导引。
我们必须理解一个前提:空闲模式是执行PLMN选择/重选的最佳时机。在连接模式下,终端与网络之间有紧密的RRC连接和数据链路,任何网络切换都意味着一次“硬中断”。而SOR-CMCI的本质,就是将这个“硬中断”的决策权,从手机的默认行为,转移到了HPLMN的精细化策略控制之下。
场景解析:Alex的视频会议困境
- HPLMN的目标:将Alex从成本较高、质量稍逊的运营商B,引导到合作伙伴运营商C。
- UE的状态:正通过运营商B的网络,进行一场基于特定网络切片(例如,
S-NSSAI=Slice_Video_Conference)的视频会议。 - 潜在的冲突:立即执行HPLMN的导引策略会导致业务中断;完全不执行又违背了HPLMN的漫游策略。
SOR-CMCI正是为了调和这一矛盾而生。
2. “智能时钟”的构造:SOR-CMCI规则详解 (C.4.1 & C.4.2)
HPLMN下发的SOR-CMCI并非一个简单的延迟时间,而是一套**“条件-动作”规则集**。每一条规则都由两部分构成:一个判决标准(Criterion)和一个关联的定时器(Tsor-cm)。
SOR-CMCI consists of SOR-CMCI rules. Each SOR-CMCI rule consists of the following parameters: i) a criterion of one of the following types:
- PDU session attribute type criterion;
- service type criterion;
- SOR security check criterion; or
- match all type criterion; and ii) a value for Tsor-cm timer associated with each criterion…
2.1 判决标准 (Criterion):我在做什么?
手机需要根据自己“正在做什么”来匹配相应的规则。规范定义了以下几种“业务类型”:
-
PDU会话属性 (PDU session attribute):这是最精细的判断依据,可以基于:
- DNN (Data Network Name):例如,
DNN="ims"代表IMS业务(如VoNR通话),DNN="enterprise"代表连接公司内网的VPN业务。 - S-NSSAI (Single Network Slice Selection Assistance Information):即网络切片信息。例如,
S-NSSAI=Slice_Video_Conference。
- DNN (Data Network Name):例如,
-
服务类型 (Service type):判断更上层的业务状态,例如:
- MMTEL voice/video call: 正在进行VoNR语音或视频通话。
- IMS registration related signalling: 正在进行IMS注册。
- SMS over NAS or SMSoIP: 正在通过NAS层或IMS发送短信。
-
SOR安全校验 (SOR security check criterion):一个特殊标准,用于处理当收到的SoR信息本身安全校验失败的情况。
-
匹配所有 (Match all type):这是一个“默认规则”,当没有任何其他规则能匹配上当前业务时,就采用这条规则。
2.2 Tsor-cm定时器:我该等多久?
每个判决标准都关联一个Tsor-cm定时器值。这个值告诉手机,在匹配到该规则后,应该等待多长时间再行动。这个值可以是:
- 一个具体的时间值:例如60秒,120秒等。
- 一个特殊值“infinity”(无穷大):意味着手机必须等到这个业务完全结束,才能行动。
2.3 场景模拟:Alex收到的SOR-CMCI“指令集”
HPLMN的SOR-AF为Alex动态生成了如下一份SOR-CMCI规则集,并随同“切换到运营商C”的指令一起下发:
| 规则ID | 判决标准 (Criterion) | 定时器 Tsor-cm | 含义 |
|---|---|---|---|
| 1 | Service Type = MMTEL voice call | infinity | 语音通话期间,不许动! |
| 2 | S-NSSAI = Slice_Video_Conference | infinity | 视频会议切片激活期间,不许动! |
| 3 | DNN = internet | 60s | 普通上网业务,给你60秒处理完。 |
| 4 | Match All | 10s | 其他任何业务,给你10秒。 |
3. 时钟启动:SOR-CMCI的应用之旅 (C.4.2)
现在,让我们看看Alex的手机是如何应用这套“指令集”的。
During SOR procedure and while applying SOR-CMCI, the UE shall determine the time to release the PDU session(s) or the services as follows:
第一幕:视频会议正在进行
- 接收指令:Alex的手机收到了“请切换到运营商C”的导引信息,以及上述4条SOR-CMCI规则。
- 匹配规则:手机检查当前正在进行的业务。它发现有一个激活的PDU会话,其S-NSSAI为
Slice_Video_Conference。这个业务精确匹配了规则2。 - 启动定时器:手机为这个PDU会话启动了一个关联的
Tsor-cm定时器,值为infinity。
结果:只要视频会议不结束,这个“无穷大”的定时器就永远不会到期。因此,手机会“智能地”推迟执行“切换到运营商C”的指令,全力保障Alex的会议。
第二幕:会议结束,开始浏览网页
Alex的视频会议结束了,承载会议视频流的PDU会话被释放。
- 定时器停止:与
Slice_Video_Conference关联的“无穷大”定时器随之停止。 - 重新评估:手机再次检查当前业务。现在,Alex只是在用浏览器看新闻,这个业务的PDU会话匹配了规则3 (
DNN=internet)。 - 启动新定时器:手机立即为这个上网业务启动了一个新的
Tsor-cm定时器,值为60秒。
结果:手机屏幕上,Alex可以正常地浏览新闻。但在后台,一个60秒的倒计时已经开始。手机给了Alex 60秒的“宽限期”。
第三幕:倒计时结束,执行切换
60秒过去了,Tsor-cm定时器到期。
- 释放业务:手机本地释放(locally release)了用于上网的PDU会话。对Alex来说,可能只是感觉到网页突然加载不出来了。
- 进入空闲模式:由于没有了激活的PDU会话,手机从连接模式转换为空闲模式。
- 执行SoR:进入空闲模式后,手机立即执行之前收到的导引指令,开始搜索并尝试注册到优先级更高的运营商C网络上。
几秒钟后,注册成功,手机屏幕上显示出运营商C的名称,一个新的PDU会话被重新建立,Alex又可以继续上网了。整个过程,关键的视频会议得到了完整保障,而影响较小的网页浏览也在一个合理的延迟后,被优雅地“中断”以完成网络切换。
3.1 绝对的豁免权:紧急服务
The UE shall consider the following services as exempted from being forced to release…: i) emergency services.
规范中有一个最高优先级的豁免条款:紧急服务。 如果Alex不幸需要拨打紧急电话,那么无论SOR-CMCI规则如何定义,手机都绝对不会为了执行漫游导引而中断紧急呼叫。用户的生命安全永远高于运营商的商业策略。
4. SOR-CMCI的生命周期管理 (C.4.1)
为了让“智能时钟”更可靠地工作,规范还定义了它的存储和更新规则。
-
优先级原则:
The SOR-CMCI received over N1 NAS signalling takes precedence over the SOR-CMCI stored in the non-volatile memory of the ME or stored in the USIM.
新收到的指令 > 手机内存里的旧指令 > SIM卡里的更旧指令。这确保了策略的实时性。
-
持久化存储:
The UE shall store the configured SOR-CMCI in the non-volatile memory of the ME … when the UE receives the “Store SOR-CMCI in ME” indicator…
HPLMN可以指示UE将下发的SOR-CMCI规则集保存在手机的非易失性存储中。这样,即使Alex的手机重启,这套“智能时钟”规则依然有效,直到HPLMN下发新的规则来覆盖它。
5. FAQ环节
Q1:SOR-CMCI最大的好处是什么?
A1:最大的好处是保障了连接态下的用户业务体验。它将漫游导引从一个可能导致业务中断的“粗暴”行为,变成了一个能够感知业务状态、选择最佳时机的“智能”行为,实现了运营商漫游策略和用户体验之间的完美平衡。
Q2:如果我同时进行多个业务,比如一边VoNR通话,一边后台下载文件,手机会如何应用SOR-CMCI规则?
A2:规范规定:“If there are more than one criterion applicable… then the Tsor-cm timer with the highest value shall apply.” 即以最长的定时器为准。在你的场景中,VoNR通话匹配了“infinity”定时器,而后台下载可能匹配了“60s”定时器。“infinity” > “60s”,所以手机会以“infinity”为准,必须等到你的VoNR通话结束后,才会开始考虑为下载业务启动60秒的定时器。
Q3:SOR-CMCI只在5G SA网络中有效吗?我在4G漫游时,这个机制会工作吗?
A3:是的,SOR-CMCI是5G SA(NG-RAN接入)专属的增强功能。规范明确指出:“If the UE selects a cell of any access technology other than NG-RAN, the SOR procedure is terminated”。如果你漫游到了4G网络,即使收到了SoR信息,SOR-CMCI这部分内容也会被忽略,终端将遵循传统的漫游选择逻辑。
Q4:作为用户,我能看到或者修改这些SOR-CMCI规则吗?
A4:不能。SOR-CMCI完全由归属运营商(HPLMN)在后台配置和下发,对用户是完全透明的。它属于运营商精细化网络运营的一部分,用户无法感知也无需干预。
Q5:如果我在一个Tsor-cm定时器(比如60秒)倒计时期间,手动切换了网络,会发生什么?
A5:用户的手动操作拥有最高优先级。规范规定:“Upon switching to the manual network selection mode, the UE shall stop any Tsor-cm timer, if running.” 你一旦进入手动选网界面,所有正在运行的Tsor-cm定时器都会被立即停止,漫游导引的自动流程被中断,控制权完全交还给你。