写点什么

Wi-Fi p2p & ap 共存

用户头像
贾献华
关注
发布于: 2020 年 05 月 28 日

nl80211 接口



WiFi 模式:


  • AP(Access Point): 无线接入点

  • STA(Station): 站点

  • P2P: wifi-direct


WiFi 的共存模式:


  • station mode + station mode

  • station mode + ap mode

  • station mode + p2p mode

  • p2p mode + ap mode


ap mode


ap mode 通用应用在无线局域网成员设备(即客户端)的加入,即网络下行。它提供以无线方式组建无线局域网 WLAN,相当际 WLAN 的中心设备。


station mode


station mode 即工作站模式,可以理解为某个网格中的一个工作站即客户端。那当一个 WIFI 芯片提供这个功能时,它就可以连到另外的一个网络当中,如家用路由器。通常用于提供网络的数据上行服务

p2p mode


p2p mode 也为 Wi-Fi Direct


Wi-Fi Direct 是一种点对点连接技术,它可以在两台 station 之间直接建立 tcp/ip 链接,并不需要 AP 的参与;其中一台 station 会起到传统意义上的 AP 的作用,称为 Group Owner(GO),另外一台 station 则称为 Group Client(GC),像连接 AP 一样连接到 GO。GO 和 GC 不仅可以是一对一,也可以是一对多;比如,一台 GO 可以同时连接着多台 GC

wpa_supplicant


wpa_supplicant 是一个连接、配置 WIFI 的工具,它主要包含 wpa_supplicant 与 wpa_cli 两个程序. 可以通过 wpa_cli 来进行 WIFI 的配置与连接,前提要保证 wpa_supplicant 正常启动。


什么是 wpa_spplicant


wpa_supplicant 本是开源项目源码,被谷歌修改后加入 Android 移动平台,它主要是用来支持 WEP,WPA/WPA2 和 WAPI 无线协议和加密认证的,而实际上的工作内容是通过 socket(不管是 wpa_supplicant 与上层还是 wpa_supplicant 与驱动都采用 socket 通讯)与驱动交互上报数据给用户,而用户可以通过 socket 发送命令给 wpa_supplicant 调动驱动来对 WiFi 芯片操作。 简单的说,wpa_supplicant 就是 WiFi 驱动和用户的中转站外加对协议和加密认证的支持。

wpa_supplicant 无线网络配置


目前可以使用 wireless-tools 或 wpa_supplicant 工具来配置无线网络。请记住重要的一点是,对无线网络的配置是全局性的,而非针对具体的接口。


wpa_supplicant 是一个较好的选择,但缺点是它不支持所有的驱动。请浏览 wpa_supplicant 网站获得它所支持的驱动列表。另外,wpa_supplicant 目前只能连接到那些你已经配置好 ESSID 的无线网络。wireless-tools 支持几乎所有的无线网卡和驱动,但它不能连接到那些只支持 WPA 的 AP。


经过编译后的 wpa_supplicant 源程序可以看到两个主要的可执行工具:wpa_supplicantwpa_cliwpa_supplicant 是核心程序,它和 `wpa_cli` 的关系就是服务和客户端的关系:后台运行 wpa_supplicant,使用 wpa_cli 来搜索、设置、和连接网络。


P2P architecture with Linux/mac80211/ath9k



P2P module



参考:


https://www.wi-fi.org/

https://blog.csdn.net/wirelessdisplay/article/details/53365377

https://w1.fi/wpa_supplicant/devel/p2p.html

https://blog.csdn.net/ltm157/article/details/24810685


用户头像

贾献华

关注

及时当勉励 岁月不待人 2018.06.04 加入

https://2020.iosdevlog.com

评论

发布
暂无评论
Wi-Fi p2p & ap 共存