IEEE802.11k协议简介
- 协议全称:无线局域网的无线电资源测量(Radio Resource Measurement of Wireless LANs)
- 批准日期:2008年5月
- 协议状态:并入802.11-2012
- 协议别名:辅助漫游
- 协议说明:
- 定义了接入点(AP)和终端(STA)如何协同工作,以确定STA在移动时漫游到最佳接入点(AP);
- 在802.11k之前,STA通常只会连接到发射最强信号的AP;
- 启用802.11k的STA设备将在寻找满有点时从其当前AP请求Neighbour Report; Neighbour Report为STA提供了大量额外的RF信息,STA将使用这些信息作出更好的漫游选择。
协议共定义了11种测量方法,在此仅介绍经常使用到的三种测量方法。
Beacon Request/Report
允许一个STA从另一个STA请求一个指定通道或频道上可以接收的AP列表。
此测量包括三种模式:主动模式(如主动扫描),被动模式(如被动扫描)或Beacon表模式。
- 被动模式
- 执行测量的STA设置一个持续计时器,并开始监测 Beacon Request所要求的信道列表;
- 持续记录监测到的Beacon、Probe Response、RCPI等信息,直到计时器结束;
- 主动模式
- 执行测量的STA设置一个持续计时器,并开启在 Beacon Request所要求的的信道列表上主动发送Probe Request;
- 随后,监测信道列表,持续记录监测到的Beacon、Probe Response、RCPI等信息,直到计时器结束;
- Beacon表模式
- 执行测量的STA,不需要新开启任何测量动作,只需要返回满足条件的缓存信息;
- 对于执行测量的STA来说,这是最省电的一种方式;当然,其不足也是很明显的:信息可能不全以及不够实时;
主动模式和被动模式的差异在于:执行测量的STA是否会主动发送Probe Request,此操作会耗费STA的电量,STA可能会拒绝执行。
Beacon Request
Beacon Request/Report报文是STA之间的交互,和
The Beacon request/report pair enables a STA to request from another STA a list of APs whose beacons it can receive on a specified channel or channels.
Beacon request/report 允许STA从另一个STA请求一个ap列表,ap列表是根据他在某个或某些信道上所接收到的beacon帧中提取出来的。这种测量可以在active mode/passive mode/beacon table mode下完成。
- 当运行在passive mode的STA接收到一个测量请求时,它会启动一个定时器作为测量周期,然后监听被请求的信道,分析beacon帧、probe reponse和measurement pilot power levels(received channel power indicator (RCPI)),然后记录测量周期内的数据。
- 当运行在active mode时,在测量周期开始时,STA在某个或某些信道上发送probe request,然后监控指定信道上的beacon,probe response和RCPI,然后记录测量周期中得到的数据。
- 当运行在beacon table mode时,测量STA根据接收或存储的beacon帧,生成一份指定SSID的报告,包含信号好和BSSID。其他类型报文不监控。
指定扫描信号和测量模式。
我们以实际的需求为背景,来说明Beacon Request的关键字段及其工作原理:以被动模式,在特定信道列表 上,扫描SSID名称为[T-Boy-WiFi]的AP节点。
如何指定模式?
Measurement Mode:0 PASSIVE(被动模式)、1 ACTIVE(主动模式) 、2 Becaon Table(Beacon表模式);
如何指定要扫描的信道?
Regulatory Class 和 ChannelNumber组合使用可达到此目标;
- Regulatory Class[5]:代表信道列表149、153、157、161、165;其他5G信道可查表,找到对应的ClassID;
- Requlatory Class[12]:代表信道列表1-11;
- ChannelNumber:
- 魔数0 表示使用Regulatory Class所对应的所有信道;