Wi-Fi P2P(Wi-Fi Direct)不用现成路由器也能让设备组网,但它并不是“跳过所有 Wi-Fi 流程直接连上”。发现、协商、组建立和安全配置一项都不少,系统适配时还会碰到并发角色限制。
它的价值通常在这几件事上:
- 不依赖现成 AP
- 建链速度较快
- 带宽通常高于蓝牙
- 适合近距离设备间通信
1. 它和传统 Wi-Fi 有什么区别
传统 Wi-Fi 更常见的是基础设施模式:
- 终端接入 AP
- AP 负责中转通信
Wi-Fi P2P 则更强调设备之间直接组网:
- 设备可直接发现彼此
- 协商谁来承担“类似 AP”的角色
- 建立临时组网关系后再进行数据通信
2. 典型角色
Wi-Fi P2P 里通常有几个核心角色:
P2P Device
支持 P2P 功能、可参与发现和协商的设备。
Group Owner(GO)
在一个 P2P Group 中承担类似 AP 的职责,负责组管理。
P2P Client
加入某个 P2P Group 的普通成员设备。
P2P 这个名字容易让人误会成完全对等,但真正组起来以后,总要有一方承担更多组管理职责。
3. 基本流程
一个典型的 Wi-Fi P2P 连接过程大致包括:
- 设备发现
- 服务发现
- 角色协商
- 建立连接
- 数据传输
设备发现
设备发现阶段的目标是让支持 P2P 的终端彼此可见。
常见方式包括:
- 主动扫描
- 被动扫描
这一阶段解决的是“附近有哪些可连接设备”。
服务发现
设备发现之后,还可能继续判断:
- 对方支持哪些服务
- 是否具备目标功能
- 是否值得进一步建立连接
这一阶段更偏向“连谁”和“为什么连”。
角色协商
P2P 建链时,双方需要协商谁来担任 Group Owner。
可以把它理解为:
- 连接两端不完全对等
- 总要有一方承担更多的组管理职责
建立连接
建立成功后,就形成一个 P2P Group,后续设备可以以组的形式继续维护和通信。
4. 安全性为什么总是重点
P2P 不是“裸连”,它也需要安全机制保障。
常见关注点包括:
- 配对认证
- WPA2 / WPA3 加密
- WPS 相关流程
排查 P2P 连接失败时,安全协商往往是重点路径之一。
5. 常见应用场景
Wi-Fi P2P 常见于以下场景:
- 文件传输
- 屏幕投屏
- 无线打印
- 设备间近距离互联
- 某些 IoT / 智能终端之间的直连
它的优势通常在于无需额外网络基础设施,也能建立较高带宽连接。
6. 常见问题与限制
兼容性
不同芯片、驱动、系统版本之间,P2P 兼容性可能并不一致。
功耗
设备发现、建链和持续维持连接都会带来额外功耗。
角色冲突
某些场景下,设备同时承担 STA / AP / P2P 角色,会涉及并发能力限制。
稳定性
P2P 在不同平台上的状态机实现差异较大,容易出现:
- 发现阶段能否正常互相看到
- 协商失败
- 连接建立后掉线
- 重连不稳定
7. Linux / Android 视角
在实际开发中,P2P 常见落点包括:
- Android 上层 P2P API
wpa_supplicant的 P2P 能力- 驱动对并发角色、扫描、建链、功耗的支持
如果你做的是系统适配或驱动联调,真正的难点通常不在概念,而在:
- 状态机是否完整
- 扫描与并发角色是否冲突
- 安全协商是否兼容
- 上下层接口是否对齐
8. 联调时我会画出的状态线
先把流程按日志标出来:
- 设备发现彼此
- 协商临时组网关系
- 在不依赖传统路由器的前提下直接通信
然后对齐两端时间线。只看一侧经常会把“对端没响应”和“本端没发出去”混在一起。涉及 STA + P2P 并发时,还要把扫描、信道切换和固件能力一起查。