胡云
(重庆电子工程职业学院计算机应用系,重庆 401331)
现阶段在大中型企业部署无线局域网(WLAN)时,一般采用基于连接到无线局域网控制器(Wireless LAN Controller(WLC),以下简称WLC或者控制器)的轻型接入点 (Lightweight Access Point(LAP),以下简称LAP)的模式。这种WLAN部署模式中的LAP和WLC是有线连接的,LAP与客户端是无线连接的,LAP不能独立于WLC而工作。在LAP和WLC之间传输数据和实现通信使用的是支持第二层(以太网)和第三层(IP)数据包信息的轻型接入点协议(Lightweight Access PointProtocol(LWAPP),以下简称LWAPP)[1]。
由于LAP不能独立于WLC而工作,因此,LAP发现和注册到WLC是集中型WLAN运行的首要环节。LAP在为无线客户端提供服务前,必须先发现并注册到WLC。当LAP注册到WLC之后,WLC将会为LAP设定所有RF策略和无线局域网策略,包括:服务集标识符 (SSID)、安全参数、数据传输速率、无线信道、功率级别等,这样,LAP才能为无线客户端提供无线服务。当LAP不能发现WLC或LAP发现WLC但不能注册到WLC时,LAP不能为无线客户端提供任何无线服务,表现为LAP和无线客户端不能连通的WLAN基本故障。
为提高解决集中型WLAN基本故障的针对性,本文拟结合思科LAP和WLC产品实际,研究LAP发现和注册到WLC上的过程,分析LAP发现WLC的算法及选择加入WLC的标准。
LAP和 WLC加电启动后,LAP首先发起DHCP发现请求以获得IP地址,接着通过侦测程序、WLC发现算法实现发现WLC和注册到WLC上。LAP发现和注册到WLC上的一般过程顺序[2]如下:
1)LAP首先发起DHCP发现请求以获得IP地址,除非LAP已经预先设定静态IP地址;
2)LAP给所有已知WLC发送LWAPP发现请求信息;
3)任何WLC接收到LWAPP发现请求后将及时发送LWAPP发现应答信息;
4)LAP接收到LWAPP发现应答信息后,LAP将选择加入其中一个WLC;
5)LAP然后向WLC发送LWAPP加入请求信息并等待WLC回复LWAPP加入应答消息;
6)WLC验证该LAP合法后将发送LWAPP加入应答消息给该LAP;
7)当完成发现和加入过程后,LAP将验证WLC合法性。LWAPP加入过程包括互为认证及加密密钥生成,该密钥将用来加密LAP加入过程及后来的LWAPP控制信息;
8)LAP注册到WLC上。
图1 LAP发现和注册到WLC上的过程示意图
处在同一网络中的LAP与WLC之间采用LWAPP协议通讯。支持二层LWAPP模式的LAP以广播方式发送LWAPP发现请求信息,该信息以二层LWAPP帧方式封装,这种方式称为二层LWAPP模式。这是LAP用来发现WLC的第一种方式。仅仅思科1000系列LAP支持二层LWAPP模式,思科2000系列WLC仅支持三层LWAPP模式。如果在网络中有WLC被配置成二层LWAPP模式[3],收到LAP以广播方式发送的LWAPP发现请求信息后,就会发送发现应答信息。LAP然后进行加入阶段。(前面2“LAP如何注册到WLC上”中的第5步及以后)
在控制器CLI界面,可以使用一些debug命令来查看LAP加入WLC的整个过程。
debug lwapp events enable—显示discovery数据包和join数据包。
debug lwapp packet enable—显示数据包级别的discovery和join信息。
下面是从控制器端输入
命令后的输出信息,显示了当LAP使用二层LWAPP模式发现和注册到WLC上的顺序过程:(提示:以下输出由于空间限制将一行显示变为二行显示)
LAP三层LWAPP控制器发现算法将创建一个控制器列表。在三层LWAPP控制器发现算法运行过程中,为了能够创建一个候选WLC列表,LAP将一直完成前面(2 LAP发现和注册到WLC上的过程)所介绍的步骤中的前5步。当控制器列表创建后,LAP从列表中基于某些标准[4]选择一个WLC,然后向该WLC发送一个LWAPP加入请求,并尝试加入该WLC。LAP从候选WLC列表中选择WLC的标准是:
1)如果LAP之前已经配置了成首选、备选、第三控制器,LAP会检查控制器sysName字段 (从LWAPP发现响应消息中),来尝试将该控制器作为首选控制器。如果 LAP发现与首选控制器的sysName相匹配,LAP将向该WLC发送加入请求。如果LAP无法找到其首选的控制器,或者如果LWAPP加入失败,LAP尝试匹配LWAPP发现响应消息中包括的备选控制器的sysName,如果LAP发现匹配则发送了一个LWAPP加入请求到备选控制器。如果备选WLC无法找到或LWAPP加入失败,LAP将重复以上过程以发现第三控制器。
2)当下列条件之一符合时,LAP将从WLC候选列表中的WLC所发回的LWAPP发现响应消息中查看主控制器标记字段:
①对于一个LAP来说,没有配置首选、备选和第三控制器;
②控制器不在侯选列表中;
③LWAPP加入这些控制器失败。
3)如果以上几个环节没有的话,将启用控制器间的负载均衡。该负载均衡通过 discovery response中所包含的控制器剩余承载能力这个值来实现。
4)如果两个控制器剩余的承载能力相同的话,LAP会向第一个回应discovery response的控制器发送join request。如果一个控制器上有多个AP管理接口,将向关联AP最少的AP管理接口发送join request。
控制器会回应所有的discovery request,并不检查AP的证书或者AP是否符合信任策略。然而,join request必须包含一个有效的认证信息,否则将无法从控制器处收到join response。如果LAP无法从它选择的控制器处收到join response,LAP会尝试向列表中的下一个控制器发送join request。如果控制器是配置好加入顺序的(primary/secondary/ tertiary),就算LAP收不到join response,也不会向加入顺序之外的其他控制器发送join request。
5)当LAP收到一个join reply之后,它会检查自己的软件镜像是否和控制器上的相同。如果不同,AP需要从控制器处下载软件镜像,然后重启并加载新的软件镜像。重启之后,AP需要重新从步骤1开始。
6)如果AP和控制器上的软件镜像相同,AP需要向控制器请求配置信息,然后LAP在控制器上才会显示状态是已注册。在AP下载完配置信息后,AP可能会再次重启来应用新的配置。因此,可能会有额外的重启发生,但这是一种正常的行为。
LAP通过WLC发现算法,首先发现WLC,随后注册到WLC上,这是集中型WLAN工作的基础。熟知LAP发现和注册到WLC的过程,将提高WLAN基本故障的分析与解决的针对性和有效性。
[1]贺立俊,章华.无线网络发展新趋势-LWAPP协议在集中式WLAN的应用[J].计算机时代,2009,(4):9-11.
[2](美国)Brandon James Carroll.CCNA无线认证考试指南[M].罗进文,王喆,孟阳(译).北京:人民邮电出版社, 2010.145-148.
[3]段水福,历晓华,段炼.无线局域网(WLAN)设计与实现[M].杭州:浙江大学出版社,2007.254.
[4](美国)Brandon James Carroll.CCNA无线认证考试指南[M].罗进文,王喆,孟阳(译).北京:人民邮电出版社, 2010.149-151.