CN105610605A - 一种消息反向推送、网管***报警及状态更新的方法 - Google Patents

一种消息反向推送、网管***报警及状态更新的方法 Download PDF

Info

Publication number
CN105610605A
CN105610605A CN201510949245.3A CN201510949245A CN105610605A CN 105610605 A CN105610605 A CN 105610605A CN 201510949245 A CN201510949245 A CN 201510949245A CN 105610605 A CN105610605 A CN 105610605A
Authority
CN
China
Prior art keywords
message
service
socket
length
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510949245.3A
Other languages
English (en)
Other versions
CN105610605B (zh
Inventor
***
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Guangda Hengji Communication Technology Co., Ltd
Original Assignee
Chengdu Guangda New Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Guangda New Network Technology Co Ltd filed Critical Chengdu Guangda New Network Technology Co Ltd
Priority to CN201510949245.3A priority Critical patent/CN105610605B/zh
Publication of CN105610605A publication Critical patent/CN105610605A/zh
Application granted granted Critical
Publication of CN105610605B publication Critical patent/CN105610605B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及监控领域,尤其是一种消息反向推送、网管***报警及状态更新的方法<b>。</b>本发明针对现有技术存在的问题,提供消息反向推送、网管***报警及状态更新的方法,通过浏览器中的FLEX插件与服务端建立SOCKET连接,实现了服务器向浏览器反推送消息的方法,提升并发处理推送消息的性能。本发明中浏览器客户端的flex插件根据服务器返回的安全策略文件中描述的访问权限,向服务器发送Socket连接请求,服务端收到客户端的连接请求后与客户端建立socket连接;当服务器接收到更新消息后,将更新消息推送给浏览器客户端;浏览器客户端通过消息解析模块进行消息解析;解析后的业务消息数据通过回调模块,完成页面效果的渲染。

Description

一种消息反向推送、网管***报警及状态更新的方法
技术领域
本发明涉及监控领域,尤其是一种消息反向推送、网管***报警及状态更新的方法。
背景技术
传统的web应用工作模式是浏览器客户端发送请求(request),服务器端根据请求进行相关业务处理然后返回响应(response),在这种模式中存在一个重大的缺陷,那就是客户端要获取最新的数据就必须向服务器发送一次更新页面请求,服务器才会将相关数据返回,但这些数据可能是历史数据,也有可能是最新接收到的数据。为了获取到实时数据,用户只能通过轮询的方式频繁的向服务器发送页面请求,基于这种方式,客户端和服务器对于频繁的发送请求和返回响应都有一定的性能消耗,且获取数据的过程是有一定的时间延迟,对于高频率更新页面的应用来说这是无法接受的,在这种情况下,为了能让用户通过web获取实时数据,提高用户体验,相关的服务端向浏览器推送的技术便适应时代的需要而产生了。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种消息反向推送、网管***报警及状态更新的方法。本发明基于浏览器中的FLEX插件,与服务端建立SOCKET连接,实现了服务器向浏览器推送消息的功能,采用这种结构的实现方式有效解决了服务器推送消息的及时性、稳定性,提升了***并发处理推送消息的性能。在网管服务器应用中采用该技术,服务端采用MINA框架,实现了对数据实时性要求较高的应用功能,如实时告警监控,设备状态信息的实时变更,任务执行过程的实时查看等,满足了网管维护人员对相关信息及时性的要求,提升了网络维护质量。
本发明采用的技术方案如下:
一种消息反向推送的方法包括:
步骤1:浏览器客户端与服务器首次建立连接时,封装在浏览器客户端中的flex插件,会先向服务端发送一个用于请求安全策略文件的字符串,服务端接收到这个字符串后,给浏览器中的flex插件返回安全策略文件;
步骤2:浏览器客户端的flex插件根据服务器返回的安全策略文件中描述的访问权限,再次向服务器发送Socket连接请求,服务端收到客户端的连接请求后,与客户端建立socket连接;
步骤3:当服务器接收到更新消息后,将更新消息推送给浏览器客户端,服务端与浏览器客户端中flex插件之间通过socket连接收发消息;浏览器客户端通过消息解析模块进行消息解析;
步骤4:消息解析模块将解析后的数据通过回调模块,进行事件函数的回调操作,完成页面效果的渲染。
进一步的,所述步骤3中浏览器客户端通过消息解析模块进行消息解析具体包括:
步骤31:消息格式为Socket传输消息数据头+数据长度值+业务消息头+业务消息数据体;其中Socket传输消息数据头包括Socket传输消息的协议编号以及Socket传输消息数据体的总体长度;业务消息头包括请求标识SessionId长度、业务标识BusinessId长度以及业务数据BusinessData长度;所述业务消息数据体包括请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData;
步骤32:消息解析模块截取Socket传输消息数据头,从Socket传输消息数据头中获取Socket传输消息数据体的总体长度,根据该总体长度值,截取出业务消息数据体;
步骤33:业务消息头长度是固定长度:12个字节,消息解析模块根据固定的业务消息头长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度以及BusinessData长度;
步骤34:根据HttpSessionId长度、BusinessId长度以及BusinessData长度分别从业务消息数据体中,截取出请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData,并将其传递至回调模块。
进一步的,所述步骤4具体包括:消息解析模块将解析完成的请求标识HttpSessionId、业务标识BusinessId、业务数据BusinessData传递给回调模块,回调模块根据推送消息的业务标识BusinessId,找到注册该业务标识对应的JavaScript事件函数,再将业务数据BusinessData传递给JavaScript事件函数,进行事件函数的回调操作,完成页面效果的渲染。
一种网管***告警控制方法包括:
步骤111:用户通过浏览器客户端访问网管服务器,浏览器客户端中flex插件向网管服务器请求安全策略文件;网管服务器收到请求安全策略文件的命令后,给浏览器中的flex插件返回安全策略文件;
步骤112:浏览器客户端中的flex插件根据安全策略文件中的访问权限,再次请求服务端建立socket连接;网管服务器收到连接请求后,与浏览器中的flex插件建立socket连接,并记录连接请求标识与socket连接标识的映射关系。
步骤113:网管服务器接收到所管理的网络设备的告警信息,网管服务器的告警模块对告警信息进行汇总处理,获得某一时段各告警级别对应的告警数量,网管服务器的告警模块调用MINAsocket服务模块;
步骤114:MINAsocket服务模块接收到告警模块的告警消息推送命令后,将各告警级别以及对应的告警数量作为业务数据封装成告警消息格式,并根据不同的推送方式,完成告警消息的推送操作:如果推送方式是是广播方式,则MINAsocket服务模块获取所有浏览器客户端的socket连接标识,逐一完成推送;如果推送方式是点对点方式,则MINAsocket服务模块根据推送的连接请求标识、连接请求标识与socket连接标识的映射关系,找到socket连接标识,将告警数量消息推送给相应建立socket连接标识的浏览器客户端,完成告警消息推送;
步骤115:客户端浏览器中消息解析模块接收到网关服务器的MINAsocket服务模块推送的告警消息后,通过消息解析模块对告警消息进行解析,获得业务标识及业务数据;
步骤116:然后客户端浏览器中回调模块根据业务标识,得到需要回调的JavaScript函数,将业务数据作为参数,传递给该JavaScript函数,完成函数调用操作。
进一步的,所述步骤115具体步骤包括:
步骤1151:浏览器客户端的解析模块接收到服务端封装的告警消息,
步骤:1152:告警消息格式为Socket传输消息数据头+数据长度值+业务消息头+业务消息数据体;其中Socket传输消息数据头包括Socket传输消息的协议编号以及Socket传输消息数据体的总体长度;业务消息头包括请求标识SessionId长度、业务标识BusinessId长度以及业务数据BusinessData长度;所述业务消息数据体包括请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData;
步骤1153:解析模块截取Socket传输消息数据头,Socket传输消息数据头中获取Socket传输消息数据体的总体长度,根据该总体长度值,截取出业务消息数据体;
步骤1154:业务消息头长度是固定长度:12个字节,解析模块根据固定的业务消息头长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度以及BusinessData长度;
步骤1155:解析模块根据HttpSessionId长度、BusinessId长度以及BusinessData长度分别从业务消息数据体中,截取出请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData,并将其传递至回调模块,其中业务数据指的得是各告警级别以及对应的告警数量。
进一步的,所述步骤116具体步骤包括:端浏览器中回调模块对获得的业务标识进行逻辑判断,业务标识BusinessId的取值有两种:一是刷新告警列表,二是语音播报新增告警,如果该业务标识为刷新告警,则调用刷新告警页面的JavaScript函数,完成页面的实时刷新,如果是语音播报新增告警,则调用语音播报的JavaScript函数,将解析出各告警级别以及对应的告警数量做为参数,传递给语音播报的JavaScript函数,进行该函数回调,完成新增告警语音播报的操作。
一种网管***设备在线状态更新的方法包括:
步骤1111:用户通过浏览器客户端访问网管服务器,浏览器客户端中flex插件向网管服务器请求安全策略文件;网管服务器收到请求安全策略文件的命令后,给浏览器中的flex插件返回安全策略文件;
步骤:1112:浏览器客户端中的flex插件根据安全策略文件中的访问权限,再次请求服务端建立socket连接;网管服务器收到连接请求后,与浏览器中的flex插件建立socket连接,并记录连接请求标识与socket连接标识的映射关系;
步骤1113:网管服务器实时探测网络设备是否在线,当探测完成后,网管服务器的设备管理模块得到某个时间点各网络设备的在线状态,然后与上一时刻保存的网络设备在线状态进行比较,获得在线状态发生变化的网络设备编号;最后网管服务器的设备管理模块调用MINAsocket服务模块,
步骤1114:MINAsocket服务接收到设备管理模块的设备状态更新推送命令后,将设备管理模块将在线状态发生变化的网络设备编号消息作为业务数据封装成统一的设备状态更新消息格式,并根据不同的推送方式,完成设备状态更新消息的推送操作;如果推送方式是广播方式,则MINAsocket服务模块获取所有浏览器客户端的socket连接标识,逐一完成推送;如果推送方式是点对点方式,则MINAsocket服务模块根据推送的连接请求标识、连接请求标识与socket连接标识的映射关系,找到socket连接标识,将设备状态更新消息推送给相应建立socket连接标识的浏览器客户端,完成设备状态更新消息推送;
步骤1115:客户端浏览器中数据解析模块接收到网管服务器推送的消息后,对消息进行解析,获得业务标识以及发生在线状态变更的网络设备;
步骤1116:然后客户端浏览器中回调模块根据消息类型,得到需要回调的JavaScript函数,然后将消息中的发生在线状态变更的设备,作为参数,传递给该JavaScript函数,完成函数调用操作。
进一步的,所述步骤1115具体步骤包括:
步骤11151:浏览器客户端的解析模块接收到网关服务端封装的设备状态更新消息;设备状态更新格式为Socket传输消息数据头+数据长度值+业务消息头+业务消息数据体;其中Socket传输消息数据头包括Socket传输消息的协议编号以及Socket传输消息数据体的总体长度;业务消息头包括请求标识SessionId长度、业务标识BusinessId长度以及业务数据BusinessData长度;所述业务消息数据体包括请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData;
步骤11152:解析模块截取Socket传输消息数据头,Socket传输消息数据头中获取Socket传输消息数据体的总体长度,根据该总体长度值,截取出业务消息数据体;
步骤11153:业务消息头长度是固定长度:12个字节,消息解析模块根据固定的业务消息头长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度以及BusinessData长度;
步骤11154:消息解析模块根据HttpSessionId长度、BusinessId长度以及BusinessData长度分别从业务消息数据体中,截取出请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData,并将其传递至回调模块,其中业务数据指的得是在线状态变化的网络设备编号。
进一步的,所述步骤1116具体步骤包括:浏览器客户端回调模块对获得业务标识BusinessId进行逻辑判断,业务标识BusinessId的取值有两种:一是更新资产树,二是更新拓扑图;如果业务标识为更新资产树时,则将解析出具体的发生在线状态变更的网络设备编号做为参数,传递给语音播报的JavaScript函数,进行函数回调;如果业务标识为更新拓扑图,则将解析出的具体的发生在线状态变更的网络设备编号做为参数,传递给更新拓扑图的JavaScript函数,进行函数回调,完成资产树上设备在线状态的变更。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1)能和服务端实时通信,服务端消息推送到浏览器后,通过Flex插件回调JavaScript事件函数的方式改变页面显示效果,实时性得到了保证,及时性好。
2)本发明基于浏览器中的FLEX插件,与服务端建立SOCKET长连接,服务端采用MINA框架,实现了服务器向浏览器推送消息的功能,采用这种结构的实现方式有效解决了服务器推送消息的及时性、稳定性,提升了***并发处理推送消息的性能。
3)在网管应用中采用该技术,实现了对数据实时性要求较高的应用功能,如实时告警监控,设备状态信息的实时变更,任务执行过程的实时查看等,满足了网管维护人员对相关信息及时性的要求,提升了网络维护质量。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书(包括任何附加权利要求、摘要)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
本发明相关说明:
1、策略文件的作用是设置浏览器中的flex插件访问服务器的域名权限(或者ip),访问服务器的端口权限。
2、本消息推送技术一是FLEX提供了Socket连接服务,浏览器客户端与服务器建立连接后,服务器利用Socket向浏览器发送数据;二是JavaScript与FLEX的紧密结合,JavaScript与FLEX可以相互调用。
3、消息格式解释如下:
Tag:表示Socket传输消息的协议编号(此处值固定),占4个字节;
数据长度:Socket传输消息数据体的总体长度,占4个字节,值大于等于12;
HttpSessionId长度:记录HttpSessionId的二进制码长度,占4个字节;
BusinessId长度:记录BusinessId的二进制码长度,占4个字节;
BusinessData长度:记录BusinessData的二进制码长度,占4个字节;
HttpSessionId:用户浏览器登录对应的HttpSeeeion编号,二进制码值;
BusinessId:应用中发送消息时具体功能业务编号,二进制码值;
BusinessData:应用中发送消息时具体功能业务数据,二进制码值。
工作原理:在浏览器客户端第一次发送请求与服务器建立连接后,服务器在返回数据的同时就把当前的连接一直保持打开状态,当服务器以后每次接收到新的数据时就立即通过这个连接返回给客户端,客户端解释响应数据并展示在用户界面上。具体包括浏览器中的Flex插件实现了SOCKET连接服务,这使得运行flashPlayer的计算机可以与服务器进行通信,然后完成服务器的消息推送功能。采用的方法是网页中嵌入一个FLEX程序,客户端脚本(JavaScript)将改变页面的事件注册到FLEX插件中,FLEX在接收到服务器推送的消息后,调用注册的JAVASCRIPT事件,控制HTML的Dom(文控对象模型)来改变页面的内容显示,而达到服务器主动推送到客户端的效果,***结构见所示。三是服务端采用了MINA框架,提升了大数据量的并发处理能力及***稳定性。
具体实施例:
1、浏览器客户端与服务端建立socket连接,建立连接的过程包括以下步骤:首先封装在浏览器中的flex插件,会先向服务端的843端口(该端口可配置)发送一个字符串“<policy-file-request/>”,请求安全策略文件,服务端接收到这个字符串后,直接按照XML格式返回安全策略文件;
客户端根据服务端返回的安全策略文件中描述的访问权限,再次向服务端发送连接请求,该连接请求包括请求标识、服务端IP、端口号,服务端收到客户端的连接请求后,服务器端保存客户端的连接请求标识,与客户端建立socket长连接,至此完成与浏览器服务器连接建立,连接建立过程所示。
2、消息的接收:完成对服务端推送消息的接收,接收到推送消息后,将消息移交至消息解析模块进行处理。消息的解析:服务端与浏览器客户端中flex插件之间通过socket连接收发的消息种类很多,为方便对消息的统一处理,定义了一套标准的消息格式,所有的收发消息必须是该格式,该模块就是对服务端推送的消息进行指定格式的解析。具体消息格式是按照后续消息格式进行,Socket传输消息数据头+数据长度值+业务消息头(HttpSessionId长度+BusinessId长度+BusinessData长度)+业务消息数据体(HttpSessionId+BusinessId+BusinessData),解析规则如下:首先截取Socket传输消息数据头,从数据头中,获取传输消息数据体的总体长度,根据该长度,截取传输消息数据体,对该数据体进一步进行解析,根据指定长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度、BusinessData长度,再根据这些长度,分别从业务消息数据体中,截取出HttpSessionId、BusinessId、BusinessData,截取出这些值后,将这些值传递至回调JavaScript函数处理模块,进行JavaScript函数回调处理
4、浏览器客户端回调模块:该模块由两个部分组成,一是负责注册业务功能指定的JavaScript事件函数,注册是在浏览器器加载页面时完成的,注册的内容包括业务标识,回调的JavaScript事件函数;二是负责对注册的JavaScript事件函数进行回调,回调过程如下:flex插件接收到服务端推送的消息后,进行消息解析,将解析完成的HttpSessionId(请求标识)、BusinessId(业务标识)、BusinessData(业务数据)传递给本模块,本模块根据推送消息的BusinessId(业务标识),找到注册该业务标识对应的JavaScript事件函数,再将BusinessData(业务数据)传递给JavaScript事件函数,进行事件函数的回调操作,完成页面效果的渲染;
其中回调模块包括两个功能,一是负责注册业务功能指定的JavaScript事件函数,注册是在浏览器器加载页面时完成的,注册的内容包括业务标识,回调的JavaScript事件函数;二是负责对注册的JavaScript事件函数进行回调,回调过程如下:flex插件接收到服务端推送的消息后,进行消息解析,将解析完成的HttpSessionId(请求标识)、BusinessId(业务标识)、BusinessData(业务数据)传递给本模块,本模块根据推送消息的BusinessId(业务标识),找到注册该业务标识对应的JavaScript事件函数,再将BusinessData(业务数据)传递给JavaScript事件函数,进行事件函数的回调操作,完成页面效果的渲染。
实施例二:
服务器向浏览器消息推送是一种用户体验较好的业务模式,可根据不同的业务要求,对推送消息进行实时、多样的展示,在网管***中,充分利用了该消息推送技术,完成了各类业务功能,较好满足了网络管理人员对网络的维护要求。
实时告警监控
实时告警监控的主要功能是对***内所管理设备产生的告警信息进行实时呈现,方便网络维护人员对网络故障进行定位及处理,当某一设备产生了新告警,或者是区域分组下的设备告警级别发生了变化,***内的不同功能页面都应该能及时反映这种变化,方便网络维护人员进行故障发现处理。是发生告警后的推送流程,服务器采集到告警信息后,进行告警业务过程处理,将总告警数量的变化消息、实时告警列表变化的消息、区域/分组告警级别变更等消息推送给浏览器客户端,客户端收到该消息后,根据用户访问的不同页面进行页面内容的变更处理。具体实现过程:
1)用户通过浏览器访问网管***,登录成功后,浏览器中flex插件会向服务端请求安全策略文件。
2)网管服务器收到请求安全策略文件的命令后,给浏览器中的flex插件返回安全策略文件。
3)浏览器中的flex插件根据安全策略文件中的权限约束,再次请求服务端建立socket连接。
4)网管服务器收到连接请求后,与浏览器中的flex插件建立socket连接,并记录连接请求标识与socket连接标识的映射关系。
5)网管服务器接收到管理设备的告警信息,告警模块对告警进行汇总处理,获得某一时段各告警级别下的告警数量,调用MINAsocket服务模块(通过MINAsocket服务实现),告诉该服务需要将数据推送给哪些浏览器的请求标识。告警模块通过MINAsocket服务模块将告警数量推送给浏览器客户端的方式有两种:第一种是广播方式推送,即通过MINAsocket服务模块,将告警数量消息推送给所有与网管服务器建立socket连接的浏览器客户端;第二种是点对点推送,即将告警数量消息以及socket连接请求标识,通过MINAsocket服务推送给与指定的建立了socket连接的浏览器客户端。如果使用广播方式(第一种)进行消息推送,告警模块只需要将要推送的告警消息传递给MINAsocket服务,如果使用点对点方式(第二种)进行消息推送,告警模块需要将要推送的告警消息,以及需要推送的连接请求标识传递给MINAsocket服务。;
6)MINAsocket服务,接收到告警模块的推送命令后,将推送消息封装成统一的消息格式,并获取推送的请求标识,找到socket连接标识,完成告警消息推送的操作。
7)客户端浏览器中flex插件接收到服务器端推送的消息后,对告警消息进行解析(解析具体过程是:浏览器客户端通过消息解析模块进行消息解析具体包括:步骤31:收发消息格式为Socket传输消息数据头+数据长度值+业务消息头+业务消息数据体;其中Socket传输消息数据头包括Socket传输消息的协议编号以及Socket传输消息数据体的总体长度;业务消息头包括请求标识SessionId长度、业务标识BusinessId长度以及业务数据BusinessData长度;所述业务消息数据体包括请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData;步骤32:截取Socket传输消息数据头,Socket传输消息数据头中获取Socket传输消息数据体的总体长度,根据该总体长度值,截取出业务消息数据体;步骤33:业务消息头长度是固定长度:12个字节,根据固定的业务消息头长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度以及BusinessData长度;步骤34:根据HttpSessionId长度、BusinessId长度以及BusinessData长度分别从业务消息数据体中,截取出请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData,并将其传递至回调模块),获得告警消息类型,及具体的告警消息,然后根据消息类型,得到需要回调的JavaScript函数,将具体的告警消息,作为参数,传递给该JavaScript函数,完成函数调用操作。
8)浏览器的页面将JavaScript函数实现的方法,完成页面的渲染,达到告警数据的准确展示及提示操作用户有新增告警的目的。
实施例三:
1)用户通过浏览器访问网管***,登录成功后,浏览器中flex插件会向服务端请求安全策略文件。
2)网管服务器收到请求安全策略文件的命令后,给浏览器中的flex插件返回安全策略文件。
3)浏览器中的flex插件根据安全策略文件中的权限约束,再次请求服务端建立socket连接。
4)网管服务器收到连接请求后,与浏览器中的flex插件建立socket连接,并记录连接请求标识与socket连接标识的映射关系。
5)网管采集服务器会实时探测管理设备是否在线,探测完成后,会得到某个时间点各设备的上下线状态,然后调用MINAsocket服务,告诉该服务需要将数据推送给哪些浏览器的请求标识。
6)MINAsocket服务,接收到该业务模块的推送命令后,将推送消息封装成统一的消息格式,并获取推送的请求标识,找到socket连接标识,完成设备上下线消息推送的操作。
7)客户端浏览器中flex插件接收到服务器端推送的消息后,对消息进行解析,获得消息类型,根据消息类型,得到需要回调的JavaScript函数,然后将消息中的各设备的上下线,作为参数,传递给该JavaScript函数,完成函数调用操作。
8)浏览器的页面将JavaScript函数实现的方法,完成页面的渲染,达到设备上下线状态的准确展示及提示操作用户设备状态变更的目的。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。

Claims (9)

1.一种消息反向推送的方法,其特征在于包括:
步骤1:浏览器客户端与服务器首次建立连接时,封装在浏览器客户端中的flex插件,会先向服务端发送一个用于请求安全策略文件的字符串,服务端接收到这个字符串后,给浏览器中的flex插件返回安全策略文件;
步骤2:浏览器客户端的flex插件根据服务器返回的安全策略文件中描述的访问权限,再次向服务器发送Socket连接请求,服务端收到客户端的连接请求后,与客户端建立socket连接;
步骤3:当服务器接收到更新消息后,将更新消息推送给浏览器客户端,服务端与浏览器客户端中flex插件之间通过socket连接收发消息;浏览器客户端通过消息解析模块进行消息解析;
步骤4:消息解析模块将解析后的数据通过回调模块,进行事件函数的回调操作,完成页面效果的渲染。
2.根据权利要求1所述的一种消息反向推送的方法,其特征在于所述步骤3中浏览器客户端通过消息解析模块进行消息解析具体包括:
步骤31:消息格式为Socket传输消息数据头、数据长度值、业务消息头以及业务消息数据体;其中Socket传输消息数据头包括Socket传输消息的协议编号以及Socket传输消息数据体的总体长度;业务消息头包括请求标识SessionId长度、业务标识BusinessId长度以及业务数据BusinessData长度;所述业务消息数据体包括请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData;
步骤32:消息解析模块截取Socket传输消息数据头,从Socket传输消息数据头中获取Socket传输消息数据体的总体长度,根据该总体长度值,截取出业务消息数据体;
步骤33:消息解析模块根据固定的业务消息头长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度以及BusinessData长度;
步骤34:根据HttpSessionId长度、BusinessId长度以及BusinessData长度分别从业务消息数据体中,截取出请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData,并将其传递至回调模块。
3.根据权利要求2所述的一种消息反向推送的方法,其特征在于所述步骤4消息解析模块将解析完成的请求标识HttpSessionId、业务标识BusinessId、业务数据BusinessData传递给回调模块,回调模块根据推送消息的业务标识BusinessId,找到注册该业务标识对应的JavaScript事件函数,再将业务数据BusinessData传递给JavaScript事件函数,进行事件函数的回调操作,完成页面效果的渲染。
4.一种网管***告警控制方法,其特征在于包括:
步骤111:用户通过浏览器客户端访问网管服务器,浏览器客户端中flex插件向网管服务器请求安全策略文件;网管服务器收到请求安全策略文件的命令后,给浏览器中的flex插件返回安全策略文件;
步骤112:浏览器客户端中的flex插件根据安全策略文件中的访问权限,再次请求服务端建立socket连接;网管服务器收到连接请求后,与浏览器中的flex插件建立socket连接,并记录连接请求标识与socket连接标识的映射关系;
步骤113:网管服务器接收到所管理的网络设备的告警信息,网管服务器的告警模块对告警信息进行汇总处理,获得某一时段各告警级别对应的告警数量,网管服务器的告警模块调用MINAsocket服务模块;
步骤114:MINAsocket服务模块接收到告警模块的告警消息推送命令后,将各告警级别以及对应的告警数量作为业务数据封装成告警消息格式,并根据不同的推送方式,完成告警消息的推送操作:如果推送方式是是广播方式,则MINAsocket服务模块获取所有浏览器客户端的socket连接标识,逐一完成推送;如果推送方式是点对点方式,则MINAsocket服务模块根据推送的连接请求标识、连接请求标识与socket连接标识的映射关系,找到socket连接标识,将告警数量消息推送给相应建立socket连接标识的浏览器客户端,完成告警消息推送;
步骤115:客户端浏览器中消息解析模块接收到网管服务器的MINAsocket服务模块推送的告警消息后,通过消息解析模块对告警消息进行解析,获得业务标识及业务数据;
步骤116:然后客户端浏览器中回调模块根据业务标识,得到需要回调的JavaScript函数,将业务数据作为参数,传递给该JavaScript函数,完成函数调用操作。
5.根据权利要求4所述的一种网管***告警控制方法,其特征在于所述步骤115具体步骤包括:
步骤1151:浏览器客户端的解析模块接收到服务端封装的告警消息,
步骤:1152:告警消息格式为Socket传输消息数据头、数据长度值、业务消息头以及业务消息数据体;其中Socket传输消息数据头包括Socket传输消息的协议编号以及Socket传输消息数据体的总体长度;业务消息头包括请求标识SessionId长度、业务标识BusinessId长度以及业务数据BusinessData长度;所述业务消息数据体包括请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData;
步骤1153:解析模块截取Socket传输消息数据头,Socket传输消息数据头中获取Socket传输消息数据体的总体长度,根据该总体长度值,截取出业务消息数据体;
步骤1154:消息解析模块根据固定的业务消息头长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度以及BusinessData长度;
步骤1155:消息解析模块根据HttpSessionId长度、BusinessId长度以及BusinessData长度分别从业务消息数据体中,截取出请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData,并将其传递至回调模块,其中业务数据指的得是各告警级别以及对应的告警数量。
6.根据权利要求5所述的一种网管***告警控制方法,其特征在于所述步骤116具体步骤包括:客户端浏览器中回调模块对获得的业务标识进行逻辑判断,业务标识BusinessId的取值有两种:一是刷新告警列表,二是语音播报新增告警,如果该业务标识为刷新告警,则调用刷新告警页面的JavaScript函数,完成页面的实时刷新,如果是语音播报新增告警,则调用语音播报的JavaScript函数,将解析出各告警级别以及对应的告警数量做为参数,传递给语音播报的JavaScript函数,进行该函数回调,完成新增告警语音播报的操作。
7.一种网管***设备在线状态更新的方法,其特征在于包括:
步骤1111:用户通过浏览器客户端访问网管服务器,浏览器客户端中flex插件向网管服务器请求安全策略文件;网管服务器收到请求安全策略文件的命令后,给浏览器中的flex插件返回安全策略文件;
步骤:1112:浏览器客户端中的flex插件根据安全策略文件中的访问权限,再次请求服务端建立socket连接;网管服务器收到连接请求后,与浏览器中的flex插件建立socket连接,并记录连接请求标识与socket连接标识的映射关系;
步骤1113:网管服务器实时探测网络设备是否在线,当探测完成后,网管服务器的设备管理模块得到某个时间点各网络设备的在线状态,然后与上一时刻保存的网络设备在线状态进行比较,获得在线状态发生变化的网络设备编号;最后网管服务器的设备管理模块调用MINAsocket服务模块,
步骤1114:MINAsocket服务接收到设备管理模块的设备状态更新推送命令后,将设备管理模块将在线状态发生变化的网络设备编号消息作为业务数据封装成统一的设备状态更新消息格式,并根据不同的推送方式,完成设备状态更新消息的推送操作;如果推送方式是广播方式,则MINAsocket服务模块获取所有浏览器客户端的socket连接标识,逐一完成推送;如果推送方式是点对点方式,则MINAsocket服务模块根据推送的连接请求标识、连接请求标识与socket连接标识的映射关系,找到socket连接标识,将设备状态更新消息推送给相应建立socket连接标识的浏览器客户端,完成设备状态更新消息推送;
步骤1115:客户端浏览器中数据解析模块接收到网管服务器推送的消息后,对消息进行解析,获得业务标识以及发生在线状态变更的网络设备;
步骤1116:然后客户端浏览器中回调模块根据消息类型,得到需要回调的JavaScript函数,然后将消息中的发生在线状态变更的设备,作为参数,传递给该JavaScript函数,完成函数调用操作。
8.根据权利要求7所述的一种网管***设备在线状态更新的方法,其特征在于所述步骤1115具体步骤包括
步骤11151:浏览器客户端的解析模块接收到网关服务端封装的设备状态更新消息;设备状态更新格式为Socket传输消息数据头、数据长度值、业务消息头以及业务消息数据体;其中Socket传输消息数据头包括Socket传输消息的协议编号以及Socket传输消息数据体的总体长度;业务消息头包括请求标识SessionId长度、业务标识BusinessId长度以及业务数据BusinessData长度;所述业务消息数据体包括请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData;
步骤11152:消息解析模块截取Socket传输消息数据头,Socket传输消息数据头中获取Socket传输消息数据体的总体长度,根据该总体长度值,截取出业务消息数据体;
步骤11153:消息解析模块根据固定的业务消息头长度,获取业务消息头,从业务消息头中分别解析出HttpSessionId长度、BusinessId长度以及BusinessData长度;
步骤11154:消息解析模块根据HttpSessionId长度、BusinessId长度以及BusinessData长度分别从业务消息数据体中,截取出请求标识HttpSessionId、业务标识BusinessId以及业务数据BusinessData,并将其传递至回调模块,其中业务数据指的得是在线状态变化的网络设备编号。
9.根据权利要求7所述的一种网管***设备在线状态更新的方法,其特征在于所述步骤1116具体步骤包括:浏览器客户端回调模块对获得业务标识BusinessId进行逻辑判断,业务标识BusinessId的取值有两种:一是更新资产树,二是更新拓扑图;如果业务标识为更新资产树时,则将解析出具体的发生在线状态变更的网络设备编号做为参数,传递给更新资产树的JavaScript函数,进行函数回调;如果业务标识为更新拓扑图,则将解析出的具体的发生在线状态变更的网络设备编号做为参数,传递给更新拓扑图的JavaScript函数,进行函数回调,完成资产树上设备在线状态的变更。
CN201510949245.3A 2015-12-18 2015-12-18 一种消息反向推送、网管***报警及状态更新的方法 Expired - Fee Related CN105610605B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510949245.3A CN105610605B (zh) 2015-12-18 2015-12-18 一种消息反向推送、网管***报警及状态更新的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510949245.3A CN105610605B (zh) 2015-12-18 2015-12-18 一种消息反向推送、网管***报警及状态更新的方法

Publications (2)

Publication Number Publication Date
CN105610605A true CN105610605A (zh) 2016-05-25
CN105610605B CN105610605B (zh) 2019-04-23

Family

ID=55990151

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510949245.3A Expired - Fee Related CN105610605B (zh) 2015-12-18 2015-12-18 一种消息反向推送、网管***报警及状态更新的方法

Country Status (1)

Country Link
CN (1) CN105610605B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106297791A (zh) * 2016-08-25 2017-01-04 Tcl集团股份有限公司 一种全程语音实现方法及***
CN107451169A (zh) * 2017-03-07 2017-12-08 河海大学常州校区 一种体育竞赛信息发布***通用平台
CN107622205A (zh) * 2016-07-13 2018-01-23 北京京东尚科信息技术有限公司 一种业务***接入移动客户端的方法和装置
CN107634976A (zh) * 2016-07-18 2018-01-26 阿里巴巴集团控股有限公司 信息推送、获取、广告推送、获取方法及装置
CN108170536A (zh) * 2016-12-07 2018-06-15 北大医疗信息技术有限公司 Web程序的拓展方法和装置
CN108334516A (zh) * 2017-01-20 2018-07-27 百度在线网络技术(北京)有限公司 信息推送方法和装置
CN108932328A (zh) * 2018-07-03 2018-12-04 郑州云海信息技术有限公司 一种页面信息更新方法和装置
CN109347918A (zh) * 2018-09-17 2019-02-15 五八有限公司 调用方法、调用装置、服务器、终端及计算机可读存储介质
CN111427850A (zh) * 2019-11-06 2020-07-17 杭州海康威视数字技术股份有限公司 一种显示报警文件的方法、装置及***
CN112639771A (zh) * 2019-07-25 2021-04-09 东芝三菱电机产业***株式会社 Scada网页hmi服务器以及scada网页hmi***
CN112988505A (zh) * 2021-02-08 2021-06-18 深圳阿帕云计算有限公司 一种基于云计算大数据通用型实时监控预警***
CN114553945A (zh) * 2022-01-15 2022-05-27 江苏秉信科技有限公司 一种跨电力内网云平台统一框架网关的消息推送方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030149723A1 (en) * 2002-02-01 2003-08-07 Evolium S.A.S. Method for processing concurrent events in web-based application, supporting system and application system using the same
CN1870508A (zh) * 2005-05-25 2006-11-29 中兴通讯股份有限公司 一种web网管***中显示实时数据的方法
CN101551821A (zh) * 2009-05-19 2009-10-07 周佺喜 一种在网页中进行实时信息广播的方法
CN102045206A (zh) * 2011-01-26 2011-05-04 杭州华三通信技术有限公司 一种告警推送方法及其设备和***
CN102271123A (zh) * 2010-06-01 2011-12-07 阿里巴巴集团控股有限公司 一种通信方法、***及设备
CN102333128A (zh) * 2011-10-31 2012-01-25 河南省电力公司计量中心 一种Web实时数据主动推送方法
CN103338230A (zh) * 2013-06-03 2013-10-02 广州天宁信息技术有限公司 一种业务数据的处理方法及***
CN103716371A (zh) * 2013-10-31 2014-04-09 国家电网公司 一种Web实时数据主动推送方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030149723A1 (en) * 2002-02-01 2003-08-07 Evolium S.A.S. Method for processing concurrent events in web-based application, supporting system and application system using the same
CN1870508A (zh) * 2005-05-25 2006-11-29 中兴通讯股份有限公司 一种web网管***中显示实时数据的方法
CN101551821A (zh) * 2009-05-19 2009-10-07 周佺喜 一种在网页中进行实时信息广播的方法
CN102271123A (zh) * 2010-06-01 2011-12-07 阿里巴巴集团控股有限公司 一种通信方法、***及设备
CN102045206A (zh) * 2011-01-26 2011-05-04 杭州华三通信技术有限公司 一种告警推送方法及其设备和***
CN102333128A (zh) * 2011-10-31 2012-01-25 河南省电力公司计量中心 一种Web实时数据主动推送方法
CN103338230A (zh) * 2013-06-03 2013-10-02 广州天宁信息技术有限公司 一种业务数据的处理方法及***
CN103716371A (zh) * 2013-10-31 2014-04-09 国家电网公司 一种Web实时数据主动推送方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
I.FETTE等: "《RFC 6455,The Websocket Protocol》", 31 December 2011 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107622205B (zh) * 2016-07-13 2021-05-25 北京京东尚科信息技术有限公司 一种业务***接入移动客户端的方法和装置
CN107622205A (zh) * 2016-07-13 2018-01-23 北京京东尚科信息技术有限公司 一种业务***接入移动客户端的方法和装置
CN107634976A (zh) * 2016-07-18 2018-01-26 阿里巴巴集团控股有限公司 信息推送、获取、广告推送、获取方法及装置
CN107634976B (zh) * 2016-07-18 2020-10-16 阿里巴巴集团控股有限公司 信息推送、获取、广告推送、获取方法及装置
CN106297791B (zh) * 2016-08-25 2020-08-18 Tcl科技集团股份有限公司 一种全程语音实现方法及***
CN106297791A (zh) * 2016-08-25 2017-01-04 Tcl集团股份有限公司 一种全程语音实现方法及***
CN108170536A (zh) * 2016-12-07 2018-06-15 北大医疗信息技术有限公司 Web程序的拓展方法和装置
CN108170536B (zh) * 2016-12-07 2023-07-04 北大医疗信息技术有限公司 Web程序的拓展方法和装置
CN108334516A (zh) * 2017-01-20 2018-07-27 百度在线网络技术(北京)有限公司 信息推送方法和装置
CN107451169A (zh) * 2017-03-07 2017-12-08 河海大学常州校区 一种体育竞赛信息发布***通用平台
CN108932328A (zh) * 2018-07-03 2018-12-04 郑州云海信息技术有限公司 一种页面信息更新方法和装置
CN109347918A (zh) * 2018-09-17 2019-02-15 五八有限公司 调用方法、调用装置、服务器、终端及计算机可读存储介质
CN112639771A (zh) * 2019-07-25 2021-04-09 东芝三菱电机产业***株式会社 Scada网页hmi服务器以及scada网页hmi***
CN112639771B (zh) * 2019-07-25 2023-12-05 东芝三菱电机产业***株式会社 Scada网页hmi服务器以及scada网页hmi***
CN111427850A (zh) * 2019-11-06 2020-07-17 杭州海康威视数字技术股份有限公司 一种显示报警文件的方法、装置及***
CN112988505A (zh) * 2021-02-08 2021-06-18 深圳阿帕云计算有限公司 一种基于云计算大数据通用型实时监控预警***
CN114553945A (zh) * 2022-01-15 2022-05-27 江苏秉信科技有限公司 一种跨电力内网云平台统一框架网关的消息推送方法

Also Published As

Publication number Publication date
CN105610605B (zh) 2019-04-23

Similar Documents

Publication Publication Date Title
CN105610605A (zh) 一种消息反向推送、网管***报警及状态更新的方法
CN103297934B (zh) 信息推送方法、***和移动终端
CN105207853B (zh) 一种局域网监控管理方法
CN104811433B (zh) 一种c/s架构的分布式物联网***及实现方法
CN105528728A (zh) 一种基于云计算的商城电商服务平台及其方法
CN105991412B (zh) 消息推送方法及装置
CN103794033B (zh) 监控报警方法和装置
CN107613017A (zh) 基于物联网的危险源监测***及其实现方法
CN204481577U (zh) 基于物联网的智能供电服务网格化故障报修***
CN104834582A (zh) 一种监控事件展示方法
CN103533084A (zh) 一种b/s架构的实时设备管理***及其方法
CN106657290A (zh) 一种基于宽带数据通信技术的电梯物联网***及控制方法
CN104376005A (zh) 软件心跳机制信令接入探针用户详单处理方法及***
CN106027611A (zh) 一种基于WebGIS技术的农机车载智能终端与监控客户端的数据传输方法
CN107168853A (zh) 一种服务器性能信息获取方法、***和基板控制管理器
CN107395717A (zh) 一种应用于运维审计***的空闲超时自动断开的方法
CN110456738A (zh) 监控***及其监控方法
CN105190613A (zh) 用于向用户设备提供与情境有关的上下文的方法及装置
CN106208385B (zh) 一种基于物联网平台的用电检查***
CN100413248C (zh) 一种基于流量进行计费的改进方法和***
CN109218142A (zh) 一种基于OneM2M协议物联网平台终端接入方法和装置
CN106649614A (zh) 智能配电网快速查询方法及查询***
CN104602288A (zh) 一种铁路gprs网络关键网元设备主动监测***和方法
CN101924768A (zh) 一种分布式rfid中间件的通信控制方法
CN103533001A (zh) 基于http多重代理的通信方法和***、中间代理服务器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200803

Address after: Floor 2, No.16, Gaopeng Avenue, high tech Zone, Chengdu, Sichuan 610000

Patentee after: Chengdu Guangda Hengji Communication Technology Co., Ltd

Address before: 610041 building four, building two, Shiyang Industrial Park, five village, Shiyang village, fifty-five village, Chengdu hi tech Zone, Sichuan, Qingyun

Patentee before: CHENGDU GUANGDA NEW NETWORK TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190423

Termination date: 20201218

CF01 Termination of patent right due to non-payment of annual fee