本文技术原理深度参考了3GPP TS 38.413 V18.5.0 (2025-03) Release 18规范中,关于“9.2.3 UE Mobility Management Messages”的核心章节,旨在为读者提供一个关于5G网络中保障用户无缝移动体验的核心——切换流程的信令交互全景视图。本文为系列解读的第三部分,重点剖析切换中的高级技术:无损切换与DAPS切换。
深度解析 3GPP TS 38.413:9.2.3 UE Mobility Management Messages (Part 3 - 高级切换技术:无损切换与DAPS)
大家好,欢迎再次回到3GPP规范的深度解析之旅!在前两篇文章中,我们已经完整地剖析了5G N2切换的“准备阶段”和“执行与善后阶段”。我们知道,网络通过一系列精密的信令交互,可以在几十毫秒内完成一次切换。对于网页浏览、视频缓冲等大多数应用来说,这点“中断时间”(Handover Interruption Time, HIT)几乎无感。
然而,5G的星辰大海是URLLC(超可靠低时延通信)。在工业自动化、远程医疗、云游戏等场景下,哪怕是几十毫秒的中断,也可能导致生产线停摆、手术刀失准或游戏画面卡顿。为了满足这些严苛的需求,5G引入了更高级的切换技术,其核心目标是——无限接近于“零中断”。
今天,我们将深入探讨NGAP协议为实现这一目标而设计的两套关键信令机制:
- 无损切换(Lossless Handover):通过精确同步数据包的序列号(Sequence Number),确保在切换中断期间,没有一个数据包会因为切换而丢失或被重复发送。
- DAPS切换(Dual Active Protocol Stack Handover):这是一种“先连后断”(Make-before-break)的终极切换形态。UE在短暂的时间内会同时连接到源gNB和目标gNB,从根本上将切换中断时间降低到零。
为了直观地感受这些高级技术带来的极致体验,我们将继续跟随科技博主Chloe在高铁上的测试之旅。这次,她不再是进行有缓冲的视频直播,而是挑战一项对网络要求极为苛刻的任务——在高速列车上进行云游戏。
- UE: Chloe的高性能5G手机,支持DAPS功能。
- 场景: 在高铁上玩云游戏,对时延和丢包极其敏感,即将从
gNB-A切换到gNB-B。 - 网络节点: 源基站
gNB-A,目标基站gNB-B,以及共同的上级AMF-Central。
我们将通过Chloe这次“零卡顿”的云游戏体验,来深度剖析以下为高级切换“保驾护航”的信令消息:
- UPLINK/DOWNLINK RAN STATUS TRANSFER: 实现无损切换的“账本交接”信令。
- HANDOVER SUCCESS: DAPS切换中,AMF向源gNB发出的“新连接已建立”的确认信号。
- UPLINK/DOWNLINK RAN EARLY STATUS TRANSFER: DAPS切换中,用于更精细数据同步的“早期状态报告”。
1. 无损切换的基石:RAN Status Transfer (RAN状态传输)
标准切换流程虽然快,但在UE与源gNB断开连接、到与目标gNB建立连接的短暂中断期间,用户面的数据包可能会丢失。无损切换的核心思想,就是在切换前,源gNB和目标gNB之间进行一次精确的“账本交接”,这个账本记录的就是**PDCP(Packet Data Convergence Protocol)**层的序列号(SN)状态。
1.1 UPLINK RAN STATUS TRANSFER (上行RAN状态传输)
这是由源gNB发起的,用于将其“账本”发送给核心网的流程。
9.2.3.13 UPLINK RAN STATUS TRANSFER This message is sent by the source NG-RAN node to transfer the uplink PDCP-SN and HFN receiver status and the downlink PDCP SN and HFN transmitter status during intra 5GC NG-based handover.
场景引入:
gNB-A已经决定将Chloe切换到gNB-B,并且AMF已经下发了HANDOVER COMMAND。在向Chloe的手机发送最终的RRCReconfiguration切换指令之前,gNB-A会执行一个关键动作:冻结其PDCP状态。然后,它立即向AMF发送UPLINK RAN STATUS TRANSFER消息。
这个消息的核心是一个RAN Status Transfer Transparent Container IE,里面包含了每个数据无线承载(DRB)的详细“账本”:
UL COUNT Value: 这是上行方向的状态。它记录了源gNB期望接收的下一个上行PDCP包的SN和HFN(超帧号)。DL COUNT Value: 这是下行方向的状态。它记录了源gNB已经成功发送的最后一个下行PDCP包的SN和HFN。目标gNB应该从这个SN的下一个包开始发送。Receive Status of UL PDCP SDUs: 这是一个可选的位图(bitmap),用于更精细地描述在上行方向,哪些包已经收到了,哪些包在“期望的SN”之前还存在空洞(即乱序到达)。
场景演绎:
gNB-A在给Chloe下达“跳槽”指令前,迅速整理了一份交接清单(UPLINK RAN STATUS TRANSFER)发给AMF:“关于Chloe的云游戏业务,我这边上行数据收到了999号包,下一个我等的是1000号。下行数据我发到了5000号包。请转告下一位(gNB-B)。”
1.2 DOWNLINK RAN STATUS TRANSFER (下行RAN状态传输)
这是AMF将源gNB的“账本”转发给目标gNB的流程。
9.2.3.14 DOWNLINK RAN STATUS TRANSFER This message is sent by the AMF to the target NG-RAN node to transfer the uplink PDCP-SN and HFN receiver status and the downlink PDCP SN and HFN transmitter status during intra 5GC NG-based handover.
AMF收到上行状态传输消息后,会立即将其中的RAN Status Transfer Transparent Container原封不动地封装在DOWNLINK RAN STATUS TRANSFER消息中,发往目标gNB-B。
场景演绎:
gNB-B收到了这份来自gNB-A的“交接清单”。现在,它对Chloe手机的PDCP状态了如指掌:
- 对于下行:它知道自己应该从SN=5001的数据包开始向Chloe发送。即使它从数据转发通道收到了一些SN < 5001的包(来自gNB-A的“迟到”数据),它也能正确处理,避免重复发送。
- 对于上行:它知道应该期望从Chloe手机收到SN=1000的数据包。如果它先收到了SN=1001的包,它会将其缓存起来,等待SN=1000的包到达,以保证数据的有序性。
通过这次精确的“账本交接”,Chloe的云游戏数据流在切换过程中实现了无缝衔接,没有任何一个操作指令或画面帧因为切换而丢失。
2. 零中断的艺术:DAPS Handover (双激活协议栈切换)
无损切换解决了丢包问题,但切换中断时间(HIT)依然存在。DAPS切换则更进一步,通过让UE在短时间内同时与源和目标gNB通信,从根本上消除了HIT。
2.1 HANDOVER SUCCESS (切换成功)
这个消息在DAPS切换流程中扮演了独特的角色,是AMF向源gNB发送的一个关键同步信号。
9.2.3.15 HANDOVER SUCCESS This message is sent by the AMF to the source NG-RAN node to indicate the successful access of the UE toward the target NG-RAN node.
场景引入:
Chloe的手机支持DAPS。在收到gNB-A的切换指令后,它不会立即断开与gNB-A的连接,而是同时开始接入gNB-B。当gNB-B成功接收到UE的接入后,它会向AMF发送HANDOVER NOTIFY。AMF在收到这个通知后,除了启动路径切换,还会额外执行一个动作:向源gNB-A发送HANDOVER SUCCESS消息。
消息的意义:
这个消息告诉gNB-A:“你的‘接班人’gNB-B已经成功与UE‘握手’了。现在UE处于双连接状态。你可以准备后续的资源释放工作了。” 这对于gNB-A来说是一个重要的状态同步信号,标志着“先连后断”中的“连”已经完成。
2.2 UPLINK/DOWNLINK RAN EARLY STATUS TRANSFER (上行/下行RAN早期状态传输)
DAPS切换期间,由于UE同时从两个gNB接收数据(下行),并可能选择其中一个gNB发送数据(上行),数据同步变得更为复杂。Early Status Transfer就是为此设计的更精细的同步机制。
9.2.3.16 UPLINK RAN EARLY STATUS TRANSFER The purpose of the Uplink RAN Early Status Transfer procedure is to transfer the COUNT of the first downlink SDU that the source NG-RAN node forwards to the target NG-RAN node, from the source NG-RAN node to the target NG-RAN node via the AMF during NG DAPS Handover…
场景演绎:
在Chloe的手机与gNB-A和gNB-B双连接期间:
- 数据转发开始:
gNB-A仍然会从UPF收到下行数据。为了避免丢包,它会通过转发隧道将这些数据转发给gNB-B。 - 源gNB发送早期状态: 在发送第一个被转发的数据包时,
gNB-A会通过AMF向gNB-B发送UPLINK RAN EARLY STATUS TRANSFER消息。这个消息的核心内容是第一个被转发的下行数据包的COUNT值。 - 目标gNB接收同步信息:
gNB-B通过DOWNLINK RAN EARLY STATUS TRANSFER消息收到这个COUNT值。
这个流程的精妙之处在于:
gNB-B现在同时从两个源头接收下行数据:一部分是路径切换完成后,从UPF直接发来的“新数据”;另一部分是从gNB-A转发来的“旧数据”。Early Status Transfer告诉了gNB-B,“旧数据”的起始编号是多少。这使得gNB-B能够精确地管理其发送缓冲区,避免将同一个数据包(一个来自直接路径,一个来自转发路径)重复发送给UE,并确保数据包的最终有序交付。
对于Chloe的云游戏体验来说,这意味着她的手机在切换瞬间,能够从两个基站平滑地接收到连续的游戏数据帧,从而实现了真正的“零卡顿”切换。
FAQ
Q1: “无损切换”和“DAPS切换”是什么关系?所有5G手机都支持吗?
A1: “无损切换”是“DAPS切换”的基础,但两者不完全等同。
- 无损切换:是一种机制,通过PDCP状态传输来避免数据丢失。它可以应用于常规的“先断后连”(Break-before-make)切换,目的是将中断期间的丢包率降到最低。
- DAPS切换:是一种切换模式,即“先连后断”(Make-before-break)。它在物理层面上消除了中断时间。DAPS切换必然是无损的,因为它依赖于更精细的状态传输(如Early Status Transfer)来管理双连接期间的数据流。 并非所有5G手机都支持这些高级特性。DAPS切换对手机的基带处理能力要求很高(需要同时维持两个协议栈),通常只有高端旗舰手机才支持。而无损切换的支持则更为普遍一些。
Q2: 为什么这些状态传输流程要通过AMF中转,而不是通过Xn接口直接在gNB之间传输?
A2:
这是一个非常关键的区别。本文所描述的所有...TRANSFER消息,都是N2接口(NGAP)的流程,它们适用于N2切换(即信令必须经过AMF的切换)。在N2切换场景下,两个gNB之间没有直接的Xn信令连接,因此AMF是唯一的信令中转路径。
而在Xn切换中,gNB之间存在直接的信令连接。此时,PDCP状态的传输会直接通过XnAP协议在源和目标gNB之间完成,这个消息在XnAP中被称为SN STATUS TRANSFER。Xn切换因为路径更短,效率自然更高。
Q3: HANDOVER SUCCESS消息是AMF发给源gNB的,这个流程和UE有什么关系?
A3:
这个流程对UE是完全透明的,UE感知不到。它的作用是网络内部,特别是源gNB的状态同步。在常规切换中,源gNB在发送切换命令后,就开始等待一个定时器超时,超时后就认为UE已经离开并释放资源。但在DAPS切换中,UE会“脚踏两只船”一段时间,源gNB不能过早地释放资源。HANDOVER SUCCESS消息就像是AMF给源gNB的一个明确信号:“目标gNB已经接上了,你可以开始准备‘放手’了。” 这使得源gNB可以更精确、更安全地管理DAPS切换的资源释放过程。
Q4: 如果一个应用(比如网页浏览)对丢包不敏感,网络还会为它执行无损切换吗?
A4: 通常不会。是否执行无损切换,是基于业务的QoS要求来决定的。对于网页浏览这类基于TCP的业务,即使在切换时丢失了几个包,TCP协议自身的重传机制也能够快速恢复,用户几乎无感。为这类业务执行无损切换,会增加额外的信令开销(状态传输),得不偿失。 无损切换主要针对的是那些对丢包和时延极度敏感的GBR(保证比特率)或URLLC业务,例如VoNR、云游戏、远程控制等,这些业务通常使用UDP传输,上层没有可靠的重传机制,任何一个包的丢失都可能导致体验的明显下降。
Q5: 在DAPS切换中,UE的上行数据是同时发给两个gNB,还是只发给一个?
A5: 在当前的规范中,DAPS切换期间,UE的下行可以同时从两个gNB接收数据。但对于上行,UE在同一时刻只会选择一个gNB进行发送。UE会根据gNB的指令,在某个时刻将上行传输从源gNB切换到目标gNB。这个上行切换点(UL switching point)的同步,也是DAPS切换中需要精确管理的一部分,以确保上行数据的平滑过渡。