wifi - 如何在PS模式下通过站内AP重新启动来检测解除关联

标签 wifi low-level power-saving

我正在为无线网卡编写一个相当底层的驱动程序,尽管大多数规范都相当简单,但是我还没有将我的脑袋绕在一个问题上:

如果我的电台处于省电模式,并且其接收器在DTIM帧之间延长了一段时间(例如10秒)关闭,并且同时接入点重新启动,因此我的关联丢失了,我怎么能检测到这一点?

我知道最常见的情况是同步丢失得非常彻底,以至于我会错过许多信标,之后再回到AP搜索,但是如果有幸我能看到信标,是否还有一些找出这是同一AP的新“实例”的方法?

我能想到的

  • 一个较短的TIM字段-但是我相信如果没有流量在等待,AP可以缩短TIM信息
  • AP时间戳意外更改。
  • “到下一个DTIM的信标数”字段意外更改。

  • 作为一名完美主义者,我想知道是否存在一种完全可靠的方法来检测AP是否已重启,而不仅仅是收集线索。

    最佳答案

    我建议您在接收到的信标帧中查看TSF,
    如果它与TSF的差异太大,则您希望发送NULL数据
    帧到AP。如果AP重新启动,它应该以一个响应来响应。
    取消对帧的身份验证,原因为“从
    未经身份验证的STA”。

    关于wifi - 如何在PS模式下通过站内AP重新启动来检测解除关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5950375/

    相关文章:

    linux - 运行基于 Gentoo 操作系统的 NAO 机器人无法自动连接到 Wi-Fi

    Android:在模拟器中模拟 WiFi?

    optimization - gcc 生成的虚拟 movups

    java - Android 中的省电模式以编程方式控制?

    android - 如何定期在后台跟踪(如果可能)Android 设备(最新版本)?

    安卓Wifi流量

    android - 如何判断流量是GPRS 3G还是Wifi产生的?

    c# - C# 中真正的低级声音生成?

    C 代码 - 一种在没有 "if"的情况下将 5 转换为 7 以及将 7 转换为 5 的方法

    c# - 如何在 C# 中立即强制显示器进入省电模式?