你正在地铁上刷视频,手机从基站A的覆盖范围移动到基站B,视频一帧都没卡——这就是移动性管理在背后默默工作的结果。今天我们拆解5G网络中三大移动性管理流程:切换(Handover)、跟踪区更新(TAU/Registration Update)、寻呼(Paging),看它们如何协同保障"无缝移动"。
想象你住在一个城市里,有三个系统需要知道你在哪:
| 角色 | 通信网络对应 | 它关心什么 |
|---|---|---|
| 快递公司 | 核心网(AMF/UPF) | 你在哪个片区(跟踪区),好把包裹(数据)送到你手上 |
| 小区物业 | 基站(gNB) | 你在哪个楼栋(小区),好给你开门禁(无线承载) |
| 你本人 | UE(手机) | 我要告诉快递公司我搬了家(TAU),或者在楼栋间走动时不要断我的快递(切换) |
这三个场景,正好对应移动性管理的三个核心流程:
你搬到新片区 → 告诉快递公司新地址 → TAU(跟踪区更新)
快递公司要给你送包裹 → 不知道你在哪栋楼 → Paging(寻呼)
你在两栋楼之间走动 → 快递员交接包裹 → Handover(切换)
移动性管理要解决一对根本矛盾:
$$\text{定位精度} \uparrow \quad \Longleftrightarrow \quad \text{信令开销} \uparrow$$
5G的解决方案是分层管理:粗粒度用跟踪区(TA),细粒度用切换(HO),中间态用RAN通知区(RNA)。
跟踪区(Tracking Area, TA)是网络划分的地理位置管理单元,每个TA包含若干个基站小区,用TAI(Tracking Area Identity)唯一标识:
$$TAI = MCC + MNC + TAC$$
其中MCC是移动国家码,MNC是移动网络码,TAC是跟踪区编码。
一个UE注册后,AMF会分配一个TAI List(通常包含6-16个TA)。UE在这个列表范围内移动时不需要发起TAU,只有离开这个范围才触发更新。
为什么设计TAI List而不是单个TA? 想象你住在一个TA边界附近,日常通勤在两个TA之间来回。如果只分配一个TA,你每穿越一次边界就要做一次TAU,这就是经典的乒乓效应。TAI List让你在一片区域内自由移动而不触发更新,大幅减少信令。
| 触发条件 | 说明 | 类比 |
|---|---|---|
| TA变化 | UE检测当前TAI不在TAI List中 | 搬到新城市,需要更新地址 |
| 周期性定时器超时 | T3512定时器到期(默认54分钟) | 定期向快递公司确认"我还在" |
| 从非3GPP接入切换 | 从WiFi切换到5G | 换了接收方式 |
| 核心网类型变化 | 从4G移动到5G覆盖区 | 跨国搬家 |
在5G中,TAU被统一到Registration Procedure框架下,称为"Mobility Registration Update"。
sequenceDiagram
participant UE as UE(手机)
participant RAN as gNB(基站)
participant AMF as AMF(移动管理)
participant UDM as UDM(用户数据)
participant SMF as SMF(会话管理)
participant UPF as UPF(用户面)
UE->>RAN: 1. Registration Request<br/>(类型: Mobility Registration Update)
RAN->>AMF: 2. N2消息(包含Registration Request + 用户位置信息)
Note over AMF: AMF检查是否需要鉴权<br/>(通常TAU不重新鉴权)
AMF->>UDM: 3. Nudm_UECM_Registration<br/>(更新UE位置记录)
UDM-->>AMF: 4. 确认响应
AMF->>SMF: 5. Nsmf_PDUSession_UpdateSMContext<br/>(通知PDU会话位置变更)
SMF->>UPF: 6. N4 Session Modification<br/>(更新下行数据隧道到新基站)
AMF->>RAN: 7. N2 Registration Accept<br/>(包含新TAI List)
RAN->>UE: 8. Registration Accept<br/>(UE获得新TAI List)
关键步骤解读:
设计智慧:为什么不在每个小区变化时都上报?
假设一个城市有10000个小区,100万个用户,每人每天穿越50个小区边界:
$$\text{信令量} = 10^6 \times 50 = 5 \times 10^7 \text{ 条/天}$$
如果用TA分组(每个TA约100个小区),每人每天只需穿越约2次TA边界:
$$\text{信令量} = 10^6 \times 2 = 2 \times 10^6 \text{ 条/天}$$
信令量减少了25倍。这就是跟踪区设计的核心价值。
当UE处于CM-IDLE状态(连接管理空闲态)时,手机和基站之间没有无线连接,核心网不知道UE在哪个具体小区。此时如果有人给你打电话或发微信,网络就需要广播寻呼消息来找到你。
类比:UE在CM-IDLE态就像手机关了WiFi但还开着蜂窝——你还在网络里,但基站不知道你在哪个扇区下面。寻呼就是网络在大喇叭里喊"XX手机你在哪?有人找你"。
| 触发源 | 场景 | 说明 |
|---|---|---|
| 下行数据到达 | UPF收到下行数据包 | 手机收到微信消息、视频流量 |
| 下行信令到达 | AMF需要下发NAS信令 | 网络配置更新、紧急通知 |
| SMS到达 | 短信中心下发短信 | 收到验证码短信 |
| EPS Fall Back | 5G语音回落到4G | VoNR不支持时回退到VoLTE |
sequenceDiagram
participant Peer as 远端服务器/对端UE
participant UPF as UPF(用户面)
participant SMF as SMF(会话管理)
participant AMF as AMF(移动管理)
participant gNB as gNB(基站们)
participant UE as UE(手机)
Peer->>UPF: 1. 下行数据包到达
Note over UPF: UE处于CM-IDLE<br/>N3隧道已释放
UPF->>SMF: 2. 下行数据通知<br/>(N4接口)
SMF->>AMF: 3. Namf_Communication<br/>_N1N2MessageTransfer<br/>(携带PDU Session信息)
Note over AMF: AMF查询UE的TAI List<br/>确定寻呼范围
AMF->>gNB: 4. N2 Paging<br/>(发给TAI List内所有gNB)
gNB->>UE: 5. 空口Paging消息<br/>(在UE的PO时机广播)
Note over UE: UE在PO时机<br/>检测到Paging
UE->>gNB: 6. Service Request<br/>(建立RRC连接)
gNB->>AMF: 7. N2 Service Request
AMF->>SMF: 8. Nsmf_PDUSession<br/>_UpdateSMContext<br/>(激活用户面)
SMF->>UPF: 9. N4 Session Modification<br/>(重建N3隧道)
UPF->>gNB: 10. 下行数据通过新N3隧道发送
gNB->>UE: 11. 下行数据到达UE
寻呼时机(Paging Occasion, PO)
UE不是每时每刻都在监听寻呼消息——那太耗电了。5G引入了DRX(非连续接收)机制,UE只在特定的时间窗口(PO)醒来监听:
$$PO_{index} = (SFN + subframe) \mod (T \times N_{PF})$$
其中 $T$ 是DRX周期(可以是0.32s、0.64s、1.28s、2.56s等), $N_{PF}$ 是每个DRX周期中的寻呼帧数。
5G新增的寻呼增强:
| 特性 | 4G LTE | 5G NR | 收益 |
|---|---|---|---|
| 寻呼指示 | P-RNTI加扰的DCI | 同样支持,新增PEI(寻呼提前指示) | UE可以更早判断是否需要解码寻呼消息,省电 |
| 寻呼分组 | 不支持 | 支持按UE分组 | 减少不必要的PO监听,终端更省电 |
| RAN级寻呼 | 不支持 | RRC Inactive态下支持 | 不需要核心网参与,降低寻呼时延 |
问题:TAI List里有多个TA,寻呼消息要发给所有gNB,太浪费了?
5G支持分级寻呼策略:
第1步:在UE最后注册的TA内寻呼
第2步:如果没回应,扩展到TAI List内所有TA寻呼
第3步:如果还没有回应,可能触发可达性判断(UE是否已关机/脱网)
这种策略在UE密集区域可以减少约60-80%的寻呼广播量。
切换是在UE处于连接态(CM-CONNECTED)时,将正在进行的通信从一个小区(或基站)转移到另一个小区的过程。核心目标是:
$$\text{切换目标} = \min(\text{中断时间}) + \min(\text{丢包率}) + \min(\text{信令开销})$$
切换决策基于UE上报的测量报告。UE持续测量邻区信号质量,当满足特定事件条件时上报:
| 事件 | 触发条件 | 含义 |
|---|---|---|
| A3 | 邻区信号 > 服务小区信号 + 偏置 | "旁边小区信号比我当前的还好" |
| A4 | 邻区信号 > 绝对门限 | "旁边小区信号足够好,可以考虑切过去" |
| A5 | 服务小区 < 门限1 且 邻区 > 门限2 | "当前小区太差,旁边那个更好" |
| B1 | 异系统邻区 > 门限 | "隔壁4G信号不错"(跨系统切换) |
A3事件是最常见的切换触发条件。举一个通俗的例子:
你正在和房间A的空调吹冷风(服务小区),但你感觉到走廊的空调更凉快了(邻区信号变强),当走廊的冷风比房间A的冷风强出一个阈值(迟滞 hysteresis)并持续一段时间(timeToTrigger),你决定搬去走廊——这就是A3事件触发的切换。
当源gNB和目标gNB之间有Xn接口时,切换可以不经过核心网,速度最快:
sequenceDiagram
participant UE as UE(手机)
participant Src as 源gNB
participant Tgt as 目标gNB
participant AMF as AMF
participant SMF as SMF
participant UPF as UPF
UE->>Src: 1. Measurement Report<br/>(A3事件触发)
Note over Src: 切换决策:目标gNB选择、<br/>准入控制判断
Src->>Tgt: 2. Xn: HANDOVER REQUEST<br/>(UE上下文、PDU Session信息)
Tgt-->>Src: 3. Xn: HANDOVER REQUEST ACK<br/>(含RRC Reconfiguration内容)
Src->>UE: 4. RRC Reconfiguration<br/>(含目标小区配置)
Note over UE: UE断开与源gNB连接<br/>同步到目标gNB
UE->>Tgt: 5. RRC Reconfiguration Complete
Note over Tgt: UE已成功接入目标gNB
Tgt->>AMF: 6. N2: Path Switch Request<br/>(请求切换N3隧道到新gNB)
AMF->>SMF: 7. Nsmf_PDUSession_UpdateSMContext
SMF->>UPF: 8. N4 Session Modification<br/>(下行隧道终点切换到目标gNB)
UPF-->>SMF: 9. 确认
SMF-->>AMF: 10. 确认(含新的N3隧道信息)
Note over UPF: 下行数据路径已切换<br/>到目标gNB
AMF-->>Tgt: 11. N2: Path Switch Request ACK
Tgt->>Src: 12. Xn: UE Context Release<br/>(通知源gNB释放资源)
Xn切换的关键步骤解读:
| 阶段 | 步骤 | 做了什么 | 为什么这样设计 |
|---|---|---|---|
| 准备 | 1-3 | 源gNB向目标gNB申请资源 | 在UE断开旧连接前先建好新连接,实现"先搭桥再过河" |
| 执行 | 4-5 | UE切换到目标gNB | 中断时间极短(通常<10ms),用户几乎无感 |
| 完成 | 6-12 | 数据路径切换,旧资源释放 | 数据隧道从源gNB改道到目标gNB,源gNB释放占用资源 |
数据转发机制:
在步骤4-6之间(切换执行期间),下行数据可能还会发往源gNB。5G支持数据转发(Data Forwarding):源gNB通过Xn接口把收到的数据包转给目标gNB,确保不丢包。
当源gNB和目标gNB之间没有Xn接口,或者涉及不同AMF时,切换需要经过核心网的N2接口:
sequenceDiagram
participant UE as UE(手机)
participant Src as 源gNB
participant AMF as AMF
participant Tgt as 目标gNB
participant SMF as SMF
participant UPF as UPF
UE->>Src: 1. Measurement Report
Src->>AMF: 2. N2: HANDOVER REQUIRED<br/>(含目标gNB ID、PDU Session列表)
AMF->>SMF: 3. Nsmf_PDUSession_CreateSMContext<br/>(为切换准备新侧资源)
SMF->>UPF: 4. N4 Session Modification<br/>(建立数据转发隧道)
SMF-->>AMF: 5. 确认(含转发隧道信息)
AMF->>Tgt: 6. N2: HANDOVER REQUEST<br/>(含UE上下文、转发隧道信息)
Tgt-->>AMF: 7. N2: HANDOVER REQUEST ACK<br/>(含新RRC配置)
AMF->>Src: 8. N2: HANDOVER COMMAND<br/>(含目标小区RRC配置)
Src->>UE: 9. RRC Reconfiguration
UE->>Tgt: 10. RRC Reconfiguration Complete
Tgt->>AMF: 11. N2: HANDOVER NOTIFY<br/>(切换完成通知)
AMF->>SMF: 12. Nsmf_PDUSession_UpdateSMContext<br/>(切换N3隧道到目标gNB)
SMF->>UPF: 13. N4 Session Modification
| 对比维度 | Xn切换 | N2切换 |
|---|---|---|
| 接口 | 源gNB ↔ 目标gNB(Xn直连) | 源gNB → AMF → 目标gNB(经N2中转) |
| 核心网参与 | 仅路径切换阶段参与 | 全程参与 |
| 切换时延 | 约10-20ms | 约20-40ms(多一跳信令) |
| 数据转发 | 通过Xn直接转发 | 通过核心网转发隧道 |
| 适用场景 | 同AMF下、有Xn接口 | 跨AMF、无Xn接口、异系统 |
| 占比 | ~80-90%(现网主流) | ~10-20% |
| 失败原因 | 现象 | 调试方法 |
|---|---|---|
| 目标gNB资源不足 | HANDOVER REQUEST被拒 | 查看目标gNB负载和准入控制日志 |
| Xn接口断开 | 触发N2切换或切换失败 | 检查Xn接口连通性 |
| UE未同步到目标小区 | RRC Reconfig Complete超时 | 检查目标小区信号覆盖、PCI冲突 |
| 测量配置不当 | 切换过晚或过早 | 调整A3事件的迟滞和触发时间 |
| 传输网时延过大 | 切换超时 | 检查前传/中传网络质量 |
5G引入了一个4G没有的全新状态——RRC Inactive。这个状态是理解5G移动性管理的关键创新。
| 状态 | 空口连接 | 核心网连接 | 恢复时延 | 典型场景 |
|---|---|---|---|---|
| RRC Connected | 有 | 有 | — | 正在通话、看视频 |
| RRC Idle | 无 | 无(CM-IDLE) | 约50-100ms | 手机放着不用 |
| RRC Inactive | 无 | 有(CM-CONNECTED) | 约10-20ms | 短暂停止传输但仍需快速响应 |
类比:RRC Connected是"坐在办公室里"(全连接),RRC Idle是"下班回家关机"(完全断开),RRC Inactive是"去茶水间休息但没关电脑"(空口释放但核心网保持连接)。
RRC Inactive的核心价值是快速恢复:智能手机上大量应用(即时通讯、IoT传感器)频繁收发小数据包,如果每次都要从RRC Idle完整建立连接(需要经过TAU→Service Request→鉴权等步骤),时延太大。RRC Inactive让UE可以在10-20ms内恢复传输。
在RRC Inactive态下,UE的移动性管理由RAN侧负责,使用RAN通知区(RNA)代替核心网的TA:
$$\text{寻呼范围: } RNA \subseteq TA, \quad \text{通常RNA包含数十个小区}$$
| 寻呼类型 | 触发节点 | 寻呼范围 | 适用状态 | 时延 |
|---|---|---|---|---|
| 核心网寻呼 | AMF | TAI List内所有gNB | CM-IDLE | 较高 |
| RAN寻呼 | Anchor gNB | RNA内小区 | RRC Inactive | 较低 |
| 寻呼提前指示(PEI) | gNB | 特定PO | 所有空闲态 | 最低(仅指示,不传数据) |
切换、TAU、寻呼不是孤立工作的,它们在UE的不同状态下协同运作:
flowchart TD
A[UE开机] --> B[初始注册 Registration]
B --> C[CM-CONNECTED<br/>RRC Connected]
C --> D{UE有数据传输?}
D -->|是| E[正常数据传输<br/>可能触发Handover]
D -->|否, 超时| F[CM-CONNECTED<br/>RRC Inactive]
F --> G{UE离开RNA?}
G -->|是| H[RNA Update<br/>通知anchor gNB]
G -->|否, 下行数据到达| I[RAN Paging<br/>在RNA范围内寻呼]
I --> C
F -->|超时或基站指令| J[CM-IDLE<br/>RRC Idle]
J --> K{UE离开TAI List?}
K -->|是| L[TAU / Mobility<br/>Registration Update]
K -->|否, 下行数据到达| M[CN Paging<br/>在TAI List范围内寻呼]
M --> C
L --> J
H --> F
E -->|切换到新gNB| C
style C fill:#4CAF50,color:#fff
style F fill:#FF9800,color:#fff
style J fill:#f44336,color:#fff
状态转换的关键逻辑:
场景:用户投诉在特定区域频繁掉话
排查步骤: 1. 提取测量报告:确认UE是否正常上报A3事件,邻区信号质量如何 2. 检查切换参数:迟滞(hysteresis)是否过大导致切换过晚,触发时间(timeToTrigger)是否过长 3. 检查Xn接口:是否有Xn断链导致本该走Xn的切换变成了N2切换 4. 检查目标gNB:是否准入控制拒绝了切换请求
常见参数调优:
| 参数 | 默认值 | 调大效果 | 调小效果 |
|---|---|---|---|
| A3迟滞(hysteresis) | 2-4dB | 减少乒乓切换,但可能切换过晚 | 切换更积极,但可能乒乓 |
| 触发时间(TTT) | 160-320ms | 更稳定的切换决策 | 更快的切换响应 |
| TAI List大小 | 6-16个TA | 更少的TAU,但更大的寻呼范围 | 更精确的寻呼,但更多TAU |
在高铁、地铁等高移动性场景下,大量UE同时穿越TA边界,可能产生TAU风暴:
Q: TAU和RNA Update的区别是什么?
A: TAU(或5G中的Mobility Registration Update)是核心网级别的位置更新,AMF参与,更新TAI List。RNA Update是RAN级别的位置更新,只有anchor gNB参与,不涉及核心网。TAU适用于RRC Idle态,RNA Update适用于RRC Inactive态。RNA Update时延更低、信令开销更小。
Q: Xn切换和N2切换在实际网络中如何选择?
A: 网络自动选择,不需要手动配置。源gNB在做出切换决策时,会先检查与目标gNB之间是否有可用的Xn接口。如果有,优先走Xn切换(更快、更省信令);如果没有(比如跨厂家设备间未开通Xn、或跨AMF区域),则自动退回到N2切换。
Q: 为什么切换时不直接断开旧连接再连新的,而要先准备再执行?
A: 这是移动通信中"先搭桥再过河"的设计哲学。如果先断旧再连新,UE在断开期间完全无法通信,用户会感受到明显的通话中断或视频卡顿。先在目标gNB准备好资源和配置,UE只需切换一个无线信道(通常<10ms),用户几乎无感知。这种设计叫做make-before-break。
Q: 寻呼会不会导致UE很费电?
A: 不会。UE通过DRX机制,只在特定的时间窗口(PO)醒来监听,其余时间可以休眠。典型配置下UE每1.28秒醒来一次,每次监听约1ms,实际"清醒"时间占比不到0.1%。5G新增的PEI机制进一步优化:在正式PO之前发一个超短指示,如果发现不是找自己的,连PO都不用监听了。
Q: 切换失败后会怎样?
A: 切换失败后,UE会尝试RRC重建(RRC Re-establishment)流程——重新连接到原来的或另一个gNB。如果RRC重建也失败,UE进入RRC Idle态,需要通过Service Request重新建立连接。对于用户来说,切换失败可能表现为短暂的通话中断或数据速率下降,但通常会在数百毫秒内恢复。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
