我正在为 google android 编程,我想知道无线 802.11 网络的扫描是被动还是主动完成的?我是说:该设备是否 实际上发射 信标请求信号开启 WifiManager.startScan() 或者它只是监听接入点定期发送的信标?

有帮助吗?

解决方案

Android为被动扫描,它侦听信标。做主动扫描可以通过发送探测请求,并等待探测响应创建大量的网络上的拥塞的

其他提示

答案是 是的

实际上,使用omnipeek从Android/iOS设备上抓包,我们可以得到如下结果:
  • 大多数 Android 设备 总是 尝试每隔几分钟发送一次探测请求帧。他们保留您用于连接的 SSID 列表,并始终尝试发送 带有 SSID 的探测请求帧 看看它们现在是否可用。我想原因之一是 802.11预认证 ,其他一些原因可能是:提高wifi列表显示速度。
  • 他们正在积极地工作。
  • iOS 设备很少进行主动扫描

如果您想了解更多规则,最好阅读《802.11无线网络指南》

您可以参考图片:omn​​ipeek 捕获的包

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top