<!-- title: 5G直通链路：设备直接对话原理 -->

# 5G直通链路：设备直接对话原理

## 一个日常类比：为什么要"直接说"

想象这样一个场景——你和同事坐在同一间会议室里，你想告诉他"下午3点开会"。正常流程是：你先拨通公司总机，总机转接到他办公室分机，他接听后你再说。这就像传统蜂窝通信：手机→基站→核心网→基站→手机，绕了一大圈。

但如果你们就坐在相邻位置，为什么不直接开口说？**5G直通链路（Sidelink）就是让设备"直接开口说话"的技术**——两个终端之间不经过基站和核心网，直接在空口中完成数据交换。

这种"直接对话"不仅省时，在紧急场景下更是救命的——当基站被灾害摧毁、或在隧道深处信号覆盖不到的地方，设备之间的直接通信就成了唯一的联络手段。

## 直通链路是什么：PC5接口的本质

在5G通信体系里，手机和基站之间的接口叫**Uu接口**（下行DL + 上行UL），而终端与终端之间的直接通信接口叫**PC5接口**。Sidelink就是PC5接口上的无线传输链路。

```
$$
\text{传统蜂窝} \quad UE_1 \xrightarrow{UL} gNB \xrightarrow{} Core \xrightarrow{} gNB \xrightarrow{DL} UE_2
$$

$$
\text{Sidelink} \quad UE_1 \xleftrightarrow{PC5} UE_2
$$
```

Sidelink不是5G凭空发明的——LTE时代就已经有了（Rel-12引入D2D），但5G NR Sidelink（Rel-16起）做了**质的变化**。最关键的区别是：LTE Sidelink只能广播，就像大喇叭喊话，谁听到算谁；而NR Sidelink支持**单播（Unicast）、组播（Groupcast）、广播（Broadcast）**三种模式，既能点对点私密通话，也能组内群聊，还能像广播一样全向喊话。

```mermaid
graph TB
    subgraph 传统蜂窝通信
        UE1[UE₁] -->|UL| gNB1[gNB]
        gNB1 -->|N3| UPF[UPF]
        UPF -->|N3| gNB2[gNB]
        gNB2 -->|DL| UE2[UE₂]
    end

    subgraph Sidelink直通通信
        UE3[UE₁] <-->|PC5 直通| UE4[UE₂]
        UE3 -.->|Uu 控制面<br>可选| gNB3[gNB]
        UE4 -.->|Uu 控制面<br>可选| gNB3
    end

    style UE3 fill:#e1f5fe
    style UE4 fill:#e1f5fe
    style gNB3 fill:#fff9c4
```

> **为什么叫PC5？** 这里的"PC"代表"Proximity Communication"（近距通信），"5"是接口编号。它和Uu接口最大的区别是：Uu是终端到网络的接口，而PC5是终端到终端的接口。

## 四大物理信道：Sidelink的"嘴、耳朵、回执和公告栏"

NR Sidelink定义了四个专用物理信道，每个都对应一个明确的功能：

```mermaid
graph LR
    subgraph Sidelink物理信道
        PSCCH[PSCCH<br>控制信道<br>━━━━━━<br>'说话的内容提纲']
        PSSCH[PSSCH<br>数据信道<br>━━━━━━<br>'说话的正文']
        PSFCH[PSFCH<br>反馈信道<br>━━━━━━<br>'听懂了的回执']
        PSBCH[PSBCH<br>广播信道<br>━━━━━━<br>'公告栏']
    end

    PSCCH -->|调度信息SCI| PSSCH
    PSSCH -->|数据| PSFCH
    PSBCH -->|同步信息| PSCCH

    style PSCCH fill:#bbdefb
    style PSSCH fill:#c8e6c9
    style PSFCH fill:#ffe0b2
    style PSBCH fill:#f8bbd0
```

### 信道详解

| 物理信道 | 全称 | 功能类比 | 承载内容 |
|---------|------|---------|---------|
| **PSCCH** | Physical Sidelink Control Channel | 信封——告诉收件人包裹怎么拆 | SCI（Sidelink Control Information）：资源位置、MCS、优先级等 |
| **PSSCH** | Physical Sidelink Shared Channel | 包裹里的信——真正要说的话 | 用户数据（V2X消息、应用数据）+ 第二阶段SCI |
| **PSFCH** | Physical Sidelink Feedback Channel | 回执单——确认收到 | HARQ-ACK/NACK反馈 |
| **PSBCH** | Physical Sidelink Broadcast Channel | 公告栏——让所有人知道基本规则 | SL-SSB同步信号 + Sidelink系统信息 |

> **为什么PSCCH和PSSCH要分开？** 这和Uu接口PDCCH/PDSCH分开的设计哲学一致——控制信息和数据信息解耦，让接收端先读控制信息，决定要不要继续接收数据。如果某个UE不是目标接收者，读完PSCCH就可以"关耳朵"省电。

### 子信道：Sidelink调度的最小砖块

Sidelink不以单个RB（Resource Block）为调度单位，而是以**子信道（Sub-channel）**为最小单位。一个子信道 = 若干个连续RB × 1个时隙。PSCCH总是占据子信道的开头部分，PSSCH紧随其后——两者在同一个时隙内**频分复用**。

```
$$
\text{Sub-channel} = N_{\text{RB}}^{\text{subCH}} \times 1 \text{ slot}
$$
```

其中 $N_{\text{RB}}^{\text{subCH}}$ 由RRC配置，典型值为10~50个RB，取决于频带宽度和业务需求。

## 两种资源分配模式：有管理员 vs 自助服务

Sidelink最核心的设计选择是：**谁来决定在哪个时频资源上发送？** 答案是两种截然不同的模式。

```mermaid
flowchart TB
    Start[UE需要发送Sidelink数据] --> Check{是否在网络<br>覆盖范围内？}

    Check -->|是| Mode1[Mode 1：基站调度]
    Check -->|否或部分覆盖| Mode2[Mode 2：UE自主选择]

    Mode1 --> SubQ1{调度方式？}
    SubQ1 -->|动态调度| DCI["gNB发DCI 3_0<br>实时分配SL资源"]
    SubQ1 -->|配置授权| CG["RRC配置CG<br>周期性SL资源"]

    Mode2 --> SubQ2{资源选择策略？}
    SubQ2 -->|感知+排除| Sense["UE监听PSCCH/SCI<br>排除被占资源<br>从候选中随机选择"]

    DCI --> TX[在分配的资源上发送]
    CG --> TX
    Sense --> TX

    style Mode1 fill:#e8f5e9
    style Mode2 fill:#fff3e0
    style TX fill:#e3f2fd
```

### Mode 1：基站当调度员（有网场景）

在Mode 1下，gNB完全掌控Sidelink资源分配。UE必须处于**RRC_CONNECTED**状态，通过Uu接口向gNB请求Sidelink资源，gNB通过DCI（格式3_0）下发资源授权。

Mode 1又细分为：
- **动态授权（Dynamic Grant）**：gNB逐次下发DCI分配SL资源，适合突发性业务
- **配置授权类型1（CG Type 1）**：RRC信令预配置周期性SL资源，UE到达周期自动发送
- **配置授权类型2（CG Type 2）**：RRC配置参数 + DCI激活/去激活，灵活控制开关

> **为什么需要配置授权？** V2X安全消息（如BSM基本安全消息）是周期性的（典型100ms一次），如果每次都请求调度，信令开销和延迟都不可接受。配置授权就像给UE办了张"月票"，在固定时间段有专用车道。

### Mode 2：UE自己选路（无网/弱网场景）

Mode 2是NR Sidelink最重要的创新之一——UE不依赖gNB，**自主感知并选择资源**。其核心算法是**基于感知的半持续资源选择**（Sensing-based Semi-Persistent Scheduling）：

1. **感知窗口**（过去1秒内）：UE持续监听其他UE发出的PSCCH/SCI，记录哪些时频资源被占用
2. **排除步骤**：根据感知结果，排除已被占用或RSSI过高的资源
3. **候选资源集**：从剩余资源中，按RSRP阈值筛选出可用资源（保留20%以上）
4. **随机选择**：从候选集中随机选择一个资源发送
5. **重选触发**：如果连续使用同一资源的次数达到上限，或检测到冲突，重新执行感知选择

```
$$
P_{\text{collision}} \approx 1 - \left(1 - \frac{1}{N_{\text{candidate}}}\right)^{M-1}
$$
```

其中 $N_{\text{candidate}}$ 是候选资源数，$M$ 是竞争同一资源的UE数。候选资源越多，碰撞概率越低——这也是为什么感知窗口要足够长。

| 对比维度 | Mode 1 | Mode 2 |
|---------|--------|--------|
| 调度者 | gNB | UE自身 |
| 覆盖要求 | 必须在网 | 可脱离网络 |
| 碰撞风险 | 极低（集中调度） | 较高（分布式竞争） |
| 信令开销 | 高（需Uu交互） | 低（无Uu交互） |
| 适用场景 | 城市道路（有网覆盖） | 高速公路/偏远地区/灾害 |
| 资源效率 | 高 | 中等 |

## 同步问题：没有基站，谁给大家"对表"？

传统蜂窝通信里，所有UE都以基站为时间基准同步。但在Sidelink场景中——尤其Mode 2——可能根本没有基站。那么设备之间如何对齐时钟？

NR Sidelink定义了一个**同步源优先级体系**：

```
$$
\text{优先级：gNB > GNSS > UE_{\text{sync-source}} > UE_{\text{relay}}}
$$
```

| 优先级 | 同步源 | 说明 |
|--------|-------|------|
| 最高 | **gNB** | 直接从基站获取同步，最精确 |
| 次高 | **GNSS**（GPS/北斗） | 从卫星导航获取时间基准，室外精度高 |
| 第三级 | **已同步的UE** | 从更高优先级源获取同步后，自己充当同步源广播SL-SSB |
| 最低级 | **自由运行** | 无法获取任何同步源时的降级模式 |

Sidelink同步信号块（**SL-SSB**）类似于Uu接口的SSB，但专门为Sidelink设计。SL-SSB包含：
- **S-PSS**（Sidelink Primary Sync Signal）
- **S-SSS**（Sidelink Secondary Sync Signal）
- **PSBCH**（承载Sidelink主信息块SL-MIB）

> **为什么要把GNSS作为同步源？** 车辆通常都有GPS/北斗接收模块，在高速公路等开阔场景下，GNSS信号的覆盖远优于基站信号。让车辆直接用卫星导航系统对表，既省电又可靠。

## HARQ反馈：从"喊完就走"到"确认收到"

LTE Sidelink的一个重大缺陷是**没有HARQ反馈**——发送方把消息广播出去，不知道对方收到没有，就像往河里扔漂流瓶。这对于V2X安全消息（丢了可能出人命）是致命的。

NR Sidelink引入了**PSFCH**（Physical Sidelink Feedback Channel），支持HARQ-ACK/NACK反馈，但反馈策略因通信模式不同而异：

| 通信模式 | HARQ反馈 | 机制说明 |
|---------|---------|---------|
| **单播（Unicast）** | ACK/NACK | 1对1通信，目标明确，直接回复 |
| **组播-选项A（Groupcast-A）** | 仅NACK | 只有没收到才回复，减少反馈开销 |
| **组播-选项B（Groupcast-B）** | ACK/NACK | 每个组员都回复，用不同循环移位的序列区分 |
| **广播（Broadcast）** | 无反馈 | 回退到LTE模式，靠重复发送保证可靠性 |

> **为什么组播有两种反馈选项？** 考虑一个车队场景：5辆车组成一个组。选项A（仅NACK）适合组较小、信道较好的情况——大家都收到了就不说话，只有没收到的人才回复NACK，节省空口资源。选项B适合组较大或信道较差的情况——每个人都回复，发送方可以精确知道谁没收到。但选项B的开销也更大，需要为每个组员分配不同的PSFCH循环移位。

## 两阶段SCI：先发"名片"再传"包裹"

NR Sidelink采用**两阶段SCI（Sidelink Control Information）**设计，这是一个精妙的工程权衡：

**第一阶段SCI（SCI Format 1-A）**——在PSCCH上发送：
- 包含：资源预留信息、频率位置、时隙偏移、MCS、优先级
- 作用：告诉**所有UE**"这个资源被我占了"——用于Mode 2感知
- 类比：门上的"会议室已被预约"标识

**第二阶段SCI（SCI Format 2-A/B）**——在PSSCH的payload中发送：
- 包含：源/目标Layer-2 ID、HARQ进程号、新数据指示、冗余版本、CSI请求
- 作用：告诉**目标UE**"这是给你的包裹，怎么拆"
- 类比：包裹里的收件人地址和拆包说明

> **为什么要分两阶段？** 如果把所有控制信息都放在PSCCH，PSCCH的开销会很大，影响整个资源池的效率。分两阶段的好处是：第一阶段短小精悍，只需要告诉别人"资源被占了"，所有UE都能快速解析；第二阶段放在PSSCH里，只有目标UE才需要解码，其他UE不用浪费算力。

## Sidelink协议栈：和Uu有什么不同？

Sidelink的协议栈在Uu基础上做了裁剪和适配，核心区别在物理层和MAC层：

```
$$
\begin{array}{c|c}
\text{Uu接口} & \text{PC5接口（Sidelink）} \\
\hline
\text{SDAP} & \text{SDAP（仅单播）} \\
\text{PDCP} & \text{PDCP（仅单播和组播）} \\
\text{RLC} & \text{RLC（TM/UM/AM均可）} \\
\text{MAC} & \text{MAC（含SL-SCH、SL-BCH逻辑信道）} \\
\text{PHY} & \text{PHY（PSSCH/PSCCH/PSFCH/PSBCH）} \\
\end{array}
$$
```

关键差异：
- **PDCP层**：只在单播和组播中存在，用于加密和头压缩。广播模式下数据直接从RLC到MAC再到PHY——越简单越可靠
- **RLC层**：三种模式（TM/UM/AM）都支持。V2X安全消息通常用TM（最快最简），而可靠的文件传输用AM
- **没有RRC层**：Sidelink没有自己的RRC——控制信令通过Uu接口的RRC来配置Sidelink参数（如资源池配置），或者使用预配置

## 实战连接：工程师在哪里会遇到Sidelink？

### 场景1：C-V2X路侧部署调试

在智能网联汽车的测试道路或智慧高速上，路侧单元（RSU）和车载单元（OBU）通过Sidelink交换BSM/CSM/V2I消息。工程师调试时需要关注：
- **Mode 1/2选择**：如果RSU在基站覆盖范围内，用Mode 1资源效率更高；偏远路段用Mode 2
- **资源池配置**：子信道大小、资源池周期、PSFCH配置——参数配错会导致消息丢失
- **同步源选择**：隧道场景下GNSS不可用，需要部署同步UE或延伸基站覆盖

### 场景2：公共安全通信

消防、警察在灾害现场使用Sidelink进行组通信——即使基站全部瘫痪。关键调试点：
- **UE-to-Network Relay**：一部手机有卫星信号，充当中继，让其他手机通过Sidelink连接到网络
- **组播NACK-only模式**：减少反馈信道拥塞
- **预配置参数**：离网场景无法从网络获取配置，必须提前烧录

### 场景3：Sidelink定位（Rel-18+）

5G-Advanced引入了**Sidelink定位**功能——两个UE之间通过Sidelink测量到达角、出发角、RTT（往返时间），实现厘米级相对定位。这对自动驾驶编队、无人机集群等场景至关重要。

### 常见调试陷阱

1. **混淆Mode 1和Mode 2的参数**：两个模式的资源池配置参数不同，用错会导致资源冲突
2. **忽略PSFCH时序约束**：PSFCH必须在PSSCH之后的特定时隙内发送（通常间隔2-3个时隙），资源池设计不当会导致反馈来不及
3. **同步源切换不稳**：车辆从城市（gNB同步）驶入隧道（无同步源），同步源切换过程中可能丢帧
4. **SCI解码失败误判为干扰**：如果第一阶段SCI解码失败，UE无法感知该资源被占用，可能误选同一资源造成碰撞——这不是干扰，而是感知失败

## LTE vs NR Sidelink：三代演进

| 特性 | LTE D2D (Rel-12) | LTE V2X (Rel-14) | NR V2X (Rel-16+) |
|------|-------------------|-------------------|-------------------|
| 通信模式 | 仅广播 | 仅广播 | 单播 + 组播 + 广播 |
| HARQ反馈 | 无 | 无（仅盲重传） | 有（PSFCH） |
| 调度模式 | Mode 3/4 | Mode 3/4 | Mode 1/2（含子模式） |
| 波束赋形 | 不支持 | 不支持 | 支持（CSI反馈） |
| 信道编码 | Turbo码 | Turbo码 | LDPC码（数据）+ Polar码（控制） |
| MCS最高阶 | 16QAM | 64QAM | 256QAM |
| 载波聚合 | 不支持 | 不支持 | 支持 |
| CSI反馈 | 无 | 无 | 有 |
| 典型延迟 | ~100ms | ~50ms | ~1-3ms目标 |

> **为什么NR Sidelink能做到1-3ms延迟？** 关键技术组合拳：灵活numerology（子载波间距可配，高SCS缩短符号时间）、mini-slot调度（不需要等整个时隙）、配置授权（省去调度请求延迟）、HARQ反馈（快速重传而不是盲目重复）。

## 常见问题

**Q: Sidelink和WiFi Direct有什么区别？**

A: 两者都是设备直接通信，但有本质区别。WiFi Direct工作在非授权频段（2.4/5GHz），没有QoS保障，延迟波动大（10-100ms级别），且需要WiFi联盟的连接建立流程。Sidelink工作在授权频段（由运营商分配的V2X专用频段如5.9GHz ITS），有严格的QoS保障、毫秒级延迟、以及3GPP标准化的资源管理和安全机制。简单说，WiFi Direct像民用对讲机，Sidelink像军用加密电台。

**Q: Sidelink必须在5G频段上工作吗？**

A: 不一定。Sidelink可以工作在**专用频段**（如5.9GHz ITS频段用于V2X）、**运营商授权频段**（共享蜂窝频谱）、或**非授权频段**（Rel-16未定义，Rel-18开始研究）。最常见的是ITS频段——全球主要经济体都在这个频段上部署C-V2X。

**Q: Mode 2的感知算法会不会导致"饿死"？**

A: 不会完全饿死，但可能出现**资源饥饿**。当UE密度极高（如拥堵的高速公路），所有候选资源都被占用或干扰过强，UE只能降低RSRP排除阈值或扩大资源选择窗口。标准要求候选资源集不少于总资源的20%，如果低于这个比例就要放松筛选条件——这可能导致碰撞率上升，但不会完全无法发送。实际工程中，运营商可以通过配置更多的Sidelink资源池、增大子信道数量来缓解。

**Q: Sidelink能传多大的数据？速率能到多少？**

A: Sidelink的峰值速率取决于带宽和MCS。在20MHz带宽、256QAM配置下，理论峰值可达几十Mbps。但V2X安全消息（BSM）通常只有几百字节，每秒发送10次，数据量极小。Sidelink的设计初衷不是高速率，而是**低延迟、高可靠**。大文件传输（如地图更新）通常还是走Uu接口更合适。

**Q: Sidelink的安全性如何保障？**

A: Sidelink的安全机制与Uu接口不同。单播通信使用PDCP层加密（密钥由PC5接口的安全流程协商）；广播通信通常使用应用层安全（如IEEE 1609.2证书体系）。5G Sidelink还引入了**层2标识（Layer-2 ID）**机制——源和目标ID在第二阶段SCI中标识，接收方可以过滤不相关的消息。V2X场景下，每条消息都带有数字签名，防止伪造。

## 参考来源

1. [NR V2X Sidelink PSCCH and PSSCH Throughput - MathWorks](https://www.mathworks.com/help/5g/ug/nr-v2x-sidelink-pscch-and-pssch-throughput.html) — NR Sidelink物理层仿真与吞吐量分析
2. [Towards 5G New Radio Sidelink Communications - ScienceDirect](https://www.sciencedirect.com/science/article/pii/S0140366423002001) — 5G NR Sidelink通信综述论文
3. [C-V2X Physical Layer, Resource Allocation, Synchronization - Rimedo Labs](https://rimedolabs.com/blog/v2x-phy-layer-resource-allocation-sync-qos-management/) — C-V2X物理层与资源分配教程
4. [从LTE到NR：Sidelink技术演进全解析 - CSDN](https://blog.csdn.net/weixin_42565652/article/details/160676669) — LTE与NR Sidelink对比分析
5. [5G NR Sidelink, ProSe, and Public Safety Communications - ns-3 Tutorial](https://www.nsnam.org/tutorials/consortium24/wns3-2024-NR-Sidelink-update-final.pdf) — 开源仿真器中的NR Sidelink实现

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