首页 › deep-tech › 5G协议栈五层原理全景图解

5G协议栈全景图解:从IP包到电磁波,每一层到底在干什么

你有没有想过:你在手机上点开一个网页,这个请求是怎么变成空气中的电磁波,又被基站还原成数据的?中间经历了什么?为什么明明物理层已经有一堆纠错编码了,上面还要再来一层重传?为什么4G只有四层协议,5G偏偏要加一个SDAP?

这篇文章就带你把5G空口协议栈从上到下拆开,看清每一层的职责边界、设计动机,以及它们如何协作把一个IP包可靠地送过充满噪声和干扰的无线信道。


一、为什么要分层:先讲一个快递的故事

假设你要把一批易碎品从上海寄到拉萨。你不会亲自开车去,而是交给一套分工明确的物流系统:

每一层只关心自己的事:打包车间不需要知道货走的是哪条国道,调度中心不需要知道箱子里是不是易碎品。层与层之间通过标准化接口协作,任何一层换供应商(换算法、换设备)都不影响其他层。

这就是协议分层的全部哲学。5G空口协议栈从上到下五个用户面子层——SDAP、PDCP、RLC、MAC、PHY——每一层恰好对应物流系统里的一个角色,解决无线通信中的一个独立问题:

层级 一句话职责 生活类比 对等实体在哪里 出问题时的典型症状
SDAP 决定数据走哪条“服务通道”(QoS流到无线承载的映射) 收件员决定走空运还是陆运 UE ↔ gNB 高优先级业务得不到保障
PDCP 加密、防篡改、报头压缩、按序交付 防震包装+防伪封条+编号 UE ↔ gNB 丢包、乱序、被窃听
RLC 拆包/组包,三种可靠度模式 大件拆成标准箱 UE ↔ gNB 大包传不动、实时业务卡顿
MAC 调度空口资源、快速重传(HARQ) 机场塔台调度航班 UE ↔ gNB 速率低、时延抖动大
PHY 把比特变成电磁波,或把电磁波还原成比特 卡车与公路 UE ↔ gNB 信号差、解码失败(BLER高)

还有一个看不见的控制面:RRC(无线资源控制)负责“管理这些物流工人本身”——建立承载、配置参数、下发测量命令;NAS(非接入层)则跨越基站,直接连接手机和核心网,处理注册、鉴权这类“身份事务”。


二、全景架构:谁和谁在说话

理解协议栈最重要的一个概念是对等实体(Peer Entity):UE的PDCP和gNB的PDCP是“同行对话”,它们之间的协议头只被对方的同层理解、由对方的同层剥掉。而每层协议在哪里终结,决定了出问题时你该去哪台设备上查日志。

flowchart TB
    subgraph UE["手机 UE"]
        APP["APP 应用层"]
        NAS["NAS 非接入层"]
        US["SDAP"]
        URRC["RRC"]
        UP["PDCP"]
        UR["RLC"]
        UM["MAC"]
        UH["PHY"]
    end
    subgraph GNB["基站 gNB"]
        NRRC["RRC"]
        NS["SDAP"]
        NP["PDCP"]
        NR2["RLC"]
        NM2["MAC"]
        NH2["PHY"]
    end
    subgraph CORE["核心网 5GC"]
        UPF["UPF 用户面锚点"]
        AMF["AMF 连接与移动管理"]
    end
    APP --> US
    NAS --> URRC
    US --> UP
    URRC --> UP
    UP --> UR --> UM --> UH
    UH <== "无线空口 Uu" ==> NH2
    NH2 --> NM2 --> NR2 --> NP
    NP --> NS
    NS --> UPF
    NP --> NRRC
    NRRC --> AMF

从这张图能读出三条关键信息:

  1. 用户面在基站“落地”:SDAP及以下五层全部终结于gNB,数据在基站解包后通过N3接口交给UPF进入互联网。这意味着空口协议栈只负责“最后一公里”,它不知道、也不需要知道数据的目的地。
  2. RRC终结在基站,NAS穿越基站:RRC是手机和基站之间的事,而NAS(注册、鉴权、寻呼响应)是手机和AMF之间的事,基站只是透明转发。这就是为什么换基站(切换)不影响NAS状态——你的“身份证登记”还在AMF那里。
  3. 加密终结在PDCP:空口加密在PDCP层完成,基站在PDCP以下是明文可见的。这个设计决定了安全边界的位置,后面细说。

三、自底向上逐层拆解

3.1 PHY:和物理规律正面交锋的一层

物理层是唯一真正“接触”物理世界的一层:把比特流映射成电磁波的幅度、相位、频率,接收端再从被噪声、衰落、多径污染的信号里把它们抠出来。

它面对的第一个铁律是香农极限:

$$C = B\,\log_2\left(1 + \frac{S}{N}\right)$$

信道容量 $C$ 由带宽 $B$ 和信噪比 $S/N$ 唯一决定。这个公式告诉所有上层:你们再怎么优化协议,也绕不过物理规律。想要更快的速率,要么加带宽(5G为什么用100MHz大带宽和毫米波),要么提升信噪比(为什么基站越近越快)。协议栈的其他四层,本质上都是在“逼近”这条天花板,而不是突破它。

PHY采用的传输骨架是OFDM:把宽带信道切成成百上千个正交的窄带子载波,并行传输。5G引入了可扩展的子载波间隔(numerology)——4G固定15kHz,而5G从15kHz一路可配置到960kHz,子载波间隔越大、时隙越短,时延越低(据Wikipedia的5G NR词条,15kHz对应1ms时隙,120kHz对应0.125ms时隙,这正是URLLC低时延的物理基础)。

但OFDM有个致命弱点:很多子载波同相叠加时,峰值功率远超平均值。用峰均比(PAPR)度量:

$$\mathrm{PAPR} = 10\lg\frac{P_{\text{peak}}}{P_{\text{avg}}} \;(\mathrm{dB})$$

峰均比高意味着功放必须留巨大线性余量,否则信号被“削顶”失真。基站的功放可以做得又大又贵,手机不行——所以上行(手机发、基站收)通常改用DFT扩频的OFDM(SC-FDMA形态),先把信号“预压缩”再上子载波,显著压低PAPR、省电省钱。这是“下行OFDMA、上行SC-FDMA”这一经典分工的由来,从4G LTE一直延续到5G(LTE维基词条明确记载了这一设计,动机就是节省终端功耗)。

PHY向上层交付的不是一个“保证成功”的服务,而是一个带错误率的统计服务。数据信道的初始误块率(BLER)典型目标约10%——是的,物理层“故意”允许10%的失败,因为它失败得快、重传得也快,这比追求一次成功更划算。理解这一点是理解整个协议栈设计的关键伏笔。

3.2 MAC:空口的机场塔台

无线空口最宝贵的是时间和频率资源(时隙×PRB),成百上千个用户抢着用。MAC层的调度器就像机场塔台:每个毫秒级的调度周期里,决定“哪个用户的哪些数据、装进哪个时隙的哪些资源块、用什么编码调制等级”。

调度器要同时权衡:信道质量好的用户多给资源(提升总吞吐)、信道差的用户保底供给(保障公平)、语音包要按时到(保障时延)。这个多目标平衡没有标准答案,各厂商调度算法是核心商业机密——这也是为什么同样信号强度下,不同设备商的网络速率差异可以很大。

MAC还挂着通信系统里反应最快的重传机制——HARQ(混合自动重传请求)。它的精妙之处在于“失败不白失败”:接收端解码失败时,并不丢弃收到的信号,而是把原始软比特存在HARQ缓存里;发送端重传时可以只重发新的冗余校验比特,接收端把新旧软信息合并解码,像叠罗汉一样逐步逼近正确答案。HARQ环路的时延在毫秒级,是名副其实的“快速急救车”。

3.3 RLC:精简后的分拣中心

RLC负责把上层的包拆小(适配PHY一次能搬的传输块大小)和把收到的碎片拼回去。它有三种工作模式,可靠度依次递增:

模式 加协议头 分段 重传 保序 典型用途
TM 透明模式 ✗ ✗ ✗ ✗ 广播系统消息等极简场景
UM 非确认模式 ✓ ✓ ✗ ✗ VoIP语音、视频通话等实时业务
AM 确认模式 ✓ ✓ ✓ ✓ 大部分数据业务

为什么语音宁可允许丢包也不要重传?因为实时通话中,迟到300ms的包等于废包——重传补回来的话音早已过了播放时刻。UM模式用“丢了就丢了”换取时延确定性,这是为业务特性选择可靠度的典型设计。

值得注意的一个5G关键变化:4G的RLC-AM自己带重排和重传(ARQ),5G把这部分职责上移到了PDCP,RLC只留分段和纠错反馈。为什么这样改?4G时代这没问题,但5G引入载波聚合和双连接后,数据可以从多条支路到达,RLC层各自重排会把逻辑搞得很复杂;把重排统一收到PDCP这个“总装车间”,多支路乱序问题一处解决。5G的协议栈不是凭空堆功能,而是在做减法和职责再分配。

3.4 PDCP:安全总管 + 兜底重传

PDCP是用户面最“忙”的一层,四件事:

  1. 头压缩(ROHC):VoIP每20ms发一个小包,IP+UDP+RTP头却要占40~60字节,语音载荷可能只有30字节——不压缩的话,一半以上带宽在送“信封”。ROHC把头压到约3字节,这是VoLTE能高效跑在IP网上的前提。
  2. 加密:空口加密放在这一层,意味着数据一旦过了PDCP(在基站内部往下走),就是明文。这是有意的设计:基站需要看到加密前的RLC/MAC头才能做调度和重传,而用户数据的机密性由PDCP向上提供。同时PDCP还负责信令的完整性保护(防篡改)。
  3. 按序重排与重传兜底(ARQ):HARQ救不回来的极少数丢包(比如重传次数耗尽),由PDCP的确认模式重传跨空口往返兜底,并把乱序的包重新排好队交给上层。TCP不喜欢乱序,乱序包会被误判为网络拥塞而降速。
  4. 超时丢弃(discard timer):一个包在PDCP排队超过定时器上限还没发出去,就直接扔掉。听起来粗暴,实则明智——时延敏感业务里,迟到的数据和丢掉的数据一样没用,不如尽早腾出队列。

3.5 SDAP:5G新增的“服务质量接线员”

SDAP(Service Data Adaptation Protocol)是5G相对4G协议栈唯一全新增加的子层,很多人第一次看协议栈图都会疑惑:它到底干什么?

4G的服务质量绑定在“承载”上——一条EPS承载从手机到核心网网关端到端贯穿,QoS和管道合一。这个模型在4G够用,但5G要支撑差异化极大的业务切片(一个UE同时跑语音、超低时延工业控制、大流量视频),端到端统一管道太僵化。于是5G把QoS拆成了两级:

SDAP的工作就是在QFI和DRB之间做“接线”——把每条QoS流映射到合适的DRB上传输:

flowchart LR
    subgraph CORE["5GC 侧"]
        QF1["QoS Flow A<br/>语音 5QI=1 GBR"]
        QF2["QoS Flow B<br/>普通上网 5QI=9 Non-GBR"]
    end
    subgraph AIR["空口侧 UE 与 gNB 对等"]
        D1["DRB1 保障型承载"]
        D2["DRB2 默认承载"]
    end
    QF1 -->|"SDAP 映射(打 QFI 标记)"| D1
    QF2 -->|"SDAP 映射(打 QFI 标记)"| D2
    D1 --> R1["调度优先保障速率与时延"]
    D2 --> R2["剩余资源尽力而为"]

一个细节体现设计之精妙:SDAP头里的QFI跟随数据一起走到底,使得下游每个调度点(MAC调度器、承载网)都能 independently 知道这个包属于哪条QoS流,无需查询任何会话表。QoS信息“长在包上”,而不是“查在表里”——这是分布式系统里非常经典的设计智慧。

顺带一提:NSA(非独立组网)模式下用户面仍走4G锚点承载,SDAP通常不启用;只有SA组网才用上完整的五层协议栈。现网排查时,NSA手机的协议栈里看不到SDAP是正常现象,别当成故障。

3.6 控制面:RRC与NAS

RRC是协议栈的“管理层”:广播系统消息、建立/释放承载、配置测量与切换、寻呼手机。它跑在SRB(信令无线承载)上,用户数据跑在DRB上,两者在PDCP以下是同一套底层设施。NAS则在RRC之上,直接对 talk AMF,处理注册、鉴权、会话管理——记住它的穿透性:基站是NAS的管道,不是NAS的对手方。


四、一个IP包的完整旅程

现在把所有层串起来,看一个约1400字节的IP包从APP发出后,如何被逐层“套娃”,最后变成电磁波:

flowchart TD
    A["IP 数据包<br/>约 1400 字节"] --> B["SDAP<br/>加 QFI 标记头"]
    B --> C["PDCP<br/>ROHC 压缩 + 加密 + 加头"]
    C --> D["RLC<br/>拆分为合适大小 + 加头"]
    D --> E["MAC<br/>多条逻辑信道复用 + 加头 + 填充"]
    E --> F["PHY<br/>加 CRC、LDPC/Polar 编码<br/>加扰、调制、映射到子载波"]
    F --> G["射频发射<br/>电磁波上天"]

每一层剥掉自己的头,就完成一次“解套娃”。反向的接收端则完全镜像地逆向执行。发送路径上每加一层头,开销增加几个字节到十几个字节——这些开销是分层的“税”,换来的是每层职责的清晰与独立演进能力。


五、双层重传:快慢两条保险

协议栈最容易被误解的设计,就是“为什么有两套重传”。答案一句话:HARQ求快,ARQ求稳,两者时延尺度差两三个数量级。

sequenceDiagram
    participant TX as 发送端 MAC
    participant RX as 接收端 MAC
    participant PD as 接收端 PDCP
    TX->>RX: 第1次发送传输块
    RX-->>TX: NACK 解码失败
    Note over RX: 软比特保留在 HARQ 缓存中
    TX->>RX: 第2次发送增量冗余版本
    Note over RX: 新旧软比特合并解码 成功
    RX-->>TX: ACK
    RX->>PD: 重组排序后上交
    Note over PD: 若仍有缺失<br/>由 PDCP 层 ARQ 跨空口重传兜底

物理层初始BLER按10%设计,经过HARQ合并重传几次后,残留错误率以指数速度下降:

$$\mathrm{BLER}_{\text{残留}} \approx \mathrm{BLER}^{N} \quad \Rightarrow \quad 0.1^3 = 0.1\%$$

三次机会把90%成功率抬到99.9%。剩下的0.1%如果恰好发生,PDCP的ARQ在几百毫秒量级再补一刀。快慢两级互补:HARQ保证毫秒级时延下的效率,ARQ保证最终交付的可靠性。 这种“快速局部重传 + 慢速全局重传”的分层结构,在TCP/IP协议栈(MAC重传/TCP重传)、存储系统(磁盘ECC/RAID)中反复出现,是工程学的通用模式。


六、4G与5G协议栈对比:继承多于颠覆

特性 LTE (4G) NR (5G) 变化的动机
子层数量 4层(无SDAP) 5层(+SDAP) QoS流与无线承载解耦,支撑切片
RLC-AM重排/ARQ 在RLC 上移到PDCP 多支路(CA/DC)下统一重排
子载波间隔 固定15kHz 15~960kHz可配 一张网同时服务广覆盖与低时延
最小调度周期 1ms子帧 0.125~1ms时隙 URLLC毫秒内交付
空口加密位置 PDCP PDCP(不变) 安全边界一致
上行波形 SC-FDMA CP-OFDM / DFT-s-OFDM可选 灵活性与终端功耗再平衡

可以看到,5G协议栈的骨架和4G高度同源——真正革命性的变化发生在物理层(大带宽、大规模天线、新编码)和网络架构(核心网服务化),协议栈本身做的是结构性微调:新增一层做QoS解耦、上移一个功能做多支路统一。据Wikipedia的5G NR词条,5G空口同样基于OFDM体系设计,是LTE的直接演进而非推倒重来。所以“5G快是因为协议栈新”是个常见误解——它快,主要快在物理层给了更大的舞台。


七、实战连接:分层思维如何用于现网排障

分层协议栈给工程师最大的礼物是故障域隔离:每一层有自己的KPI,哪层指标异常,问题就在哪层的管辖范围。推荐这条排查路径:

  1. PHY层看BLER和CQI:初始BLER长期显著高于10%、CQI低且波动 → 覆盖弱或干扰问题,去查 RF 环境,不用翻上层协议。
  2. MAC层看HARQ重传率和调度PRB利用率:HARQ重传率高但BLER正常 → 可能是时频偏移、上行失步;PRB利用率长期90%+ → 容量问题,加频点或扩容。
  3. RLC层看AM重传次数:HARQ耗尽后仍需RLC重传 → 深度质量问题(如高铁快速衰落、小区边缘)。
  4. PDCP层看discard超时:PDCP丢弃计数增长 → 空口拥塞或调度饥饿,包在队列里“过期作废”。
  5. SDAP层看映射配置:语音QoS流没映射到保障承载 → 核心网会话建立或映射规则问题。

三个常见的调试陷阱:


常见问题

Q: HARQ和PDCP重传(ARQ)功能重复吗?为什么留两套? A: 不重复,是互补。HARQ在MAC层,环路时延毫秒级,靠软比特合并“边错边救”,追求效率;PDCP的ARQ环路跨整个空口往返,时延大一到两个数量级,只兜HARQ救不回来的极小概率残留错误。类比:现场急救员(HARQ)+ 医院ICU(ARQ)。

Q: SDAP和4G的QCI机制本质区别是什么? A: 4G的QCI绑定在端到端承载上,QoS和管道合一;5G的SDAP把QoS流(带QFI标记)和空口DRB解耦,多条QoS流可共享一条DRB,也可以一条流独占一条DRB,映射灵活可动态调整。本质是从“管道定义QoS”变成“标签定义QoS”。

Q: 为什么上行不像下行一样用OFDMA,偏要SC-FDMA? A: OFDM多子载波同相叠加导致高峰均比(PAPR),要求功放有大的线性范围。基站立在铁塔上带大电源,无所谓;手机靠电池,功放低效直接吃续航、增加芯片成本。SC-FDMA先做DFT扩频“削峰”,牺牲一点实现复杂度换来终端侧的低PAPR。

Q: RLC的UM模式不允许重传,那语音丢包谁来管? A: 没人管,这是特性不是缺陷。实时语音对时延极度敏感,重传补回来的包已过播放时刻,毫无价值。UM模式允许少量丢包(人耳对偶发丢失不敏感,还有解码器补偿),换取每包按时到达的确定性。可靠和实时是同一枚硬币的两面。

Q: 加密为什么放在PDCP层而不是更低或更高? A: 放更低(MAC/PHY):基站的调度和重传需要读包头,全加密会让这些功能无法工作,且PHY逐次重传加解密开销太大;放更高(NAS/核心网):无法保护空口这一最脆弱的无线段。PDCP恰好平衡两者——基站以下链路受保护,基站内部仍能读头做调度,用户载荷对基站不透明(信令则在PDCP做完整性保护)。


参考来源

  1. Erik Dahlman, Stefan Parkvall, Johan Sköld, 4G – LTE/LTE-Advanced for Mobile Broadband, Academic Press, 2011 — 协议栈分层职责与HARQ/ARQ双层重传机制的教科书式论述(参见LTE维基词条参考文献)。
  2. Stefania Sesia, Issam Toufik, Matthew Baker, LTE – The UMTS Long Term Evolution: From Theory to Practice, 2nd Edition, John Wiley & Sons, 2011 — 从理论到实现的协议栈设计动机分析。
  3. SeungJune Yi 等, Radio Protocols for LTE and LTE-Advanced, Wiley, 2012 — 无线协议各子层(PDCP/RLC/MAC)功能与模式的权威教材,5G协议栈演进的参照基线。

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