<!-- title: 5G终端省电机制原理全解 -->

# 5G终端省电机制原理全解：DRX、BWP与RRC状态管理

> 你的手机从5G网络掉到4G，又从4G跳回5G，电量像坐过山车一样往下掉——这背后的"省电战役"，远比你想象的复杂。

## 一、为什么5G比4G更耗电？

在讲省电机制之前，先理解一个残酷的现实：**5G天然比4G更耗电**。原因有三：

1. **带宽更大**：5G FR1最大支持100MHz载波带宽（FR2更是400MHz），而LTE只有20MHz。处理更宽的带宽意味着RF前端和基带处理器要消耗更多电能。
2. **天线更多**：Massive MIMO要求终端支持4×4 MIMO甚至更多天线，每条天线链路都在耗电。
3. **波束管理**：5G引入了模拟波束赋形，终端需要持续测量和上报波束质量。

打个比方：4G时代你的手机是个"小排量轿车"，5G时代变成了"V8引擎跑车"——动力更强了，但油耗也直线上升。**如果不做省电优化，5G手机的续航可能只有4G的一半**。

所以，5G从设计之初就内置了多层次的省电机制，就像给这辆跑车装了一套智能启停系统。

## 二、5G省电的四大支柱

5G终端省电不是靠单一技术，而是一个**多层次协同体系**，可以分为四大支柱：

| 支柱 | 核心思想 | 通俗类比 |
|------|----------|----------|
| **DRX不连续接收** | 不用时关机，用时再开 | 手机屏幕自动息屏 |
| **BWP带宽自适应** | 用多少开多少带宽 | 水龙头按需开关 |
| **RRC状态管理** | 不同场景用不同功耗等级 | 汽车的挡位 |
| **辅助省电技术** | 减少不必要的监听和处理 | 关掉不用的后台APP |

下面逐一拆解每根支柱的原理。

## 三、DRX：手机"自动息屏"的底层逻辑

### 3.1 什么是DRX？

**DRX（Discontinuous Reception，不连续接收）** 是5G省电最重要的机制。它的核心思想极其简单：

> **手机不需要一直盯着基站有没有发数据，而是周期性地"醒来看一眼"，没数据就继续睡。**

这就像你等快递——不是全天24小时站在门口盯着，而是每隔几小时看一眼快递柜，没有就回去干别的。

### 3.2 DRX的基本周期结构

一个DRX周期由两部分组成：

```mermaid
graph LR
    subgraph "一个DRX周期"
        A["On Duration<br/>清醒期<br/>监听PDCCH"] --> B["Opportunity for DRX<br/>休眠期<br/>关闭接收机"]
    end
    B --> C["下一个DRX周期的<br/>On Duration"]

    style A fill:#4CAF50,color:#fff
    style B fill:#607D8B,color:#fff
    style C fill:#4CAF50,color:#fff
```

- **On Duration（清醒期）**：终端打开接收机，监听PDCCH（物理下行控制信道），看基站有没有给自己发调度信息
- **Opportunity for DRX（休眠期）**：终端关闭接收机，大幅降低功耗

关键公式：

$$T_{DRX} = T_{OnDuration} + T_{Sleep}$$

$$\text{省电比例} \approx \frac{T_{Sleep}}{T_{DRX}} = 1 - \frac{T_{OnDuration}}{T_{DRX}}$$

周期越长、清醒期越短，省电效果越好——但代价是**数据延迟增加**。这是一个经典的**功耗-延迟权衡**。

### 3.3 连接态DRX（C-DRX）的定时器体系

DRX不仅仅是"醒-睡-醒-睡"这么简单。在**RRC_CONNECTED**状态下，C-DRX通过一组定时器精密协同工作：

```mermaid
sequenceDiagram
    participant UE as 终端
    participant gNB as 基站
    
    Note over UE: DRX Cycle 开始
    Note over UE: 🔋 启动 onDurationTimer<br/>监听PDCCH
    UE->>gNB: 监听PDCCH
    
    alt 有调度信息
        gNB->>UE: PDCCH调度数据
        Note over UE: 启动/重启 drx-InactivityTimer<br/>保持清醒
        gNB->>UE: 数据传输
        Note over UE: 持续监听直到<br/>drx-InactivityTimer超时
    else 无调度信息
        Note over UE: onDurationTimer超时<br/>进入短DRX周期
        Note over UE: drxShortCycleTimer超时<br/>进入长DRX周期
    end
    
    Note over UE: 🔋 进入长DRX休眠
```

**核心定时器一览**：

| 定时器 | 作用 | 类比 |
|--------|------|------|
| `onDurationTimer` | 每个DRX周期开始时监听PDCCH的持续时间 | 闹钟响了之后"赖床"几分钟 |
| `drx-InactivityTimer` | 收到PDCCH后保持清醒的时间 | 有快递来了，多等一会儿看还有没有 |
| `drx-RetransmissionTimer` | 等待重传的最长时间 | 等补发的快递 |
| `drxShortCycleTimer` | 短DRX周期持续多少个周期后进入长周期 | 先浅睡，实在没事就深睡 |
| `LongDRX-Cycle` | 长DRX周期的长度 | 深度睡眠的周期 |

### 3.4 短周期 vs 长周期

C-DRX设计了两级周期：

- **短DRX周期**（Short DRX Cycle）：典型值2ms~160ms。终端刚收完数据，"浅睡"状态，随时可能被唤醒
- **长DRX周期**（Long DRX Cycle）：典型值10ms~1024ms。终端长时间无数据，"深睡"状态，大幅省电

状态转换逻辑：

```mermaid
stateDiagram-v2
    [*] --> Active: 数据传输中
    Active --> ShortDRX: drx-InactivityTimer超时
    ShortDRX --> Active: 收到PDCCH调度
    ShortDRX --> LongDRX: drxShortCycleTimer超时
    LongDRX --> Active: OnDuration期间收到PDCCH
    LongDRX --> ShortDRX: 可选配置
    
    note right of Active: 完全清醒<br/>功耗最高
    note right of ShortDRX: 浅度睡眠<br/>中等省电
    note right of LongDRX: 深度睡眠<br/>省电效果最佳
```

**为什么需要短周期？** 因为很多业务（如网页浏览）具有**突发性**——数据传输一段后暂停，但很快又来一批。如果直接进入长周期，可能刚睡着就被叫醒，反而浪费更多能量在"启停"上。短周期就像一个**缓冲地带**。

### 3.5 空闲态DRX（Idle DRX）

在**RRC_IDLE**和**RRC_INACTIVE**状态下，DRX主要用于**寻呼监听**：

- 终端按照寻呼周期（默认320ms，可配置128ms~2560ms）周期性醒来
- 在**PO（Paging Occasion）**时刻监听PDCCH上的P-RNTI
- 如果有寻呼消息且匹配自己的ID，则发起随机接入

空闲态DRX的省电效果更为显著，因为周期通常更长（秒级），终端大部分时间都处于深度睡眠。

## 四、BWP：带宽"水龙头"按需开关

### 4.1 为什么需要BWP？

5G NR的载波带宽可以达到100MHz（FR1）甚至400MHz（FR2），但终端**绝大多数时候不需要这么大的带宽**：

- 待机时只需要监听控制信道，几MHz就够了
- 微信文字聊天10MHz绰绰有余
- 看4K视频才需要50~100MHz

如果让终端始终处理整个载波带宽，就像**开着一辆V8跑车去买菜**——完全没必要。

**BWP（Bandwidth Part，部分带宽）** 就是解决方案：网络给终端分配一个"按需缩放"的带宽窗口。

### 4.2 BWP的类型

```mermaid
graph TB
    subgraph "载波带宽 100MHz"
        BWP1["Initial BWP<br/>初始BWP<br/>~10MHz"]
        BWP2["Dedicated BWP<br/>专用BWP（窄）<br/>~20MHz"]
        BWP3["Dedicated BWP<br/>专用BWP（宽）<br/>~100MHz"]
        BWP4["Default BWP<br/>默认BWP<br/>~10MHz"]
    end

    style BWP1 fill:#FF9800,color:#fff
    style BWP2 fill:#2196F3,color:#fff
    style BWP3 fill:#4CAF50,color:#fff
    style BWP4 fill:#9C27B0,color:#fff
```

| BWP类型 | 用途 | 说明 |
|----------|------|------|
| **Initial BWP** | 初始接入 | 终端开机/切换后第一个使用的BWP，承载SSB和初始控制信息 |
| **Dedicated BWP** | 数据传输 | RRC连接建立后配置，可以有窄/宽多个 |
| **Default BWP** | 回退带宽 | BWP不活动定时器超时后自动回退到此BWP |

### 4.3 BWP如何省电？

BWP省电的物理本质是**减少基带处理的采样点数量**：

$$P_{baseband} \propto B_{active} \times N_{antenna} \times f_{sampling}$$

其中：
- $B_{active}$ 是当前激活BWP的带宽
- $N_{antenna}$ 是天线数
- $f_{sampling}$ 是采样率

当BWP从100MHz缩窄到10MHz时：
- FFT点数减少为原来的1/10
- 信道估计的参考信号减少
- PDCCH搜索空间缩小
- **整体基带功耗可降低30%~50%**

### 4.4 BWP切换机制

BWP切换有三种触发方式：

| 触发方式 | 延迟 | 适用场景 |
|----------|------|----------|
| **DCI指示** | 亚毫秒级 | 实时业务需求变化 |
| **定时器回退** | 秒级 | 长时间无数据自动缩窄 |
| **RRC重配置** | 百毫秒级 | 半静态业务模式变化 |

实际网络中最常用的是**定时器回退**机制：

1. 终端在大BWP上传输完数据
2. 启动`bwp-InactivityTimer`
3. 定时器超时后，自动切换到Default BWP（通常是窄带）
4. 有新数据到来时，基站通过DCI切换回大BWP

这就像你家空调的"节能模式"——一段时间没人操作就自动降低功率。

## 五、RRC状态管理：5G新增的"中间挡位"

### 5.1 5G的三种RRC状态

LTE只有两种RRC状态（IDLE和CONNECTED），5G新增了**RRC_INACTIVE**状态，这是一个革命性的省电设计：

```mermaid
stateDiagram-v2
    [*] --> RRC_IDLE: 开机
    RRC_IDLE --> RRC_CONNECTED: RRC建立
    RRC_CONNECTED --> RRC_INACTIVE: 挂起（Suspend）
    RRC_INACTIVE --> RRC_CONNECTED: 恢复（Resume）
    RRC_INACTIVE --> RRC_IDLE: 释放
    RRC_CONNECTED --> RRC_IDLE: 释放
    
    note right of RRC_IDLE: 无RRC上下文<br/>CN连接断开<br/>功耗最低
    note right of RRC_INACTIVE: 保留RRC上下文<br/>CN连接保持<br/>功耗中等
    note right of RRC_CONNECTED: 完全活跃<br/>持续监听<br/>功耗最高
```

### 5.2 RRC_INACTIVE为什么能省电？

用个生活类比来理解三种状态的区别：

| 状态 | 类比 | 特点 |
|------|------|------|
| **CONNECTED** | 在办公室上班，随时响应 | 功耗最高，延迟最低 |
| **INACTIVE** | 在家办公，可以快速回办公室 | 功耗较低，恢复快 |
| **IDLE** | 休假了，要联系得重新打电话 | 功耗最低，恢复慢 |

RRC_INACTIVE的核心优势在于：

1. **保留RRC上下文**：终端和基站都保存了之前的配置参数（包括DRX配置、安全上下文、承载配置等）
2. **保持CN信令连接**：核心网不释放N2/N3接口，终端看起来仍处于"注册"状态
3. **恢复极快**：从INACTIVE恢复到CONNECTED只需一次RRC Resume过程（约10~20ms），而IDLE到CONNECTED需要完整的RRC建立+认证流程（约100~200ms）

**省电效果**：RRC_INACTIVE状态下，终端使用与IDLE类似的DRX寻呼监听模式，功耗接近IDLE，但恢复速度快一个数量级。

### 5.3 RRC状态转换的信令流程

```mermaid
sequenceDiagram
    participant UE as 终端
    participant gNB as 基站
    participant AMF as 核心网
    
    rect rgb(230, 245, 255)
    Note over UE,AMF: CONNECTED → INACTIVE（挂起）
    gNB->>UE: RRCRelease（suspendConfig）
    Note over UE: 保存RRC上下文<br/>进入INACTIVE状态<br/>使用I-RNTI标识
    gNB->>AMF: UE Context Suspend
    Note over AMF: 保持N2/N3连接
    end
    
    rect rgb(255, 240, 230)
    Note over UE,AMF: INACTIVE → CONNECTED（恢复）
    UE->>gNB: RRCResumeRequest（I-RNTI）
    gNB->>gNB: 查找存储的UE上下文
    gNB->>UE: RRCResume
    Note over UE: 恢复之前的配置<br/>直接进入数据传输
    gNB->>AMF: UE Context Resume
    end
```

## 六、R16/R17省电增强：让省电更"聪明"

### 6.1 唤醒信号（WUS）

在R16之前，终端在每个DRX On Duration都必须醒来监听PDCCH，即使基站根本没数据要发——这就像闹钟每天早上6点叫你起床，但你并非每天6点都有事。

**WUS（Wake-Up Signal）** 的引入改变了这一点：

- 基站在DRX On Duration之前发送一个简短的DCP（DCI with CRC scrambled by PS-RNTI）
- 如果DCP指示"不需要醒来"，终端直接跳过这个On Duration
- 只有DCP指示"需要醒来"时，终端才真正开启接收机

省电增益：**在低负载场景下，可额外节省10%~20%的功耗**。

### 6.2 跨时隙调度（Cross-Slot Scheduling）

默认情况下，PDCCH和被调度的PDSCH可以在同一个时隙内，这意味着终端必须在每个时隙都保持清醒来监听PDCCH。

跨时隙调度允许网络配置**最小调度偏移K0≥1**，即PDCCH和PDSCH不在同一时隙：

- 终端只在需要监听PDCCH的时隙醒来
- 其余时隙可以关闭RF前端
- 额外省电效果约5%~15%

### 6.3 最大MIMO层数限制

5G终端最多支持4层（甚至8层）MIMO，但很多时候1~2层就够用了。R16允许网络动态指示终端降低MIMO层数：

| 场景 | 建议MIMO层数 | 原因 |
|------|-------------|------|
| 小包业务（IM/微信） | 1层 | 数据量小，多层开销大于收益 |
| 网页浏览 | 2层 | 适度吞吐即可 |
| 视频流媒体 | 4层 | 需要高吞吐量 |

每减少一层MIMO，就少处理一条天线链路的信号，RF功耗线性下降。

## 七、四大省电支柱的协同工作

在实际网络中，这些省电机制不是独立工作的，而是**分层协同**：

```mermaid
graph TD
    subgraph "Layer 1: RRC状态管理"
        S1["IDLE"]
        S2["INACTIVE"]
        S3["CONNECTED"]
    end

    subgraph "Layer 2: 带宽适应（CONNECTED内）"
        B1["窄BWP<br/>10MHz"]
        B2["宽BWP<br/>100MHz"]
    end

    subgraph "Layer 3: DRX（每个BWP内）"
        D1["Active"]
        D2["Short DRX"]
        D3["Long DRX"]
    end

    subgraph "Layer 4: 微观优化"
        M1["WUS"]
        M2["Cross-Slot"]
        M3["MIMO Layer Reduction"]
    end

    S3 --> B1
    S3 --> B2
    B1 --> D1
    B1 --> D2
    B1 --> D3
    D1 --> M1
    D1 --> M2
    D1 --> M3

    style S1 fill:#4CAF50,color:#fff
    style S2 fill:#FF9800,color:#fff
    style S3 fill:#f44336,color:#fff
    style B1 fill:#2196F3,color:#fff
    style B2 fill:#9C27B0,color:#fff
```

**一个典型的省电工作流**：

1. 用户放下手机 → 10秒无操作 → 基站通过DCI将终端切到窄BWP（20MHz→10MHz）
2. 又过了20秒 → `bwp-InactivityTimer`超时 → 切到Default BWP（5MHz）
3. 同时启动C-DRX → 先进入短DRX周期（40ms）
4. 短DRX持续几个周期 → 进入长DRX周期（320ms）
5. 长DRX期间启用WUS → 进一步减少不必要的唤醒
6. 持续5分钟无数据 → 基站发送RRCRelease with suspendConfig → 进入RRC_INACTIVE
7. INACTIVE状态下以1280ms周期监听寻呼 → 功耗极低

## 八、现网参数配置参考

下表汇总了典型的商用网络省电参数配置：

| 参数 | 推荐值（视频类业务） | 推荐值（IM类业务） | 说明 |
|------|---------------------|-------------------|------|
| Long DRX Cycle | 80~160ms | 320~640ms | 周期越长越省电，但延迟越大 |
| Short DRX Cycle | 20~40ms | 40~80ms | 不配置短周期则直接进长周期 |
| onDurationTimer | 2~5ms | 1~2ms | 清醒期越短越省电 |
| drx-InactivityTimer | 10~20ms | 5~10ms | 活动保持时间 |
| Default BWP带宽 | 10~20MHz | 5~10MHz | 回退带宽 |
| bwp-InactivityTimer | 20~40ms | 10~20ms | BWP回退定时器 |
| WUS | 开启 | 开启 | R16特性，建议默认开启 |

## 九、工程师调试实战

### 9.1 如何判断DRX是否生效？

在路测工具（如 TEMS, Nemo, Qualcomm QXDM）中查看：

1. **RRC重配消息**中的`drx-Config`字段——确认DRX参数已下发
2. **MAC层日志**中的DRX状态——观察On Duration和Sleep的切换
3. **终端功耗日志**——对比DRX开关时的电流差异

常见问题：DRX配置已下发但终端仍在持续监听——检查`drx-InactivityTimer`是否设置过大，或者业务是否有持续的小包保活。

### 9.2 BWP切换不生效的排查

1. 检查RRC重配中是否配置了多个BWP
2. 检查Default BWP是否配置
3. 查看DCI format 1_1中的BWP indicator字段
4. 确认`bwp-InactivityTimer`是否合理

### 9.3 RRC_INACTIVE不生效

商用网中常见的坑：
- **核心网不支持**：部分AMF实现未启用INACTIVE状态，总是直接释放到IDLE
- **计时器配置不当**：RRC Inactive Timer设置过短（如1秒），导致频繁在INACTIVE和CONNECTED之间乒乓
- **终端实现差异**：部分芯片平台的INACTIVE状态恢复存在兼容性问题

## 十、省电效果对比总结

| 省电机制 | 适用场景 | 省电效果（相对无省电） | 引入版本 |
|----------|----------|----------------------|---------|
| Idle DRX | 待机 | 90%+ | R15 |
| C-DRX长周期 | 后台应用 | 40%~60% | R15 |
| C-DRX短周期 | 交互类应用 | 20%~40% | R15 |
| BWP缩窄 | 低速业务 | 30%~50% | R15 |
| RRC_INACTIVE | 中等不活跃 | 50%~70% | R15 |
| WUS | 所有C-DRX场景 | 额外10%~20% | R16 |
| Cross-Slot | 低速业务 | 额外5%~15% | R16 |
| MIMO层数限制 | 小包业务 | 10%~20% | R16 |

## 常见问题

**Q1: DRX和BWP省电有什么区别？**
A: DRX是**时间维度**的省电——终端在时间上"间歇性开机"；BWP是**频率维度**的省电——终端在频率上"缩窄接收带宽"。两者可以叠加使用，效果是相乘而非相加。类比：DRX是间歇性关灯，BWP是把100W灯泡换成20W——可以同时做。

**Q2: 为什么不把DRX周期设得尽可能长来最大化省电？**
A: DRX周期越长，下行数据到达后终端需要等到下一个On Duration才能接收，导致**额外延迟 = 0.5 × DRX周期**（平均等半个周期）。对于VoLTE/VoNR等实时业务，延迟要求<50ms，DRX周期不能超过约100ms。所以DRX参数需要根据业务类型精细调优。

**Q3: RRC_INACTIVE和RRC_IDLE有什么区别？终端如何知道自己处于哪个状态？**
A: 关键区别是**上下文保持**。INACTIVE状态下，终端和基站都保留RRC上下文，核心网连接不断开。终端通过RRCRelease消息中是否包含`suspendConfig`来判断——有就是INACTIVE，没有就是IDLE。INACTIVE状态下终端使用I-RNTI（而非5G-S-TMSI）标识自己。

**Q4: RedCap终端的省电有什么特殊之处？**
A: RedCap（Reduced Capability，轻量化5G）是R17引入的终端类型，面向物联网和可穿戴设备。它的省电机制更激进：最大带宽限制在20MHz（FR1）/100MHz（FR2），最大MIMO层数降低到1~2层，支持更长的eDRX周期（最长约1小时），以及更宽松的PDCCH监听密度。本质上是通过**降低终端能力基线**来省电。

**Q5: 现网中C-DRX一般怎么配置？有什么经验值？**
A: 现网典型配置：长DRX周期80~160ms（视频业务）或320ms（IM业务），onDurationTimer 2~5ms，短DRX周期可选配。一个关键经验是：**短DRX周期不是必须的**——如果业务模型比较确定（如纯视频流），直接用长周期效果更好，因为短周期带来的"缓冲"收益不大但增加了配置复杂度。另外，WUS（R16特性）建议尽量开启，它几乎零代价就能额外省电10%以上。

## 参考来源

1. [ShareTechnote - 5G Power Saving](https://www.sharetechnote.com/html/5G/5G_PowerSaving.html) — 5G省电机制的综合技术教程
2. [华为博客 - 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/) — 5G终端省电技术的实践分析
3. [Qualcomm白皮书 - 5G UE Power Saving Techniques](https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/5G-Whitepaper-FR2_Power_Saving_Features-Qualcomm.pdf) — 高通关于FR2场景省电特性的技术白皮书
4. [MediaTek白皮书 - 5G NR Power Saving Enhancements in Release 17](https://mediatek-marketing.files.svdcdn.com/production/documents/MediaTek_White-Paper-R17-5G.pdf) — 联发科对R17省电增强的深度分析
5. [阿里云开发者社区 - 深度解析R16 NR CDRX工作原理及UE省电机制](https://developer.aliyun.com/article/1305666) — C-DRX定时器体系的中文详解

---
> 本文由「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)
