首页 › ran › 5G NR BWP切换四种触发路径全链拆解

5G NR BWP切换四种触发路径全链拆解

一、引言:为什么5G NR需要BWP?

在LTE时代,终端(UE)一旦接入网络,就必须在整个载波带宽上持续监听PDCCH和PDSCH——即使载波带宽高达20 MHz,而实际业务只需要几十kbps的信令。这种"全带宽常开"的设计是LTE终端功耗的主要来源之一。

5G NR引入了一个革命性的概念:Bandwidth Part(BWP,带宽部分)。BWP允许gNB为UE配置载波的一个连续子集,UE只需在该子集上收发数据和控制信令。当流量需求变化时,gNB可以动态指示UE切换到不同带宽的BWP——这就是BWP切换(BWP Switching)机制。

根据3GPP TR 38.840的研究结论,仅Rel-15的DCI和Timer机制即可实现8.5%~31%的功耗节省,配合合适的BWP带宽选择可提升至16%~45%。BWP切换是5G NR UE省电框架的核心支柱,本质上是频域DRX——DRX在时域关断接收机,BWP切换在频域缩窄接收带宽。

本文将深入拆解3GPP TS 38.331(RRC)、TS 38.321(MAC)、TS 38.213(物理层过程)中定义的四种BWP切换触发路径,分析每条路径的信令流程、关键IE、时延特征和实战排错要点。

二、BWP基本概念与分类

2.1 BWP的定义

根据TS 38.211 Section 4.4.5,一个BWP由以下参数唯一定义:

参数 含义 来源
bwp-Id BWP标识(0~4) TS 38.331 BWP IE
locationAndBandwidth 起始位置和带宽(RIV编码) TS 38.331 BWP IE
subcarrierSpacing 子载波间隔(μ) TS 38.331 BWP IE
cyclicPrefix 循环前缀类型(normal/extended) TS 38.331 BWP IE

BWP的最大宽度为275个PRB,UE在每个服务小区上最多可配置4个DL BWP + 4个UL BWP,但在任意时刻只有1个DL BWP和1个UL BWP处于激活状态。

2.2 BWP的分类

根据TS 38.331 Section 5.3和6.3,BWP分为以下类型:

BWP类型 配置来源 典型带宽 典型用途
Initial BWP SIB1或专用信令 窄(如20 MHz) 初始接入、系统信息接收
Default BWP defaultDownlinkBWP-Id RRC参数 窄(通常同Initial BWP) 定时器超时后的回退目标
Dedicated BWP RRCReconfiguration 可宽可窄 连接态数据传输
Dormant BWP(Rel-16+) RRC配置 无PDCCH监听 SCell休眠省电
stateDiagram-v2
    [*] --> InitialBWP: RRC Setup / SIB1
    InitialBWP --> DedicatedBWP_1: RRCReconfiguration
    DedicatedBWP_1 --> DedicatedBWP_2: DCI BWP Indicator
    DedicatedBWP_2 --> DedicatedBWP_1: DCI BWP Indicator
    DedicatedBWP_2 --> DefaultBWP: bwp-InactivityTimer Expiry
    DefaultBWP --> DedicatedBWP_2: DCI BWP Indicator
    DedicatedBWP_1 --> DefaultBWP: bwp-InactivityTimer Expiry
    DefaultBWP --> InitialBWP: RRC Release / Reestablishment

    state "Initial BWP (BWP#0)" as InitialBWP
    state "Default BWP" as DefaultBWP
    state "Dedicated BWP#1 (窄)" as DedicatedBWP_1
    state "Dedicated BWP#2 (宽)" as DedicatedBWP_2

三、BWP切换的四种触发路径

TS 38.321 Section 5.15和TS 38.213 Section 12定义了四种BWP切换机制。下面逐一深度拆解。

3.1 路径一:DCI触发的BWP切换(最快路径)

3.1.1 机制原理

gNB通过PDCCH发送的DCI Format 0_1(UL授权)或DCI Format 1_1(DL分配)中包含一个Bandwidth Part Indicator字段。当该字段指示的BWP ID与当前激活BWP不同时,UE执行BWP切换。

根据TS 38.212 Section 7.3.1,BWP indicator字段的比特数由 log2(N_BWP) 决定,其中N_BWP为配置的BWP数量。当仅配置1个BWP时该字段为0比特(即无法通过DCI切换)。

3.1.2 DCI BWP Indicator IE结构

字段 比特数 含义
BWP Indicator 0~2 bit 目标BWP的索引(0~3)
Frequency domain resource assignment 变长 目标BWP内的频域资源分配
Time domain resource assignment 0~4 bit 目标BWP内的时域资源分配

关键设计意图:DCI中同时携带BWP指示和资源分配,意味着切换到新BWP后,第一条调度就已经在DCI中给出——UE无需等待额外的调度即可开始在新BWP上收发数据。这是一次信令完成"切换+调度"的巧妙设计。

3.1.3 信令时序图

sequenceDiagram
    participant gNB
    participant UE

    Note over UE: 当前在 BWP#1 (窄带, 20 MHz)

    gNB->>UE: PDCCH DCI 1_1<br/>BWP Indicator = 2<br/>Frequency Assignment for BWP#2

    Note over UE: 检测到BWP切换指示
    Note over UE: BWP切换时延 (1~3 slots)
    Note over UE: 重调ADC/DAC采样率<br/>调整RF前端滤波器<br/>同步新BWP的CORESET/SearchSpace

    UE->>gNB: 在 BWP#2 (宽带, 100 MHz) 接收PDSCH

    Note over gNB,UE: 正常数据传输阶段...

    gNB->>UE: PDCCH DCI 1_1<br/>BWP Indicator = 1<br/>Frequency Assignment for BWP#1

    Note over UE: BWP切换回窄带
    Note over UE: 切换时延后恢复 BWP#1 操作

3.1.4 BWP切换时延要求

根据TS 38.133 Section 8.6,BWP切换时延取决于源BWP和目标BWP的SCS:

源SCS → 目标SCS Type 1 (同中心频率) Type 2 (中心频率变化)
15 kHz → 15 kHz 2 slots (2 ms) 3 slots (3 ms)
30 kHz → 30 kHz 2 slots (1 ms) 3 slots (1.5 ms)
120 kHz → 120 kHz 2 slots (0.25 ms) 3 slots (0.375 ms)
15 kHz → 30 kHz — 3 slots (1.5 ms @30kHz)

注意:DCI format 0_0和1_0(fallback DCI)不支持BWP indicator字段,因此只能调度当前激活BWP内的资源。这是网络设计中的兜底安全机制。

3.2 路径二:bwp-InactivityTimer超时回退(省电核心路径)

3.2.1 机制原理

当UE在一个非Default BWP上运行时,gNB通过RRC参数bwp-InactivityTimer配置一个不活跃定时器。每当UE在该BWP上收到DCI调度(无论UL还是DL),定时器重启。如果定时器超时前没有新的调度,UE自主切换回Default BWP——无需gNB发送任何信令。

这是BWP省电机制的核心:gNB不需要跟踪每个UE的BWP状态并逐一下发回退命令,而是依靠定时器让UE自主回退,极大降低了空口信令开销。

3.2.2 关键RRC参数

参数 IE路径 取值范围 设计含义
bwp-InactivityTimer ServingCellConfig 2/3/4/5/6/8/10/20/40/50/80/100/200/500/1000/2000/5000 ms 超时回退时间
defaultDownlinkBWP-Id ServingCellConfig 0~4 回退目标BWP
firstActiveDownlinkBWP-Id ServingCellConfig 0~4 RRC配置完成后的首个激活BWP

设计意图:如果网络不配置defaultDownlinkBWP-Id,则默认使用Initial BWP作为回退目标。如果网络不配置bwp-InactivityTimer,则定时器机制不启用——UE将一直停留在当前BWP直到收到DCI或RRC切换命令。

3.2.3 定时器行为状态图

flowchart TD
    A[UE在非Default BWP上] --> B{收到DCI调度?}
    B -->|是| C[重启 bwp-InactivityTimer]
    C --> B
    B -->|否| D{定时器超时?}
    D -->|否| B
    D -->|是| E[UE自主切换到 Default BWP]
    E --> F[停止定时器]
    F --> G{在Default BWP上<br/>收到DCI指示非Default BWP?}
    G -->|是| H[切换到指示的BWP]
    H --> I[启动 bwp-InactivityTimer]
    I --> B
    G -->|否| G

    style E fill:#ff9900,stroke:#333,color:#000
    style C fill:#4CAF50,stroke:#333,color:#000
    style H fill:#2196F3,stroke:#333,color:#fff

3.2.4 定时器值的工程权衡

定时器值 优势 劣势 典型场景
2~10 ms(短) 快速省电,最大化窄带时间 频繁切换导致吞吐量波动 mMTC、后台同步
50~100 ms(中) 兼顾省电和突发流量 中等功耗 VoNR、IM消息
500~2000 ms(长) 减少切换中断 省电效果弱 大文件下载、视频
不配置 无切换开销 完全丧失BWP省电 测试/特殊场景

实际网络中,华为/中兴通常配置为100~200 ms,爱立信/诺基亚偏向50~100 ms,体现了不同厂商对流量模型的差异理解。

3.3 路径三:RRC重配置触发的BWP切换(最慢但最灵活路径)

3.3.1 机制原理

当gNB需要对UE的BWP配置进行结构性变更时(如增加/删除BWP、修改BWP带宽或SCS),必须通过RRCReconfiguration消息完成。这不是简单的"切换",而是"重配置"——先修改BWP池,再指定激活哪一个。

RRC重配置也是唯一能创建新BWP或删除旧BWP的方式。DCI和Timer只能在已配置的BWP之间切换。

3.3.2 关键IE层次结构

flowchart TD
    subgraph RRCReconfiguration
        A[secondaryCellGroup] --> B[CellGroupConfig]
        B --> C[SpCellConfig]
        C --> D[ServingCellConfig]

        D --> E[downlinkBWP-ToAddModList]
        D --> F[uplinkBWP-ToAddModList]
        D --> G[defaultDownlinkBWP-Id]
        D --> H[bwp-InactivityTimer]
        D --> I[firstActiveDownlinkBWP-Id]
        D --> J[firstActiveUplinkBWP-Id]

        E --> K["BWP-DownlinkDedicated"]
        K --> L["PDSCH-Config"]
        K --> M["PDCCH-Config"]
        K --> N["CSI-MeasConfig"]

        F --> O["BWP-UplinkDedicated"]
        O --> P["PUSCH-Config"]
        O --> Q["PUCCH-Config"]
        O --> R["SRS-Config"]
    end

3.3.3 RRC重配置中的BWP切换流程

TS 38.331 Section 5.3.5.4定义了RRCReconfiguration的处理过程:

  1. gNB发送RRCReconfiguration,携带更新的ServingCellConfig
  2. UE验证新配置的合法性(带宽不超过UE能力、SCS组合合法等)
  3. 如果包含firstActiveDownlinkBWP-Id,UE在RRC配置完成后立即激活该BWP
  4. UE应用新BWP的PDCCH/PDSCH/PUSCH/PUCCH配置
  5. UE发送RRCReconfigurationComplete确认

关键时延:RRC重配置的BWP切换时延通常在10~30 ms量级(远大于DCI的1 ms),因为UE需要完成ASN.1解码、参数验证、MAC/PHY层完整重配置。

3.4 路径四:随机接入过程中的BWP切换

3.4.1 机制原理

根据TS 38.321 Section 5.15和TS 38.213 Section 12,以下场景会触发到Initial BWP的切换:

在随机接入过程中,UE从Msg1(PRACH)到Msg4(RAR+Contention Resolution)都在Initial BWP或专用RA BWP上完成。随机接入完成后,gNB通过DCI或RRC将UE切换回合适的Dedicated BWP。

四、四种路径的全面对比

维度 DCI触发 Timer超时 RRC重配置 随机接入
触发方 gNB主动 UE自主 gNB主动 UE/gNB触发
切换时延 1~3 slots (~0.25~2 ms) 即时(无信令) 10~30 ms RA过程时延
目标BWP DCI指示的任意已配置BWP Default BWP firstActiveBWP-Id指示 Initial BWP
能否创建新BWP 否 否 是 否
对调度的附带 是(切换+调度一次完成) 否 否 否
省电效果 间接(可切换到窄BWP) 直接(自动回退窄BWP) 间接 无
相关TS章节 38.213 §12, 38.212 §7.3 38.321 §5.15, 38.331 38.331 §5.3.5 38.321 §5.1, 38.213 §12
信令开销 低(已有DCI) 零 高(RRC消息) 高(RA过程)

五、BWP切换的物理层过程深度解析

5.1 UE侧物理层操作序列

当UE检测到BWP切换需求后,物理层执行以下操作(TS 38.213 Section 12):

  1. 停止当前BWP上的PDCCH监听
  2. 重调RF前端:调整ADC/DAC采样率,设置RF滤波器带宽
  3. 同步到新BWP的CORESET/SearchSpace:每个BWP独立配置了PDCCH搜索空间
  4. 应用新BWP的DMRS配置:用于PDSCH/PUSCH解调
  5. 在切换时延期间:UE不期望在新旧BWP上收发任何数据

5.2 CORESET与BWP的关系

每个BWP可独立配置最多3个CORESET(TS 38.331 ControlResourceSet)。BWP切换后,UE在新的CORESET上监听PDCCH。这是一个常被忽视的关键点:

如果新BWP没有配置CORESET #0,且网络没有为该BWP配置任何专用CORESET,UE将无法接收PDCCH,等效于"失联"。

实际网络中,运营商通常为每个Dedicated BWP都配置CORESET和SearchSpace,以避免此问题。

5.3 BWP内的PRB编号

BWP切换后,频域资源分配的参考点发生变化:

PRB_BWP = CRB - BWP_start

其中CRB是载波级别的公共资源块编号(从Point A起始),BWP_start是该BWP的起始CRB。DCI中的频域资源分配始终基于BWP-relative PRB编号。

六、BWP配置的RRC IE参数详解

以下表格总结了BWP相关的所有关键RRC参数及其作用:

IE/参数 父节点 类型 说明
bwp-Id BWP INTEGER(0..4) BWP唯一标识
subcarrierSpacing BWP ENUMERATED 15/30/60/120 kHz
cyclicPrefix BWP ENUMERATED normal/extended
locationAndBandwidth BWP INTEGER(0..37949) RIV编码的起始+带宽
downlinkBWP-ToAddModList ServingCellConfig SEQUENCE OF DL BWP配置列表
uplinkBWP-ToAddModList ServingCellConfig SEQUENCE OF UL BWP配置列表
defaultDownlinkBWP-Id ServingCellConfig INTEGER(0..4) Default DL BWP
bwp-InactivityTimer ServingCellConfig ENUMERATED 超时回退定时器
firstActiveDownlinkBWP-Id ServingCellConfig INTEGER(0..4) RRC完成后的激活DL BWP
firstActiveUplinkBWP-Id ServingCellConfig INTEGER(0..4) RRC完成后的激活UL BWP
bwp-Id (in BWP-Downlink) BWP-Downlink INTEGER(0..4) 关联到BWP配置

注意:locationAndBandwidth使用RIV(Resource Indication Value)编码,这是一种将起始位置和长度联合编码的高效方式。解码公式在TS 38.214 Section 5.1.2.2中定义。

七、实战:抓包识别BWP切换流程

7.1 Wireshark/TShark抓包要点

BWP切换的识别依赖多个协议层的组合分析:

步骤 过滤器 识别目标
1. BWP配置 rrc.rrcReconfiguration 查看ServingCellConfig中的BWP参数
2. DCI解码 mac-nr.dci_format == "1_1" 查看BWP indicator字段
3. 定时器超时 间接推断:长时间无调度后UE行为变化 对比调度间隔与timer配置
4. RRC BWP切换 rrc.rrcReconfiguration && rrc.firstActiveDownlinkBWP_Id 直接确认RRC触发的切换

TShark实战命令:

# 提取RRC配置中的BWP参数
tshark -r capture.pcap -Y "rrc.rrcReconfiguration" \
  -T fields -e rrc.downlinkBWP_ToAddModList \
  -e rrc.defaultDownlinkBWP_Id \
  -e rrc.bwp_InactivityTimer

# 提取DCI 1_1中的BWP indicator
tshark -r capture.pcap -Y "mac-nr.dci_format == \"1_1\"" \
  -T fields -e mac-nr.bwp_indicator

7.2 常见故障点与排错

故障现象 可能原因 排查方法
UE切换到新BWP后无数据 新BWP未配置CORESET/SearchSpace 检查RRCReconfiguration中PDCCH-Config
UE收到DCI但不执行BWP切换 DCI format 0_0/1_0(fallback不支持BWP indicator) 确认DCI format是否为0_1/1_1
定时器超时后UE未回退Default BWP 未配置bwp-InactivityTimer或配置值过长 检查ServingCellConfig中的timer值
BWP切换后BLER突增 新BWP的MCS/CQI表不匹配 检查PDSCH-Config中的mcs-Table
RRC重配置失败 BWP带宽超出UE能力 检查UECapabilityInformation中的UE-NR-Capability
RRC重配置超时 新BWP的SCS与现有配置不兼容 检查SCS组合是否满足TS 38.101约束
## 八、BWP切换与DRX的协同省电设计

BWP切换和DRX(Discontinuous Reception)是5G NR省电的两大支柱,它们在频域和时域上互补:

维度 BWP切换 DRX
省电域 频域(缩窄接收带宽) 时域(关闭接收机)
触发方式 DCI/Timer/RRC Timer
恢复时延 0.25~2 ms 可配置(ms到秒级)
省电幅度 30~50%(频域缩窄) 50~80%(时域关断)

实际网络中,典型的省电策略组合是: 1. 空闲态:长DRX周期 + 窄BWP(Initial BWP) 2. 低流量连接态:短DRX周期 + 窄Default BWP 3. 高流量连接态:连续接收(无DRX) + 宽Dedicated BWP + bwp-InactivityTimer

Rel-16引入的SCell Dormancy进一步扩展了这一框架——为SCell配置一个没有PDCCH监听的Dormant BWP,UE在SCell上只做CSI测量和波束管理,进一步降低CA场景下的功耗。

九、Rel-18对BWP机制的增强

3GPP Release 18在BWP领域引入了以下增强(基于TS 38.331 V18.x):

  1. BWP间动态频谱共享增强:支持更灵活的BWP配置以适配动态频谱共享场景
  2. RedCap UE的BWP优化:Reduced Capability UE支持更窄的BWP带宽(最低5 MHz),进一步降低终端成本和功耗
  3. 多TRP场景下的BWP管理:多个TRP可配置不同的BWP集合,UE根据DCI中的TRP指示切换到对应TRP的BWP

常见问题

Q1: DCI触发的BWP切换和RRC触发的BWP切换有什么本质区别?

A: DCI触发是"切换操作"——在已配置的BWP池中选择一个激活,时延约1 ms,不改变BWP配置。RRC触发是"重配置操作"——可以创建、删除、修改BWP本身,然后指定激活哪一个,时延10~30 ms。DCI适合高频次的动态调度,RRC适合低频次的策略调整。

Q2: bwp-InactivityTimer超时后UE是否需要通知gNB?

A: 不需要。这是该机制的核心设计优势——UE自主切换回Default BWP,gNB通过UE在Default BWP上的后续行为(如PDCCH解码反馈)间接感知UE已回退。这避免了大量"回退指示"信令的开销。gNB在调度器侧维护UE的BWP状态时,需要考虑定时器超时的可能性。

Q3: 为什么DCI format 0_0/1_0不支持BWP切换?

A: 0_0和1_0是"fallback DCI",设计目标是当UE无法正确解码常规DCI时提供兜底的调度能力。如果fallback DCI包含BWP indicator,UE可能在尚未完成BWP切换的情况下尝试解码PDSCH/PUSCH,导致解调失败。因此fallback DCI被限制在当前激活BWP内调度,确保可靠性。

Q4: BWP切换时延期间UE能做什么?

A: 在BWP切换时延(1~3 slots)内,UE不能在源BWP和目标BWP上收发任何数据。但UE可以执行不依赖特定BWP的操作,如维持定时提前(TA)、执行邻区测量(如果配置了测量gap)等。网络调度器在发送BWP切换DCI后,必须预留足够的切换gap才能在目标BWP上调度数据。

Q5: 一个UE最多能配置几个BWP?实际网络通常配置几个?

A: 协议允许每个服务小区配置最多4个DL BWP + 4个UL BWP。但实际商用网络通常只配置2~3个:1个窄带Default BWP(省电用)+ 1~2个宽带Dedicated BWP(不同流量等级用)。配置过多BWP会增加RRC信令开销和UE内存占用,收益有限。

参考来源

  1. 3GPP TS 38.331 V18.6.0 — NR RRC Protocol Specification — Section 5.3.5, 6.3.2, 6.4
  2. 3GPP TS 38.321 V18.x — NR MAC Protocol Specification — Section 5.15 BWP operation
  3. 3GPP TS 38.213 V18.x — NR Physical Layer Procedures for Control — Section 12 BWP configuration and switching
  4. 3GPP TR 38.840 — Study on UE Power Saving Features — BWP adaptation power saving analysis
  5. Bandwidth Part (BWP) in 5G NR — CafeTele — BWP概念与切换机制概述
  6. BWP Switching — RF Essentials — BWP切换公式与配置对比
  7. NR UE Power Saving Mechanisms — Mohamed Eladawi — UE省电机制全景分析
  8. A Primer on Bandwidth Parts in 5G New Radio — arXiv:2004.00761 — 学术论文对BWP机制的系统性分析

本文由「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学通信知识星球海报-扫码加入