专栏首页iOSDevLogWi-Fi p2p & ap 共存

Wi-Fi p2p & ap 共存

nl80211接口

编辑

删除

image

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

image

P2P module

image

1)通过adb命令行,可以直接打开supplicant,从而运行wpa_cli,可以解决客户没有显示屏而无法操作WIFI的问题,还可以避免UI的问题带到driver。进一步来说,可以用在很多没有键盘输入和LCD输出的安卓终端产品的操作上。

wpa_supplicant包含两个主要的可执行工具:wpa_supplicantwpa_cli。wpa_supplicant 是核心程序,它和 wpa_cli 的关系就是服务和客户端的关系:后台运行 wpa_supplicant,使用 wpa_cli 来搜索、设置、和连接网络。

参考:

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Wi-Fi 总结

    Wired Equivalency Protection,一种Wi-Fi连接的安全标准,类似的安全标准还包括下面的WPA,WPA2。它可以使用64/128bit...

    iOSDevLog
  • 更多关于CocoaScript目录

    iOSDevLog
  • Android移动开发案例教程-第六章 图像处理与动画应用_V0.2

    iOSDevLog
  • 集成云架构是什么以及为何重要

    随着对云计算优势的了解,并适应新的安全性、性能和规模范例,各种规模的组织将业务快速迁移到云平台。

    静一
  • 利用Outlook Forms绕过VB宏,获取目标Shell

    利用宏规则散布恶意程序已成为众所周知的途径,因此许多人都通过禁用宏规来保护信息安全。但如今,“宏”似乎变成了一个可以绕过的障碍。此前的Word 0-day漏洞就...

    FB客服
  • ASP.NET Core 发布到Linux需要注意的路径分隔符问题

    读取本地目录的问题, 在windows下,一般会用“\”,但在Linux中用的是“/”

    跟着阿笨一起玩NET
  • WordPress简约清新文艺主题——Variant

    神无月
  • 基于屏幕像素抖动的PCF

    PCF无非就是把周围的像素加吧加吧, 然后取个平均值. 结果的平滑程度, 跟Kernel的大小有直接关系.

    逍遥剑客
  • 干货 | TensorFlow 技术与应用(内附31页PDF下载)

    各位亲们:PPV课给大家准备了一场“TensorFlow 技术与应用”干货盛宴,全文下载(PDF 31页)请在微信对话框回复“508”,获取下载链接。 ? ? ...

    小莹莹
  • 来吧,一文彻底搞懂Java中最特殊的存在——null

    没事的时候,我并不喜欢逛 P 站,而喜欢逛 programcreek 这些技术型网站,于是那天晚上,在夜深人静的时候,我就发现了一个专注基础但不容忽视的主题。比...

    沉默王二

扫码关注云+社区

领取腾讯云代金券