在5G商用网络中,连接态不连续接收(Connected-mode DRX, C-DRX)是影响终端续航和网络性能的关键机制。不同于LTE时代的"配角",NR时代的C-DRX因高带宽、多波束、多BWP的特性,已成为UE功耗管理的核心引擎。
根据高通2024年发布的终端功耗白皮书,在典型5G智能手机场景下,C-DRX参数调优可使终端功耗降低30%-50%,但代价是调度时延可能从亚毫秒级恶化到数十毫秒。这种省电与时延之间的精确博弈,正是本文要拆解的核心问题。
本文将基于3GPP TS 38.321 V18.x Section 5.7(MAC层DRX过程)、TS 38.331 V18.x(RRC层DRX-Config IE定义)和TS 38.213 Section 10.3(物理层DRX相关过程),完整拆解C-DRX的时序参数交互机制、状态转换逻辑和工程调优策略。
根据TS 38.331 Section 6.3.2,DRX-Config IE的完整ASN.1定义如下(Rel-18版本):
DRX-Config ::= SEQUENCE {
drx-onDurationTimer CHOICE {subMilliSeconds, milliSeconds},
drx-InactivityTimer ENUMERATED {ms0, ms1, ..., ms2560},
drx-HARQ-RTT-TimerDL INTEGER (0..56),
drx-HARQ-RTT-TimerUL INTEGER (0..56),
drx-RetransmissionTimerDL ENUMERATED {sl0, sl1, ..., sl320},
drx-RetransmissionTimerUL ENUMERATED {sl0, sl1, ..., sl320},
drx-LongCycleStartOffset SEQUENCE {drx-LongCycle, drx-StartOffset},
shortDRX SEQUENCE {
drx-ShortCycle ENUMERATED {ms2, ms3, ..., ms640},
drx-ShortCycleTimer INTEGER (1..16)
} OPTIONAL,
drx-HARQ-RTT-TimerDL-r17 INTEGER (0..448) OPTIONAL, -- SCS 480/960kHz
drx-HARQ-RTT-TimerUL-r17 INTEGER (0..448) OPTIONAL, -- SCS 480/960kHz
drx-NonIntegerLongCycleStartOffset-r18 ... -- Rel-18非整数周期
}
| # | 参数名 | 取值范围 | 单位 | 核心作用 |
|---|---|---|---|---|
| 1 | drx-onDurationTimer | 1/32ms ~ 2560ms | ms或1/32ms | On Duration持续时间,UE清醒监听PDCCH的窗口长度 |
| 2 | drx-InactivityTimer | 0 ~ 2560ms | ms | 收到PDCCH后延长清醒的时间,控制"活跃尾巴" |
| 3 | drx-HARQ-RTT-TimerDL | 0 ~ 56 symbols | symbol | 下行HARQ最小重传等待时间 |
| 4 | drx-HARQ-RTT-TimerUL | 0 ~ 56 symbols | symbol | 上行HARQ最小重传等待时间 |
| 5 | drx-RetransmissionTimerDL | 0 ~ 320 slots | slot | 下行重传PDCCH监听窗口 |
| 6 | drx-RetransmissionTimerUL | 0 ~ 320 slots | slot | 上行重传PDCCH监听窗口 |
| 7 | drx-LongCycle | 10 ~ 10240ms | ms | 长DRX周期,省电的主力 |
| 8 | drx-ShortCycle | 2 ~ 640ms | ms | 短DRX周期,活跃后的"缓冲期" |
| 9 | drx-ShortCycleTimer | 1 ~ 16 | 个ShortCycle | 短DRX周期运行次数,到期后回退到长周期 |
TS 38.331对DRX参数施加了严格的数学约束:
drx-LongCycle shall be a multiple of drx-ShortCycle)drx-NonIntegerLongCycleStartOffset-r18),支持如1001/240ms这类非整数周期值,用于NTN(非地面网络)场景的对齐优化TS 38.321 Section 5.7精确规定了UE处于"Active Time"(清醒监听PDCCH)的条件。以下流程图展示了完整的判定逻辑:

图表 1
当配置了shortDRX时,UE在两个DRX周期之间的切换逻辑如下:

图表 2
设计意图:短周期作为"缓冲带"存在。数据突发结束后,UE不是立即进入长周期深度睡眠,而是先经过短周期的"轻度睡眠",这样如果后续很快又有数据到达,可以更快响应,避免长周期带来的高延迟。drx-ShortCycleTimer控制这个缓冲期的持续时长。
HARQ-RTT Timer是DRX中最精巧的定时器。其语义在TS 38.321 Section 5.7.1中定义:
对于下行(drx-HARQ-RTT-TimerDL):当UE收到PDCCH指示下行传输时,在PDSCH接收完成后的第一个符号启动。定时器值为"期望收到HARQ-ACK反馈后、gNB可能调度重传之前的最小等待时间"。
对于上行(drx-HARQ-RTT-TimerUL):当UE收到PDCCH指示上行传输时,在PUSCH传输完成后的第一个符号启动。

图表 3
| 场景 | HARQ-RTT Timer | Retransmission Timer | UE功耗影响 | 时延影响 |
|---|---|---|---|---|
| 保守配置 | 7 symbols | 8 slots | 低(RTT期间可睡眠) | 重传响应慢 |
| 激进配置 | 1 symbol | 2 slots | 高(很少睡眠机会) | 重传响应快 |
| 关闭重传 | 0 symbols | 0 slots | 最低 | 依赖RLC层重传,时延不可控 |
关键洞察:HARQ-RTT Timer的设计哲学是"让UE在确定不会有重传调度的时间窗口内放心睡眠"。这个窗口的长短取决于HARQ-ACK反馈时序(k1值),由DCI中的PDSCH-to-HARQ_feedback timing indicator字段决定。
基于多个商用网络的实测数据和学术研究(参考arXiv:2204.00834),以下是三种典型C-DRX配置方案的性能对比:
| 维度 | 方案A:时延优先 | 方案B:均衡型 | 方案C:省电优先 |
|---|---|---|---|
| On Duration | 10ms | 5ms | 2ms |
| Inactivity Timer | 200ms | 50ms | 10ms |
| Short Cycle | 20ms | 40ms | 80ms |
| Short Cycle Timer | 8次 | 4次 | 2次 |
| Long Cycle | 160ms | 320ms | 640ms |
| HARQ-RTT DL | 4 symbols | 7 symbols | 10 symbols |
| Retx Timer DL | 4 slots | 8 slots | 16 slots |
| 平均调度时延 | ~5ms | ~15ms | ~50ms |
| 功耗节省率 | ~25% | ~45% | ~60% |
| 适用场景 | VoNR/游戏 | 视频/社交 | 后台/待机 |
OnDurationTimer存在一个关键的拐点效应:
这个拐点因SCS不同而变化。SCS 120kHz(FR2)下,1ms就包含8个slot,2ms的OnDuration已足够;而SCS 15kHz下,1ms仅1个slot,需要更长的OnDuration。
InactivityTimer是C-DRX参数中最具争议的一个。它造成"尾巴效应":
收到最后一个PDCCH后,UE继续清醒 InactivityTimer 毫秒
这段时间内没有数据调度 → 纯浪费功耗
实测数据表明: - InactivityTimer = 200ms:在突发流量结束后,平均浪费约100ms的清醒时间 - InactivityTimer = 50ms:浪费降至约25ms,但可能错过紧接着的二次突发 - InactivityTimer = 0ms(极端省电):每次PDCCH只延长OnDuration内的清醒时间,突发间完全睡眠
运营商博弈: - 爱立信设备倾向于配置较大的InactivityTimer(100-200ms),保证调度灵活性 - 华为设备在中期版本引入了"AI预测InactivityTimer"功能,根据流量模式动态调整 - 三星设备实测发现InactivityTimer对VoNR MOS分影响显著,建议不低于20ms
TS 38.321 Section 5.7规定,DRX Cycle的起始点由SFN和drx-StartOffset共同决定:
长DRX周期起始条件: (SFN × 10 + subframe) mod drx-LongCycle = drx-StartOffset
短DRX周期起始条件: ((SFN × 10 + subframe) mod drx-ShortCycle + offset) mod drx-ShortCycle = 0
其中短周期偏移量 offset = (drx-StartOffset) mod (drx-ShortCycle)
gNB通过为不同UE配置不同的drx-StartOffset,可以:
实测案例:某运营商在64T64R Massive MIMO小区下,将200个激活UE的drx-StartOffset均匀分布在0-159ms范围内(Long Cycle=160ms),PDCCH CCE利用率峰值从78%降至45%。
3GPP Release 18引入了Cell DTX/DRX(网络侧不连续发送/接收)机制,这是DRX理念从UE侧扩展到网络侧的重大变革。
TS 38.331 Rel-18新增了CellDTX-DRX-Config IE,定义了小区级别的DTX/DRX配置:
CellDTX-DRX-Config ::= SEQUENCE {
cellDTX-Config SEQUENCE { ... } OPTIONAL, -- 小区级DTX配置
cellDRX-Config SEQUENCE { ... } OPTIONAL -- 小区级DRX配置
}
Cell DTX:gNB在特定时隙停止PDSCH/PDCCH发送,降低PA(功率放大器)功耗 Cell DRX:gNB在特定时隙停止PDCCH监听(适用于PUCCH/PUSCH接收调度)

图表 4
关键约束:当gNB进入Cell DTX状态时,UE的DRX On Duration窗口必须与之对齐。否则UE醒来后发现gNB没有发送任何信号,白白浪费功耗。TS 38.321 Rel-18规定UE需要通过SIB1或专用RRC信令获取Cell DTX/DRX图案,并在自己的DRX配置中考虑这一约束。
Rel-18引入了drx-NonIntegerLongCycleStartOffset-r18,支持如下非整数周期值:
| 周期值 | 实际毫秒数 | 适用场景 |
|---|---|---|
| ms1001over240 | 4.17ms | NTN低轨卫星 |
| ms25over6 | 4.17ms | NTN同步 |
| ms1001over120 | 8.34ms | NTN对齐 |
| ms25over3 | 8.33ms | NTN时延补偿 |
| ms100over9 | 11.11ms | 特殊SCS对齐 |
| ms50over3 | 16.67ms | FR2波束管理 |
设计动机:NTN场景中,由于卫星运动导致传播时延快速变化(LEO卫星约7km/s),传统整数ms的DRX周期无法精确对齐卫星的时隙边界。非整数周期允许DRX唤醒时刻更精确地匹配NTN的时序关系。
在5G L2级抓包中识别DRX行为的关键观察点:
| 故障现象 | 可能原因 | 排查方法 |
|---|---|---|
| VoNR通话中断/卡顿 | Long DRX Cycle过长或On Duration太短 | 检查Long Cycle是否≤160ms,On Duration是否≥4ms |
| 终端耗电过快 | InactivityTimer过大或ShortCycle配置缺失 | 对比DRX-Config参数,确认InactivityTimer≤100ms |
| 下行吞吐量下降 | RetransmissionTimer配置不足 | 检查HARQ-RTT + Retx Timer是否覆盖完整重传窗口 |
| 切换后业务中断 | 切换后DRX配置未及时更新 | 检查RRC Reconfiguration中的DRX-Config是否下发 |
| URLLC高时延 | DRX Cycle与URLLC低时延需求冲突 | 对URLLC UE关闭DRX或使用极短Cycle(≤4ms) |
| ## 九、DRX与跨层机制的联动 |
NR支持将DRX与BWP切换联动:UE在On Duration期间使用大带宽BWP(如100MHz),在DRX Sleep期间回退到小带宽BWP(如20MHz)或默认BWP。这进一步降低了UE在睡眠期间的RF带宽功耗。
FR2场景下,UE在On Duration期间需要维护波束跟踪。Rel-16引入了drx-onDurationTimer期间限制CSI-RS测量的机制,避免在短On Duration内被过多的测量任务干扰PDCCH解码。
TS 38.331规定,当drx-onDurationTimer未启动时,UE可以不发送周期性SRS和L1-RSRP报告(除非配置了skipPartialCSI-RS)。但网络可以通过ps-TransmitPeriodicCSI-RS和ps-TransmitOtherPeriodicCSI字段显式控制这一行为。
Q1: C-DRX和IDLE/INACTIVE DRX的区别是什么?
A: C-DRX在RRC_CONNECTED态运行,由gNB通过RRC信令配置,核心目标是平衡调度时延和功耗。IDLE/INACTIVE DRX在RRC_IDLE/RRC_INACTIVE态运行,用于寻呼监听(Paging),周期通常远大于C-DRX(从320ms到10485.76s的eDRX)。C-DRX由MAC层控制,IDLE DRX由RRC层控制,两者独立配置互不影响。
Q2: Short DRX Cycle是否必须配置?
A: 不必须。shortDRX在DRX-Config中是OPTIONAL字段。如果不配置,UE在InactivityTimer超时后直接从Active进入Long DRX Cycle。但实际商用网络几乎总是配置Short DRX,因为不配置会导致"要么全醒要么深睡"的二元状态,无法有效应对突发流量的间隔。
Q3: HARQ-RTT Timer为什么用symbol而不是slot作为单位?
A: 因为HARQ-RTT Timer的核心设计意图是精确到"UE发送HARQ-ACK后到gNB可能调度重传之间的最小时间"。这个时间由PDSCH处理时间(N1 symbols)+ HARQ-ACK传输 + gNB处理时间组成,粒度需要精确到symbol级别才能避免"过早唤醒"浪费功耗。Retransmission Timer用slot为单位是因为它只粗略控制一个重传监听窗口。
Q4: Rel-18的Cell DTX/DRX对UE有什么影响?
A: UE需要感知gNB的Cell DTX/DRX状态。当gNB处于Cell DTX时,UE不应在对应时隙期待任何PDSCH/PDCCH传输;当gNB处于Cell DRX时,UE不应在对应时隙发送需要PDCCH调度的上行传输。TS 38.213 Rel-18新增了Cell DTX/DRX相关的PDCCH监听行为修改规则。
Q5: 如何判断DRX参数配置是否合理?
A: 三个关键指标:(1) DRX激活率=Active Time / Total Time,一般建议控制在20%-40%;(2) 调度命中率=PDCCH successful decode / PDCCH total,应>95%;(3) 用户面时延99分位,VoNR应<50ms,视频应<100ms。如果激活率>60%说明参数过于激进,如果调度命中率<90%说明OnDuration太短。
本文由「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 等场景全覆盖。
