本发明涉及无线局域网领域,特别是一种无线接入设备发现云AC的方法及系统。
背景技术:
在无线局域网(Wireless Local Area Networks,简称WLAN)中,包括无线网络控制器(Access Controller,简称AC)及可无线接入至AC的无线接入点(Access Point,简称AP)。无线接入点(AP)可以分为两种,一种是无线网关(“瘦”AP),相当于有线网络中的集线器;另一种是无线路由器(“胖”AP),具有WAN、LAN两个接口,可以支持DHCP服务器、DNS和MAC地址克隆,还具有VPN接入、防火墙等安全功能。
构建无线局域网,需要将若干个无线路由器(AP)无线接入无线网络控制器(AC),一般包括如下步骤:步骤S901,AP获取自身的IP地址。步骤S902,AP获取AC的IP地址,可以通过DHCP的option选项、配置静态IP地址、广播等方式获取AC的IP地址。步骤S903,AP用广播方式发出DiscoveryRequest报文,邀请报文中包括AP型号、软硬件信息等。步骤S904,AC收到DiscoveryRequest报文后,向AP发出一个DiscoveryResponse报文,回应报文中包括AC名称、软硬件信息等。步骤S905,AP收到DiscoveryResponse报文后,向AC发出一个JionRequest报文,请求加入。步骤S906,AP与AC建立CAPWAP隧道,传输配置信息及数据。AC与关联该AC的每一个AP间都存在一个独立的通信通道,即CAPWAP隧道,这是一种点到点的隧道,AC通过该CAPWAP隧道实现对每台AP的管理与控制。
移动接入控制云平台(Mobile Access Control Cloud,简称MACC或云AC),也是无线网络控制器(AC)的一种,通过WLAN网络控制下联的所有无线接入点(AP),实现对无线网络的集中规划和部署,包括设备无线配置、设备认证配置、访问资源控制、用户管理控制、设备管理配置、设备日志配置以及设备系统配置等七项基本配置功能以及记录各个配置项操作的相关信息的配置操作日志记录功能。
AP获取云AC的IP地址,通常是利用DHCP来自动获取云AC的IP地址,在获取地址时,在DHCP数据包里面带特殊的字段(option43字段)给AP,AP解析出这个字段中的数据自动获取云AC的IP地址。然而,用这种方法获取云AC的IP地址的前提给AP分配地址的DHCP服务器一定要事先被配置过那个特殊的字段(option43字段),如果该DHCP服务器事先没有被配置过option43字段,AP就无法获取云AC的IP地址,AP就无法正常接入云AC。
技术实现要素:
本发明的目的在于,提供一种无线接入设备发现云AC的方法,以解决现有技术中对DHCP服务器依赖程度高、带宽消耗大等技术问题。
为实现上述目的,本发明提供一种无线接入设备发现云AC的方法,包括如下步骤:步骤S1)无线接入设备以组播方式发送地址请求报文数据;步骤S2)云AC监听至少一预设端口是否有地址请求报文数据传入,若有,执行步骤S3);步骤S3)所述云AC检测所述地址请求报文数据中是否有一预设字段,若有,发送所述云AC的信息至所述无线接入设备;以及步骤S4)所述无线接入设备配置所述云AC的信息,实现无线接入。
进一步地,所述步骤S1)包括如下步骤:步骤S101)获取无线接入设备当前IP地址,判断当前IP地址为动态URL还是静态URL;若是静态URL,执行步骤S102);若是动态URL,执行步骤S104);步骤S102)检测是否存在dhcpc进程,若是,执行步骤S103);若否,执行步骤S104);步骤S103)判断是否存在DHCP服务器发来的option43字段,若否,执行步骤S104);步骤S104)以组播方式周期式发送至少一地址请求报文数据,直至收到所述云AC的回复报文数据为止。
进一步地,所述步骤S2)包括如下步骤:步骤S201)云AC内预先设置至少一组播地址及至少一预设端口;步骤S202)云AC监听所述预设端口是否有对应所述组播地址的地址请求报文数据传入。
进一步地,所述步骤S3)包括如下步骤:步骤S301)所述云AC解析所述地址请求报文数据;步骤S302)将一预设字段与所述地址请求报文数据对比,判断所述地址请求报文数据中是否存在所述预设字段;若是,执行步骤S303);步骤S303)发送所述云AC的信息至所述无线接入设备。
进一步地,所述步骤S4)包括如下步骤:步骤S401)所述无线接入设备获得所述云AC的信息;步骤S402)向所述云AC发出一个JionRequest报文数据,请求接入所述云AC;以及步骤S403)所述无线接入设备与所述云AC建立CAPWAP隧道。
为实现上述目的,本发明还提供一种无线接入设备发现云AC的系统,包括无线接入设备和云AC,无线接入设备用于以组播方式发送地址请求报文数据;云AC,用于监听至少一预设端口是否有地址请求报文数据传入;若有,检测所述地址请求报文数据中是否有一预设字段;若有,发送所述云AC的信息至所述无线接入设备;其中,所述无线接入设备还用于配置所述云AC的信息,实现无线接入。
进一步地,所述无线接入设备包括IP地址判断单元、dhcpc进程检测单元、option字段判断单元以及地址请求报文发送单元。所述IP地址判断单元用于获取无线接入设备当前IP地址,并判断当前IP地址为动态URL还是静态URL;所述dhcpc进程检测单元用于检测是否存在dhcpc进程;所述option字段判断单元用于判断是否存在DHCP服务器发来的option43字段;所述地址请求报文发送单元用于以组播方式周期式发送地址请求报文数据。
进一步地,所述云AC包括至少一组播地址、至少一预设端口以及监听单元,所述组播地址和所述预设端口预先设置于云AC内;所述监听单元用于监听所述预设端口是否有对应所述组播地址的地址请求报文数据传入。
进一步地,所述云AC包括报文解析单元及字段对比单元,所述报文解析单元用于解析所述地址请求报文数据;所述字段对比单元,用于将一预设字段与所述地址请求报文数据对比;用于判断所述地址请求报文数据中是否存在所述预设字段;若是,发送所述云AC的信息至所述无线接入设备。
进一步地,所述无线接入设备包括云AC信息获取单元、接入请求报文发送单元及CAPWAP隧道建立单元。所述云AC信息获取单元用于获取所述云AC的信息。所述接入请求报文发送单元,用于向所述云AC发出一个JionRequest报文,请求接入所述云AC。所述CAPWAP隧道建立单元用于与所述云AC建立CAPWAP隧道。
本发明的优点在于,专用路由器(如企业级路由器)AP和AC是配套使用的,成套的AP与AC会设置相同或相应的的组播地址及端口;无需过多的配置即可使得二者尽快实现通信;可以摆脱对DHCP服务器的依赖,方便管理。用组播方式发送请求报文可以尽可能减少对网络带宽的消耗,且组播在一个局域网内传播不会对其它局域网的设备造成影响。在建立通信的过程中,对网络资源的占用较少,有效节省带宽。
附图说明
图1为本发明实施例中无线接入设备发现云AC的方法的流程框图;
图2为本发明实施例中无线接入设备发送地址请求报文的流程框图;
图3为本发明实施例中云AC监听预设端口的流程框图;
图4为本发明实施例中检测地址请求报文数据中是否有预设字段的流程框图;
图5为本发明实施例中云AC的信息配置到无线接入设备的流程框图;
图6为本发明实施例中一种无线接入设备发现云AC的系统的结构框图。
具体实施方式
以下参考说明书附图介绍本发明的优选实施例,证明本发明可以实施,该实施例可以向本领域中的技术人员完整介绍本发明,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。
如图1所示,本发明提供一种无线接入设备发现云AC的方法,包括如下各个步骤。所述无线接入设备包括但不限于无线路由器。
步骤S1)无线接入设备以组播方式发送地址请求报文数据,如图2所示,具体包括如下步骤:步骤S101)获取无线接入设备当前IP地址,判断当前IP地址为动态URL还是静态URL;若是静态URL,执行步骤S102);若是动态URL,执行步骤S104);步骤S102)检测是否存在dhcpc进程,若是,发消息通知dhcpc进程(发消息之前检测AP是不是dhcp模式下的地址),执行步骤S103);若否,执行步骤S104);步骤S103)判断是否存在DHCP服务器发来的option43字段。若否,执行步骤S104);若是,执行步骤S105)。步骤S104)以组播方式周期式发送至少一地址请求报文数据,直至收到所述云AC的回复报文数据为止。步骤S104)中,启动或重新启动discoverac进程,不管discoverac进程是否存在都是重新拉起,这样可以避免重复插拔WAN口情况下出现多个discoverac进程的情况;discoverac进程启动后,以组播方式发送一地址请求报文;每隔一定时间T(优选1000ms)发送一地址请求报文,直到收到云AC应答为止。所述地址请求报文包括组播IP地址、通信端口号、无线接入设备IP地址及软硬件信息。步骤S105)所述无线接入设备从所述option43字段中解析出云AC的信息。步骤S106)所述无线接入设备用option43字段自动配置云AC地址,给SSK发消息,把云AC的地址配置下去。
步骤S2)云AC监听至少一预设端口是否有地址请求报文数据传入,若有,执行步骤S3)。如图3所示,所述步骤S2)包括如下步骤:步骤S201)云AC内预先设置至少一组播地址及至少一预设端口;步骤S202)云AC监听所述预设端口是否有对应所述组播地址的地址请求报文数据传入。本实施例中,AP发送的组播包带discoverac字段供服务器检测,防止网络中有其它的进程也用这个地址和端口进行通信。
步骤S3)所述云AC检测所述地址请求报文数据中是否有一预设字段,若有,发送所述云AC的信息至所述无线接入设备,优选单播方式;所述云AC的信息包括云AC的IP地址、通信端口号及SSL开启情况。如图4所示,所述步骤S3)包括如下步骤:步骤S301)所述云AC解析所述地址请求报文数据;步骤S302)将一预设字段与所述地址请求报文数据对比,判断所述地址请求报文数据中是否存在所述预设字段,所述预设字段为cjson格式数据;若是,执行步骤S303);若否,执行步骤S304);步骤S303)发送所述云AC的信息至所述无线接入设备,优选单播方式。AC服务器收到组播包解析出发送组播包AP的IP和端口号,以单播方式回复该AP设备,防止对其它设备造成影响。步骤S304)拒绝发送云AC的信息至所述无线接入设备。
步骤S4)所述无线接入设备配置所述云AC的信息,实现无线接入。如图5所示,所述步骤S4)包括如下步骤:步骤S401)所述无线接入设备获得所述云AC的信息,此处的云AC的信息是利用步骤S3)获得的。步骤S402)所述无线接入设备向所述云AC发出一个JionRequest报文数据,请求接入所述云AC;步骤S403)所述无线接入设备与所述云AC建立CAPWAP隧道。
组播的接收者就是AC服务器,因为无线接入设备,特别是企业级路由器AP和AC是配套使用的,有AP基本就有AC的存在,用起来不需要像dhcp自动发现那样还需要配置,方便管理。用组播发送请求报文可以尽可能减少对网络带宽的消耗,且组播在一个局域网内传播不会对其它局域网的设备造成影响。discoverac进程执行组播发现的流,discoverac进程被拉起来之后会产生1个1000ms内的随机数,比如x,到达xms时,发送组播报文,在没有收到云AC应答的情况下,按(x + 1000*n)ms进行周期发送,直到收到云AC应答;discoverac进程起来之后产生随机数x,按(x + 1000*n)ms进行周期发送而不是一直发送组播包,这样可以降低网络资源的占用。
其中,发送的消息为cjson格式,cjson格式的信息容易扩展且解析方便,如果后面还想加入什么信息只需要在cjson中加入就可以了;发送消息中带上“discover”消息,内容为“discoverac”,AC服务器监听到AP发送组播包的组播地址(225.0.0.37),端口号6787有消息,且消息为discoverac之后再回复,防止网络中有其它的进程也用这个地址和端口进行通信;AC服务器收到组播包解析出发送组播包AP的IP和端口号,单播回复该AP设备,防止对其它设备造成影响;当discoverac进程收到AC服务器发来的组播包回复之后,解析出报文中带的AC地址、通信端口和ssl开启情况并组织消息发送给ssk;ssk进程收到discoverac的消息之后,将AC地址、通信端口和ssl开启情况解析并配置到MDM中就可以。
如图6所示,本发明还提供一种无线接入设备发现云AC的系统,包括无线接入设备1和云AC2。
无线接入设备1用于以组播方式发送地址请求报文数据。云AC2用于监听至少一预设端口是否有地址请求报文数据传入;若有,检测所述地址请求报文数据中是否有一预设字段;若有,发送所述云AC的信息至所述无线接入设备;其中,所述无线接入设备还用于配置所述云AC的信息,实现无线接入。
无线接入设备1包括IP地址判断单元11、dhcpc进程检测单元12、option字段判断单元13及地址请求报文发送单元14。
IP地址判断单元11用于获取无线接入设备当前IP地址,并判断当前IP地址为动态URL还是静态URL。dhcpc进程检测单元12用于检测是否存在dhcpc进程。option字段判断单元13用于判断是否存在DHCP服务器发来的option43字段。地址请求报文发送单元14用于以组播方式周期式发送地址请求报文数据。
云AC2包括至少一组播地址、至少一预设端口21以及监听单元22,所述组播地址和预设端口21预先设置于云AC2内。云AC2还包括报文解析单元23及字段对比单元24。
监听单元22用于监听所述预设端口是否有对应所述组播地址的地址请求报文数据传入。报文解析单元23用于解析所述地址请求报文数据。字段对比单元24用于将一预设字段与所述地址请求报文数据对比;用于判断所述地址请求报文数据中是否存在所述预设字段;若是,发送所述云AC的信息至所述无线接入设备。
无线接入设备1还包括云AC信息获取单元15、接入请求报文发送单元16及CAPWAP隧道建立单元17。云AC信息获取单元15用于获取所述云AC的信息。接入请求报文发送单元16用于向所述云AC发出一个JionRequest报文,请求接入所述云AC。CAPWAP隧道建立单元17用于与所述云AC建立CAPWAP隧道。
本发明的优点在于,本发明还提供一种无线接入设备发现云AC的方法及系统,无需过多的配置即可使无线接入设备发现云AC,并尽快实现通信,可以摆脱对DHCP服务器的依赖,方便管理。用组播方式发送请求报文可以尽可能减少对网络带宽的消耗,且组播在一个局域网内传播不会对其它局域网的设备造成影响。在建立通信的过程中,对网络资源的占用较少,有效节省带宽。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。