本发明涉及数据可视化以及无线网络技术领域,具体涉及一种面向校园网的wifi信号采集、可视化与故障定位系统。
背景技术
在校园网运维管理中,传统上基于运维人员的管理经验来推测部署无线访问接入点ap,这样并不能保证ap部署的合理性以及及时检测wifi质量,其只能通过人工反馈来获取校园内wifi运行情况。
针对ipv6校园网无线网络管理中,由人工监测无线ap运行状况和wifi信号强度,且校园内环境特殊、地理复杂和网络环境复杂的特点,对于运维人员来说,校园内的ap数量达到数千个,数据量庞大,wifi信道多且信号强度数值化的数据十分不便于查看,同时采用人为记录方式费时费力,基于全球定位系统gps获取位置在室外可行,然而楼宇内部如何获取位置信息是需解决的挑战。传统基于wifi强度定位的方式因wifi强度本身就是我们需测量的量因此并不可行。
当前只能通过人工输入服务集标识ssid的方式区分校园网和其他网络,通过覆盖范围或者单纯的名称匹配判断是否属于校园网都不准确,因此需要人工添加或删除校园网wifissid。
技术实现要素:
为了解决现有现有技术中ap接入异常费时费力的运维难题,本发明的目的在于提供一种方便、有效的面向ipv6校园网的wifi信号采集、可视化与故障定位系统。本发明采用智能手机获取各个信道上的wifi信号强度,有利于用校园网大量用户实现众包,完整地捕捉各位置信号强度和各捕捉点的位置信息;本发明利用智能手机传感器(如加速度仪、陀螺仪)动态监测用户行走步态、方向,结合楼宇地图,推断用户在室内所处的位置,同时基于wifi强度数据,使用热点图技术,采用分不同的wifissid展示和分不同的信道两种方式展示信号强度分布,便于运维人员观察校园网的信号强度和干扰情况,进而及时定位出现无线网络故障(如ap信号弱和干扰大)的位置。
为了克服现有技术的不足,本发明的目的在于利用移动设备的灵活性和可编程性,以及热力图可视化技术,旨在为运维人员设计、提供一个方便有效的系统,及时定位出现无线网络故障(如ap信号弱和干扰大)的位置。
本发明的技术方案具体介绍如下。
本发明提供一种面向ipv6校园网的wifi信号采集、可视化与故障定位系统,其包括安卓端、服务器端和可视化网页端;其中:
安卓端,获取各个信道上的wifi信号强度,获取定位信息并在地图上显示用户当前所在位置,并将wifi信息和当前位置信息发送给服务器端;
服务器端,接收安卓端和网页端的请求进行数据库操作以及对数据进行分析处理后返回给网页端用于可视化展示;
网页端,基于wifi强度数据,使用热点图技术,采用分不同的wifissid展示和分不同的信道两种方式展示信号强度分布。
本发明中,安卓端使用百度地图软件开发工具包sdk进行定位,并通过注册android系统监听接口捕捉用户步态和方向信息,结合校园内部地图,推断用户当前所在位置;所述校园内部网络利用百度地图软件开发工具包sdk显示。
本发明中,安卓端利用android接口,获取各信道wifi信号强度。
本发明中,安卓端中,androidsdk通过应用程序编程接口api管理设备上的wifi功能,通过api获取设备当前的wifi列表、当前连接速率、信道和ap的mac地址信息,进而捕捉校园内各位置wifi列表、各个wifi的信号强度、所在信道以及各捕捉点的位置信息。
本发明中,服务器端使用node.js的express服务器框架,使用mysql数据库;返回数据时选取较为集中的数据取平均值,去除异常数据,同时筛选不同设备型号、品牌获取的数据和不同时间的数据。异常数据的认定方法如下:获取的wifi信号强度得到的值是一个0到-100的区间值,对于同一时间相同设备型号获取的数据集,统计该数据集的分布情况,通常范围比较集中的数据差值不超过20,取数据范围集中处的数据中值,对数据进行比较,当差值超过20则认为是异常数据。
本发明中,网页端使用echarts结合百度地图绘制校园内部地图上的热力图,用颜色的深浅和不同的颜色表示校园内覆盖的wifi信号强度分布情况,由运维人员在网页端动态添加或者删除wifi的ssid。
和现有技术相比,本发明的有益效果在于:
(1)本系统利用移动设备(如智能手机等)进行wifi信号采集,并提出一套完整的室内定位解决方案,解决了移动设备室内精准定位问题。
(2)本系统针提出一种直观友好的可视化分析和展示方式,解决了各wifi信道数据混杂的问题。
(3)本发明便于运维人员观察校园网的信号强度和干扰情况,及时定位出现无线网络故障(如ap信号弱和干扰大)的位置。
附图说明
图1是系统工作流程。
图2是安卓app模块图。
图3是服务器模块图。
图4是网页端可视化展示模块图。
具体实施方式
下面结合附图和实施例对本发明的技术方案进行详细介绍。
本发明的系统工作流程图见图1。
本发明提供一种面向ipv6校园网的wifi信号采集、可视化与故障定位系统,其包括安卓端、服务器端和可视化网页端,其中,移动设备安卓端获取各个信道上的wifi信号强度,获取定位信息并在地图上显示用户当前所在位置,并将wifi信息和当前位置发送给服务器;服务器端接收移动端和网页端的请求进行数据库操作以及对数据进行分析处理并返回给客户端;网页端即本系统的可视化展示部分,基于wifi强度数据,使用热点图技术,采用分不同的wifissid展示和分不同的信道两种方式展示信号强度分布。具体技术方案如下介绍。
1.安卓端:实现基于androidapp的精准室内定位推断
安卓端模块图如图2所示。
随着智能手机的普及,几乎人人手中都有一台智能手机,通过在用户手机中安装app来获取的定位及无线网络信息具有数据量大且数据真实的特点,同时,获取的只有手机当前所在位置及wifi信息,因此并不会涉及到获取用户隐私数据的问题。系统使用了百度地图sdk进行定位,具有定位精度高、覆盖广、速度快、内存/cpu占用率低等特点,更重要的是百度地图sdk提供室内定位服务,利用三角定位技术、增强wifi指纹模型技术、地磁技术、蓝牙技术等,提供了室内高精度定位服务,同时为了进一步优化室内定位精准度利用android接口,获取各信道wifi信号强度,并通过注册android系统监听接口捕捉用户步态、方向信息等,结合地图,有效推断设备的室内位置。利用android接口,获取各信道wifi信号强度,并通过注册android系统监听接口捕捉用户步态、方向信息等,结合校园地图,有效推断设备的室内位置。同时,利用百度地图sdk显示校园内部地图,帮助用户了解当前所在位置和当前定位精准度。androidsdk提供了api来管理设备上的wifi功能,通过该api我们能获取设备当前的wifi列表、当前连接速率、信道和ap的mac地址等信息。通过以上所述方式,我们能捕捉校园内各位置wifi列表、各个wifi的信号强度、所在信道以及各捕捉点的位置信息。利用这些信息我们就可以在服务器对数据进行处理并发送给网页端进行可视化。
2.服务器端:实现基于express服务器框架提供数据处理和分析
服务器模块图如图3所示。
本系统的服务器端使用node.js的express服务器框架,使用mysql数据库。服务器接收来自移动设备端的定位数据和wifi信息并写入数据库;接收来自网页端的请求,读取数据库中的数据,对数据分析处理后返回。由于接受的数据来自众多移动终端,设备品牌和型号繁杂,因此不同设备获取的数据也会有差异,因此返回总体数据时选取较为集中的数据取平均值,去除差异较大的数据;除此之外,为了显示设备之间的差异性以及校园内wifi强度随时间变化的差异性,筛选不同设备型号、品牌获取的数据和不同时间(按天计算)的数据返回给网页可视化进行差异比较。
3.网页端:实现基于热点图技术的可视化告警
图4是网页端可视化展示模块图。本系统中使用热力图结合校园地图展示wifi强度在校园内的分布情况。由于无法单纯根据wifi覆盖范围或者名称来分辨校园wifi和私设wifi,因此校园网络由运维人员在网页端动态添加或者删除wifi的ssid。在本系统中我们用热力图在校园地图上用颜色的深浅和不同的颜色表示校园内覆盖的wifi信号强度分布情况,通过这种方式可以一目了然的发现校园内wifi异常区域。我们使用echarts结合百度地图绘制校园地图上的热力图,echarts是一个使用javascript实现的开源可视化库,提供了简明易用的方式绘制热力图;由于在移动端获取数据时使用的是百度地图sdk,因此,在可视化的同时使用百度地图作为地理坐标系可视化的效果不会产生位置偏移的情况,符合本系统对定位精准度的要求。
本系统在校园内进行实际测试应用,使用条件为:移动终端必须为安卓操作系统、且由于本系统获取的主要数据是wifi信息和定位信息,因此需要打开wifi功能gps定位;服务器和网页端部署在阿里云服务器,具有公网ip,可随时上传数据或访问。
中间过程:持安装有该系统安卓app的移动设备在校园内行走,采集校园内的wifi信息,上传给服务器。
最终结果:网页端根据移动端采集、经服务器处理过后的数据绘制热力图,红色越深的地方代表wifi信号越强,而颜色越偏蓝色甚至没有颜色的地方代表wifi信号越弱。由分信道展示校园内wifi信号强度的热力图可以观察到在相同信道下的wifi列表,并根据每个wifi在校园内的分布情况可以观察到各wifi间相互干扰的情况。实验结果符合预期,运维人员根据热力图可以直观方便的看出校园内wifi异常点和干扰强度大的地方,提高运维人员的工作效率及省去观察大量数值wifi信号强度列表的时间。