一种wifi网络告警信息控制方法及系统与流程

文档序号:16737589发布日期:2019-01-28 12:44阅读:462来源:国知局
一种wifi网络告警信息控制方法及系统与流程

本申请涉及大规模wifi网络技术领域,尤其涉及一种wifi网络告警信息控制方法及系统。



背景技术:

大规模wifi网络中,告警信息管理是网络日常运行及维护中的一个关键工作,告警信息管理能够实时获取当前wifi网络的运行状态,有利于维护wifi网络的正常运行。通常,告警信息由wifi网络中的无线访问接入点(wirelessaccesspoint,ap设备)或无线访问控制器(wirelessaccesscontroller,ac设备)产生,并上报给服务器中的告警管理系统,以将告警信息实时的展现在网络控制网页的界面中。

实际应用中,当有大量的ap设备将告警信息上报到告警管理系统时,实时告警的网页界面很难保持高性能、持续实时的展现新发生的告警信息。以300个并发连接的场景为例:每次推送100条告警和100个事件,间隔为1秒。每100条告警的长度为75kb,每100条事件长度约为40kb左右。单个连接每秒推送的数据最大可达230kb,如果300并发连接则总数据量是(75+40)kb×300/1024=33.7mb,需要一秒内完成传输,那么带宽则需要33.7mbps×8bit=269.5mbps,严重占用服务器的网络带宽,则造成网络控制网页不能完成每秒一次刷新,影响告警信息的展示

可见,在出现大量ap设备上报告警信息(即告警风暴)时,服务器的网络带宽,服务器的cpu利用率和内存使用量都可能大大升高,最终造成网络控制网页界面出现卡死或者无法响应的现象,影响wifi网络的维护和正常运行。



技术实现要素:

本申请提供了一种wifi网络告警信息控制方法及系统,以解决大规模wifi网络在大量ap设备上报告警信息时,容易出现网络控制网页界面卡死或无法响应的问题。

一方面,本申请提供一种wifi网络告警信息控制方法,包括:

前端页面通过webworker后台任务运行websocket协议通信,将配置信息发送至告警管理服务器,所述配置信息包括告警信息推送频率以及控制队列长度;并和告警服务器建立实时通信;通过前端响应式框架实时渲染服务器推送数据;

所述告警管理服务器根据所述控制队列长度创建阻塞队列;以及,接收ap设备和/或ac设备上报的告警信息;

所述告警管理服务器将所述告警信息添加到所述阻塞队列;

所述告警管理服务器根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息。

可选的,所述阻塞队列为双向链表实现的双向并发队列,同时支持fifo和filo两种操作模式;以及,所述阻塞队列支持可选容量。

可选的,接收ap设备和/或ac设备上报的告警信息的步骤,包括:

所述ap设备和/或ac设备根据实际网络状况生成告警信息;

所述ap设备和/或ac设备将所述告警信息通过gpb封装后,发送至所述告警管理服务器;

所述告警管理服务器在接收到所述告警信息后,通过对比所述告警信息与预设告警类型,检查所述告警信息是否为需要过滤的告警;

如果所述告警信息是需要过滤的告警,删除所述告警信息;

如果所述告警信息不是需要过滤的告警,存储所述告警信息。

可选的,所述告警管理服务器将所述告警信息添加到所述阻塞队列的步骤,包括:

所述告警管理服务器提取所述告警信息中的信息上报时间;

根据所述信息上报时间向所述阻塞队列中添加所述告警信息,以及实时检测所述阻塞队列的剩余容量;

如果所述阻塞队列的剩余容量不足,删除存储在所述阻塞队列尾部的告警信息数据;

将所述信息上报时间为最新的所述告警信息,添加到所述阻塞队列的头部。

可选的,所述配置信息还包括越限告警设置信息;以及在所述告警管理服务器根据所述控制队列长度创建阻塞队列的步骤后,所述方法还包括:

所述告警管理服务器提取所述配置信息中的所述越限告警设置信息;

所述告警管理服务器将所述越限告警设置信息发送给网关模块;

所述网关模块将所述越限告警设置信息,分配至当前wifi网络中的所有所述ap设备和/或ac设备。

可选的,所述方法还包括:

所述ac设备根据capwap协议配置所述ap设备。

可选的,所述告警管理服务器根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息的步骤,包括:

所述告警管理服务器提取所述配置信息中的所述告警信息推送频率;

根据所述告警信息推送频率设定定时程序,以及按照所述告警信息推送频率对应的时间间隔触发推送动作;

在触发推送动作时,从所述阻塞队列中提取全部所述告警信息;

将提取的所述告警信息通过websocket事件推送给所述前端页面。

可选的,所述告警管理服务器根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息的步骤后,所述方法还包括:

所述前端页面通过推模型接收所述告警信息,以及将接收到的所述告警信息存储在本地页面队列;

所述前端页面启动webworker后台进程,按设定频率和数量从所述本地页面队列中提取所述告警信息;

所述页面通过前端响应式框架,将webworker处理后的告警信息显示在所述前端页面。

可选的,所述前端页面将接收到的所述告警信息存储在本地页面队列的步骤,包括:

计算接收到的全部所述告警信息中,每个告警信息所需要占用的数据长度;

对比所述数据长度和所述本地页面队列的长度;

如果所述数据长度大于所述本地页面队列的长度,删除当前数据长度对应的所述告警信息。

另一方面,本申请还提供一种wifi网络告警信息控制系统,包括相互之间建立通信连接的前端页面、告警管理服务器、ap设备以及ac设备;

其中,所述前端页面用于提供用户交互界面,并生成配置信息,所述配置信息包括告警信息推送频率以及控制队列长度;

所述前端页面还用于通过websocket协议将配置信息发送至告警管理服务器;

所述告警管理服务器用于根据所述控制队列长度创建阻塞队列;以及,接收ap设备和/或ac设备上报的告警信息;

所述告警管理服务器还用于将所述告警信息添加到所述阻塞队列,以及根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息;

所述ap设备和所述ac设备,用于提供无线网络服务,以及根据实际网络和设备状况生成告警信息,以及将生成的所述告警信息上报给所述告警管理服务器。

由以上技术方案可知,本申请提供一种wifi网络告警信息控制方法及系统,所述方法先由前端页面将配置信息发送至告警管理服务器,其中配置信息包括告警信息推送频率以及控制队列长度;再通过告警管理服务器根据控制队列长度创建阻塞队列;并在告警管理服务器接收ap设备和/或ac设备上报的告警信息后,将告警信息添加到阻塞队列;最后,告警管理服务器根据告警信息推送频率,定期从阻塞队列向前端页面推送告警信息。所述方法通过控制队列长度和告警信息推送频率,以及使用阻塞队列,共同控制发送至前端页面的告警信息的发送速率和发送数量,在有效降低服务端带宽的同时,保障了前端页面的性能。

附图说明

为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请一种wifi网络告警信息控制方法的流程示意图;

图2为本申请接收ap设备和/或ac设备上报的告警信息的流程示意图;

图3为本申请设置越限告警的流程示意图;

图4为本申请将告警信息添加到所述阻塞队列的流程示意图;

图5为本申请推送告警信息的流程示意图;

图6为本申请前端页面显示告警信息的流程示意图;

图7为本申请存储告警信息在本地页面队列的流程示意图;

图8为本申请一种wifi网络告警信息控制系统的结构示意图。

具体实施方式

下面将详细地对实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下实施例中描述的实施方式并不代表与本申请相一致的所有实施方式。仅是与权利要求书中所详述的、本申请的一些方面相一致的系统和方法的示例。

本申请提供的技术方案中,所述告警信息是指wifi网络中的ap设备和ac设备根据实际网络和设备运行状况参数所生成的警示信息,能够反应当前wifi网络和设备的运行状况。通常告警信息表现为多个字段构成的文本数据。所述告警信息中可以包括多种类型的字段。例如,告警id、告警名称、告警内容、告警来源设备(例如ip/mac/名称)、告警来源设备类型、告警类型、告警级别(例如严重/重要/一般/警告/通知)、原级别、告警状态(例如未确认/已确认/已清除/未清除)、告警发生时间、告警最近一次上报时间、告警次数、告警确认时间、告警确认者、告警清除时间、告警清除者、告警处理方法、可能原因、发送原因、特定原因、转发状态等。显然,为了降低告警信息对应数据所占空间,根据实际关注的不同,可以根据用户需要随意进行设置。

参见图1,为本申请一种wifi网络告警信息控制方法的流程示意图。由图1可知,本申请提供的wifi网络告警信息控制方法,包括以下步骤:

s1:前端页面通过websocket协议将配置信息发送至告警管理服务器,所述配置信息包括告警信息推送频率以及控制队列长度。

实际应用中,前端页面可以为用户提供交互界面,用户可在提供的交互界面中设定进行告警信息推送的频率,以及控制队列长度。在用户设定了告警信息的推送频率以及控制队列长度后,前端页面可以根据推送频率以及控制队列长度生成配置信息。

本申请提供的技术方案中,前端页面(ui)在调用运行时生成取配置信息,在配置信息中可以设置告警管理服务器向页面推送告警信息的推送频率(或推送时间间隔)和队列长度,在创建webscoket连接时将这些参数传递给告警管理服务器。其中,websocket协议,是基于tcp的一种新的网络协议,可以实现浏览器与服务器全双工(full-duplex)通信,即允许服务器主动发送信息给前端页面。

s2:所述告警管理服务器根据所述控制队列长度创建阻塞队列;以及,接收ap设备和/或ac设备上报的告警信息。

告警管理服务器在接收到配置信息后,提取出配置信息中的控制队列长度。实际应用中,前端页面在发送配置信息的同时,也可以带有相应的连接创建请求,告警管理服务器收到连接创建请求后会为该websocket连接创建指定长度的队列,即阻塞队列。本申请中,创建的阻塞队列可以对告警信息进行缓存,能够限制告警信息的数量,避免在出现告警风暴时将告警信息全部推送至前端页面,而且能够对告警信息进行筛分,去除告警信息中的冗余信息。

由于阻塞队列要对新上报的告警信息进行缓存,因此,在本申请的部分实施例中,所述阻塞队列为双向链表实现的双向并发队列,同时支持fifo(firstinputfirstoutput,先入先出队列)和filo(firstinputlastoutput,先入后出队列)两种操作模式。即在实际数据存取过程中,可以分别从队列的头部和尾部实施插入或删除操作。并且,所述阻塞队列支持可选容量,即可以指定队列的容量,以防止数据队列的过度膨胀。另外,该阻塞队列还可以支持线程安全,以保证多线程的同步性能。

在告警管理服务器创建了阻塞队列以后,告警管理服务器开始接收ap设备和/或ac设备上报的告警信息。

进一步地,如图2所示,接收ap设备和/或ac设备上报的告警信息的步骤中,还包括以下步骤:

s201:所述ap设备和/或ac设备根据实际网络状况生成告警信息;

s202:所述ap设备和/或ac设备将所述告警信息通过gpb封装后,发送至所述告警管理服务器;

s203:所述告警管理服务器在接收到所述告警信息后,通过对比所述告警信息与预设告警类型,检查所述告警信息是否为需要过滤的告警;

s204:如果所述告警信息是需要过滤的告警,删除所述告警信息;

s205:如果所述告警信息不是需要过滤的告警,存储所述告警信息。

本实施例中,ap设备作为wifi网络的无线接入点,能够实时检测网络和设备状况,并判断出是否出现异常,从而生成告警信息。ac设备作为ap设备的控制点可以直接检测所在支路上的网络状况,并判断出是否出现异常,也生成告警信息。在ap设备和/或ac设备生成告警信息后,可将告警信息通过gpb封装后,发送给告警管理服务器。通过gpb封装后的告警信息可以直接被告警管理服务器处理。

告警管理服务器在接收到告警信息后,可先对告警信息进行检查,去除其中需要过滤的告警信息。实际应用中,可以在告警管理服务器中内置信息过滤程序,并在过滤程序中指定被过滤的信息的类型。例如,当前用户不关注网络拥堵情况的告警信息时,可以将在过滤程序中指定关于拥堵情况的参数字段为特定值。当告警服务器接收到告警信息时,可以先读取相应的字段内容,当参数字段为设定的特定值时,丢弃该告警信息。

本实施例中,通过告警管理服务器,可以对接收到的告警信息进行过滤,从而使推送到前端页面的告警信息大大减少。在出现告警风暴时,能够有效控制发送给前端页面的告警数量,避免前端页面出现卡死现象。

另外,本实施例中,如果所述告警信息不是需要过滤的告警,可以将所述告警信息进行存储。因此,还可以在存储告警信息前,对告警信息进行处理,将告警信息的内容进行丰富,如进行一般性的计算等,以便获得更多用于后续分析的参数值。

在本申请的部分实施例中,所述配置信息还包括越限告警设置信息,用于约束ap设备和/或ac设备上报的告警信息。如图3所示,在所述告警管理服务器根据所述控制队列长度创建阻塞队列的步骤后,所述方法还包括以下步骤:

s206:所述告警管理服务器提取所述配置信息中的所述越限告警设置信息;

s207:所述告警管理服务器将所述越限告警设置信息发送给网关模块;

s208:所述网关模块将所述越限告警设置信息,分配至当前wifi网络中的所有所述ap设备和/或ac设备。

本实施例中,通过越限告警设置,可以在每一个ap设备或ac设备中内置越限告警,从而使ap设备或ac设备在生成告警信息时,生成指定类型的告警信息,或者限制每个ap设备或ac设备生成告警信息的频率,减小出现告警风暴的可能性。进一步地,所述方法还包括:

s209:所述ac设备根据capwap协议配置所述ap设备;以及在capwap协议下,根据所述越限告警设置信息对所述ap设备上报的告警信息进行监控。

即在本实施例中,可以通过ac设备控制ap设备的告警信息生成过程,包括在配置ap设备时内置越限告警设置,以及根据所述越限告警设置信息对所述ap设备上报的告警信息进行监控,避免ap设备频繁生成告警信息。

s3:所述告警管理服务器将所述告警信息添加到所述阻塞队列。

本申请提供的技术方案中,当告警管理服务器接收到告警信息后,将接收到的告警信息先缓存到阻塞队列中。由于阻塞队列是根据配置信息中指定的控制队列长度创建的,因此阻塞队列的长度需要与控制队列长度相适应。也就使得警告管理服务器在后续信息的推送过程中,每次推送的信息长度都小于或等于阻塞队列的长度。

进一步地,如图4所示,所述告警管理服务器将所述告警信息添加到所述阻塞队列的步骤,还包括以下步骤:

s301:所述告警管理服务器提取所述告警信息中的信息上报时间;

s302:根据所述信息上报时间向所述阻塞队列中添加所述告警信息,以及实时检测所述阻塞队列的剩余容量;

s303:如果所述阻塞队列的剩余容量不足,删除存储在所述阻塞队列尾部的告警信息数据;

s304:将所述信息上报时间为最新的所述告警信息,添加到所述阻塞队列的头部。

实际应用中,当wifi网络出现运行状况时,会由ap设备或ac设备不断产生告警信息,其产生的告警信息中,最新的信息更加具有实际分析价值。因此,在本实施例中,如果上报的告警信息数量较多时,可以通过实时检测阻塞队列的剩余容量,并且在阻塞队列的剩余容量不足时,删除存储在所述阻塞队列尾部的告警信息数据,并将所述信息上报时间为最新的所述告警信息,添加到所述阻塞队列的头部,以便从阻塞队列中提取的告警信息永远是最新的。

s4:所述告警管理服务器根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息。

实际应用中,在阻塞队列中存储了接收的告警信息后,告警管理服务器可以根据告警信息推送频率,分批次向前端页面推送告警信息,以便前端页面对告警信息进行显示。具体地,如图5所示,所述告警管理服务器根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息的步骤,包括以下步骤:

s401:所述告警管理服务器提取所述配置信息中的所述告警信息推送频率;

s402:根据所述告警信息推送频率设定定时程序,以及按照所述告警信息推送频率对应的时间间隔触发推送动作;

s403:在触发推送动作时,从所述阻塞队列中提取全部所述告警信息;

s404:将提取的所述告警信息通过websocket事件推送给所述前端页面。

本申请提供的技术方案中,通过阻塞队列,可以将接收到的告警信息进行缓存,使每次推送给前端页面的告警信息数量和大小维持在相对稳定的水平,以便减轻前端页面的处理压力,避免出现卡死现象。另外,由于采用了阻塞队列以及设定告警信息推送频率,每次推送告警信息推送过程所需要的最大带宽是恒定的,因此,告警信息的推送过程不会占用大量的网络带宽。综上所述,本申请通过控制队列大小和推送时间间隔,并使用阻塞队列算法,使得到达前端页面的告警信息数量得到了最大的控制。从而降低了前端页面的性能压力,并且有效的实现了对带宽资源的利用。

仍以300个并发连接的场景为例:每次推送100条告警和100个事件,间隔为1秒。每100条告警的长度为75kb,每100条事件长度约为40kb左右。单个连接每秒推送的数据最大可达230kb,如果300并发连接则总数据量是(75+40)kb×300/1024=33.7mb,需要一秒内完成传输,那么带宽则需要33.7mbps×8bit=269.5mbps,严重占用服务器的网络带宽。

本申请中在使用阻塞队列缓冲控制推送数量和推送间隔后,其所需的带宽会大大减小。但如果所需带宽仍较大时,本申请还可以进一步缩减告警和事件字段,对非重要信息自动在实时告警展示页面不显示,通过减少字段减少需要传输的数据量。

另外,本申请还可以通过控制按需推送,即只有真正使用了该前端页面,在前台处于激活状态时才进行数据推送,其他状态均不推送具体数据,可以只推送告警信息的数字。以300登录用户为例,其中20%用户关注实时告警界面,那么整体所需带宽将大幅减少。即通过以上控制手段可以将带宽控制在:269.5/2×0.2=26.95mbps。在实际使用时可以进一步控制队列大小和时间间隔来调整发送给前端页面的数据量大小。

如果不进行上述控制,整个wifi网络的服务器端所需的带宽资源将会很大,并且如果不控制发送数据量的大小,前端页面在告警信息量大(尤其是告警风暴)时,以1万个设备为例,同时产生告警和事件,则每秒告警加上事件每秒2万条,超过11mb(100条告警+100个事件约115kb,1万个设备告警风暴按每个设备每秒产生1个告警,1个事件计算,10000/100×115kb/1024=11.23mb)的数据,前面页面将直接卡住,无法进行对应的渲染和展现。

在本申请的部分实施例中,如图6所示,所述告警管理服务器根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息的步骤后,所述方法还包括以下步骤:

s501:所述前端页面通过推模型接收所述告警信息,以及将接收到的所述告警信息存储在本地页面队列;

s502:所述前端页面启动页面显示渲染进程,按设定频率和数量从所述本地页面队列中提取所述告警信息;

s503:所述页面显示渲染进程终端响应式框架对所述告警信息进行渲染,以及将渲染后的所述告警信息显示在所述前端页面。

本实施例中,前端页面通过推模型接收用于实时响应的告警信息数据,并通过终端响应式框架实时渲染前端页面,可以减少终端流量,实现终端的实时响应。此外,本实施例中,还可以采用rx做推模型数据延迟缓存,从而有效过滤告警信息,保证前端页面在大数据高并发下的流畅性能。

进一步地,如图7所示,将接收到的所述告警信息存储在本地页面队列的步骤,还包括以下步骤:

s5011:计算接收到的全部所述告警信息中,每个告警信息所需要占用的数据长度;

s5012:对比所述数据长度和所述本地页面队列的长度;

s5013:如果所述数据长度大于所述本地页面队列的长度,删除当前数据长度对应的所述告警信息。

本实施例中,通过对每个告警信息所占数据的长度进行判断,从而进一步过滤掉容易造成前端页面卡顿的告警信息,维持前端页面的运行流畅度。

基于上述wifi网络告警信息控制方法,如图8所示,本申请还提供一种wifi网络告警信息控制系统,包括相互之间建立通信连接的前端页面1、告警管理服务器2、ap设备以及ac设备;

其中,所述前端页面1用于提供用户交互界面,并生成配置信息,所述配置信息包括告警信息推送频率以及控制队列长度;

所述前端页面1还用于通过websocket协议将配置信息发送至告警管理服务器2;

所述告警管理服务器2用于根据所述控制队列长度创建阻塞队列;以及,接收ap设备和/或ac设备上报的告警信息;

所述告警管理服务器2还用于将所述告警信息添加到所述阻塞队列,以及根据所述告警信息推送频率,定期从所述阻塞队列向所述前端页面推送所述告警信息;

所述ap设备和所述ac设备,用于提供无线网络服务,以及根据实际网络和设备状况生成告警信息,以及将生成的所述告警信息上报给所述告警管理服务器。

由以上技术方案可知,本申请提供一种wifi网络告警信息控制方法及系统,所述方法先由前端页面将配置信息发送至告警管理服务器,其中配置信息包括告警信息推送频率以及控制队列长度;再通过告警管理服务器根据控制队列长度创建阻塞队列;并在告警管理服务器接收ap设备和/或ac设备上报的告警信息后,将告警信息添加到阻塞队列;最后,告警管理服务器根据告警信息推送频率,定期从阻塞队列向前端页面推送告警信息。所述方法通过控制队列长度和告警信息推送频率,以及使用阻塞队列,共同控制发送至前端页面的告警信息的发送速率和发送数量,在有效降低服务端带宽的同时,保障了前端页面的性能。

本申请提供的实施例之间的相似部分相互参见即可,以上提供的具体实施方式只是本申请总的构思下的几个示例,并不构成本申请保护范围的限定。对于本领域的技术人员而言,在不付出创造性劳动的前提下依据本申请方案所扩展出的任何其他实施方式都属于本申请的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1