wpa_supplicant support multiple WiFi Direct Groups [GO (2.4 GHz) + GO (5 GHz)]

Jouni Malinen j at w1.fi
Tue Sep 22 12:04:59 EDT 2015

On Tue, Sep 22, 2015 at 03:12:59PM +0000, Shanbhag, Sandeep wrote:

> This was more from the perspective that if each GO is supposed to have an associated unique Device entity.

There is no such functionality. Each P2P GO instance on a device shares
a single P2P Device instance and with it a single P2P Device Address.

> IMHO, this behavior beats the whole purpose of somebody trying to create multiple groups using a single supplicant. The reason somebody wants to create more than one group is so that the remote device sees these multiple groups as different groups and should be able to connect to whichever it chooses to connect. But with this single device entity it does not become possible due to the reasons mentioned above.

If you want to find operating P2P groups, use normal scan results for

> For Ex: If there are 2 groups created using a single supplicant say: Group-A (on 2.4 GHz Channel) and Group-B (on 5 GHz Channel).
> Now a dual band mobile phone should be able to see both the groups in its WiFi Direct Discovery Screen and then should be able to make a choice of whether to connect to Group-A or Group-B.
> But due to the same P2P-Device Address used by both the groups the remote device can at a time either see Group-A or Group-B.

That's not accurate. When looking at the list of peer devices, sure,
you'll see a single entry as expected since there is a single P2P Device
Address. However, when looking at scan results, you'll see both of the
groups separately if that peer is indeed operating two groups
concurrently as the GO.

> Also consider a case when there are 2 WiFi chips and a single supplicant needs to create one group on each of the chip then at least 2 P2P Device Entities are required.

That's not true. A single P2P Device Address is used even when operating
two groups on different chips. This combination is not really supported
well today in wpa_supplicant, but in any case, the protocol requires
there to be a single P2P Device Address (and with it, a single P2P
Device instance within wpa_supplicant).

> So this problem can be solved by either bringing P2P structure out of global and making it part of wpa_s structure or by changing the logic of peer addition based not only on Device Address but some also may be the group's interface address.

I cannot really agree with either of those. The former is against the
specification and would not really help either unless you could force
every deployed devices to update to such design.. The latter is not
accurate description of how a peer should be identified. P2P Device
Address is the unique identifier of each P2P Device.

It sounds like you are searching for means to receive more information
on the groups in which a given peer is currently connected (either as a
GO or as a P2P Client). That's something that could be extended in the
P2P Peer information in wpa_supplicant.

Jouni Malinen                                            PGP id EFC895FA

More information about the HostAP mailing list