wifi direct - 2 - p2p protocol
前篇: wifi direct 概述
P2P Group Owner : 簡稱 GO, 角色類似 Infrastructure BSS 中的 AP
P2P Client : 角色類似 Infrastructure BSS 中的 STA
Android Group Owner IP : 192.168.49.1
其他 client : 192.168.49.x / 24
通常當 GO 的同時兼具 DHCP server 的角色.
--
HSC 有做一份關於 wifi direct 的 white paper
主要包含如下幾個主要部分:
大致可以分成以下三個階段
1. Device Discovery / Service Discovery
Search State :
在 2.4G 的 channel 1 / 6 / 11 分別發送 Probe Request , 內帶 P2P IE
Listen State :
隨機選擇 1 / 6 /11 當 listen channel, 監聽 probe request 並回覆 probe response
Find Phase :
在 Listen / Search 間切換, channel 停留時間 100TU 的整數倍,
倍數值是 minDiscoverableInterval ~ maxDiscoverableInterval 間的亂數
Group Owner negotiation
- GO request 後, 100ms 內 沒有 response 的話, 此 negotiation 失敗..
GO 決定方式, 看 intent 值大小, 數值大的當 GO.
如果一個 device 只能當 GO , 則 intent = 15
wpa_cli
3. P2P invitation/connection
先記錄到這, 後續..
P2P Group Owner : 簡稱 GO, 角色類似 Infrastructure BSS 中的 AP
P2P Client : 角色類似 Infrastructure BSS 中的 STA
Android Group Owner IP : 192.168.49.1
其他 client : 192.168.49.x / 24
通常當 GO 的同時兼具 DHCP server 的角色.
--
HSC 有做一份關於 wifi direct 的 white paper
主要包含如下幾個主要部分:
過程 | 描述 |
---|---|
Device Discovery | 两個P2P設備在同一個 channel 上交換信息 |
Service Discovery | (optional) 允許在建立P2P連線前,發現可用的服務 |
Group Formation | 確認 P2P 設備當作 GO 還是 GC |
P2P Invitation | 觸發一個 Persistent P2P Group,或者邀請一個P2P設備加入一個存在的P2P Group中。 |
- P2P discovery, which allows to search for P2P devices in the vicinity
- P2P group formation, a P2P group is formed with the identification of one of the devices as group owner. A device can either become group owner (GO) autonomously if configured to do so or it can be negotiated between devices with the exchange of GO intents.
- P2P provisioning, which authenticates the link by using either Push Button Configuration (PBC) or PIN authentication.
- P2P connection, when the connection between a Group Owner (GO) and a Group Client (GC) is actually established.
大致可以分成以下三個階段
1. Device Discovery / Service Discovery
Search State :
在 2.4G 的 channel 1 / 6 / 11 分別發送 Probe Request , 內帶 P2P IE
Listen State :
隨機選擇 1 / 6 /11 當 listen channel, 監聽 probe request 並回覆 probe response
Find Phase :
在 Listen / Search 間切換, channel 停留時間 100TU 的整數倍,
倍數值是 minDiscoverableInterval ~ maxDiscoverableInterval 間的亂數
2. P2P Group formation:
Group Owner negotiation
- GO request 後, 100ms 內 沒有 response 的話, 此 negotiation 失敗..
GO 決定方式, 看 intent 值大小, 數值大的當 GO.
如果一個 device 只能當 GO , 則 intent = 15
wpa_cli
> p2p_find
OK
會顯示相關 p2p
device, 譬如 Android 手機
<3>P2P-DEVICE-FOUND 9a:d6:f7:8c:62:d0
p2p_dev_addr=9a:d6:f7:8c:62:d0 pri_dev_type=10-0050F204-5 name=’Android_16f4’config_methods=0x188
dev_capab=0x21 group_capab=0x0 new=1
> p2p_connect
9a:d6:f7:8c:62:d0 pbc go_intent=0
( 手機當 GO, 自身 wifi 當 GC )
> p2p_connect
9a:d6:f7:8c:62:d0 pbc go_intent=15
( 手機當 GC, 自身 wifi 當 GO )
3. P2P invitation/connection
先記錄到這, 後續..
留言
張貼留言