首页 › deep-tech › 切换失败后:手机的自救流程

切换失败后:手机的自救流程

前面我们讲过切换判决(A3事件怎么决定“该不该搬”)和切换执行(信令怎么走“两条搬家路”)。但现网工程师真正掉头发的问题往往在第三步:切换失败了怎么办? 用户在电梯里、隧道口、立交桥转弯的那一瞬间,切换来不及完成,信号轰然跌落——这一刻手机和网络各自在做什么?为什么有的“失败”用户毫无感觉,有的却直接掉话?这篇文章把切换失败之后的完整自救链路拆开讲清楚:链路失步检测、无线链路失败(RLF)判定、RRC重建、数据恢复,以及5G为此打的两个“补丁”。

一、切换为什么注定有一部分会失败

先用搬家打个比方。切换就像搬家当天换收货地址:你在上午10点测过“新家看起来不错”(测量上报),但等快递(网络下发切换命令)送到、你真正搬过去(随机接入目标小区),已经是10点零几秒的事了。测量是“过去时”,执行是“将来时”——这个时间差就是切换的原罪。

从手机发出测量报告,到网络判决、下发切换命令、手机断开源小区、随机接入目标小区,整个链路顺利时也要几十到上百毫秒。而在这几十毫秒里,信号完全可能发生剧变:

更麻烦的是,切换参数把“失败率”和“乒乓率”拴在了同一根绳上:迟滞和触发时间(TTT)调大,切换判得保守,手机在劣化小区里多熬一会儿,失败概率上升;调小,切换判得激进,在两个小区间来回横跳(乒乓切换),信令风暴反而把两个小区都拖垮。切换失败不是异常,是这套系统为“不过度切换”付出的必然代价——所以设计者的真正课题不是消灭失败,而是失败之后如何把用户体感损失降到最低。

二、手机怎么知道自己“失联”了

失败的第一个环节,是手机意识到“我听不清了”。这听起来简单,实际有一套严密的检测机制,可以类比对讲机通话:偶尔一句杂音你会容忍,但连续好几声都听不清时,你就会停下来问“还在吗?”

手机对下行链路的健康监测,盯的是物理层下行控制信道(PDCCH)的解调质量。因为PDCCH承载调度指令——如果连“下一条数据在哪里”都收不到,业务信道再好也没有意义。教科书上的典型判据是:

$$\text{失步判据:} \; BLER_{PDCCH} > Q_{out} \approx 30\% \;\Rightarrow\; 物理层上报一次失步$$

$$\text{同步判据:} \; BLER_{PDCCH} < Q_{in} \approx 2\% \;\Rightarrow\; 物理层上报一次同步$$

注意 $Q_{out}$ 和 $Q_{in}$ 之间故意留了一道很宽的“隔离带”(30%对2%)。为什么不对称?这是迟滞思想在物理层的应用:信号质量在门限附近抖动时,这道隔离带防止手机在“失步/同步”之间反复横跳,就像空调温控不会在25.9度和26.1度之间频繁启停压缩机。

物理层的失步/同步指示向上汇报后,高层用两个计数器/定时器做最终裁决:

flowchart TD
    S["同步态<br/>PDCCH解调正常"] -->|收到失步指示| C1["失步计数加一"]
    C1 -->|计数未达N310| S
    C1 -->|连续达到N310次| T["启动定时器T310"]
    T -->|收到同步指示| S
    T -->|持续到超时| R["宣布无线链路失败RLF"]
    R --> G["进入重建决策流程"]

链路监测关键参数一览:

参数 作用 直觉理解 常见量级示例
Qout 失步门限(PDCCH误块率) 听不清的门槛 约30%
Qin 同步门限(PDCCH误块率) 听得清的门槛 约2%
N310 连续失步次数阈值 连续几声杂音才起疑 10次左右
T310 失步确认定时器 起疑后观察多久才定案 约1秒
T311 RLF后寻找小区的限时 失联后允许多久找到落脚点 约3秒

以上为教科书典型量级,现网各运营商配置不同,以本网参数为准。

这套设计的精妙之处在于“快速起疑、从容定案”:N310负责捕捉快速恶化(连续10次失步大约一两百毫秒),T310负责过滤瞬时深衰落(电梯里信号闪断半秒又恢复,就不值得惊动高层)。T310一旦烧完,手机正式宣布无线链路失败(RLF)——注意,此时此刻,手机和基站之间的无线连接已经死亡,但双方“脑子里关于对方的记忆”还在,这正是下一步自救的本钱。

三、RLF之后的黄金抉择:重建还是重新来过

RLF发生后,手机做的第一件事不是关机重来,而是在限定时间(T311)内挑一个新小区,尝试“恢复现场”而不是“重新入职”。用找工作类比:失业后你的第一反应是联系有你自己档案的老东家内推(档案还在,免背景调查直接上岗),实在不行才海投简历从零面试(重新建档,流程漫长)。

通信里的“档案”叫UE上下文:安全密钥、各个承载的配置与状态、NAS层注册信息……这些数据散落在源基站、目标基站和核心网里。重建(RRC Re-establishment)的本质,就是让新小区把你这份档案找回来,而不是让核心网重新给你建一份。

那新基站凭什么相信“你确实是从某个小区过来的你”?重建请求里带三样身份凭证:老小区的物理标识(PCI)、你在老小区里的临时标识(C-RNTI),以及最关键的shortMAC-I——一份用老小区安全密钥算出的截短完整性校验值。它是防伪签名:随便一个假终端可以谎报“我是小区A的用户”,但它算不出正确的shortMAC-I,网络一核对就露馅。只发“截短版”而非完整校验值,是在安全强度和信令开销之间的折中——几十比特已足以让网络唯一锁定身份。

重建成功的完整时序如下:

sequenceDiagram
    participant U as 手机
    participant N as 新基站
    participant O as 老基站
    U->>N: 重建请求(老PCI、C-RNTI、shortMAC-I)
    N->>O: 查询并取回UE上下文
    O-->>N: 返回上下文与密钥参数
    N-->>U: 重建确认(下发刷新后的安全密钥)
    U->>N: 重建完成
    N->>U: 重配置命令(恢复数据承载与测量)

但现实不总这么顺利。“所选小区里有没有你的档案”是整条路的分岔口:

flowchart TD
    R["RLF发生<br/>在允许频点内挑小区"] --> Q{"所选小区存有<br/>我的上下文吗"}
    Q -->|有| OK["发重建请求<br/>shortMAC-I自证身份"]
    OK --> OK2["核对通过<br/>恢复信令承载与数据承载"]
    Q -->|没有| REJ["收到重建拒绝"]
    REJ --> IDLE["退回空闲态"]
    IDLE --> SEL["小区选择与驻留"]
    SEL --> ATT["RRCSetup重新连接<br/>核心网侧重新同步"]

为什么会有“没有档案”的情况?上下文不是全网共享的,它只存在于有限的邻居基站之间,且有过期释放机制——切换准备过的小区、来时的源小区才有你的档案;网络忙时档案可能已被清理;邻区关系没配全时,手机漂到一个“陌生人”小区,重建请求必然被拒。被拒后手机退回空闲态,走小区重选、重新建立连接,这一路下来时延是秒级,实时业务必然可感知中断——这就是“切换失败”和“掉话”体感差距的根源。

三条恢复路径的代价对比:

恢复路径 前提条件 中断时延量级 数据损失
重建成功 所选小区持有或能取回上下文 几十至一百多毫秒 确认模式承载基本无损
重建被拒后退回空闲重连 拿不到上下文 秒级 实时业务明显中断
未完成任何恢复(真掉话) 覆盖空洞或重连失败 直到下次入网 全部

四、重建期间,正在传的数据去哪了

很多工程师有个疑惑:重建明明几十毫秒就完成了,为什么VoNR用户还是会听到“咔”一声断音?答案在数据面恢复机制和承载类型的差异上。

重建恢复的首先是信令承载(SRB),然后网络通过重配置恢复数据承载。对于确认模式(AM)的数据承载,恢复的魔法在PDCP层:重建时手机和网络会交换PDCP状态报告,互相通报“我收到了哪些包、缺哪些包”,缺失的包从PDCP层重传——因为PDCP有加密和序号管理,它天然是“断点续传”的记账员。所以文件下载这类业务,经历一次成功重建,用户几乎无感。

而语音这类非确认模式(UM)承载选择了另一条路:不重传。语音包250毫秒前就该播出去,重传回来的包早已过期,硬塞进去只会造成更大的乱序和抖动。所以UM承载在重建期间丢失的那一小段数据,丢了就是丢了——用户听到的断音,就是这段时间轴上的空洞。这是“实时性优先于完整性”的经典取舍,不是缺陷。

还有一个容易误解的点:切换本身也有一段“两个基站之间交割”的窗口,数据在源基站和目标基站之间通过前传(forwarding)搬运。切换失败回退源小区时,前传缓存里的数据仍然有效,所以回退场景的数据损失通常很小;但如果RLF后重建去了“第三个小弟”小区,缓存对不上号,损失就大得多。这也是为什么统计上“重建回源小区”的业务恢复质量,明显好于“重建去第三小区”。

五、5G打的两副补丁:CHO与DAPS

既然普通切换“先断后连”是在赌博,5G从机制上给了两个方向的改进。

第一副补丁:条件切换(Conditional Handover,CHO)。 普通切换像临出门才订酒店:网络判决时只指定一家目标,你赶到时它可能满房(信号已恶化)。CHO则改成提前办三家酒店的入住手续:网络预先向多个候选小区完成切换准备(上下文、资源全部就位),手机带着“预备令”上路;行驶途中,任一候选小区的信号满足预设的执行条件,手机不需要再等网络命令,直接向它发起随机接入完成切换。好处是双重的:一是判决和执行之间的时间差被压缩到近零(条件在本地判决);二是即使切换失败,候选小区的上下文都还在,重建请求几乎必然成功——它把“失败后的补救”变成了“失败前的预案”。代价是网络侧要为多个候选同时保留准备资源,测量和信令开销上升,所以现网多用于高铁、毫米波易遮挡这类高失败风险场景。

flowchart TD
    subgraph L1["普通切换"]
        A1["测量上报<br/>等网络逐条判决"] --> A2["只指定一家目标小区"]
        A2 --> A3["断开源小区后接入目标"]
        A3 --> A4["目标恶化即失败<br/>触发RLF"]
    end
    subgraph L2["条件切换CHO"]
        B1["提前向多个候选小区<br/>完成切换准备"] --> B2["手机带着预备令移动"]
        B2 --> B3["任一候选本地达标<br/>立即就近接入"]
        B3 --> B4["上下文早已就位<br/>失败也能秒级重建"]
    end

第二副补丁:DAPS(双活协议栈)切换。 思路更激进——干脆不赌了:切换执行期间,手机同时保持与源小区和目标小区的两条连接,两套收发并行、密钥各管各的,等目标小区确认稳定后再释放源小区。这是真正的“先连后断”,业务流量在交割期间不中断,适用于对时延抖动零容忍的超低时延业务。代价也直白:终端射频和基带要双份干活,功耗和实现复杂度显著上升。

三种切换方案横向对比:

方案 断开源小区的时机 失败后的处境 主要代价
普通硬切换 收到命令即断 依赖源/目标残留上下文重建 实现最简单
条件切换CHO 本地条件达标才断 多候选已备好上下文,重建率高 准备与测量开销大
DAPS切换 目标稳定后才断 交割期几乎无断链 双射频,功耗与复杂度高

六、现网实战:掉话排查的“案中案”

理解了这条自救链路,现网切换类掉话的排查就有了清晰的框架。抓到一段信令后,按“RLF之前、RLF之时、RLF之后”三段看:

第一段:RLF之前在等什么? 如果信令显示测量报告发了多次却迟迟等不到切换命令,问题多半在判决侧——邻区漏配(手机报了,网络“不认识”这个目标)、PCI冲突混淆(网络分不清两个同PCI的小区不敢切)、或目标小区负载高企故意不切。如果切换命令到了但执行失败,重点查目标小区的随机接入资源和负荷。

第二段:重建走向暴露根因。 这是老网优的独门经验——重建不是失败的重点,而是根因的线索:

第三段:几个经典调试陷阱。

  1. T310配得过短:把电梯、地铁隧道里的瞬时深衰落误判为掉话,触发一轮不必要的重建和空态重连,KPI反而更难看。T310应略大于典型深衰落持续时间。
  2. 用缩小TTT治RLF:切换提前了,RLF确实降了,但乒乓切换抬头,信令负荷和“切换次数统计”暴涨——看任何单一KPI做参数调整都可能按下葫芦浮起瓢。
  3. 把“重建成功”当成“业务无恙”:统计口径上重建成功可以不算掉话,但对UM语音用户,那几十毫秒到几百毫秒的空洞是真实可感的。做用户投诉分析时,别被“重建成功率100%”安慰。
  4. 高速场景照搬低速参数:高铁上小区切换带被速度压缩,TTT和迟滞沿用地面配置必然切换过晚,这正是CHO类方案的主战场。

七、小结

切换失败之后的故事,是一场设计得极尽克制的接力赛:物理层用Qout/Qin两道门限加迟滞隔离带识别“听不清”;N310/T310用“快速起疑、从容定案”过滤瞬时干扰;RLF后手机优先奔向“有档案”的小区,用shortMAC-I自证身份换回上下文;确认模式靠PDCP状态报告断点续传,实时业务坦率地选择丢包保时序;5G再用CHO把“事后补救”前移成“事前预案”,用DAPS把“先断后连”改写成“先连后断”。好的容错设计,从来不是让失败不发生,而是让每一种失败都有预设好的、代价最小的退路。

常见问题

Q: 切换失败和掉话是一回事吗? A: 不是。切换失败后如果RRC重建成功,业务很快恢复,通常统计为“切换失败、重建成功”,不计入掉话;只有重建被拒、退回空闲态重连(或彻底重连失败)才计入掉话/中断。所以看KPI时要把“切换成功率”和“重建成功率”放在一起读。

Q: T310超时后为什么还要有个T311?它俩什么关系? A: T310管“确认失联”:连续失步达到N310启动T310,烧完即宣布RLF。T311管“失联后找落脚点”:给手机在RRC重建尝试阶段寻找合适小区设一个限时,超时说明连可尝试的小区都找不到,只能放弃重建退回空闲态。一个管定性,一个管收尾。

Q: shortMAC-I为什么用截短的校验值?安全性会不会打折? A: 截短是在安全强度和信令开销之间取的折中。重建请求本身携带老PCI和C-RNTI已把候选范围收窄到极小,shortMAC-I只需在此范围内完成“验明正身”,几十比特足够;它由老小区的安全密钥派生,伪造者拿不到密钥就算不出正确值,无法冒领上下文。

Q: 为什么重建要优先挑源小区或准备过的目标小区? A: 因为上下文在哪里,恢复就只能在哪里完成。源小区存有你完整的密钥与承载状态,切换准备过的目标小区也提前拿到过副本;随便挑一个没打过交道的小区,它既没有档案也无法核验shortMAC-I,重建请求必然被拒,只能退回空闲态走秒级的重连流程。

Q: 条件切换(CHO)准备多个候选小区,会不会浪费资源? A: 会有开销——每个候选小区都预留了准备态资源并维护上下文,所以CHO不会全网开着用。它的性价比在高速移动、毫米波易遮挡、小区切换带被压缩的场景最高:这些场景普通切换失败率天然偏高,用准备资源的“小钱”换重建率和用户体感,账是划算的。低密度低速场景,普通切换足够。

参考来源

  1. ShareTechnote — 业界广泛使用的免费LTE/NR无线信令手册,其RLF(Radio Link Failure)与RRC Re-establishment章节附有大量实测信令分解,是本文重建时序的经典参考
  2. Wikipedia: Handover — 硬切换/软切换、先断后连与先连后断概念的权威概述
  3. Wikipedia: 5G NR — 5G新空口整体架构背景,含移动性机制演进语境
  4. 樊昌信《通信原理》 — 链路同步/失步检测与门限判决思想的教材源头
  5. 注:文中Qout/Qin、N310、T310/T311等参数为教科书典型量级示例,现网实际取值因运营商和场景而异,排查时请以本网配置为准

本文由「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 等场景全覆盖。

51学通信知识星球海报-扫码加入