主动扫描与被动扫描
来源:互联网 发布:五代十国 知乎 编辑:程序博客网 时间:2024/06/05 13:28
之前要实现wifi上的探针模块,简单了了解了802.11中的各种帧,对一些帧的发送频率和方式也有简单了解。不过了解的都不够细致。只是简单知道手机打开wifi后回不停的向外发送probe request这个帧,然后也在不停的监听当前信道上AP广播过来的beacon帧。这里详细介绍一下802.11中的主动扫描和被动扫描。
主动扫描和被动扫描是在手机的角度来说,手机为了发现AP,必须进行扫描,通过扫描得到AP的信息,然后才能去连接。
主动扫描
主动扫描是指手机(这里的sta就用手机代替啦,其实可以是很多种形式)每隔一段时间发送probe request帧,用来询问AP的信息。probe request可以单独发给某个AP,也可以在一个信道上进行广播,当然多数时候是在一个信道上进行广播,广播完成后,会在当前信道等待一段时间,如果收到帧反馈,则做记录,如果超时,就会切换到下个信道进行广播,这里有个细节,切换到新的信道后,在广播之前,会等待一小段时间,如果这小段时间内没有收到任何信息,则说明当前信道没有AP活动,那么直接切换到下个信道。
被动扫描
被动扫描是指手机被动的接收AP发出的beacon帧,通过解析beacon帧中的信息来获取当前AP列表。手机在监听beacon帧的时候也是会不停的切换信道,保证每个信道都能监听到。这种模式下,只监听beacon帧,不发送探测帧,比较节省资源,不过获取AP列表时间相对长一些,不如主动扫描获得信息更及时,但感觉也足够用了,慢也慢不了几秒,其实是可以被用户容忍的。
手机端被动扫描和主动扫描都会实现,这样能保证更快速的发现AP,实现连接。
在手机连接AP后,协议中主动扫描和被动扫描都是被允许的,但是有些厂商可能并没有实现,因为这个并不是一个强制要求。
beacon帧的间隔是可以动态调整的,对AP来说间隔越短,就会越早被发现。probe request帧的间隔也可以调整,一般厂商都往高了调,并且连接AP以后都倾向于不发了,这样会比较省电,毕竟对于智能手机来说电池真是有点不够用。
如果一个AP想协议隐形,可以不发beacon帧,不回探测帧。
- 主动扫描与被动扫描
- 51822 --- 主机主动扫描和被动扫描
- BLE主机主动扫描和被动扫描
- ftp主动与被动
- GourdScan被动扫描环境搭建
- 被动扫描注入的实践
- “主动程序员”与“被动程序员”
- “主动程序员”与“被动程序员”
- “主动程序员”与“被动程序员”
- “主动程序员”与“被动程序员”
- 主动编程与被动编程
- 主动FTP与被动FTP
- 主动攻击与被动攻击
- 主动FTP与被动FTP...
- “主动程序员”与“被动程序员”
- 主动编程与被动编程!
- “主动程序员”与“被动程序员”
- 主动与被动、绽放与掩饰
- github checkout常见用法
- JDBC的典型用法
- lintcode合并两个排序链表
- CentOS 7.3离线安装Clickhouse
- bash/csh设置环境变量和rpm包管理器
- 主动扫描与被动扫描
- c3p0配置详解
- React踩坑指南——setState不生效的解决方法
- 盛大游戏面试题----如何修改int类型的第二个字节
- git
- ACM算法-时间复杂度分析(6.相关练习exercise)
- 信息系统运维资质与ITSS运维标准浅析
- 解决Maven依赖冲突
- JS判断字符串变量是否含有某个字串的方法