云AC技术应用浅析

云AC技术应用浅析

1.    AC概述

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

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

3. 配置管理的技术说明
     AC 与设备端的传输遵从CWMP CPE WANManagement Protocol ,用户侧设备广域网管理协议),该协议是由DSL Digital Subscriber's Line ,数字用户线路)论坛发起制定的技术规范之一,在该规范中描述了一个用户侧设备广域网管理协议的通用框架、消息规范、管理方法和数据模型。由于TR-069 CWMP 协议最重要的核心文档,因此在许多时候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 是一款支持11AC CPE ,下文简称CPE 。下图是该系统的系统信息:  

云AC技术应用浅析_第2张图片

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 提供给设备的对外接口。

云AC技术应用浅析_第3张图片

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

云AC技术应用浅析_第4张图片

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

云AC技术应用浅析_第5张图片

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

云AC技术应用浅析_第6张图片

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

云AC技术应用浅析_第7张图片

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 配置4 SSID 的配置过程,很容易知道,MACC 通过下发指令,调用uci 指令对CPE 的配置文件进行修改。
扩展: uci管理了OpenWrt 下最主要的系统配置参数并且提供了简单、容易、标准化的人机交互接口。uci中已经包含了网络配置、无线配置、系统信息配置等作为基本路由器所需的主要配置参数。
     因此,MACC CPE 配置出4 SSID 实际上调用的操作便是下面一系列的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 找到最新的信息和资料。也非常欢迎您加我好友一起切磋技术,同时也欢迎各位在论坛上提问。

你可能感兴趣的:(wireless)