首页 › ran › 5G两步随机接入MsgA/MsgB机制全链拆解

5G两步随机接入MsgA/MsgB机制全链拆解

引言:为什么需要"砍掉一半"的随机接入

随机接入(Random Access Channel, RACH)是5G NR中UE与gNB建立上行同步、获取C-RNTI的唯一入口。传统4-step RACH(Rel-15)需要经历 Msg1(Preamble)→ Msg2(RAR)→ Msg3(PUSCH)→ Msg4(竞争解决)四个步骤,往返两次(2 RTT)才能完成竞争解决。在URLLC(超低时延高可靠通信)、工业物联网、卫星NTN(Non-Terrestrial Networks,长传播时延)等场景下,这套流程的时延开销变得难以接受。

为此,3GPP在Release 16引入了2-step RACH(Type-2 Random Access)机制,其核心思想是把4-step中的 Msg1+Msg3 合并为 MsgA、把 Msg2+Msg4 合并为 MsgB,用一次往返完成接入。该机制在 TS 38.321 §5.1.3(MAC随机接入过程)、TS 38.213 §8(物理层控制过程)、TS 38.331(RRC参数配置) 中完成标准化,并在Rel-17/18中针对NTN、小数据传输SDT、波束失败恢复等场景持续增强。

本文聚焦2-step RACH这一具体机制,从MsgA/MsgB消息结构、RO-PUSCH资源映射、MsgB三种响应(successRAR/fallbackRAR/backoffIndicator)、回退到4-step的衔接几个关键环节展开拆解。


一、2-step RACH的设计意图与触发场景

1.1 设计目标:以一次上行"加塞"换两次往返

4-step RACH的瓶颈在于:Msg1只发了一个Preamble序列,gNB在Msg2之前完全不知道UE要传什么;而Msg3承载的RRC消息(如RRCSetupRequest、RRCReestablishmentRequest、RRCResumeRequest)其实可以更早发出。2-step RACH的逻辑就是:既然Msg3迟早要发,不如与Msg1一起发。

flowchart TD
    subgraph S4["4-step RACH (Rel-15)"]
        direction LR
        A1["Msg1<br/>Preamble"] --> A2["Msg2<br/>RAR(TA+Grant)"]
        A2 --> A3["Msg3<br/>PUSCH(RRC)"]
        A3 --> A4["Msg4<br/>竞争解决"]
    end
    subgraph S2["2-step RACH (Rel-16)"]
        direction LR
        B1["MsgA<br/>Preamble+PUSCH"] --> B2["MsgB<br/>success/fallback"]
    end
    S4 -->|"压缩2 RTT -> 1 RTT"| S2

1.2 六类触发事件

依据TS 38.321 §5.1.1,随机接入可由以下事件触发,其中大部分在Rel-16后同时支持4-step与2-step:

事件 场景说明 2-step是否支持
初始接入(RRC_IDLE→RRC_CONNECTED) 从同步到发起RRCSetupRequest ✅ CBRA
RRC连接重建 RRCReestablishmentRequest ✅ CBRA
切换(Handover) 目标gNB预分配资源 ✅ CFRA/CBRA
上行失步时UL/SUL数据到达 TA失步触发同步 ✅ CBRA
SR失败 / UL失步 调度请求失败回退 ✅ CBRA
波束失败恢复(BFR) 检测到BFI触发 ✅ CBRA(R16增强)
NTN定时提前调整(Rel-17) 卫星场景TA预补偿 ✅ 增强支持

1.3 RACH类型选择:由RSRP门限裁决

UE在发起随机接入前,需在4-step与2-step之间做选择。决定依据是RSRP门限比较,由rsrp-ThresholdMsgA(RRC参数)控制:

flowchart TD
    Start["UE有上行数据/信令需求"] --> Check1{RACH资源是否配置了<br/>msgA-PUSCH资源?}
    Check1 -->|否| Use4["选择 4-step RACH"]
    Check1 -->|是| Check2{RSRP ≥ rsrp-ThresholdMsgA?}
    Check2 -->|否| Use4
    Check2 -->|是| Use2["选择 2-step RACH"]
    Use2 --> BeamCheck{波束CFRA资源可用?}
    BeamCheck -->|是| CFRA["CFRA模式2-step"]
    BeamCheck -->|否| CBRA["CBRA模式2-step"]

设计意图:2-step RACH的MsgA PUSCH承载实际数据,需要较好的信道条件才能被正确解调。rsrp-ThresholdMsgA相当于一道"准入闸"——只有处于小区中心(高RSRP)的UE才允许使用2-step,否则强制走稳健的4-step。这避免了"边缘UE发MsgA PUSCH失败、白白浪费上行资源"的问题。


二、MsgA:Preamble与PUSCH的"捆绑一击"

2.1 MsgA的物理结构

MsgA在物理层由两部分组成,共享同一个时频资源单元的关联:

flowchart LR
    subgraph MsgA["MsgA 物理资源结构"]
        P1["PRACH Preamble<br/>(PRACH Occasion, RO)"] --> P2["PUSCH Payload<br/>(PUSCH Occasion, PO)"]
    end
    P1 -.->|"1:N 或 1:1 映射"| P2

2.2 RO与PO的映射关系

2-step RACH引入了MsgA-PO(PUSCH Occasion)这一新概念,并把RO与PO绑定起来,其映射在TS 38.213 §8.1中定义:

flowchart TD
    RO1["RO #1"] --> PO1["PO #1 (DM-RS组A)"]
    RO1 --> PO2["PO #2 (DM-RS组B)"]
    RO2["RO #2"] --> PO3["PO #3 (DM-RS组A)"]
    RO2 --> PO4["PO #4 (DM-RS组B)"]
    RO3["RO #3"] --> PO5["PO #5 ..."]

关键参数配置(RRC层,TS 38.331):

参数名 含义 配置在
msgA-PreambleIndex CFRA专用Preamble索引 SpCellConfig
msgA-TransMax MsgA最大重传次数 RACH-ConfigCommonTwoStepRA
msgA-PUSCH-Resource MsgA PUSCH时频资源、MCS、DM-RS MsgA-PUSCH-Config
msgA-RSRP-Threshold 启用2-step的RSRP门限 RACH-ConfigCommonTwoStepRA
msgB-ResponseWindow 等待MsgB的窗口长度 RACH-ConfigCommonTwoStepRA
powerRampingStepMsgA MsgA功率爬坡步长 RACH-ConfigCommon

2.3 MsgA的MAC PDU内容

MsgA PUSCH承载的MAC PDU与4-step Msg3一致,典型内容包括: - RRCSetupRequest(含UE identity: 39-bit randomValue 或 ng5G-S-TMSI) - RRCReestablishmentRequest(含C-RNTI、PCI、reestablishmentCause) - RRCResumeRequest(用于SDT/RRC_INACTIVE状态小数据传输,Rel-16增强重点)


三、MsgB:三种响应的分流与处理

MsgB是2-step RACH的精华所在。gNB收到MsgA后,根据对Preamble和PUSCH的解码情况,给出三种可能的响应。这是理解整个机制的钥匙。

3.1 完整时序图

sequenceDiagram
    participant UE
    participant gNB
    Note over UE: RSRP≥门限,选定2-step RACH
    UE->>gNB: MsgA (PRACH Preamble + PUSCH Payload)
    Note over gNB: gNB解码MsgA
    alt 场景A: Preamble✓ 且 PUSCH✓ (解码成功)
        gNB-->>UE: MsgB = successRAR<br/>(C-RNTI, TA, 竞争解决, UL Grant)
        Note over UE: 接入完成,进入RRC_CONNECTED
    else 场景B: Preamble✓ 但 PUSCH✗ (PUSCH解码失败)
        gNB-->>UE: MsgB = fallbackRAR<br/>(含Msg3 UL Grant, TC-RNTI)
        Note over UE: 回退到4-step流程
        UE->>gNB: Msg3 (用fallbackRAR给的Grant重发PUSCH)
        gNB-->>UE: Msg4 (竞争解决)
    else 场景C: 网络拥塞,无资源响应
        gNB-->>UE: MsgB = backoffIndicator
        Note over UE: 按BI随机退避后重发MsgA
    end

3.2 三种MsgB响应逐项解析

(1)successRAR(成功响应)

这是2-step RACH的理想终态。当gNB同时成功解码了MsgA的Preamble和PUSCH时,用一个MAC子PDU直接完成RAR+竞争解决。其关键字段包括: - UE Contention Resolution Identity:回显UE在MsgA PUSCH中上报的身份(如CCCH SDU的前48 bit),用于UE确认是自己的MsgA被接收——这是竞争解决的核心。 - Timing Advance Command:时间提前量,完成上行同步。 - C-RNTI:分配的小区无线网络临时标识。 - UL Grant:用于后续上行传输的授权。 - TAC(Timing Advance Command)。

successRAR的MAC RAR结构示意如下:

flowchart LR
    subgraph MsgB_SUCC["successRAR MAC subPDU"]
        R1["RAPID<br/>(Preamble ID回显)"] --> R2["UE Contention<br/>Resolution Identity"]
        R2 --> R3["Timing<br/>Advance"]
        R3 --> R4["C-RNTI"]
        R4 --> R5["UL Grant"]
    end

(2)fallbackRAR(回退响应)

当gNB解码Preamble成功但PUSCH失败时——常见于MsgA PUSCH功率不足、信道突发恶化——gNB不浪费已经成功获取的Preamble,而是下发fallbackRAR,把流程"半路接入"到4-step。

fallbackRAR的内容与4-step Msg2(RAR)几乎一致:包含 RAPID、TA、TC-RNTI、Msg3 UL Grant。UE收到后,把刚发的MsgA Preamble视为Msg1,用fallbackRAR中的Grant在Msg3时刻重发PUSCH负载,然后等Msg4完成竞争解决。

这种设计的关键价值:前一次MsgA的Preamble不浪费,已经完成了竞争资源占用,只是PUSCH重传一次。

(3)backoffIndicator(退避指示)

网络拥塞时下发,指示UE在 [0, BI] 范围内随机退避后重传MsgA。这与4-step RACH的BI机制一致。

3.3 MsgB的监听机制:MSGB-RNTI

UE发送MsgA后,在msgB-ResponseWindow窗口内监听PDCCH,用 MSGB-RNTI(而非4-step的RA-RNTI)去加扰DCI。MSGB-RNTI的取值由MsgA所在RO的时频位置决定,使得多个UE可以复用同一搜索空间而各取所需。


四、回退机制:2-step与4-step的"无缝衔接"

4.1 MAC层状态机视角

从MAC实体状态机看(TS 38.321 §5.1.3),2-step到4-step的回退是同一次RA过程内部的状态迁移,而非重新开始:

stateDiagram-v2
    [*] --> RA_Type_Selection
    RA_Type_Selection --> RA_Procedure_2step: RSRP≥门限
    RA_Type_Selection --> RA_Procedure_4step: RSRP<门限
    RA_Procedure_2step --> MsgA_Tx: 选择preamble+PO
    MsgA_Tx --> Wait_MsgB: 启动msgB-ResponseWindow
    Wait_MsgB --> SUCCESS: 收到successRAR
    Wait_MsgB --> FALLBACK: 收到fallbackRAR
    Wait_MsgB --> BACKOFF: 收到backoff / 超时
    FALLBACK --> Msg3_Tx: 视MsgA preamble为Msg1<br/>用fallbackRAR grant发Msg3
    Msg3_Tx --> Wait_Msg4: 启动contentionResolutionTimer
    Wait_Msg4 --> SUCCESS: 收到Msg4竞争解决
    BACKOFF --> MsgA_Tx: 退避后重发
    SUCCESS --> [*]: RA完成

4.2 回退衔接的关键细节

  1. TC-RNTI的继承:fallbackRAR中分配的TC-RNTI将作为后续Msg3/Msg4使用的临时标识,直到竞争解决后转为C-RNTI。
  2. 功率爬坡不归零:从MsgA回退到Msg3时,MsgA的功率爬坡计数(PREAMBLE_POWER_RAMPING_COUNTER)会继续累加,保证重传时的功率提升。
  3. Msg3重用MsgA负载:UE在Msg3重发的PUSCH负载,与MsgA中的内容相同(除被fallbackRAR调整的资源映射外)。

五、CBRA vs CFRA在2-step中的差异

2-step RACH同样区分为基于竞争(CBRA)和免竞争(CFRA)两种模式:

维度 2-step CBRA 2-step CFRA
Preamble来源 UE从竞争池随机选 gNB专用分配
PO资源 从共享PO池按规则映射 gNB专用分配的PO
竞争解决 必须依赖successRAR中的CR Identity 无竞争,无需解决
典型场景 初始接入、重建、SDT 切换、波束恢复(专用资源)
时延确定性 不确定(可能冲突) 确定(无冲突)

注意:2-step CFRA仅用于切换和波束失败恢复这两种gNB能预先为UE分配专用MsgA资源的场景;初始接入只能用CBRA。


六、实战连接:抓包识别与故障排查

6.1 如何在抓包中识别2-step RACH

使用Wireshark/TShark分析5G NR空口抓包(基于SCF FAPI或MAC/PHY层log)时,2-step RACH的识别要点:

观测点 2-step特征 4-step特征
第一条UL消息 同一TTI内含PRACH Preamble + PUSCH 仅PRACH Preamble
RNTI类型(PDCCH DCI) MSGB-RNTI 加扰 RA-RNTI 加扰
响应窗口 msgB-ResponseWindow ra-ResponseWindow
响应内容 successRAR(含CR Identity)/ fallbackRAR RAR(仅TA+Grant+TC-RNTI)
TShark过滤(MAC层) mac-lte.rrc_setup_req_in_msga mac-lte.msg3

TShark实操命令示例:

tshark -r 5g_capture.pcapng -Y "mac-nr && (fapi.dl_info.type == 1)" \
  -T fields -e frame.number -e mac-nr.rnti -e mac-nr.rnti_type

通过RNTI类型字段可区分MSGB-RNTI(2-step响应)与RA-RNTI(4-step响应)。

6.2 常见故障点与排错

故障现象 可能原因 排查思路
UE始终走4-step,不走2-step rsrp-ThresholdMsgA配置过高;gNB未配置MsgA-PUSCH资源 检查SIB1中rach-ConfigCommonTwoStepRA是否下发
MsgA发不出/PO资源找不到 RO-PO映射配置错误;DM-RS端口冲突 核对msgA-PUSCH-Config中的DM-RS图样与PO数量
频繁收到fallbackRAR MsgA PUSCH功率不足;MCS过高 检查powerRampingStepMsgA、MCS表;增大初始PUSCH功率
MsgB窗口超时无响应 MSGB-RNTI计算错误;PDCCH搜索空间未配置 核对MSGB-RNTI与RO时频位置公式(TS 38.213 §8.2)
回退到Msg3后竞争解决失败 多UE preamble碰撞 统计同一RO上的preamble冲突率,扩大preamble池
## 七、Rel-17/18的增强演进

2-step RACH在后续版本中持续增强,体现了标准对低时延场景的持续投入:

  1. Rel-17 NTN增强:针对卫星长时延(RTT可达数十至上百毫秒),2-step RACH减少了RTT次数,显著降低接入时延。同时引入基于星历的TA预补偿,让MsgA Preamble更准确。
  2. Rel-17/18 SDT(Small Data Transmission):在RRC_INACTIVE状态下,UE通过2-step RACH的MsgA直接携带小数据包(如物联网周期上报),无需进入RRC_CONNECTED,大幅降低信令开销和功耗。RRCResumeRequest成为MsgA的高频负载。
  3. Rel-18 多TRP随机接入:通过多个TRP同时接收MsgA Preamble,提升覆盖和可靠性,为URLLC场景提供冗余。
  4. RedCap UE支持:Rel-17 RedCap(轻量化UE)在带宽受限下仍可通过配置较小的MsgA PUSCH资源使用2-step,降低时延。

八、4-step与2-step RACH对比总表

对比维度 4-step RACH (Rel-15) 2-step RACH (Rel-16)
步骤数 4步(Msg1-4) 2步(MsgA/MsgB)
往返次数 2 RTT 1 RTT(理想情况)
Preamble Msg1单独发 MsgA含Preamble+PUSCH
竞争解决 Msg4(单独) successRAR内置(或回退Msg4)
RNTI(PDCCH) RA-RNTI / TC-RNTI MSGB-RNTI / TC-RNTI
适用信道 任意RSRP RSRP≥rsrp-ThresholdMsgA(小区中心)
失败处理 退避重发Msg1 退避重发MsgA / fallbackRAR→Msg3
时延(中心UE) 基准 约降低40%-50%
资源开销 每UE最小(仅Preamble) 每UE较大(Preamble+PUSCH)
典型场景 边缘UE、拥塞场景 URLLC、SDT、NTN、小区中心

常见问题

Q1:2-step RACH一定比4-step快吗? A:不一定。仅当UE处于小区中心(高RSRP、信道好)且gNB能成功解码MsgA PUSCH时,2-step才体现1 RTT的时延优势。若MsgA PUSCH解码失败触发fallbackRAR,则时延反而可能略高于直接走4-step(因为多了MsgA的PUSCH开销)。这也是rsrp-ThresholdMsgA门限存在的根本原因。

Q2:fallbackRAR和successRAR的物理承载有何区别? A:两者都在MsgB PDCCH(MSGB-RNTI加扰)调度的PDSCH中承载,但MAC子PDU结构不同:successRAR内含"UE Contention Resolution Identity + TA + C-RNTI + UL Grant"完成全流程;fallbackRAR仅含"RAPID + TA + TC-RNTI + Msg3 Grant",相当于4-step的Msg2,需要UE继续走Msg3/Msg4。

Q3:为什么初始接入只能用CBRA,而切换可以用CFRA? A:CFRA要求gNB预先为UE分配专用Preamble和PO资源。切换时源gNB可通过Xn接口提前向目标gNB为UE申请专用资源;而初始接入时UE尚无RRC连接,gNB无从为其预分配,只能从竞争池随机选择,因此必须用CBRA。

Q4:MSGB-RNTI和RA-RNTI如何计算? A:两者都基于MsgA/Msg1所在RO的时频位置(symbol index、slot index、frequency index、UL carrier)通过公式计算(详见TS 38.213 §8.2),但2-step RACH使用MSGB-RNTI以保证与4-step监听空间的区分,避免响应混淆。

Q5:2-step RACH在卫星NTN场景有什么特殊价值? A:NTN链路RTT极长(GEO卫星可达~540ms),4-step的2 RTT接入时延超过1秒。2-step RACH压缩为1 RTT,配合Rel-17引入的基于星历的TA预补偿,可使卫星场景的接入时延减半,对卫星物联网/应急通信意义重大。


参考来源

  1. 3GPP TS 38.321 NR MAC协议规范 — §5.1.3 随机接入过程(2-step/4-step MAC过程定义、回退机制)
  2. ShareTechnote - 5G RACH 2-step — MsgA/MsgB结构与4-step对比的可视化讲解
  3. WirelessBrew - 2-Step RACH in Release 16 of 5G NR — MsgB接收窗口与三种响应的工程解析
  4. CSDN - 5G NR Rel16 两步接入技术解析 — MsgA到MsgB革新的中文机制剖析
  5. TechPlayon - 5GNR 2-Step RACH — Preamble选择与MsgA PUSCH资源映射的工程实现细节

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