Android 中的 Wi-Fi P2P
概述
Wi-Fi P2P 是Wi-Fi联盟推出的,用于多个Wi-Fi设备在没有AP的情况下直接连接的技术,主要用于无线投屏,将手机上的图片或视频传给电视去显示。通过认证的设备会标有Wi-Fi Direct商标。
架构
P2P 组件
- P2P Device GO和GC的统称
- P2P Group Owner
- P2P Client
拓扑结构
-
仅P2P模式
有且仅有一个扮演GO,其它设备扮演GC,周围不支持P2P的STA(Legacy Client)也可以发现并关联上GO。 -
P2P和STA并存模式
并发操作需要设备支持多MAC 实体。P2P Group和WLAN BSS可以处于相同的信道,也可以不同。
P2P 特殊的功能和服务
- P2P Discovery 让P2P设备相互发现并建立连接。
- P2P Group Operation GO如何管理一个 Group
- P2P Power Management 提供一系列的功能来减少设备电量消耗
- Managed P2P Device Operation (optional) 在企业环境里IT部门如何管理P2P设备
P2P Discovery
让P2P设备能够快速发现对方并建立连接。
包含以下4个主要部分:
- Device Discovery 帮助两个设备处于一个公用信道并交换设备信息
- Service Discovery (optional) 允许一个P2P设备在建立连接前发现可用的上层服务
- Group Formation 用于决定哪个设备成为GO 并建立新的P2P Group
- P2P Invitation 邀请P2P设备加入一个已经存在的 Group
Device Discovery 流程
P2P Device Discovery 分为两个状态和两个阶段。
两个状态:
- Search State
在2.4GHz的1,6,11(Social Channels)信道上发送Probe Request,该帧需要包含P2P IE,以区别普通的Probe Request。 - Listen State
随机选择在1,6,11信道中的一个监听Probe Request,并回复Probe Response(只处理包含P2P IE的)。该Listen Channel一旦选好,在整个Discovery阶段不变。
两个阶段:
- Scan Phase
在其支持的所有信道上发送Probe Request,不处理其它设备发送过来的Probe Request帧。 - Find Phase
在Search State和Listen State之前不停切换。
Discovery启动后,设备先进入Scan阶段,在支持的所有信道上发送Probe Request,完成后,进入Find阶段。