Wi-Fi P2P 基础

理解发现、协商、组建立和并发角色限制

Posted by Yvain Zhang on November 3, 2023 主题:技术

Wi-Fi P2P,也常被称为 Wi-Fi Direct,是一种在没有传统路由器参与的情况下,让设备直接建立点对点连接的技术。

它的价值通常在这几件事上:

  • 不依赖现成 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 连接过程大致包括:

  1. 设备发现
  2. 服务发现
  3. 角色协商
  4. 建立连接
  5. 数据传输

设备发现

设备发现阶段的目标是让支持 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. 总结

Wi-Fi P2P 的本质可以概括为:

  • 设备发现彼此
  • 协商临时组网关系
  • 在不依赖传统路由器的前提下直接通信

它适合需要中短距离、高带宽、快速建链的设备互联场景。理解它时,最好把注意力放在角色、建链流程、安全协商和多角色并发限制这四件事上。