云AC技术应用浅析

来源:互联网 发布:学车宝模拟驾驶软件 编辑:程序博客网 时间:2024/06/08 18:02

云AC技术应用浅析

1.    AC概述

    MACCMobileAccess Control Cloud,移动接入控制云平台),简称为云AC,用于管理WIFI设备。配置管理用于云AC向设备端下发配置,即通过云AC控制设备端的配置,配置管理现在包括设备无线配置、设备认证配置、访问资源控制、用户管理控制、设备管理配置、设备日志配置以及设备系统配置等七项基本配置功能以及记录各个配置项操作的相关信息的配置操作日志记录功能。
    锐捷的云AC解决了AP分散到各个不同地市,不同门店,众多孤立设备集中管理,监控的难题;传统的硬件ACAP的管理采用紧耦合的方式,更适合局域网内的大量AP的管理;锐捷云AC采用和AP弱耦合,轻量级的交互方式来更好的适用跨互联网,广域网的AP集中管理。云AC还支持与锐捷云营销平台、移动媒体平台等对接,分别实现广告推送营销和多媒体服务等。

2. 配置管理的整体流
 
2.1 配置管理的整体流程
    配置管理主要是实现云AC向WIFI设备下发配置文件,实现云AC对设备配置的统一管理。产品官方首页http://www.ruijie.com.cn/cp/wx-ypt/macc。

3. 配置管理的技术说明
    AC与设备端的传输遵从CWMPCPE WANManagement Protocol,用户侧设备广域网管理协议),该协议是由DSLDigital Subscriber's Line,数字用户线路)论坛发起制定的技术规范之一,在该规范中描述了一个用户侧设备广域网管理协议的通用框架、消息规范、管理方法和数据模型。由于TR-069CWMP协议最重要的核心文档,因此在许多时候CWMP协议也称作TR-069协议。
    AC向设备端下发配置,设备端接收到配置后写入设备内对应的配置文件,然后重启对应进程即可实现配置。

4. CWMP技术如何应用在锐捷无线产品上
    可以简单的把云AC看做一台管理服务器,无线产品通过CWMP与服务器建立通信道路。用过锐捷无线产品RG-MA1210(用户交流社区http://bbs.ruijie.com.cn/forum.php?mod=viewthread&tid=2127)的盆友应该对MACC有一定的了解,如果想通过低成本投入,在给客户提供免费上网服务的同时,顺便推送一些小广告,您爽我也爽,岂不乐哉。事先声明下,其实我也没用过RG-MA1210,用过的用户都说好^_^。今天讨论的主题是技术,那可能是有人怀疑啦,产品都没用过,能把这技术说清楚吗。这点还请各位放心,因为本人用的产品,您们肯定没人用过,目前还没正式亮相咧。下面就拿这款无线产品RG-MR620给各位讲解下CWMP技术如何在它上面实现的,太多的技术细节,不便道出,何况我自己也是略懂而已。说的不对的地方,还望各位批评指正。
    锐捷的无线产品大部分使用的我司自主研发的RGOS,但是RG-MR620采用的开源的OpenWrt,也就是Linux的一个发行版,RG-MR620是一款支持11ACCPE,下文简称CPE。下图是该系统的系统信息:  

4.1 RG-MR620的操作系统信息
    CPE是否支持CWMP协议,看下图就知道:

4.2 CWMP实现
    cwmp.elf进程就是建立与MACC隧道的源头。看到这里,估计技术大牛已经明白了,也说不定技术大牛不屑此类介绍。嘿嘿,其实我从不介意别人的看法,既然写,就要写的彻底,写得明白。

5. 举一例来说说
    MACC的功能包括设备无线配置、设备认证配置、访问资源控制、用户管理控制、设备管理配置等等,具体的配置方法请参考http://www.ruijie.com.cn/cp/wx-ypt/macc。下面就以配置管理设备无线配置为例来浅析下MACC技术的应用。首先配置好CPE的环境,让该设备加入到MACC中,注意最重要的配置项是ACS URL,也就是云AC提供给设备的对外接口。

5.1 CWMP配置
    配置好设备以后,登录MACC主页面就能发现在线设备:

5.2 MACC登录界面
    再来一张详细的:

5.3 MACC在线设备信息
    设备无线配置主要是为了配置设备的无线wifi功能,设备无线配置页面如图5.4所示:

5.4 设备无线配置页面
    点击保存按钮就能将该配置同步到CPE,事实上,在设备首次关联上MACC时,会自动下发一个FullConfig(全量配置),Fullconfig包括了无线配置,因此在无线设备的Console端可以看见有信息输出,ath0是被wifi0映射的vap(该设备的wifi0主要用作覆盖2.4Gwifi1主要用作5G上联),其中ath0ath01ath02ath03一共创建了4vap,通过无线终端就能找到由wifi0放出的4SSID信号。

5.5 设备控制台输出
    对比下无线配置文件的变化如下所示:
MACC配置4SSID
admin@Ruijie:/# uci show wireless
wireless.wifi0=wifi-device
wireless.wifi0.type=qcawifi
wireless.wifi0.channel=auto
wireless.wifi0.macaddr=00:0c:30:67:fb:79
wireless.wifi0.hwmode=11ng
wireless.wifi1=wifi-device
wireless.wifi1.type=qcawifi
wireless.wifi1.channel=auto
wireless.wifi1.macaddr=00:0c:30:67:fb:79
wireless.wifi1.hwmode=11ac
wireless.wifi1.tdpcf=1
wireless.wifi1.peerdist=2500
wireless.@wifi-iface[0]=wifi-iface
wireless.@wifi-iface[0].device=wifi1
wireless.@wifi-iface[0].network=wan
wireless.@wifi-iface[0].mode=sta
wireless.@wifi-iface[0].wds=0
wireless.@wifi-iface[0].ssid=ruijie_cpe
wireless.@wifi-iface[0].encryption=none
wireless.@wifi-iface[0].wlan_id=1
wireless.@wifi-iface[1]=wifi-iface
wireless.@wifi-iface[1].device=wifi0
wireless.@wifi-iface[1].wlan_id=1
wireless.@wifi-iface[1].network=lan
wireless.@wifi-iface[1].mode=ap
wireless.@wifi-iface[1].wds=0
wireless.@wifi-iface[1].ssid=MR620-2.4G-1
wireless.@wifi-iface[1].encryption=none
wireless.@wifi-iface[1].hidden=0
wireless.@wifi-iface[1].maxsta=1
wireless.@wifi-iface[2]=wifi-iface
wireless.@wifi-iface[2].device=wifi0
wireless.@wifi-iface[2].wlan_id=2
wireless.@wifi-iface[2].network=lan
wireless.@wifi-iface[2].mode=ap
wireless.@wifi-iface[2].wds=0
wireless.@wifi-iface[2].ssid=MR620-2,.4G-2
wireless.@wifi-iface[2].encryption=psk-mixed+ccmp
wireless.@wifi-iface[2].key=12345678
wireless.@wifi-iface[2].hidden=0
wireless.@wifi-iface[3]=wifi-iface
wireless.@wifi-iface[3].device=wifi0
wireless.@wifi-iface[3].wlan_id=3
wireless.@wifi-iface[3].network=lan
wireless.@wifi-iface[3].mode=ap
wireless.@wifi-iface[3].wds=0
wireless.@wifi-iface[3].ssid=MR620-2.4G-3
wireless.@wifi-iface[3].encryption=psk-mixed+ccmp
wireless.@wifi-iface[3].key=12345678
wireless.@wifi-iface[3].hidden=0
wireless.@wifi-iface[4]=wifi-iface
wireless.@wifi-iface[4].device=wifi0
wireless.@wifi-iface[4].wlan_id=4
wireless.@wifi-iface[4].network=lan
wireless.@wifi-iface[4].mode=ap
wireless.@wifi-iface[4].wds=0
wireless.@wifi-iface[4].ssid=MR620-2.4G-4
wireless.@wifi-iface[4].encryption=psk-mixed+ccmp
wireless.@wifi-iface[4].key=444444444444
wireless.@wifi-iface[4].hidden=0
admin@Ruijie:/#
  
MR620缺省配置: 
admin@Ruijie:/# uci show wireless 
wireless.wifi0=wifi-device  
wireless.wifi0.type=qcawifi  
wireless.wifi0.channel=auto  
wireless.wifi0.macaddr=00:0c:30:67:fb:79  
wireless.wifi0.hwmode=11ng  
wireless.@wifi-iface[0]=wifi-iface  
wireless.@wifi-iface[0].device=wifi0
wireless.@wifi-iface[0].network=lan  
wireless.@wifi-iface[0].mode=ap  
wireless.@wifi-iface[0].wds=0  
wireless.@wifi-iface[0].ssid=ruijie_RG-MR620_2G  
wireless.@wifi-iface[0].encryption=none  
wireless.@wifi-iface[0].wlan_id=1  
wireless.wifi1=wifi-device  
wireless.wifi1.type=qcawifi  
wireless.wifi1.channel=auto  
wireless.wifi1.macaddr=00:0c:30:67:fb:79  
wireless.wifi1.hwmode=11ac  
wireless.wifi1.tdpcf=1  
wireless.wifi1.peerdist=2500  
wireless.@wifi-iface[1]=wifi-iface  
wireless.@wifi-iface[1].device=wifi1  
wireless.@wifi-iface[1].network=wan  
wireless.@wifi-iface[1].mode=sta  
wireless.@wifi-iface[1].wds=0  
wireless.@wifi-iface[1].ssid=ruijie_cpe  
wireless.@wifi-iface[1].encryption=none  
wireless.@wifi-iface[1].wlan_id=1  
admin@Ruijie:/#
  
  
    配置文件发生如此大改变,是因为MACC下发了相关的配置操作指令给CPE,查看日志由MACC配置4SSID的配置过程,很容易知道,MACC通过下发指令,调用uci指令对CPE的配置文件进行修改。
扩展:uci管理了OpenWrt下最主要的系统配置参数并且提供了简单、容易、标准化的人机交互接口。uci中已经包含了网络配置、无线配置、系统信息配置等作为基本路由器所需的主要配置参数。
    因此,MACCCPE配置出4SSID实际上调用的操作便是下面一系列的uci操作:
admin@Ruijie:/# cat /var/log/wlcfg
[$Thu Dec 10 19:07:45 CST 2015]wifi_config.sh clear wlan-id 0
[$Thu Dec 10 19:07:45 CST 2015] uci -qdelete wireless.@wifi-iface[0]
[$Thu Dec 10 19:07:45 CST 2015] The flag ofcompatibility mmac = 3.
[$Thu Dec 10 19:07:45 CST 2015]wifi_config.sh apply $RADIO = 3
[$Thu Dec 10 19:07:45 CST 2015] disableradio 1
[$Thu Dec 10 19:07:46 CST 2015] enableradio 1
[$Thu Dec 10 19:07:46 CST 2015] The flag ofcompatibility mmac = 1.
[$Thu Dec 10 19:07:46 CST 2015]wifi_config.sh set $RADIO = 1
[$Thu Dec 10 19:07:46 CST 2015]     Add a new wifi-iface[1] and init ok!
[$Thu Dec 10 19:07:46 CST 2015] uci setwireless.@wifi-iface[1].device=wifi0
[$Thu Dec 10 19:07:46 CST 2015] uci setwireless.@wifi-iface[1].wlan_id=1
[$Thu Dec 10 19:07:46 CST 2015] uci setwireless.@wifi-iface[1].network=lan
[$Thu Dec 10 19:07:46 CST 2015] uci setwireless.@wifi-iface[1].mode=ap
[$Thu Dec 10 19:07:46 CST 2015] uci setwireless.@wifi-iface[1].wds=0
[$Thu Dec 10 19:07:47 CST 2015] uci setwireless.@wifi-iface[1].ssid=MR620-2.4G-1
[$Thu Dec 10 19:07:47 CST 2015] uci setwireless.@wifi-iface[1].encryption=none
[$Thu Dec 10 19:07:47 CST 2015] uci setwireless.@wifi-iface[1].hidden=0
[$Thu Dec 10 19:07:48 CST 2015] The flag ofcompatibility mmac = 3.
[$Thu Dec 10 19:07:48 CST 2015]wifi_config.sh apply $RADIO = 3
[$Thu Dec 10 19:07:48 CST 2015] disableradio 1
[$Thu Dec 10 19:07:48 CST 2015] enableradio 1
[$Thu Dec 10 19:07:49 CST 2015] The flag ofcompatibility mmac = 1.
[$Thu Dec 10 19:07:49 CST 2015]wifi_config.sh set $RADIO = 1
[$Thu Dec 10 19:07:50 CST 2015]     Add a new wifi-iface[2] and init ok!
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].device=wifi0
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].wlan_id=2
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].network=lan
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].mode=ap
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].wds=0
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].ssid=MR620-2,.4G-2
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].encryption=psk-mixed+ccmp
[$Thu Dec 10 19:07:50 CST 2015] uci setwireless.@wifi-iface[2].key=12345678
[$Thu Dec 10 19:07:51 CST 2015] uci setwireless.@wifi-iface[2].hidden=0
[$Thu Dec 10 19:07:51 CST 2015] The flag ofcompatibility mmac = 3.
[$Thu Dec 10 19:07:51 CST 2015]wifi_config.sh apply $RADIO = 3
[$Thu Dec 10 19:07:51 CST 2015] disableradio 1
[$Thu Dec 10 19:07:52 CST 2015] enableradio 1
[$Thu Dec 10 19:07:55 CST 2015] The flag ofcompatibility mmac = 1.
[$Thu Dec 10 19:07:55 CST 2015]wifi_config.sh set $RADIO = 1
[$Thu Dec 10 19:07:56 CST 2015]     Add a new wifi-iface[3] and init ok!
[$Thu Dec 10 19:07:56 CST 2015] uci setwireless.@wifi-iface[3].device=wifi0
[$Thu Dec 10 19:07:56 CST 2015] uci setwireless.@wifi-iface[3].wlan_id=3
[$Thu Dec 10 19:07:56 CST 2015] uci setwireless.@wifi-iface[3].network=lan
[$Thu Dec 10 19:07:56 CST 2015] uci set wireless.@wifi-iface[3].mode=ap
[$Thu Dec 10 19:07:56 CST 2015] uci setwireless.@wifi-iface[3].wds=0
[$Thu Dec 10 19:07:56 CST 2015] uci setwireless.@wifi-iface[3].ssid=MR620-2.4G-3
[$Thu Dec 10 19:07:56 CST 2015] uci setwireless.@wifi-iface[3].encryption=psk-mixed+ccmp
[$Thu Dec 10 19:07:56 CST 2015] uci setwireless.@wifi-iface[3].key=12345678
[$Thu Dec 10 19:07:57 CST 2015] uci setwireless.@wifi-iface[3].hidden=0
[$Thu Dec 10 19:07:57 CST 2015] The flag ofcompatibility mmac = 3.
[$Thu Dec 10 19:07:57 CST 2015]wifi_config.sh apply $RADIO = 3
[$Thu Dec 10 19:07:58 CST 2015] disableradio 1
[$Thu Dec 10 19:07:58 CST 2015] enableradio 1
[$Thu Dec 10 19:08:04 CST 2015] The flag ofcompatibility mmac = 1.
[$Thu Dec 10 19:08:04 CST 2015]wifi_config.sh set $RADIO = 1
[$Thu Dec 10 19:08:04 CST 2015]     Add a new wifi-iface[4] and init ok!
[$Thu Dec 10 19:08:04 CST 2015] uci setwireless.@wifi-iface[4].device=wifi0
[$Thu Dec 10 19:08:04 CST 2015] uci setwireless.@wifi-iface[4].wlan_id=4
[$Thu Dec 10 19:08:04 CST 2015] uci setwireless.@wifi-iface[4].network=lan
[$Thu Dec 10 19:08:04 CST 2015] uci setwireless.@wifi-iface[4].mode=ap
[$Thu Dec 10 19:08:04 CST 2015] uci setwireless.@wifi-iface[4].wds=0
[$Thu Dec 10 19:08:04 CST 2015] uci setwireless.@wifi-iface[4].ssid=MR620-2.4G-4
[$Thu Dec 10 19:08:05 CST 2015] uci setwireless.@wifi-iface[4].encryption=psk-mixed+ccmp
[$Thu Dec 10 19:08:05 CST 2015] uci setwireless.@wifi-iface[4].key=444444444444
[$Thu Dec 10 19:08:05 CST 2015] uci setwireless.@wifi-iface[4].hidden=0
[$Thu Dec 10 19:08:06 CST 2015] The flag ofcompatibility mmac = 3.
[$Thu Dec 10 19:08:06 CST 2015]wifi_config.sh apply $RADIO = 3
[$Thu Dec 10 19:08:06 CST 2015] disableradio 1
[$Thu Dec 10 19:08:07 CST 2015] enableradio 1
[$Thu Dec 10 19:08:15 CST 2015] The flag ofcompatibility mmac = 1.
[$Thu Dec 10 19:08:15 CST 2015]wifi_config.sh set $RADIO = 1
[$Thu Dec 10 19:08:15 CST 2015] uci setwireless.@wifi-iface[1].maxsta=1
[$Thu Dec 10 19:08:15 CST 2015] The flag ofcompatibility mmac = 3.
[$Thu Dec 10 19:08:15 CST 2015]wifi_config.sh apply $RADIO = 3
[$Thu Dec 10 19:08:16 CST 2015] disableradio 1
[$Thu Dec 10 19:08:17 CST 2015] enableradio 1
admin@Ruijie:/#

6.结语
    以上关于锐捷的MACC技术的简单解析,还有很多具体细节的问题没有涉及到。还请各位工程师从网络上获取相关文档并研究。经常访问锐捷社区无线版本的网页,http://bbs.ruijie.com.cn/?fromuser=unrecoverable找到最新的信息和资料。也非常欢迎您加我好友一起切磋技术,同时也欢迎各位在论坛上提问。
0 0
原创粉丝点击