好的,我们继续深入附录C的腹地,探索漫游导引(SoR)的具体信令交互过程。

深度解析 3GPP TS 23.122:附录C Control plane solution for steering of roaming in 5GS (Part 2 - SoR的信令之舞与Stage-2流程详解)

本文技术原理深度参考了3GPP TS 23.122 V18.10.0 (2025-03) Release 18规范中,关于“Annex C: Control plane solution for steering of roaming in 5GS”的C.2和C.3章节,旨在为读者通过详细的信令流程图解,揭示5G漫游导引在“注册时”和“注册后”两种场景下的完整端到端交互过程。

引言:从“理论”到“实践”的信令之舞

在“Part 1”中,我们了解了5G漫游导引(SoR)的核心思想:归属运营商(HPLMN)如何像一位远程舵手,通过下发“漫游指南”,引导其用户的终端(UE)选择最优的漫游网络(VPLMN)。我们还学习了HPLMN的“工具箱”,包括更新优先列表、智能时钟(SOR-CMCI)等。

今天,我们将从宏观原理深入到微观实现。当HPLMN决定要“掌舵”时,这份“漫游指南”究竟是如何通过一张张无形的信令“快递单”,跨越国界,从HPLMN的“大脑”(SOR-AF)精准送达用户手机的?这个过程,就是一场在核心网各网元之间上演的、严谨而优美的“信令之舞”。

我们的主角,商务顾问Alex,此刻正身处法兰克福机场。他刚刚开机,手机正尝试在本地的“运营商A”网络上进行初始注册。与此同时,一场跨越两大洲的信令交互,正在他毫无察觉的情况下悄然上演。我们将以此次注册为契机,详细拆解SoR的两种核心Stage-2流程:注册时导引注册后导引


1. 注册时导引(Steering during registration):在“敲门”时递上新“剧本” (C.2)

这是SoR最常见、也最关键的应用场景。HPLMN利用UE发起注册的“机会窗口”,将最新的漫游策略下发给UE。整个过程被清晰地描绘在规范的“Figure C.2.1: Procedure for providing list of preferred PLMN/access technology combinations and the SOR-CMCI, if any, or secured packet during registration”中。

让我们跟随这张“作战地图”,一步步拆解Alex手机的注册过程。

1.1 图表解析:Figure C.2.1 核心信令流程

这张图展示了UE(Alex的手机)、VPLMN AMF(法兰克福运营商A的AMF)、HPLMN UDM(Alex归属运营商的UDM)以及SOR-AF之间的一系列交互。

步骤 1: UE VPLMN AMF: REGISTRATION REQUEST

  1. The UE to the VPLMN AMF: The UE initiates initial registration… to the VPLMN AMF by sending REGISTRATION REQUEST message…

Alex的手机开机后,扫描到运营商A的5G信号,于是发起“敲门”动作——发送**REGISTRATION REQUEST(注册请求)**消息。这是整个信令之舞的开场。

步骤 2: VPLMN AMF HPLMN UDM: Nudm_UECM_Registration / Nudm_SDM_Get

  1. Upon receiving REGISTRATION REQUEST message, the VPLMN AMF executes the registration procedure… As part of the registration procedure: a) the AMF provides the registration type to the UDM using Nudm_UECM_Registration… b) if the VPLMN AMF does not have subscription data for the UE… the VPLMN AMF invokes Nudm_SDM_Get service operation to the HPLMN UDM…

运营商A的AMF收到了请求,但它不认识Alex。于是,它必须向Alex的归属网络“核实身份”。这个过程分为两步:

  1. 通知UDM:AMF首先调用Nudm_UECM_Registration服务,通知HPLMN的UDM:“你的用户Alex现在正在我的地盘(德国,运营商A)上,请求注册。”
  2. 获取签约数据:紧接着,AMF会调用Nudm_SDM_Get服务,向UDM请求Alex的“签约档案”,包括他的鉴权信息、允许使用的业务、QoS配置等。关键点在于,如果HPLMN决定实施SoR,UDM就会在这个环节“hold”住,先不急着回复,而是转向下一步。

步骤 3: HPLMN UDM > SOR-AF: 获取导引策略

3a) If the user subscription information indicates to send the steering of roaming information… then the HPLMN UDM shall provide the steering of roaming information to the UE… 3b) The HPLMN UDM to the SOR-AF: Nsoraf_SoR_Get request (VPLMN ID, SUPI of the UE, access type…). 3c) The SOR-AF to the HPLMN UDM: Nsoraf_SoR_Get response (…the list of preferred PLMN/access technology combinations…).

UDM在收到AMF的请求后,发现Alex的签约信息里标记着“需要进行漫游导引”。于是,UDM立即向“幕后大脑”SOR-AF发起了一次Nsoraf_SoR_Get请求,请求中包含了关键的上下文信息:

  • SUPI of the UE: Alex的唯一身份标识。
  • VPLMN ID: Alex当前所在的网络(运营商A)。
  • Access type: Alex正在通过5G NR接入。

SOR-AF收到请求后,开始它的“神算”。它可能发现:与运营商A相比,运营商B的漫游结算价更低,且网络质量更好。于是,它生成了一份新的“漫游指南”(包含优先列表和SOR-CMCI),并通过Nsoraf_SoR_Get response回复给UDM。

步骤 4 & 5: UDM将策略打包并返回VPLMN

  1. The HPLMN UDM to the VPLMN AMF: The HPLMN UDM sends a response to the Nudm_SDM_Get service operation… which includes the steering of roaming information within the Access and Mobility Subscription data.

UDM收到了SOR-AF的“锦囊妙计”。它会将这份“漫游指南”安全地打包在Alex的签约数据中,作为对步骤2中Nudm_SDM_Get请求的回复,发送给远在法兰克福的VPLMN AMF。

  1. The VPLMN AMF to the HPLMN UDM: …VPLMN AMF also invokes Nudm_SDM_Subscribe… to subscribe to notification of changes of the subscription data…

同时,运营商A的AMF还会向UDM发起一次Subscribe(订阅)请求,表示“以后Alex的签约数据有任何风吹草动,请及时通知我”。

步骤 6: VPLMN AMF UE: REGISTRATION ACCEPT

  1. The VPLMN AMF to the UE: The VPLMN AMF shall transparently send the received steering of roaming information to the UE in the REGISTRATION ACCEPT message;

这是“信使”的最后一棒。VPLMN AMF将包含“漫游指南”的签约数据,封装在**REGISTRATION ACCEPT(注册接受)**消息中,发送给Alex的手机。

此刻,Alex的手机不仅收到了“欢迎加入”的许可,还同时收到了一份来自“老家”的、改变游戏规则的“新剧本”。

步骤 7 - 11: UE的响应与后续动作

  1. If the steering of roaming information is received and the security check is successful, then…
  2. The UE to the VPLMN AMF: If the UDM has requested an acknowledgement… the UE sends the REGISTRATION COMPLETE message to the serving AMF with an SOR transparent container including the UE acknowledgement;
  3. If the UE has a list of available PLMNs in the area and based on this list the UE determines that there is a higher priority PLMN than the selected VPLMN … then the UE shall attempt to obtain service on a higher priority PLMN…

手机收到Accept消息后,执行一系列动作:

  1. 安全校验:首先,检查“漫游指南”的数字签名,确保它确实来自HPLMN且未被篡改。
  2. 更新本地策略:校验成功后,用新的优先列表覆盖手机中旧的OplmnAcT列表。
  3. 发送回执 (ACK):如果HPLMN要求回执,手机会生成一个确认信息,放入一个“SOR透明容器”中,并通过**REGISTRATION COMPLETE(注册完成)**消息发送给AMF,最终传回HPLMN。
  4. 执行“换网”:这是最关键的收尾动作。手机更新完列表后,会立刻进行一次“自我审视”:“我现在所在的运营商A,在新的指南里是第二优先级;而第一优先级是运营商B。我必须行动起来!” 于是,手机会立即(或者在进入空闲模式后)启动一次PLMN重选流程,去主动搜索并尝试注册到更高优先级的运营商B网络上。

至此,一场完整的“注册时导引”信令之舞结束。Alex可能只是感觉手机在连接上一个网络后,又短暂地搜索了一下,最终稳定在了另一个网络上,而这背后,正是SoR在精准地发挥作用。


2. 注册后导引(Steering after registration):随时更新的“远程遥控” (C.3)

Alex已经在运营商B的网络上愉快地使用了半天。然而,到了下午,HPLMN的SOR-AF系统检测到运营商B的网络出现局部拥塞,而运营商C刚刚进行了一次网络扩容,质量大幅提升。HPLMN决定,需要再次“掌舵”,将Alex引导到运营商C。

此时,Alex的手机正处于空闲模式,没有发起任何注册请求。HPLMN如何主动联系上它呢?这就是“注册后导引”流程,对应规范中的“Figure C.3.1: Procedure for providing list of preferred PLMN/access technology combinations and the SOR-CMCI, if any, or secured packet after registration”。

2.1 图表解析:Figure C.3.1 核心信令流程

这张图展示了HPLMN如何主动发起一次策略更新。

步骤 1 & 2: HPLMN内部决策与通知

  1. The SOR-AF to the HPLMN UDM: Nudm_ParameterProvision_Update request is sent to the HPLMN UDM to trigger the update of the UE…
  2. The HPLMN UDM to the AMF: The UDM notifies the changes of the user profile to the affected AMF by the means of invoking Nudm_SDM_Notification service operation.
  1. SOR-AF发起:HPLMN的SOR-AF做出了新的决策,它调用Nudm_ParameterProvision_Update服务,将一份更新版的“漫游指南”推送给UDM。
  2. UDM主动通知:UDM通过步骤C.2-5中AMF建立的“订阅”关系,调用Nudm_SDM_Notification服务,主动将这份更新的指南,推送给Alex当前所在的VPLMN AMF(运营商B的AMF)。

步骤 3: VPLMN AMF UE: DL NAS TRANSPORT

  1. The AMF to the UE: the AMF sends a DL NAS TRANSPORT message to the served UE. The AMF includes in the DL NAS TRANSPORT message the steering of roaming information received from the UDM.

运营商B的AMF收到了来自HPLMN的“加急信件”。它会通过寻呼(Paging)流程找到Alex的手机,然后将这份“漫游指南”封装在一个通用的**DL NAS TRANSPORT(下行NAS传输)**消息中,发送给手机。这个消息就像一个“快递包裹”,专门用于在UE和核心网之间透明地传输各种非标准化的信令。

步骤 4 & 5 & 6: UE的响应与执行

  1. Upon receiving the steering of roaming information, the UE shall perform a security check…
  2. The AMF to the UDM: If the UL NAS TRANSPORT message with an SOR transparent container is received, the AMF uses the Nudm_SDM_Info service operation…

后续的流程与“注册时导引”非常相似:

  1. UE接收与处理:Alex的手机收到“快递包裹”,拆开后进行安全校验,然后更新本地的优先列表。
  2. 发送回执:如果需要,将ACK封装在UL NAS TRANSPORT消息中,回传给AMF,并由AMF通过Nudm_SDM_Info服务传回UDM。
  3. 执行“换网”:手机再次“自我审视”,发现当前所在的运营商B已不再是最佳选择,于是会在合适的时机(例如,当前没有业务,或者SOR-CMCI定时器到期后),启动PLMN重选,切换到新的最高优先级网络——运营商C。

通过这套“注册后导引”机制,HPLMN实现了对漫游用户的动态、实时的策略控制,确保用户始终能获得当前环境下最优的漫游体验。


3. FAQ环节

Q1:“注册时导引”和“注册后导引”最核心的区别是什么?

A1:最核心的区别在于触发方信令载体

  • 注册时导引:由UE发起注册请求触发,导引信息封装在REGISTRATION ACCEPT消息中,是“被动”接收策略。
  • 注册后导引:由HPLMN主动发起,导引信息封装在DL NAS TRANSPORT消息中,是“主动”推送策略。 这两种机制互为补充,确保了HPLMN在任何时候都有能力“掌舵”其漫游用户。

Q2:为什么VPLMN AMF需要向HPLMN UDM发起Subscribe订阅?

A2:这个订阅是实现“注册后导引”的基础。它相当于VPLMN AMF在UDM那里挂了一个“号”,告诉UDM:“只要这个用户(Alex)的签约数据有任何更新,请立刻通知我。” 如果没有这个订阅关系,当HPLMN想主动更新策略时,它就找不到当前为Alex服务的AMF,信令之舞就无法进行。

Q3:什么是NAS Transport消息?它在SoR中扮演什么角色?

A3:NAS(Non-Access Stratum)Transport消息是UE和AMF之间的一个通用“信使”协议。它的作用是在UE和核心网的某个后端实体(如HPLMN的UDM,或SMSF短信功能实体)之间,透明地传输特定协议的数据。在“注册后导引”中,DL NAS TRANSPORT扮演了将HPLMN的SoR信息“快递”给UE的角色,而UL NAS TRANSPORT则扮演了将UE的ACK回执“快递”回HPLMN的角色。

Q4:如果Alex的手机在收到导引信息后,因为某些原因(如信号突然消失)没能成功切换到新的首选网络,会发生什么?

A4:手机会继续遵循标准的PLMN选择逻辑。它会首先尝试在新的最高优先级网络上注册。如果失败,它会去尝试列表中的第二优先级网络,依此类推。如果所有比当前网络优先级高的网络都尝试失败了,它最终会继续留在当前的网络上(只要当前网络仍然可用)。SoR提供的是“指南”,而不是“强制命令”,最终的网络选择仍然需要满足底层的无线条件。

Q5:整个SoR流程对手机的性能和功耗影响大吗?

A5:影响非常小。SoR的信令交互本身数据量很小,属于轻量级操作。主要的功耗来自于执行导引策略时可能触发的网络搜索。然而,这种搜索行为在没有SoR的传统漫游中也同样会周期性地发生。SoR通过SOR-CMCI等智能化机制,反而可以避免在不恰当的时候(如通话中)进行搜索,并在找到最优网络后让终端“安分”下来,从某种程度上可能还会优化整体的功耗表现。