<!-- title: 5G手机省电奥秘：RRC状态机与DRX原理 -->

# 5G手机省电奥秘：RRC状态机与DRX原理

你的5G手机是怎么做到既随时在线又不会半天就没电的？答案藏在两个你可能听过但没深究过的机制里：**RRC状态机**和**DRX（不连续接收）**。它们就像是手机的"睡眠管理大师"，精确控制你的手机什么时候醒、什么时候睡、睡多深。今天我们就把这两套机制的底层逻辑彻底拆开。

## 一、从一个生活类比说起

想象你是一个24小时待命的急诊科医生：

- **全神贯注模式**：急诊高峰期，你站在急诊大厅盯着每一个进来的病人，一个都不放过——这是 **RRC_CONNECTED 无DRX**。
- **值班室待命模式**：平峰期，你坐在值班室里，每隔30分钟去急诊大厅看一眼有没有病人，其他时间可以休息——这是 **RRC_CONNECTED + C-DRX**。
- **在家待命模式**：你知道今天大概率不会有急诊，在家待着，但手机保持畅通，医院随时能打电话叫你——这是 **RRC_INACTIVE**。
- **彻底下班模式**：你关掉了工作手机，医院想找你也找不到，直到你下次主动去上班——这是 **RRC_IDLE**。

四种模式，功耗从高到低，响应速度从快到慢。5G网络的核心省电策略，就是在合适的时候让手机进入合适的"待命深度"。

## 二、RRC状态机：5G比4G多了一个"半睡眠"状态

### 2.1 三态 vs 二态

4G LTE时代只有两个RRC状态：**RRC_IDLE**（空闲态）和 **RRC_CONNECTED**（连接态）。这带来一个尴尬的问题：

> 手机刷完一条微博后，如果没有新数据，基站要么保持手机在连接态（白白耗电），要么直接踢到空闲态（下次有数据时要走完整套连接建立流程，延迟高、信令多）。

5G NR引入了第三个状态——**RRC_INACTIVE**（去激活态），完美解决了这个痛点。


![图表1](images/telecom-deep-tech-r3-2355-mermaid-0.png)

> *图表 1*


### 2.2 三种状态的详细对比

| 维度 | RRC_IDLE | RRC_INACTIVE | RRC_CONNECTED |
|------|----------|--------------|---------------|
| **CN连接** | 无（CM-IDLE） | 有（CM-CONNECTED） | 有（CM-CONNECTED） |
| **RRC连接** | 无 | 挂起（Suspend） | 有 |
| **UE上下文** | 不存储 | 存储在UE和gNB | 存储在UE和gNB |
| **UE标识** | IMSI/SUPI | I-RNTI | C-RNTI |
| **移动性** | 小区重选 | 小区重选（受RNA约束） | 切换（gNB控制） |
| **位置追踪** | TAC级别（核心网知道你在哪个TA） | RNA级别（RAN知道你在哪个RNA区域） | 小区级别（基站知道你在哪个小区） |
| **监听行为** | 监听CN寻呼 | 监听RAN寻呼+CN寻呼 | 监听PDCCH |
| **功耗** | 最低 | 低（略高于IDLE） | 最高 |
| **恢复延迟** | ~50-100ms（需重新建立完整连接） | ~10-20ms（只需Resume） | 0ms（已连接） |

### 2.3 RRC_INACTIVE为什么是5G的神来之笔

**问题场景**：微信消息的典型流量模型是"突发+长时间静默"。一条消息可能只有几百字节，但两条消息之间可能间隔几十秒到几分钟。

- 如果一直保持 **RRC_CONNECTED**：射频模块持续工作，手机耗电如流水。
- 如果释放到 **RRC_IDLE**：下一条消息到来时，需要经历完整的RRC Setup → NAS Service Request → 上下文建立流程，延迟50-100ms，且产生大量信令。

**RRC_INACTIVE的巧妙之处**：

1. **UE上下文保留**：gNB不删除UE的上下文信息（包括安全上下文、承载配置等），而是挂起（Suspend）。
2. **CN侧不断开**：核心网认为UE仍然处于CM-CONNECTED状态，不需要重新建立NAS信令连接。
3. **快速恢复**：当有新数据到达时，UE发送RRC Resume Request，gNB直接恢复上下文，整个过程约10-20ms。

$$
\text{信令开销比} = \frac{\text{RRC Resume信令数}}{\text{RRC Setup + NAS信令数}} \approx \frac{3 \sim 5}{10 \sim 15} \approx 30\% \sim 40\%
$$

实测数据显示，RRC_INACTIVE相比IDLE→CONNECTED转换，可减少约**60-70%的信令开销**，同时恢复延迟降低**3-5倍**。

## 三、DRX：精细化的"打盹"机制

RRC状态机解决的是"大尺度"的功耗问题（秒级到分钟级），而DRX解决的是"小尺度"的功耗问题（毫秒级）。两者配合使用，才是5G省电的完整方案。

### 3.1 DRX的基本思想

DRX（Discontinuous Reception，不连续接收）的核心逻辑极其简单：

> **手机不需要每时每刻都监听基站的控制信道，只需要在约定的时刻醒来检查一下，如果没有自己的数据就继续睡。**

这就像你定了闹钟——每天早上8点醒来看一眼手机有没有重要消息，没有就继续睡到8点半再看。

### 3.2 C-DRX的完整定时器体系

连接态DRX（C-DRX）的配置由一组定时器组成，它们的协同工作决定了手机何时醒、何时睡：


![图表2](images/telecom-deep-tech-r3-2355-mermaid-1.png)

> *图表 2*


### 3.3 关键定时器参数详解

| 定时器 | 作用 | 典型值 | 对功耗的影响 |
|--------|------|--------|-------------|
| **drx-onDurationTimer** | 每个DRX周期开始时UE保持活跃的时间 | 1-10ms（1-10个子帧） | 越长越耗电，但减少漏检概率 |
| **drx-InactivityTimer** | 收到PDCCH后继续保持活跃的时间 | 1-2560ms | 越长越耗电，但减少数据传输中断 |
| **drx-RetransmissionTimer** | 等待HARQ重传的最长时间 | 0-15个子帧 | 影响重传时延和功耗的平衡 |
| **drx-LongCycle** | 长DRX周期（主要省电周期） | 10-1024ms | 越长越省电，但增加调度延迟 |
| **drx-ShortCycle**（可选） | 短DRX周期（数据突发后的过渡） | 2-640ms | 提供省电和响应速度的折中 |
| **drxShortCycleTimer** | 使用短周期的次数 | 1-16次 | 控制过渡到长周期前的等待时间 |

### 3.4 DRX工作时序图

下面用一个具体的时序图展示C-DRX的工作过程（假设配置：Long Cycle=40ms，OnDuration=4ms，InactivityTimer=8ms）：


![图表3](images/telecom-deep-tech-r3-2355-mermaid-2.png)

> *图表 3*


### 3.5 短周期→长周期的"两级睡眠"

为什么要有两级DRX周期？因为数据流量往往是**突发的**——来了一个burst，紧接着可能还有几个小包，然后才是长时间静默。

| 阶段 | 行为 | 类比 |
|------|------|------|
| **活跃期** | 持续监听PDCCH | 你正在和人面对面聊天 |
| **Short DRX** | 短周期醒来（如20ms） | 聊完了但对方可能还会补充，你站在附近等一下 |
| **Long DRX** | 长周期醒来（如160ms） | 确认对方说完了，你回到座位上每隔一会回来看一眼 |

这种两级过渡避免了"一刀切"——数据刚停就把手机推入深度睡眠，导致后续小包的调度延迟过大。

## 四、不同RRC状态下的DRX协同

DRX不是单一机制，而是根据RRC状态有三种不同的工作模式：


![图表4](images/telecom-deep-tech-r3-2355-mermaid-3.png)

> *图表 4*


| DRX类型 | RRC状态 | 监听对象 | 周期配置 | 功耗水平 |
|---------|---------|---------|---------|---------|
| **I-DRX** | RRC_IDLE | 寻呼时机（PO）中的PDCCH | 默认寻呼周期（网络广播） | ★☆☆☆☆ |
| **Inactive DRX** | RRC_INACTIVE | RAN寻呼+CN寻呼 | 可用UE专属参数 | ★★☆☆☆ |
| **C-DRX** | RRC_CONNECTED | PDCCH控制信道 | RRC专有信令配置 | ★★★★☆（无C-DRX为★★★★★） |

### 4.1 空闲态DRX（I-DRX）

手机在IDLE态时，不知道有没有人来找自己，所以必须定期醒来监听寻呼。但这个"定期"可以很长——默认320ms到1280ms不等。计算公式：

$$
\text{PO位置} = (UE\_ID \mod N) \times N_s + i_s
$$

其中 $UE\_ID$ 由手机的IMSI派生，$N$ 是一个DRX周期内的寻呼帧数，$N_s$ 是每个寻呼帧内的寻呼时机数。这意味着不同的手机在不同的时刻醒来，避免所有手机同时醒来造成寻呼信道拥塞。

### 4.2 去激活态DRX（Inactive DRX）

与I-DRX类似，但有两个重要区别：

1. **UE专属DRX参数**：IDLE态用的是网络广播的默认参数，而INACTIVE态可以用gNB在Suspend时配置的专属参数，灵活性更高。
2. **双源寻呼**：既监听RAN级别的寻呼（gNB在RNA区域内发起），也监听CN级别的寻呼（AMF通过gNB发起）。

### 4.3 连接态DRX（C-DRX）

最复杂也最需要精细调优的DRX模式。C-DRX的参数通过RRC Reconfiguration消息中的`MAC-MainConfig`→`drx-Config`字段下发。

一个典型的C-DRX配置示例：

```
drx-Config:
  drx-onDurationTimer: ms4       // 每次醒来监听4ms
  drx-InactivityTimer: ms8       // 收到调度后继续等8ms
  drx-LongCycle: ms160           // 长周期160ms
  drx-ShortCycle: ms20           // 短周期20ms（可选）
  drxShortCycleTimer: 5          // 短周期用5次后切到长周期
  drx-RetransmissionTimer: 0     // HARQ重传定时器
  drx-HARQ-RTT-Timer: 8         // HARQ RTT定时器
```

## 五、RRC_INACTIVE的RNA机制

### 5.1 什么是RNA

RNA（RAN Notification Area，RAN通知区域）是RRC_INACTIVE状态特有的概念。它是基站级别的位置管理区域——gNB知道UE在哪个RNA范围内活动，但不知道具体在哪个小区。

| 位置管理 | 粒度 | 由谁管理 |
|---------|------|---------|
| **TA**（Tracking Area） | 核心网级别，一组小区 | AMF管理 |
| **RNA**（RAN Notification Area） | RAN级别，一组小区 | gNB管理 |
| **Cell** | 单个小区 | gNB精确知道 |

### 5.2 RNA更新流程


![图表5](images/telecom-deep-tech-r3-2355-mermaid-4.png)

> *图表 5*


RNA的设计哲学是：**让大部分小区重选都不触发任何信令**。只有当UE走出RNA边界时才需要RNA更新，这大大减少了空口信令。

### 5.3 RNA大小的工程权衡

| RNA大小 | 优点 | 缺点 |
|---------|------|------|
| **小**（如几个小区） | 寻呼范围精确，寻呼开销小 | RNA更新频繁，信令开销大 |
| **大**（如几十个小区） | RNA更新少，信令开销小 | 寻呼范围大，多个小区同时发寻呼 |
| **典型值** | 平衡寻呼和更新开销 | 根据移动模式和业务模型调整 |

现网中，RNA通常配置为**一个gNB下属的所有小区**或者**几个相邻gNB的小区集合**，覆盖范围大致对应一个TA List的子集。

## 六、5G省电辅助技术（DRX之外的"加分项"）

除了RRC状态管理和DRX，5G还引入了几种辅助省电技术，它们和DRX协同工作：

### 6.1 WUS（Wake-Up Signal，唤醒信号）

在C-DRX的OnDuration到来之前，基站可以发送一个特殊的物理信号——DCP（DCI with CRC scrambled by PS-RNTI），告诉UE"下一帧有没有你的数据"。

- **收到WUS且指示"无数据"**：UE直接跳过OnDuration，继续睡！连那几ms的PDCCH监听都省了。
- **收到WUS且指示"有数据"**：UE正常醒来监听OnDuration。

实测表明，WUS可以额外节省**10-20%的C-DRX活跃期能耗**，在DRX周期较长时效果更明显。

### 6.2 BWP切换

5G支持带宽部分（BWP）动态切换。当UE处于低业务量状态时，gNB可以将其从宽BWP（如100MHz）切换到窄BWP（如10MHz）。

$$
P_{\text{baseband}} \propto B_{\text{active}}
$$

基带处理功耗与激活带宽成正比。从100MHz切到10MHz，基带功耗可降低约**30-50%**。

### 6.3 最大MIMO层数限制

5G网络可以动态通知UE减少MIMO层数——比如从4层降到2层甚至1层。每减少一层，就需要少处理一个数据流，射频和基带都能省电。

### 6.4 综合省电效果对比

| 省电技术 | 适用场景 | 省电效果 | 代价 |
|---------|---------|---------|------|
| **C-DRX** | 连接态低业务量 | 30-60% | 增加调度延迟 |
| **RRC_INACTIVE** | 突发小数据（IM/IoT） | 比CONNECTED省60-80% | 恢复延迟10-20ms |
| **WUS** | C-DRX周期较长时 | 额外省10-20% | 需额外监测WUS |
| **BWP切换** | 低吞吐量场景 | 省基带功耗30-50% | 切换有延迟 |
| **MIMO层数限制** | 空间复用不必要时 | 省射频功耗 | 降峰值速率 |

## 七、现网调试实战

### 7.1 DRX参数调优的典型场景

**场景1：VoLTE/VoNR语音通话**

语音包每20ms一个，DRX周期不能大于20ms，否则会丢包。典型配置：

- DRX Cycle = 20ms（与语音包间隔对齐）
- OnDuration = 2ms
- 不配置Short DRX

**场景2：视频流媒体（YouTube/抖音）**

数据量大且持续，但偶尔有缓冲暂停。典型配置：

- Long Cycle = 40-80ms
- Short Cycle = 20ms
- InactivityTimer = 10-20ms（缓冲暂停后较快进入DRX）

**场景3：即时通讯（微信/WhatsApp）**

突发小包，长时间静默。典型配置：

- Long Cycle = 160-320ms（深度省电）
- Short Cycle = 40ms（突发后短暂快速响应）
- RRC_INACTIVE快速释放（比保持CONNECTED+DRX更省电）

### 7.2 常见调试命令

在终端侧log分析中，以下信息是DRX调试的关键：

| 日志关键字 | 含义 |
|-----------|------|
| `drx-Config` | RRC下发的DRX配置参数 |
| `OnDuration start/stop` | OnDuration的开始和结束 |
| `InactivityTimer start/expire` | 非活跃定时器的状态 |
| `Long DRX cycle start` | 进入长DRX周期 |
| `Short DRX cycle start` | 进入短DRX周期 |
| `RRC Suspend/Resume` | RRC_INACTIVE的挂起和恢复 |

### 7.3 常见问题排查

**问题1：手机耗电异常快**

排查思路：
1. 检查UE是否长时间停留在RRC_CONNECTED（未进入INACTIVE或IDLE）
2. 检查C-DRX是否被配置（有可能被去激活了）
3. 检查DRX周期是否过短（如10ms的周期几乎等于不休眠）
4. 检查InactivityTimer是否过长（导致每次醒来后长时间不睡）

**问题2：业务延迟大**

排查思路：
1. 检查DRX周期是否过长（如1024ms的周期会导致最差近1秒的延迟）
2. 检查是否因频繁进入RRC_INACTIVE/IDLE导致恢复延迟
3. 检查BWP切换是否引入额外延迟

## 八、5G-Advanced的省电演进

3GPP Release 18进一步增强了终端省电能力：

| 增强特性 | 说明 |
|---------|------|
| **增强型WUS** | 更灵活的WUS配置，支持基于搜索空间组的WUS |
| **PDCCH监听跳过** | UE可以在特定条件下完全跳过PDCCH监听 |
| **RRC_INACTIVE态早期数据传输** | 在RRC Resume的同时传输数据，进一步减少延迟 |
| **终端功耗报告** | UE可以向网络报告自身功耗偏好，辅助网络优化配置 |
| **TRX adaptation** | UE可以关闭部分收发链路（如从4T4R降到1T1R） |

其中**终端功耗偏好上报**（UE Power Preference）是一个非常实用的功能——手机可以告诉基站"我电量只剩10%了，请帮我把DRX周期调长、BWP调窄"。这从"网络单方面决定"变成了"UE参与决策"。

## 常见问题

**Q: RRC_INACTIVE和RRC_IDLE最本质的区别是什么？**

A: 核心区别在于**CN连接是否保持**。RRC_INACTIVE时，核心网（AMF）认为UE仍在CM-CONNECTED状态，NAS信令连接未断开，gNB保留了UE的全部上下文。这意味着恢复到CONNECTED只需要一个RRC Resume过程（约10-20ms），而不需要重新建立NAS连接和认证流程。而RRC_IDLE时，CN侧也断开了，恢复需要完整的初始接入流程（50-100ms+）。

**Q: DRX周期设多长最合适？**

A: 没有万能最优值，取决于业务模型。核心权衡是**省电 vs 延迟**。DRX周期越长，UE休眠时间越长，功耗越低，但调度延迟的最大值就等于DRX周期长度。现网常见的做法是根据QoS需求分组配置：语音用短周期（20ms），视频用中等周期（40-80ms），后台数据用长周期（160-320ms）。

**Q: C-DRX的Short Cycle是不是一定要配置？**

A: 不是，Short Cycle是可选参数。不配置时，UE在InactivityTimer超时后直接进入Long DRX。Short Cycle主要用于数据突发模型明显的场景——数据刚停时用短周期快速响应后续小包，确认真的没数据了再过渡到长周期。对于流量平稳的场景（如视频流），可以不配置Short Cycle。

**Q: 为什么不干脆让手机一直在RRC_INACTIVE态？**

A: RRC_INACTIVE态也有成本——gNB需要为每个INACTIVE态UE保留上下文，占用存储和计算资源；同时RAN寻呼需要在整个RNA范围内发送，消耗空口资源。如果大量UE长期处于INACTIVE态，gNB的负担会很重。所以网络会设置INACTIVE态的定时器，超时后自动转到IDLE释放资源。

**Q: DRX和eDRX有什么区别？**

A: eDRX（Extended DRX）是DRX的扩展版本，主要用于IDLE和INACTIVE态，将DRX周期从最大约10.24秒扩展到几十分钟甚至几小时。eDRX主要用于物联网场景（如NB-IoT），终端可能一天只需要醒来一次检查数据。普通智能手机不使用eDRX，因为几百秒甚至几分钟的寻呼延迟对用户体验不可接受。

## 参考来源

1. [DRX: How 5G Saves Your Phone's Battery?](https://www.wirelessexplained.com/drx-in-5g/) — Wireless Explained，DRX机制的通俗解释
2. [RRC States Explained: Idle, Connected and Inactive in LTE and 5G NR](https://hicelltek.com/en/blog/rrc-states-explained-idle-connected-inactive-lte-5g-nr/) — HiCellTek，RRC三态对比详解
3. [How 5G Can Improve the Battery Life of User Equipment](https://blog.huawei.com/2022/05/19/how-5g-can-improve-the-battery-life-of-user-equipment/) — Huawei Blog，5G终端省电技术全景
4. [Jointly Optimizing RRC State Transition and DRX in 5G New Radio](https://ieeexplore.ieee.org/document/10942993) — IEEE论文，RRC与DRX联合优化
5. [5G NR UE RRC States: IDLE, INACTIVE, CONNECTED Explained](https://www.rfwireless-world.com/terminology/5g-nr-ue-rrc-states) — RF Wireless World，RRC状态机技术参考

---
> 本文由「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学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
