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的关键字段及其工作原理:以被动模式,在特定信道列表 上,扫描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所对应的所有信道;
- 魔数255 表示取 最近一次【AP Channel Report】中出现的信道列表 和 Regulatory Class所对应的所有信道交集;
- 其他合法信道号 表示使用指定的信道号;
如何指定SSID?
Optional Subelements:SubelementID[0] + Length[0-32]+SSID;也即:[0]+[10]+[T-Boy-WiFi];
Beacon Request Format: Measurement Requet field format for Beacon Request
Measurement Mode definitions for Beacon Request element
Beacon Report
Beacon Report关键字段如下:BSSID/RCPI/RSNI;
BSSID/RCPI/RSNI: 相应AP的BSSID/功率/信噪比;
RCPI: indicates the received channel power indication【功率】;
RSNI: indicates the received signal to noise indication【信噪比】;
Beacon Report Format: Measurement Report field format for Beacon Report
Neighbor Report
STA向AP发起请求,由AP提供邻居列表,供STA作为候选漫游对象使用;虽然STA本身可以通过扫描获取邻居列表,但此举耗费电量;直接通过AP获取,可以满足低功耗/高效通信等目的;
我们依然以实际的需求为背景,来说明Neighbour Report的关键字段及其工作原理:扫描发现SSID名称为【T-Boy-WiFi】的邻居AP节点
Neighbor Report Request
- 指定Category:5 表示Radio measurement;
- 指定Action:4 表示Neighbour Report Request;
- 指定Dialog Token:由发起测量的STA指定一个非0值,用于标识此次测量;有点类似会话ID的意思;
- 指定Optional Subelements:此处指定SSID,格式:SubelementID[0] + Length[0-32]+SSID; 内容:[0]+[10]+[T-Boy-WiFi];
Neighbour Report Request frame body format
Optional Subelement IDs for Neighbor Report Request frame
Neighbor Report Response
- 指定Category:5 表示Radio measurement;
- 指定Action:5 表示Neighbour Report Response;
- 指定Dialog Token:由发起测量的STA指定一个非0值,用于标识此次测量;有点类似会话ID的意思;
- Neighbour Report Elements:此处可能返回多个Neighbour Report Element;
- BSSID及BSSID Information:邻居AP的BSSID及对应的;
Neighbour Report Response frame body format
Channel Load
STA监测到的信道利用率;各字段含义 在前面都有所涉及,在此不赘述了。
802.11k和邻居上报的重要性
无线局域网(WLAN)无线电测量可以使任何设备、AP或客户端,能够更好地了解其运行的环境。可以生成各种请求,其中接收请求的设备可以通过报告进行响应。
举个例子,AP可能会问station:“你听到我的声音怎么样?”使用链路测量请求。客户会回复一份链接测量报告(相反,客户可以问AP“你听到我的声音怎么样?”").
由于提供了测量和收集信息的能力,提交请求的设备可以就其适应/补偿WLAN环境动态的“下一步”做出更明智的决定。
从测量和/或报告中获得的信息可提供给测量和/或请求装置的上层,其中它可用于一系列应用。这类应用程序可能会试图为最终用户保存QoE(体验质量)。
例如,为了保存VoIP和视频流等应用的QoE,客户端设备可以使用WLAN无线电测量,在客户端设备从一个AP分离并与新AP重新关联之前从AP收集信息。这可以大大加快在同一WLAN中从一个AP到另一个AP的重新连接。
802.11k定义了以下测量值:
- Beacon
- Frame
- Channel Load
- Noise Histogram
- STA Statistics
- Location Configuration Information
- Neighbor Report
- Link Measurement
- Transmit Stream/Category Measurement
“邻居报告”请求从客户端发送到AP。AP返回一个“邻居报告”报告,其中包含关于已知的候选邻居AP的信息,供客户端重新关联(如果客户端选择这样做)。因此,邻居报告请求/报告对使客户端能够收集关于其当前关联的AP的邻近AP的信息,并且该信息可用作漫游时新附件点的潜在候选点的标识。
邻居/请求报告的好处如下:
- 加快扫描速度——客户端可以省去耗时的扫描活动(主动地探测信标,或者被动地监听信标的每个信道)。这在客户端可以听到多个wlan的高密度环境中尤其有用 ;
-
降低客户端功耗——扫描(特别是主动扫描)所花费的时间也会为客户端消耗电池电量。由于邻居报告在漫游前提供了信息,因此可能消耗的电量更少;
-
更有效地利用WLAN的“空中时间”——从客户端资源(cpu、内存、无线电等)的角度来看,主动扫描不仅很耗时,这也消耗了“广播时间”。例如,不知道邻居的客户端可能会参与所谓的通配符探测请求(一些客户端将把这些请求崩溃)。在这种情况下,通常每个听到探测请求的AP都将生成一个探测响应。换句话说,对于单个客户机,有N个ap将产生N个探针响应。如果多个客户端进行通配符探测,那么RF环境可能会很快被管理流量“污染”,仅仅因为客户端没有使用邻居请求。这对整个WLAN都产生了负面影响.
Cisco WLAN infrastructure has supported the 11k Neighbor Request/Report since release 7.4.
cisco对于802.11k的支持
Enable 802.11k for optimal roaming The 802.11k standard allows clients to request neighbor reports containing information about known neighbor APs that are candidates for roaming. The use of the 802.11k neighbor list can limit the need for active and passive scanning. A common problem that 802.11k helps solve is “sticky” clients, which usually associate with a specific AP and then hold on to that AP strongly, even when significantly better options are available from nearer APs. The 802.11k feature can be configured directly on the WLAN under the Advanced settings:
802.11k标准允许客户端请求包含关于作为漫游候选的已知邻居ap的信息的邻居报告。使用802.11k邻居列表可以限制对主动扫描和被动扫描的需要。802.11k帮助解决的一个常见问题是“粘性”客户端,它通常与特定的AP关联,然后强烈地保持该AP,即使从更近的AP有明显更好的选项。802.11k特性可以在高级设置下直接在WLAN上进行配置:
It is recommended that you enable 802.11k with dual-band reporting. With dual-band reporting enabled, the client receives a list of the best 2.4- and 5-GHz APs upon a directed request from the client. The client most likely looks at the top of the list for an AP on the same channel and then on the same band as one on which the client is currently operating. This logic reduces scan times and saves battery power.
建议您使用双频报告启用802.11k。启用双频报告后,客户端根据来自客户端的定向请求,会收到最好的2.4和5ghz ap的列表。客户端很可能在列表的顶部查看同一channel上的AP,然后在客户端当前运行的band上。这种逻辑减少扫描时间,节省电池电量。
Note: Do not enable the dual-list option if using single-band clients or for deployment scenarios that use devices primarily configured for 5 GHz.
注意:如果使用单频段客户端或对于使用主要配置为5个GHz的设备的部署场景,请不要启用双频扫描选项。
802.11k may cause problems on some legacy devices that react incorrectly to unknown information elements. Most devices will ignore 802.11k information, even if they do not support it, but for some it may lead to disconnections or failure to associate. These are corner cases, but it is advisable to test before enabling this option.